@wordpress/ui 0.9.1-next.v.202603161435.0 → 0.10.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 (478) hide show
  1. package/CHANGELOG.md +38 -1
  2. package/CONTRIBUTING.md +31 -0
  3. package/build/alert-dialog/context.cjs +34 -0
  4. package/build/alert-dialog/context.cjs.map +7 -0
  5. package/build/alert-dialog/index.cjs +37 -0
  6. package/build/alert-dialog/index.cjs.map +7 -0
  7. package/build/alert-dialog/popup.cjs +93 -0
  8. package/build/alert-dialog/popup.cjs.map +7 -0
  9. package/build/alert-dialog/root.cjs +52 -0
  10. package/build/alert-dialog/root.cjs.map +7 -0
  11. package/build/alert-dialog/trigger.cjs +48 -0
  12. package/build/alert-dialog/trigger.cjs.map +7 -0
  13. package/build/alert-dialog/types.cjs +19 -0
  14. package/build/alert-dialog/types.cjs.map +7 -0
  15. package/build/badge/badge.cjs +2 -2
  16. package/build/badge/badge.cjs.map +1 -1
  17. package/build/button/button.cjs +7 -7
  18. package/build/button/button.cjs.map +2 -2
  19. package/build/card/content.cjs +3 -3
  20. package/build/card/content.cjs.map +2 -2
  21. package/build/card/full-bleed.cjs +3 -3
  22. package/build/card/full-bleed.cjs.map +2 -2
  23. package/build/card/header.cjs +3 -3
  24. package/build/card/header.cjs.map +2 -2
  25. package/build/card/root.cjs +5 -5
  26. package/build/card/root.cjs.map +2 -2
  27. package/build/card/title.cjs +26 -13
  28. package/build/card/title.cjs.map +3 -3
  29. package/build/collapsible-card/content.cjs +24 -3
  30. package/build/collapsible-card/content.cjs.map +4 -4
  31. package/build/collapsible-card/context.cjs +35 -0
  32. package/build/collapsible-card/context.cjs.map +7 -0
  33. package/build/collapsible-card/header-description.cjs +52 -0
  34. package/build/collapsible-card/header-description.cjs.map +7 -0
  35. package/build/collapsible-card/header.cjs +38 -17
  36. package/build/collapsible-card/header.cjs.map +2 -2
  37. package/build/collapsible-card/index.cjs +3 -0
  38. package/build/collapsible-card/index.cjs.map +2 -2
  39. package/build/collapsible-card/types.cjs.map +1 -1
  40. package/build/dialog/action.cjs +4 -2
  41. package/build/dialog/action.cjs.map +2 -2
  42. package/build/dialog/close-icon.cjs +2 -1
  43. package/build/dialog/close-icon.cjs.map +2 -2
  44. package/build/dialog/footer.cjs +3 -3
  45. package/build/dialog/footer.cjs.map +2 -2
  46. package/build/dialog/header.cjs +3 -3
  47. package/build/dialog/header.cjs.map +2 -2
  48. package/build/dialog/popup.cjs +22 -5
  49. package/build/dialog/popup.cjs.map +2 -2
  50. package/build/dialog/title.cjs +3 -3
  51. package/build/dialog/title.cjs.map +2 -2
  52. package/build/dialog/types.cjs.map +1 -1
  53. package/build/empty-state/actions.cjs +66 -0
  54. package/build/empty-state/actions.cjs.map +7 -0
  55. package/build/empty-state/description.cjs +66 -0
  56. package/build/empty-state/description.cjs.map +7 -0
  57. package/build/empty-state/icon.cjs +69 -0
  58. package/build/empty-state/icon.cjs.map +7 -0
  59. package/build/empty-state/index.cjs +46 -0
  60. package/build/empty-state/index.cjs.map +7 -0
  61. package/build/empty-state/root.cjs +66 -0
  62. package/build/empty-state/root.cjs.map +7 -0
  63. package/build/empty-state/title.cjs +68 -0
  64. package/build/empty-state/title.cjs.map +7 -0
  65. package/build/empty-state/types.cjs +19 -0
  66. package/build/empty-state/types.cjs.map +7 -0
  67. package/build/empty-state/visual.cjs +66 -0
  68. package/build/empty-state/visual.cjs.map +7 -0
  69. package/build/form/index.cjs +27 -0
  70. package/build/form/index.cjs.map +7 -0
  71. package/build/form/input-control/index.cjs +31 -0
  72. package/build/form/input-control/index.cjs.map +7 -0
  73. package/build/form/input-control/input-control.cjs +50 -0
  74. package/build/form/input-control/input-control.cjs.map +7 -0
  75. package/build/form/input-control/types.cjs +19 -0
  76. package/build/form/input-control/types.cjs.map +7 -0
  77. package/build/form/primitives/field/description.cjs +2 -2
  78. package/build/form/primitives/field/description.cjs.map +1 -1
  79. package/build/form/primitives/field/details.cjs +2 -2
  80. package/build/form/primitives/field/details.cjs.map +1 -1
  81. package/build/form/primitives/field/label.cjs +2 -2
  82. package/build/form/primitives/field/label.cjs.map +1 -1
  83. package/build/form/primitives/field/root.cjs +4 -4
  84. package/build/form/primitives/field/root.cjs.map +2 -2
  85. package/build/form/primitives/fieldset/description.cjs +2 -2
  86. package/build/form/primitives/fieldset/description.cjs.map +1 -1
  87. package/build/form/primitives/fieldset/details.cjs +2 -2
  88. package/build/form/primitives/fieldset/details.cjs.map +1 -1
  89. package/build/form/primitives/fieldset/legend.cjs +2 -2
  90. package/build/form/primitives/fieldset/legend.cjs.map +1 -1
  91. package/build/form/primitives/fieldset/root.cjs +2 -2
  92. package/build/form/primitives/fieldset/root.cjs.map +1 -1
  93. package/build/form/primitives/input/input.cjs +4 -4
  94. package/build/form/primitives/input/input.cjs.map +1 -1
  95. package/build/form/primitives/input-layout/input-layout.cjs +4 -4
  96. package/build/form/primitives/input-layout/input-layout.cjs.map +1 -1
  97. package/build/form/primitives/input-layout/slot.cjs +5 -4
  98. package/build/form/primitives/input-layout/slot.cjs.map +2 -2
  99. package/build/form/primitives/select/item.cjs +5 -5
  100. package/build/form/primitives/select/item.cjs.map +2 -2
  101. package/build/form/primitives/select/popup.cjs +7 -7
  102. package/build/form/primitives/select/popup.cjs.map +2 -2
  103. package/build/form/primitives/select/trigger.cjs +5 -5
  104. package/build/form/primitives/select/trigger.cjs.map +2 -2
  105. package/build/form/primitives/textarea/textarea.cjs +3 -3
  106. package/build/form/primitives/textarea/textarea.cjs.map +2 -2
  107. package/build/form/types.cjs +19 -0
  108. package/build/form/types.cjs.map +7 -0
  109. package/build/icon-button/icon-button.cjs +2 -2
  110. package/build/icon-button/icon-button.cjs.map +1 -1
  111. package/build/index.cjs +8 -2
  112. package/build/index.cjs.map +2 -2
  113. package/build/link/link.cjs +6 -6
  114. package/build/link/link.cjs.map +1 -1
  115. package/build/notice/action-button.cjs +2 -2
  116. package/build/notice/action-button.cjs.map +1 -1
  117. package/build/notice/action-link.cjs +2 -2
  118. package/build/notice/action-link.cjs.map +1 -1
  119. package/build/notice/actions.cjs +2 -2
  120. package/build/notice/actions.cjs.map +1 -1
  121. package/build/notice/close-icon.cjs +2 -2
  122. package/build/notice/close-icon.cjs.map +1 -1
  123. package/build/notice/description.cjs +2 -2
  124. package/build/notice/description.cjs.map +1 -1
  125. package/build/notice/index.cjs.map +1 -1
  126. package/build/notice/root.cjs +4 -4
  127. package/build/notice/root.cjs.map +1 -1
  128. package/build/notice/title.cjs +2 -2
  129. package/build/notice/title.cjs.map +1 -1
  130. package/build/stack/stack.cjs +2 -2
  131. package/build/stack/stack.cjs.map +1 -1
  132. package/build/tabs/context.cjs +121 -0
  133. package/build/tabs/context.cjs.map +7 -0
  134. package/build/tabs/list.cjs +3 -3
  135. package/build/tabs/list.cjs.map +2 -2
  136. package/build/tabs/panel.cjs +5 -3
  137. package/build/tabs/panel.cjs.map +2 -2
  138. package/build/tabs/root.cjs +2 -1
  139. package/build/tabs/root.cjs.map +2 -2
  140. package/build/tabs/tab.cjs +5 -3
  141. package/build/tabs/tab.cjs.map +2 -2
  142. package/build/text/text.cjs +2 -2
  143. package/build/text/text.cjs.map +1 -1
  144. package/build/tooltip/popup.cjs +4 -4
  145. package/build/tooltip/popup.cjs.map +1 -1
  146. package/build/tooltip/root.cjs.map +2 -2
  147. package/build/utils/use-deprioritized-initial-focus.cjs +64 -0
  148. package/build/utils/use-deprioritized-initial-focus.cjs.map +7 -0
  149. package/build/visually-hidden/visually-hidden.cjs +2 -2
  150. package/build/visually-hidden/visually-hidden.cjs.map +1 -1
  151. package/build-module/alert-dialog/context.mjs +9 -0
  152. package/build-module/alert-dialog/context.mjs.map +7 -0
  153. package/build-module/alert-dialog/index.mjs +10 -0
  154. package/build-module/alert-dialog/index.mjs.map +7 -0
  155. package/build-module/alert-dialog/popup.mjs +58 -0
  156. package/build-module/alert-dialog/popup.mjs.map +7 -0
  157. package/build-module/alert-dialog/root.mjs +27 -0
  158. package/build-module/alert-dialog/root.mjs.map +7 -0
  159. package/build-module/alert-dialog/trigger.mjs +13 -0
  160. package/build-module/alert-dialog/trigger.mjs.map +7 -0
  161. package/build-module/alert-dialog/types.mjs +1 -0
  162. package/build-module/alert-dialog/types.mjs.map +7 -0
  163. package/build-module/badge/badge.mjs +2 -2
  164. package/build-module/badge/badge.mjs.map +1 -1
  165. package/build-module/button/button.mjs +7 -7
  166. package/build-module/button/button.mjs.map +2 -2
  167. package/build-module/card/content.mjs +3 -3
  168. package/build-module/card/content.mjs.map +2 -2
  169. package/build-module/card/full-bleed.mjs +3 -3
  170. package/build-module/card/full-bleed.mjs.map +2 -2
  171. package/build-module/card/header.mjs +3 -3
  172. package/build-module/card/header.mjs.map +2 -2
  173. package/build-module/card/root.mjs +5 -5
  174. package/build-module/card/root.mjs.map +2 -2
  175. package/build-module/card/title.mjs +16 -13
  176. package/build-module/card/title.mjs.map +2 -2
  177. package/build-module/collapsible-card/content.mjs +24 -3
  178. package/build-module/collapsible-card/content.mjs.map +3 -3
  179. package/build-module/collapsible-card/context.mjs +10 -0
  180. package/build-module/collapsible-card/context.mjs.map +7 -0
  181. package/build-module/collapsible-card/header-description.mjs +27 -0
  182. package/build-module/collapsible-card/header-description.mjs.map +7 -0
  183. package/build-module/collapsible-card/header.mjs +39 -18
  184. package/build-module/collapsible-card/header.mjs.map +2 -2
  185. package/build-module/collapsible-card/index.mjs +2 -0
  186. package/build-module/collapsible-card/index.mjs.map +2 -2
  187. package/build-module/dialog/action.mjs +4 -2
  188. package/build-module/dialog/action.mjs.map +2 -2
  189. package/build-module/dialog/close-icon.mjs +2 -1
  190. package/build-module/dialog/close-icon.mjs.map +2 -2
  191. package/build-module/dialog/footer.mjs +3 -3
  192. package/build-module/dialog/footer.mjs.map +2 -2
  193. package/build-module/dialog/header.mjs +3 -3
  194. package/build-module/dialog/header.mjs.map +2 -2
  195. package/build-module/dialog/popup.mjs +22 -5
  196. package/build-module/dialog/popup.mjs.map +2 -2
  197. package/build-module/dialog/title.mjs +3 -3
  198. package/build-module/dialog/title.mjs.map +2 -2
  199. package/build-module/empty-state/actions.mjs +31 -0
  200. package/build-module/empty-state/actions.mjs.map +7 -0
  201. package/build-module/empty-state/description.mjs +31 -0
  202. package/build-module/empty-state/description.mjs.map +7 -0
  203. package/build-module/empty-state/icon.mjs +34 -0
  204. package/build-module/empty-state/icon.mjs.map +7 -0
  205. package/build-module/empty-state/index.mjs +16 -0
  206. package/build-module/empty-state/index.mjs.map +7 -0
  207. package/build-module/empty-state/root.mjs +31 -0
  208. package/build-module/empty-state/root.mjs.map +7 -0
  209. package/build-module/empty-state/title.mjs +33 -0
  210. package/build-module/empty-state/title.mjs.map +7 -0
  211. package/build-module/empty-state/types.mjs +1 -0
  212. package/build-module/empty-state/types.mjs.map +7 -0
  213. package/build-module/empty-state/visual.mjs +31 -0
  214. package/build-module/empty-state/visual.mjs.map +7 -0
  215. package/build-module/form/index.mjs +4 -0
  216. package/build-module/form/index.mjs.map +7 -0
  217. package/build-module/form/input-control/index.mjs +6 -0
  218. package/build-module/form/input-control/index.mjs.map +7 -0
  219. package/build-module/form/input-control/input-control.mjs +25 -0
  220. package/build-module/form/input-control/input-control.mjs.map +7 -0
  221. package/build-module/form/input-control/types.mjs +1 -0
  222. package/build-module/form/input-control/types.mjs.map +7 -0
  223. package/build-module/form/primitives/field/description.mjs +2 -2
  224. package/build-module/form/primitives/field/description.mjs.map +1 -1
  225. package/build-module/form/primitives/field/details.mjs +2 -2
  226. package/build-module/form/primitives/field/details.mjs.map +1 -1
  227. package/build-module/form/primitives/field/label.mjs +2 -2
  228. package/build-module/form/primitives/field/label.mjs.map +1 -1
  229. package/build-module/form/primitives/field/root.mjs +4 -4
  230. package/build-module/form/primitives/field/root.mjs.map +2 -2
  231. package/build-module/form/primitives/fieldset/description.mjs +2 -2
  232. package/build-module/form/primitives/fieldset/description.mjs.map +1 -1
  233. package/build-module/form/primitives/fieldset/details.mjs +2 -2
  234. package/build-module/form/primitives/fieldset/details.mjs.map +1 -1
  235. package/build-module/form/primitives/fieldset/legend.mjs +2 -2
  236. package/build-module/form/primitives/fieldset/legend.mjs.map +1 -1
  237. package/build-module/form/primitives/fieldset/root.mjs +2 -2
  238. package/build-module/form/primitives/fieldset/root.mjs.map +1 -1
  239. package/build-module/form/primitives/input/input.mjs +4 -4
  240. package/build-module/form/primitives/input/input.mjs.map +1 -1
  241. package/build-module/form/primitives/input-layout/input-layout.mjs +4 -4
  242. package/build-module/form/primitives/input-layout/input-layout.mjs.map +1 -1
  243. package/build-module/form/primitives/input-layout/slot.mjs +5 -4
  244. package/build-module/form/primitives/input-layout/slot.mjs.map +2 -2
  245. package/build-module/form/primitives/select/item.mjs +5 -5
  246. package/build-module/form/primitives/select/item.mjs.map +2 -2
  247. package/build-module/form/primitives/select/popup.mjs +7 -7
  248. package/build-module/form/primitives/select/popup.mjs.map +2 -2
  249. package/build-module/form/primitives/select/trigger.mjs +5 -5
  250. package/build-module/form/primitives/select/trigger.mjs.map +2 -2
  251. package/build-module/form/primitives/textarea/textarea.mjs +3 -3
  252. package/build-module/form/primitives/textarea/textarea.mjs.map +2 -2
  253. package/build-module/form/types.mjs +1 -0
  254. package/build-module/form/types.mjs.map +7 -0
  255. package/build-module/icon-button/icon-button.mjs +2 -2
  256. package/build-module/icon-button/icon-button.mjs.map +1 -1
  257. package/build-module/index.mjs +5 -1
  258. package/build-module/index.mjs.map +2 -2
  259. package/build-module/link/link.mjs +6 -6
  260. package/build-module/link/link.mjs.map +1 -1
  261. package/build-module/notice/action-button.mjs +2 -2
  262. package/build-module/notice/action-button.mjs.map +1 -1
  263. package/build-module/notice/action-link.mjs +2 -2
  264. package/build-module/notice/action-link.mjs.map +1 -1
  265. package/build-module/notice/actions.mjs +2 -2
  266. package/build-module/notice/actions.mjs.map +1 -1
  267. package/build-module/notice/close-icon.mjs +2 -2
  268. package/build-module/notice/close-icon.mjs.map +1 -1
  269. package/build-module/notice/description.mjs +2 -2
  270. package/build-module/notice/description.mjs.map +1 -1
  271. package/build-module/notice/index.mjs.map +1 -1
  272. package/build-module/notice/root.mjs +4 -4
  273. package/build-module/notice/root.mjs.map +1 -1
  274. package/build-module/notice/title.mjs +2 -2
  275. package/build-module/notice/title.mjs.map +1 -1
  276. package/build-module/stack/stack.mjs +2 -2
  277. package/build-module/stack/stack.mjs.map +1 -1
  278. package/build-module/tabs/context.mjs +101 -0
  279. package/build-module/tabs/context.mjs.map +7 -0
  280. package/build-module/tabs/list.mjs +3 -3
  281. package/build-module/tabs/list.mjs.map +2 -2
  282. package/build-module/tabs/panel.mjs +5 -3
  283. package/build-module/tabs/panel.mjs.map +2 -2
  284. package/build-module/tabs/root.mjs +2 -1
  285. package/build-module/tabs/root.mjs.map +2 -2
  286. package/build-module/tabs/tab.mjs +5 -3
  287. package/build-module/tabs/tab.mjs.map +2 -2
  288. package/build-module/text/text.mjs +2 -2
  289. package/build-module/text/text.mjs.map +1 -1
  290. package/build-module/tooltip/popup.mjs +4 -4
  291. package/build-module/tooltip/popup.mjs.map +1 -1
  292. package/build-module/tooltip/root.mjs.map +2 -2
  293. package/build-module/utils/use-deprioritized-initial-focus.mjs +39 -0
  294. package/build-module/utils/use-deprioritized-initial-focus.mjs.map +7 -0
  295. package/build-module/visually-hidden/visually-hidden.mjs +2 -2
  296. package/build-module/visually-hidden/visually-hidden.mjs.map +1 -1
  297. package/build-types/alert-dialog/context.d.ts +8 -0
  298. package/build-types/alert-dialog/context.d.ts.map +1 -0
  299. package/build-types/alert-dialog/index.d.ts +4 -0
  300. package/build-types/alert-dialog/index.d.ts.map +1 -0
  301. package/build-types/alert-dialog/popup.d.ts +4 -0
  302. package/build-types/alert-dialog/popup.d.ts.map +1 -0
  303. package/build-types/alert-dialog/root.d.ts +24 -0
  304. package/build-types/alert-dialog/root.d.ts.map +1 -0
  305. package/build-types/alert-dialog/stories/index.story.d.ts +44 -0
  306. package/build-types/alert-dialog/stories/index.story.d.ts.map +1 -0
  307. package/build-types/alert-dialog/test/index.test.d.ts +2 -0
  308. package/build-types/alert-dialog/test/index.test.d.ts.map +1 -0
  309. package/build-types/alert-dialog/trigger.d.ts +6 -0
  310. package/build-types/alert-dialog/trigger.d.ts.map +1 -0
  311. package/build-types/alert-dialog/types.d.ts +70 -0
  312. package/build-types/alert-dialog/types.d.ts.map +1 -0
  313. package/build-types/card/title.d.ts.map +1 -1
  314. package/build-types/collapsible-card/content.d.ts.map +1 -1
  315. package/build-types/collapsible-card/context.d.ts +4 -0
  316. package/build-types/collapsible-card/context.d.ts.map +1 -0
  317. package/build-types/collapsible-card/header-description.d.ts +15 -0
  318. package/build-types/collapsible-card/header-description.d.ts.map +1 -0
  319. package/build-types/collapsible-card/header.d.ts.map +1 -1
  320. package/build-types/collapsible-card/index.d.ts +2 -1
  321. package/build-types/collapsible-card/index.d.ts.map +1 -1
  322. package/build-types/collapsible-card/stories/index.story.d.ts +10 -0
  323. package/build-types/collapsible-card/stories/index.story.d.ts.map +1 -1
  324. package/build-types/collapsible-card/types.d.ts +21 -0
  325. package/build-types/collapsible-card/types.d.ts.map +1 -1
  326. package/build-types/dialog/action.d.ts.map +1 -1
  327. package/build-types/dialog/close-icon.d.ts.map +1 -1
  328. package/build-types/dialog/popup.d.ts.map +1 -1
  329. package/build-types/dialog/stories/index.story.d.ts +0 -6
  330. package/build-types/dialog/stories/index.story.d.ts.map +1 -1
  331. package/build-types/dialog/types.d.ts +5 -5
  332. package/build-types/dialog/types.d.ts.map +1 -1
  333. package/build-types/empty-state/actions.d.ts +7 -0
  334. package/build-types/empty-state/actions.d.ts.map +1 -0
  335. package/build-types/empty-state/description.d.ts +7 -0
  336. package/build-types/empty-state/description.d.ts.map +1 -0
  337. package/build-types/empty-state/icon.d.ts +7 -0
  338. package/build-types/empty-state/icon.d.ts.map +1 -0
  339. package/build-types/empty-state/index.d.ts +8 -0
  340. package/build-types/empty-state/index.d.ts.map +1 -0
  341. package/build-types/empty-state/root.d.ts +6 -0
  342. package/build-types/empty-state/root.d.ts.map +1 -0
  343. package/build-types/empty-state/stories/index.story.d.ts +8 -0
  344. package/build-types/empty-state/stories/index.story.d.ts.map +1 -0
  345. package/build-types/empty-state/test/actions.test.d.ts +2 -0
  346. package/build-types/empty-state/test/actions.test.d.ts.map +1 -0
  347. package/build-types/empty-state/test/description.test.d.ts +2 -0
  348. package/build-types/empty-state/test/description.test.d.ts.map +1 -0
  349. package/build-types/empty-state/test/icon.test.d.ts +2 -0
  350. package/build-types/empty-state/test/icon.test.d.ts.map +1 -0
  351. package/build-types/empty-state/test/root.test.d.ts +2 -0
  352. package/build-types/empty-state/test/root.test.d.ts.map +1 -0
  353. package/build-types/empty-state/test/title.test.d.ts +2 -0
  354. package/build-types/empty-state/test/title.test.d.ts.map +1 -0
  355. package/build-types/empty-state/test/visual.test.d.ts +2 -0
  356. package/build-types/empty-state/test/visual.test.d.ts.map +1 -0
  357. package/build-types/empty-state/title.d.ts +6 -0
  358. package/build-types/empty-state/title.d.ts.map +1 -0
  359. package/build-types/empty-state/types.d.ts +40 -0
  360. package/build-types/empty-state/types.d.ts.map +1 -0
  361. package/build-types/empty-state/visual.d.ts +7 -0
  362. package/build-types/empty-state/visual.d.ts.map +1 -0
  363. package/build-types/form/index.d.ts +3 -0
  364. package/build-types/form/index.d.ts.map +1 -0
  365. package/build-types/form/input-control/index.d.ts +2 -0
  366. package/build-types/form/input-control/index.d.ts.map +1 -0
  367. package/build-types/form/input-control/input-control.d.ts +6 -0
  368. package/build-types/form/input-control/input-control.d.ts.map +1 -0
  369. package/build-types/form/input-control/stories/index.story.d.ts +16 -0
  370. package/build-types/form/input-control/stories/index.story.d.ts.map +1 -0
  371. package/build-types/form/input-control/test/index.test.d.ts +2 -0
  372. package/build-types/form/input-control/test/index.test.d.ts.map +1 -0
  373. package/build-types/form/input-control/types.d.ts +4 -0
  374. package/build-types/form/input-control/types.d.ts.map +1 -0
  375. package/build-types/form/primitives/field/stories/index.story.d.ts.map +1 -1
  376. package/build-types/form/primitives/fieldset/stories/index.story.d.ts.map +1 -1
  377. package/build-types/form/primitives/input/stories/index.story.d.ts +2 -0
  378. package/build-types/form/primitives/input/stories/index.story.d.ts.map +1 -1
  379. package/build-types/form/primitives/input-layout/slot.d.ts.map +1 -1
  380. package/build-types/form/primitives/input-layout/stories/index.story.d.ts +5 -0
  381. package/build-types/form/primitives/input-layout/stories/index.story.d.ts.map +1 -1
  382. package/build-types/form/stories/shared.d.ts +3 -0
  383. package/build-types/form/stories/shared.d.ts.map +1 -0
  384. package/build-types/form/types.d.ts +30 -0
  385. package/build-types/form/types.d.ts.map +1 -0
  386. package/build-types/index.d.ts +3 -1
  387. package/build-types/index.d.ts.map +1 -1
  388. package/build-types/notice/index.d.ts +0 -1
  389. package/build-types/notice/index.d.ts.map +1 -1
  390. package/build-types/tabs/context.d.ts +26 -0
  391. package/build-types/tabs/context.d.ts.map +1 -0
  392. package/build-types/tabs/panel.d.ts.map +1 -1
  393. package/build-types/tabs/root.d.ts.map +1 -1
  394. package/build-types/tabs/tab.d.ts.map +1 -1
  395. package/build-types/tooltip/root.d.ts +12 -0
  396. package/build-types/tooltip/root.d.ts.map +1 -1
  397. package/build-types/tooltip/stories/index.story.d.ts.map +1 -1
  398. package/build-types/utils/test/use-deprioritized-initial-focus.test.d.ts +2 -0
  399. package/build-types/utils/test/use-deprioritized-initial-focus.test.d.ts.map +1 -0
  400. package/build-types/utils/use-deprioritized-initial-focus.d.ts +35 -0
  401. package/build-types/utils/use-deprioritized-initial-focus.d.ts.map +1 -0
  402. package/package.json +17 -16
  403. package/src/alert-dialog/context.tsx +14 -0
  404. package/src/alert-dialog/index.ts +3 -0
  405. package/src/alert-dialog/popup.tsx +58 -0
  406. package/src/alert-dialog/root.tsx +48 -0
  407. package/src/alert-dialog/stories/index.story.tsx +254 -0
  408. package/src/alert-dialog/style.module.css +10 -0
  409. package/src/alert-dialog/test/index.test.tsx +537 -0
  410. package/src/alert-dialog/trigger.tsx +15 -0
  411. package/src/alert-dialog/types.ts +83 -0
  412. package/src/button/style.module.css +2 -0
  413. package/src/card/stories/index.story.tsx +1 -1
  414. package/src/card/style.module.css +3 -5
  415. package/src/card/title.tsx +12 -11
  416. package/src/collapsible-card/content.tsx +16 -3
  417. package/src/collapsible-card/context.ts +7 -0
  418. package/src/collapsible-card/header-description.tsx +43 -0
  419. package/src/collapsible-card/header.tsx +47 -24
  420. package/src/collapsible-card/index.ts +2 -1
  421. package/src/collapsible-card/stories/index.story.tsx +99 -1
  422. package/src/collapsible-card/style.module.css +34 -2
  423. package/src/collapsible-card/test/index.test.tsx +96 -9
  424. package/src/collapsible-card/types.ts +22 -0
  425. package/src/dialog/action.tsx +8 -2
  426. package/src/dialog/close-icon.tsx +1 -0
  427. package/src/dialog/popup.tsx +21 -2
  428. package/src/dialog/stories/index.story.tsx +0 -28
  429. package/src/dialog/style.module.css +5 -5
  430. package/src/dialog/test/index.test.tsx +117 -0
  431. package/src/dialog/types.ts +11 -5
  432. package/src/empty-state/actions.tsx +24 -0
  433. package/src/empty-state/description.tsx +27 -0
  434. package/src/empty-state/icon.tsx +24 -0
  435. package/src/empty-state/index.ts +8 -0
  436. package/src/empty-state/root.tsx +23 -0
  437. package/src/empty-state/stories/index.story.tsx +64 -0
  438. package/src/empty-state/style.module.css +53 -0
  439. package/src/empty-state/test/actions.test.tsx +18 -0
  440. package/src/empty-state/test/description.test.tsx +13 -0
  441. package/src/empty-state/test/icon.test.tsx +13 -0
  442. package/src/empty-state/test/root.test.tsx +13 -0
  443. package/src/empty-state/test/title.test.tsx +13 -0
  444. package/src/empty-state/test/visual.test.tsx +17 -0
  445. package/src/empty-state/title.tsx +23 -0
  446. package/src/empty-state/types.ts +45 -0
  447. package/src/empty-state/visual.tsx +24 -0
  448. package/src/form/index.ts +3 -0
  449. package/src/form/input-control/index.ts +1 -0
  450. package/src/form/input-control/input-control.tsx +33 -0
  451. package/src/form/input-control/stories/index.story.tsx +163 -0
  452. package/src/form/input-control/test/index.test.tsx +53 -0
  453. package/src/form/input-control/types.ts +5 -0
  454. package/src/form/primitives/field/root.tsx +2 -2
  455. package/src/form/primitives/field/stories/index.story.tsx +2 -7
  456. package/src/form/primitives/fieldset/stories/index.story.tsx +2 -7
  457. package/src/form/primitives/input/stories/index.story.tsx +7 -0
  458. package/src/form/primitives/input-layout/slot.tsx +6 -2
  459. package/src/form/primitives/input-layout/stories/index.story.tsx +22 -1
  460. package/src/form/primitives/stories/overview.mdx +15 -0
  461. package/src/form/primitives/textarea/textarea.tsx +1 -1
  462. package/src/form/stories/shared.tsx +19 -0
  463. package/src/form/types.ts +34 -0
  464. package/src/index.ts +3 -1
  465. package/src/notice/index.ts +0 -2
  466. package/src/notice/style.module.css +1 -1
  467. package/src/tabs/context.tsx +170 -0
  468. package/src/tabs/panel.tsx +3 -0
  469. package/src/tabs/root.tsx +6 -1
  470. package/src/tabs/style.module.css +1 -1
  471. package/src/tabs/tab.tsx +3 -0
  472. package/src/tabs/test/index.test.tsx +162 -0
  473. package/src/tooltip/root.tsx +12 -0
  474. package/src/tooltip/stories/index.story.tsx +20 -15
  475. package/src/utils/css/item-popup.module.css +1 -0
  476. package/src/utils/css/select-trigger.module.css +1 -0
  477. package/src/utils/test/use-deprioritized-initial-focus.test.tsx +230 -0
  478. package/src/utils/use-deprioritized-initial-focus.ts +83 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root.test.d.ts","sourceRoot":"","sources":["../../../src/empty-state/test/root.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=title.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"title.test.d.ts","sourceRoot":"","sources":["../../../src/empty-state/test/title.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=visual.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visual.test.d.ts","sourceRoot":"","sources":["../../../src/empty-state/test/visual.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import type { EmptyStateTitleProps } from './types';
2
+ /**
3
+ * The title is a short heading that communicates the empty state.
4
+ */
5
+ export declare const Title: import("react").ForwardRefExoticComponent<EmptyStateTitleProps & import("react").RefAttributes<HTMLHeadingElement>>;
6
+ //# sourceMappingURL=title.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/empty-state/title.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAGpD;;GAEG;AACH,eAAO,MAAM,KAAK,qHAajB,CAAC"}
@@ -0,0 +1,40 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { ComponentProps } from '../utils/types';
3
+ import type { IconProps } from '../icon/types';
4
+ export interface EmptyStateRootProps extends ComponentProps<'div'> {
5
+ /**
6
+ * The content to be rendered inside the component.
7
+ */
8
+ children?: ReactNode;
9
+ }
10
+ export interface EmptyStateVisualProps extends ComponentProps<'div'> {
11
+ /**
12
+ * The visual content of the empty state (e.g., icon, illustration).
13
+ */
14
+ children?: ReactNode;
15
+ }
16
+ export interface EmptyStateIconProps extends ComponentProps<'div'> {
17
+ /**
18
+ * The icon to render.
19
+ */
20
+ icon: IconProps['icon'];
21
+ }
22
+ export interface EmptyStateTitleProps extends ComponentProps<'h2'> {
23
+ /**
24
+ * The title text of the empty state.
25
+ */
26
+ children?: ReactNode;
27
+ }
28
+ export interface EmptyStateDescriptionProps extends ComponentProps<'p'> {
29
+ /**
30
+ * The description text of the empty state.
31
+ */
32
+ children?: ReactNode;
33
+ }
34
+ export interface EmptyStateActionsProps extends ComponentProps<'div'> {
35
+ /**
36
+ * The action buttons for the empty state.
37
+ */
38
+ children?: ReactNode;
39
+ }
40
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/empty-state/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,WAAW,mBAAoB,SAAQ,cAAc,CAAE,KAAK,CAAE;IACnE;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,qBAAsB,SAAQ,cAAc,CAAE,KAAK,CAAE;IACrE;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc,CAAE,KAAK,CAAE;IACnE;;OAEG;IACH,IAAI,EAAE,SAAS,CAAE,MAAM,CAAE,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAqB,SAAQ,cAAc,CAAE,IAAI,CAAE;IACnE;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,0BAA2B,SAAQ,cAAc,CAAE,GAAG,CAAE;IACxE;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,sBAAuB,SAAQ,cAAc,CAAE,KAAK,CAAE;IACtE;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB"}
@@ -0,0 +1,7 @@
1
+ import type { EmptyStateVisualProps } from './types';
2
+ /**
3
+ * A container for visual content in an empty state (e.g., icons, illustrations).
4
+ * Provides appropriate spacing and alignment for visual elements.
5
+ */
6
+ export declare const Visual: import("react").ForwardRefExoticComponent<EmptyStateVisualProps & import("react").RefAttributes<HTMLDivElement>>;
7
+ //# sourceMappingURL=visual.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visual.d.ts","sourceRoot":"","sources":["../../src/empty-state/visual.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGrD;;;GAGG;AACH,eAAO,MAAM,MAAM,kHAalB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './primitives';
2
+ export * from './input-control';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/form/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAE7B,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { InputControl } from './input-control';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/form/input-control/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { InputControlProps } from './types';
2
+ /**
3
+ * A complete input field with integrated label and description.
4
+ */
5
+ export declare const InputControl: import("react").ForwardRefExoticComponent<Omit<InputControlProps, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
6
+ //# sourceMappingURL=input-control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-control.d.ts","sourceRoot":"","sources":["../../../src/form/input-control/input-control.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,YAAY,6HAyBxB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { InputControl } from '../../..';
3
+ import { WithPrefix, WithSuffixControl } from '../../primitives/input/stories/index.story';
4
+ declare const meta: Meta<typeof InputControl>;
5
+ export default meta;
6
+ type Story = StoryObj<typeof InputControl>;
7
+ export declare const Default: Story;
8
+ export declare const VisuallyHiddenLabel: Story;
9
+ export declare const WithDetails: Story;
10
+ export { WithPrefix, WithSuffixControl };
11
+ export declare const Password: Story;
12
+ export declare const Date: Story;
13
+ export declare const Number: Story;
14
+ export declare const NumberWithSteppers: Story;
15
+ export declare const Disabled: Story;
16
+ //# sourceMappingURL=index.story.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../src/form/input-control/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAc,YAAY,EAAsB,MAAM,UAAU,CAAC;AACxE,OAAO,EACN,UAAU,EACV,iBAAiB,EACjB,MAAM,4CAA4C,CAAC;AAMpD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,YAAY,CASpC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,YAAY,CAAE,CAAC;AAE7C,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,KAKjC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KASzB,CAAC;AAUF,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;AAEzC,eAAO,MAAM,QAAQ,EAAE,KA0BtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAKlB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAiDhC,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../../src/form/input-control/test/index.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import type { Input } from '../primitives';
2
+ import type { ControlProps } from '../types';
3
+ export type InputControlProps = React.ComponentProps<typeof Input> & ControlProps;
4
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/form/input-control/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,cAAc,CAAE,OAAO,KAAK,CAAE,GACnE,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/field/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,KAAK,CAAC,IAAI,CAUlC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAchD,CAAC;AAQF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAoBrD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAoB5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAWpD,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAkBpD,CAAC"}
1
+ {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/field/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,KAAK,CAAC,IAAI,CAUlC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAchD,CAAC;AAQF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAoBrD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAoB5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAWpD,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAE,OAAO,KAAK,CAAC,IAAI,CAYpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/fieldset/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,QAAQ,CAAC,IAAI,CAQrC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,QAAQ,CAAC,IAAI,CAAE,CAAC;AAE9C,eAAO,MAAM,OAAO,EAAE,KAiBrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,KAc1B,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,EAAE,KAqBzB,CAAC"}
1
+ {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/fieldset/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,QAAQ,CAAC,IAAI,CAQrC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,QAAQ,CAAC,IAAI,CAAE,CAAC;AAE9C,eAAO,MAAM,OAAO,EAAE,KAiBrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,KAc1B,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,EAAE,KAezB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { Meta, StoryObj } from '@storybook/react-vite';
2
2
  import { Input } from '../../../..';
3
+ import { WithSuffixControl } from '../../input-layout/stories/index.story';
3
4
  declare const meta: Meta<typeof Input>;
4
5
  export default meta;
5
6
  type Story = StoryObj<typeof Input>;
@@ -9,5 +10,6 @@ export declare const Default: Story;
9
10
  * the `prefix` or `suffix` slot.
10
11
  */
11
12
  export declare const WithPrefix: Story;
13
+ export { WithSuffixControl };
12
14
  export declare const Disabled: Story;
13
15
  //# sourceMappingURL=index.story.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/input/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAe,MAAM,aAAa,CAAC;AAEjD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,KAAK,CAS7B,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,KAAK,CAAE,CAAC;AAEtC,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC"}
1
+ {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/input/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAe,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,KAAK,CAS7B,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,KAAK,CAAE,CAAC;AAEtC,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAC;AAMF,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"slot.d.ts","sourceRoot":"","sources":["../../../../src/form/primitives/input-layout/slot.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,eAAe,iHAczB,CAAC"}
1
+ {"version":3,"file":"slot.d.ts","sourceRoot":"","sources":["../../../../src/form/primitives/input-layout/slot.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,eAAe,iHAkBzB,CAAC"}
@@ -15,6 +15,11 @@ export declare const WithPrefix: Story;
15
15
  * The `padding="minimal"` setting will work best when the slot content is a button or icon.
16
16
  */
17
17
  export declare const WithPaddedPrefix: Story;
18
+ /**
19
+ * The `padding="minimal"` setting on `InputLayout.Slot` will work best when
20
+ * the slot content is a button or icon.
21
+ */
22
+ export declare const WithSuffixControl: Story;
18
23
  export declare const Compact: Story;
19
24
  /**
20
25
  * The `small` size is intended only for rare cases like the trigger
@@ -1 +1 @@
1
- {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/input-layout/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,WAAW,CAMnC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,WAAW,CAAE,CAAC;AAE5C,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAiBxB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAI9B,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAInB,CAAC"}
1
+ {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../../../src/form/primitives/input-layout/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAc,WAAW,EAAE,MAAM,aAAa,CAAC;AAEtD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,WAAW,CAMnC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,WAAW,CAAE,CAAC;AAE5C,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAiBxB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAI9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAc/B,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAInB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const WITH_DETAILS_DESCRIPTION = "To add rich content (such as links) to the description, use the `details` prop.\n\nAlthough this content is not associated with the field using direct semantics,\nit is made discoverable to screen reader users via a visually hidden description,\nalerting them to the presence of additional information below.\n\n**Important:** If the content only includes plain text, use `description` instead,\nso the readout is not unnecessarily verbose for screen reader users.";
2
+ export declare const DETAILS_EXAMPLE: import("react").JSX.Element;
3
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/form/stories/shared.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB,qdAQgC,CAAC;AAEtE,eAAO,MAAM,eAAe,6BAQ3B,CAAC"}
@@ -0,0 +1,30 @@
1
+ import type { Field } from './primitives';
2
+ export type ControlProps = {
3
+ /**
4
+ * The accessible label. All controls must be labeled.
5
+ */
6
+ label: React.ComponentProps<typeof Field.Label>['children'];
7
+ /**
8
+ * The accessible description, associated using `aria-describedby`.
9
+ *
10
+ * For screen reader accessibility, this should only contain plain text,
11
+ * and no semantics such as links.
12
+ */
13
+ description?: React.ComponentProps<typeof Field.Description>['children'];
14
+ /**
15
+ * Additional information about the field, which unlike a normal description,
16
+ * can include links and other semantic elements.
17
+ *
18
+ * Do not use this prop when the content is only plain text;
19
+ * use `description` instead.
20
+ */
21
+ details?: React.ComponentProps<typeof Field.Details>['children'];
22
+ /**
23
+ * Whether to visually hide the label while keeping it accessible
24
+ * to screen readers.
25
+ *
26
+ * @default false
27
+ */
28
+ hideLabelFromVision?: React.ComponentProps<typeof Field.Label>['hideFromVision'];
29
+ };
30
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/form/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,YAAY,GAAG;IAC1B;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC,cAAc,CAAE,OAAO,KAAK,CAAC,KAAK,CAAE,CAAE,UAAU,CAAE,CAAC;IAChE;;;;;OAKG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,cAAc,CACjC,OAAO,KAAK,CAAC,WAAW,CACxB,CAAE,UAAU,CAAE,CAAC;IAChB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,cAAc,CAAE,OAAO,KAAK,CAAC,OAAO,CAAE,CAAE,UAAU,CAAE,CAAC;IACrE;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,KAAK,CAAC,cAAc,CACzC,OAAO,KAAK,CAAC,KAAK,CAClB,CAAE,gBAAgB,CAAE,CAAC;CACtB,CAAC"}
@@ -3,8 +3,10 @@ export * from './button';
3
3
  export * as Card from './card';
4
4
  export * as Collapsible from './collapsible';
5
5
  export * as CollapsibleCard from './collapsible-card';
6
+ export * as AlertDialog from './alert-dialog';
6
7
  export * as Dialog from './dialog';
7
- export * from './form/primitives';
8
+ export * as EmptyState from './empty-state';
9
+ export * from './form';
8
10
  export * from './icon';
9
11
  export * from './icon-button';
10
12
  export * from './link';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,eAAe,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,eAAe,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
@@ -6,5 +6,4 @@ import { CloseIcon } from './close-icon';
6
6
  import { ActionButton } from './action-button';
7
7
  import { ActionLink } from './action-link';
8
8
  export { Root, Title, Description, Actions, CloseIcon, ActionButton, ActionLink, };
9
- export type { NoticeIntent } from './types';
10
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/notice/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EACN,IAAI,EACJ,KAAK,EACL,WAAW,EACX,OAAO,EACP,SAAS,EACT,YAAY,EACZ,UAAU,GACV,CAAC;AAEF,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/notice/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EACN,IAAI,EACJ,KAAK,EACL,WAAW,EACX,OAAO,EACP,SAAS,EACT,YAAY,EACZ,UAAU,GACV,CAAC"}
@@ -0,0 +1,26 @@
1
+ declare function useRegisterTabDev(): void;
2
+ /**
3
+ * Hook that registers a Tab for count validation in development mode.
4
+ */
5
+ export declare const useRegisterTab: typeof useRegisterTabDev;
6
+ declare function useRegisterPanelDev(): void;
7
+ /**
8
+ * Hook that registers a Panel for count validation in development mode.
9
+ */
10
+ export declare const useRegisterPanel: typeof useRegisterPanelDev;
11
+ /**
12
+ * Development-only provider that tracks the number of registered tabs and
13
+ * panels, and warns when the counts don't match.
14
+ */
15
+ declare function TabsValidationProviderDev({ children, }: {
16
+ children: React.ReactNode;
17
+ }): import("react").JSX.Element;
18
+ /**
19
+ * Provider component that validates the number of tabs matches the number
20
+ * of panels in development mode.
21
+ *
22
+ * In production, this component is a no-op and just renders children.
23
+ */
24
+ export declare const TabsValidationProvider: typeof TabsValidationProviderDev;
25
+ export {};
26
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tabs/context.tsx"],"names":[],"mappings":"AAwBA,iBAAS,iBAAiB,SASzB;AAMD;;GAEG;AACH,eAAO,MAAM,cAAc,0BAEN,CAAC;AAEtB,iBAAS,mBAAmB,SAS3B;AAMD;;GAEG;AACH,eAAO,MAAM,gBAAgB,4BAEN,CAAC;AAExB;;;GAGG;AACH,iBAAS,yBAAyB,CAAE,EACnC,QAAQ,GACR,EAAE;IACF,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B,+BAwEA;AAaD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,kCAEN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/tabs/panel.tsx"],"names":[],"mappings":"AAMA;;;;;GAKG;AACH,eAAO,MAAM,KAAK;;;;;;;kDAUjB,CAAC"}
1
+ {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/tabs/panel.tsx"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,eAAO,MAAM,KAAK;;;;;;;kDAYjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/tabs/root.tsx"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;;;;;;kDAIhB,CAAC"}
1
+ {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/tabs/root.tsx"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;;;;;;kDAQhB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tab.d.ts","sourceRoot":"","sources":["../../src/tabs/tab.tsx"],"names":[],"mappings":"AAQA;;;;;GAKG;AACH,eAAO,MAAM,GAAG;;;;;;;qDAcb,CAAC"}
1
+ {"version":3,"file":"tab.d.ts","sourceRoot":"","sources":["../../src/tabs/tab.tsx"],"names":[],"mappings":"AASA;;;;;GAKG;AACH,eAAO,MAAM,GAAG;;;;;;;qDAgBb,CAAC"}
@@ -1,4 +1,16 @@
1
1
  import type { RootProps } from './types';
2
+ /**
3
+ * `Tooltip` is used to visually show the label of an icon button, or other such interactive controls
4
+ * that don't have a visual text label.
5
+ *
6
+ * Tooltips are not available on touch devices, and thus should not be used for infotips,
7
+ * descriptions, or dynamic status messages.
8
+ *
9
+ * The tooltip itself does not provide any accessible labeling, so when using the
10
+ * `Tooltip` primitive you must ensure that the trigger is accessibly labeled (e.g. with an `aria-label`).
11
+ *
12
+ * See also: [IconButton](https://wordpress.github.io/gutenberg/?path=/docs/design-system-components-iconbutton--docs)
13
+ */
2
14
  declare function Root(props: RootProps): import("react").JSX.Element;
3
15
  export { Root };
4
16
  //# sourceMappingURL=root.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/tooltip/root.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,iBAAS,IAAI,CAAE,KAAK,EAAE,SAAS,+BAE9B;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/tooltip/root.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;;;;;;;;;;GAWG;AACH,iBAAS,IAAI,CAAE,KAAK,EAAE,SAAS,+BAE9B;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../src/tooltip/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,OAAO,CAAC,IAAI,CAQpC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CASlD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CAMnD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CA+BtD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CAgBvD,CAAC"}
1
+ {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../src/tooltip/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAQ,OAAO,EAAE,MAAM,OAAO,CAAC;AAEtC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,OAAO,CAAC,IAAI,CAQpC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CASlD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CAMnD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CA+BtD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAE,OAAO,OAAO,CAAC,IAAI,CAoBvD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=use-deprioritized-initial-focus.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-deprioritized-initial-focus.test.d.ts","sourceRoot":"","sources":["../../../src/utils/test/use-deprioritized-initial-focus.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import type { Dialog as _Dialog } from '@base-ui/react/dialog';
2
+ /**
3
+ * Derived from Base UI's `Dialog.Popup.Props['initialFocus']`.
4
+ * The same type is shared by all Base UI overlay popups (Dialog, Popover, etc.).
5
+ */
6
+ type InitialFocus = _Dialog.Popup.Props['initialFocus'];
7
+ /**
8
+ * Returns a resolved `initialFocus` value that deprioritizes elements
9
+ * marked with a given data attribute (e.g. a close icon), and an internal
10
+ * ref that must be merged onto the popup element.
11
+ *
12
+ * When `initialFocus` is `undefined` or `true` (the default behavior),
13
+ * the hook replaces it with a callback that:
14
+ * 1. On touch interactions — focuses the popup element itself (preventing
15
+ * the virtual keyboard on Android), matching Base UI's default.
16
+ * 2. On other interactions — returns the first tabbable element that does
17
+ * *not* carry `deprioritizedAttribute`. Falls back to Base UI's default
18
+ * when the deprioritized element is the only tabbable element.
19
+ *
20
+ * All other `initialFocus` values (`false`, `RefObject`, callback) pass
21
+ * through unchanged.
22
+ *
23
+ * @param props
24
+ * @param props.initialFocus The consumer-provided `initialFocus` value.
25
+ * @param props.deprioritizedAttribute The data attribute whose elements should be deprioritized.
26
+ */
27
+ export declare function useDeprioritizedInitialFocus({ initialFocus, deprioritizedAttribute, }: {
28
+ initialFocus: InitialFocus;
29
+ deprioritizedAttribute: string;
30
+ }): {
31
+ resolvedInitialFocus: boolean | import("react").RefObject<HTMLElement | null> | ((openType: import("@base-ui/utils/useEnhancedClickHandler").InteractionType) => boolean | HTMLElement | null | void) | undefined;
32
+ popupRef: import("react").RefObject<HTMLDivElement>;
33
+ };
34
+ export {};
35
+ //# sourceMappingURL=use-deprioritized-initial-focus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-deprioritized-initial-focus.d.ts","sourceRoot":"","sources":["../../src/utils/use-deprioritized-initial-focus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAI/D;;;GAGG;AACH,KAAK,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAE,cAAc,CAAE,CAAC;AAe1D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,4BAA4B,CAAE,EAC7C,YAAY,EACZ,sBAAsB,GACtB,EAAE;IACF,YAAY,EAAE,YAAY,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;CAC/B;;;EAiCA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/ui",
3
- "version": "0.9.1-next.v.202603161435.0+ab4981c4f",
3
+ "version": "0.10.0",
4
4
  "description": "Themeable React UI components for the WordPress Design System.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -43,25 +43,26 @@
43
43
  "types": "build-types",
44
44
  "sideEffects": false,
45
45
  "dependencies": {
46
- "@base-ui/react": "^1.2.0",
47
- "@wordpress/a11y": "^4.41.1-next.v.202603161435.0+ab4981c4f",
48
- "@wordpress/compose": "^7.41.1-next.v.202603161435.0+ab4981c4f",
49
- "@wordpress/element": "^6.41.1-next.v.202603161435.0+ab4981c4f",
50
- "@wordpress/i18n": "^6.14.1-next.v.202603161435.0+ab4981c4f",
51
- "@wordpress/icons": "^12.0.1-next.v.202603161435.0+ab4981c4f",
52
- "@wordpress/keycodes": "^4.41.1-next.v.202603161435.0+ab4981c4f",
53
- "@wordpress/primitives": "^4.41.1-next.v.202603161435.0+ab4981c4f",
54
- "@wordpress/private-apis": "^1.41.1-next.v.202603161435.0+ab4981c4f",
55
- "@wordpress/theme": "^0.8.1-next.v.202603161435.0+ab4981c4f",
56
- "clsx": "^2.1.1"
46
+ "@base-ui/react": "^1.3.0",
47
+ "@wordpress/a11y": "^4.43.0",
48
+ "@wordpress/compose": "^7.43.0",
49
+ "@wordpress/element": "^6.43.0",
50
+ "@wordpress/i18n": "^6.16.0",
51
+ "@wordpress/icons": "^12.1.0",
52
+ "@wordpress/keycodes": "^4.43.0",
53
+ "@wordpress/primitives": "^4.43.0",
54
+ "@wordpress/private-apis": "^1.43.0",
55
+ "@wordpress/theme": "^0.10.0",
56
+ "clsx": "^2.1.1",
57
+ "tabbable": "^6.4.0"
57
58
  },
58
59
  "devDependencies": {
59
- "@storybook/addon-docs": "^10.1.11",
60
- "@storybook/react-vite": "^10.1.11",
60
+ "@storybook/addon-docs": "^10.2.8",
61
+ "@storybook/react-vite": "^10.2.8",
61
62
  "@testing-library/jest-dom": "^6.9.1",
62
63
  "@types/jest": "^29.5.14",
63
64
  "@types/node": "^20.17.10",
64
- "storybook": "^10.1.11"
65
+ "storybook": "^10.2.8"
65
66
  },
66
67
  "peerDependencies": {
67
68
  "react": "^18.0.0",
@@ -70,5 +71,5 @@
70
71
  "publishConfig": {
71
72
  "access": "public"
72
73
  },
73
- "gitHead": "748f4e4564fcc0e6ae90200d90bb993a3cef5828"
74
+ "gitHead": "2cea90674d11aa521ec3f71652fb3a6a4c383969"
74
75
  }
@@ -0,0 +1,14 @@
1
+ import { createContext } from '@wordpress/element';
2
+ import type { RootProps } from './types';
3
+
4
+ type Intent = NonNullable< RootProps[ 'intent' ] >;
5
+
6
+ interface AlertDialogContextValue {
7
+ intent: Intent;
8
+ }
9
+
10
+ const AlertDialogContext = createContext< AlertDialogContextValue >( {
11
+ intent: 'default',
12
+ } );
13
+
14
+ export { AlertDialogContext };
@@ -0,0 +1,3 @@
1
+ export { Root } from './root';
2
+ export { Trigger } from './trigger';
3
+ export { Popup } from './popup';
@@ -0,0 +1,58 @@
1
+ import { forwardRef, useContext } from '@wordpress/element';
2
+ import { __ } from '@wordpress/i18n';
3
+ import { Button } from '../button';
4
+ import * as Dialog from '../dialog';
5
+ import { AlertDialogContext } from './context';
6
+ import styles from './style.module.css';
7
+ import type { PopupProps } from './types';
8
+
9
+ const Popup = forwardRef< HTMLDivElement, PopupProps >(
10
+ function AlertDialogPopup(
11
+ {
12
+ title,
13
+ children,
14
+ onConfirm,
15
+ confirmButtonText = __( 'OK' ),
16
+ cancelButtonText = __( 'Cancel' ),
17
+ loading,
18
+ },
19
+ ref
20
+ ) {
21
+ const { intent } = useContext( AlertDialogContext );
22
+
23
+ // When `loading` is provided, the consumer controls when the dialog
24
+ // closes (async flow). Use a plain Button so clicking confirm doesn't
25
+ // auto-close — the consumer sets `open={false}` after their operation.
26
+ const ConfirmButton = loading !== undefined ? Button : Dialog.Action;
27
+
28
+ return (
29
+ <Dialog.Popup ref={ ref }>
30
+ <Dialog.Header>
31
+ <Dialog.Title>{ title }</Dialog.Title>
32
+ </Dialog.Header>
33
+ { children }
34
+ <Dialog.Footer>
35
+ <Dialog.Action
36
+ variant="minimal"
37
+ disabled={ loading || undefined }
38
+ >
39
+ { cancelButtonText }
40
+ </Dialog.Action>
41
+ <ConfirmButton
42
+ className={
43
+ intent === 'irreversible'
44
+ ? styles[ 'irreversible-action' ]
45
+ : undefined
46
+ }
47
+ onClick={ onConfirm }
48
+ loading={ loading }
49
+ >
50
+ { confirmButtonText }
51
+ </ConfirmButton>
52
+ </Dialog.Footer>
53
+ </Dialog.Popup>
54
+ );
55
+ }
56
+ );
57
+
58
+ export { Popup };
@@ -0,0 +1,48 @@
1
+ import { AlertDialog as _AlertDialog } from '@base-ui/react/alert-dialog';
2
+ import { useMemo } from '@wordpress/element';
3
+ import { AlertDialogContext } from './context';
4
+ import type { RootProps } from './types';
5
+
6
+ /**
7
+ * A dialog that requires a user response to proceed.
8
+ *
9
+ * Use `AlertDialog.Trigger` to render a button that opens the dialog.
10
+ * Use `AlertDialog.Popup` to render the dialog content.
11
+ * The `AlertDialog.Trigger` is optional — the dialog can also be controlled
12
+ * via `open` / `onOpenChange` props.
13
+ *
14
+ * ## Use cases
15
+ *
16
+ * - **Default intent**: Standard confirmation dialog for reversible actions.
17
+ * - **Irreversible intent**: Confirmation dialog for irreversible actions that
18
+ * cannot be undone. The confirm button uses error/danger coloring.
19
+ *
20
+ * For use cases outside the standard confirm/cancel pattern, use the lower-level
21
+ * `Dialog` component directly.
22
+ *
23
+ * See the [Destructive Actions guidelines](?path=/docs/design-system-patterns-destructive-actions--docs)
24
+ * for more details on when to use each pattern.
25
+ */
26
+ function Root( {
27
+ intent = 'default',
28
+ children,
29
+ open,
30
+ onOpenChange,
31
+ defaultOpen,
32
+ }: RootProps ) {
33
+ const contextValue = useMemo( () => ( { intent } ), [ intent ] );
34
+
35
+ return (
36
+ <_AlertDialog.Root
37
+ open={ open }
38
+ onOpenChange={ onOpenChange }
39
+ defaultOpen={ defaultOpen }
40
+ >
41
+ <AlertDialogContext.Provider value={ contextValue }>
42
+ { children }
43
+ </AlertDialogContext.Provider>
44
+ </_AlertDialog.Root>
45
+ );
46
+ }
47
+
48
+ export { Root };