@navikt/ds-react 8.5.2 → 8.7.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 (258) hide show
  1. package/cjs/data/drag-and-drop/item/DataDragAndDropItem.d.ts +27 -0
  2. package/cjs/data/drag-and-drop/item/DataDragAndDropItem.js +91 -0
  3. package/cjs/data/drag-and-drop/item/DataDragAndDropItem.js.map +1 -0
  4. package/cjs/data/drag-and-drop/root/DataDragAndDrop.context.d.ts +5 -0
  5. package/cjs/data/drag-and-drop/root/DataDragAndDrop.context.js +6 -0
  6. package/cjs/data/drag-and-drop/root/DataDragAndDrop.context.js.map +1 -0
  7. package/cjs/data/drag-and-drop/root/DataDragAndDropRoot.d.ts +24 -0
  8. package/cjs/data/drag-and-drop/root/DataDragAndDropRoot.js +111 -0
  9. package/cjs/data/drag-and-drop/root/DataDragAndDropRoot.js.map +1 -0
  10. package/cjs/data/table/helpers/table-keyboard.d.ts +1 -0
  11. package/cjs/data/table/helpers/table-keyboard.js +5 -3
  12. package/cjs/data/table/helpers/table-keyboard.js.map +1 -1
  13. package/cjs/data/table/root/DataTableRoot.context.d.ts +8 -0
  14. package/cjs/data/table/root/DataTableRoot.context.js +11 -0
  15. package/cjs/data/table/root/DataTableRoot.context.js.map +1 -0
  16. package/cjs/data/table/root/DataTableRoot.js +5 -3
  17. package/cjs/data/table/root/DataTableRoot.js.map +1 -1
  18. package/cjs/data/table/th/DataTableTh.d.ts +18 -2
  19. package/cjs/data/table/th/DataTableTh.js +45 -20
  20. package/cjs/data/table/th/DataTableTh.js.map +1 -1
  21. package/cjs/data/table/tr/DataTableTr.js +9 -2
  22. package/cjs/data/table/tr/DataTableTr.js.map +1 -1
  23. package/cjs/data/token-filter/AutoSuggest.d.ts +6 -2
  24. package/cjs/data/token-filter/AutoSuggest.js +46 -14
  25. package/cjs/data/token-filter/AutoSuggest.js.map +1 -1
  26. package/cjs/data/token-filter/AutoSuggest.types.d.ts +0 -1
  27. package/cjs/data/token-filter/TokenFilter.d.ts +10 -5
  28. package/cjs/data/token-filter/TokenFilter.js +110 -48
  29. package/cjs/data/token-filter/TokenFilter.js.map +1 -1
  30. package/cjs/data/token-filter/TokenFilter.types.d.ts +51 -35
  31. package/cjs/data/token-filter/helpers/generate-autocomplete-options.d.ts +3 -6
  32. package/cjs/data/token-filter/helpers/generate-autocomplete-options.js +24 -37
  33. package/cjs/data/token-filter/helpers/generate-autocomplete-options.js.map +1 -1
  34. package/cjs/data/token-filter/helpers/operators.d.ts +6 -6
  35. package/cjs/data/token-filter/helpers/operators.js +3 -4
  36. package/cjs/data/token-filter/helpers/operators.js.map +1 -1
  37. package/cjs/data/token-filter/helpers/parse-query-text.d.ts +2 -20
  38. package/cjs/data/token-filter/helpers/parse-query-text.js +1 -1
  39. package/cjs/data/token-filter/helpers/parse-query-text.js.map +1 -1
  40. package/cjs/data/token-filter/helpers/query-builder.d.ts +2 -2
  41. package/cjs/data/token-filter/helpers/query-builder.js.map +1 -1
  42. package/cjs/date/Date.Dialog.d.ts +5 -1
  43. package/cjs/date/Date.Dialog.js +6 -2
  44. package/cjs/date/Date.Dialog.js.map +1 -1
  45. package/cjs/date/datepicker/DatePicker.js +3 -2
  46. package/cjs/date/datepicker/DatePicker.js.map +1 -1
  47. package/cjs/date/datepicker/hooks/useDatepicker.js +5 -2
  48. package/cjs/date/datepicker/hooks/useDatepicker.js.map +1 -1
  49. package/cjs/date/datepicker/hooks/useRangeDatepicker.js +3 -1
  50. package/cjs/date/datepicker/hooks/useRangeDatepicker.js.map +1 -1
  51. package/cjs/date/datepicker/parts/DatePicker.Months.d.ts +2 -1
  52. package/cjs/date/datepicker/parts/DatePicker.Months.js +3 -3
  53. package/cjs/date/datepicker/parts/DatePicker.Months.js.map +1 -1
  54. package/cjs/date/datepicker/parts/DatePicker.RDP.d.ts +5 -1
  55. package/cjs/date/datepicker/parts/DatePicker.RDP.js +2 -2
  56. package/cjs/date/datepicker/parts/DatePicker.RDP.js.map +1 -1
  57. package/cjs/date/monthpicker/MonthPicker.js +3 -2
  58. package/cjs/date/monthpicker/MonthPicker.js.map +1 -1
  59. package/cjs/date/monthpicker/hooks/useMonthPicker.js +3 -1
  60. package/cjs/date/monthpicker/hooks/useMonthPicker.js.map +1 -1
  61. package/cjs/date/monthpicker/parts/MonthPicker.Caption.d.ts +4 -1
  62. package/cjs/date/monthpicker/parts/MonthPicker.Caption.js +3 -2
  63. package/cjs/date/monthpicker/parts/MonthPicker.Caption.js.map +1 -1
  64. package/cjs/dropdown/Toggle.js +5 -12
  65. package/cjs/dropdown/Toggle.js.map +1 -1
  66. package/cjs/form/combobox/Input/Input.js +1 -1
  67. package/cjs/form/combobox/Input/Input.js.map +1 -1
  68. package/cjs/inline-message/root/InlineMessage.js +2 -2
  69. package/cjs/inline-message/root/InlineMessage.js.map +1 -1
  70. package/cjs/provider/Provider.d.ts +2 -2
  71. package/cjs/toggle-group/useToggleGroup.js +5 -3
  72. package/cjs/toggle-group/useToggleGroup.js.map +1 -1
  73. package/cjs/tooltip/Tooltip.js +1 -3
  74. package/cjs/tooltip/Tooltip.js.map +1 -1
  75. package/cjs/utils/components/HighlightText/HighlightText.d.ts +8 -0
  76. package/cjs/utils/components/HighlightText/HighlightText.js +27 -0
  77. package/cjs/utils/components/HighlightText/HighlightText.js.map +1 -0
  78. package/cjs/utils/components/Listbox/group/ListboxGroup.d.ts +7 -0
  79. package/cjs/utils/components/Listbox/group/ListboxGroup.js +15 -0
  80. package/cjs/utils/components/Listbox/group/ListboxGroup.js.map +1 -0
  81. package/cjs/utils/components/Listbox/input-slot/ListboxInputSlot.d.ts +7 -0
  82. package/cjs/utils/components/Listbox/input-slot/ListboxInputSlot.js +15 -0
  83. package/cjs/utils/components/Listbox/input-slot/ListboxInputSlot.js.map +1 -0
  84. package/cjs/utils/components/Listbox/item/ListboxItem.d.ts +24 -0
  85. package/cjs/utils/components/Listbox/item/ListboxItem.js +33 -0
  86. package/cjs/utils/components/Listbox/item/ListboxItem.js.map +1 -0
  87. package/cjs/utils/components/Listbox/list/ListboxList.d.ts +8 -0
  88. package/cjs/utils/components/Listbox/list/ListboxList.js +32 -0
  89. package/cjs/utils/components/Listbox/list/ListboxList.js.map +1 -0
  90. package/cjs/utils/components/Listbox/root/ListboxRoot.d.ts +20 -0
  91. package/cjs/utils/components/Listbox/root/ListboxRoot.js +84 -0
  92. package/cjs/utils/components/Listbox/root/ListboxRoot.js.map +1 -0
  93. package/cjs/utils/components/Listbox/root/domHelpers.d.ts +3 -0
  94. package/cjs/utils/components/Listbox/root/domHelpers.js +53 -0
  95. package/cjs/utils/components/Listbox/root/domHelpers.js.map +1 -0
  96. package/cjs/utils/components/focus-boundary/FocusBoundary.js +9 -64
  97. package/cjs/utils/components/focus-boundary/FocusBoundary.js.map +1 -1
  98. package/cjs/utils/helpers/focus.d.ts +14 -0
  99. package/cjs/utils/helpers/focus.js +63 -0
  100. package/cjs/utils/helpers/focus.js.map +1 -0
  101. package/cjs/utils/hooks/useDeferredValue.d.ts +1 -0
  102. package/cjs/utils/hooks/useDeferredValue.js +14 -0
  103. package/cjs/utils/hooks/useDeferredValue.js.map +1 -0
  104. package/esm/data/drag-and-drop/item/DataDragAndDropItem.d.ts +27 -0
  105. package/esm/data/drag-and-drop/item/DataDragAndDropItem.js +55 -0
  106. package/esm/data/drag-and-drop/item/DataDragAndDropItem.js.map +1 -0
  107. package/esm/data/drag-and-drop/root/DataDragAndDrop.context.d.ts +5 -0
  108. package/esm/data/drag-and-drop/root/DataDragAndDrop.context.js +3 -0
  109. package/esm/data/drag-and-drop/root/DataDragAndDrop.context.js.map +1 -0
  110. package/esm/data/drag-and-drop/root/DataDragAndDropRoot.d.ts +24 -0
  111. package/esm/data/drag-and-drop/root/DataDragAndDropRoot.js +71 -0
  112. package/esm/data/drag-and-drop/root/DataDragAndDropRoot.js.map +1 -0
  113. package/esm/data/table/helpers/table-keyboard.d.ts +1 -0
  114. package/esm/data/table/helpers/table-keyboard.js +5 -3
  115. package/esm/data/table/helpers/table-keyboard.js.map +1 -1
  116. package/esm/data/table/root/DataTableRoot.context.d.ts +8 -0
  117. package/esm/data/table/root/DataTableRoot.context.js +7 -0
  118. package/esm/data/table/root/DataTableRoot.context.js.map +1 -0
  119. package/esm/data/table/root/DataTableRoot.js +5 -3
  120. package/esm/data/table/root/DataTableRoot.js.map +1 -1
  121. package/esm/data/table/th/DataTableTh.d.ts +18 -2
  122. package/esm/data/table/th/DataTableTh.js +46 -21
  123. package/esm/data/table/th/DataTableTh.js.map +1 -1
  124. package/esm/data/table/tr/DataTableTr.js +9 -2
  125. package/esm/data/table/tr/DataTableTr.js.map +1 -1
  126. package/esm/data/token-filter/AutoSuggest.d.ts +6 -2
  127. package/esm/data/token-filter/AutoSuggest.js +45 -16
  128. package/esm/data/token-filter/AutoSuggest.js.map +1 -1
  129. package/esm/data/token-filter/AutoSuggest.types.d.ts +0 -1
  130. package/esm/data/token-filter/TokenFilter.d.ts +10 -5
  131. package/esm/data/token-filter/TokenFilter.js +110 -48
  132. package/esm/data/token-filter/TokenFilter.js.map +1 -1
  133. package/esm/data/token-filter/TokenFilter.types.d.ts +51 -35
  134. package/esm/data/token-filter/helpers/generate-autocomplete-options.d.ts +3 -6
  135. package/esm/data/token-filter/helpers/generate-autocomplete-options.js +24 -37
  136. package/esm/data/token-filter/helpers/generate-autocomplete-options.js.map +1 -1
  137. package/esm/data/token-filter/helpers/operators.d.ts +6 -6
  138. package/esm/data/token-filter/helpers/operators.js +3 -4
  139. package/esm/data/token-filter/helpers/operators.js.map +1 -1
  140. package/esm/data/token-filter/helpers/parse-query-text.d.ts +2 -20
  141. package/esm/data/token-filter/helpers/parse-query-text.js +1 -1
  142. package/esm/data/token-filter/helpers/parse-query-text.js.map +1 -1
  143. package/esm/data/token-filter/helpers/query-builder.d.ts +2 -2
  144. package/esm/data/token-filter/helpers/query-builder.js.map +1 -1
  145. package/esm/date/Date.Dialog.d.ts +5 -1
  146. package/esm/date/Date.Dialog.js +6 -2
  147. package/esm/date/Date.Dialog.js.map +1 -1
  148. package/esm/date/datepicker/DatePicker.js +3 -2
  149. package/esm/date/datepicker/DatePicker.js.map +1 -1
  150. package/esm/date/datepicker/hooks/useDatepicker.js +5 -2
  151. package/esm/date/datepicker/hooks/useDatepicker.js.map +1 -1
  152. package/esm/date/datepicker/hooks/useRangeDatepicker.js +3 -1
  153. package/esm/date/datepicker/hooks/useRangeDatepicker.js.map +1 -1
  154. package/esm/date/datepicker/parts/DatePicker.Months.d.ts +2 -1
  155. package/esm/date/datepicker/parts/DatePicker.Months.js +3 -3
  156. package/esm/date/datepicker/parts/DatePicker.Months.js.map +1 -1
  157. package/esm/date/datepicker/parts/DatePicker.RDP.d.ts +5 -1
  158. package/esm/date/datepicker/parts/DatePicker.RDP.js +2 -2
  159. package/esm/date/datepicker/parts/DatePicker.RDP.js.map +1 -1
  160. package/esm/date/monthpicker/MonthPicker.js +3 -2
  161. package/esm/date/monthpicker/MonthPicker.js.map +1 -1
  162. package/esm/date/monthpicker/hooks/useMonthPicker.js +3 -1
  163. package/esm/date/monthpicker/hooks/useMonthPicker.js.map +1 -1
  164. package/esm/date/monthpicker/parts/MonthPicker.Caption.d.ts +4 -1
  165. package/esm/date/monthpicker/parts/MonthPicker.Caption.js +3 -2
  166. package/esm/date/monthpicker/parts/MonthPicker.Caption.js.map +1 -1
  167. package/esm/dropdown/Toggle.js +5 -12
  168. package/esm/dropdown/Toggle.js.map +1 -1
  169. package/esm/form/combobox/Input/Input.js +1 -1
  170. package/esm/form/combobox/Input/Input.js.map +1 -1
  171. package/esm/inline-message/root/InlineMessage.js +3 -3
  172. package/esm/inline-message/root/InlineMessage.js.map +1 -1
  173. package/esm/provider/Provider.d.ts +2 -2
  174. package/esm/toggle-group/useToggleGroup.js +6 -4
  175. package/esm/toggle-group/useToggleGroup.js.map +1 -1
  176. package/esm/tooltip/Tooltip.js +1 -3
  177. package/esm/tooltip/Tooltip.js.map +1 -1
  178. package/esm/utils/components/HighlightText/HighlightText.d.ts +8 -0
  179. package/esm/utils/components/HighlightText/HighlightText.js +21 -0
  180. package/esm/utils/components/HighlightText/HighlightText.js.map +1 -0
  181. package/esm/utils/components/Listbox/group/ListboxGroup.d.ts +7 -0
  182. package/esm/utils/components/Listbox/group/ListboxGroup.js +10 -0
  183. package/esm/utils/components/Listbox/group/ListboxGroup.js.map +1 -0
  184. package/esm/utils/components/Listbox/input-slot/ListboxInputSlot.d.ts +7 -0
  185. package/esm/utils/components/Listbox/input-slot/ListboxInputSlot.js +9 -0
  186. package/esm/utils/components/Listbox/input-slot/ListboxInputSlot.js.map +1 -0
  187. package/esm/utils/components/Listbox/item/ListboxItem.d.ts +24 -0
  188. package/esm/utils/components/Listbox/item/ListboxItem.js +27 -0
  189. package/esm/utils/components/Listbox/item/ListboxItem.js.map +1 -0
  190. package/esm/utils/components/Listbox/list/ListboxList.d.ts +8 -0
  191. package/esm/utils/components/Listbox/list/ListboxList.js +27 -0
  192. package/esm/utils/components/Listbox/list/ListboxList.js.map +1 -0
  193. package/esm/utils/components/Listbox/root/ListboxRoot.d.ts +20 -0
  194. package/esm/utils/components/Listbox/root/ListboxRoot.js +79 -0
  195. package/esm/utils/components/Listbox/root/ListboxRoot.js.map +1 -0
  196. package/esm/utils/components/Listbox/root/domHelpers.d.ts +3 -0
  197. package/esm/utils/components/Listbox/root/domHelpers.js +50 -0
  198. package/esm/utils/components/Listbox/root/domHelpers.js.map +1 -0
  199. package/esm/utils/components/focus-boundary/FocusBoundary.js +8 -63
  200. package/esm/utils/components/focus-boundary/FocusBoundary.js.map +1 -1
  201. package/esm/utils/helpers/focus.d.ts +14 -0
  202. package/esm/utils/helpers/focus.js +60 -0
  203. package/esm/utils/helpers/focus.js.map +1 -0
  204. package/esm/utils/hooks/useDeferredValue.d.ts +1 -0
  205. package/esm/utils/hooks/useDeferredValue.js +7 -0
  206. package/esm/utils/hooks/useDeferredValue.js.map +1 -0
  207. package/package.json +7 -7
  208. package/src/data/drag-and-drop/item/DataDragAndDropItem.tsx +101 -0
  209. package/src/data/drag-and-drop/root/DataDragAndDrop.context.tsx +9 -0
  210. package/src/data/drag-and-drop/root/DataDragAndDropRoot.tsx +98 -0
  211. package/src/data/table/helpers/table-keyboard.ts +7 -3
  212. package/src/data/table/root/DataTableRoot.context.ts +13 -0
  213. package/src/data/table/root/DataTableRoot.tsx +16 -13
  214. package/src/data/table/th/DataTableTh.tsx +110 -54
  215. package/src/data/table/tr/DataTableTr.tsx +13 -2
  216. package/src/data/token-filter/AutoSuggest.tsx +142 -35
  217. package/src/data/token-filter/AutoSuggest.types.ts +0 -1
  218. package/src/data/token-filter/TokenFilter.tsx +179 -81
  219. package/src/data/token-filter/TokenFilter.types.ts +70 -44
  220. package/src/data/token-filter/helpers/generate-autocomplete-options.test.ts +97 -157
  221. package/src/data/token-filter/helpers/generate-autocomplete-options.ts +56 -53
  222. package/src/data/token-filter/helpers/operators.test.ts +29 -29
  223. package/src/data/token-filter/helpers/operators.ts +16 -16
  224. package/src/data/token-filter/helpers/parse-query-text.test.ts +37 -35
  225. package/src/data/token-filter/helpers/parse-query-text.ts +7 -26
  226. package/src/data/token-filter/helpers/query-builder.ts +2 -2
  227. package/src/date/Date.Dialog.tsx +15 -0
  228. package/src/date/datepicker/DatePicker.tsx +3 -0
  229. package/src/date/datepicker/hooks/useDatepicker.tsx +7 -2
  230. package/src/date/datepicker/hooks/useRangeDatepicker.tsx +5 -1
  231. package/src/date/datepicker/parts/DatePicker.Months.tsx +9 -1
  232. package/src/date/datepicker/parts/DatePicker.RDP.tsx +7 -1
  233. package/src/date/monthpicker/MonthPicker.tsx +3 -1
  234. package/src/date/monthpicker/hooks/useMonthPicker.tsx +5 -1
  235. package/src/date/monthpicker/parts/MonthPicker.Caption.tsx +20 -2
  236. package/src/dropdown/Toggle.tsx +6 -12
  237. package/src/form/combobox/Input/Input.tsx +2 -2
  238. package/src/inline-message/root/InlineMessage.tsx +5 -5
  239. package/src/provider/Provider.tsx +2 -2
  240. package/src/toggle-group/useToggleGroup.ts +6 -5
  241. package/src/tooltip/Tooltip.tsx +1 -3
  242. package/src/utils/components/HighlightText/HighlightText.tsx +34 -0
  243. package/src/utils/components/Listbox/group/ListboxGroup.tsx +26 -0
  244. package/src/utils/components/Listbox/input-slot/ListboxInputSlot.tsx +22 -0
  245. package/src/utils/components/Listbox/item/ListboxItem.tsx +57 -0
  246. package/src/utils/components/Listbox/list/ListboxList.tsx +38 -0
  247. package/src/utils/components/Listbox/root/ListboxRoot.tsx +104 -0
  248. package/src/utils/components/Listbox/root/domHelpers.ts +59 -0
  249. package/src/utils/components/focus-boundary/FocusBoundary.tsx +8 -78
  250. package/src/utils/helpers/focus.ts +75 -0
  251. package/src/utils/hooks/useDeferredValue.ts +12 -0
  252. package/cjs/data/table/th/DataTableThSortHandle.d.ts +0 -6
  253. package/cjs/data/table/th/DataTableThSortHandle.js +0 -82
  254. package/cjs/data/table/th/DataTableThSortHandle.js.map +0 -1
  255. package/esm/data/table/th/DataTableThSortHandle.d.ts +0 -6
  256. package/esm/data/table/th/DataTableThSortHandle.js +0 -47
  257. package/esm/data/table/th/DataTableThSortHandle.js.map +0 -1
  258. package/src/data/table/th/DataTableThSortHandle.tsx +0 -67
