@navikt/ds-react 5.12.5 → 5.14.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 (726) hide show
  1. package/_docs.json +285 -138
  2. package/cjs/accordion/Accordion.js +2 -2
  3. package/cjs/accordion/AccordionHeader.js +3 -5
  4. package/cjs/accordion/AccordionItem.js +11 -14
  5. package/cjs/alert/Alert.js +2 -2
  6. package/cjs/button/Button.js +11 -12
  7. package/cjs/chat/Bubble.js +1 -1
  8. package/cjs/chat/Chat.js +2 -2
  9. package/cjs/chips/Chips.js +1 -1
  10. package/cjs/chips/Removable.js +4 -7
  11. package/cjs/copybutton/CopyButton.js +6 -7
  12. package/cjs/date/datepicker/DatePicker.js +4 -2
  13. package/cjs/date/datepicker/parts/Caption.js +2 -2
  14. package/cjs/date/datepicker/parts/DropdownCaption.js +1 -1
  15. package/cjs/date/datepicker/parts/HeadRow.js +1 -1
  16. package/cjs/date/datepicker/parts/Row.js +2 -2
  17. package/cjs/date/datepicker/parts/WeekRow.js +2 -2
  18. package/cjs/date/monthpicker/MonthCaption.js +1 -1
  19. package/cjs/date/monthpicker/MonthPicker.js +4 -3
  20. package/cjs/date/parts/DateInput.js +1 -1
  21. package/cjs/date/parts/DateWrapper.js +2 -2
  22. package/cjs/date/utils/check-dates.js +1 -1
  23. package/cjs/date/utils/is-match.js +2 -2
  24. package/cjs/date/utils/parse-date.js +1 -1
  25. package/cjs/dropdown/Dropdown.js +10 -12
  26. package/cjs/dropdown/Menu/Divider.js +1 -1
  27. package/cjs/dropdown/Menu/GroupedList/GroupedHeading.js +1 -1
  28. package/cjs/dropdown/Menu/GroupedList/GroupedItem.js +3 -6
  29. package/cjs/dropdown/Menu/List/Item.js +3 -6
  30. package/cjs/dropdown/Toggle.js +6 -5
  31. package/cjs/expansion-card/ExpansionCardHeader.js +1 -1
  32. package/cjs/form/ConfirmationPanel.js +2 -2
  33. package/cjs/form/ReadOnlyIcon.js +1 -1
  34. package/cjs/form/Select.js +1 -1
  35. package/cjs/form/Textarea.js +2 -1
  36. package/cjs/form/checkbox/Checkbox.js +3 -2
  37. package/cjs/form/combobox/Combobox.js +7 -7
  38. package/cjs/form/combobox/ComboboxProvider.js +2 -2
  39. package/cjs/form/combobox/FilteredOptions/FilteredOptions.js +4 -4
  40. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js +5 -6
  41. package/cjs/form/combobox/Input/inputContext.js +2 -2
  42. package/cjs/form/combobox/SelectedOptions/SelectedOptions.js +1 -1
  43. package/cjs/form/combobox/SelectedOptions/selectedOptionsContext.js +2 -5
  44. package/cjs/form/error-summary/ErrorSummary.js +3 -3
  45. package/cjs/form/error-summary/ErrorSummaryItem.js +1 -1
  46. package/cjs/form/radio/Radio.js +3 -2
  47. package/cjs/form/radio/RadioGroup.js +2 -2
  48. package/cjs/form/search/Search.js +3 -2
  49. package/cjs/form/search/SearchButton.js +3 -5
  50. package/cjs/form/useFormField.js +2 -2
  51. package/cjs/grid/Cell.js +1 -1
  52. package/cjs/grid/Grid.js +1 -1
  53. package/cjs/guide-panel/GuidePanel.js +1 -1
  54. package/cjs/guide-panel/Illustration.js +2 -2
  55. package/cjs/help-text/HelpText.js +5 -7
  56. package/cjs/help-text/HelpTextIcon.js +2 -2
  57. package/cjs/internal-header/InternalHeaderButton.js +1 -1
  58. package/cjs/internal-header/InternalHeaderTitle.js +1 -1
  59. package/cjs/internal-header/InternalHeaderUser.js +1 -1
  60. package/cjs/internal-header/InternalHeaderUserButton.js +1 -1
  61. package/cjs/layout/bleed/Bleed.js +1 -1
  62. package/cjs/layout/content-container/ContentContainer.js +1 -1
  63. package/cjs/layout/grid/HGrid.js +1 -1
  64. package/cjs/layout/page/parts/PageBlock.js +1 -1
  65. package/cjs/layout/sidemal-test/AvatarPanel.js +1 -1
  66. package/cjs/layout/sidemal-test/Content.js +3 -3
  67. package/cjs/layout/sidemal-test/Filter.js +1 -1
  68. package/cjs/layout/sidemal-test/Intro.js +1 -1
  69. package/cjs/link-panel/LinkPanel.js +3 -3
  70. package/cjs/link-panel/LinkPanelDescription.js +1 -1
  71. package/cjs/link-panel/LinkPanelTitle.js +1 -1
  72. package/cjs/list/List.js +2 -2
  73. package/cjs/loader/Loader.js +2 -1
  74. package/cjs/modal/Modal.js +21 -18
  75. package/cjs/modal/ModalBody.js +1 -1
  76. package/cjs/modal/ModalFooter.js +1 -1
  77. package/cjs/modal/ModalHeader.js +1 -1
  78. package/cjs/pagination/PaginationItem.js +1 -1
  79. package/cjs/panel/Panel.js +1 -1
  80. package/cjs/popover/Popover.js +6 -5
  81. package/cjs/popover/PopoverContent.js +1 -1
  82. package/cjs/read-more/ReadMore.js +12 -12
  83. package/cjs/skeleton/Skeleton.js +1 -1
  84. package/cjs/stepper/Step.js +6 -6
  85. package/cjs/table/Body.js +1 -1
  86. package/cjs/table/ColumnHeader.js +1 -1
  87. package/cjs/table/DataCell.js +3 -3
  88. package/cjs/table/ExpandableRow.js +23 -22
  89. package/cjs/table/Header.js +1 -1
  90. package/cjs/table/HeaderCell.js +2 -1
  91. package/cjs/table/Row.js +1 -1
  92. package/cjs/tabs/TabList.js +3 -2
  93. package/cjs/tabs/Tabs.js +1 -1
  94. package/cjs/tag/Tag.js +5 -3
  95. package/cjs/timeline/AxisLabels.js +1 -1
  96. package/cjs/timeline/Pin.js +2 -2
  97. package/cjs/timeline/TimelineRow.js +2 -2
  98. package/cjs/timeline/hooks/useTimelineRows.js +5 -3
  99. package/cjs/timeline/period/ClickablePeriod.js +2 -2
  100. package/cjs/timeline/utils/timeline.js +1 -1
  101. package/cjs/timeline/zoom/ZoomButton.js +1 -1
  102. package/cjs/toggle-group/ToggleGroup.js +3 -3
  103. package/cjs/tooltip/Tooltip.js +18 -12
  104. package/cjs/typography/BodyLong.js +1 -1
  105. package/cjs/typography/ErrorMessage.js +1 -1
  106. package/cjs/typography/Ingress.js +1 -1
  107. package/cjs/util/Slot.js +2 -5
  108. package/cjs/util/TextareaAutoSize.js +7 -5
  109. package/cjs/util/composeEventHandlers.js +17 -0
  110. package/cjs/util/hooks/index.js +19 -0
  111. package/cjs/util/hooks/package.json +6 -0
  112. package/cjs/util/hooks/useCallbackRef.js +18 -0
  113. package/cjs/util/hooks/useClientLayoutEffect.js +7 -0
  114. package/cjs/util/hooks/useControllableState.js +25 -0
  115. package/cjs/util/hooks/useMergeRefs.js +37 -0
  116. package/cjs/util/{usePrevious.js → hooks/usePrevious.js} +2 -1
  117. package/cjs/util/index.js +7 -7
  118. package/cjs/util/types/index.js +2 -0
  119. package/cjs/util/types/package.json +6 -0
  120. package/esm/accordion/Accordion.d.ts +1 -1
  121. package/esm/accordion/Accordion.js +2 -2
  122. package/esm/accordion/Accordion.js.map +1 -1
  123. package/esm/accordion/AccordionHeader.js +3 -5
  124. package/esm/accordion/AccordionHeader.js.map +1 -1
  125. package/esm/accordion/AccordionItem.d.ts +4 -0
  126. package/esm/accordion/AccordionItem.js +12 -15
  127. package/esm/accordion/AccordionItem.js.map +1 -1
  128. package/esm/alert/Alert.js +2 -2
  129. package/esm/alert/Alert.js.map +1 -1
  130. package/esm/button/Button.d.ts +1 -1
  131. package/esm/button/Button.js +12 -13
  132. package/esm/button/Button.js.map +1 -1
  133. package/esm/chat/Bubble.js +1 -1
  134. package/esm/chat/Bubble.js.map +1 -1
  135. package/esm/chat/Chat.js +2 -2
  136. package/esm/chat/Chat.js.map +1 -1
  137. package/esm/chips/Chips.d.ts +2 -2
  138. package/esm/chips/Chips.js +1 -1
  139. package/esm/chips/Chips.js.map +1 -1
  140. package/esm/chips/Removable.js +4 -7
  141. package/esm/chips/Removable.js.map +1 -1
  142. package/esm/chips/Toggle.d.ts +1 -1
  143. package/esm/copybutton/CopyButton.js +6 -7
  144. package/esm/copybutton/CopyButton.js.map +1 -1
  145. package/esm/date/context/useSharedMonthContext.js.map +1 -1
  146. package/esm/date/datepicker/DatePicker.js +5 -3
  147. package/esm/date/datepicker/DatePicker.js.map +1 -1
  148. package/esm/date/datepicker/parts/Caption.js +2 -2
  149. package/esm/date/datepicker/parts/Caption.js.map +1 -1
  150. package/esm/date/datepicker/parts/DropdownCaption.js +1 -1
  151. package/esm/date/datepicker/parts/DropdownCaption.js.map +1 -1
  152. package/esm/date/datepicker/parts/HeadRow.js +1 -1
  153. package/esm/date/datepicker/parts/HeadRow.js.map +1 -1
  154. package/esm/date/datepicker/parts/Row.js +3 -3
  155. package/esm/date/datepicker/parts/Row.js.map +1 -1
  156. package/esm/date/datepicker/parts/WeekRow.js +1 -1
  157. package/esm/date/datepicker/parts/WeekRow.js.map +1 -1
  158. package/esm/date/monthpicker/MonthCaption.js +1 -1
  159. package/esm/date/monthpicker/MonthCaption.js.map +1 -1
  160. package/esm/date/monthpicker/MonthPicker.js +4 -3
  161. package/esm/date/monthpicker/MonthPicker.js.map +1 -1
  162. package/esm/date/parts/DateInput.js +1 -1
  163. package/esm/date/parts/DateInput.js.map +1 -1
  164. package/esm/date/parts/DateWrapper.js +1 -1
  165. package/esm/date/parts/DateWrapper.js.map +1 -1
  166. package/esm/date/utils/check-dates.js +1 -1
  167. package/esm/date/utils/check-dates.js.map +1 -1
  168. package/esm/date/utils/get-month-weeks.js.map +1 -1
  169. package/esm/date/utils/is-match.js +2 -2
  170. package/esm/date/utils/is-match.js.map +1 -1
  171. package/esm/date/utils/navigation.js.map +1 -1
  172. package/esm/date/utils/parse-date.js +1 -1
  173. package/esm/date/utils/parse-date.js.map +1 -1
  174. package/esm/dropdown/Dropdown.d.ts +4 -0
  175. package/esm/dropdown/Dropdown.js +10 -12
  176. package/esm/dropdown/Dropdown.js.map +1 -1
  177. package/esm/dropdown/Menu/Divider.js +1 -1
  178. package/esm/dropdown/Menu/Divider.js.map +1 -1
  179. package/esm/dropdown/Menu/GroupedList/GroupedHeading.js +1 -1
  180. package/esm/dropdown/Menu/GroupedList/GroupedHeading.js.map +1 -1
  181. package/esm/dropdown/Menu/GroupedList/GroupedItem.d.ts +1 -1
  182. package/esm/dropdown/Menu/GroupedList/GroupedItem.js +3 -6
  183. package/esm/dropdown/Menu/GroupedList/GroupedItem.js.map +1 -1
  184. package/esm/dropdown/Menu/GroupedList/index.d.ts +1 -1
  185. package/esm/dropdown/Menu/List/Item.d.ts +1 -1
  186. package/esm/dropdown/Menu/List/Item.js +3 -6
  187. package/esm/dropdown/Menu/List/Item.js.map +1 -1
  188. package/esm/dropdown/Menu/List/index.d.ts +1 -1
  189. package/esm/dropdown/Toggle.js +6 -5
  190. package/esm/dropdown/Toggle.js.map +1 -1
  191. package/esm/expansion-card/ExpansionCard.d.ts +1 -1
  192. package/esm/expansion-card/ExpansionCardHeader.js +1 -1
  193. package/esm/expansion-card/ExpansionCardHeader.js.map +1 -1
  194. package/esm/expansion-card/ExpansionCardTitle.d.ts +1 -1
  195. package/esm/form/ConfirmationPanel.js +1 -1
  196. package/esm/form/ConfirmationPanel.js.map +1 -1
  197. package/esm/form/Fieldset/useFieldset.d.ts +1 -1
  198. package/esm/form/ReadOnlyIcon.js +1 -1
  199. package/esm/form/ReadOnlyIcon.js.map +1 -1
  200. package/esm/form/Select.js +1 -1
  201. package/esm/form/Select.js.map +1 -1
  202. package/esm/form/Switch.js.map +1 -1
  203. package/esm/form/TextField.js.map +1 -1
  204. package/esm/form/Textarea.js +2 -1
  205. package/esm/form/Textarea.js.map +1 -1
  206. package/esm/form/checkbox/Checkbox.js +2 -1
  207. package/esm/form/checkbox/Checkbox.js.map +1 -1
  208. package/esm/form/checkbox/useCheckbox.d.ts +1 -1
  209. package/esm/form/combobox/Combobox.d.ts +1 -1
  210. package/esm/form/combobox/Combobox.js +8 -8
  211. package/esm/form/combobox/Combobox.js.map +1 -1
  212. package/esm/form/combobox/ComboboxProvider.js +2 -2
  213. package/esm/form/combobox/ComboboxProvider.js.map +1 -1
  214. package/esm/form/combobox/FilteredOptions/FilteredOptions.js +4 -4
  215. package/esm/form/combobox/FilteredOptions/FilteredOptions.js.map +1 -1
  216. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.d.ts +1 -1
  217. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js +3 -4
  218. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  219. package/esm/form/combobox/Input/inputContext.js +1 -1
  220. package/esm/form/combobox/Input/inputContext.js.map +1 -1
  221. package/esm/form/combobox/SelectedOptions/SelectedOptions.js +1 -1
  222. package/esm/form/combobox/SelectedOptions/SelectedOptions.js.map +1 -1
  223. package/esm/form/combobox/SelectedOptions/selectedOptionsContext.js +1 -1
  224. package/esm/form/combobox/SelectedOptions/selectedOptionsContext.js.map +1 -1
  225. package/esm/form/combobox/ToggleListButton.js +1 -1
  226. package/esm/form/combobox/ToggleListButton.js.map +1 -1
  227. package/esm/form/combobox/customOptionsContext.js +1 -1
  228. package/esm/form/combobox/customOptionsContext.js.map +1 -1
  229. package/esm/form/error-summary/ErrorSummary.js +3 -3
  230. package/esm/form/error-summary/ErrorSummary.js.map +1 -1
  231. package/esm/form/error-summary/ErrorSummaryItem.d.ts +1 -1
  232. package/esm/form/error-summary/ErrorSummaryItem.js +1 -1
  233. package/esm/form/error-summary/ErrorSummaryItem.js.map +1 -1
  234. package/esm/form/radio/Radio.js +2 -1
  235. package/esm/form/radio/Radio.js.map +1 -1
  236. package/esm/form/radio/RadioGroup.js +1 -1
  237. package/esm/form/radio/RadioGroup.js.map +1 -1
  238. package/esm/form/radio/useRadio.d.ts +1 -1
  239. package/esm/form/search/Search.js +5 -4
  240. package/esm/form/search/Search.js.map +1 -1
  241. package/esm/form/search/SearchButton.js +3 -5
  242. package/esm/form/search/SearchButton.js.map +1 -1
  243. package/esm/form/useFormField.js +1 -1
  244. package/esm/form/useFormField.js.map +1 -1
  245. package/esm/grid/Cell.js +1 -1
  246. package/esm/grid/Cell.js.map +1 -1
  247. package/esm/grid/Grid.js +1 -1
  248. package/esm/grid/Grid.js.map +1 -1
  249. package/esm/guide-panel/GuidePanel.js +1 -1
  250. package/esm/guide-panel/GuidePanel.js.map +1 -1
  251. package/esm/guide-panel/Illustration.js +1 -1
  252. package/esm/guide-panel/Illustration.js.map +1 -1
  253. package/esm/help-text/HelpText.d.ts +0 -5
  254. package/esm/help-text/HelpText.js +6 -8
  255. package/esm/help-text/HelpText.js.map +1 -1
  256. package/esm/help-text/HelpTextIcon.js +1 -1
  257. package/esm/internal-header/InternalHeader.d.ts +1 -1
  258. package/esm/internal-header/InternalHeader.js.map +1 -1
  259. package/esm/internal-header/InternalHeaderButton.d.ts +1 -1
  260. package/esm/internal-header/InternalHeaderButton.js +1 -1
  261. package/esm/internal-header/InternalHeaderButton.js.map +1 -1
  262. package/esm/internal-header/InternalHeaderTitle.d.ts +1 -1
  263. package/esm/internal-header/InternalHeaderTitle.js +1 -1
  264. package/esm/internal-header/InternalHeaderTitle.js.map +1 -1
  265. package/esm/internal-header/InternalHeaderUser.js +1 -1
  266. package/esm/internal-header/InternalHeaderUser.js.map +1 -1
  267. package/esm/internal-header/InternalHeaderUserButton.d.ts +1 -1
  268. package/esm/internal-header/InternalHeaderUserButton.js +1 -1
  269. package/esm/internal-header/InternalHeaderUserButton.js.map +1 -1
  270. package/esm/layout/bleed/Bleed.js +1 -1
  271. package/esm/layout/bleed/Bleed.js.map +1 -1
  272. package/esm/layout/box/Box.d.ts +2 -2
  273. package/esm/layout/content-container/ContentContainer.js +1 -1
  274. package/esm/layout/content-container/ContentContainer.js.map +1 -1
  275. package/esm/layout/grid/HGrid.js +1 -1
  276. package/esm/layout/grid/HGrid.js.map +1 -1
  277. package/esm/layout/page/Page.d.ts +2 -2
  278. package/esm/layout/page/Page.js.map +1 -1
  279. package/esm/layout/page/parts/PageBlock.d.ts +7 -6
  280. package/esm/layout/page/parts/PageBlock.js +1 -1
  281. package/esm/layout/page/parts/PageBlock.js.map +1 -1
  282. package/esm/layout/responsive/Responsive.js.map +1 -1
  283. package/esm/layout/sidemal-test/AvatarPanel.js +1 -1
  284. package/esm/layout/sidemal-test/AvatarPanel.js.map +1 -1
  285. package/esm/layout/sidemal-test/Content.js +4 -4
  286. package/esm/layout/sidemal-test/Content.js.map +1 -1
  287. package/esm/layout/sidemal-test/Filter.js +1 -1
  288. package/esm/layout/sidemal-test/Filter.js.map +1 -1
  289. package/esm/layout/sidemal-test/Header.js +1 -1
  290. package/esm/layout/sidemal-test/Header.js.map +1 -1
  291. package/esm/layout/sidemal-test/Intro.js +2 -2
  292. package/esm/layout/sidemal-test/Intro.js.map +1 -1
  293. package/esm/layout/sidemal-test/content-box/ContentBox.js.map +1 -1
  294. package/esm/layout/stack/HStack.d.ts +1 -1
  295. package/esm/layout/stack/HStack.js.map +1 -1
  296. package/esm/layout/stack/Stack.d.ts +1 -1
  297. package/esm/layout/stack/Stack.js.map +1 -1
  298. package/esm/layout/stack/VStack.d.ts +1 -1
  299. package/esm/layout/stack/VStack.js.map +1 -1
  300. package/esm/layout/utilities/types.d.ts +2 -2
  301. package/esm/link/Link.d.ts +1 -1
  302. package/esm/link-panel/LinkPanel.d.ts +2 -2
  303. package/esm/link-panel/LinkPanel.js +3 -3
  304. package/esm/link-panel/LinkPanel.js.map +1 -1
  305. package/esm/link-panel/LinkPanelDescription.js +1 -1
  306. package/esm/link-panel/LinkPanelDescription.js.map +1 -1
  307. package/esm/link-panel/LinkPanelTitle.d.ts +1 -1
  308. package/esm/link-panel/LinkPanelTitle.js +1 -1
  309. package/esm/link-panel/LinkPanelTitle.js.map +1 -1
  310. package/esm/list/List.js +1 -1
  311. package/esm/loader/Loader.js +2 -1
  312. package/esm/loader/Loader.js.map +1 -1
  313. package/esm/modal/Modal.js +21 -18
  314. package/esm/modal/Modal.js.map +1 -1
  315. package/esm/modal/ModalBody.js +1 -1
  316. package/esm/modal/ModalBody.js.map +1 -1
  317. package/esm/modal/ModalFooter.js +1 -1
  318. package/esm/modal/ModalFooter.js.map +1 -1
  319. package/esm/modal/ModalHeader.js +1 -1
  320. package/esm/modal/ModalHeader.js.map +1 -1
  321. package/esm/modal/types.d.ts +1 -1
  322. package/esm/pagination/Pagination.js.map +1 -1
  323. package/esm/pagination/PaginationItem.d.ts +1 -1
  324. package/esm/pagination/PaginationItem.js +1 -1
  325. package/esm/pagination/PaginationItem.js.map +1 -1
  326. package/esm/panel/Panel.d.ts +1 -1
  327. package/esm/panel/Panel.js +1 -1
  328. package/esm/panel/Panel.js.map +1 -1
  329. package/esm/popover/Popover.d.ts +1 -1
  330. package/esm/popover/Popover.js +4 -3
  331. package/esm/popover/Popover.js.map +1 -1
  332. package/esm/popover/PopoverContent.js +1 -1
  333. package/esm/popover/PopoverContent.js.map +1 -1
  334. package/esm/read-more/ReadMore.d.ts +4 -0
  335. package/esm/read-more/ReadMore.js +13 -13
  336. package/esm/read-more/ReadMore.js.map +1 -1
  337. package/esm/skeleton/Skeleton.js +1 -1
  338. package/esm/skeleton/Skeleton.js.map +1 -1
  339. package/esm/stepper/Step.d.ts +1 -1
  340. package/esm/stepper/Step.js +6 -6
  341. package/esm/stepper/Step.js.map +1 -1
  342. package/esm/table/AnimateHeight.js.map +1 -0
  343. package/esm/table/Body.js +1 -1
  344. package/esm/table/Body.js.map +1 -1
  345. package/esm/table/ColumnHeader.js +1 -1
  346. package/esm/table/ColumnHeader.js.map +1 -1
  347. package/esm/table/DataCell.d.ts +4 -0
  348. package/esm/table/DataCell.js +3 -3
  349. package/esm/table/DataCell.js.map +1 -1
  350. package/esm/table/ExpandableRow.js +23 -22
  351. package/esm/table/ExpandableRow.js.map +1 -1
  352. package/esm/table/Header.js +1 -1
  353. package/esm/table/Header.js.map +1 -1
  354. package/esm/table/HeaderCell.d.ts +4 -0
  355. package/esm/table/HeaderCell.js +2 -1
  356. package/esm/table/HeaderCell.js.map +1 -1
  357. package/esm/table/Row.js +1 -1
  358. package/esm/table/Row.js.map +1 -1
  359. package/esm/tabs/Tab.d.ts +1 -1
  360. package/esm/tabs/TabList.js +4 -3
  361. package/esm/tabs/TabList.js.map +1 -1
  362. package/esm/tabs/Tabs.d.ts +1 -1
  363. package/esm/tabs/Tabs.js +1 -1
  364. package/esm/tabs/Tabs.js.map +1 -1
  365. package/esm/tag/Tag.d.ts +4 -0
  366. package/esm/tag/Tag.js +5 -3
  367. package/esm/tag/Tag.js.map +1 -1
  368. package/esm/timeline/AxisLabels.js +1 -1
  369. package/esm/timeline/AxisLabels.js.map +1 -1
  370. package/esm/timeline/Pin.js +3 -3
  371. package/esm/timeline/Pin.js.map +1 -1
  372. package/esm/timeline/TimelineRow.js +2 -2
  373. package/esm/timeline/TimelineRow.js.map +1 -1
  374. package/esm/timeline/hooks/useTimelineRows.js +5 -3
  375. package/esm/timeline/hooks/useTimelineRows.js.map +1 -1
  376. package/esm/timeline/period/ClickablePeriod.js +3 -3
  377. package/esm/timeline/period/ClickablePeriod.js.map +1 -1
  378. package/esm/timeline/utils/timeline.js +1 -1
  379. package/esm/timeline/utils/timeline.js.map +1 -1
  380. package/esm/timeline/zoom/ZoomButton.js +1 -1
  381. package/esm/timeline/zoom/ZoomButton.js.map +1 -1
  382. package/esm/toggle-group/ToggleGroup.js +2 -2
  383. package/esm/toggle-group/ToggleGroup.js.map +1 -1
  384. package/esm/tooltip/Tooltip.d.ts +4 -0
  385. package/esm/tooltip/Tooltip.js +18 -12
  386. package/esm/tooltip/Tooltip.js.map +1 -1
  387. package/esm/typography/BodyLong.d.ts +1 -1
  388. package/esm/typography/BodyLong.js +1 -1
  389. package/esm/typography/BodyLong.js.map +1 -1
  390. package/esm/typography/BodyShort.d.ts +1 -1
  391. package/esm/typography/Detail.d.ts +1 -1
  392. package/esm/typography/ErrorMessage.d.ts +1 -1
  393. package/esm/typography/ErrorMessage.js +1 -1
  394. package/esm/typography/ErrorMessage.js.map +1 -1
  395. package/esm/typography/Heading.d.ts +1 -1
  396. package/esm/typography/Ingress.d.ts +1 -1
  397. package/esm/typography/Ingress.js +1 -1
  398. package/esm/typography/Ingress.js.map +1 -1
  399. package/esm/typography/Label.d.ts +1 -1
  400. package/esm/util/Slot.js +1 -1
  401. package/esm/util/Slot.js.map +1 -1
  402. package/esm/util/TextareaAutoSize.js +5 -3
  403. package/esm/util/TextareaAutoSize.js.map +1 -1
  404. package/esm/util/composeEventHandlers.d.ts +8 -0
  405. package/esm/util/composeEventHandlers.js +14 -0
  406. package/esm/util/composeEventHandlers.js.map +1 -0
  407. package/esm/util/hooks/index.d.ts +8 -0
  408. package/esm/util/hooks/index.js +9 -0
  409. package/esm/util/hooks/index.js.map +1 -0
  410. package/esm/util/hooks/useCallbackRef.d.ts +7 -0
  411. package/esm/util/hooks/useCallbackRef.js +15 -0
  412. package/esm/util/hooks/useCallbackRef.js.map +1 -0
  413. package/esm/util/hooks/useClientLayoutEffect.js +5 -0
  414. package/esm/util/hooks/useClientLayoutEffect.js.map +1 -0
  415. package/esm/util/hooks/useControllableState.d.ts +9 -0
  416. package/esm/util/hooks/useControllableState.js +22 -0
  417. package/esm/util/hooks/useControllableState.js.map +1 -0
  418. package/esm/util/{useEventListener.d.ts → hooks/useEventListener.d.ts} +1 -1
  419. package/esm/util/hooks/useEventListener.js.map +1 -0
  420. package/esm/util/hooks/useId.js.map +1 -0
  421. package/esm/util/hooks/useMedia.js.map +1 -0
  422. package/esm/util/hooks/useMergeRefs.d.ts +15 -0
  423. package/esm/util/hooks/useMergeRefs.js +30 -0
  424. package/esm/util/hooks/useMergeRefs.js.map +1 -0
  425. package/esm/util/hooks/usePrevious.d.ts +1 -0
  426. package/esm/util/{usePrevious.js → hooks/usePrevious.js} +1 -2
  427. package/esm/util/hooks/usePrevious.js.map +1 -0
  428. package/esm/util/index.d.ts +4 -5
  429. package/esm/util/index.js +3 -5
  430. package/esm/util/index.js.map +1 -1
  431. package/esm/util/types/OverridableComponent.js.map +1 -0
  432. package/esm/util/types/index.d.ts +1 -0
  433. package/esm/util/types/index.js +2 -0
  434. package/esm/util/types/index.js.map +1 -0
  435. package/package.json +3 -3
  436. package/src/accordion/Accordion.tsx +5 -5
  437. package/src/accordion/AccordionContent.tsx +3 -3
  438. package/src/accordion/AccordionHeader.tsx +5 -7
  439. package/src/accordion/AccordionItem.tsx +22 -22
  440. package/src/accordion/accordion.stories.tsx +8 -5
  441. package/src/alert/Alert.tsx +8 -8
  442. package/src/alert/alert.stories.tsx +6 -7
  443. package/src/button/Button.tsx +18 -23
  444. package/src/button/button.stories.tsx +1 -1
  445. package/src/chat/Bubble.tsx +4 -4
  446. package/src/chat/Chat.tsx +5 -5
  447. package/src/chat/chat.stories.tsx +1 -1
  448. package/src/chips/Chips.tsx +4 -4
  449. package/src/chips/Removable.tsx +7 -8
  450. package/src/chips/Toggle.tsx +4 -4
  451. package/src/chips/chips.stories.tsx +5 -5
  452. package/src/copybutton/CopyButton.tsx +9 -10
  453. package/src/copybutton/copy-button.stories.tsx +3 -3
  454. package/src/date/context/useSharedMonthContext.tsx +1 -1
  455. package/src/date/datepicker/DatePicker.tsx +7 -5
  456. package/src/date/datepicker/DatePickerStandalone.tsx +2 -2
  457. package/src/date/datepicker/datepicker.stories.tsx +2 -2
  458. package/src/date/datepicker/parts/Caption.tsx +2 -3
  459. package/src/date/datepicker/parts/DropdownCaption.tsx +2 -2
  460. package/src/date/datepicker/parts/HeadRow.tsx +1 -1
  461. package/src/date/datepicker/parts/Row.tsx +3 -3
  462. package/src/date/datepicker/parts/WeekRow.tsx +1 -1
  463. package/src/date/hooks/useDatepicker.tsx +7 -7
  464. package/src/date/hooks/useMonthPicker.tsx +7 -7
  465. package/src/date/hooks/useRangeDatepicker.test.tsx +2 -2
  466. package/src/date/hooks/useRangeDatepicker.tsx +28 -28
  467. package/src/date/monthpicker/MonthButton.tsx +1 -1
  468. package/src/date/monthpicker/MonthCaption.tsx +1 -1
  469. package/src/date/monthpicker/MonthPicker.tsx +7 -6
  470. package/src/date/monthpicker/MonthPickerStandalone.tsx +3 -3
  471. package/src/date/monthpicker/MonthSelector.tsx +1 -1
  472. package/src/date/parts/DateInput.tsx +6 -6
  473. package/src/date/parts/DateWrapper.tsx +1 -1
  474. package/src/date/utils/__tests__/check-dates.test.ts +3 -3
  475. package/src/date/utils/__tests__/format-dates.test.ts +7 -7
  476. package/src/date/utils/__tests__/get-initial-year.test.ts +14 -14
  477. package/src/date/utils/__tests__/get-month-weeks.test.ts +0 -1
  478. package/src/date/utils/__tests__/is-match.test.ts +4 -4
  479. package/src/date/utils/__tests__/parse-dates.test.ts +2 -2
  480. package/src/date/utils/check-dates.ts +2 -2
  481. package/src/date/utils/dates-disabled.ts +1 -1
  482. package/src/date/utils/format-date.ts +1 -1
  483. package/src/date/utils/get-dates.ts +1 -1
  484. package/src/date/utils/get-month-weeks.ts +6 -6
  485. package/src/date/utils/is-match.ts +2 -3
  486. package/src/date/utils/labels.ts +1 -1
  487. package/src/date/utils/navigation.ts +18 -18
  488. package/src/date/utils/parse-date.ts +8 -8
  489. package/src/dropdown/Dropdown.tsx +14 -11
  490. package/src/dropdown/Menu/Divider.tsx +1 -1
  491. package/src/dropdown/Menu/GroupedList/GroupedHeading.tsx +2 -2
  492. package/src/dropdown/Menu/GroupedList/GroupedItem.tsx +23 -23
  493. package/src/dropdown/Menu/GroupedList/index.tsx +2 -2
  494. package/src/dropdown/Menu/List/Item.tsx +23 -23
  495. package/src/dropdown/Menu/List/index.tsx +1 -1
  496. package/src/dropdown/Menu/index.tsx +1 -1
  497. package/src/dropdown/Toggle.tsx +10 -6
  498. package/src/dropdown/dropdown.stories.tsx +1 -1
  499. package/src/expansion-card/ExpansionCard.tsx +4 -4
  500. package/src/expansion-card/ExpansionCardContent.tsx +1 -1
  501. package/src/expansion-card/ExpansionCardDescription.tsx +1 -1
  502. package/src/expansion-card/ExpansionCardHeader.tsx +2 -2
  503. package/src/expansion-card/ExpansionCardTitle.tsx +3 -3
  504. package/src/expansion-card/expansion-card.stories.tsx +1 -1
  505. package/src/form/ConfirmationPanel.test.tsx +1 -1
  506. package/src/form/ConfirmationPanel.tsx +3 -3
  507. package/src/form/Fieldset/Fieldset.tsx +2 -2
  508. package/src/form/ReadOnlyIcon.tsx +1 -1
  509. package/src/form/Select.tsx +6 -6
  510. package/src/form/Switch.tsx +4 -4
  511. package/src/form/TextField.tsx +4 -4
  512. package/src/form/Textarea.tsx +6 -5
  513. package/src/form/checkbox/Checkbox.test.tsx +8 -8
  514. package/src/form/checkbox/Checkbox.tsx +5 -4
  515. package/src/form/checkbox/CheckboxGroup.tsx +4 -4
  516. package/src/form/checkbox/useCheckbox.ts +3 -3
  517. package/src/form/combobox/Combobox.tsx +9 -12
  518. package/src/form/combobox/ComboboxProvider.tsx +3 -3
  519. package/src/form/combobox/ComboboxWrapper.tsx +1 -1
  520. package/src/form/combobox/FilteredOptions/FilteredOptions.tsx +6 -6
  521. package/src/form/combobox/FilteredOptions/filteredOptionsContext.tsx +17 -18
  522. package/src/form/combobox/FilteredOptions/useVirtualFocus.ts +5 -5
  523. package/src/form/combobox/Input/Input.tsx +6 -6
  524. package/src/form/combobox/Input/inputContext.tsx +7 -7
  525. package/src/form/combobox/SelectedOptions/SelectedOptions.tsx +1 -1
  526. package/src/form/combobox/SelectedOptions/selectedOptionsContext.tsx +10 -10
  527. package/src/form/combobox/ToggleListButton.tsx +1 -2
  528. package/src/form/combobox/combobox.stories.tsx +17 -18
  529. package/src/form/combobox/combobox.test.tsx +14 -12
  530. package/src/form/combobox/customOptionsContext.tsx +6 -6
  531. package/src/form/combobox/types.ts +2 -2
  532. package/src/form/error-summary/ErrorSummary.tsx +6 -6
  533. package/src/form/error-summary/ErrorSummaryItem.tsx +3 -3
  534. package/src/form/error-summary/error-summary.stories.tsx +2 -1
  535. package/src/form/radio/Radio.test.tsx +1 -1
  536. package/src/form/radio/Radio.tsx +3 -2
  537. package/src/form/radio/RadioGroup.tsx +4 -4
  538. package/src/form/radio/useRadio.ts +1 -1
  539. package/src/form/search/Search.tsx +9 -9
  540. package/src/form/search/SearchButton.tsx +4 -6
  541. package/src/form/search/search.stories.tsx +1 -1
  542. package/src/form/stories/fieldset.stories.tsx +3 -2
  543. package/src/form/stories/select.stories.tsx +2 -1
  544. package/src/form/stories/text-field.stories.tsx +2 -1
  545. package/src/form/useFormField.ts +4 -4
  546. package/src/grid/Cell.tsx +3 -3
  547. package/src/grid/Grid.tsx +2 -2
  548. package/src/grid/grid.stories.tsx +1 -1
  549. package/src/guide-panel/GuidePanel.tsx +2 -2
  550. package/src/guide-panel/Illustration.tsx +1 -1
  551. package/src/guide-panel/guidepanel.stories.tsx +1 -1
  552. package/src/help-text/HelpText.tsx +9 -27
  553. package/src/help-text/HelpTextIcon.tsx +1 -1
  554. package/src/help-text/help-text.stories.tsx +58 -68
  555. package/src/internal-header/InternalHeader.tsx +2 -2
  556. package/src/internal-header/InternalHeaderButton.tsx +2 -2
  557. package/src/internal-header/InternalHeaderTitle.tsx +2 -2
  558. package/src/internal-header/InternalHeaderUser.tsx +1 -1
  559. package/src/internal-header/InternalHeaderUserButton.tsx +2 -2
  560. package/src/internal-header/header.stories.tsx +3 -3
  561. package/src/layout/bleed/Bleed.tsx +7 -7
  562. package/src/layout/box/Box.stories.tsx +4 -4
  563. package/src/layout/box/Box.tsx +8 -8
  564. package/src/layout/content-container/ContentContainer.tsx +1 -1
  565. package/src/layout/grid/HGrid.tsx +4 -4
  566. package/src/layout/page/Page.stories.tsx +1 -1
  567. package/src/layout/page/Page.tsx +4 -4
  568. package/src/layout/page/parts/PageBlock.tsx +9 -8
  569. package/src/layout/responsive/Responsive.tsx +6 -6
  570. package/src/layout/responsive/hide.stories.tsx +1 -1
  571. package/src/layout/responsive/show.stories.tsx +1 -1
  572. package/src/layout/sidemal-test/AvatarPanel.tsx +1 -1
  573. package/src/layout/sidemal-test/Content.tsx +4 -4
  574. package/src/layout/sidemal-test/Filter.tsx +1 -1
  575. package/src/layout/sidemal-test/Header.tsx +1 -1
  576. package/src/layout/sidemal-test/Intro.tsx +2 -2
  577. package/src/layout/sidemal-test/content-box/ContentBox.tsx +6 -6
  578. package/src/layout/sidemal-test/navno-sidemal.stories.tsx +1 -1
  579. package/src/layout/stack/HStack.tsx +2 -2
  580. package/src/layout/stack/Stack.tsx +4 -4
  581. package/src/layout/stack/VStack.tsx +2 -2
  582. package/src/layout/stack/stack.stories.tsx +2 -2
  583. package/src/layout/utilities/css.ts +6 -6
  584. package/src/layout/utilities/types.ts +2 -2
  585. package/src/link/Link.tsx +3 -3
  586. package/src/link/{link.stories.tsx → stories/link.stories.tsx} +3 -3
  587. package/src/link-panel/LinkPanel.tsx +6 -7
  588. package/src/link-panel/LinkPanelDescription.tsx +1 -1
  589. package/src/link-panel/LinkPanelTitle.tsx +3 -3
  590. package/src/list/List.tsx +3 -3
  591. package/src/list/ListItem.tsx +2 -2
  592. package/src/list/list.stories.tsx +2 -2
  593. package/src/loader/Loader.tsx +6 -5
  594. package/src/loader/loader.stories.tsx +1 -0
  595. package/src/modal/Modal.test.tsx +4 -4
  596. package/src/modal/Modal.tsx +32 -32
  597. package/src/modal/ModalBody.tsx +2 -2
  598. package/src/modal/ModalFooter.tsx +2 -2
  599. package/src/modal/ModalHeader.tsx +2 -2
  600. package/src/modal/ModalUtils.ts +2 -2
  601. package/src/modal/dialog-polyfill.ts +16 -16
  602. package/src/modal/types.ts +1 -1
  603. package/src/pagination/Pagination.tsx +5 -6
  604. package/src/pagination/PaginationItem.tsx +4 -4
  605. package/src/pagination/steps.test.ts +8 -8
  606. package/src/panel/Panel.tsx +4 -4
  607. package/src/panel/panel.stories.tsx +2 -1
  608. package/src/popover/Popover.test.tsx +7 -7
  609. package/src/popover/Popover.tsx +11 -14
  610. package/src/popover/PopoverContent.tsx +2 -2
  611. package/src/provider/Provider.tsx +1 -1
  612. package/src/read-more/ReadMore.tsx +20 -16
  613. package/src/read-more/readmore.stories.tsx +4 -0
  614. package/src/skeleton/Skeleton.tsx +4 -4
  615. package/src/stepper/Step.tsx +10 -7
  616. package/src/stepper/Stepper.tsx +3 -3
  617. package/src/{util → table}/AnimateHeight.tsx +1 -1
  618. package/src/table/Body.tsx +1 -1
  619. package/src/table/ColumnHeader.tsx +2 -2
  620. package/src/table/DataCell.tsx +8 -3
  621. package/src/table/ExpandableRow.tsx +30 -23
  622. package/src/table/Header.tsx +1 -1
  623. package/src/table/HeaderCell.tsx +7 -2
  624. package/src/table/Row.tsx +2 -2
  625. package/src/table/Table.tsx +2 -2
  626. package/src/table/stories/table-async.stories.tsx +4 -4
  627. package/src/table/stories/table.stories.tsx +44 -30
  628. package/src/table/stories/tests/table.stories.tsx +2 -3
  629. package/src/tabs/Tab.tsx +4 -4
  630. package/src/tabs/TabList.tsx +8 -6
  631. package/src/tabs/TabPanel.tsx +1 -1
  632. package/src/tabs/Tabs.stories.tsx +1 -1
  633. package/src/tabs/Tabs.tsx +5 -5
  634. package/src/tag/Tag.tsx +12 -5
  635. package/src/tag/tag.stories.tsx +28 -2
  636. package/src/timeline/AxisLabels.tsx +9 -9
  637. package/src/timeline/Pin.tsx +4 -7
  638. package/src/timeline/Timeline.tsx +7 -7
  639. package/src/timeline/TimelineRow.tsx +5 -5
  640. package/src/timeline/hooks/useTimelineContext.tsx +1 -1
  641. package/src/timeline/hooks/useTimelineRows.ts +18 -19
  642. package/src/timeline/period/ClickablePeriod.tsx +6 -9
  643. package/src/timeline/period/NonClickablePeriod.tsx +1 -1
  644. package/src/timeline/period/index.tsx +1 -1
  645. package/src/timeline/timeline.stories.tsx +2 -2
  646. package/src/timeline/utils/calc.ts +2 -2
  647. package/src/timeline/utils/filter.ts +2 -2
  648. package/src/timeline/utils/period.ts +2 -2
  649. package/src/timeline/utils/timeline.ts +1 -1
  650. package/src/timeline/zoom/ZoomButton.tsx +3 -3
  651. package/src/timeline/zoom/index.tsx +1 -1
  652. package/src/toggle-group/ToggleGroup.stories.tsx +2 -2
  653. package/src/toggle-group/ToggleGroup.tsx +6 -6
  654. package/src/toggle-group/ToggleItem.tsx +1 -1
  655. package/src/toggle-group/context.ts +1 -1
  656. package/src/tooltip/Tooltip.test.tsx +10 -10
  657. package/src/tooltip/Tooltip.tsx +31 -33
  658. package/src/tooltip/tooltip.stories.tsx +1 -1
  659. package/src/typography/BodyLong.tsx +5 -5
  660. package/src/typography/BodyShort.tsx +4 -4
  661. package/src/typography/Detail.tsx +4 -4
  662. package/src/typography/ErrorMessage.tsx +4 -4
  663. package/src/typography/Heading.tsx +4 -4
  664. package/src/typography/Ingress.tsx +2 -2
  665. package/src/typography/Label.tsx +4 -4
  666. package/src/typography/stories/bodylong.stories.tsx +1 -2
  667. package/src/typography/stories/bodyshort.stories.tsx +1 -2
  668. package/src/typography/stories/detail.stories.tsx +1 -2
  669. package/src/typography/stories/error-message.stories.tsx +1 -2
  670. package/src/typography/stories/heading.stories.tsx +1 -3
  671. package/src/typography/stories/ingress.stories.tsx +1 -2
  672. package/src/typography/stories/label.stories.tsx +1 -2
  673. package/src/util/Slot.tsx +4 -4
  674. package/src/util/TextareaAutoSize.tsx +11 -7
  675. package/src/util/__tests__/Slot.test.tsx +11 -11
  676. package/src/util/__tests__/useMedia.test.tsx +1 -1
  677. package/src/util/composeEventHandlers.ts +19 -0
  678. package/src/util/hooks/index.ts +8 -0
  679. package/src/util/hooks/useCallbackRef.ts +20 -0
  680. package/src/util/hooks/useClientLayoutEffect.ts +5 -0
  681. package/src/util/hooks/useControllableState.ts +40 -0
  682. package/src/util/{useEventListener.ts → hooks/useEventListener.ts} +1 -1
  683. package/src/util/{useMedia.ts → hooks/useMedia.ts} +1 -1
  684. package/src/util/hooks/useMergeRefs.ts +32 -0
  685. package/src/util/{usePrevious.ts → hooks/usePrevious.ts} +1 -4
  686. package/src/util/index.ts +4 -5
  687. package/src/util/omit.ts +1 -1
  688. package/src/util/{OverridableComponent.ts → types/OverridableComponent.ts} +1 -1
  689. package/src/util/types/index.ts +1 -0
  690. package/cjs/util/RandomIcon.js +0 -38
  691. package/cjs/util/mergeRefs.js +0 -16
  692. package/cjs/util/useClientLayoutEffect.js +0 -10
  693. package/esm/util/AnimateHeight.js.map +0 -1
  694. package/esm/util/OverridableComponent.js.map +0 -1
  695. package/esm/util/RandomIcon.d.ts +0 -2
  696. package/esm/util/RandomIcon.js +0 -9
  697. package/esm/util/RandomIcon.js.map +0 -1
  698. package/esm/util/mergeRefs.d.ts +0 -2
  699. package/esm/util/mergeRefs.js +0 -14
  700. package/esm/util/mergeRefs.js.map +0 -1
  701. package/esm/util/useClientLayoutEffect.js +0 -8
  702. package/esm/util/useClientLayoutEffect.js.map +0 -1
  703. package/esm/util/useEventListener.js.map +0 -1
  704. package/esm/util/useId.js.map +0 -1
  705. package/esm/util/useMedia.js.map +0 -1
  706. package/esm/util/usePrevious.d.ts +0 -2
  707. package/esm/util/usePrevious.js.map +0 -1
  708. package/src/util/mergeRefs.tsx +0 -15
  709. package/src/util/useClientLayoutEffect.ts +0 -11
  710. package/cjs/{util → table}/AnimateHeight.js +0 -0
  711. package/cjs/util/{useEventListener.js → hooks/useEventListener.js} +0 -0
  712. package/cjs/util/{useId.js → hooks/useId.js} +0 -0
  713. package/cjs/util/{useMedia.js → hooks/useMedia.js} +0 -0
  714. package/cjs/util/{OverridableComponent.js → types/OverridableComponent.js} +0 -0
  715. package/esm/{util → table}/AnimateHeight.d.ts +0 -0
  716. package/esm/{util → table}/AnimateHeight.js +0 -0
  717. package/esm/util/{useClientLayoutEffect.d.ts → hooks/useClientLayoutEffect.d.ts} +0 -0
  718. package/esm/util/{useEventListener.js → hooks/useEventListener.js} +0 -0
  719. package/esm/util/{useId.d.ts → hooks/useId.d.ts} +0 -0
  720. package/esm/util/{useId.js → hooks/useId.js} +0 -0
  721. package/esm/util/{useMedia.d.ts → hooks/useMedia.d.ts} +0 -0
  722. package/esm/util/{useMedia.js → hooks/useMedia.js} +0 -0
  723. package/esm/util/{OverridableComponent.d.ts → types/OverridableComponent.d.ts} +0 -0
  724. package/esm/util/{OverridableComponent.js → types/OverridableComponent.js} +0 -0
  725. package/src/{util → link/stories}/RandomIcon.tsx +1 -1
  726. /package/src/util/{useId.ts → hooks/useId.ts} +0 -0
