@doist/reactist 28.7.3 → 29.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 (265) hide show
  1. package/CHANGELOG.md +1437 -0
  2. package/CODE_OF_CONDUCT.md +83 -0
  3. package/CONTRIBUTING.md +46 -0
  4. package/README.md +3 -5
  5. package/dist/reactist.cjs.development.js +460 -447
  6. package/dist/reactist.cjs.development.js.map +1 -1
  7. package/dist/reactist.cjs.production.min.js +1 -1
  8. package/dist/reactist.cjs.production.min.js.map +1 -1
  9. package/es/avatar/avatar.js +4 -4
  10. package/es/avatar/avatar.js.map +1 -1
  11. package/es/avatar/utils.js.map +1 -1
  12. package/es/banner/banner.js +3 -3
  13. package/es/banner/banner.js.map +1 -1
  14. package/es/base-field/base-field.js +15 -18
  15. package/es/base-field/base-field.js.map +1 -1
  16. package/es/box/box.js +3 -3
  17. package/es/box/box.js.map +1 -1
  18. package/es/button/button.js +1 -1
  19. package/es/button/button.js.map +1 -1
  20. package/es/checkbox-field/checkbox-field.js +1 -1
  21. package/es/checkbox-field/checkbox-field.js.map +1 -1
  22. package/es/checkbox-field/checkbox-icon.js +1 -1
  23. package/es/checkbox-field/checkbox-icon.js.map +1 -1
  24. package/es/checkbox-field/use-fork-ref.js.map +1 -1
  25. package/es/columns/columns.js +1 -1
  26. package/es/columns/columns.js.map +1 -1
  27. package/es/components/color-picker/color-picker.js +2 -2
  28. package/es/components/color-picker/color-picker.js.map +1 -1
  29. package/es/components/deprecated-button/deprecated-button.js +1 -1
  30. package/es/components/deprecated-button/deprecated-button.js.map +1 -1
  31. package/es/components/deprecated-dropdown/dropdown.js +4 -4
  32. package/es/components/deprecated-dropdown/dropdown.js.map +1 -1
  33. package/es/components/deprecated-input/input.js.map +1 -1
  34. package/es/components/deprecated-select/select.js +1 -1
  35. package/es/components/deprecated-select/select.js.map +1 -1
  36. package/es/components/key-capturer/key-capturer.js +46 -36
  37. package/es/components/key-capturer/key-capturer.js.map +1 -1
  38. package/es/components/keyboard-shortcut/keyboard-shortcut.js +1 -1
  39. package/es/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  40. package/es/components/progress-bar/progress-bar.js +1 -1
  41. package/es/components/progress-bar/progress-bar.js.map +1 -1
  42. package/es/components/time/time-utils.js +1 -1
  43. package/es/components/time/time-utils.js.map +1 -1
  44. package/es/components/time/time.js +4 -4
  45. package/es/components/time/time.js.map +1 -1
  46. package/es/divider/divider.js +1 -1
  47. package/es/divider/divider.js.map +1 -1
  48. package/es/heading/heading.js +1 -1
  49. package/es/heading/heading.js.map +1 -1
  50. package/es/hidden/hidden.js +2 -2
  51. package/es/hidden/hidden.js.map +1 -1
  52. package/es/hidden-visually/hidden-visually.js +1 -1
  53. package/es/hidden-visually/hidden-visually.js.map +1 -1
  54. package/es/icons/alert-icon.js +1 -1
  55. package/es/icons/alert-icon.js.map +1 -1
  56. package/es/icons/banner-icon.js +1 -1
  57. package/es/icons/banner-icon.js.map +1 -1
  58. package/es/index.js +5 -5
  59. package/es/inline/inline.js +1 -1
  60. package/es/inline/inline.js.map +1 -1
  61. package/es/loading/loading.js +1 -1
  62. package/es/loading/loading.js.map +1 -1
  63. package/es/menu/menu.js +2 -2
  64. package/es/menu/menu.js.map +1 -1
  65. package/es/modal/modal.js +22 -22
  66. package/es/modal/modal.js.map +1 -1
  67. package/es/modal/modal.module.css.js +1 -1
  68. package/es/notice/notice.js +1 -1
  69. package/es/notice/notice.js.map +1 -1
  70. package/es/password-field/password-field.js +2 -2
  71. package/es/prose/prose.js.map +1 -1
  72. package/es/select-field/select-field.js.map +1 -1
  73. package/es/select-field/select-field.module.css.js +1 -1
  74. package/es/spinner/spinner.js.map +1 -1
  75. package/es/stack/stack.js +2 -2
  76. package/es/stack/stack.js.map +1 -1
  77. package/es/switch-field/switch-field.js +2 -2
  78. package/es/switch-field/switch-field.js.map +1 -1
  79. package/es/tabs/tabs.js +4 -4
  80. package/es/tabs/tabs.js.map +1 -1
  81. package/es/text/text.js +1 -1
  82. package/es/text/text.js.map +1 -1
  83. package/es/text-area/text-area.js.map +1 -1
  84. package/es/text-field/text-field.js +1 -1
  85. package/es/text-field/text-field.js.map +1 -1
  86. package/es/text-field/text-field.module.css.js +1 -1
  87. package/es/text-link/text-link.js.map +1 -1
  88. package/es/toast/static-toast.js +1 -1
  89. package/es/toast/toast-animation.js +4 -4
  90. package/es/toast/toast-animation.js.map +1 -1
  91. package/es/toast/use-toasts.js +2 -2
  92. package/es/toast/use-toasts.js.map +1 -1
  93. package/es/tooltip/tooltip.js +2 -2
  94. package/es/tooltip/tooltip.js.map +1 -1
  95. package/es/utils/common-helpers.js +5 -0
  96. package/es/utils/common-helpers.js.map +1 -1
  97. package/es/utils/responsive-props.js +1 -1
  98. package/es/utils/responsive-props.js.map +1 -1
  99. package/lib/avatar/avatar.d.ts +1 -1
  100. package/lib/avatar/avatar.js +4 -4
  101. package/lib/avatar/avatar.js.map +1 -1
  102. package/lib/avatar/utils.d.ts +1 -1
  103. package/lib/avatar/utils.js.map +1 -1
  104. package/lib/banner/banner.d.ts +1 -1
  105. package/lib/banner/banner.js +3 -3
  106. package/lib/banner/banner.js.map +1 -1
  107. package/lib/banner/index.d.ts +1 -1
  108. package/lib/base-field/base-field.d.ts +1 -1
  109. package/lib/base-field/base-field.js +15 -18
  110. package/lib/base-field/base-field.js.map +1 -1
  111. package/lib/box/box.d.ts +2 -2
  112. package/lib/box/box.js +3 -3
  113. package/lib/box/box.js.map +1 -1
  114. package/lib/button/button.d.ts +3 -3
  115. package/lib/button/button.js +1 -1
  116. package/lib/button/button.js.map +1 -1
  117. package/lib/checkbox-field/checkbox-field.js +1 -1
  118. package/lib/checkbox-field/checkbox-field.js.map +1 -1
  119. package/lib/checkbox-field/checkbox-icon.js +1 -1
  120. package/lib/checkbox-field/checkbox-icon.js.map +1 -1
  121. package/lib/checkbox-field/use-fork-ref.d.ts +0 -1
  122. package/lib/checkbox-field/use-fork-ref.js.map +1 -1
  123. package/lib/columns/columns.d.ts +3 -3
  124. package/lib/columns/columns.js +1 -1
  125. package/lib/columns/columns.js.map +1 -1
  126. package/lib/components/color-picker/color-picker.d.ts +2 -2
  127. package/lib/components/color-picker/color-picker.js +2 -2
  128. package/lib/components/color-picker/color-picker.js.map +1 -1
  129. package/lib/components/color-picker/index.d.ts +1 -1
  130. package/lib/components/deprecated-button/deprecated-button.d.ts +4 -4
  131. package/lib/components/deprecated-button/deprecated-button.js +1 -1
  132. package/lib/components/deprecated-button/deprecated-button.js.map +1 -1
  133. package/lib/components/deprecated-dropdown/dropdown.d.ts +1 -1
  134. package/lib/components/deprecated-dropdown/dropdown.js +4 -4
  135. package/lib/components/deprecated-dropdown/dropdown.js.map +1 -1
  136. package/lib/components/deprecated-input/input.d.ts +1 -1
  137. package/lib/components/deprecated-input/input.js.map +1 -1
  138. package/lib/components/deprecated-select/select.d.ts +1 -1
  139. package/lib/components/deprecated-select/select.js +1 -1
  140. package/lib/components/deprecated-select/select.js.map +1 -1
  141. package/lib/components/key-capturer/key-capturer.d.ts +1 -1
  142. package/lib/components/key-capturer/key-capturer.js +46 -36
  143. package/lib/components/key-capturer/key-capturer.js.map +1 -1
  144. package/lib/components/keyboard-shortcut/keyboard-shortcut.d.ts +1 -1
  145. package/lib/components/keyboard-shortcut/keyboard-shortcut.js +1 -1
  146. package/lib/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  147. package/lib/components/progress-bar/progress-bar.js +1 -1
  148. package/lib/components/progress-bar/progress-bar.js.map +1 -1
  149. package/lib/components/time/time-utils.d.ts +2 -1
  150. package/lib/components/time/time-utils.js +1 -1
  151. package/lib/components/time/time-utils.js.map +1 -1
  152. package/lib/components/time/time.d.ts +2 -2
  153. package/lib/components/time/time.js +4 -4
  154. package/lib/components/time/time.js.map +1 -1
  155. package/lib/divider/divider.js +1 -1
  156. package/lib/divider/divider.js.map +1 -1
  157. package/lib/heading/heading.d.ts +7 -7
  158. package/lib/heading/heading.js +1 -1
  159. package/lib/heading/heading.js.map +1 -1
  160. package/lib/hidden/hidden.js +2 -2
  161. package/lib/hidden/hidden.js.map +1 -1
  162. package/lib/hidden-visually/hidden-visually.js +1 -1
  163. package/lib/hidden-visually/hidden-visually.js.map +1 -1
  164. package/lib/icons/alert-icon.js +1 -1
  165. package/lib/icons/alert-icon.js.map +1 -1
  166. package/lib/icons/banner-icon.js +1 -1
  167. package/lib/icons/banner-icon.js.map +1 -1
  168. package/lib/index.d.ts +5 -5
  169. package/lib/index.js +16 -16
  170. package/lib/inline/inline.d.ts +3 -3
  171. package/lib/inline/inline.js +1 -1
  172. package/lib/inline/inline.js.map +1 -1
  173. package/lib/loading/loading.js +1 -1
  174. package/lib/loading/loading.js.map +1 -1
  175. package/lib/menu/index.d.ts +2 -2
  176. package/lib/menu/menu.d.ts +4 -4
  177. package/lib/menu/menu.js +2 -2
  178. package/lib/menu/menu.js.map +1 -1
  179. package/lib/modal/modal-stories-components.d.ts +3 -3
  180. package/lib/modal/modal.d.ts +4 -4
  181. package/lib/modal/modal.js +23 -23
  182. package/lib/modal/modal.js.map +1 -1
  183. package/lib/modal/modal.module.css.js +1 -1
  184. package/lib/notice/notice.js +1 -1
  185. package/lib/notice/notice.js.map +1 -1
  186. package/lib/password-field/password-field.d.ts +1 -1
  187. package/lib/password-field/password-field.js +2 -2
  188. package/lib/prose/index.d.ts +1 -1
  189. package/lib/prose/prose.js.map +1 -1
  190. package/lib/select-field/select-field.d.ts +1 -1
  191. package/lib/select-field/select-field.js.map +1 -1
  192. package/lib/select-field/select-field.module.css.js +1 -1
  193. package/lib/spinner/spinner.js.map +1 -1
  194. package/lib/stack/stack.d.ts +2 -2
  195. package/lib/stack/stack.js +2 -2
  196. package/lib/stack/stack.js.map +1 -1
  197. package/lib/switch-field/switch-field.d.ts +1 -1
  198. package/lib/switch-field/switch-field.js +2 -2
  199. package/lib/switch-field/switch-field.js.map +1 -1
  200. package/lib/tabs/tabs.d.ts +2 -2
  201. package/lib/tabs/tabs.js +4 -4
  202. package/lib/tabs/tabs.js.map +1 -1
  203. package/lib/text/text.d.ts +1 -1
  204. package/lib/text/text.js +1 -1
  205. package/lib/text/text.js.map +1 -1
  206. package/lib/text-area/text-area.d.ts +1 -1
  207. package/lib/text-area/text-area.js.map +1 -1
  208. package/lib/text-field/text-field.d.ts +1 -2
  209. package/lib/text-field/text-field.js +1 -1
  210. package/lib/text-field/text-field.js.map +1 -1
  211. package/lib/text-field/text-field.module.css.js +1 -1
  212. package/lib/text-link/text-link.js.map +1 -1
  213. package/lib/toast/index.d.ts +2 -2
  214. package/lib/toast/static-toast.d.ts +1 -1
  215. package/lib/toast/static-toast.js +1 -1
  216. package/lib/toast/toast-animation.js +4 -4
  217. package/lib/toast/toast-animation.js.map +1 -1
  218. package/lib/toast/use-toasts.d.ts +1 -1
  219. package/lib/toast/use-toasts.js +2 -2
  220. package/lib/toast/use-toasts.js.map +1 -1
  221. package/lib/tooltip/index.d.ts +1 -1
  222. package/lib/tooltip/tooltip.d.ts +1 -1
  223. package/lib/tooltip/tooltip.js +2 -2
  224. package/lib/tooltip/tooltip.js.map +1 -1
  225. package/lib/utils/common-helpers.d.ts +3 -0
  226. package/lib/utils/common-helpers.js +5 -0
  227. package/lib/utils/common-helpers.js.map +1 -1
  228. package/lib/utils/responsive-props.d.ts +1 -1
  229. package/lib/utils/responsive-props.js +1 -1
  230. package/lib/utils/responsive-props.js.map +1 -1
  231. package/lib/utils/storybook-helper.d.ts +2 -2
  232. package/lib/utils/test-helpers.d.ts +3 -3
  233. package/package.json +37 -22
  234. package/styles/avatar.css +3 -3
  235. package/styles/badge.css +2 -2
  236. package/styles/banner.css +4 -4
  237. package/styles/base-field.css +6 -6
  238. package/styles/box.css +3 -3
  239. package/styles/button.css +2 -2
  240. package/styles/checkbox-field.css +2 -2
  241. package/styles/columns.css +2 -2
  242. package/styles/divider.css +2 -2
  243. package/styles/heading.css +2 -2
  244. package/styles/hidden-visually.css +2 -2
  245. package/styles/hidden.css +2 -2
  246. package/styles/index.css +5 -5
  247. package/styles/loading.css +2 -2
  248. package/styles/modal.css +5 -5
  249. package/styles/modal.module.css.css +1 -1
  250. package/styles/notice.css +2 -2
  251. package/styles/password-field.css +8 -8
  252. package/styles/prose.css +2 -2
  253. package/styles/reactist.css +8 -8
  254. package/styles/select-field.css +6 -6
  255. package/styles/select-field.module.css.css +1 -1
  256. package/styles/static-toast.css +2 -2
  257. package/styles/switch-field.css +6 -6
  258. package/styles/tabs.css +2 -2
  259. package/styles/text-area.css +5 -5
  260. package/styles/text-field.css +6 -6
  261. package/styles/text-field.module.css.css +1 -1
  262. package/styles/text-link.css +2 -2
  263. package/styles/text.css +2 -2
  264. package/styles/tooltip.css +2 -2
  265. package/styles/use-toasts.css +2 -2
