draft-components 3.5.0 → 4.0.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 (551) hide show
  1. package/css/draft-components-variables.css +418 -230
  2. package/css/draft-components.css +2547 -1594
  3. package/dist/components/alert/alert.css +58 -59
  4. package/dist/components/alert/alert.d.ts +6 -6
  5. package/dist/components/alert/alert.js +5 -4
  6. package/dist/components/alert/alert.js.map +1 -0
  7. package/dist/components/alert/index.js +1 -0
  8. package/dist/components/alert/index.js.map +1 -0
  9. package/dist/components/avatar/avatar.css +29 -29
  10. package/dist/components/avatar/avatar.d.ts +6 -6
  11. package/dist/components/avatar/avatar.js +6 -5
  12. package/dist/components/avatar/avatar.js.map +1 -0
  13. package/dist/components/avatar/index.js +1 -0
  14. package/dist/components/avatar/index.js.map +1 -0
  15. package/dist/components/badge/badge.css +8 -8
  16. package/dist/components/badge/badge.d.ts +5 -5
  17. package/dist/components/badge/badge.js +2 -0
  18. package/dist/components/badge/badge.js.map +1 -0
  19. package/dist/components/badge/index.js +1 -0
  20. package/dist/components/badge/index.js.map +1 -0
  21. package/dist/components/breadcrumbs/breadcrumbs-context.d.ts +1 -1
  22. package/dist/components/breadcrumbs/breadcrumbs-context.js +1 -0
  23. package/dist/components/breadcrumbs/breadcrumbs-context.js.map +1 -0
  24. package/dist/components/breadcrumbs/breadcrumbs-item.d.ts +7 -6
  25. package/dist/components/breadcrumbs/breadcrumbs-item.js +2 -0
  26. package/dist/components/breadcrumbs/breadcrumbs-item.js.map +1 -0
  27. package/dist/components/breadcrumbs/breadcrumbs.css +9 -9
  28. package/dist/components/breadcrumbs/breadcrumbs.d.ts +5 -4
  29. package/dist/components/breadcrumbs/breadcrumbs.js +2 -0
  30. package/dist/components/breadcrumbs/breadcrumbs.js.map +1 -0
  31. package/dist/components/breadcrumbs/index.js +1 -0
  32. package/dist/components/breadcrumbs/index.js.map +1 -0
  33. package/dist/components/button/button.css +634 -108
  34. package/dist/components/button/button.d.ts +7 -6
  35. package/dist/components/button/button.js +17 -13
  36. package/dist/components/button/button.js.map +1 -0
  37. package/dist/components/button/icon-button.d.ts +2 -2
  38. package/dist/components/button/icon-button.js +4 -4
  39. package/dist/components/button/icon-button.js.map +1 -0
  40. package/dist/components/button/index.js +1 -0
  41. package/dist/components/button/index.js.map +1 -0
  42. package/dist/components/button-group/button-group.d.ts +4 -3
  43. package/dist/components/button-group/button-group.js +2 -0
  44. package/dist/components/button-group/button-group.js.map +1 -0
  45. package/dist/components/button-group/index.js +1 -0
  46. package/dist/components/button-group/index.js.map +1 -0
  47. package/dist/components/caption/caption.css +6 -6
  48. package/dist/components/caption/caption.d.ts +6 -6
  49. package/dist/components/caption/caption.js +6 -4
  50. package/dist/components/caption/caption.js.map +1 -0
  51. package/dist/components/caption/index.js +1 -0
  52. package/dist/components/caption/index.js.map +1 -0
  53. package/dist/components/checkbox/checkbox.css +24 -28
  54. package/dist/components/checkbox/checkbox.d.ts +5 -5
  55. package/dist/components/checkbox/checkbox.js +11 -6
  56. package/dist/components/checkbox/checkbox.js.map +1 -0
  57. package/dist/components/checkbox/index.js +1 -0
  58. package/dist/components/checkbox/index.js.map +1 -0
  59. package/dist/components/color-picker/color-picker-button.d.ts +1 -1
  60. package/dist/components/color-picker/color-picker-button.js +9 -3
  61. package/dist/components/color-picker/color-picker-button.js.map +1 -0
  62. package/dist/components/color-picker/color-picker.css +13 -13
  63. package/dist/components/color-picker/color-picker.d.ts +10 -6
  64. package/dist/components/color-picker/color-picker.js +2 -0
  65. package/dist/components/color-picker/color-picker.js.map +1 -0
  66. package/dist/components/color-picker/index.js +1 -0
  67. package/dist/components/color-picker/index.js.map +1 -0
  68. package/dist/components/date-picker/calendar-day.d.ts +5 -4
  69. package/dist/components/date-picker/calendar-day.js +2 -0
  70. package/dist/components/date-picker/calendar-day.js.map +1 -0
  71. package/dist/components/date-picker/calendar-grid-head.d.ts +1 -1
  72. package/dist/components/date-picker/calendar-grid-head.js +2 -0
  73. package/dist/components/date-picker/calendar-grid-head.js.map +1 -0
  74. package/dist/components/date-picker/calendar-grid.d.ts +1 -1
  75. package/dist/components/date-picker/calendar-grid.js +22 -16
  76. package/dist/components/date-picker/calendar-grid.js.map +1 -0
  77. package/dist/components/date-picker/calendar-header.js +3 -2
  78. package/dist/components/date-picker/calendar-header.js.map +1 -0
  79. package/dist/components/date-picker/calendar.d.ts +10 -7
  80. package/dist/components/date-picker/calendar.js +1 -0
  81. package/dist/components/date-picker/calendar.js.map +1 -0
  82. package/dist/components/date-picker/date-helpers.js +1 -0
  83. package/dist/components/date-picker/date-helpers.js.map +1 -0
  84. package/dist/components/date-picker/date-picker.css +44 -40
  85. package/dist/components/date-picker/date-picker.d.ts +9 -8
  86. package/dist/components/date-picker/date-picker.js +4 -2
  87. package/dist/components/date-picker/date-picker.js.map +1 -0
  88. package/dist/components/date-picker/date-range-picker.d.ts +10 -9
  89. package/dist/components/date-picker/date-range-picker.js +5 -4
  90. package/dist/components/date-picker/date-range-picker.js.map +1 -0
  91. package/dist/components/date-picker/date-range.d.ts +1 -1
  92. package/dist/components/date-picker/date-range.js +1 -0
  93. package/dist/components/date-picker/date-range.js.map +1 -0
  94. package/dist/components/date-picker/index.js +1 -0
  95. package/dist/components/date-picker/index.js.map +1 -0
  96. package/dist/components/date-picker/parse-min-max-props.d.ts +1 -1
  97. package/dist/components/date-picker/parse-min-max-props.js +1 -0
  98. package/dist/components/date-picker/parse-min-max-props.js.map +1 -0
  99. package/dist/components/date-picker-popover/date-picker-popover.d.ts +18 -10
  100. package/dist/components/date-picker-popover/date-picker-popover.js +18 -5
  101. package/dist/components/date-picker-popover/date-picker-popover.js.map +1 -0
  102. package/dist/components/date-picker-popover/index.js +1 -0
  103. package/dist/components/date-picker-popover/index.js.map +1 -0
  104. package/dist/components/date-range-picker-popover/date-range-picker-popover-footer.d.ts +1 -1
  105. package/dist/components/date-range-picker-popover/date-range-picker-popover-footer.js +3 -1
  106. package/dist/components/date-range-picker-popover/date-range-picker-popover-footer.js.map +1 -0
  107. package/dist/components/date-range-picker-popover/date-range-picker-popover-presets.d.ts +1 -1
  108. package/dist/components/date-range-picker-popover/date-range-picker-popover-presets.js +2 -0
  109. package/dist/components/date-range-picker-popover/date-range-picker-popover-presets.js.map +1 -0
  110. package/dist/components/date-range-picker-popover/date-range-picker-popover.d.ts +17 -14
  111. package/dist/components/date-range-picker-popover/date-range-picker-popover.js +20 -14
  112. package/dist/components/date-range-picker-popover/date-range-picker-popover.js.map +1 -0
  113. package/dist/components/date-range-picker-popover/helpers.d.ts +1 -1
  114. package/dist/components/date-range-picker-popover/helpers.js +2 -0
  115. package/dist/components/date-range-picker-popover/helpers.js.map +1 -0
  116. package/dist/components/date-range-picker-popover/index.js +1 -0
  117. package/dist/components/date-range-picker-popover/index.js.map +1 -0
  118. package/dist/components/date-range-picker-popover/types.d.ts +1 -1
  119. package/dist/components/date-range-picker-popover/types.js +2 -1
  120. package/dist/components/date-range-picker-popover/types.js.map +1 -0
  121. package/dist/components/date-range-picker-popover/use-is-compact-view.js +7 -1
  122. package/dist/components/date-range-picker-popover/use-is-compact-view.js.map +1 -0
  123. package/dist/components/dialog/dialog-body.d.ts +9 -4
  124. package/dist/components/dialog/dialog-body.js +26 -3
  125. package/dist/components/dialog/dialog-body.js.map +1 -0
  126. package/dist/components/dialog/dialog-context.d.ts +4 -4
  127. package/dist/components/dialog/dialog-context.js +10 -7
  128. package/dist/components/dialog/dialog-context.js.map +1 -0
  129. package/dist/components/dialog/dialog-footer.d.ts +4 -6
  130. package/dist/components/dialog/dialog-footer.js +8 -4
  131. package/dist/components/dialog/dialog-footer.js.map +1 -0
  132. package/dist/components/dialog/dialog-header.d.ts +8 -8
  133. package/dist/components/dialog/dialog-header.js +12 -10
  134. package/dist/components/dialog/dialog-header.js.map +1 -0
  135. package/dist/components/dialog/dialog.css +321 -100
  136. package/dist/components/dialog/dialog.d.ts +13 -18
  137. package/dist/components/dialog/dialog.js +84 -30
  138. package/dist/components/dialog/dialog.js.map +1 -0
  139. package/dist/components/dialog/index.js +1 -0
  140. package/dist/components/dialog/index.js.map +1 -0
  141. package/dist/components/empty-state/empty-state.css +9 -5
  142. package/dist/components/empty-state/empty-state.d.ts +7 -6
  143. package/dist/components/empty-state/empty-state.js +7 -2
  144. package/dist/components/empty-state/empty-state.js.map +1 -0
  145. package/dist/components/empty-state/index.js +1 -0
  146. package/dist/components/empty-state/index.js.map +1 -0
  147. package/dist/components/file-picker/file-picker.css +19 -16
  148. package/dist/components/file-picker/file-picker.d.ts +7 -7
  149. package/dist/components/file-picker/file-picker.js +25 -9
  150. package/dist/components/file-picker/file-picker.js.map +1 -0
  151. package/dist/components/file-picker/index.js +1 -0
  152. package/dist/components/file-picker/index.js.map +1 -0
  153. package/dist/components/filter-buttons/filter-button.d.ts +6 -5
  154. package/dist/components/filter-buttons/filter-button.js +4 -3
  155. package/dist/components/filter-buttons/filter-button.js.map +1 -0
  156. package/dist/components/filter-buttons/filter-buttons.css +37 -12
  157. package/dist/components/filter-buttons/filter-buttons.d.ts +2 -2
  158. package/dist/components/filter-buttons/filter-buttons.js +3 -2
  159. package/dist/components/filter-buttons/filter-buttons.js.map +1 -0
  160. package/dist/components/filter-buttons/index.js +1 -0
  161. package/dist/components/filter-buttons/index.js.map +1 -0
  162. package/dist/components/filtered-search/filter-item.css +1 -1
  163. package/dist/components/filtered-search/filter-item.d.ts +1 -1
  164. package/dist/components/filtered-search/filter-item.js +3 -1
  165. package/dist/components/filtered-search/filter-item.js.map +1 -0
  166. package/dist/components/filtered-search/filter-operator-select.js +2 -1
  167. package/dist/components/filtered-search/filter-operator-select.js.map +1 -0
  168. package/dist/components/filtered-search/filter-token.css +7 -7
  169. package/dist/components/filtered-search/filter-token.d.ts +6 -3
  170. package/dist/components/filtered-search/filter-token.js +5 -4
  171. package/dist/components/filtered-search/filter-token.js.map +1 -0
  172. package/dist/components/filtered-search/filter-value-list.css +1 -1
  173. package/dist/components/filtered-search/filter-value-list.js +3 -1
  174. package/dist/components/filtered-search/filter-value-list.js.map +1 -0
  175. package/dist/components/filtered-search/filtered-search.css +56 -52
  176. package/dist/components/filtered-search/filtered-search.d.ts +6 -5
  177. package/dist/components/filtered-search/filtered-search.js +12 -9
  178. package/dist/components/filtered-search/filtered-search.js.map +1 -0
  179. package/dist/components/filtered-search/index.d.ts +1 -1
  180. package/dist/components/filtered-search/index.js +3 -1
  181. package/dist/components/filtered-search/index.js.map +1 -0
  182. package/dist/components/filtered-search/model/abstract-filter.js +1 -0
  183. package/dist/components/filtered-search/model/abstract-filter.js.map +1 -0
  184. package/dist/components/filtered-search/model/string-filter.d.ts +1 -1
  185. package/dist/components/filtered-search/model/string-filter.js +2 -0
  186. package/dist/components/filtered-search/model/string-filter.js.map +1 -0
  187. package/dist/components/filtered-search/model/string-set-filter.js +1 -0
  188. package/dist/components/filtered-search/model/string-set-filter.js.map +1 -0
  189. package/dist/components/filtered-search/model/validation-result.js +1 -0
  190. package/dist/components/filtered-search/model/validation-result.js.map +1 -0
  191. package/dist/components/filtered-search/string-filter-input.js +2 -1
  192. package/dist/components/filtered-search/string-filter-input.js.map +1 -0
  193. package/dist/components/filtered-search/string-filter-item.d.ts +1 -1
  194. package/dist/components/filtered-search/string-filter-item.js +7 -3
  195. package/dist/components/filtered-search/string-filter-item.js.map +1 -0
  196. package/dist/components/filtered-search/string-set-filter-item.d.ts +1 -1
  197. package/dist/components/filtered-search/string-set-filter-item.js +7 -3
  198. package/dist/components/filtered-search/string-set-filter-item.js.map +1 -0
  199. package/dist/components/filtered-search/types.d.ts +2 -2
  200. package/dist/components/filtered-search/types.js +3 -1
  201. package/dist/components/filtered-search/types.js.map +1 -0
  202. package/dist/components/filtered-search/use-combobox-ids.js +1 -0
  203. package/dist/components/filtered-search/use-combobox-ids.js.map +1 -0
  204. package/dist/components/filtered-search/use-translations.d.ts +1 -1
  205. package/dist/components/filtered-search/use-translations.js +1 -0
  206. package/dist/components/filtered-search/use-translations.js.map +1 -0
  207. package/dist/components/form-field/form-field.d.ts +7 -10
  208. package/dist/components/form-field/form-field.js +1 -0
  209. package/dist/components/form-field/form-field.js.map +1 -0
  210. package/dist/components/form-field/index.js +1 -0
  211. package/dist/components/form-field/index.js.map +1 -0
  212. package/dist/components/hero-icons/24/outline/arrow-down-icon.d.ts +2 -0
  213. package/dist/components/hero-icons/24/outline/arrow-down-icon.js +6 -0
  214. package/dist/components/hero-icons/24/outline/arrow-down-icon.js.map +1 -0
  215. package/dist/components/hero-icons/24/outline/arrow-up-icon.d.ts +2 -0
  216. package/dist/components/hero-icons/24/outline/arrow-up-icon.js +6 -0
  217. package/dist/components/hero-icons/24/outline/arrow-up-icon.js.map +1 -0
  218. package/dist/components/hero-icons/24/outline/arrows-up-down-icon.d.ts +2 -3
  219. package/dist/components/hero-icons/24/outline/arrows-up-down-icon.js +5 -4
  220. package/dist/components/hero-icons/24/outline/arrows-up-down-icon.js.map +1 -0
  221. package/dist/components/hero-icons/24/outline/chevron-left-icon.d.ts +2 -3
  222. package/dist/components/hero-icons/24/outline/chevron-left-icon.js +5 -4
  223. package/dist/components/hero-icons/24/outline/chevron-left-icon.js.map +1 -0
  224. package/dist/components/hero-icons/24/outline/chevron-right-icon.d.ts +2 -3
  225. package/dist/components/hero-icons/24/outline/chevron-right-icon.js +5 -4
  226. package/dist/components/hero-icons/24/outline/chevron-right-icon.js.map +1 -0
  227. package/dist/components/hero-icons/24/outline/eye-icon.d.ts +2 -3
  228. package/dist/components/hero-icons/24/outline/eye-icon.js +5 -4
  229. package/dist/components/hero-icons/24/outline/eye-icon.js.map +1 -0
  230. package/dist/components/hero-icons/24/outline/eye-slash-icon.d.ts +2 -3
  231. package/dist/components/hero-icons/24/outline/eye-slash-icon.js +5 -4
  232. package/dist/components/hero-icons/24/outline/eye-slash-icon.js.map +1 -0
  233. package/dist/components/hero-icons/24/outline/magnifying-glass-icon.d.ts +2 -3
  234. package/dist/components/hero-icons/24/outline/magnifying-glass-icon.js +5 -4
  235. package/dist/components/hero-icons/24/outline/magnifying-glass-icon.js.map +1 -0
  236. package/dist/components/hero-icons/24/outline/trash-icon.d.ts +2 -3
  237. package/dist/components/hero-icons/24/outline/trash-icon.js +5 -4
  238. package/dist/components/hero-icons/24/outline/trash-icon.js.map +1 -0
  239. package/dist/components/hero-icons/24/outline/x-mark-icon.d.ts +2 -3
  240. package/dist/components/hero-icons/24/outline/x-mark-icon.js +5 -4
  241. package/dist/components/hero-icons/24/outline/x-mark-icon.js.map +1 -0
  242. package/dist/components/hero-icons/24/solid/exclamation-triangle-icon.d.ts +2 -3
  243. package/dist/components/hero-icons/24/solid/exclamation-triangle-icon.js +5 -4
  244. package/dist/components/hero-icons/24/solid/exclamation-triangle-icon.js.map +1 -0
  245. package/dist/components/index.d.ts +0 -2
  246. package/dist/components/index.js +1 -2
  247. package/dist/components/index.js.map +1 -0
  248. package/dist/components/label/index.js +1 -0
  249. package/dist/components/label/index.js.map +1 -0
  250. package/dist/components/label/label.css +5 -5
  251. package/dist/components/label/label.d.ts +6 -3
  252. package/dist/components/label/label.js +6 -4
  253. package/dist/components/label/label.js.map +1 -0
  254. package/dist/components/menu/index.js +1 -0
  255. package/dist/components/menu/index.js.map +1 -0
  256. package/dist/components/menu/menu-item.d.ts +6 -6
  257. package/dist/components/menu/menu-item.js +9 -14
  258. package/dist/components/menu/menu-item.js.map +1 -0
  259. package/dist/components/menu/menu-separator.d.ts +2 -5
  260. package/dist/components/menu/menu-separator.js +3 -1
  261. package/dist/components/menu/menu-separator.js.map +1 -0
  262. package/dist/components/menu/menu.css +25 -26
  263. package/dist/components/menu/menu.d.ts +22 -26
  264. package/dist/components/menu/menu.js +121 -116
  265. package/dist/components/menu/menu.js.map +1 -0
  266. package/dist/components/nav-list/index.js +1 -0
  267. package/dist/components/nav-list/index.js.map +1 -0
  268. package/dist/components/nav-list/nav-list-item.d.ts +7 -6
  269. package/dist/components/nav-list/nav-list-item.js +2 -0
  270. package/dist/components/nav-list/nav-list-item.js.map +1 -0
  271. package/dist/components/nav-list/nav-list-title.d.ts +5 -5
  272. package/dist/components/nav-list/nav-list-title.js +2 -0
  273. package/dist/components/nav-list/nav-list-title.js.map +1 -0
  274. package/dist/components/nav-list/nav-list.css +12 -12
  275. package/dist/components/nav-list/nav-list.d.ts +8 -2
  276. package/dist/components/nav-list/nav-list.js +6 -0
  277. package/dist/components/nav-list/nav-list.js.map +1 -0
  278. package/dist/components/password-input/index.js +1 -0
  279. package/dist/components/password-input/index.js.map +1 -0
  280. package/dist/components/password-input/password-input.css +3 -33
  281. package/dist/components/password-input/password-input.d.ts +7 -6
  282. package/dist/components/password-input/password-input.js +9 -7
  283. package/dist/components/password-input/password-input.js.map +1 -0
  284. package/dist/components/popover/index.js +1 -0
  285. package/dist/components/popover/index.js.map +1 -0
  286. package/dist/components/popover/popover.css +43 -70
  287. package/dist/components/popover/popover.d.ts +28 -49
  288. package/dist/components/popover/popover.js +101 -82
  289. package/dist/components/popover/popover.js.map +1 -0
  290. package/dist/components/portal/index.js +1 -0
  291. package/dist/components/portal/index.js.map +1 -0
  292. package/dist/components/portal/portal-context.d.ts +1 -1
  293. package/dist/components/portal/portal-context.js +1 -0
  294. package/dist/components/portal/portal-context.js.map +1 -0
  295. package/dist/components/portal/portal.d.ts +1 -1
  296. package/dist/components/portal/portal.js +2 -0
  297. package/dist/components/portal/portal.js.map +1 -0
  298. package/dist/components/radio/index.js +1 -0
  299. package/dist/components/radio/index.js.map +1 -0
  300. package/dist/components/radio/radio.css +24 -28
  301. package/dist/components/radio/radio.d.ts +5 -5
  302. package/dist/components/radio/radio.js +11 -6
  303. package/dist/components/radio/radio.js.map +1 -0
  304. package/dist/components/search-select/context.d.ts +1 -1
  305. package/dist/components/search-select/context.js +1 -0
  306. package/dist/components/search-select/context.js.map +1 -0
  307. package/dist/components/search-select/icons.d.ts +3 -3
  308. package/dist/components/search-select/icons.js +2 -0
  309. package/dist/components/search-select/icons.js.map +1 -0
  310. package/dist/components/search-select/index.js +1 -0
  311. package/dist/components/search-select/index.js.map +1 -0
  312. package/dist/components/search-select/search-select.css +67 -43
  313. package/dist/components/search-select/search-select.d.ts +9 -10
  314. package/dist/components/search-select/search-select.js +20 -15
  315. package/dist/components/search-select/search-select.js.map +1 -0
  316. package/dist/components/segmented-control/index.js +1 -0
  317. package/dist/components/segmented-control/index.js.map +1 -0
  318. package/dist/components/segmented-control/segmented-button.d.ts +1 -1
  319. package/dist/components/segmented-control/segmented-button.js +2 -0
  320. package/dist/components/segmented-control/segmented-button.js.map +1 -0
  321. package/dist/components/segmented-control/segmented-control.css +46 -41
  322. package/dist/components/segmented-control/segmented-control.d.ts +5 -4
  323. package/dist/components/segmented-control/segmented-control.js +2 -0
  324. package/dist/components/segmented-control/segmented-control.js.map +1 -0
  325. package/dist/components/select/index.js +1 -0
  326. package/dist/components/select/index.js.map +1 -0
  327. package/dist/components/select/select.css +37 -32
  328. package/dist/components/select/select.d.ts +6 -31
  329. package/dist/components/select/select.js +5 -4
  330. package/dist/components/select/select.js.map +1 -0
  331. package/dist/components/selection-control/index.js +1 -0
  332. package/dist/components/selection-control/index.js.map +1 -0
  333. package/dist/components/selection-control/selection-control.d.ts +8 -13
  334. package/dist/components/selection-control/selection-control.js +5 -4
  335. package/dist/components/selection-control/selection-control.js.map +1 -0
  336. package/dist/components/slider/calc-position.js +1 -0
  337. package/dist/components/slider/calc-position.js.map +1 -0
  338. package/dist/components/slider/get-offset-relative-to-thumb.js +4 -3
  339. package/dist/components/slider/get-offset-relative-to-thumb.js.map +1 -0
  340. package/dist/components/slider/index.js +2 -0
  341. package/dist/components/slider/index.js.map +1 -0
  342. package/dist/components/slider/range-slider.d.ts +2 -2
  343. package/dist/components/slider/range-slider.js +2 -1
  344. package/dist/components/slider/range-slider.js.map +1 -0
  345. package/dist/components/slider/slider-thumb.d.ts +1 -1
  346. package/dist/components/slider/slider-thumb.js +3 -1
  347. package/dist/components/slider/slider-thumb.js.map +1 -0
  348. package/dist/components/slider/slider-tick-marks.d.ts +1 -1
  349. package/dist/components/slider/slider-tick-marks.js +2 -0
  350. package/dist/components/slider/slider-tick-marks.js.map +1 -0
  351. package/dist/components/slider/slider-track.d.ts +1 -1
  352. package/dist/components/slider/slider-track.js +7 -5
  353. package/dist/components/slider/slider-track.js.map +1 -0
  354. package/dist/components/slider/slider.css +88 -93
  355. package/dist/components/slider/slider.d.ts +2 -2
  356. package/dist/components/slider/slider.js +2 -1
  357. package/dist/components/slider/slider.js.map +1 -0
  358. package/dist/components/spinner/index.js +1 -0
  359. package/dist/components/spinner/index.js.map +1 -0
  360. package/dist/components/spinner/spinner.d.ts +6 -5
  361. package/dist/components/spinner/spinner.js +5 -4
  362. package/dist/components/spinner/spinner.js.map +1 -0
  363. package/dist/components/switch/index.js +1 -0
  364. package/dist/components/switch/index.js.map +1 -0
  365. package/dist/components/switch/switch.css +34 -47
  366. package/dist/components/switch/switch.d.ts +5 -5
  367. package/dist/components/switch/switch.js +12 -6
  368. package/dist/components/switch/switch.js.map +1 -0
  369. package/dist/components/table/index.js +1 -0
  370. package/dist/components/table/index.js.map +1 -0
  371. package/dist/components/table/table-body.d.ts +5 -5
  372. package/dist/components/table/table-body.js +5 -4
  373. package/dist/components/table/table-body.js.map +1 -0
  374. package/dist/components/table/table-cell.d.ts +5 -5
  375. package/dist/components/table/table-cell.js +5 -4
  376. package/dist/components/table/table-cell.js.map +1 -0
  377. package/dist/components/table/table-container.d.ts +6 -5
  378. package/dist/components/table/table-container.js +5 -4
  379. package/dist/components/table/table-container.js.map +1 -0
  380. package/dist/components/table/table-head-cell.d.ts +6 -5
  381. package/dist/components/table/table-head-cell.js +14 -9
  382. package/dist/components/table/table-head-cell.js.map +1 -0
  383. package/dist/components/table/table-head.d.ts +6 -5
  384. package/dist/components/table/table-head.js +5 -4
  385. package/dist/components/table/table-head.js.map +1 -0
  386. package/dist/components/table/table-row.d.ts +6 -5
  387. package/dist/components/table/table-row.js +5 -4
  388. package/dist/components/table/table-row.js.map +1 -0
  389. package/dist/components/table/table.css +48 -54
  390. package/dist/components/table/table.d.ts +21 -6
  391. package/dist/components/table/table.js +18 -5
  392. package/dist/components/table/table.js.map +1 -0
  393. package/dist/components/tabs/index.js +1 -0
  394. package/dist/components/tabs/index.js.map +1 -0
  395. package/dist/components/tabs/tab-list.d.ts +4 -2
  396. package/dist/components/tabs/tab-list.js +20 -13
  397. package/dist/components/tabs/tab-list.js.map +1 -0
  398. package/dist/components/tabs/tab-panel.d.ts +7 -4
  399. package/dist/components/tabs/tab-panel.js +3 -0
  400. package/dist/components/tabs/tab-panel.js.map +1 -0
  401. package/dist/components/tabs/tab.d.ts +6 -3
  402. package/dist/components/tabs/tab.js +5 -1
  403. package/dist/components/tabs/tab.js.map +1 -0
  404. package/dist/components/tabs/tabs-context.d.ts +2 -2
  405. package/dist/components/tabs/tabs-context.js +2 -0
  406. package/dist/components/tabs/tabs-context.js.map +1 -0
  407. package/dist/components/tabs/tabs.css +15 -11
  408. package/dist/components/tabs/tabs.d.ts +7 -4
  409. package/dist/components/tabs/tabs.js +3 -0
  410. package/dist/components/tabs/tabs.js.map +1 -0
  411. package/dist/components/tabs/types.js +1 -0
  412. package/dist/components/tabs/types.js.map +1 -0
  413. package/dist/components/tag/index.js +1 -0
  414. package/dist/components/tag/index.js.map +1 -0
  415. package/dist/components/tag/tag.css +222 -183
  416. package/dist/components/tag/tag.d.ts +8 -7
  417. package/dist/components/tag/tag.js +5 -4
  418. package/dist/components/tag/tag.js.map +1 -0
  419. package/dist/components/text-input/index.js +1 -0
  420. package/dist/components/text-input/index.js.map +1 -0
  421. package/dist/components/text-input/text-input.css +59 -53
  422. package/dist/components/text-input/text-input.d.ts +5 -5
  423. package/dist/components/text-input/text-input.js +5 -4
  424. package/dist/components/text-input/text-input.js.map +1 -0
  425. package/dist/components/textarea/index.js +1 -0
  426. package/dist/components/textarea/index.js.map +1 -0
  427. package/dist/components/textarea/textarea.css +36 -31
  428. package/dist/components/textarea/textarea.d.ts +5 -4
  429. package/dist/components/textarea/textarea.js +5 -4
  430. package/dist/components/textarea/textarea.js.map +1 -0
  431. package/dist/components/toast/index.js +1 -0
  432. package/dist/components/toast/index.js.map +1 -0
  433. package/dist/components/toast/toast-button.d.ts +5 -5
  434. package/dist/components/toast/toast-button.js +5 -4
  435. package/dist/components/toast/toast-button.js.map +1 -0
  436. package/dist/components/toast/toast.css +35 -35
  437. package/dist/components/toast/toast.d.ts +5 -4
  438. package/dist/components/toast/toast.js +2 -0
  439. package/dist/components/toast/toast.js.map +1 -0
  440. package/dist/components/toaster/index.js +1 -0
  441. package/dist/components/toaster/index.js.map +1 -0
  442. package/dist/components/toaster/toaster.css +11 -11
  443. package/dist/components/toaster/toaster.d.ts +1 -1
  444. package/dist/components/toaster/toaster.js +28 -17
  445. package/dist/components/toaster/toaster.js.map +1 -0
  446. package/dist/components/tooltip/index.js +1 -0
  447. package/dist/components/tooltip/index.js.map +1 -0
  448. package/dist/components/tooltip/tooltip.css +79 -12
  449. package/dist/components/tooltip/tooltip.d.ts +26 -24
  450. package/dist/components/tooltip/tooltip.js +82 -64
  451. package/dist/components/tooltip/tooltip.js.map +1 -0
  452. package/dist/hooks/index.d.ts +4 -5
  453. package/dist/hooks/index.js +5 -5
  454. package/dist/hooks/index.js.map +1 -0
  455. package/dist/hooks/use-close-on-click-outside.d.ts +10 -0
  456. package/dist/hooks/use-close-on-click-outside.js +57 -0
  457. package/dist/hooks/use-close-on-click-outside.js.map +1 -0
  458. package/dist/hooks/use-close-on-esc.d.ts +5 -0
  459. package/dist/hooks/use-close-on-esc.js +34 -0
  460. package/dist/hooks/use-close-on-esc.js.map +1 -0
  461. package/dist/hooks/use-focus-trap.d.ts +5 -14
  462. package/dist/hooks/use-focus-trap.js +27 -40
  463. package/dist/hooks/use-focus-trap.js.map +1 -0
  464. package/dist/hooks/use-lock-body-scroll.d.ts +3 -0
  465. package/dist/hooks/use-lock-body-scroll.js +41 -0
  466. package/dist/hooks/use-lock-body-scroll.js.map +1 -0
  467. package/dist/hooks/use-preserve-props-when-closed.js +1 -0
  468. package/dist/hooks/use-preserve-props-when-closed.js.map +1 -0
  469. package/dist/hooks/{use-callback-ref.d.ts → use-ref-callback.d.ts} +1 -1
  470. package/dist/hooks/use-ref-callback.js +9 -0
  471. package/dist/hooks/use-ref-callback.js.map +1 -0
  472. package/dist/index.d.ts +2 -2
  473. package/dist/index.js +3 -2
  474. package/dist/index.js.map +1 -0
  475. package/dist/lib/calc-element-position.d.ts +10 -0
  476. package/dist/lib/calc-element-position.js +28 -0
  477. package/dist/lib/calc-element-position.js.map +1 -0
  478. package/dist/lib/calc-position.d.ts +27 -0
  479. package/dist/lib/calc-position.js +143 -0
  480. package/dist/lib/calc-position.js.map +1 -0
  481. package/dist/lib/get-element-bounding-rect.d.ts +9 -0
  482. package/dist/lib/get-element-bounding-rect.js +17 -0
  483. package/dist/lib/get-element-bounding-rect.js.map +1 -0
  484. package/dist/lib/helpers.d.ts +3 -6
  485. package/dist/lib/helpers.js +14 -20
  486. package/dist/lib/helpers.js.map +1 -0
  487. package/dist/lib/index.d.ts +1 -1
  488. package/dist/lib/index.js +2 -1
  489. package/dist/lib/index.js.map +1 -0
  490. package/dist/lib/keyboard-key.d.ts +15 -0
  491. package/dist/lib/keyboard-key.js +16 -0
  492. package/dist/lib/keyboard-key.js.map +1 -0
  493. package/dist/lib/observe-element-change.d.ts +3 -0
  494. package/dist/lib/observe-element-change.js +14 -0
  495. package/dist/lib/observe-element-change.js.map +1 -0
  496. package/dist/lib/observe-element-move.d.ts +6 -0
  497. package/dist/lib/observe-element-move.js +43 -0
  498. package/dist/lib/observe-element-move.js.map +1 -0
  499. package/dist/lib/react-helpers.d.ts +1 -9
  500. package/dist/lib/react-helpers.js +2 -26
  501. package/dist/lib/react-helpers.js.map +1 -0
  502. package/dist/storybook-blocks/color-palette/color-palette.d.ts +11 -0
  503. package/dist/storybook-blocks/color-palette/color-palette.js +22 -0
  504. package/dist/storybook-blocks/color-palette/color-palette.js.map +1 -0
  505. package/dist/storybook-blocks/color-palette/index.d.ts +1 -0
  506. package/dist/storybook-blocks/color-palette/index.js +2 -0
  507. package/dist/storybook-blocks/color-palette/index.js.map +1 -0
  508. package/package.json +47 -49
  509. package/css/draft-components-utilities.css +0 -1710
  510. package/dist/components/hero-icons/24/outline/arrow-small-down-icon.d.ts +0 -3
  511. package/dist/components/hero-icons/24/outline/arrow-small-down-icon.js +0 -5
  512. package/dist/components/hero-icons/24/outline/arrow-small-up-icon.d.ts +0 -3
  513. package/dist/components/hero-icons/24/outline/arrow-small-up-icon.js +0 -5
  514. package/dist/components/popover/use-page-click.d.ts +0 -16
  515. package/dist/components/popover/use-page-click.js +0 -46
  516. package/dist/components/positioner/calc-position.d.ts +0 -32
  517. package/dist/components/positioner/calc-position.js +0 -112
  518. package/dist/components/positioner/index.d.ts +0 -1
  519. package/dist/components/positioner/index.js +0 -1
  520. package/dist/components/positioner/positioner.d.ts +0 -20
  521. package/dist/components/positioner/positioner.js +0 -59
  522. package/dist/components/positioner/types.d.ts +0 -14
  523. package/dist/components/positioner/types.js +0 -1
  524. package/dist/components/slide-over/index.d.ts +0 -4
  525. package/dist/components/slide-over/index.js +0 -3
  526. package/dist/components/slide-over/slide-over-body.css +0 -7
  527. package/dist/components/slide-over/slide-over-body.d.ts +0 -3
  528. package/dist/components/slide-over/slide-over-body.js +0 -5
  529. package/dist/components/slide-over/slide-over-context.d.ts +0 -14
  530. package/dist/components/slide-over/slide-over-context.js +0 -18
  531. package/dist/components/slide-over/slide-over-header.css +0 -29
  532. package/dist/components/slide-over/slide-over-header.d.ts +0 -11
  533. package/dist/components/slide-over/slide-over-header.js +0 -17
  534. package/dist/components/slide-over/slide-over.css +0 -85
  535. package/dist/components/slide-over/slide-over.d.ts +0 -25
  536. package/dist/components/slide-over/slide-over.js +0 -106
  537. package/dist/components/slide-over/types.d.ts +0 -1
  538. package/dist/components/slide-over/types.js +0 -1
  539. package/dist/hooks/use-callback-ref.js +0 -8
  540. package/dist/hooks/use-disable-body-scroll.d.ts +0 -5
  541. package/dist/hooks/use-disable-body-scroll.js +0 -32
  542. package/dist/hooks/use-esc-key-down.d.ts +0 -17
  543. package/dist/hooks/use-esc-key-down.js +0 -51
  544. package/dist/hooks/use-mount-transition.d.ts +0 -35
  545. package/dist/hooks/use-mount-transition.js +0 -39
  546. package/dist/hooks/use-prefers-reduced-motion.d.ts +0 -1
  547. package/dist/hooks/use-prefers-reduced-motion.js +0 -15
  548. package/dist/hooks/use-show-transition.d.ts +0 -16
  549. package/dist/hooks/use-show-transition.js +0 -69
  550. package/dist/lib/keyboard-keys.d.ts +0 -15
  551. package/dist/lib/keyboard-keys.js +0 -15