@@ -1,6 +1,6 @@
1
1
  import cl from "clsx";
2
- import React, { forwardRef, HTMLAttributes } from "react";
3
- import { OverridableComponent } from "../../util/OverridableComponent";
2
+ import React, { HTMLAttributes, forwardRef } from "react";
3
+ import { OverridableComponent } from "../../util/types";
4
4
  import { getResponsiveProps, getResponsiveValue } from "../utilities/css";
5
5
  import { ResponsiveProp, SpacingScale } from "../utilities/types";
6
6
 
@@ -52,7 +52,7 @@ export const Stack: OverridableComponent<StackProps, HTMLDivElement> =
52
52
  direction = "row",
53
53
  ...rest
54
54
  },
55
- ref
55
+ ref,
56
56
  ) => {
57
57
  const style: React.CSSProperties = {
58
58
  ..._style,
@@ -74,5 +74,5 @@ export const Stack: OverridableComponent<StackProps, HTMLDivElement> =
74
74
  })}
75
75
  />
76
76
  );
77
- }
77
+ },
78
78
  );
@@ -1,6 +1,6 @@
1
1
  import React, { forwardRef } from "react";
2
- import { OverridableComponent } from "../../util/OverridableComponent";
3
- import { StackProps, Stack } from "./Stack";
2
+ import { OverridableComponent } from "../../util/types";
3
+ import { Stack, StackProps } from "./Stack";
4
4
 