package/CHANGELOG.md ADDED
@@ -0,0 +1,1437 @@
1
+ # Changelog
2
+
3
+ ## [29.0.0](https://github.com/Doist/reactist/compare/v28.7.4...v29.0.0) (2025-11-04)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * Update Ariakit to 0.4.19 ([#981](https://github.com/Doist/reactist/issues/981))
9
+
10
+ ### 🚀 Features
11
+
12
+ * Update Ariakit to 0.4.19 ([#981](https://github.com/Doist/reactist/issues/981)) ([0a521a9](https://github.com/Doist/reactist/commit/0a521a90a5fa3740992defcd68465278d54992a1))
13
+
14
+
15
+ ### 🧰 Maintenance
16
+
17
+ * Bump eslint-related dependencies and fix errors ([#982](https://github.com/Doist/reactist/issues/982)) ([67d7d0d](https://github.com/Doist/reactist/commit/67d7d0d604309b550bd51263064ffe2f2883f4df))
18
+ * Update TypeScript to 5.9 ([#980](https://github.com/Doist/reactist/issues/980)) ([389931a](https://github.com/Doist/reactist/commit/389931ad3080241b5fbb5c456be776ce26ea3da7))
19
+
20
+ ## [28.7.4](https://github.com/Doist/reactist/compare/v28.7.3...v28.7.4) (2025-10-31)
21
+
22
+ ### 🧰 Maintenance
23
+
24
+ - Enable trusted publishing and npm provenance ([#975](https://github.com/Doist/reactist/issues/975)) ([b3b1bcc](https://github.com/Doist/reactist/commit/b3b1bcc65cf15baa7f8516cbea45ce5f7fdaa30e))
25
+
26
+ ## [28.7.3](https://github.com/Doist/reactist/compare/v28.7.2...v28.7.3) (2025-10-31)
27
+
28
+ ### 🧰 Maintenance
29
+
30
+ - Migrate from tsdx to Rollup for modern build tooling ([#973](https://github.com/Doist/reactist/issues/973)) ([45b3275](https://github.com/Doist/reactist/commit/45b3275f87e29c9e2506f3871c90824ee4fb49e2))
31
+
32
+ ## [28.7.2](https://github.com/Doist/reactist/compare/v28.7.1...v28.7.2) (2025-10-24)
33
+
34
+ ### 🧰 Maintenance
35
+
36
+ - Temporarily disable npm trusted publishing until we can upgrade Node.js ([#971](https://github.com/Doist/reactist/issues/971)) ([25ca6e9](https://github.com/Doist/reactist/commit/25ca6e91920c6d6372d3edf4ec47a92185b64bf5))
37
+
38
+ ## [28.7.1](https://github.com/Doist/reactist/compare/v28.7.0...v28.7.1) (2025-10-24)
39
+
40
+ ### 🧰 Maintenance
41
+
42
+ - Enable trusted publishing and npm provenance ([#968](https://github.com/Doist/reactist/issues/968)) ([0c33d50](https://github.com/Doist/reactist/commit/0c33d50a85e63a617b84cac009d9cae3f7095948))
43
+
44
+ ## [28.7.0](https://github.com/Doist/reactist/compare/v28.6.0...v28.7.0) (2025-10-16)
45
+
46
+ ### 🚀 Features
47
+
48
+ - **banner:** Allow action prop to accept ReactNode in addition to Action object ([#964](https://github.com/Doist/reactist/issues/964)) ([19625b3](https://github.com/Doist/reactist/commit/19625b3e28a14e2c38960325edfeb13aace0e2fe))
49
+
50
+ ## [28.6.0](https://github.com/Doist/reactist/compare/v28.5.4...v28.6.0) (2025-09-16)
51
+
52
+ ### 🚀 Features
53
+
54
+ - **tooltip:** Expose tooltip store via `forwardRef` for imperative control ([#960](https://github.com/Doist/reactist/issues/960)) ([20628ea](https://github.com/Doist/reactist/commit/20628eaed7bbbb362fd4a2d56167649dbc33c5c9))
55
+
56
+ ## [28.5.4](https://github.com/Doist/reactist/compare/v28.5.3...v28.5.4) (2025-09-16)
57
+
58
+ ### 🐛 Bug Fixes
59
+
60
+ - Prevent a controlled TextArea from expanding when autoExpand is false ([#947](https://github.com/Doist/reactist/issues/947)) ([c5a0eee](https://github.com/Doist/reactist/commit/c5a0eee54297667eff1745021a44023558b2bf48))
61
+
62
+ ## [28.5.3](https://github.com/Doist/reactist/compare/v28.5.2...v28.5.3) (2025-09-08)
63
+
64
+ ### 🐛 Bug Fixes
65
+
66
+ - Smaller loader in `<Button>` component ([#945](https://github.com/Doist/reactist/issues/945)) ([01cad54](https://github.com/Doist/reactist/commit/01cad544c4bfba998a4bbd4349e7be21eb7c1343))
67
+
68
+ ## [28.5.2](https://github.com/Doist/reactist/compare/v28.5.1...v28.5.2) (2025-08-12)
69
+
70
+ ### 🧰 Maintenance
71
+
72
+ - replace LESS styles with CSS modules for ProgressBar component ([#941](https://github.com/Doist/reactist/issues/941)) ([6097154](https://github.com/Doist/reactist/commit/6097154497af842bd8331aa2f8408e980f7378a7))
73
+
74
+ ## [28.5.1](https://github.com/Doist/reactist/compare/v28.5.0...v28.5.1) (2025-08-12)
75
+
76
+ ### 🐛 Bug Fixes
77
+
78
+ - Enable banner with an Image to use container full width (with CSS vars) ([#939](https://github.com/Doist/reactist/issues/939)) ([2bf931c](https://github.com/Doist/reactist/commit/2bf931ca5c4ba5b6614708c67525791fd4d88234))
79
+
80
+ ## [28.5.0](https://github.com/Doist/reactist/compare/v28.4.0...v28.5.0) (2025-08-05)
81
+
82
+ ### 🚀 Features
83
+
84
+ - implement overlay scroll functionality in Box component with custom scrollbar styles ([#937](https://github.com/Doist/reactist/issues/937)) ([ace2ef0](https://github.com/Doist/reactist/commit/ace2ef0207ec25d9df2ee07091fe5fc7aec47130))
85
+
86
+ ### 🧰 Maintenance
87
+
88
+ - **deps:** bump pbkdf2 from 3.0.17 to 3.1.3 ([#934](https://github.com/Doist/reactist/issues/934)) ([fa43bc8](https://github.com/Doist/reactist/commit/fa43bc81c119995e7d851271a59ddea46425fc7c))
89
+
90
+ ## [28.4.0](https://github.com/Doist/reactist/compare/v28.3.2...v28.4.0) (2025-06-23)
91
+
92
+ ### 🚀 Features
93
+
94
+ - Add `dividers` prop to `Modal` to customize the weight for all dividers ([#932](https://github.com/Doist/reactist/issues/932)) ([d684e8e](https://github.com/Doist/reactist/commit/d684e8ec3d679494ab9e33232c6968f1952152ed))
95
+
96
+ ### 🐛 Bug Fixes
97
+
98
+ - Update `BaseField` styling to match the form field spec ([#931](https://github.com/Doist/reactist/issues/931)) ([54d734f](https://github.com/Doist/reactist/commit/54d734f58503e125d62c322c12588605615e1eed))
99
+
100
+ ## [28.3.2](https://github.com/Doist/reactist/compare/v28.3.1...v28.3.2) (2025-06-16)
101
+
102
+ ### 🐛 Bug Fixes
103
+
104
+ - **Box:** Inherit `font-size` to prevent unintended typography overrides ([#928](https://github.com/Doist/reactist/issues/928)) ([1c2ea7a](https://github.com/Doist/reactist/commit/1c2ea7a6d189f1134efe9c8a06cbe403b99b08b5))
105
+
106
+ ## [28.3.1](https://github.com/Doist/reactist/compare/v28.3.0...v28.3.1) (2025-05-27)
107
+
108
+ ### 🐛 Bug Fixes
109
+
110
+ - **base-field:** Don't unnecessarily render container below BaseField children ([#926](https://github.com/Doist/reactist/issues/926)) ([5e5bf39](https://github.com/Doist/reactist/commit/5e5bf39ca994e6861c26e242928add2ff0c2a2f5))
111
+
112
+ ## [28.3.0](https://github.com/Doist/reactist/compare/v28.2.2...v28.3.0) (2025-05-27)
113
+
114
+ ### 🚀 Features
115
+
116
+ - **base-field:** Add CSS props for customizing label line-height and padding-bottom ([#925](https://github.com/Doist/reactist/issues/925)) ([12e99fd](https://github.com/Doist/reactist/commit/12e99fd673107c390952a5d375f692226ff4b5d9))
117
+
118
+ ### 🧰 Maintenance
119
+
120
+ - Use approved versions of actions ([#923](https://github.com/Doist/reactist/issues/923)) ([680cac1](https://github.com/Doist/reactist/commit/680cac104b2e71835387c629b539681acb1ce54d))
121
+
122
+ ## [28.2.2](https://github.com/Doist/reactist/compare/v28.2.1...v28.2.2) (2025-05-20)
123
+
124
+ ### 🧰 Maintenance
125
+
126
+ - **deps:** bump terser from 4.7.0 to 4.8.1 ([#674](https://github.com/Doist/reactist/issues/674)) ([eb7797c](https://github.com/Doist/reactist/commit/eb7797c48aade80004af352945cf3f02d4078f91))
127
+
128
+ ## [28.2.1](https://github.com/Doist/reactist/compare/v28.2.0...v28.2.1) (2025-05-09)
129
+
130
+ ### 🐛 Bug Fixes
131
+
132
+ - Toasts can be auto-dismissed when concurrent mode is enabled ([#918](https://github.com/Doist/reactist/issues/918)) ([e10ef2a](https://github.com/Doist/reactist/commit/e10ef2a07d6fb95c80388c15c2eff50abaf25a52))
133
+
134
+ ## [28.2.0](https://github.com/Doist/reactist/compare/v28.1.2...v28.2.0) (2025-05-05)
135
+
136
+ ### 🚀 Features
137
+
138
+ - Expose closeToast in useToasts hook action object ([#914](https://github.com/Doist/reactist/issues/914)) ([7dad313](https://github.com/Doist/reactist/commit/7dad31302e314a6c73ad85e50b2a8bb947b39f5a))
139
+
140
+ ## [28.1.2](https://github.com/Doist/reactist/compare/v28.1.1...v28.1.2) (2025-04-30)
141
+
142
+ ### 🐛 Bug Fixes
143
+
144
+ - fix text area auto-expand when controlled ([#912](https://github.com/Doist/reactist/issues/912)) ([7d33744](https://github.com/Doist/reactist/commit/7d33744f6f0d05a739bd8a98a01ff055f21d121c))
145
+
146
+ ## [28.1.1](https://github.com/Doist/reactist/compare/v28.1.0...v28.1.1) (2025-04-22)
147
+
148
+ ### 🐛 Bug Fixes
149
+
150
+ - **Tabs:** Add resize observer for dynamic tab selection adjustments ([#909](https://github.com/Doist/reactist/issues/909)) ([1c0e07c](https://github.com/Doist/reactist/commit/1c0e07c78d33faa442e44233ecc961533a9b1b25))
151
+
152
+ ## [28.1.0](https://github.com/Doist/reactist/compare/v28.0.0...v28.1.0) (2025-04-17)
153
+
154
+ ### 🚀 Features
155
+
156
+ - Support tab font customization and fix hover style on disabled tabs ([#907](https://github.com/Doist/reactist/issues/907)) ([dc50f5b](https://github.com/Doist/reactist/commit/dc50f5b268ee5b1c322c7fc0011e36bbffba2712))
157
+
158
+ ## [28.0.0](https://github.com/Doist/reactist/compare/v27.5.0...v28.0.0) (2025-04-17)
159
+
160
+ ### ⚠ BREAKING CHANGES
161
+
162
+ - **Tabs:** Add support for additional customization settings ([#903](https://github.com/Doist/reactist/issues/903))
163
+
164
+ ### 🚀 Features
165
+
166
+ - **Tabs:** Add support for additional customization settings ([#903](https://github.com/Doist/reactist/issues/903)) ([7f60d81](https://github.com/Doist/reactist/commit/7f60d81ed41b1b94a3f0d36501eb769258cfa775))
167
+
168
+ ## [27.5.0](https://github.com/Doist/reactist/compare/v27.4.0...v27.5.0) (2025-03-12)
169
+
170
+ ### 🚀 Features
171
+
172
+ - Allow positional placement of `endSlot` in `TextField` ([#899](https://github.com/Doist/reactist/issues/899)) ([abb4520](https://github.com/Doist/reactist/commit/abb4520b0688cf462d556d30d49ef164fad20bf4))
173
+
174
+ ## [27.4.0](https://github.com/Doist/reactist/compare/v27.3.6...v27.4.0) (2025-02-19)
175
+
176
+ ### 🚀 Features
177
+
178
+ - **TextLink:** Add color and underline styling options ([#897](https://github.com/Doist/reactist/issues/897)) ([03017a8](https://github.com/Doist/reactist/commit/03017a86c17e43fda2e5438a3a32a8cd87cc8ff6))
179
+
180
+ ## [27.3.6](https://github.com/Doist/reactist/compare/v27.3.5...v27.3.6) (2025-02-05)
181
+
182
+ ### 🧰 Maintenance
183
+
184
+ - bump deploy-pages action to v4 ([#895](https://github.com/Doist/reactist/issues/895)) ([98e68f1](https://github.com/Doist/reactist/commit/98e68f1e03bdae3642ae19f606b4a8d3b597efef))
185
+
186
+ ## [27.3.5](https://github.com/Doist/reactist/compare/v27.3.4...v27.3.5) (2025-02-05)
187
+
188
+ ### 🧰 Maintenance
189
+
190
+ - allow publish workflow to run from workflow_dispatch event ([#894](https://github.com/Doist/reactist/issues/894)) ([4204756](https://github.com/Doist/reactist/commit/4204756505e4f9c2e679e69b9f3872251a9077d7))
191
+ - fix version of upload-pages-artifact action ([#892](https://github.com/Doist/reactist/issues/892)) ([d9dba34](https://github.com/Doist/reactist/commit/d9dba34f2d66ad283372880e7b957b3384bcf98e))
192
+
193
+ ## [27.3.4](https://github.com/Doist/reactist/compare/v27.3.3...v27.3.4) (2025-02-05)
194
+
195
+ ### 🧰 Maintenance
196
+
197
+ - add permissions to dispatch workflows in release-please ([#890](https://github.com/Doist/reactist/issues/890)) ([6509b01](https://github.com/Doist/reactist/commit/6509b01fdb5262b30019be598569eb9e8a8b01cf))
198
+
199
+ ## [27.3.3](https://github.com/Doist/reactist/compare/v27.3.2...v27.3.3) (2025-02-05)
200
+
201
+ ### 🧰 Maintenance
202
+
203
+ - debug GH API 404 error ([#888](https://github.com/Doist/reactist/issues/888)) ([690676d](https://github.com/Doist/reactist/commit/690676d58db401f88ace4a4de8e1d8d67264355c))
204
+
205
+ ## [27.3.2](https://github.com/Doist/reactist/compare/v27.3.1...v27.3.2) (2025-02-05)
206
+
207
+ ### 🧰 Maintenance
208
+
209
+ - enhance release workflow with automatic deployment triggers ([#886](https://github.com/Doist/reactist/issues/886)) ([d32d336](https://github.com/Doist/reactist/commit/d32d336d3657553dc2defe140b0002acdcbcea6c))
210
+
211
+ ## [27.3.1](https://github.com/Doist/reactist/compare/v27.3.0...v27.3.1) (2025-02-05)
212
+
213
+ ### 🧰 Maintenance
214
+
215
+ - update Storybook deployment action to v4 ([#885](https://github.com/Doist/reactist/issues/885)) ([e8d57f3](https://github.com/Doist/reactist/commit/e8d57f3697c78e35f0304db69f10b42a7d5f5a4a))
216
+
217
+ ## [27.3.0](https://github.com/Doist/reactist/compare/v27.2.2...v27.3.0) (2025-01-31)
218
+
219
+ ### 🚀 Features
220
+
221
+ - **TextField:** add support for customizable character count position ([#883](https://github.com/Doist/reactist/issues/883)) ([7359aa4](https://github.com/Doist/reactist/commit/7359aa424d17d2a10ccd4d241e2e8ca53d3bab8d))
222
+
223
+ ### 🐛 Bug Fixes
224
+
225
+ - **TextField:** adjust character count threshold to zero ([#882](https://github.com/Doist/reactist/issues/882)) ([6292d06](https://github.com/Doist/reactist/commit/6292d0677fdfb2c703613df24d73f01e96d21e6e))
226
+
227
+ ### 🧰 Maintenance
228
+
229
+ - deploy storybook only when publishing package ([#878](https://github.com/Doist/reactist/issues/878)) ([1668f8c](https://github.com/Doist/reactist/commit/1668f8c1797232998cc94b26d4435c95b6adda80))
230
+ - fix dependabot config syntax ([#879](https://github.com/Doist/reactist/issues/879)) ([89ddb9a](https://github.com/Doist/reactist/commit/89ddb9ae01c4680add19574ebaa8f1e987c00a8d))
231
+
232
+ ## [27.2.2](https://github.com/Doist/reactist/compare/v27.2.1...v27.2.2) (2025-01-22)
233
+
234
+ ### 🧰 Maintenance
235
+
236
+ - change dependabot commit prefix ([#871](https://github.com/Doist/reactist/issues/871)) ([f2e786f](https://github.com/Doist/reactist/commit/f2e786f7255323395090ba4605b19b2c09e11942))
237
+ - **deps:** bump decode-uri-component from 0.2.0 to 0.2.2 ([#721](https://github.com/Doist/reactist/issues/721)) ([e4e0c3f](https://github.com/Doist/reactist/commit/e4e0c3f3ef8eebc20160209c88958cd1d82ed7bd))
238
+ - **deps:** bump loader-utils from 1.4.0 to 1.4.2 ([#713](https://github.com/Doist/reactist/issues/713)) ([c21c8a8](https://github.com/Doist/reactist/commit/c21c8a8adbfd514ebeaa304a081b336aff515efb))
239
+ - **deps:** bump shelljs from 0.8.4 to 0.8.5 ([#627](https://github.com/Doist/reactist/issues/627)) ([436747f](https://github.com/Doist/reactist/commit/436747f08827aa4455c42482a9234ebb50d19914))
240
+ - implement release-please to automate release creation ([#863](https://github.com/Doist/reactist/issues/863)) ([7f5f754](https://github.com/Doist/reactist/commit/7f5f7549cf6f0541f3317fb41db42d7df09d48aa))
241
+ - include all changes in release creation ([#870](https://github.com/Doist/reactist/issues/870)) ([da74067](https://github.com/Doist/reactist/commit/da74067f954bfd6ea3fae8bd2ba236813b2682dd))
242
+ - migrate to latest release-please action ([#874](https://github.com/Doist/reactist/issues/874)) ([7ab6aec](https://github.com/Doist/reactist/commit/7ab6aeca921832d76bf95551840ecba6b53d6681))
243
+ - set target-branch to release-please action ([#872](https://github.com/Doist/reactist/issues/872)) ([dde0fff](https://github.com/Doist/reactist/commit/dde0fff1288d24f44edf82dd799419685de6a4c7))
244
+ - unify existing changelog content format ([#876](https://github.com/Doist/reactist/issues/876)) ([9cc1be2](https://github.com/Doist/reactist/commit/9cc1be2c6e583834e62c6126f2b8a351a384f7db))
245
+
246
+ Reactist follows [semantic versioning](https://semver.org/) and doesn't introduce breaking changes (API-wise) in minor or patch releases. However, the appearance of a component might change in a minor or patch release so keep an eye on redesigns and make sure your app still looks and feels like you expect it.
247
+
248
+ **27.2.1:**
249
+
250
+ - [Fix] ensure TextLink styles are applied to nested elements [#860](https://github.com/Doist/reactist/pull/860)
251
+
252
+ **27.2.0:**
253
+
254
+ - [Feat] Document `TextLink` component in Storybook and change default styling.
255
+
256
+ **27.1.0:**
257
+
258
+ - [Feat] Expose CSS variables for customizng the icon color of the `Banner` component system types.
259
+
260
+ **27.0.1:**
261
+
262
+ - [Docs] Document the `maxLength` prop for the `TextField` component.
263
+
264
+ **27.0.0:**
265
+
266
+ - [BREAKING] Remove `Alert` component.
267
+ - [BREAKING] Update `Banner` UI, merging `Alert` use cases.
268
+
269
+ **26.2.5:**
270
+
271
+ - [Fix] Add top and bottom paddings to the `Tab` component.
272
+ - [Fix] `SubMenu` will only render at the bottom when there isn't enough space in either side of the parent menu.
273
+
274
+ **26.2.4:**
275
+
276
+ - [Fix] The `Prose` component's horizontal rule color is now properly set to the primary divider color.
277
+
278
+ **26.2.3:**
279
+
280
+ - [Fix] The `Tab` component's line height is now properly set to 21px.
281
+
282
+ **26.2.2:**
283
+
284
+ - [Fix] Vertically align the `Notice` component's icon with the first line of text
285
+
286
+ **26.2.1:**
287
+
288
+ - [Fix] Export `TooltipProvider` as a component
289
+
290
+ **26.2.0:**
291
+
292
+ - [Feat] Add `TooltipContext` to allow `showTimeout` and `hideTimeout` to be set globally
293
+
294
+ **v26.1.0:**
295
+
296
+ - [Feat] Expose `showTimeout` and `hideTimeout` props for `Tooltip`
297
+ - [Fix] The center alignment between the `Alert` component's icon and message is now more accurate when the message is only one-line long.
298
+ - [Fix] Render submenus at the bottom when there isn't enough space
299
+
300
+ **v26.0.0:**
301
+
302
+ - [BREAKING] Remove unused `secondaryLabel` from `TexTfield`, `PasswordField`, `SelectField`, `TextArea`, and `SwitchField`.
303
+ - [BREAKING] Remove `hint` from from `Textfield`, `PasswordField`, `SelectField`, `TextArea`, and `SwitchField`.
304
+ - Please use `message` instead.
305
+ - [Feat] Update read only style for `TextField` and `TextArea` when `readOnly` is `true`.
306
+ - [Feat] Add `disableResize` option to `TextArea` to disallow manual resizing.
307
+ - [Feat] Add character count (with limit) to `TextField` and `TextArea`.
308
+ - Will show a character count indicator below the field when `maxLength` is set.
309
+ - [Feat] Add `endSlot` support to `PasswordField`.
310
+ - [Chore] Deprecate `auxiliaryLabel` from `TexTfield`, `PasswordField`, `SelectField`, and `TextArea`.
311
+
312
+ **v25.2.0:**
313
+
314
+ - [Feat] Add `ref` support to `ModalBody` component
315
+
316
+ **v25.1.1:**
317
+
318
+ - [Fix] Restrict focus locking in the `Modal` component to its containing document/iframe.
319
+
320
+ **v25.1.0:**
321
+
322
+ - [Feat] Add `xsmall` size to the `Modal` component
323
+
324
+ **v25.0.0:**
325
+
326
+ - [BREAKING] Upgrade Ariakit from legacy package to the newer @ariakit/react
327
+ - [BREAKING] Remove unsupported `onPointerEnterCapture` and `onPointerLeaveCapture` props from `heading`-, `input`-, and `textarea`-based components.
328
+ - [BREAKING] Removed the `ButtonLink` component.
329
+ - [BREAKING] `Button` no longer accepts props that render it as an icon-only button.
330
+ - [BREAKING] Use an explicit `render` prop for composition, instead of the `as` prop (in the menu, modal, tabs, toasts and tooltip components).
331
+ - [BREAKING] `TabPanel`'s prop `render` is renamed to `renderMode`.
332
+ - [Feat] Introduce a new `IconButton` component.
333
+ - [Feat] The `Button` and `IconButton` component can be rendered as a link using the `render={<Link to="…" />} prop.
334
+
335
+ **v25.0.0-beta.3:**
336
+
337
+ - [Fix] Allow more props to be forwarded to the `Tab` component.
338
+ - [Fix] Properly fix CSS build in tsdx config.
339
+ - [Chore] Upgrade to `@ariakit/react@0.4.5`.
340
+
341
+ **v25.0.0-beta.2:**
342
+
343
+ - [Fix] Pass `onClick` to the `Tab` component.
344
+
345
+ **v25.0.0-beta.1:**
346
+
347
+ - [BREAKING] Use an explicit `render` prop for composition, instead of the `as` prop (in the menu, modal, tabs, toasts and tooltip components).
348
+ - [BREAKING] `TabPanel`'s prop `render` is renamed to `renderMode`.
349
+
350
+ **v25.0.0-beta:**
351
+
352
+ - [BREAKING] Removed the `ButtonLink` component.
353
+ - [BREAKING] `Button` no longer accepts props that render it as an icon-only button.
354
+ - [Feat] Introduce a new `IconButton` component.
355
+ - [Feat] The `Button` and `IconButton` component can be rendered as a link using the `render={<Link to="…" />} prop.
356
+
357
+ **v24.2.0-beta:**
358
+
359
+ - [Fix] Include changes from [v23.3.0](#v2330) in the beta release
360
+
361
+ **v24.1.5-beta:**
362
+
363
+ - [Fix] Include changes from [v23.2.2](#v2322) in the beta release
364
+
365
+ **v24.1.4-beta:**
366
+
367
+ - [Fix] Include changes from [v23.2.1](#v2321) in the beta release
368
+
369
+ **v24.1.3-beta:**
370
+
371
+ - [Fix] Remove unsupported `onPointerEnterCapture` and `onPointerLeaveCapture` props from `heading`-, `input`-, and `textarea`-based components.
372
+ - Normally, this would be considered a breaking change, but the v24 version is still pre-release and already contains breaking changes.
373
+
374
+ **v24.1.2-beta:**
375
+
376
+ - [Fix] Reset anchor rect after context menu is closed.
377
+ - [Fix] Revert earlier attempt to auto-close menus when they lose focus.
378
+
379
+ **v24.1.1-beta:**
380
+
381
+ - [Fix] It was possible to leave a tooltip in a state in which it remained visible all the time. This release fixes the issue.
382
+ - [Fix] Auto-close menus when they lose focus to elements other than their own content or their sub-menus.
383
+
384
+ **v24.1.0-beta:**
385
+
386
+ - [Feat] Include changes from [v23.2.0](#v2320) in the beta release
387
+
388
+ **v24.0.0-beta:**
389
+
390
+ - [BREAKING] Upgrade Ariakit from legacy package to the newer @ariakit/react
391
+
392
+ **v23.3.0:**
393
+
394
+ - [Feat] Add `warning` as a `tone` option for `Badge`.
395
+
396
+ **v23.2.2:**
397
+
398
+ - [Fix] Revert "Adjust modal alignment to the middle of the viewport at `800px` breakpoint for improved UX". Turns out that this is not something that we want to do.
399
+
400
+ **v23.2.1:**
401
+
402
+ - [Fix] Adjust modal alignment to the middle of the viewport at `800px` breakpoint for improved UX.
403
+
404
+ **v23.2.0:**
405
+
406
+ - [Feat] Add `medium` as a `weight` option for `Header`.
407
+
408
+ **v23.1.0:**
409
+
410
+ - [Feat] Add `--reactist-font-family-monospace` with updated font family for monospace elements
411
+
412
+ **v23.0.0:**
413
+
414
+ - [BREAKING] Remove unsupported `crossOrigin` attribute from `input`- and `textarea`-based components.
415
+ - [BREAKING] Remove unsupported `placeholder` attribute from heading components.
416
+
417
+ **v22.3.3:**
418
+
419
+ - [Fix] Vertical alignment of inline code elements inside a `Prose` component
420
+
421
+ **v22.3.2:**
422
+
423
+ - [Fix] Text inside a `Badge` no longer wraps into multiple lines.
424
+
425
+ **v22.3.1:**
426
+
427
+ - [Tweak] Increase showing tooltip delay to 1 second from 500ms
428
+
429
+ **v22.3.0:**
430
+
431
+ - [Build] Add support for Node v21
432
+
433
+ **v22.2.0:**
434
+
435
+ - [Feat] The `Alert` component now has a new design. Input based components will now also expose a `--reactist-inputs-alert` CSS variable to customize their border colours when put into an error state
436
+
437
+ **v22.1.0:**
438
+
439
+ - [Build] Add support for Node v20 and npm v10
440
+
441
+ **v22.0.0:**
442
+
443
+ - [BREAKING] Remove `DeprecatedModal`.
444
+
445
+ **v21.3.0:**
446
+
447
+ - [Feat] `ToastProvider` accepts an optional `containerClassName` property, which let's you to add your own class for the container of all toasts.
448
+
449
+ **v21.2.3:**
450
+
451
+ - [Fix] Prevent horizontal expansion of `TextArea` with `autoExpand={true}`.
452
+
453
+ **v21.2.2:**
454
+
455
+ - [Docs] Fix links to Reactist components in storybook stories.
456
+
457
+ **v21.2.1:**
458
+
459
+ - [Docs] Fix links to Reactist components in storybook stories.
460
+
461
+ **v21.2.0:**
462
+
463
+ - [Feat] `Textfield`, `PasswordField`, `SelectField`, and `TextArea` will now use two new CSS variables to define their border colors: `--reactist-inputs-focus`, `--reactist-inputs-idle`. If they were previously set using `--reactist-divider-primary` and `--reactist-divider-secondary`, they will continue to work as well.
464
+
465
+ **v21.1.1:**
466
+
467
+ - [Fix] Using a menu both triggered by a button and by right-click.
468
+
469
+ **v21.1.0:**
470
+
471
+ - [Feat] The `Prose` component now supports links applied to inline code.
472
+
473
+ **v21.0.2:**
474
+
475
+ - [Fix] `Tabslist`'s default space `space='xsmall'` is removed to get rid of unnecessary gap between tabs.
476
+
477
+ **v21.0.1:**
478
+
479
+ - [Fix] `TextArea` with `autoExpand={true}` applies it initially, acknowledging any initial value that the field may have.
480
+ - [Fix] Avoid tooltip re-creating the anchor element when the tooltip content switches being present or not.
481
+
482
+ **v21.0.0:**
483
+
484
+ - [BREAKING] `TextField`'s `startIcon` property is now renamed `startSlot`.
485
+ - [Feat] New `startSlot` and `endSlot` props on the `TextField` component. These support rendering not only icons, but buttons too.
486
+ - [Fix] `TextField`'s `startSlot` is now properly aligned when using `variant="bordered"`.
487
+ - [Fix] `TextField` is now properly focused when clicking anywhere inside its bordered area.
488
+ - [Tweak] `PasswordField`'s toggle visibility button is now implemented by using the `TextField`'s `endSlot` feature.
489
+
490
+ **v20.3.0:**
491
+
492
+ - [Feat] Toasts wrapped in `ToastsProvider` are now dismissed when their action `onClick` handler fires.
493
+
494
+ **v20.2.0:**
495
+
496
+ - [Feat] Expose CSS variables for theming the `SwitchField` component.
497
+
498
+ **v20.1.0:**
499
+
500
+ - [Feat] New `Prose` component to style free-form HTML content consistently.
501
+
502
+ **v20.0.3:**
503
+
504
+ - [Fix] Slightly tweak the height of the `Badge` component.
505
+
506
+ **v20.0.2:**
507
+
508
+ - [Fix] Slightly tweak the height of the `Badge` component.
509
+
510
+ **v20.0.1:**
511
+
512
+ - [Fix] `Badge` component content is now bold and the appropriate line-height is enforced.
513
+
514
+ **v20.0.0:**
515
+
516
+ - [BREAKING] Remove `usePrevious` hook
517
+ - [BREAKING] Remove `DeprecatedNotification` component
518
+ - [BREAKING] The `Menu` component now uses Reactist CSS variables to style itself
519
+
520
+ **v19.1.1:**
521
+
522
+ - [Fix] Export new `Banner` component.
523
+
524
+ **v19.1.0:**
525
+
526
+ - [Feat] A new `Banner` component.
527
+
528
+ **v19.0.1:**
529
+
530
+ - [Fix] `Tooltip`s can now have its z-index customized using the `--reactist-stacking-order-tooltip` custom property.
531
+ - [Fix] `Tooltip`s now have a 300px max-width.
532
+
533
+ **v19.0.0:**
534
+
535
+ - [BREAKING] A new `Badge` component with various breaking changes
536
+ - The prop `variant` has been renamed to `tone`
537
+ - The new possible set of tones is different from the variants previously supported
538
+ - New CSS custom properties to control the `Badge`'s component appearance (tones and font size)
539
+ - The badge label is now provided via a `label` prop instead of via `children`
540
+ - [BREAKING] Update `ariakit` to [next.43](https://github.com/ariakit/ariakit/blob/main/packages/ariakit/CHANGELOG.md#200-next43) and `ariakit-utils` to [next.27](https://github.com/ariakit/ariakit/blob/main/packages/ariakit-utils/CHANGELOG.md#0170-next27). Depending on your set up, `node_modules/ariakit*` dependencies may need to be transpiled.
541
+ - [BREAKING] `Menu` will now render in modal mode by default. This can be turned off by passing `modal={false}` to `MenuList`.
542
+
543
+ **v18.0.0:**
544
+
545
+ - [BREAKING] Renames the CSS variable for primary text content inside toasts and tooltip. Previous name was `--reactist-content-toast`, now replaced with the new name `--reactist-toast-content-primary`.
546
+ - [Feat] New CSS variable to control the color of secondary text inside toasts and tooltip: `--reactist-toast-content-secondary`.
547
+ - [BREAKING] The `Tooltip` component no longer accepts generic props to be forwarded as generic HTML attributes to the tooltip content container. In particular, it no longer accepts a `className` to customize its appearance.
548
+ - [Tweak] Modernizes the implementation of the tooltip, specifically by making it based on the new styling approach based on CSS variables.
549
+ - [Feat] Adds the ability to render tooltips with an arrow-like element pointing to the trigger element.
550
+ - [Fix] The tooltip content is set as the accessible description of the trigger element.
551
+
552
+ **v17.10.1:**
553
+
554
+ - [Fix] Ensure that any element inside a `Button` or `ButtonLink` is non-clickable, to facilitate event tracking with tools such as Google Analytics.
555
+
556
+ **v17.10.0:**
557
+
558
+ - [Feat] Passing `autoExpand` to the `TextArea` component makes it auto-expand its height to fit the content as you type.
559
+ - [Feat] The `TextArea` component now supports receiving a ref that's forwarded to the `textarea` element.
560
+
561
+ **v17.9.1:**
562
+
563
+ - [Fix] Tabs layout got broken after the `Inline` element switched to use `gap` for spacing.
564
+
565
+ **v17.9.0:**
566
+
567
+ - [Feat] New `gap` prop in the `Box` component, implementing support for the CSS `gap` property.
568
+ - [Tweak] Use CSS `gap` for implementing spacing in the `Columns`, `Inline`, and `Stack` components.
569
+
570
+ **v17.8.1:**
571
+
572
+ - [Fix] When clicking inside a modal, holding and releasing the click outside the modal no longer closes the modal
573
+
574
+ **v17.8.0:**
575
+
576
+ - [Feat] New `Modal` prop `portalElement`, to enable consumers of the `Modal` component to have some control on where the modal portal is rendered.
577
+ - [Feat] The `Badge` component now renders as an inline element, which makes it more versatile in common situations when it's needed. For instance, to render it inside other elements such as buttons, links, etc.
578
+
579
+ **v17.7.0:**
580
+
581
+ - [Feat] Add `startIcon` support to `TextField`
582
+
583
+ **v17.6.0:**
584
+
585
+ - [Tweak] Upgrade Ariakit version to 2.0.0-next.30
586
+
587
+ **v17.5.0:**
588
+
589
+ - [Feat] Add `variant` prop support to `SelectField` component.
590
+
591
+ **v17.4.0:**
592
+
593
+ - [Feat] Add support for controlling whether a `Modal` can be dismissed by pressing `Escape` or with a click event on the modal overlay.
594
+
595
+ **v17.3.0:**
596
+
597
+ - [Fix] Enforce standard padding in the `CheckboxField` component and accept an `icon` attribute
598
+
599
+ **v17.2.0:**
600
+
601
+ - [Feat] Add support for providing a class to a `Modal` overlay
602
+
603
+ **v17.1.0:**
604
+
605
+ - [Feat] Add support for `Menu` as a context menu
606
+ - [Fix] Allow `SubMenu`s to be rendered and support keyboard navigation
607
+
608
+ **v17.0.1:**
609
+
610
+ - [Fix] Enforce minimum width for the checkbox icon in the `CheckboxField` component
611
+
612
+ **v17.0.0:**
613
+
614
+ - [Breaking] Allow to customize the TextLink styles (color and text-decoration) via CSS variables
615
+
616
+ **v16.1.0:**
617
+
618
+ - [Build] Add support for Node v18 and npm v9
619
+
620
+ **v16.0.0:**
621
+
622
+ - [Breaking] The `Notification` component is renamed as `DeprecatedNotification`
623
+ - [Feat] The `Box` component now supports a new `background="toast"`
624
+ - [Feat] A new `Toast` component and `useToasts` hook
625
+ - [Fix] Sets `Badge` to semibold
626
+
627
+ **v15.3.0:**
628
+
629
+ - [Feat] Introduces a `Badge` component
630
+
631
+ **v15.2.0:**
632
+
633
+ - [Feat] Enhance the `label` property in `CheckboxField` to be of type `React.ReactNode`
634
+
635
+ **v15.1.0:**
636
+
637
+ - [Feat] Fields without label show no spacing above the field
638
+ - [Fix] `TextArea` can now be hidden
639
+ - [Fix] `TextArea` now properly support receiving an explicit alternative aria-describedby attribute
640
+ - [Fix] TextArea is changed to only allow resizing vertically. This ensures that the consumer of the component can control the width via the maxWidth prop.
641
+
642
+ **v15.0.0:**
643
+
644
+ - [Breaking] The `Modal` has its internals replaced with Ariakit. This should not introduce any user-facing changes, but the old modal will be available as `DeprecatedModal` to help with the transition.
645
+ - [Fix] Set `min-height` and `max-height` on `.reactist_menulist`.
646
+
647
+ **v14.1.1:**
648
+
649
+ - [Fix] Pins the ariakit dependencies.
650
+
651
+ **v14.1.0:**
652
+
653
+ - [Feat] `Tabs` by default have a shorter height, but this can be customized by overriding an exposed css variable
654
+
655
+ **v14.0.0:**
656
+
657
+ - [Breaking] The `color` prop has been removed from `Tabs`, and `variant` now only supports `themed` and `neutral` as options.
658
+ - [Fix] `Tooltip` will now correctly use an anchor component with an `as` prop
659
+
660
+ **v13.0.0:**
661
+
662
+ - [Breaking] Button's `tooltipGapSize` prop is no longer supported. When wanting to customize the tooltip appearance, consumers should take ownership of rendering the tooltip manually.
663
+ - [Breaking] Icon-only buttons can have their implicit "aria-label as tooltip" behaviour suppressed by passing `tooltip={null}`. Useful when wanting to get full control over rendering the tooltip manually.
664
+ - [Breaking] Remove deprecated components `Checkbox`, `DeprecatedLoading` and `DeprecatedModal`.
665
+ - [Breaking] Remove `Popover`
666
+ - [Breaking] The following components have been renamed and will be removed in a future major release:
667
+ - `Dropdown` -> `DeprecatedDropdown`
668
+ - `Input` -> `DeprecatedInput`, use `TextField` instead.
669
+ - `Select` -> `DeprecatedSelect`, use `SelectField` instead.
670
+ - [Feat] Allow buttons to have fully rounded/circular corners.
671
+ - [Fix] Only apply full width labels when the button is full width
672
+
673
+ **v12.1.1:**
674
+
675
+ - [Fix] Reset input padding for `variant="bordered"` `TextField`.
676
+
677
+ **v12.1.0:**
678
+
679
+ - [Feat] New `message` and `tone` props that allow to associate a visual and semantic message to various field components. Supported in `TextField`, `PasswordField`, `TextArea` and `SelectField`.
680
+ - [Feat] New `variant="bordered"` supported in `TextField`, `PasswordField` and `TextArea`. It renders the field and its labels enclosed in an outer border, rather than having a border around the editing area only.
681
+
682
+ **v12.0.4:**
683
+
684
+ - [Fix] Better default alignment between the `MenuList` and the `MenuButton`
685
+
686
+ **v12.0.3:**
687
+
688
+ - [Fix] Missing styling for `MenuList` in Safari
689
+
690
+ **v12.0.2:**
691
+
692
+ - [Fix] `Tooltip` was overriding its anchor's `ref`, preventing it from successfully forwarding its ref
693
+
694
+ **v12.0.1:**
695
+
696
+ - [Fix] Fix publishing flow
697
+
698
+ **v12.0.0:**
699
+
700
+ - [Breaking] Dropped support for React 16
701
+ - Internally, Reactist will now use React 17 and TypeScript v4.6. Targets for `@babel/preset-env` have also been set, reducing the total build size by about 8-10%.
702
+ - [Breaking] Replace Reakit with Ariakit
703
+ - This includes a breaking change for `Tabs`, where if the `selectedId` prop is provided, it becomes a controlled component and will no longer switch tabs on its own. To retain the old behaviour, `defaultSelectedId` can be used instead.
704
+
705
+ **v11.6.0:**
706
+
707
+ - [Fix] Apply TextLink color through `--reactist-text-link-color`
708
+ - [Feat] Add `positive` tone to `Text`
709
+ - [Feat] Add `xsmall` size to `Loading`
710
+
711
+ **v11.5.1:**
712
+
713
+ - [Fix] Modal header's min-height is now applied when header has no button
714
+
715
+ **v11.5.0:**
716
+
717
+ - [Build] Update peer dependencies to include React v18
718
+
719
+ **v11.4.0:**
720
+
721
+ - [Feat] Button can now have a width set (except icon-only buttons). When having a width, the label aligment can also be customized
722
+ - [Fix] Button focus styles should only be shown when interacting with the button via keyboard (using CSS's `:focus-visible`)
723
+
724
+ **v11.3.0:**
725
+
726
+ - [Feat] Added `alignSelf` prop to `Box`
727
+
728
+ **v11.2.0:**
729
+
730
+ - [Fix] Hiding `ModalHeader` close button no longer renders the button wrapper column
731
+ - [Fix] Using `start` as a value for `Box`'s `textAlign` now adds a class to properly set the `text-align` value
732
+ - [Fix] `TextArea`'s `rows` prop is not added to the component's type definition
733
+ - [Feat] Updates `Button` to support `gapSize` from `Tooltip` (as `tooltipGapSize`)
734
+
735
+ **v11.1.0:**
736
+
737
+ - [Tweak] Tabs now are styled with medium font-weight
738
+ - [Tweak] Updates the default medium font-weight from `500` to `600`
739
+ - [Fix] `ModalActions` now ignores `null` child elements
740
+ - [Fix] `ModalActions` no longer wraps each child element inside a wrapper `div`
741
+ - [Fix] `ModalActions` flattens children inside React fragments
742
+ - [Fix] `Inline` no longer adds an unneeded extra wrapper `div` around it
743
+ - [Fix] Adds margin to Menu's viewport positioning
744
+ - [Feat] Updates Avatar to support responsive patterns
745
+
746
+ **v11.0.0:**
747
+
748
+ - [Feat] New approach to styling components based on CSS variables
749
+ - [Feat] New approach to supporting rendering some components as another HTML element or as another component.
750
+ - [Feat] New components for layout (`Box`, `Columns`, `Column`, `Inline`, `Stack`)
751
+ - [Feat] New field components (`TextField`, `PasswordField`, `SelectField`, `CheckboxField`, `SwitchField`, `TextArea`)
752
+ - [Feat] New tabs components (`Tabs`, `Tab`, `TabList`, `TabPanel`, `TabAwareSlot`)
753
+ - [Feat] New components for typography (`Text`, `Heading`, `TextLink`)
754
+ - [Feat] Various other new components (`Alert`, `Notice`, `Hidden`, `HiddenVisually`)
755
+ - [Feat] New set of modal component (`Modal`, `ModalHeader`, `ModalBody`, `ModalFooter`, `ModalActions`) replacing the old set of `Modal.*` components.
756
+ - [Feat] New `Button` and `ButtonLink` components, replacing the old `Button` component.
757
+ - [Breaking] Old set of modal components are now exported as `DeprecatedModal` instead of as `Modal`.
758
+ - [Breaking] Old `Button` component is now exported as `DeprecatedButton` instead of as `Button`.
759
+ - [Breaking] Old `Loading` component is now exported as `DeprecatedLoading` instead of as `Loading`.
760
+ - [Breaking] Removes the `RangeInput` component
761
+ - [Breaking] Removes the `Tip` component
762
+ - [Breaking] Removes the `Icon` component
763
+ - [Breaking] Removes the `ErrorMessage` component
764
+ - [Docs] Adds a11y badges to component stories
765
+ - [Docs] Adds `jest-axe` package and automated a11y checks
766
+ - [Tweak] Makes a11y improvements to `Menu`
767
+ - [Tweak] Makes a11y improvements to `ProgressBar`
768
+ - [Tweak] Makes a11y improvements to `Notification`
769
+ - [Build] Updates peer deps to include React v17.0
770
+
771
+ **v10.0.0-beta.12:**
772
+
773
+ - [Tweak] Upgrade Storybook to version v6.3.10
774
+ - [Tweak] Limit node version to <=16.10.0
775
+
776
+ **v10.0.0-beta.11:**
777
+
778
+ - [Feat] More modal widths:
779
+ - Previous width `large` is now called `xlarge`
780
+ - New width `large` sitting in between `medium` and `xlarge`
781
+ - New width `full`, that always fill the entire viewport width (keeping the standard margin
782
+ around).
783
+
784
+ **v10.0.0-beta.10:**
785
+
786
+ - [Fix] Reduce specificity of the Tab component's CSS variables
787
+
788
+ **v10.0.0-beta.9:**
789
+
790
+ - [Tweak] Divider weight now defaults to "tertiary"
791
+ - [Fix] Modal dividers (in the header or footer) are tertiary dividers.
792
+
793
+ **v10.0.0-beta.8:**
794
+
795
+ - [Breaking] Standardize box borders and divider colors under a new primary/secondary/tertiary
796
+ system.
797
+ - [Fix] Better adjust spacing inside buttons, so that the side with an icon has a similar padding
798
+ than the side with no icon.
799
+ - [Tweak] Button hover styles are now also used when the button is focused, or it is expanded
800
+ (e.g. in the case of menu buttons).
801
+ - [Tweak] Make button colors transition smoothly.
802
+ - [Tweak] Adjust modal widths to the new design system defaults.
803
+ - [Tweak] Buttons with a visual text label (i.e. buttons that are not icon-only buttons) now have
804
+ a minimum width set, so they don't get too small for extremely short labels.
805
+
806
+ **v10.0.0-beta.7:**
807
+
808
+ - [Fix] Modals that fit their content's height now expand their height only downwards, and are not
809
+ kept vertically centered, but slightly towards the top of the screen.
810
+ - [Fix] Modal close button alignment is no longer inconsistent.
811
+ - [Breaking] Button icon size is no longer controlled based on the button size. It is your
812
+ responsibility to make sure your SVG icons have the proper size and alignment to fit in a button
813
+ depending on its size.
814
+ - [Fix] Button labels are now clamped when they do not fit inside the button. Buttons will never
815
+ be wider than the width of their container.
816
+
817
+ **v10.0.0-beta.6:**
818
+
819
+ - [Feature] Add a new `loading` prop for `Button` and `ButtonLink`, to set them as busy, and
820
+ visually show a loading indicator.
821
+ - [Fix] Fully support secondary destructive buttons in a way that is customizable via CSS
822
+ variables.
823
+ - [Fix] Use the `Button` component to power the default modal close button. This makes it possible
824
+ for consumer apps to have these buttons follow their customized button styles.
825
+ - [Feature] Improves the ability to fully customize all sizing and spacing by apps via CSS
826
+ variables.
827
+ - [Docs] New storybook examples showcasing how to customize buttons for dark mode.
828
+
829
+ **v10.0.0-beta.5:**
830
+
831
+ - [Breaking] The various `Menu*` components props no longer consider `className` as a valid prop.
832
+ - [Breaking] The `Stack` component's `align` prop type is now `'start' | 'center' | 'end'` instead
833
+ of `'left' | 'center' | 'right'`.
834
+ - [Fix] Colour of quaternary button is now correct.
835
+ - [Docs] Improvements to the storybook examples for the `Menu` components.
836
+ - [Fix] Modal focus lock is now working correctly.
837
+ - [Fix] Modals are now aligned to the top of the viewport.
838
+ - [Fix] The labels of the `SwitchField` and `CheckboxField` components now follow the standard
839
+ `Text` styling.
840
+
841
+ **v10.0.0-beta.4:**
842
+
843
+ - [Breaking] The new `Loading` component now supports `aria-label` or `aria-labelledby`, and it
844
+ also forwards all other props to the container element.
845
+ - [Feature] Reintroduce the legacy `Loading` component as `DeprecatedLoading` to ease the
846
+ migration in apps using it.
847
+
848
+ **v10.0.0-beta.3:**
849
+
850
+ - [Breaking] The `Loading` component has been reimplemented based on the beta `LoadingSpinner`.
851
+ - [Breaking] The `LoadingSpinner` was renamed as `Loading`, and significantly changed.
852
+ - [Breaking] The `Modal` has been renamed `DeprecatedModal`.
853
+ - [Feature] A new `Modal` component is introduced, that replaces the old one, with much better
854
+ accessibility features and integrated into the new styling approach of the new design system
855
+ components.
856
+ - [Breaking] Rename the `Button` as `DeprecatedButton`.
857
+ - [Feature] New `Button` component following the latest standards of the design system.
858
+ - [Docs] The storybook examples now open the "Docs" tab by default.
859
+
860
+ **v10.0.0-beta.2:**
861
+
862
+ - [Feature] All the tab components are now polymorphic (i.e. they can use the `as="element"` prop).
863
+ - [Feature] The `Box` component now has a new `textAlign` prop to control its `text-align` style.
864
+ - [Feature] The `Text` and `Heading` components now have a `align` prop to align its content horizontally.
865
+
866
+ **v10.0.0-beta.1:**
867
+
868
+ - [Build] The project now requires node v16.0.0+ and npm v7.0.0+ to install and run.
869
+
870
+ **10.0.0:**
871
+
872
+ - [Build] The project now requires node v16.0.0+ and npm v7.0.0+ to install and run.
873
+
874
+ **v9.2.0-beta.18:**
875
+
876
+ - [Breaking] Component composition changed to use prop `as="…"` instead of `component="…"`.
877
+ - [Breaking] Most design system components no longer support receiving a `className` attribute.
878
+ - [Breaking] Some design system components now support a custom class name via a `exceptionallySetClassName` prop.
879
+ - [Breaking] Responsive props are now provided via an object instead of an array.
880
+ - [Feature] The `Box` component now has a various `margin*` props to provide its margins similar to paddings.
881
+ - [Feature] The `Box` component now has a new `maxWidth` value `full` (i.e.`maxWidth="full"`).
882
+ - [Feature] The `Stack` component now has a `align` prop to align its items horizontally.
883
+ - [Feature] Add new component `Hidden` to hide content under certain media conditions.
884
+ - [Feature] Add new component `HiddenVisually` to hide content visually while keeping it accessible.
885
+ - [Feature] The `SwitchField` and `CheckboxField` components can now be controlled or uncontrolled.
886
+ - [Fix] The `SwitchField` hover state is no longer flaky.
887
+ - [Fix] The hint text in various field components (`TextField`, `PasswordField`, `SelectField`) now renders outside the max-width container.
888
+
889
+ **v9.2.0-beta.17:**
890
+
891
+ - [Feature] Introduces a new `Tabs` component based on [Reakit/Tab](https://reakit.io/docs/tab/)
892
+
893
+ Also included are changes from https://github.com/Doist/reactist/releases/tag/v9.1.6
894
+
895
+ **v9.2.0-beta.16:**
896
+
897
+ - [Fix] Allows classname to be passed through on ButtonLink.
898
+
899
+ **v9.2.0-beta.15:**
900
+
901
+ - [Fix] Add default padding to `Text` component when used with `lineClamp` prop, in order to prevent emojis from being cutoff
902
+ - [Fix] Allow the `Column` component to leverage the `component` prop to render as another element other than the default `div`
903
+
904
+ **v9.2.0-beta.14:**
905
+
906
+ - [Fix] Add support for `baseline` alignment
907
+
908
+ **v9.2.0-beta.13:**
909
+
910
+ - [Fix] Allow nested `Columns` components to retain their own inner spacing
911
+
912
+ **v9.2.0-beta.12:**
913
+
914
+ - New tag to include the fix from [`v9.1.5`](https://github.com/Doist/reactist/releases/tag/v9.1.5)
915
+
916
+ **v9.2.0-beta.11:**
917
+
918
+ - [Fix] Incorrect styles in `Button` which affected dark mode themes
919
+ - [Fix] Incorrect styles in `SelectField` which affected dark mode themes
920
+
921
+ **v9.2.0-beta.10:**
922
+
923
+ - [Breaking] `Text` component now has its `size` attribute changed to accept `caption`, `copy`, `body`, and `subtitle`.
924
+ - [Fix] `Columns` component will now stretch within a flex container
925
+
926
+ **v9.2.0-beta.9:**
927
+
928
+ - [Docs] Upgraded all beta storybook docs to work with Storybook 6
929
+
930
+ **9.1.6:**
931
+
932
+ - [Feature] Change `KeyboardShortcut` to treat `Super` as a key to be translated
933
+
934
+ **9.1.5:**
935
+
936
+ - [Fix] Prevent menu items with `aria-disabled` set to `false` from being disabled
937
+
938
+ **9.1.4:**
939
+
940
+ - [Perf] Make the disabled Button component visible to screen readers by swapping `disabled` for `aria-disabled`
941
+
942
+ **9.1.3:**
943
+
944
+ - [Tweak] Upgrade Storybook to version v6.2.1. Migrate stories to new version.
945
+
946
+ **v9.2.0-beta.8:**
947
+
948
+ - Fix `Columns` styles, broken by the changes to `Stack` styling. This release now removes the interdependency of `Column's styles relying on `Stack` styles.
949
+
950
+ **v9.2.0-beta.7:**
951
+
952
+ Various fixes to the new experimental components
953
+
954
+ - Adds a right padding to the `SelectField` to make sure the chevron never appears on top of the `select` content.
955
+ - Use for the checked `CheckboxField` the same colour variable we use for the `SwitchField`.
956
+ - Add a wrapper `div` around what `Inline` renders, to avoid conflicts with margin applied from the outside by `Stack` (when `Inline` is nested in `Stack`).
957
+ - Simplify the CSS for `Stack` leveraging the `:not(:first-child)` selector.
958
+ - Add one more story to each of `Stack` and `Inline` to showcase that these new changes did not break their expected behaviour.
959
+
960
+ **v9.2.0-beta.6:**
961
+
962
+ Various fixes to the new experimental components
963
+
964
+ - Add explicit link styles to `TextLink`
965
+ - `SwitchField` now properly animates the handle moving left or right.
966
+ - Style fixes to the `PasswordField`.
967
+ - Added ref forwarding to `TextField`, `PasswordField` and `Heading`.
968
+
969
+ **v9.2.0-beta.5:**
970
+
971
+ - Change Stack and Inline elements to not generate one container element per child element.
972
+ - Fix ButtonLink styling
973
+ - Adds a new `display="inlineFlex"` value to the `display` property of `Box`. This makes the `Box` use `display: inline-flex`.
974
+
975
+ **v9.2.0-beta.4:**
976
+
977
+ Various fixes to the new experimental components
978
+
979
+ - The `SelectField` now has its native appearance reset (i.e. `appearance: none`).
980
+ - Fixed a typo in an internal css variable in the `SelectField` that made it not have the proper height.
981
+ - Text in `Alert` and `Notice` is now properly aligned vertically with the icon.
982
+ - Fixed some css module classes that were incorrect in the JS code.
983
+ - `Alert` colours did not have the transparency properly set.
984
+ - The `SwitchField` now has a new dedicated css variable for theming its background when checked.
985
+
986
+ **v9.2.0-beta.3:**
987
+
988
+ - [Fix] `Text` component was not receiving its ref correctly
989
+
990
+ **v9.2.0-beta.2:**
991
+
992
+ - [Feature] New components `Alert`, `LoadingSpinner`, `Notice`, `Heading`, `Text`, `ButtonLink`, `TextLink`, `CheckboxField`, `PasswordField`, `SelectField`, `SwitchField`, `TextArea`, `TextField`.
993
+ - [Feature] New prop `tone` for component `Heading` (just like that for `Text`).
994
+ - [Feature] New prop `position` for component `Box`.
995
+ - [Feature] New props `flexShrink` and `flexGrow` for component `Box`.
996
+ - [Feature] New props `border` and `borderRadius` for component `Box`.
997
+ - [Feature] New `minWidth={0}` in component `Box`.
998
+ - [Feature] `Text` now supports receiving a `ref`.
999
+ - [Fix] Changed `Box` value for prop `background`. Former value `shade` is now called `aside`.
1000
+ - [Fix] `Column` with `width="content"` did not shrink entirely to zero if empty.
1001
+ - [Fix] Other fixes to columns so that it did not expand more than expected, so it allows truncated text to truncate.
1002
+ - [Fix] Correct font sizes for the various levels of `Heading`.
1003
+ - [Fix] `Stack` and `Inline` now generate `span` instead of `div` elements if the html element they use for the container does not allow to contain `div` elements.
1004
+
1005
+ **9.1.2:**
1006
+
1007
+ - [Fix] Call a MenuItem component's onClick handler if provided; ignore the select action if event.defaultPrevented.
1008
+
1009
+ **v9.2.0-beta.1:**
1010
+
1011
+ - [Feature] Add `xxlarge` option to various `padding` and `space` props for `Box`, `Columns`, `Inline`, and `Stack` components
1012
+
1013
+ **v9.2.0-beta:**
1014
+
1015
+ - [Feature] Add `largest` size increase support for `Heading` component
1016
+ - [Feature] Add `lineClamp` for text truncation to `Heading` and `Text` components
1017
+ - [Fix] Export the `Column` component in the main entry point
1018
+ - [Fix] Add missing colour variables
1019
+ - [Docs] Add Storybook demos for `Heading`, `Text`, and colour swatches
1020
+
1021
+ **v9.1.0-beta.2:**
1022
+
1023
+ - [Fix] Move patch-package to dependencies to allow it to run (on nothing since we're patching a dev-dependency) after being installed as a package.
1024
+ - [Fix] Prevent emotion's `css` prop from polluting the exported type definitions
1025
+
1026
+ **v9.1.0-beta.1:**
1027
+
1028
+ - [Fix] The previous beta release had an issue where all components' stylesheets were being treated as CSS modules. This will now build with the correct class name selectors again.
1029
+
1030
+ **v9.1.0-beta:**
1031
+
1032
+ - [Feature] A set of base design system components have been added: `Box`, `Columns`, `Divider`, `Heading`, `Inline`, `Stack`, and `Text`. Since we're still experimenting with their API, they will be packaged under beta releases until they become more concrete.
1033
+
1034
+ **9.1.1:**
1035
+
1036
+ - [Fix] Prevent `Loading` component from spinning off-centre
1037
+
1038
+ **9.1.0:**
1039
+
1040
+ - [Feature] Adds support for `aria-label` to the `Loading` component
1041
+ - [Docs] This also fixes our gh-pages-hosted Storybook to load the proper stylesheets again
1042
+
1043
+ **9.0.0:**
1044
+
1045
+ - [Build] The project now requires node v14.5.5+ and npm v6.14.11+ to install and run.
1046
+ - We're skipping right over v8.0.0 as its tag has already been created previously
1047
+
1048
+ **v7.2.1:**
1049
+
1050
+ - [Tweak] Adds `defaultValue` and ensures additional props are carried forward on the `Select` component.
1051
+
1052
+ **v7.2.0:**
1053
+
1054
+ - [Feature] A new `Notification` component has been added.
1055
+
1056
+ **v7.1.9:**
1057
+
1058
+ - [Fix] We're only rendering menu lists into the DOM when the menu is opened. This should result in measurable performance gains if you're rendering a lot menus (e.g. as part of a list).
1059
+
1060
+ **v7.1.8:**
1061
+
1062
+ - [Tweak] Upgraded Reakit dependency
1063
+
1064
+ **v7.1.7:**
1065
+
1066
+ - [Tweak] Separates `ButtonVariant` and `ButtonSize` as actual types.
1067
+
1068
+ **v7.1.6:**
1069
+
1070
+ - [Tweak] Upgrade some dependencies.
1071
+
1072
+ **v7.1.5:**
1073
+
1074
+ - [Tweak] Adds a backdrop/overlay to dropdown menus.
1075
+ - [Fix] Removes the peer dependency on dayjs, adding it as a direct dependency instead.
1076
+
1077
+ **v7.1.4:**
1078
+
1079
+ - [Tweak] Prevents the `Tooltip` component from getting triggered by keyboard interactions performed in other components
1080
+
1081
+ **v7.1.3:**
1082
+
1083
+ - Dummy release created for publishing purposes
1084
+
1085
+ **v7.1.2:**
1086
+
1087
+ - [Tweak] Removes the arbitrary `max-width` value of the Tooltip component
1088
+ - [Tweak] Adds a `z-index` value for the Tooltip component so that it appears ontop of other content
1089
+
1090
+ **v7.1.1:**
1091
+
1092
+ - [Bugfix] Fixes an improperly configured `sideEffects` property in package.json that prevented importing CSS files from reactist.
1093
+
1094
+ **v7.1.0:**
1095
+
1096
+ - [Feature] The tooltip content now can be provided as a function that will be called to generate its content. This function will only be called when the tooltip needs to be shown. This allows to have more control on tooltip content that is potentially expensive to generate, so that it only happens when needed.
1097
+ - [Fix] The tooltip content is now rendered to the DOM only when the tooltip is shown. This is regardless of wether the content is provided directly or via a function. The React tree won't be comitted to the DOM unless the tooltip needs to become visible.
1098
+ - [Tweak] The tooltip delay to appear is now extended from 100ms to 500ms which was our earlier standard with the previous implementation of the tooltip.
1099
+
1100
+ **v7.0.0:**
1101
+
1102
+ - [BREAKING CHANGE] A new Tooltip component is introduced. It is keyboard and screen reader friendly, more compliant with accessibility recommendations about tooltips. It does not provide all the features of the previous Tooltip, and its props change quite a bit. Additionally, it now has a new restriction where it expects its children to consist of a single element. This element is the one used as a trigger for the tooltip. (#276)
1103
+ - [BREAKING CHANGE] The `Popover` component now has a new restriction where it expects its children to consist of a single element. (#276)
1104
+ - [BREAKING CHANGE] A new set of components for building menus is introduced. The new menus are keyboard and screen reader friendly, more compliant with accessibility recommendations about menus. The old `MenuButton` and `MenuButtonItem` components are no longer available. Moreover we now have a `MenuButton` that is nothing like the one before. Check their code and examples in storybook. (#278)
1105
+
1106
+ **v6.0.1:**
1107
+
1108
+ - [Fix] This fixes a bug in v6.0.0 where the lib/ directory was unbundled.
1109
+
1110
+ **v6.0.0:**
1111
+
1112
+ - [BREAKING CHANGE] Reactist now generates a build more aligned to antd's best practices. It generates a clean ES6 build, a CommonJS build, as well as an unpkg build. It also adds built-in support for future CSS module integration. This is a breaking change because importing modules has changed slightly. See README.md.
1113
+ - [BREAKING CHANGE] The `Button` component's `close` prop, which was deprecated back in v5, is now no longer supported.
1114
+
1115
+ **v5.2.0:**
1116
+
1117
+ - [Feature] `Button` can now be unstyled if you omit the `variant` prop. This resets the styles to be even less than default styles of the web browser (e.g. removes all border, padding and background).
1118
+
1119
+ **v5.1.0:**
1120
+
1121
+ - [New] A `KeyboardShortcut` component will take one or several keyboard shortcut specified as string, and will parse them and render them in a nice semantic markup using the `kbd` element. Each key part of a key combination gets its own container so you can style things nicely.
1122
+
1123
+ **v5.0.0:**
1124
+
1125
+ The `Button` component's big renovation.
1126
+
1127
+ - [BREAKING CHANGE] The `Button` component changed its outer interface entirely.
1128
+ - Instead of individual boolean props for setting its visual style (`primary`, `secondary`, etc.) it has a single prop `variant` which receives the styling/variant as a string value.
1129
+ - This prop is now required so if you were not adding any of these boolean props, you now need to add `variant="primary"`.
1130
+ - The `white` prop now does not even exist as a `variant`. It is replaced by `variant="secondary"`.
1131
+ - Instead of individual boolean props for setting its size (`small`, `large`), `Button` now has a single prop `size` that can receive either `'small'` or `'large'` as its value. If omitted the button has its default size.
1132
+ - The `Button` now uses `children` as the prop in which it receives the content inside the button, as opposed to using the `name` prop. So now `<Button name="Hello" />` becomes `<Button>Hello</Button>`.
1133
+ - The `Button` prop `data_tip` is now called `tooltip`.
1134
+ - The css class names for the `Button` component are now all following a BEM-like naming convention. Instead of having classes such as `.loading`, `.secondary`, etc. it now has all of these prefixed by `.reactist_button--`. That is, `.secondary` is now `.reactist_button--secondary`.
1135
+ - [BREAKING CHANGE] The `LinkButton` component has been removed entirely. The main reason being it is not accessible to use a link as a button. You can achieve a visually similar button with a new possible `variant` prop on the regular `Button`. So now `<LinkButton name="Click me" />` becomes `<Button variant="link">Click me</Button>`. This new link-like button is semantically a button, as opposed to being a link posing as a button.
1136
+
1137
+ **4.1.5:**
1138
+
1139
+ - [Fix] Tightens up type definitions for the `KeyCapturer` props.
1140
+
1141
+ **4.1.4:**
1142
+
1143
+ - [Fix] Reinstalled @doist/prettier-config from the npm registry and removed the authentication needed when pulling down dependencies.
1144
+
1145
+ **4.1.3:**
1146
+
1147
+ - [Fix] We have a dev dependency being on the GiHub package registry and we had problems with our Github actions pulling it. This is hopefully all fixed. 🤞
1148
+
1149
+ **4.1.0:**
1150
+
1151
+ - [New] The `event` object is now forwarded to the on\* handler in the `KeyCapturer` component. The `onEnter` event will also no longer fire when it's in the middle of an [IME composition session](https://developer.mozilla.org/en-US/docs/Glossary/input_method_editor).
1152
+
1153
+ **4.0.2:**
1154
+
1155
+ - [New] Brings back individual JS and CSS files so that applications can do selective import in an ES6 build.
1156
+
1157
+ **4.0.1:**
1158
+
1159
+ - [Fix] Modal.Actions now can have empty or null children again
1160
+
1161
+ **4.0.0:**
1162
+
1163
+ - [New] The library is now fully Typescript, provides an ES6 module export, and provides native type bindings.
1164
+ - [Tweak] To support tree-shaking, we've switched to the Rollup bundler
1165
+ - [Breaking Change] All imports are now ES6 relative imports, change `import Loading from "@doist/reactist/lib/loading"` to `import { Loading } from "@doist/reactist"`
1166
+
1167
+ **3.1.2:**
1168
+
1169
+ - [Tweak] Removes unused (legacy) context from `<Time />` constructor
1170
+
1171
+ **3.1.1:**
1172
+
1173
+ - [Tweak] Better typing for the checkbox label
1174
+
1175
+ **3.1.0:**
1176
+
1177
+ - [Feature] Adds typings for all components and utilities
1178
+
1179
+ **3.0.1:**
1180
+
1181
+ - [Fix] Formatting in the `<Time />` component wasn't working as expected, this is now fixed.
1182
+
1183
+ **3.0.0:**
1184
+
1185
+ - [Breaking] Changed namespacing from `.reactist.popover {}` to `.reactist_popover {}`. Customizing components' styling need to update accordingly.
1186
+
1187
+ **2.0.2:**
1188
+
1189
+ - [Tweak] Changed time formatting from `yesterday` to `1d`
1190
+
1191
+ **2.0.1:**
1192
+
1193
+ - _Empty release_
1194
+
1195
+ **2.0.0:**
1196
+
1197
+ - [Breaking] Styles are no longer included automatically but need to be loaded manually. See the readme for a detailed instruction on how to achieve that.
1198
+
1199
+ **1.22.06:**
1200
+
1201
+ - [New] Added a `refresh` prop to `<Time />` component in order to keep the information shown up-to-date when the component displays "time ago". By default, the component will re-render every 60 seconds.
1202
+
1203
+ **1.22.05:**
1204
+
1205
+ - [Fix] Fixed the `display: intial` CSS rule for IE11 users (affects the `<Popover />` component)
1206
+
1207
+ **1.22.04:**
1208
+
1209
+ - [Tweak] Fixed unsupported `display: initial` in IE11
1210
+
1211
+ **1.22.04:**
1212
+
1213
+ - [Tweak] Fixed broken styles for `<Modal>` on small screens
1214
+
1215
+ **1.22.03:**
1216
+
1217
+ - [Tweak] `<Popover />` content can now be a function which will only be lazily evaluated
1218
+
1219
+ **1.22.02:**
1220
+
1221
+ - [Tweak] `<Popover />` content is now rendered lazily (i.e. only if `visible` is `true`)
1222
+
1223
+ **1.22.01:**
1224
+
1225
+ - [Tweak] `<Modal.Body />` now starts to scroll instead of requiring the whole window to scroll.
1226
+
1227
+ **1.22.00:**
1228
+
1229
+ - [Tweak] `<Dropdown.Body />` can now be a function which allows for lazy evaluation (i.e. content is only rendered when dropdown is opened).
1230
+
1231
+ **1.21.00:**
1232
+
1233
+ - [Tweak] introduced `.npmignore` file to keep released package smaller and only include the essentials. This also fixes a bug in **v1.20.00** where parts of the `.git` directory ended up in the file package.
1234
+
1235
+ **1.20.00:**
1236
+
1237
+ - [Tweak] Replaced Moment with [Day.js](https://github.com/iamkun/dayjs)
1238
+
1239
+ 🚨 This introduces a new peerDependency (`dayjs`) and removes the need for `moment`. If you're not using the `<Time />` nothing should change for you.
1240
+
1241
+ **1.19.00:**
1242
+
1243
+ - [Tweak] Changed the way the `<Time />` component formats it's time. You now have more control to influence the date and time format from the outside
1244
+
1245
+ **1.18.15:**
1246
+
1247
+ - [Tweak] Using a 3px border-radius everywhere instead of a mixture of 3px and 4px
1248
+
1249
+ **1.18.14:**
1250
+
1251
+ - [Tweak] Updated the `<CloseIcon />` (used in `<Modal.Header>`) to new icon style
1252
+
1253
+ **1.18.13:**
1254
+
1255
+ - [Tweak] Decreased top and bottom margins of `<Modal />` to 40px
1256
+
1257
+ **1.18.12:**
1258
+
1259
+ - [Tweak] Increase left and right padding of `<Input />` to 10px to match `<Select />`
1260
+
1261
+ **1.18.11:**
1262
+
1263
+ - [Tweak] `<ColorPicker />` no longer shows the dropdown arrow and it's styling no longer includes margins
1264
+ - [New] `<ColorPicker />` now comes in a `small` version which is only 18px squared instead of 24px
1265
+
1266
+ **1.18.10:**
1267
+
1268
+ - [Tweak] Switched separators (`<hr />`) in `<Dropdown />` to border gray to unify colors more
1269
+
1270
+ **1.18.09:**
1271
+
1272
+ - [Tweak] No longer force no text-decoration on `<LinkButton />`
1273
+
1274
+ **1.18.08:**
1275
+
1276
+ - [New] When providing a className to `<Input />` it no longer overrides reactist' native styles
1277
+
1278
+ **1.18.07:**
1279
+
1280
+ - [New] Allowing to attach a ref to `<Input />`
1281
+
1282
+ **1.18.06:**
1283
+
1284
+ - [Bug] Centering the text of `<Tooltip />`
1285
+
1286
+ **1.18.05:**
1287
+
1288
+ - [Bug] Set visibility of `<Popover />` to `none` to avoid click jacking
1289
+
1290
+ **1.18.04:**
1291
+
1292
+ - [New] Added `withArrow` property to `<Tooltip />` to support arrow-less tooltips
1293
+
1294
+ **1.18.03:**
1295
+
1296
+ - [Tweak] `allowVaguePositioning` now also takes the vertical positioning into account instead of only the horizontal one
1297
+
1298
+ **1.18.02:**
1299
+
1300
+ - [Tweak] When clicking on the trigger of a `<Tooltip />` (i.e. its children) we will close the Tooltip. This is helpful so tooltips no longer overlap menu. In case you need more finegrained control over this consider using a `<Popover />` directly.
1301
+
1302
+ **1.18.01:**
1303
+
1304
+ - [Tweak] Reset margins on `<Input />` so it's visually aligned in Safari (and all other browsers) by default
1305
+
1306
+ **1.18.00:**
1307
+
1308
+ - [New] Added the utility component `<KeyCapturer>`. Use it to wrap arbitrary elements and act on keyboard events happening while it is focussed
1309
+
1310
+ **1.17.04:**
1311
+
1312
+ - [Tweak] All additionally passed props to a `<Button />` are now applied to the underlying `<button>` element. This allows you to make better use of the platform (e.g `type='submit'`) or adhere to accessibility best practices
1313
+
1314
+ **1.17.03:**
1315
+
1316
+ - [Tweak] Moved some default styles from `<Tooltip />` to `<Popover />` which should make it easier to build nice experiences with it as you no longer need to provide all the styles
1317
+
1318
+ **1.17.02:**
1319
+
1320
+ - [New] Added `size`, `spinnerColor` and `bgColor` properties to `<Loading />` for a fully customizable loading experience
1321
+
1322
+ **1.17.01:**
1323
+
1324
+ - [Tweak] Unified all border colors across all components
1325
+
1326
+ **1.17.00:**
1327
+
1328
+ - [New] Added new general purpose `<Popover />` component which also powers the `<Tooltip />` component. This allows for more flexible popovers than overriding the styles of a tooltip.
1329
+
1330
+ **1.16.08:**
1331
+
1332
+ - [New] Added support for `disabled` property to `<Checkbox />`
1333
+
1334
+ **1.16.07:**
1335
+
1336
+ - [Tweak] We now update the styles of `<Input />` when supplying the `disabled` property
1337
+
1338
+ **1.16.06:**
1339
+
1340
+ - [New] Added `medium` property to `<Modal.Box />` as a new size constant. It will produce modals that are 680px wide
1341
+ - [New] Added `plain` property to `<Modal.Body />` which removes all styling from the body for custom modals
1342
+
1343
+ **1.16.05:**
1344
+
1345
+ - [Tweak] Darkened border color of `<Select />` to border color constant
1346
+
1347
+ **1.16.04:**
1348
+
1349
+ - [Bug] Changed class name of loading `<Button />` from `loading` to `busy` to avoid clash with the `loading` class name of `<Loading />`
1350
+
1351
+ **1.16.03:**
1352
+
1353
+ - [Tweak] Darkened font and border color of secondary button to improve readability
1354
+
1355
+ **1.16.02:**
1356
+
1357
+ - [Tweak] Relaxed prop types of most components which render strings to also accept component(s)
1358
+
1359
+ **1.16.01:**
1360
+
1361
+ - [Tweak] Updated icon of `<Select />` to fit our iconography
1362
+
1363
+ **1.16.00:**
1364
+
1365
+ - [Tooling] Updated to webpack 4, babel 7 and fixed some problems in our build process. `moment`, `classnames` and `prop-types` are now correctly treated as externals and are no longer included in our production bundle. This resulted in a reduced stat size from 703kb to 160kb ⚡️
1366
+
1367
+ **1.15.24:**
1368
+
1369
+ - [Bug] When closing a modal by pressing esc we now prevent the browser's default behaviour (e.g. leaving fullscreen mode)
1370
+
1371
+ **1.15.23:**
1372
+
1373
+ - [Bug] Clicking on the inner overlay of `<Modal />` (aka left or right of the modal) when `closeOnOverlayClick` was set to `true` the modal wouldn't close
1374
+
1375
+ **1.15.22:**
1376
+
1377
+ - [Bug] Changing the `right` prop of `<Dropdown />` didn't have any effect as it was "cached" in internal state upon first construction
1378
+
1379
+ **1.15.21:**
1380
+
1381
+ - [Tweak] Added rounded corners to the blue line indicating an active tab
1382
+
1383
+ **1.15.20:**
1384
+
1385
+ - [Bug] Setting `useCapture` to `true` to catch scroll events of all elements of a page to correctly hide the tooltip
1386
+
1387
+ **1.15.19:**
1388
+
1389
+ - [New] Added `gapSize` to `<Tooltip />`
1390
+
1391
+ **1.15.18:**
1392
+
1393
+ - [Redesign] The `<Loading />` indicator is now a spinning circle instead of three bouncing dots
1394
+
1395
+ **1.15.17:**
1396
+
1397
+ - [Tweak] Inactive tabs use the secondary font color instead of custom gray
1398
+
1399
+ **1.15.16:**
1400
+
1401
+ - [Tweak] Darkened primary and secondary font colors for improved readability
1402
+
1403
+ **1.15.15:**
1404
+
1405
+ - [New] Added support for the `style` property to `<Modal.Box />` and `<Modal.Body />` for when a className is not enough
1406
+
1407
+ **1.15.14:**
1408
+
1409
+ - [Tweak] Sets the default value of the `delayShow` of the `<Tooltip />` component to 500ms (0.5s) instead of 1s
1410
+
1411
+ **1.15.13:**
1412
+
1413
+ - [Tweak] Set the margin of `<Select />` to 0 to avoid browser inconsistencies in Safari
1414
+
1415
+ **1.15.12:**
1416
+
1417
+ - [Tweak] Instead of using the default delay of 1s (1000ms) for tooltips when hovering the `<Time />` component we now use 500ms (0.5s)
1418
+
1419
+ **1.15.11:**
1420
+
1421
+ - [Redesign] The `<ColorPicker />` can now show an optional active indicator on the selected color item.
1422
+ - Additionally, we no longer hide the active color from the selection. That means you might need to check in your code that an actual change occurred.
1423
+ - [Bug] When supplying an invalid `color` prop to the `<ColorPicker />` it would crash. Now it selects the first color in the `colorList`.
1424
+
1425
+ **1.15.10:**
1426
+
1427
+ - [Tweak] Increased the size of the white inner ring that appears when hovering a color item of the `<ColorPicker />`
1428
+
1429
+ **1.15.9:**
1430
+
1431
+ - [Redesign] New design for the `<ColorPicker />`
1432
+ - It now shows the color name on hover – when supplied through the `colorList` prop
1433
+ - [Bug] `<Tooltip />`s are now correctly displayed in absolutely positioned elements (esp. `<Dropdown />`s)
1434
+
1435
+ ---
1436
+
1437
+ ... we failed to write a changelog before that version you could probably scroll through the commit history to find out more. Sorry!