@@ -1,106 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { forwardRef, useCallback, useEffect, useId, useImperativeHandle, useMemo, useRef, } from 'react';
3
- import { SlideOverContextProvider } from './slide-over-context.js';
4
- import { classNames, getRefElement } from '../../lib/index.js';
5
- import { useDisableBodyScroll, useEscKeyDown, useFocusTrap } from '../../hooks/index.js';
6
- import { Portal } from '../portal/index.js';
7
- import { SlideOverHeader } from './slide-over-header.js';
8
- import { SlideOverBody } from './slide-over-body.js';
9
- const panelSlideIn = [
10
- { transform: 'translateX(100%)' },
11
- { transform: 'translateX(0%)' },
12
- ];
13
- const backdropFade = [
14
- { opacity: 0 },
15
- { opacity: 1 },
16
- ];
17
- const SlideOverWithRef = forwardRef(function SlideOver({ 'aria-labelledby': ariaLabelledby, 'aria-describedby': ariaDescribedby, animationDurationMs = 350, animationDisabled = false, shouldCloseOnEscKeyPress = true, shouldCloseOnBackdropClick = true, className, children, onClose, ...props }, ref) {
18
- const id = useId();
19
- const titleId = ariaLabelledby || `${id}dialogTitle`;
20
- const descriptionId = ariaDescribedby || `${id}dialogDescription`;
21
- const backdropRef = useRef(null);
22
- const panelRef = useRef(null);
23
- const isAnimationDisabled = useRef(animationDisabled);
24
- const shouldPlayAnimations = useCallback(() => {
25
- const mediaQueryList = window.matchMedia('(prefers-reduced-motion)');
26
- return !isAnimationDisabled.current && !mediaQueryList.matches;
27
- }, []);
28
- const closePanel = useMemo(() => {
29
- let isClosing = false;
30
- return (source) => {
31
- if (isClosing) {
32
- return;
33
- }
34
- if (!shouldPlayAnimations()) {
35
- onClose(source);
36
- }
37
- isClosing = true;
38
- const backdrop = getRefElement(backdropRef);
39
- const backdropAnimations = backdrop.getAnimations();
40
- if (backdropAnimations.length === 0) {
41
- backdropAnimations.push(backdrop.animate(backdropFade, {
42
- direction: 'reverse',
43
- fill: 'both',
44
- easing: 'ease-in-out',
45
- duration: animationDurationMs,
46
- }));
47
- }
48
- else {
49
- backdropAnimations.forEach((animation) => animation.reverse());
50
- }
51
- const panel = getRefElement(panelRef);
52
- const panelAnimations = panel.getAnimations();
53
- if (panelAnimations.length === 0) {
54
- backdropAnimations.push(panel.animate(panelSlideIn, {
55
- direction: 'reverse',
56
- fill: 'both',
57
- easing: 'ease-in-out',
58
- duration: animationDurationMs,
59
- }));
60
- }
61
- else {
62
- panelAnimations.forEach((animation) => animation.reverse());
63
- }
64
- const animations = [...backdropAnimations, ...panelAnimations];
65
- Promise.all(animations.map((animation) => animation.finished)).then(() => {
66
- onClose(source);
67
- isClosing = false;
68
- });
69
- };
70
- }, [animationDurationMs, onClose, shouldPlayAnimations]);
71
- useImperativeHandle(ref, () => ({
72
- close: closePanel,
73
- }));
74
- useEffect(() => {
75
- isAnimationDisabled.current = animationDisabled;
76
- }, [animationDisabled]);
77
- useEffect(() => {
78
- if (shouldPlayAnimations()) {
79
- const backdrop = getRefElement(backdropRef);
80
- backdrop.animate(backdropFade, {
81
- fill: 'both',
82
- easing: 'ease-in-out',
83
- duration: animationDurationMs,
84
- });
85
- const panel = getRefElement(panelRef);
86
- panel.animate(panelSlideIn, {
87
- fill: 'both',
88
- easing: 'ease-in-out',
89
- duration: animationDurationMs,
90
- });
91
- }
92
- }, [shouldPlayAnimations, animationDurationMs]);
93
- useEscKeyDown(() => closePanel('escape'), { isEnabled: shouldCloseOnEscKeyPress });
94
- useFocusTrap(panelRef);
95
- useDisableBodyScroll();
96
- const onClickBackdrop = () => {
97
- if (shouldCloseOnBackdropClick) {
98
- closePanel('backdrop');
99
- }
100
- };
101
- return (_jsx(Portal, { children: _jsxs("div", { className: "dc-slide-over", children: [_jsx("div", { "data-testid": "slide-over-backdrop", className: "dc-slide-over__backdrop", ref: backdropRef, role: "presentation", onClick: onClickBackdrop }), _jsx("div", { ...props, className: classNames('dc-slide-over__panel', className), role: "dialog", ref: panelRef, "aria-modal": true, "aria-labelledby": titleId, "aria-describedby": descriptionId, children: _jsx(SlideOverContextProvider, { titleId: titleId, descriptionId: descriptionId, closePanel: closePanel, children: children }) })] }) }));
102
- });
103
- export const SlideOver = Object.assign(SlideOverWithRef, {
104
- Header: SlideOverHeader,
105
- Body: SlideOverBody,
106
- });
@@ -1 +0,0 @@
1
- export type SlideOverCloseCallback = (source?: 'close-button' | 'backdrop' | 'escape') => void;
@@ -1 +0,0 @@
1
- export {};
@@ -1,8 +0,0 @@
1
- import { useEffect, useMemo, useRef } from 'react';
2
- export function useCallbackRef(callback) {
3
- const savedCallback = useRef(callback);
4
- useEffect(() => {
5
- savedCallback.current = callback;
6
- }, [callback]);
7
- return useMemo(() => ((...args) => savedCallback.current(...args)), []);
8
- }
@@ -1,5 +0,0 @@
1
- type Options = {
2
- isEnabled: boolean;
3
- };
4
- export declare function useDisableBodyScroll(options?: Options): void;
5
- export {};
@@ -1,32 +0,0 @@
1
- import { useEffect } from 'react';
2
- import { once } from '../lib/helpers.js';
3
- export function useDisableBodyScroll(options = {
4
- isEnabled: true,
5
- }) {
6
- useEffect(() => {
7
- if (options.isEnabled) {
8
- return disableBodyScroll();
9
- }
10
- }, [options.isEnabled]);
11
- }
12
- let disableAttempts = 0;
13
- let initialOverflow = '';
14
- let initialPaddingRight = '';
15
- function disableBodyScroll() {
16
- if (!disableAttempts) {
17
- const bodyStyle = window.getComputedStyle(document.body);
18
- const scrollbarWidth = (window.innerWidth - document.documentElement.clientWidth);
19
- initialOverflow = bodyStyle.overflow;
20
- initialPaddingRight = bodyStyle.paddingRight;
21
- document.body.style.overflow = 'hidden';
22
- document.body.style.paddingRight = `${parseInt(initialPaddingRight, 10) + scrollbarWidth}px`;
23
- }
24
- disableAttempts += 1;
25
- return once(function enableBodyScroll() {
26
- disableAttempts -= 1;
27
- if (!disableAttempts) {
28
- document.body.style.overflow = initialOverflow;
29
- document.body.style.paddingRight = initialPaddingRight;
30
- }
31
- });
32
- }
@@ -1,17 +0,0 @@
1
- type Handler = () => void;
2
- type Options = {
3
- isEnabled: boolean;
4
- };
5
- /**
6
- * Invokes a given handler when the `Esc` key was pressed.
7
- * When multiple handlers are registered, only the last one will be invoked.
8
- * For example, this behavior can be used to close only top-level popover
9
- * or dialog.
10
- *
11
- * @param handler The key down handler.
12
- * @param options An object with hook options.
13
- * @param options.isEnabled A flag that determines whether to run
14
- * the passed handler or not.
15
- */
16
- export declare function useEscKeyDown(handler: Handler, options?: Options): void;
17
- export {};
@@ -1,51 +0,0 @@
1
- import { useEffect, useRef } from 'react';
2
- import { KeyboardKeys } from '../lib/keyboard-keys.js';
3
- const handlers = [];
4
- /**
5
- * Invokes a given handler when the `Esc` key was pressed.
6
- * When multiple handlers are registered, only the last one will be invoked.
7
- * For example, this behavior can be used to close only top-level popover
8
- * or dialog.
9
- *
10
- * @param handler The key down handler.
11
- * @param options An object with hook options.
12
- * @param options.isEnabled A flag that determines whether to run
13
- * the passed handler or not.
14
- */
15
- export function useEscKeyDown(handler, options = {
16
- isEnabled: true,
17
- }) {
18
- const handlerRef = useRef(handler);
19
- const isEnabled = options.isEnabled;
20
- useEffect(() => {
21
- handlerRef.current = handler;
22
- }, [handler]);
23
- useEffect(() => {
24
- if (!isEnabled) {
25
- return;
26
- }
27
- const handler = handlerRef.current;
28
- handlers.push(handler);
29
- const handleBodyKeyDown = (event) => {
30
- const eventHandler = handlers[handlers.length - 1];
31
- if (eventHandler && event.key === KeyboardKeys.Escape) {
32
- eventHandler();
33
- }
34
- };
35
- // Add only one global `body` key down handler.
36
- if (handlers.length === 1) {
37
- document.body.addEventListener('keydown', handleBodyKeyDown);
38
- }
39
- return () => {
40
- const index = handlers.indexOf(handler);
41
- if (index >= 0) {
42
- handlers.splice(index, 1);
43
- }
44
- // Remove the global `body` key down handler
45
- // if there are no active handlers.
46
- if (handlers.length === 0) {
47
- document.body.removeEventListener('keydown', handleBodyKeyDown);
48
- }
49
- };
50
- }, [isEnabled]);
51
- }
@@ -1,35 +0,0 @@
1
- export type TransitionParams = {
2
- animateFirstMount?: boolean;
3
- isShown: boolean;
4
- durationMs: number;
5
- /**
6
- * CSS class for the initial state of element.
7
- * This class defines the starting values of transition styles and
8
- * the transition duration and timing function.
9
- *
10
- * @example
11
- * .hidden {
12
- * opacity: 0;
13
- * transition: opacity 0.15s ease;
14
- * }
15
- */
16
- enterFrom: string;
17
- /**
18
- * CSS class for the target state of element.
19
- * This class defines the ending values of transition styles.
20
- *
21
- * @example
22
- * .visible {
23
- * opacity: 1;
24
- * }
25
- */
26
- enterTo: string;
27
- };
28
- export type TransitionState = {
29
- isMounted: boolean;
30
- className: string;
31
- };
32
- /**
33
- * @deprecated
34
- */
35
- export declare function useMountTransition({ animateFirstMount, isShown, durationMs, enterFrom, enterTo, }: TransitionParams): TransitionState;
@@ -1,39 +0,0 @@
1
- import { useEffect, useMemo, useRef, useState } from 'react';
2
- import { classNames } from '../lib/react-helpers.js';
3
- /**
4
- * @deprecated
5
- */
6
- export function useMountTransition({ animateFirstMount = false, isShown, durationMs, enterFrom, enterTo, }) {
7
- const [isMounted, setIsMounted] = useState(isShown);
8
- const [hasEnterToClass, setHasEnterToClass] = useState(false);
9
- const firstMount = useRef(true);
10
- const prefersReducedMotion = useMemo(() => window.matchMedia('(prefers-reduced-motion: reduce)'), []);
11
- const disableTransition = (prefersReducedMotion.matches
12
- || (!animateFirstMount && firstMount.current));
13
- if (disableTransition) {
14
- durationMs = 0;
15
- }
16
- useEffect(() => {
17
- if (!isShown) {
18
- firstMount.current = false;
19
- }
20
- }, [isShown]);
21
- useEffect(() => {
22
- let timeout;
23
- if (isShown) {
24
- setIsMounted(true);
25
- timeout = window.setTimeout(() => setHasEnterToClass(true));
26
- }
27
- else {
28
- setHasEnterToClass(false);
29
- timeout = window.setTimeout(() => setIsMounted(false), durationMs);
30
- }
31
- return () => window.clearTimeout(timeout);
32
- }, [isShown, durationMs]);
33
- return {
34
- isMounted,
35
- className: disableTransition
36
- ? ''
37
- : classNames(enterFrom, hasEnterToClass && enterTo),
38
- };
39
- }
@@ -1 +0,0 @@
1
- export declare function usePrefersReducedMotion(): boolean;
@@ -1,15 +0,0 @@
1
- import { useEffect, useMemo, useState } from 'react';
2
- export function usePrefersReducedMotion() {
3
- const media = useMemo(() => window.matchMedia('(prefers-reduced-motion)'), []);
4
- const [reduced, setReduced] = useState(media.matches);
5
- useEffect(() => {
6
- const handleChange = () => {
7
- setReduced(media.matches);
8
- };
9
- media.addEventListener('change', handleChange);
10
- return () => {
11
- media.removeEventListener('change', handleChange);
12
- };
13
- }, [media]);
14
- return reduced;
15
- }
@@ -1,16 +0,0 @@
1
- export declare function useShowTransition({ isOpen, enterDurationMs, leaveDurationMs, enter, enterFrom, enterTo, leave, leaveFrom, leaveTo, onEnterTransitionEnd: _onEnterTransitionEnd, onLeaveTransitionEnd: _onLeaveTransitionEnd, }: {
2
- isOpen: boolean;
3
- enterDurationMs: number;
4
- leaveDurationMs: number;
5
- enter?: string;
6
- enterFrom?: string;
7
- enterTo?: string;
8
- leave?: string;
9
- leaveFrom?: string;
10
- leaveTo?: string;
11
- onEnterTransitionEnd?: () => void;
12
- onLeaveTransitionEnd?: () => void;
13
- }): {
14
- shouldRender: boolean;
15
- transitionClassName: string;
16
- };
@@ -1,69 +0,0 @@
1
- import { useEffect, useRef, useState } from 'react';
2
- import { useCallbackRef } from './index.js';
3
- import { classNames, noop } from '../lib/index.js';
4
- import { usePrefersReducedMotion } from './use-prefers-reduced-motion.js';
5
- export function useShowTransition({ isOpen, enterDurationMs, leaveDurationMs, enter = 'enter', enterFrom = 'enter-from', enterTo = 'enter-to', leave = 'leave', leaveFrom = 'leave-from', leaveTo = 'leave-to', onEnterTransitionEnd: _onEnterTransitionEnd = noop, onLeaveTransitionEnd: _onLeaveTransitionEnd = noop, }) {
6
- const onEnterTransitionEnd = useCallbackRef(_onEnterTransitionEnd);
7
- const onLeaveTransitionEnd = useCallbackRef(_onLeaveTransitionEnd);
8
- const enterTimeoutRef = useRef(-1);
9
- const leaveTimeoutRef = useRef(-1);
10
- const prefersReducedMotion = usePrefersReducedMotion();
11
- const [shouldRender, setShouldRender] = useState(isOpen);
12
- const [transitionClasses, setTransitionClasses] = useState(isOpen
13
- ? [enter, enterTo]
14
- : [enter, enterFrom]);
15
- useEffect(() => {
16
- if (prefersReducedMotion) {
17
- return;
18
- }
19
- if (isOpen) {
20
- window.clearTimeout(leaveTimeoutRef.current);
21
- setShouldRender(true);
22
- return () => {
23
- window.clearTimeout(enterTimeoutRef.current);
24
- setTransitionClasses([leave, leaveFrom]);
25
- window.setTimeout(() => {
26
- setTransitionClasses([leave, leaveTo]);
27
- });
28
- leaveTimeoutRef.current = window.setTimeout(() => {
29
- setShouldRender(false);
30
- setTransitionClasses([enter, enterFrom]);
31
- onLeaveTransitionEnd();
32
- }, leaveDurationMs);
33
- };
34
- }
35
- }, [
36
- prefersReducedMotion,
37
- isOpen,
38
- enter,
39
- enterFrom,
40
- leave,
41
- leaveFrom,
42
- leaveTo,
43
- leaveDurationMs,
44
- onLeaveTransitionEnd,
45
- ]);
46
- useEffect(() => {
47
- if (prefersReducedMotion) {
48
- return;
49
- }
50
- if (shouldRender) {
51
- setTransitionClasses([enter, enterTo]);
52
- enterTimeoutRef.current = window.setTimeout(() => {
53
- setTransitionClasses([]);
54
- onEnterTransitionEnd();
55
- }, enterDurationMs);
56
- }
57
- }, [
58
- prefersReducedMotion,
59
- shouldRender,
60
- enter,
61
- enterTo,
62
- enterDurationMs,
63
- onEnterTransitionEnd,
64
- ]);
65
- return {
66
- shouldRender: isOpen || shouldRender,
67
- transitionClassName: prefersReducedMotion ? '' : classNames(...transitionClasses),
68
- };
69
- }
@@ -1,15 +0,0 @@
1
- export declare const KeyboardKeys: {
2
- ArrowUp: string;
3
- ArrowRight: string;
4
- ArrowDown: string;
5
- ArrowLeft: string;
6
- Tab: string;
7
- Home: string;
8
- End: string;
9
- PageUp: string;
10
- PageDown: string;
11
- Enter: string;
12
- Escape: string;
13
- Backspace: string;
14
- Space: string;
15
- };
@@ -1,15 +0,0 @@
1
- export const KeyboardKeys = {
2
- ArrowUp: 'ArrowUp',
3
- ArrowRight: 'ArrowRight',
4
- ArrowDown: 'ArrowDown',
5
- ArrowLeft: 'ArrowLeft',
6
- Tab: 'Tab',
7
- Home: 'Home',
8
- End: 'End',
9
- PageUp: 'PageUp',
10
- PageDown: 'PageDown',
11
- Enter: 'Enter',
12
- Escape: 'Escape',
13
- Backspace: 'Backspace',
14
- Space: ' ',
15
- };