5
5
  export type VStackProps = Omit<StackProps, "direction" | "wrap">;
6
6
 
@@ -1,6 +1,6 @@
1
- import React from "react";
2
1
  import type { Meta } from "@storybook/react";
3
- import { HStack, VStack, Spacer, Stack } from ".";
2
+ import React from "react";
3
+ import { HStack, Spacer, Stack, VStack } from ".";
4
4
  import { Box } from "../box";
5
5
 
6
6
  export default {
@@ -3,7 +3,7 @@ import { ResponsiveProp } from "./types";
3
3
  export function getResponsiveValue<T = string>(
4
4
  componentName: string,
5
5
  componentProp: string,
6
- responsiveProp?: ResponsiveProp<T>
6
+ responsiveProp?: ResponsiveProp<T>,
7
7
  ) {
8
8
  if (!responsiveProp) {
9
9
  return {};
@@ -19,7 +19,7 @@ export function getResponsiveValue<T = string>(
19
19
  Object.entries(responsiveProp).map(([breakpointAlias, responsiveValue]) => [
20
20
  `--__ac-${componentName}-${componentProp}-${breakpointAlias}`,
21
21
  responsiveValue,
22
- ])
22
+ ]),
23
23
  );
24
24
  }
25
25
 
@@ -36,7 +36,7 @@ const translateTokenStringToCSS = (
36
36
  tokenString: string,
37
37
  tokenSubgroup: string,
38
38
  tokenExceptions: string[],
39
- invert: boolean
39
+ invert: boolean,
40
40
  ) => {
41
41
  return tokenString
42
42
  .split(" ")
@@ -67,7 +67,7 @@ export function getResponsiveProps<T extends string>(
67
67
  tokenSubgroup: string,
68
68
  responsiveProp?: ResponsiveProp<T>,
69
69
  invert = false,
70
- tokenExceptions: string[] = []
70
+ tokenExceptions: string[] = [],
71
71
  ) {
72
72
  if (!responsiveProp) {
73
73
  return {};
@@ -81,7 +81,7 @@ export function getResponsiveProps<T extends string>(
81
81
  responsiveProp,
82
82
  tokenSubgroup,
83
83
  tokenExceptions,
84
- invert
84
+ invert,
85
85
  ),
86
86
  };
87
87
  }
@@ -94,7 +94,7 @@ export function getResponsiveProps<T extends string>(
94
94
  aliasOrScale,
95
95
  tokenSubgroup,
96
96
  tokenExceptions,
97
- invert
97
+ invert,
98
98
  );
99
99
  });