@@ -1,52 +1,68 @@
1
- type QueryFilterOperator = "<" | "<=" | ">" | ">=" | ":" | "!:" | "=" | "!=" | "^" | "!^" | (string & {});
2
- type QueryFilterOperation = "and" | "or";
3
- type QueryFilterToken = {
1
+ type OperatorT = "<" | "<=" | ">" | ">=" | ":" | "!:" | "=" | "!=" | "^" | "!^" | (string & {});
2
+ type OperationT = "and" | "or";
3
+ type ExternalToken = {
4
4
  propertyKey: string;
5
- operator: QueryFilterOperator;
6
- value: any;
5
+ operator: OperatorT;
6
+ value: string;
7
7
  };
8
- type QueryFilterQuery = {
9
- tokens: QueryFilterToken[];
10
- operation: QueryFilterOperation;
8
+ type ExternalQuery = {
9
+ tokens: ExternalToken[];
10
+ operation: OperationT;
11
11
  };
12
- type QueryFilteringOption = {
12
+ type ExternalOption = {
13
13
  propertyKey: string;
14
- value: any;
14
+ value: string;
15
15
  label?: string;
16
16
  tags?: string[];
17
- filteringTags?: string[];
18
17
  disabled?: boolean;
19
18
  };
20
- type QueryFilteringOptions = QueryFilteringOption[];
21
- type QueryFilteringOptionGroup = {
19
+ type ExternalOptions = ExternalOption[];
20
+ type ExternalPropertyGroup = {
22
21
  label: string;
23
- options: QueryFilteringOptions;
22
+ options: ExternalOptions;
24
23
  };
25
- type QueryFilteringScopedOperator = string | {
24
+ type ExternalPropertyDefinition = {
25
+ key: string;
26
+ label: string;
27
+ groupLabel?: string;
28
+ group?: string;
29
+ operators?: ExternalPropertyOperator[];
30
+ };
31
+ type ExternalPropertyDefinitions = ExternalPropertyDefinition[];
32
+ type ExternalPropertyOperator = string | {
26
33
  operator: string;
27
- tokenType: "single" | "multiple";
34
+ type: "single" | "multiple";
28
35
  };
29
- type QueryFilteringProperty = {
36
+ export type { ExternalOption, ExternalOptions, ExternalPropertyDefinition, ExternalPropertyDefinitions, ExternalPropertyGroup, ExternalQuery, ExternalToken, OperationT, OperatorT, };
37
+ type InternalPropertyDefinition = {
30
38
  key: string;
31
- propertyLabel: string;
32
- groupValuesLabel?: string;
33
- group?: string;
34
- operators?: QueryFilteringScopedOperator[];
39
+ label: string;
40
+ groupLabel: string;
41
+ group: string;
42
+ operators: ExternalPropertyOperator[];
43
+ externalProperty: ExternalPropertyDefinition;
35
44
  };
36
- type QueryFilteringProperties = QueryFilteringProperty[];
37
- type ParsedProperty = {
38
- propertyKey: string;
39
- propertyLabel: string;
40
- groupValuesLabel: string;
41
- propertyGroup: string;
42
- operators: QueryFilteringScopedOperator[];
43
- externalProperty: QueryFilteringProperty;
44
- };
45
- type ParsedOption = {
46
- property: ParsedProperty | null;
47
- value: any;
45
+ type InternalPropertyOption = {
46
+ property: InternalPropertyDefinition | null;
47
+ value: string;
48
48
  label: string;
49
49
  tags: string[];
50
- filteringTags: string[];
51
50
  };
52
- export type { QueryFilterOperator, QueryFilterQuery, QueryFilteringOptions, QueryFilteringProperty, QueryFilterOperation, QueryFilteringProperties, ParsedProperty, ParsedOption, QueryFilteringOption, QueryFilteringOptionGroup, };
51
+ type InternalParsedTextState = {
52
+ /** User has typed property + complete operator + value (e.g., "Status != active") */
53
+ step: "property";
54
+ property: InternalPropertyDefinition;
55
+ operator: OperatorT;
56
+ value: string;
57
+ } | {
58
+ /** User is typing the operator after property (e.g., "Status !") */
59
+ step: "operator";
60
+ property: InternalPropertyDefinition;
61
+ operatorPrefix: string;
62
+ } | {
63
+ /** No property match; treat as free-text search */
64
+ step: "free-text";
65
+ value: string;
66
+ operator?: OperatorT;
67
+ };
68
+ export type { InternalPropertyDefinition, InternalPropertyOption, InternalParsedTextState, };
@@ -1,6 +1,5 @@
1
1
  import type { AutoCompleteOption, OptionGroup } from "../AutoSuggest.types.js";
2
- import type { ParsedOption, ParsedProperty } from "../TokenFilter.types.js";
3
- import { type ParsedText } from "./parse-query-text.js";
2
+ import type { InternalParsedTextState, InternalPropertyDefinition, InternalPropertyOption } from "../TokenFilter.types.js";
4
3
  /**
5
4
  * Generates "options" to be used as autosuggest-ottion based on the current query state.
6
5
  *
@@ -14,11 +13,9 @@ import { type ParsedText } from "./parse-query-text.js";
14
13
  * Used by the UI to determine cursor position and input replacement.
15
14
  * - options: Grouped suggestions to display (properties, operators, or values).
16
15
  */
17
- declare function generateAutoCompleteOptions(queryState: ParsedText, filteringProperties?: ParsedProperty[], filteringOptions?: ParsedOption[]): {
16
+ type AutoCompleteResult = {
18
17
  value: string;
19
18
  options: OptionGroup<AutoCompleteOption>[];
20
- } | {
21
- value: string;
22
- options: OptionGroup<ParsedProperty>[];
23
19
  };
20
+ declare function generateAutoCompleteOptions(queryState: InternalParsedTextState, filteringProperties?: InternalPropertyDefinition[], filteringOptions?: InternalPropertyOption[]): AutoCompleteResult;
24
21
  export { generateAutoCompleteOptions };
@@ -2,19 +2,6 @@ import { createGroups } from "./grouping.js";
2
2
  import { QUERY_OPERATORS } from "./operators.js";
3
3
  import { OPERATOR_LABELS, buildQueryString } from "./query-builder.js";
4
4
  import { matchesFilterText } from "./text-matching.js";
5
- /**
6
- * Generates "options" to be used as autosuggest-ottion based on the current query state.
7
- *
8
- * The query parser recognizes three states:
9
- * - "property": User has selected/matched a property and operator ("Status = active")
10
- * - "operator": User has matched a property but is typing the operator ("Status" or "Status !")
11
- * - "free-text": User is typing freely without a property match (e.g., "act" or "!: test")
12
- *
13
- * @returns
14
- * - value: The canonical query string representation for the current state.
15
- * Used by the UI to determine cursor position and input replacement.
16
- * - options: Grouped suggestions to display (properties, operators, or values).
17
- */
18
5
  function generateAutoCompleteOptions(queryState, filteringProperties = [], filteringOptions = []) {
19
6
  var _a;
20
7
  /* State: Property and operator are matched, suggest values */
@@ -28,14 +15,11 @@ function generateAutoCompleteOptions(queryState, filteringProperties = [], filte
28
15
  /* State: Property matched, but operator is incomplete */
29
16
  if (queryState.step === "operator") {
30
17
  const operators = filterOperatorsByPrefix(getValidOperatorsForProperty(queryState.property), queryState.operatorPrefix);
31
- const partialQuery = buildQueryString(queryState.property.propertyLabel, queryState.operatorPrefix, "");
18
+ const partialQuery = buildQueryString(queryState.property.label, queryState.operatorPrefix, "");
32
19
  /**
33
20
  * Edge case: User typed an invalid operator prefix that doesn't match any operators.
34
21
  * This can happen when typing characters that don't start any valid operator.
35
22
  * Return empty suggestions gracefully - the UI will show "no results".
36
- *
37
- * TODO: When per-property operator configuration is implemented,
38
- * this could also occur when a property restricts which operators are valid.
39
23
  */
40
24
  if (operators.length === 0) {
41
25
  return {
@@ -71,7 +55,10 @@ function generateAutoCompleteOptions(queryState, filteringProperties = [], filte
71
55
  */
72
56
  return {
73
57
  value: queryState.value,
74
- options: createValueSuggestions(filteringOptions, (_a = queryState.operator) !== null && _a !== void 0 ? _a : "=", queryState.value),
58
+ options: [
59
+ ...generatePropertySuggestions(filteringProperties, queryState.value),
60
+ ...createValueSuggestions(filteringOptions, (_a = queryState.operator) !== null && _a !== void 0 ? _a : "=", queryState.value),
61
+ ],
75
62
  };
76
63
  }
77
64
  /**
@@ -117,15 +104,18 @@ function generatePropertySuggestions(filteringProperties = [], filterText = "")
117
104
  if (!property) {
118
105
  continue;
119
106
  }
120
- if (matchesFilterText([
121
- property.propertyLabel,
122
- property.groupValuesLabel,
123
- property.propertyGroup,
124
- ].filter(Boolean), filterText)) {
107
+ if (matchesFilterText([property.label, property.groupLabel, property.group].filter(Boolean), filterText)) {
125
108
  filteredProperties.push(property);
126
109
  }
127
110
  }
128
- return createGroups(filteredProperties, (property) => property.propertyGroup, "Properties");
111
+ const groups = createGroups(filteredProperties, (property) => property.group, "Properties");
112
+ return groups.map((group) => ({
113
+ label: group.label,
114
+ options: group.options.map((property) => ({
115
+ value: buildQueryString(property.label, "", ""),
116
+ label: property.label,
117
+ })),
118
+ }));
129
119
  }
130
120
  function generateOperatorSuggestions(property, operatorPrefix = "") {
131
121
  const operators = filterOperatorsByPrefix(getValidOperatorsForProperty(property), operatorPrefix);
@@ -138,8 +128,8 @@ function generateOperatorSuggestions(property, operatorPrefix = "") {
138
128
  options: operators.map((operator) => {
139
129
  var _a;
140
130
  return ({
141
- value: buildQueryString(property.propertyLabel, operator, ""),
142
- label: buildQueryString(property.propertyLabel, operator, ""),
131
+ value: buildQueryString(property.label, operator, ""),
132
+ label: buildQueryString(property.label, operator, ""),
143
133
  description: (_a = OPERATOR_LABELS[operator]) !== null && _a !== void 0 ? _a : "",
144
134
  });
145
135
  }),
@@ -150,9 +140,11 @@ function generateOperatorSuggestions(property, operatorPrefix = "") {
150
140
  * Creates value suggestions for autocomplete.
151
141
  * When scopedProperty is provided, only shows values for that property (single group).
152
142
  * When scopedProperty is omitted, searches across all properties (multiple groups).
143
+ * TODO: This could potentially contain an unlimited number of options if there are many values across properties.
144
+ * May need virtualization/async or other filtering mechanism.
153
145
  */
154
146
  function createValueSuggestions(filteringOptions = [], operator, filterText = "", scopedProperty) {
155
- var _a, _b;
147
+ var _a;
156
148
  const groups = {};
157
149
  for (const option of filteringOptions) {
158
150
  if (!(option === null || option === void 0 ? void 0 : option.property)) {
@@ -163,19 +155,15 @@ function createValueSuggestions(filteringOptions = [], operator, filterText = ""
163
155
  continue;
164
156
  }
165
157
  /* Build search fields */
166
- const searchFields = [
167
- option.label,
168
- ...((_a = option.tags) !== null && _a !== void 0 ? _a : []),
169
- ...((_b = option.filteringTags) !== null && _b !== void 0 ? _b : []),
170
- ];
158
+ const searchFields = [option.label, ...((_a = option.tags) !== null && _a !== void 0 ? _a : [])];
171
159
  if (!scopedProperty) {
172
- searchFields.push(option.property.propertyLabel);
160
+ searchFields.push(option.property.label);
173
161
  }
174
162
  const matches = matchesFilterText(searchFields.filter(Boolean), filterText);
175
163
  if (!matches) {
176
164
  continue;
177
165
  }
178
- const groupLabel = option.property.groupValuesLabel || "Values";
166
+ const groupLabel = option.property.groupLabel || "Values";
179
167
  if (!groups[groupLabel]) {
180
168
  groups[groupLabel] = {
181
169
  label: groupLabel,
@@ -183,10 +171,9 @@ function createValueSuggestions(filteringOptions = [], operator, filterText = ""
183
171
  };
184
172
  }
185
173
  groups[groupLabel].options.push({
186
- value: buildQueryString(option.property.propertyLabel, operator, option.value),
187
- label: option.label,
174
+ value: buildQueryString(option.property.label, operator, option.value),
175
+ label: buildQueryString(option.property.label, operator, option.value),
188
176
  tags: option.tags,
189
- filteringTags: option.filteringTags,
190
177
  });
191
178
  }
192
179
  return Object.values(groups).filter((group) => group.options.length > 0);
@@ -1 +1 @@
1
- {"version":3,"file":"generate-autocomplete-options.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/generate-autocomplete-options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-autocomplete-options.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/generate-autocomplete-options.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import type { ParsedProperty, QueryFilterOperator } from "../TokenFilter.types.js";
2
- declare const QUERY_OPERATORS: QueryFilterOperator[];
1
+ import type { InternalPropertyDefinition, OperatorT } from "../TokenFilter.types.js";
2
+ declare const QUERY_OPERATORS: OperatorT[];
3
3
  /**
4
4
  * Match an operator from the input text.
5
5
  * Operators are already sorted by specificity, so no re-sorting needed.
6
6
  */
7
- declare function matchOperator(allowedOperators: QueryFilterOperator[], text: string): QueryFilterOperator | undefined;
7
+ declare function matchOperator(allowedOperators: OperatorT[], text: string): OperatorT | undefined;
8
8
  /**
9
9
  * Match a property from the input text by longest property label.
10
10
  *
@@ -13,10 +13,10 @@ declare function matchOperator(allowedOperators: QueryFilterOperator[], text: st
13
13
  *
14
14
  * Result: { propertyLabel: "Instance ID" }
15
15
  */
16
- declare function matchFilteringProperty(filteringProperties: ParsedProperty[], text: string): ParsedProperty | undefined;
16
+ declare function matchFilteringProperty(filteringProperties: InternalPropertyDefinition[], text: string): InternalPropertyDefinition | undefined;
17
17
  /**
18
18
  * Check if the input text is a valid prefix of any allowed operator.
19
19
  * Returns the prefix if valid, null otherwise.
20
20
  */
21
- declare function matchOperatorPrefix(allowedOperators: QueryFilterOperator[], filteringText: string): string | null;
22
- export { QUERY_OPERATORS, matchOperator, matchFilteringProperty, matchOperatorPrefix, };
21
+ declare function matchOperatorPrefix(allowedOperators: OperatorT[], filteringText: string): string | null;
22
+ export { matchFilteringProperty, matchOperator, matchOperatorPrefix, QUERY_OPERATORS, };
@@ -35,9 +35,8 @@ function matchFilteringProperty(filteringProperties, text) {
35
35
  const lowerText = text.toLowerCase();
36
36
  let bestMatch;
37
37
  for (const prop of filteringProperties) {
38
- if (lowerText.startsWith(prop.propertyLabel.toLowerCase())) {
39
- if (!bestMatch ||
40
- prop.propertyLabel.length > bestMatch.propertyLabel.length) {
38
+ if (lowerText.startsWith(prop.label.toLowerCase())) {
39
+ if (!bestMatch || prop.label.length > bestMatch.label.length) {
41
40
  bestMatch = prop;
42
41
  }
43
42
  }
@@ -56,5 +55,5 @@ function matchOperatorPrefix(allowedOperators, filteringText) {
56
55
  const isValidPrefix = allowedOperators.some((operator) => operator.toLowerCase().startsWith(trimmedText.toLowerCase()));
57
56
  return isValidPrefix ? trimmedText : null;
58
57
  }
59
- export { QUERY_OPERATORS, matchOperator, matchFilteringProperty, matchOperatorPrefix, };
58
+ export { matchFilteringProperty, matchOperator, matchOperatorPrefix, QUERY_OPERATORS, };
60
59
  //# sourceMappingURL=operators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/operators.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,SAAS,GAAsC;IACnD,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;CACV,CAAC;AAEF,MAAM,eAAe,GAA0B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAEtE;;;GAGG;AACH,SAAS,aAAa,CACpB,gBAAuC,EACvC,IAAY;IAEZ,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACxC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CACtD,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAC7B,mBAAqC,EACrC,IAAY;IAEZ,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACrC,IAAI,SAAqC,CAAC;IAE1C,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACvC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC3D,IACE,CAAC,SAAS;gBACV,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,MAAM,EAC1D,CAAC;gBACD,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,gBAAuC,EACvC,aAAqB;IAErB,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;IAEzC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACvD,QAAQ,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAC7D,CAAC;IAEF,OAAO,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5C,CAAC;AAED,OAAO,EACL,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,mBAAmB,GACpB,CAAC"}
1
+ {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/operators.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,MAAM,SAAS,GAA4B;IACzC,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;CACV,CAAC;AAEF,MAAM,eAAe,GAAgB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAE5D;;;GAGG;AACH,SAAS,aAAa,CACpB,gBAA6B,EAC7B,IAAY;IAEZ,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACxC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CACtD,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAC7B,mBAAiD,EACjD,IAAY;IAEZ,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACrC,IAAI,SAAiD,CAAC;IAEtD,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACvC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC7D,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,gBAA6B,EAC7B,aAAqB;IAErB,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;IAEzC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACvD,QAAQ,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAC7D,CAAC;IAEF,OAAO,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5C,CAAC;AAED,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,CAAC"}
@@ -1,25 +1,7 @@
1
- import type { ParsedProperty, QueryFilterOperator } from "../TokenFilter.types.js";
2
- type ParsedText = {
3
- /** User has typed property + complete operator + value (e.g., "Status != active") */
4
- step: "property";
5
- property: ParsedProperty;
6
- operator: QueryFilterOperator;
7
- value: string;
8
- } | {
9
- /** User is typing the operator after property (e.g., "Status !") */
10
- step: "operator";
11
- property: ParsedProperty;
12
- operatorPrefix: string;
13
- } | {
14
- /** No property match; treat as free-text search */
15
- step: "free-text";
16
- value: string;
17
- operator?: QueryFilterOperator;
18
- };
1
+ import type { InternalParsedTextState, InternalPropertyDefinition } from "../TokenFilter.types.js";
19
2
  /**
20
3
  * Parse user input text to extract property, operator, and value components.
21
4
  * Handles partial input (e.g., user typing "Status !" to complete the operator).
22
5
  */
23
- declare function parseQueryText(filteringText: string, filteringProperties: ParsedProperty[]): ParsedText;
6
+ declare function parseQueryText(filteringText: string, filteringProperties: InternalPropertyDefinition[]): InternalParsedTextState;
24
7
  export { parseQueryText };
25
- export type { ParsedText };
@@ -20,7 +20,7 @@ function parseQueryText(filteringText, filteringProperties) {
20
20
  };
21
21
  }
22
22
  const textWithoutProperty = filteringText
23
- .substring(property.propertyLabel.length)
23
+ .substring(property.label.length)
24
24
  .trimStart();
25
25
  const operator = matchOperator(QUERY_OPERATORS, textWithoutProperty);
26
26
  if (operator) {
@@ -1 +1 @@
1
- {"version":3,"file":"parse-query-text.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/parse-query-text.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAuBrB;;;GAGG;AACH,SAAS,cAAc,CACrB,aAAqB,EACrB,mBAAqC;IAErC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;IAC5E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,gBAAgB,GAAG,aAAa,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;QACvE,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,gBAAgB;gBAC1B,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;aACpE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,aAAa;SACrB,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAG,aAAa;SACtC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;SACxC,SAAS,EAAE,CAAC;IAEf,MAAM,QAAQ,GAAG,aAAa,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;IAErE,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,QAAQ;YACR,QAAQ;YACR,KAAK,EAAE,mBAAmB,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;SAClE,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,mBAAmB,CACxC,eAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;IACxD,CAAC;IAED,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,aAAa;KACrB,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"parse-query-text.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/parse-query-text.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,SAAS,cAAc,CACrB,aAAqB,EACrB,mBAAiD;IAEjD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;IAC5E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,gBAAgB,GAAG,aAAa,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;QACvE,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,gBAAgB;gBAC1B,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;aACpE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,aAAa;SACrB,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAG,aAAa;SACtC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;SAChC,SAAS,EAAE,CAAC;IAEf,MAAM,QAAQ,GAAG,aAAa,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;IAErE,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,QAAQ;YACR,QAAQ;YACR,KAAK,EAAE,mBAAmB,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;SAClE,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,mBAAmB,CACxC,eAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;IACxD,CAAC;IAED,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,aAAa;KACrB,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -1,10 +1,10 @@
1
- import type { QueryFilterOperator } from "../TokenFilter.types.js";
1
+ import type { OperatorT } from "../TokenFilter.types.js";
2
2
  /**
3
3
  * Human-readable labels for query filter operators.
4
4
  * Used for displaying operator descriptions in autocomplete suggestions.
5
5
  * TODO: Support i18n
6
6
  */
7
- declare const OPERATOR_LABELS: Record<QueryFilterOperator, string>;
7
+ declare const OPERATOR_LABELS: Record<OperatorT, string>;
8
8
  /**
9
9
  * Builds a query string from property label, operator, and value.
10
10
  * Only includes non-empty parts, joined by spaces.
@@ -1 +1 @@
1
- {"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/query-builder.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,eAAe,GAAwC;IAC3D,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,aAAa;IAClB,IAAI,EAAE,qBAAqB;IAC3B,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,0BAA0B;IAChC,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,cAAc;CACpB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,SAAS,gBAAgB,CACvB,aAAqB,EACrB,QAAgB,EAChB,KAAa;IAEb,MAAM,KAAK,GAAG,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/query-builder.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,eAAe,GAA8B;IACjD,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,aAAa;IAClB,IAAI,EAAE,qBAAqB;IAC3B,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,0BAA0B;IAChC,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,cAAc;CACpB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,SAAS,gBAAgB,CACvB,aAAqB,EACrB,QAAgB,EAChB,KAAa;IAEb,MAAM,KAAK,GAAG,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC"}
@@ -13,6 +13,10 @@ type DateWrapperProps = {
13
13
  id?: string;
14
14
  strategy?: "absolute" | "fixed";
15
15
  };
16
+ /**
17
+ * Id for the label of the popup, used for aria-labelledby
18
+ */
19
+ popupLabelId?: string;
16
20
  };
17
- declare const DateDialog: ({ open, children, onClose, anchor, locale, translate, variant, popoverProps, }: DateWrapperProps) => React.JSX.Element | null;
21
+ declare const DateDialog: ({ open, children, onClose, anchor, locale, translate, variant, popoverProps, popupLabelId, }: DateWrapperProps) => React.JSX.Element | null;
18
22
  export { DateDialog };
@@ -5,6 +5,7 @@ import { Modal } from "../modal/index.js";
5
5
  import { useModalContext } from "../modal/Modal.context.js";
6
6
  import { Popover } from "../popover/index.js";
7
7
  import { cl } from "../utils/helpers/index.js";
8
+ import { focusElement } from "../utils/helpers/focus.js";
8
9
  import { useMedia } from "../utils/hooks/index.js";
9
10
  import { useI18n } from "../utils/i18n/i18n.hooks.js";
10
11
  import { getGlobalTranslations } from "./Date.locale.js";
@@ -14,7 +15,7 @@ const variantToLabel = {
14
15
  range: "chooseDateRange",
15
16
  month: "chooseMonth",
16
17
  };
17
- const DateDialog = ({ open, children, onClose, anchor, locale, translate, variant, popoverProps, }) => {
18
+ const DateDialog = ({ open, children, onClose, anchor, locale, translate, variant, popoverProps, popupLabelId, }) => {
18
19
  const translateGlobal = useI18n("global", getGlobalTranslations(locale));
19
20
  const modalRef = useRef(null);
20
21
  const isInModal = useModalContext(false) !== undefined;
@@ -28,7 +29,7 @@ const DateDialog = ({ open, children, onClose, anchor, locale, translate, varian
28
29
  if (hideModal) {
29
30
  return (React.createElement(Popover, Object.assign({ anchorEl: anchor, open: open, onClose: onClose, placement: "bottom-start", className: cl("aksel-date__popover", {
30
31
  "aksel-date": variant === "month",
31
- }) }, popoverProps), children));
32
+ }) }, popoverProps, { ref: focusPopoverOnOpen, tabIndex: -1, role: "dialog", "aria-labelledby": popupLabelId }), children));
32
33
  }
33
34
  return (React.createElement(Modal, { ref: modalRef, open: open, onClose: (event) => {
34
35
  event.stopPropagation();
@@ -41,5 +42,8 @@ const DateDialog = ({ open, children, onClose, anchor, locale, translate, varian
41
42
  children,
42
43
  React.createElement(Button, { variant: "tertiary", onClick: () => { var _a; return (_a = modalRef === null || modalRef === void 0 ? void 0 : modalRef.current) === null || _a === void 0 ? void 0 : _a.close(); }, size: "small", type: "button" }, translateGlobal("close")))));
43
44
  };
45
+ function focusPopoverOnOpen(element) {
46
+ focusElement(element, { preventScroll: true, sync: false });
47
+ }
44
48
  export { DateDialog };
45
49
  //# sourceMappingURL=Date.Dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Date.Dialog.js","sourceRoot":"","sources":["../../src/date/Date.Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,MAAM,cAAc,GAAG;IACrB,MAAM,EAAE,YAAY;IACpB,QAAQ,EAAE,aAAa;IACvB,KAAK,EAAE,iBAAiB;IACxB,KAAK,EAAE,aAAa;CACZ,CAAC;AAiBX,MAAM,UAAU,GAAG,CAAC,EAClB,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,MAAM,EACN,MAAM,EACN,SAAS,EACT,OAAO,EACP,YAAY,GACK,EAAE,EAAE;IACrB,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEzE,MAAM,QAAQ,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAEjD,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC;IACvD,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC;IACzD,MAAM,SAAS,GACb,QAAQ,CAAC,+BAA+B,EAAE,IAAI,CAAC;QAC/C,CAAC,SAAS;QACV,CAAC,UAAU,CAAC;IAEd,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,oBAAC,OAAO,kBACN,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,cAAc,EACxB,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE;gBACnC,YAAY,EAAE,OAAO,KAAK,OAAO;aAClC,CAAC,IACE,YAAY,GAEf,QAAQ,CACD,CACX,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,KAAK,IACJ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC;QACZ,CAAC,gBACW,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAC9C,SAAS,EAAE,EAAE,CAAC,mBAAmB,EAAE;YACjC,0BAA0B,EAAE,SAAS;YACrC,YAAY,EAAE,OAAO,KAAK,OAAO;SAClC,CAAC,EACF,oBAAoB,QACpB,SAAS,EAAC,KAAK;QAEf,6BAAK,SAAS,EAAC,wBAAwB;YACpC,QAAQ;YACT,oBAAC,MAAM,IACL,OAAO,EAAC,UAAU,EAClB,OAAO,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAA,EAAA,EACzC,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,QAAQ,IAEZ,eAAe,CAAC,OAAO,CAAC,CAClB,CACL,CACA,CACT,CAAC;AACJ,CAAC,CAAC;AACF,OAAO,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"Date.Dialog.js","sourceRoot":"","sources":["../../src/date/Date.Dialog.tsx"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ export const DatePicker = forwardRef((_a, ref) => {
47
47
  var { children, locale, translations, selected, id, defaultSelected, wrapperClassName, open: _open, onClose, onOpenToggle, strategy, mode } = _a, rest = __rest(_a, ["children", "locale", "translations", "selected", "id", "defaultSelected", "wrapperClassName", "open", "onClose", "onOpenToggle", "strategy", "mode"]);
48
48
  const translate = useI18n("DatePicker", translations, getTranslations(locale));
49
49
  const ariaId = useId(id);
50
+ const popupLabelId = useId();
50
51
  const [open, setOpen] = useControllableState({
51
52
  defaultValue: false,
52
53
  value: _open,
@@ -89,8 +90,8 @@ export const DatePicker = forwardRef((_a, ref) => {
89
90
  }, locale: locale, translate: translate, variant: mode !== null && mode !== void 0 ? mode : "single", popoverProps: {
90
91
  id: ariaId,
91
92
  strategy,
92
- } },
93
- React.createElement(ReactDayPicker, Object.assign({}, rest, { locale: locale, handleSelect: setValue, selected: value, mode: mode })))))));
93
+ }, popupLabelId: popupLabelId },
94
+ React.createElement(ReactDayPicker, Object.assign({}, rest, { locale: locale, handleSelect: setValue, selected: value, mode: mode, popupLabelId: popupLabelId })))))));
94
95
  });
95
96
  DatePicker.Standalone = DatePickerStandalone;
96
97
  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":";;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,wBAAwB,EAExB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,8BAA8B,EAC9B,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKhD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,oBAEN,MAAM,+BAA+B,CAAC;AAwBvC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAClC,CACE,EAcC,EACD,GAAG,EACH,EAAE;QAhBF,EACE,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,EAAE,EACF,eAAe,EACf,gBAAgB,EAChB,IAAI,EAAE,KAAK,EACX,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,IAAI,OAEL,EADI,IAAI,cAbT,sJAcC,CADQ;IAIT,MAAM,SAAS,GAAG,OAAO,CACvB,YAAY,EACZ,YAAY,EACZ,eAAe,CAAC,MAAM,CAAC,CACxB,CAAC;IAEF,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;IACzB,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;IAE7B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,oBAAoB,CAAC;QAC3C,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;IAEH,0FAA0F;IAC1F,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAwB,IAAI,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAG,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAEnD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,oBAAoB,CAE5C;QACA,YAAY,EAAE,eAAe;QAC7B,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;;YACrB,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,IAAI,IAAI,KAAK,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBAClC,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjE,WAAW,GAAG,IAAI,CAAC;gBAEnB,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC1C,WAAW,GAAG,KAAK,CAAC;gBACtB,CAAC;YACH,CAAC;YAED,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;gBACZ,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;YAED,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,qDAAG,QAAe,CAAC,CAAC;QACpC,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,CACL,oBAAC,8BAA8B,IAAC,SAAS,EAAE,SAAS;QAClD,oBAAC,wBAAwB,IACvB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnB,YAAY,aAAZ,YAAY,uBAAZ,YAAY,EAAI,CAAC;YACnB,CAAC,EACD,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI;YAEb,6BACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,gBAAgB,CAAC;gBAErD,QAAQ;gBACT,oBAAC,UAAU,IACT,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,GAAG,EAAE;wBACZ,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;wBACZ,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzB,CAAC,EACD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,QAAQ,EACzB,YAAY,EAAE;wBACZ,EAAE,EAAE,MAAM;wBACV,QAAQ;qBACT,EACD,YAAY,EAAE,YAAY;oBAE1B,oBAAC,cAAc,oBACT,IAAI,IACR,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,QAAQ,EACtB,QAAQ,EAAE,KAAY,EACtB,IAAI,EAAE,IAAW,EACjB,YAAY,EAAE,YAAY,IAC1B,CACS,CACT,CACmB,CACI,CAClC,CAAC;AACJ,CAAC,CACqB,CAAC;AAEzB,UAAU,CAAC,UAAU,GAAG,oBAAoB,CAAC;AAC7C,UAAU,CAAC,KAAK,GAAG,eAAe,CAAC;AAEnC,eAAe,UAAU,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { differenceInCalendarDays, isWeekend } from "date-fns";
2
2
  import { useCallback, useState } from "react";
3
3
  import { dateMatchModifiers } from "react-day-picker";
4
+ import { focusElement } from "../../../utils/helpers/focus.js";
4
5
  import { useDateLocale } from "../../../utils/i18n/i18n.hooks.js";
5
6
  import { getLocaleFromString } from "../../Date.locale.js";
6
7
  import { formatDateForInput, isValidDate, parseDate } from "../../date-utils/index.js";
@@ -36,8 +37,9 @@ export const useDatepicker = (opt = {}) => {
36
37
  const handleOpen = useCallback((newOpen) => {
37
38
  var _a, _b;
38
39
  setOpen(newOpen);
39
- newOpen &&
40
+ if (newOpen) {
40
41
  setMonth((_b = (_a = selectedDay !== null && selectedDay !== void 0 ? selectedDay : defaultSelected) !== null && _a !== void 0 ? _a : defaultMonth) !== null && _b !== void 0 ? _b : today);
42
+ }
41
43
  }, [defaultMonth, defaultSelected, selectedDay, today]);
42
44
  const updateDate = (date) => {
43
45
  onDateChange === null || onDateChange === void 0 ? void 0 : onDateChange(date);
@@ -142,7 +144,8 @@ export const useDatepicker = (opt = {}) => {
142
144
  open,
143
145
  onClose: () => {
144
146
  handleOpen(false);
145
- anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.focus();
147
+ /* Delay focus to allow "open"-button to update title before focus */
148
+ queueMicrotask(() => focusElement(anchorRef, { sync: false, preventScroll: true }));
146
149
  },
147
150
  onOpenToggle: () => handleOpen(!open),
148
151
  disabled,
@@ -1 +1 @@
1
- {"version":3,"file":"useDatepicker.js","sourceRoot":"","sources":["../../../../src/date/datepicker/hooks/useDatepicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useDatepicker.js","sourceRoot":"","sources":["../../../../src/date/datepicker/hooks/useDatepicker.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { differenceInCalendarDays, isSameDay, isWeekend } from "date-fns";
2
2
  import { useState } from "react";
3
3
  import { dateMatchModifiers } from "react-day-picker";
4
+ import { focusElement } from "../../../utils/helpers/focus.js";
4
5
  import { useDateLocale } from "../../../utils/i18n/i18n.hooks.js";
5
6
  import { getLocaleFromString } from "../../Date.locale.js";
6
7
  import { formatDateForInput, isValidDate, parseDate } from "../../date-utils/index.js";
@@ -285,7 +286,8 @@ export const useRangeDatepicker = (opt = {}) => {
285
286
  onOpenToggle: () => setOpen((x) => !x),
286
287
  onClose: () => {
287
288
  setOpen(false);
288
- anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.focus();
289
+ /* Delay focus to allow "open"-button to update title before focus */
290
+ queueMicrotask(() => focusElement(anchorRef, { sync: false, preventScroll: true }));
289
291
  },
290
292
  disabled,
291
293
  disableWeekends,