100
100
  return styleProps;
@@ -1,7 +1,7 @@
1
+ import borderRadii from "@navikt/ds-tokens/src/border.json";
1
2
  import bgColors from "@navikt/ds-tokens/src/colors-bg.json";
2
- import surfaceColors from "@navikt/ds-tokens/src/colors-surface.json";
3
3
  import borderColors from "@navikt/ds-tokens/src/colors-border.json";
4
- import borderRadii from "@navikt/ds-tokens/src/border.json";
4
+ import surfaceColors from "@navikt/ds-tokens/src/colors-surface.json";
5
5
  import shadows from "@navikt/ds-tokens/src/shadow.json";
6
6
  import Spacing from "@navikt/ds-tokens/src/spacing.json";
7
7
 
package/src/link/Link.tsx CHANGED
@@ -1,6 +1,6 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef } from "react";
3
- import { OverridableComponent } from "../util/OverridableComponent";
3
+ import { OverridableComponent } from "../util/types";
4
4
 
5
5
  export interface LinkProps
6
6
  extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
@@ -60,7 +60,7 @@ export const Link: OverridableComponent<LinkProps, HTMLAnchorElement> =
60
60
  inlineText = false,
61
61
  ...rest
62
62
  },
63
- ref
63
+ ref,
64
64
  ) => (
65
65
  <Component
66
66
  {...rest}
@@ -70,7 +70,7 @@ export const Link: OverridableComponent<LinkProps, HTMLAnchorElement> =
70
70
  "navds-link--inline-text": inlineText,
71
71
  })}
72
72
  />
73
- )
73
+ ),
74
74
  );
75
75
 
76
76
  export default Link;
@@ -1,12 +1,12 @@
1
- import { PlusCircleFillIcon } from "@navikt/aksel-icons";
2
1
  import React from "react";
2
+ import { PlusCircleFillIcon } from "@navikt/aksel-icons";
3
3
  import {
4
4
  BodyLong,
5
5
  Alert as DsAlert,
6
6
  ConfirmationPanel as DsConfirmationPanel,
7
7
  Link,
8
- } from "..";
9
- import { RandomIcon } from "../util/RandomIcon";
8
+ } from "../..";
9
+ import { RandomIcon } from "./RandomIcon";
10
10
 
11
11
  export default {
12
12
  title: "ds-react/Link",
@@ -1,14 +1,13 @@
1
- import React, { forwardRef } from "react";
2
-
3
1
  import cl from "clsx";
4
- import { LinkPanelTitle, LinkPanelTitleProps } from "./LinkPanelTitle";
2
+ import React, { forwardRef } from "react";
3
+ import { ChevronRightIcon } from "@navikt/aksel-icons";
4
+ import { Panel } from "../panel";
5
+ import { OverridableComponent } from "../util/types";
5
6
  import {
6
7
  LinkPanelDescription,
7
8
  LinkPanelDescriptionProps,
8
9
  } from "./LinkPanelDescription";
9
- import { ChevronRightIcon } from "@navikt/aksel-icons";
10
- import { OverridableComponent } from "../util";
11
- import { Panel } from "../panel";
10
+ import { LinkPanelTitle, LinkPanelTitleProps } from "./LinkPanelTitle";
12
11
 
13
12
  export interface LinkPanelProps
14
13
  extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
@@ -72,7 +71,7 @@ export const LinkPanelComponent: OverridableComponent<
72
71
  <ChevronRightIcon className="navds-link-panel__chevron" aria-hidden />
73
72
  </Panel>
74
73
  );
75
- }
74
+ },
76
75
  );
77
76
 
78
77
  const LinkPanel = LinkPanelComponent as LinkPanelComponentType;
@@ -1,5 +1,5 @@
1
- import React, { forwardRef } from "react";
2
1
  import cl from "clsx";
2
+ import React, { forwardRef } from "react";
3
3
  import { BodyLong } from "../typography";
4
4
 
5
5
  export interface LinkPanelDescriptionProps
@@ -1,6 +1,6 @@
1
- import React, { forwardRef } from "react";
2
1
  import cl from "clsx";
3
- import { OverridableComponent } from "../util/OverridableComponent";
2
+ import React, { forwardRef } from "react";
3
+ import { OverridableComponent } from "../util/types";
4
4
 
5
5
  export interface LinkPanelTitleProps
6
6
  extends React.HTMLAttributes<HTMLDivElement> {
@@ -18,7 +18,7 @@ export const LinkPanelTitle: OverridableComponent<
18
18
  "navds-link-panel__title",
19
19
  "navds-heading",
20
20
  "navds-heading--medium",
21
- className
21
+ className,
22
22
  )}
23
23
  />
24
24
  ));
package/src/list/List.tsx CHANGED
@@ -1,7 +1,7 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef, useContext } from "react";
3
3
  import { BodyShort, Heading } from "../typography";
4
- import { useId } from "../util/useId";
4
+ import { useId } from "../util/hooks";
5
5
  import { ListItem } from "./ListItem";
6
6
  import { ListContext } from "./context";
7
7
  import { ListProps } from "./types";
@@ -28,7 +28,7 @@ export const List = forwardRef<HTMLDivElement, ListProps>(
28
28
  size,
29
29
  ...rest
30
30
  },
31
- ref
31
+ ref,
32
32
  ) => {
33
33
  const ariaId = useId();
34
34
 
@@ -73,7 +73,7 @@ export const List = forwardRef<HTMLDivElement, ListProps>(
73
73
  </div>
74
74
  </ListContext.Provider>
75
75
  );
76
- }
76
+ },
77
77
  ) as ListComponent;
78
78
 
79
79
  List.Item = ListItem;
@@ -24,7 +24,7 @@ export const ListItem = forwardRef<HTMLLIElement, ListItemProps>(
24
24
 
25
25
  if (listType === "ol" && icon) {
26
26
  console.warn(
27
- "<List />: Icon prop is not supported for ordered lists. Please remove the icon prop."
27
+ "<List />: Icon prop is not supported for ordered lists. Please remove the icon prop.",
28
28
  );
29
29
  }
30
30
 
@@ -66,7 +66,7 @@ export const ListItem = forwardRef<HTMLLIElement, ListItemProps>(
66
66
  </BodyShort>
67
67
  </li>
68
68
  );
69
- }
69
+ },
70
70
  );
71
71
 
72
72
  ListItem.displayName = "List.Item";
@@ -1,11 +1,11 @@
1
+ import { Meta } from "@storybook/react";
2
+ import React from "react";
1
3
  import {
2
4
  BabyWrappedIcon,
3
5
  BrailleIcon,
4
6
  HeadHeartIcon,
5
7
  RecycleIcon,
6
8
  } from "@navikt/aksel-icons";
7
- import { Meta } from "@storybook/react";
8
- import React from "react";
9
9
  import { List, VStack } from "..";
10
10
 
11
11
  export default {
@@ -1,6 +1,7 @@
1
1
  import cl from "clsx";
2
- import React, { forwardRef, SVGProps } from "react";
3
- import { omit, useId } from "../util";
2
+ import React, { SVGProps, forwardRef } from "react";
3
+ import { omit } from "../util";
4
+ import { useId } from "../util/hooks";
4
5
 
5
6
  export interface LoaderProps extends Omit<SVGProps<SVGSVGElement>, "ref"> {
6
7
  /**
@@ -66,7 +67,7 @@ export const Loader: LoaderType = forwardRef<SVGSVGElement, LoaderProps>(
66
67
  id,
67
68
  ...rest
68
69
  },
69
- ref
70
+ ref,
70
71
  ) => {
71
72
  const internalId = useId();
72
73
 
@@ -81,7 +82,7 @@ export const Loader: LoaderType = forwardRef<SVGSVGElement, LoaderProps>(
81
82
  `navds-loader--${variant}`,
82
83
  {
83
84
  "navds-loader--transparent": transparent,
84
- }
85
+ },
85
86
  )}
86
87
  focusable="false"
87
88
  viewBox="0 0 50 50"
@@ -107,7 +108,7 @@ export const Loader: LoaderType = forwardRef<SVGSVGElement, LoaderProps>(
107
108
  />
108
109
  </svg>
109
110
  );
110
- }
111
+ },
111
112
  );
112
113
 
113
114
  export default Loader;
@@ -1,6 +1,7 @@
1
1
  import { Meta } from "@storybook/react";
2
2
  import React from "react";
3
3
  import { Loader, LoaderProps } from "..";
4
+
4
5
  export default {
5
6
  title: "ds-react/Loader",
6
7
  component: Loader,
@@ -1,5 +1,5 @@
1
- import React, { useState } from "react";
2
1
  import { fireEvent, render, screen, waitFor } from "@testing-library/react";
2
+ import React, { useState } from "react";
3
3
  import { Button, Modal } from "..";
4
4
  import { BODY_CLASS } from "./ModalUtils";
5
5
 
@@ -34,7 +34,7 @@ describe("Modal", () => {
34
34
 
35
35
  fireEvent.click(screen.getByText("Close"));
36
36
  await waitFor(() =>
37
- expect(document.body.classList).not.toContain(BODY_CLASS)
37
+ expect(document.body.classList).not.toContain(BODY_CLASS),
38
38
  );
39
39
  });
40
40
 
@@ -42,13 +42,13 @@ describe("Modal", () => {
42
42
  render(
43
43
  <Modal portal open>
44
44
  <Modal.Header />
45
- </Modal>
45
+ </Modal>,
46
46
  );
47
47
  expect(document.body.classList).toContain(BODY_CLASS);
48
48
 
49
49
  fireEvent.click(screen.getByRole("button"));
50
50
  await waitFor(() =>
51
- expect(document.body.classList).not.toContain(BODY_CLASS)
51
+ expect(document.body.classList).not.toContain(BODY_CLASS),
52
52
  );
53
53
  });
54
54
  });
@@ -1,17 +1,13 @@
1
1
  import { useFloatingPortalNode } from "@floating-ui/react";
2
2
  import cl from "clsx";
3
- import React, {
4
- forwardRef,
5
- useContext,
6
- useEffect,
7
- useMemo,
8
- useRef,
9
- } from "react";
3
+ import React, { forwardRef, useContext, useEffect, useRef } from "react";
10
4
  import { createPortal } from "react-dom";
11
5
  import { DateContext } from "../date/context";
12
6
  import { useProvider } from "../provider";
13
7
  import { Detail, Heading } from "../typography";
14
- import { mergeRefs, useId } from "../util";
8
+ import { composeEventHandlers } from "../util/composeEventHandlers";
9
+ import { useId } from "../util/hooks";
10
+ import { useMergeRefs } from "../util/hooks/useMergeRefs";
15
11
  import ModalBody from "./ModalBody";
16
12
  import { ModalContext } from "./ModalContext";
17
13
  import ModalFooter from "./ModalFooter";
@@ -92,10 +88,11 @@ export const Modal = forwardRef<HTMLDialogElement, ModalProps>(
92
88
  onClick,
93
89
  ...rest
94
90
  }: ModalProps,
95
- ref
91
+ ref,
96
92
  ) => {
97
93
  const modalRef = useRef<HTMLDialogElement>(null);
98
- const mergedRef = useMemo(() => mergeRefs([modalRef, ref]), [ref]);
94
+ const mergedRef = useMergeRefs(modalRef, ref);
95
+
99
96
  const ariaLabelId = useId();
100
97
  const rootElement = useProvider()?.rootElement;
101
98
  const portalNode = useFloatingPortalNode({ root: rootElement });
@@ -149,25 +146,28 @@ export const Modal = forwardRef<HTMLDialogElement, ModalProps>(
149
146
  ...(!isWidthPreset ? { width } : {}),
150
147
  };
151
148
 
152
- const mergedOnCancel: React.DialogHTMLAttributes<HTMLDialogElement>["onCancel"] =
153
- (event) => {
154
- if (onBeforeClose && onBeforeClose() === false) {
155
- event.preventDefault();
156
- } else if (onCancel) onCancel(event);
157
- };
158
-
159
- const mergedOnClick =
160
- closeOnBackdropClick && !needPolyfill // closeOnBackdropClick has issues on polyfill when nesting modals (DatePicker)
161
- ? (event: React.MouseEvent<HTMLDialogElement>) => {
162
- onClick && onClick(event);
163
- if (
164
- event.target === modalRef.current &&
165
- (!onBeforeClose || onBeforeClose() !== false)
166
- ) {
167
- modalRef.current.close();
168
- }
169
- }
170
- : onClick;
149
+ /**
150
+ * @note `closeOnBackdropClick` has issues on polyfill when nesting modals (DatePicker)
151
+ */
152
+ const handleModalClick = (event: React.MouseEvent<HTMLDialogElement>) => {
153
+ if (
154
+ closeOnBackdropClick &&
155
+ !needPolyfill &&
156
+ event.target === modalRef.current &&
157
+ (!onBeforeClose || onBeforeClose() !== false)
158
+ ) {
159
+ modalRef.current.close();
160
+ }
161
+ };
162
+
163
+ /**
164
+ * @note onCancel fires when you press `Esc`
165
+ */
166
+ const handleModalCancel = (
167
+ event: React.SyntheticEvent<HTMLDialogElement, Event>,
168
+ ) => {
169
+ onBeforeClose && onBeforeClose() === false && event.preventDefault();
170
+ };
171
171
 
172
172
  const mergedAriaLabelledBy =
173
173
  !ariaLabelledby && !rest["aria-label"] && header
@@ -181,8 +181,8 @@ export const Modal = forwardRef<HTMLDialogElement, ModalProps>(
181
181
  ref={mergedRef}
182
182
  className={mergedClassName}
183
183
  style={mergedStyle}
184
- onCancel={mergedOnCancel} // FYI: onCancel fires when you press Esc
185
- onClick={mergedOnClick}
184
+ onCancel={composeEventHandlers(onCancel, handleModalCancel)}
185
+ onClick={composeEventHandlers(onClick, handleModalClick)}
186
186
  aria-labelledby={mergedAriaLabelledBy}
187
187
  >
188
188
  <ModalContext.Provider
@@ -217,7 +217,7 @@ export const Modal = forwardRef<HTMLDialogElement, ModalProps>(
217
217
  return null;
218
218
  }
219
219
  return component;
220
- }
220
+ },
221
221
  ) as ModalComponent;
222
222
 
223
223
  Modal.Header = ModalHeader;
@@ -1,5 +1,5 @@
1
- import React, { forwardRef } from "react";
2
1
  import cl from "clsx";
2
+ import React, { forwardRef } from "react";
3
3
 
4
4
  export interface ModalBodyProps extends React.HTMLAttributes<HTMLDivElement> {
5
5
  children: React.ReactNode;
@@ -8,7 +8,7 @@ export interface ModalBodyProps extends React.HTMLAttributes<HTMLDivElement> {
8
8
  const ModalBody = forwardRef<HTMLDivElement, ModalBodyProps>(
9
9
  ({ className, ...rest }, ref) => (
10
10
  <div {...rest} ref={ref} className={cl("navds-modal__body", className)} />
11
- )
11
+ ),
12
12
  );
13
13
 
14
14
  export default ModalBody;
@@ -1,5 +1,5 @@
1
- import React, { forwardRef } from "react";
2
1
  import cl from "clsx";
2
+ import React, { forwardRef } from "react";
3
3
 
4
4
  export interface ModalFooterProps extends React.HTMLAttributes<HTMLDivElement> {
5
5
  children: React.ReactNode;
@@ -8,7 +8,7 @@ export interface ModalFooterProps extends React.HTMLAttributes<HTMLDivElement> {
8
8
  const ModalFooter = forwardRef<HTMLDivElement, ModalFooterProps>(
9
9
  ({ className, ...rest }, ref) => (
10
10
  <div {...rest} ref={ref} className={cl("navds-modal__footer", className)} />
11
- )
11
+ ),
12
12
  );
13
13
 
14
14
  export default ModalFooter;
@@ -1,5 +1,5 @@
1
- import React, { forwardRef, useContext } from "react";
2
1
  import cl from "clsx";
2
+ import React, { forwardRef, useContext } from "react";
3
3
  import { XMarkIcon } from "@navikt/aksel-icons";
4
4
  import { Button } from "../button";
5
5
  import { ModalContext } from "./ModalContext";
@@ -36,7 +36,7 @@ const ModalHeader = forwardRef<HTMLDivElement, ModalHeaderProps>(
36
36
  {children}
37
37
  </div>
38
38
  );
39
- }
39
+ },
40
40
  );
41
41
 
42
42
  export default ModalHeader;
@@ -4,7 +4,7 @@ import type { ModalProps } from "./types";
4
4
  export function getCloseHandler(
5
5
  modalRef: React.RefObject<HTMLDialogElement>,
6
6
  header: ModalProps["header"],
7
- onBeforeClose: ModalProps["onBeforeClose"]
7
+ onBeforeClose: ModalProps["onBeforeClose"],
8
8
  ) {
9
9
  if (header && header.closeButton === false) return undefined;
10
10
  if (onBeforeClose) {
@@ -17,7 +17,7 @@ export const BODY_CLASS = "navds-modal__document-body";
17
17
 
18
18
  export function useBodyScrollLock(
19
19
  modalRef: React.RefObject<HTMLDialogElement>,
20
- portalNode: HTMLElement | null
20
+ portalNode: HTMLElement | null,
21
21
  ) {
22
22
  React.useEffect(() => {
23
23
  if (!modalRef.current || !portalNode) return; // We check both to avoid running this twice when not using portal
@@ -273,7 +273,7 @@ function dialogPolyfillInfo(dialog) {
273
273
  ["DOMAttrModified", "DOMNodeRemoved", "DOMNodeRemovedFromDocument"].forEach(
274
274
  function (name) {
275
275
  dialog.addEventListener(name, delayModel);
276
- }
276
+ },
277
277
  );
278
278
  }
279
279
  // Note that the DOM is observed inside DialogManager while any dialog
@@ -288,11 +288,11 @@ function dialogPolyfillInfo(dialog) {
288
288
  this.backdrop_.className = "backdrop";
289
289
  this.backdrop_.addEventListener(
290
290
  "mouseup",
291
- this.backdropMouseEvent_.bind(this)
291
+ this.backdropMouseEvent_.bind(this),
292
292
  );
293
293
  this.backdrop_.addEventListener(
294
294
  "mousedown",
295
- this.backdropMouseEvent_.bind(this)
295
+ this.backdropMouseEvent_.bind(this),
296
296
  );
297
297
  this.backdrop_.addEventListener("click", this.backdropMouseEvent_.bind(this));
298
298
  }
@@ -387,7 +387,7 @@ dialogPolyfillInfo.prototype = /** @type {HTMLDialogElement.prototype} */ {
387
387
  e.shiftKey,
388
388
  e.metaKey,
389
389
  e.button,
390
- e.relatedTarget
390
+ e.relatedTarget,
391
391
  );
392
392
  this.dialog_.dispatchEvent(redirectedEvent);
393
393
  e.stopPropagation();
@@ -440,17 +440,17 @@ dialogPolyfillInfo.prototype = /** @type {HTMLDialogElement.prototype} */ {
440
440
  showModal: function () {
441
441
  if (this.dialog_.hasAttribute("open")) {
442
442
  throw new Error(
443
- "Failed to execute 'showModal' on dialog: The element is already open, and therefore cannot be opened modally."
443
+ "Failed to execute 'showModal' on dialog: The element is already open, and therefore cannot be opened modally.",
444
444
  );
445
445
  }
446
446
  if (!isConnected(this.dialog_)) {
447
447
  throw new Error(
448
- "Failed to execute 'showModal' on dialog: The element is not in a Document."
448
+ "Failed to execute 'showModal' on dialog: The element is not in a Document.",
449
449
  );
450
450
  }
451
451
  if (!dialogPolyfill.dm.pushDialog(this)) {
452
452
  throw new Error(
453
- "Failed to execute 'showModal' on dialog: There are too many open modal dialogs."
453
+ "Failed to execute 'showModal' on dialog: There are too many open modal dialogs.",
454
454
  );
455
455
  }
456
456
 
@@ -468,7 +468,7 @@ dialogPolyfillInfo.prototype = /** @type {HTMLDialogElement.prototype} */ {
468
468
  // Insert backdrop.
469
469
  this.dialog_.parentNode.insertBefore(
470
470
  this.backdrop_,
471
- this.dialog_.nextSibling
471
+ this.dialog_.nextSibling,
472
472
  );
473
473
 
474
474
  // Focus on whatever inside the dialog.
@@ -484,7 +484,7 @@ dialogPolyfillInfo.prototype = /** @type {HTMLDialogElement.prototype} */ {
484
484
  close: function (opt_returnValue) {
485
485
  if (!this.dialog_.hasAttribute("open")) {
486
486
  throw new Error(
487
- "Failed to execute 'close' on dialog: The element does not have an 'open' attribute, and therefore cannot be closed."
487
+ "Failed to execute 'close' on dialog: The element does not have an 'open' attribute, and therefore cannot be closed.",
488
488
  );
489
489
  }
490
490
  this.setOpen(false);
@@ -576,7 +576,7 @@ dialogPolyfill.forceRegisterDialog = function (element) {
576
576
  console.warn(
577
577
  "This browser already supports <dialog>, the polyfill " +
578
578
  "may not work correctly",
579
- element
579
+ element,
580
580
  );
581
581
  }
582
582
  if (element.localName !== "dialog") {
@@ -616,7 +616,7 @@ dialogPolyfill.DialogManager = function () {
616
616
  this.forwardTab_ = undefined;
617
617
  e.stopPropagation();
618
618
  checkDOM([]); // sanity-check DOM
619
- }.bind(this)
619
+ }.bind(this),
620
620
  );
621
621
 
622
622
  this.handleKey_ = this.handleKey_.bind(this);
@@ -663,7 +663,7 @@ dialogPolyfill.DialogManager.prototype.unblockDocument = function () {
663
663
  document.documentElement.removeEventListener(
664
664
  "focus",
665
665
  this.handleFocus_,
666
- true
666
+ true,
667
667
  );
668
668
  document.removeEventListener("keydown", this.handleKey_);
669
669
  this.mo_ && this.mo_.disconnect();
@@ -697,7 +697,7 @@ dialogPolyfill.DialogManager.prototype.updateStacking = function () {
697
697
  * @return {boolean} whether candidate is contained in top dialog
698
698
  */
699
699
  dialogPolyfill.DialogManager.prototype.containedByTopDialog_ = function (
700
- candidate
700
+ candidate,
701
701
  ) {
702
702
  while ((candidate = findNearestDialog(candidate))) {
703
703
  for (var i = 0, dpi; (dpi = this.pendingDialogStack[i]); ++i) {
@@ -837,7 +837,7 @@ if (needPolyfill) {
837
837
  if (testForm.method !== "dialog") {
838
838
  var methodDescriptor = Object.getOwnPropertyDescriptor(
839
839
  HTMLFormElement.prototype,
840
- "method"
840
+ "method",
841
841
  );
842
842
  if (methodDescriptor) {
843
843
  // nb. Some older iOS and older PhantomJS fail to return the descriptor. Don't do anything
@@ -860,7 +860,7 @@ if (needPolyfill) {
860
860
  Object.defineProperty(
861
861
  HTMLFormElement.prototype,
862
862
  "method",
863
- methodDescriptor
863
+ methodDescriptor,
864
864
  );
865
865
  }
866
866
  }
@@ -906,7 +906,7 @@ if (needPolyfill) {
906
906
 
907
907
  dialogPolyfill.formSubmitter = target;
908
908
  },
909
- false
909
+ false,
910
910
  );
911
911
 
912
912
  /**
@@ -41,7 +41,7 @@ export interface ModalProps
41
41
  */
42
42
  onBeforeClose?: () => boolean | void;
43
43
  /**
44
- * *Sometimes** called when the user presses the Esc key, unless you return `false` in `onBeforeClose()`.
44
+ * *Sometimes** called when the user presses the Esc key.
45
45
  * @warning *Some browsers does not always trigger this event. Chrome only triggers it if you have
46
46
  * interacted with the modal, and will not trigger it a second time if you press Esc twice in a row.
47
47
  */