@wordpress/ui 0.12.0 → 0.13.1-next.v.202605131006.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 (521) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/CONTRIBUTING.md +34 -0
  3. package/build/alert-dialog/popup.cjs +92 -22
  4. package/build/alert-dialog/popup.cjs.map +3 -3
  5. package/build/badge/badge.cjs +84 -5
  6. package/build/badge/badge.cjs.map +3 -3
  7. package/build/button/button.cjs +90 -20
  8. package/build/button/button.cjs.map +3 -3
  9. package/build/button/icon.cjs.map +2 -2
  10. package/build/button/index.cjs +1 -0
  11. package/build/button/index.cjs.map +3 -3
  12. package/build/button/types.cjs.map +1 -1
  13. package/build/card/content.cjs +84 -5
  14. package/build/card/content.cjs.map +3 -3
  15. package/build/card/full-bleed.cjs +84 -5
  16. package/build/card/full-bleed.cjs.map +3 -3
  17. package/build/card/header.cjs +84 -5
  18. package/build/card/header.cjs.map +3 -3
  19. package/build/card/root.cjs +86 -10
  20. package/build/card/root.cjs.map +3 -3
  21. package/build/collapsible-card/content.cjs +85 -6
  22. package/build/collapsible-card/content.cjs.map +3 -3
  23. package/build/collapsible-card/header.cjs +131 -52
  24. package/build/collapsible-card/header.cjs.map +3 -3
  25. package/build/dialog/content.cjs +86 -10
  26. package/build/dialog/content.cjs.map +3 -3
  27. package/build/dialog/description.cjs +84 -5
  28. package/build/dialog/description.cjs.map +3 -3
  29. package/build/dialog/footer.cjs +84 -5
  30. package/build/dialog/footer.cjs.map +3 -3
  31. package/build/dialog/header.cjs +84 -5
  32. package/build/dialog/header.cjs.map +3 -3
  33. package/build/dialog/popup.cjs +86 -7
  34. package/build/dialog/popup.cjs.map +3 -3
  35. package/build/dialog/title.cjs +84 -5
  36. package/build/dialog/title.cjs.map +3 -3
  37. package/build/drawer/content.cjs +103 -19
  38. package/build/drawer/content.cjs.map +4 -4
  39. package/build/drawer/footer.cjs +84 -5
  40. package/build/drawer/footer.cjs.map +3 -3
  41. package/build/drawer/header.cjs +84 -5
  42. package/build/drawer/header.cjs.map +3 -3
  43. package/build/drawer/popup.cjs +86 -7
  44. package/build/drawer/popup.cjs.map +3 -3
  45. package/build/drawer/title.cjs +84 -5
  46. package/build/drawer/title.cjs.map +3 -3
  47. package/build/drawer/types.cjs.map +1 -1
  48. package/build/empty-state/actions.cjs +84 -5
  49. package/build/empty-state/actions.cjs.map +3 -3
  50. package/build/empty-state/description.cjs +84 -5
  51. package/build/empty-state/description.cjs.map +3 -3
  52. package/build/empty-state/icon.cjs +84 -5
  53. package/build/empty-state/icon.cjs.map +3 -3
  54. package/build/empty-state/root.cjs +84 -5
  55. package/build/empty-state/root.cjs.map +3 -3
  56. package/build/empty-state/title.cjs +84 -5
  57. package/build/empty-state/title.cjs.map +3 -3
  58. package/build/empty-state/visual.cjs +84 -5
  59. package/build/empty-state/visual.cjs.map +3 -3
  60. package/build/form/index.cjs +3 -1
  61. package/build/form/index.cjs.map +2 -2
  62. package/build/form/primitives/autocomplete/empty.cjs +84 -5
  63. package/build/form/primitives/autocomplete/empty.cjs.map +3 -3
  64. package/build/form/primitives/autocomplete/item.cjs +86 -10
  65. package/build/form/primitives/autocomplete/item.cjs.map +3 -3
  66. package/build/form/primitives/autocomplete/list-body.cjs +84 -5
  67. package/build/form/primitives/autocomplete/list-body.cjs.map +3 -3
  68. package/build/form/primitives/autocomplete/list.cjs +84 -5
  69. package/build/form/primitives/autocomplete/list.cjs.map +3 -3
  70. package/build/form/primitives/autocomplete/popup.cjs +90 -17
  71. package/build/form/primitives/autocomplete/popup.cjs.map +3 -3
  72. package/build/form/primitives/field/description.cjs +86 -10
  73. package/build/form/primitives/field/description.cjs.map +3 -3
  74. package/build/form/primitives/field/details.cjs +84 -5
  75. package/build/form/primitives/field/details.cjs.map +3 -3
  76. package/build/form/primitives/field/label.cjs +84 -5
  77. package/build/form/primitives/field/label.cjs.map +3 -3
  78. package/build/form/primitives/field/root.cjs +84 -5
  79. package/build/form/primitives/field/root.cjs.map +3 -3
  80. package/build/form/primitives/fieldset/description.cjs +86 -10
  81. package/build/form/primitives/fieldset/description.cjs.map +3 -3
  82. package/build/form/primitives/fieldset/details.cjs +84 -5
  83. package/build/form/primitives/fieldset/details.cjs.map +3 -3
  84. package/build/form/primitives/fieldset/legend.cjs +84 -5
  85. package/build/form/primitives/fieldset/legend.cjs.map +3 -3
  86. package/build/form/primitives/fieldset/root.cjs +84 -5
  87. package/build/form/primitives/fieldset/root.cjs.map +3 -3
  88. package/build/form/primitives/input/input.cjs +88 -15
  89. package/build/form/primitives/input/input.cjs.map +3 -3
  90. package/build/form/primitives/input-layout/input-layout.cjs +88 -15
  91. package/build/form/primitives/input-layout/input-layout.cjs.map +3 -3
  92. package/build/form/primitives/input-layout/slot.cjs +84 -5
  93. package/build/form/primitives/input-layout/slot.cjs.map +3 -3
  94. package/build/form/primitives/select/item.cjs +87 -11
  95. package/build/form/primitives/select/item.cjs.map +3 -3
  96. package/build/form/primitives/select/popup.cjs +90 -17
  97. package/build/form/primitives/select/popup.cjs.map +3 -3
  98. package/build/form/primitives/select/root.cjs.map +2 -2
  99. package/build/form/primitives/select/trigger.cjs +98 -16
  100. package/build/form/primitives/select/trigger.cjs.map +3 -3
  101. package/build/form/primitives/select/types.cjs.map +1 -1
  102. package/build/form/primitives/textarea/textarea.cjs +86 -10
  103. package/build/form/primitives/textarea/textarea.cjs.map +3 -3
  104. package/build/form/select-control/context.cjs +37 -0
  105. package/build/form/select-control/context.cjs.map +7 -0
  106. package/build/form/select-control/index.cjs +39 -0
  107. package/build/form/select-control/index.cjs.map +7 -0
  108. package/build/form/select-control/item.cjs +41 -0
  109. package/build/form/select-control/item.cjs.map +7 -0
  110. package/build/form/select-control/select-control.cjs +75 -0
  111. package/build/form/select-control/select-control.cjs.map +7 -0
  112. package/build/form/select-control/types.cjs +19 -0
  113. package/build/form/select-control/types.cjs.map +7 -0
  114. package/build/form/types.cjs.map +1 -1
  115. package/build/icon-button/icon-button.cjs +86 -6
  116. package/build/icon-button/icon-button.cjs.map +3 -3
  117. package/build/icon-button/types.cjs.map +1 -1
  118. package/build/link/link.cjs +90 -20
  119. package/build/link/link.cjs.map +3 -3
  120. package/build/notice/action-button.cjs +84 -5
  121. package/build/notice/action-button.cjs.map +3 -3
  122. package/build/notice/action-link.cjs +84 -5
  123. package/build/notice/action-link.cjs.map +3 -3
  124. package/build/notice/actions.cjs +84 -5
  125. package/build/notice/actions.cjs.map +3 -3
  126. package/build/notice/close-icon.cjs +84 -5
  127. package/build/notice/close-icon.cjs.map +3 -3
  128. package/build/notice/description.cjs +84 -5
  129. package/build/notice/description.cjs.map +3 -3
  130. package/build/notice/root.cjs +86 -10
  131. package/build/notice/root.cjs.map +3 -3
  132. package/build/notice/title.cjs +84 -5
  133. package/build/notice/title.cjs.map +3 -3
  134. package/build/popover/arrow.cjs +84 -5
  135. package/build/popover/arrow.cjs.map +3 -3
  136. package/build/popover/popup.cjs +88 -12
  137. package/build/popover/popup.cjs.map +3 -3
  138. package/build/popover/title.cjs +84 -5
  139. package/build/popover/title.cjs.map +3 -3
  140. package/build/stack/stack.cjs +84 -5
  141. package/build/stack/stack.cjs.map +3 -3
  142. package/build/tabs/list.cjs +84 -5
  143. package/build/tabs/list.cjs.map +3 -3
  144. package/build/tabs/panel.cjs +86 -10
  145. package/build/tabs/panel.cjs.map +3 -3
  146. package/build/tabs/tab.cjs +84 -5
  147. package/build/tabs/tab.cjs.map +3 -3
  148. package/build/text/text.cjs +86 -10
  149. package/build/text/text.cjs.map +3 -3
  150. package/build/tooltip/index.cjs +3 -0
  151. package/build/tooltip/index.cjs.map +2 -2
  152. package/build/tooltip/popup.cjs +111 -40
  153. package/build/tooltip/popup.cjs.map +3 -3
  154. package/build/tooltip/positioner.cjs +159 -0
  155. package/build/tooltip/positioner.cjs.map +7 -0
  156. package/build/tooltip/types.cjs.map +1 -1
  157. package/build/utils/{render-portal-with-children.cjs → render-slot-with-children.cjs} +9 -12
  158. package/build/utils/render-slot-with-children.cjs.map +7 -0
  159. package/build/visually-hidden/visually-hidden.cjs +84 -5
  160. package/build/visually-hidden/visually-hidden.cjs.map +3 -3
  161. package/build-module/alert-dialog/popup.mjs +92 -22
  162. package/build-module/alert-dialog/popup.mjs.map +3 -3
  163. package/build-module/badge/badge.mjs +84 -5
  164. package/build-module/badge/badge.mjs.map +3 -3
  165. package/build-module/button/button.mjs +90 -20
  166. package/build-module/button/button.mjs.map +3 -3
  167. package/build-module/button/icon.mjs.map +2 -2
  168. package/build-module/button/index.mjs +3 -2
  169. package/build-module/button/index.mjs.map +2 -2
  170. package/build-module/card/content.mjs +84 -5
  171. package/build-module/card/content.mjs.map +3 -3
  172. package/build-module/card/full-bleed.mjs +84 -5
  173. package/build-module/card/full-bleed.mjs.map +3 -3
  174. package/build-module/card/header.mjs +84 -5
  175. package/build-module/card/header.mjs.map +3 -3
  176. package/build-module/card/root.mjs +86 -10
  177. package/build-module/card/root.mjs.map +3 -3
  178. package/build-module/collapsible-card/content.mjs +85 -6
  179. package/build-module/collapsible-card/content.mjs.map +3 -3
  180. package/build-module/collapsible-card/header.mjs +131 -52
  181. package/build-module/collapsible-card/header.mjs.map +3 -3
  182. package/build-module/dialog/content.mjs +86 -10
  183. package/build-module/dialog/content.mjs.map +3 -3
  184. package/build-module/dialog/description.mjs +84 -5
  185. package/build-module/dialog/description.mjs.map +3 -3
  186. package/build-module/dialog/footer.mjs +84 -5
  187. package/build-module/dialog/footer.mjs.map +3 -3
  188. package/build-module/dialog/header.mjs +84 -5
  189. package/build-module/dialog/header.mjs.map +3 -3
  190. package/build-module/dialog/popup.mjs +86 -7
  191. package/build-module/dialog/popup.mjs.map +3 -3
  192. package/build-module/dialog/title.mjs +84 -5
  193. package/build-module/dialog/title.mjs.map +3 -3
  194. package/build-module/drawer/content.mjs +103 -19
  195. package/build-module/drawer/content.mjs.map +3 -3
  196. package/build-module/drawer/footer.mjs +84 -5
  197. package/build-module/drawer/footer.mjs.map +3 -3
  198. package/build-module/drawer/header.mjs +84 -5
  199. package/build-module/drawer/header.mjs.map +3 -3
  200. package/build-module/drawer/popup.mjs +86 -7
  201. package/build-module/drawer/popup.mjs.map +3 -3
  202. package/build-module/drawer/title.mjs +84 -5
  203. package/build-module/drawer/title.mjs.map +3 -3
  204. package/build-module/empty-state/actions.mjs +84 -5
  205. package/build-module/empty-state/actions.mjs.map +3 -3
  206. package/build-module/empty-state/description.mjs +84 -5
  207. package/build-module/empty-state/description.mjs.map +3 -3
  208. package/build-module/empty-state/icon.mjs +84 -5
  209. package/build-module/empty-state/icon.mjs.map +3 -3
  210. package/build-module/empty-state/root.mjs +84 -5
  211. package/build-module/empty-state/root.mjs.map +3 -3
  212. package/build-module/empty-state/title.mjs +84 -5
  213. package/build-module/empty-state/title.mjs.map +3 -3
  214. package/build-module/empty-state/visual.mjs +84 -5
  215. package/build-module/empty-state/visual.mjs.map +3 -3
  216. package/build-module/form/index.mjs +1 -0
  217. package/build-module/form/index.mjs.map +2 -2
  218. package/build-module/form/primitives/autocomplete/empty.mjs +84 -5
  219. package/build-module/form/primitives/autocomplete/empty.mjs.map +3 -3
  220. package/build-module/form/primitives/autocomplete/item.mjs +86 -10
  221. package/build-module/form/primitives/autocomplete/item.mjs.map +3 -3
  222. package/build-module/form/primitives/autocomplete/list-body.mjs +84 -5
  223. package/build-module/form/primitives/autocomplete/list-body.mjs.map +3 -3
  224. package/build-module/form/primitives/autocomplete/list.mjs +84 -5
  225. package/build-module/form/primitives/autocomplete/list.mjs.map +3 -3
  226. package/build-module/form/primitives/autocomplete/popup.mjs +90 -17
  227. package/build-module/form/primitives/autocomplete/popup.mjs.map +3 -3
  228. package/build-module/form/primitives/field/description.mjs +86 -10
  229. package/build-module/form/primitives/field/description.mjs.map +3 -3
  230. package/build-module/form/primitives/field/details.mjs +84 -5
  231. package/build-module/form/primitives/field/details.mjs.map +3 -3
  232. package/build-module/form/primitives/field/label.mjs +84 -5
  233. package/build-module/form/primitives/field/label.mjs.map +3 -3
  234. package/build-module/form/primitives/field/root.mjs +84 -5
  235. package/build-module/form/primitives/field/root.mjs.map +3 -3
  236. package/build-module/form/primitives/fieldset/description.mjs +86 -10
  237. package/build-module/form/primitives/fieldset/description.mjs.map +3 -3
  238. package/build-module/form/primitives/fieldset/details.mjs +84 -5
  239. package/build-module/form/primitives/fieldset/details.mjs.map +3 -3
  240. package/build-module/form/primitives/fieldset/legend.mjs +84 -5
  241. package/build-module/form/primitives/fieldset/legend.mjs.map +3 -3
  242. package/build-module/form/primitives/fieldset/root.mjs +84 -5
  243. package/build-module/form/primitives/fieldset/root.mjs.map +3 -3
  244. package/build-module/form/primitives/input/input.mjs +88 -15
  245. package/build-module/form/primitives/input/input.mjs.map +3 -3
  246. package/build-module/form/primitives/input-layout/input-layout.mjs +88 -15
  247. package/build-module/form/primitives/input-layout/input-layout.mjs.map +3 -3
  248. package/build-module/form/primitives/input-layout/slot.mjs +84 -5
  249. package/build-module/form/primitives/input-layout/slot.mjs.map +3 -3
  250. package/build-module/form/primitives/select/item.mjs +87 -11
  251. package/build-module/form/primitives/select/item.mjs.map +3 -3
  252. package/build-module/form/primitives/select/popup.mjs +90 -17
  253. package/build-module/form/primitives/select/popup.mjs.map +3 -3
  254. package/build-module/form/primitives/select/root.mjs.map +2 -2
  255. package/build-module/form/primitives/select/trigger.mjs +98 -16
  256. package/build-module/form/primitives/select/trigger.mjs.map +3 -3
  257. package/build-module/form/primitives/textarea/textarea.mjs +86 -10
  258. package/build-module/form/primitives/textarea/textarea.mjs.map +3 -3
  259. package/build-module/form/select-control/context.mjs +11 -0
  260. package/build-module/form/select-control/context.mjs.map +7 -0
  261. package/build-module/form/select-control/index.mjs +14 -0
  262. package/build-module/form/select-control/index.mjs.map +7 -0
  263. package/build-module/form/select-control/item.mjs +16 -0
  264. package/build-module/form/select-control/item.mjs.map +7 -0
  265. package/build-module/form/select-control/select-control.mjs +50 -0
  266. package/build-module/form/select-control/select-control.mjs.map +7 -0
  267. package/build-module/form/select-control/types.mjs +1 -0
  268. package/build-module/form/select-control/types.mjs.map +7 -0
  269. package/build-module/icon-button/icon-button.mjs +86 -6
  270. package/build-module/icon-button/icon-button.mjs.map +3 -3
  271. package/build-module/link/link.mjs +90 -20
  272. package/build-module/link/link.mjs.map +3 -3
  273. package/build-module/notice/action-button.mjs +84 -5
  274. package/build-module/notice/action-button.mjs.map +3 -3
  275. package/build-module/notice/action-link.mjs +84 -5
  276. package/build-module/notice/action-link.mjs.map +3 -3
  277. package/build-module/notice/actions.mjs +84 -5
  278. package/build-module/notice/actions.mjs.map +3 -3
  279. package/build-module/notice/close-icon.mjs +84 -5
  280. package/build-module/notice/close-icon.mjs.map +3 -3
  281. package/build-module/notice/description.mjs +84 -5
  282. package/build-module/notice/description.mjs.map +3 -3
  283. package/build-module/notice/root.mjs +86 -10
  284. package/build-module/notice/root.mjs.map +3 -3
  285. package/build-module/notice/title.mjs +84 -5
  286. package/build-module/notice/title.mjs.map +3 -3
  287. package/build-module/popover/arrow.mjs +84 -5
  288. package/build-module/popover/arrow.mjs.map +3 -3
  289. package/build-module/popover/popup.mjs +88 -12
  290. package/build-module/popover/popup.mjs.map +3 -3
  291. package/build-module/popover/title.mjs +84 -5
  292. package/build-module/popover/title.mjs.map +3 -3
  293. package/build-module/stack/stack.mjs +84 -5
  294. package/build-module/stack/stack.mjs.map +3 -3
  295. package/build-module/tabs/list.mjs +84 -5
  296. package/build-module/tabs/list.mjs.map +3 -3
  297. package/build-module/tabs/panel.mjs +86 -10
  298. package/build-module/tabs/panel.mjs.map +3 -3
  299. package/build-module/tabs/tab.mjs +84 -5
  300. package/build-module/tabs/tab.mjs.map +3 -3
  301. package/build-module/text/text.mjs +86 -10
  302. package/build-module/text/text.mjs.map +3 -3
  303. package/build-module/tooltip/index.mjs +2 -0
  304. package/build-module/tooltip/index.mjs.map +2 -2
  305. package/build-module/tooltip/popup.mjs +111 -40
  306. package/build-module/tooltip/popup.mjs.map +3 -3
  307. package/build-module/tooltip/positioner.mjs +124 -0
  308. package/build-module/tooltip/positioner.mjs.map +7 -0
  309. package/build-module/utils/render-slot-with-children.mjs +9 -0
  310. package/build-module/utils/render-slot-with-children.mjs.map +7 -0
  311. package/build-module/visually-hidden/visually-hidden.mjs +84 -5
  312. package/build-module/visually-hidden/visually-hidden.mjs.map +3 -3
  313. package/build-types/alert-dialog/portal.d.ts +1 -1
  314. package/build-types/alert-dialog/portal.d.ts.map +1 -1
  315. package/build-types/alert-dialog/root.d.ts +1 -1
  316. package/build-types/alert-dialog/root.d.ts.map +1 -1
  317. package/build-types/alert-dialog/stories/index.story.d.ts.map +1 -1
  318. package/build-types/badge/stories/choosing-intent.story.d.ts.map +1 -1
  319. package/build-types/badge/stories/index.story.d.ts.map +1 -1
  320. package/build-types/button/button.d.ts +3 -0
  321. package/build-types/button/button.d.ts.map +1 -1
  322. package/build-types/button/icon.d.ts +1 -8
  323. package/build-types/button/icon.d.ts.map +1 -1
  324. package/build-types/button/index.d.ts +6 -5
  325. package/build-types/button/index.d.ts.map +1 -1
  326. package/build-types/button/stories/index.story.d.ts.map +1 -1
  327. package/build-types/button/types.d.ts +7 -0
  328. package/build-types/button/types.d.ts.map +1 -1
  329. package/build-types/card/stories/index.story.d.ts.map +1 -1
  330. package/build-types/collapsible/panel.d.ts +1 -1
  331. package/build-types/collapsible/root.d.ts +1 -1
  332. package/build-types/collapsible/stories/index.story.d.ts.map +1 -1
  333. package/build-types/collapsible/trigger.d.ts +1 -1
  334. package/build-types/collapsible-card/header.d.ts +6 -0
  335. package/build-types/collapsible-card/header.d.ts.map +1 -1
  336. package/build-types/collapsible-card/stories/index.story.d.ts +8 -0
  337. package/build-types/collapsible-card/stories/index.story.d.ts.map +1 -1
  338. package/build-types/dialog/context.d.ts +2 -2
  339. package/build-types/dialog/popup.d.ts +1 -2
  340. package/build-types/dialog/popup.d.ts.map +1 -1
  341. package/build-types/dialog/portal.d.ts +1 -1
  342. package/build-types/dialog/portal.d.ts.map +1 -1
  343. package/build-types/dialog/stories/index.story.d.ts.map +1 -1
  344. package/build-types/drawer/content.d.ts +7 -4
  345. package/build-types/drawer/content.d.ts.map +1 -1
  346. package/build-types/drawer/context.d.ts +2 -2
  347. package/build-types/drawer/popup.d.ts +1 -2
  348. package/build-types/drawer/popup.d.ts.map +1 -1
  349. package/build-types/drawer/stories/index.story.d.ts.map +1 -1
  350. package/build-types/drawer/types.d.ts +1 -1
  351. package/build-types/empty-state/stories/index.story.d.ts.map +1 -1
  352. package/build-types/form/index.d.ts +1 -0
  353. package/build-types/form/index.d.ts.map +1 -1
  354. package/build-types/form/input-control/stories/index.story.d.ts.map +1 -1
  355. package/build-types/form/primitives/autocomplete/clear.d.ts +1 -1
  356. package/build-types/form/primitives/autocomplete/empty.d.ts +1 -1
  357. package/build-types/form/primitives/autocomplete/input-group.d.ts +1 -1
  358. package/build-types/form/primitives/autocomplete/item.d.ts +1 -1
  359. package/build-types/form/primitives/autocomplete/list-body.d.ts +1 -1
  360. package/build-types/form/primitives/autocomplete/list.d.ts +2 -2
  361. package/build-types/form/primitives/autocomplete/popup.d.ts +2 -2
  362. package/build-types/form/primitives/autocomplete/portal.d.ts +1 -1
  363. package/build-types/form/primitives/autocomplete/portal.d.ts.map +1 -1
  364. package/build-types/form/primitives/autocomplete/stories/index.story.d.ts.map +1 -1
  365. package/build-types/form/primitives/field/control.d.ts +2 -2
  366. package/build-types/form/primitives/field/description.d.ts +1 -1
  367. package/build-types/form/primitives/field/details.d.ts +1 -1
  368. package/build-types/form/primitives/field/label.d.ts +3 -3
  369. package/build-types/form/primitives/field/root.d.ts +3 -3
  370. package/build-types/form/primitives/field/stories/index.story.d.ts.map +1 -1
  371. package/build-types/form/primitives/fieldset/description.d.ts +1 -1
  372. package/build-types/form/primitives/fieldset/details.d.ts +1 -1
  373. package/build-types/form/primitives/fieldset/legend.d.ts +1 -1
  374. package/build-types/form/primitives/fieldset/root.d.ts +1 -1
  375. package/build-types/form/primitives/fieldset/stories/index.story.d.ts.map +1 -1
  376. package/build-types/form/primitives/input/input.d.ts +5 -5
  377. package/build-types/form/primitives/input/stories/index.story.d.ts.map +1 -1
  378. package/build-types/form/primitives/input-layout/stories/index.story.d.ts.map +1 -1
  379. package/build-types/form/primitives/select/item.d.ts +3 -3
  380. package/build-types/form/primitives/select/popup.d.ts +2 -2
  381. package/build-types/form/primitives/select/root.d.ts +12 -1
  382. package/build-types/form/primitives/select/root.d.ts.map +1 -1
  383. package/build-types/form/primitives/select/stories/index.story.d.ts +9 -6
  384. package/build-types/form/primitives/select/stories/index.story.d.ts.map +1 -1
  385. package/build-types/form/primitives/select/trigger.d.ts +5 -4
  386. package/build-types/form/primitives/select/trigger.d.ts.map +1 -1
  387. package/build-types/form/primitives/select/types.d.ts +12 -4
  388. package/build-types/form/primitives/select/types.d.ts.map +1 -1
  389. package/build-types/form/primitives/textarea/stories/index.story.d.ts.map +1 -1
  390. package/build-types/form/primitives/textarea/textarea.d.ts +2 -2
  391. package/build-types/form/select-control/context.d.ts +3 -0
  392. package/build-types/form/select-control/context.d.ts.map +1 -0
  393. package/build-types/form/select-control/index.d.ts +20 -0
  394. package/build-types/form/select-control/index.d.ts.map +1 -0
  395. package/build-types/form/select-control/item.d.ts +6 -0
  396. package/build-types/form/select-control/item.d.ts.map +1 -0
  397. package/build-types/form/select-control/select-control.d.ts +11 -0
  398. package/build-types/form/select-control/select-control.d.ts.map +1 -0
  399. package/build-types/form/select-control/stories/index.story.d.ts +40 -0
  400. package/build-types/form/select-control/stories/index.story.d.ts.map +1 -0
  401. package/build-types/form/select-control/test/index.test.d.ts +2 -0
  402. package/build-types/form/select-control/test/index.test.d.ts.map +1 -0
  403. package/build-types/form/select-control/types.d.ts +40 -0
  404. package/build-types/form/select-control/types.d.ts.map +1 -0
  405. package/build-types/form/types.d.ts +1 -1
  406. package/build-types/form/types.d.ts.map +1 -1
  407. package/build-types/icon/stories/index.story.d.ts.map +1 -1
  408. package/build-types/icon-button/icon-button.d.ts +2 -1
  409. package/build-types/icon-button/icon-button.d.ts.map +1 -1
  410. package/build-types/icon-button/stories/index.story.d.ts +5 -0
  411. package/build-types/icon-button/stories/index.story.d.ts.map +1 -1
  412. package/build-types/icon-button/types.d.ts +8 -0
  413. package/build-types/icon-button/types.d.ts.map +1 -1
  414. package/build-types/link/stories/index.story.d.ts.map +1 -1
  415. package/build-types/notice/stories/index.story.d.ts.map +1 -1
  416. package/build-types/popover/stories/index.story.d.ts.map +1 -1
  417. package/build-types/stack/stories/index.story.d.ts.map +1 -1
  418. package/build-types/tabs/context.d.ts +1 -1
  419. package/build-types/tabs/context.d.ts.map +1 -1
  420. package/build-types/tabs/list.d.ts +2 -2
  421. package/build-types/tabs/panel.d.ts +1 -1
  422. package/build-types/tabs/root.d.ts +1 -1
  423. package/build-types/tabs/stories/index.story.d.ts.map +1 -1
  424. package/build-types/tabs/tab.d.ts +1 -1
  425. package/build-types/text/stories/index.story.d.ts.map +1 -1
  426. package/build-types/tooltip/index.d.ts +2 -1
  427. package/build-types/tooltip/index.d.ts.map +1 -1
  428. package/build-types/tooltip/popup.d.ts.map +1 -1
  429. package/build-types/tooltip/positioner.d.ts +9 -0
  430. package/build-types/tooltip/positioner.d.ts.map +1 -0
  431. package/build-types/tooltip/stories/index.story.d.ts +11 -2
  432. package/build-types/tooltip/stories/index.story.d.ts.map +1 -1
  433. package/build-types/tooltip/stories/usage-guidelines.story.d.ts.map +1 -1
  434. package/build-types/tooltip/types.d.ts +10 -1
  435. package/build-types/tooltip/types.d.ts.map +1 -1
  436. package/build-types/utils/create-overlay-modal-context.d.ts.map +1 -1
  437. package/build-types/utils/render-slot-with-children.d.ts +24 -0
  438. package/build-types/utils/render-slot-with-children.d.ts.map +1 -0
  439. package/build-types/utils/use-deprioritized-initial-focus.d.ts +1 -1
  440. package/build-types/utils/use-deprioritized-initial-focus.d.ts.map +1 -1
  441. package/build-types/visually-hidden/stories/index.story.d.ts.map +1 -1
  442. package/package.json +13 -12
  443. package/src/alert-dialog/popup.tsx +2 -2
  444. package/src/alert-dialog/stories/index.story.tsx +8 -0
  445. package/src/badge/stories/index.story.tsx +6 -0
  446. package/src/button/button.tsx +3 -0
  447. package/src/button/icon.tsx +1 -8
  448. package/src/button/index.ts +5 -6
  449. package/src/button/stories/index.story.tsx +10 -0
  450. package/src/button/types.ts +8 -0
  451. package/src/card/stories/index.story.tsx +6 -0
  452. package/src/collapsible/stories/index.story.tsx +6 -0
  453. package/src/collapsible-card/header.tsx +55 -42
  454. package/src/collapsible-card/stories/index.story.tsx +61 -0
  455. package/src/collapsible-card/style.module.css +20 -0
  456. package/src/collapsible-card/test/index.test.tsx +60 -1
  457. package/src/dialog/popup.tsx +3 -4
  458. package/src/dialog/stories/index.story.tsx +8 -0
  459. package/src/dialog/style.module.css +3 -9
  460. package/src/drawer/content.tsx +31 -16
  461. package/src/drawer/popup.tsx +3 -4
  462. package/src/drawer/stories/index.story.tsx +7 -0
  463. package/src/drawer/style.module.css +41 -9
  464. package/src/drawer/test/index.test.tsx +56 -0
  465. package/src/drawer/types.ts +1 -1
  466. package/src/empty-state/stories/index.story.tsx +7 -0
  467. package/src/form/index.ts +1 -0
  468. package/src/form/input-control/stories/index.story.tsx +7 -0
  469. package/src/form/primitives/autocomplete/popup.tsx +2 -2
  470. package/src/form/primitives/autocomplete/stories/index.story.tsx +18 -10
  471. package/src/form/primitives/field/stories/index.story.tsx +12 -5
  472. package/src/form/primitives/fieldset/stories/index.story.tsx +10 -3
  473. package/src/form/primitives/input/stories/index.story.tsx +7 -0
  474. package/src/form/primitives/input-layout/stories/index.story.tsx +8 -1
  475. package/src/form/primitives/select/item.tsx +1 -1
  476. package/src/form/primitives/select/popup.tsx +2 -2
  477. package/src/form/primitives/select/root.tsx +13 -2
  478. package/src/form/primitives/select/stories/index.story.tsx +132 -61
  479. package/src/form/primitives/select/test/index.test.tsx +123 -5
  480. package/src/form/primitives/select/trigger.tsx +11 -8
  481. package/src/form/primitives/select/types.ts +13 -5
  482. package/src/form/primitives/textarea/stories/index.story.tsx +7 -0
  483. package/src/form/select-control/context.tsx +9 -0
  484. package/src/form/select-control/index.ts +14 -0
  485. package/src/form/select-control/item.tsx +13 -0
  486. package/src/form/select-control/select-control.tsx +65 -0
  487. package/src/form/select-control/stories/index.story.tsx +220 -0
  488. package/src/form/select-control/test/index.test.tsx +196 -0
  489. package/src/form/select-control/types.ts +50 -0
  490. package/src/form/types.ts +1 -1
  491. package/src/icon/stories/index.story.tsx +7 -0
  492. package/src/icon-button/icon-button.tsx +2 -1
  493. package/src/icon-button/stories/index.story.tsx +20 -0
  494. package/src/icon-button/types.ts +9 -0
  495. package/src/link/stories/index.story.tsx +6 -0
  496. package/src/link/style.module.css +1 -0
  497. package/src/notice/stories/index.story.tsx +7 -0
  498. package/src/popover/popup.tsx +2 -2
  499. package/src/popover/stories/index.story.tsx +7 -0
  500. package/src/stack/stories/index.story.tsx +6 -0
  501. package/src/tabs/stories/index.story.tsx +15 -1
  502. package/src/text/stories/index.story.tsx +6 -0
  503. package/src/text/style.module.css +25 -0
  504. package/src/tooltip/index.ts +2 -1
  505. package/src/tooltip/popup.tsx +30 -38
  506. package/src/tooltip/positioner.tsx +36 -0
  507. package/src/tooltip/stories/index.story.tsx +61 -10
  508. package/src/tooltip/stories/usage-guidelines.story.tsx +5 -0
  509. package/src/tooltip/types.ts +14 -3
  510. package/src/utils/css/dropdown-motion.module.css +3 -3
  511. package/src/utils/css/item-popup.module.css +5 -1
  512. package/src/utils/css/overlay-chrome.module.css +21 -4
  513. package/src/utils/css/select-trigger.module.css +5 -2
  514. package/src/utils/render-slot-with-children.ts +31 -0
  515. package/src/visually-hidden/stories/index.story.tsx +6 -0
  516. package/build/utils/render-portal-with-children.cjs.map +0 -7
  517. package/build-module/utils/render-portal-with-children.mjs +0 -12
  518. package/build-module/utils/render-portal-with-children.mjs.map +0 -7
  519. package/build-types/utils/render-portal-with-children.d.ts +0 -16
  520. package/build-types/utils/render-portal-with-children.d.ts.map +0 -1
  521. package/src/utils/render-portal-with-children.ts +0 -27
@@ -5,39 +5,109 @@ import { speak } from "@wordpress/a11y";
5
5
  import { forwardRef, useEffect } from "@wordpress/element";
6
6
  import { __ } from "@wordpress/i18n";
7
7
 
8
+ // packages/style-runtime/src/index.ts
9
+ var STYLE_HASH_ATTRIBUTE = "data-wp-hash";
10
+ function getRuntime() {
11
+ const globalScope = globalThis;
12
+ if (globalScope.__wpStyleRuntime) {
13
+ return globalScope.__wpStyleRuntime;
14
+ }
15
+ globalScope.__wpStyleRuntime = {
16
+ documents: /* @__PURE__ */ new Map(),
17
+ styles: /* @__PURE__ */ new Map(),
18
+ injectedStyles: /* @__PURE__ */ new WeakMap()
19
+ };
20
+ if (typeof document !== "undefined") {
21
+ registerDocument(document);
22
+ }
23
+ return globalScope.__wpStyleRuntime;
24
+ }
25
+ function documentContainsStyleHash(targetDocument, hash) {
26
+ if (!targetDocument.head) {
27
+ return false;
28
+ }
29
+ for (const style of targetDocument.head.querySelectorAll(
30
+ `style[${STYLE_HASH_ATTRIBUTE}]`
31
+ )) {
32
+ if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {
33
+ return true;
34
+ }
35
+ }
36
+ return false;
37
+ }
38
+ function injectStyle(targetDocument, hash, css) {
39
+ if (!targetDocument.head) {
40
+ return;
41
+ }
42
+ const runtime = getRuntime();
43
+ let injectedStyles = runtime.injectedStyles.get(targetDocument);
44
+ if (!injectedStyles) {
45
+ injectedStyles = /* @__PURE__ */ new Set();
46
+ runtime.injectedStyles.set(targetDocument, injectedStyles);
47
+ }
48
+ if (injectedStyles.has(hash)) {
49
+ return;
50
+ }
51
+ if (documentContainsStyleHash(targetDocument, hash)) {
52
+ injectedStyles.add(hash);
53
+ return;
54
+ }
55
+ const style = targetDocument.createElement("style");
56
+ style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);
57
+ style.appendChild(targetDocument.createTextNode(css));
58
+ targetDocument.head.appendChild(style);
59
+ injectedStyles.add(hash);
60
+ }
61
+ function registerDocument(targetDocument) {
62
+ const runtime = getRuntime();
63
+ runtime.documents.set(
64
+ targetDocument,
65
+ (runtime.documents.get(targetDocument) ?? 0) + 1
66
+ );
67
+ for (const [hash, css] of runtime.styles) {
68
+ injectStyle(targetDocument, hash, css);
69
+ }
70
+ return () => {
71
+ const count = runtime.documents.get(targetDocument);
72
+ if (count === void 0) {
73
+ return;
74
+ }
75
+ if (count <= 1) {
76
+ runtime.documents.delete(targetDocument);
77
+ return;
78
+ }
79
+ runtime.documents.set(targetDocument, count - 1);
80
+ };
81
+ }
82
+ function registerStyle(hash, css) {
83
+ const runtime = getRuntime();
84
+ runtime.styles.set(hash, css);
85
+ for (const targetDocument of runtime.documents.keys()) {
86
+ injectStyle(targetDocument, hash, css);
87
+ }
88
+ }
89
+
8
90
  // packages/ui/src/button/style.module.css
9
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='26d90ece4e']")) {
10
- const style = document.createElement("style");
11
- style.setAttribute("data-wp-hash", "26d90ece4e");
12
- style.appendChild(document.createTextNode('@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._97b0fc33c028be1a__button,.abbb272e2ce49bd6__is-unstyled{appearance:none;padding:0}._97b0fc33c028be1a__button{--wp-ui-button-font-weight:499;--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-strong,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-strong-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 93%,#000));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand-strong,#fff);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-strong-active,#fff);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d);--wp-ui-button-padding-inline:var(--wpds-dimension-padding-md,12px);--wp-ui-button-height:40px;--wp-ui-button-aspect-ratio:auto;--wp-ui-button-font-size:var(--wpds-typography-font-size-md,13px);--wp-ui-button-min-width:calc(4ch + var(--wp-ui-button-padding-inline)*2);--wp-ui-button-border-color:var(--wp-ui-button-background-color);--wp-ui-button-border-color-active:var(--wp-ui-button-background-color-active);--wp-ui-button-border-color-disabled:var(--wp-ui-button-background-color-disabled);--_gcd-button-font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,"Segoe UI","Roboto","Oxygen-Sans","Ubuntu","Cantarell","Helvetica Neue",sans-serif);--_gcd-button-font-size:var(--wp-ui-button-font-size);--_gcd-button-font-weight:var(--wp-ui-button-font-weight);align-items:center;aspect-ratio:var(--wp-ui-button-aspect-ratio);background-clip:padding-box;background-color:var(--wp-ui-button-background-color);border-color:var(--wp-ui-button-border-color);border-radius:var(--wpds-border-radius-sm,2px);border-style:solid;border-width:1px;color:var(--wp-ui-button-foreground-color);cursor:var(--wpds-cursor-control,pointer);display:inline-flex;font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,"Segoe UI","Roboto","Oxygen-Sans","Ubuntu","Cantarell","Helvetica Neue",sans-serif);font-size:var(--wp-ui-button-font-size);font-weight:var(--wp-ui-button-font-weight);gap:var(--wpds-dimension-gap-sm,8px);height:var(--wp-ui-button-height);justify-content:center;line-height:var(--wpds-typography-line-height-sm,20px);min-width:var(--wp-ui-button-min-width);padding-inline:var(--wp-ui-button-padding-inline);position:relative;text-decoration:none;@media not (prefers-reduced-motion){transition:color .1s ease-out;*{transition:opacity .1s ease-out}}&[href]{cursor:pointer}[href]{color:inherit;text-decoration:inherit}&:not([data-disabled]):is(:hover,:active,:focus){background-color:var(--wp-ui-button-background-color-active);border-color:var(--wp-ui-button-border-color-active);color:var(--wp-ui-button-foreground-color-active)}&[data-disabled]:not(._914b42f315c0e580__is-loading){background-color:var(--wp-ui-button-background-color-disabled);border-color:var(--wp-ui-button-border-color-disabled);color:var(--wp-ui-button-foreground-color-disabled);@media (forced-colors:active){border-bottom-color:GrayText;border-left-color:GrayText;border-right-color:GrayText;border-top-color:GrayText;color:GrayText}}&:before{aspect-ratio:1;border:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid;border-block-end-color:#0000;border-block-start-color:var(--wp-ui-button-foreground-color);border-inline-end-color:var(--wp-ui-button-foreground-color);border-inline-start-color:#0000;border-radius:50%;box-sizing:border-box;content:"";display:block;height:var(--wp-ui-button-font-size);inset-inline-start:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);@media not (prefers-reduced-motion){transition:opacity .1s ease-out}}}._908205475f9f2a92__is-small{--wp-ui-button-padding-inline:var(--wpds-dimension-padding-sm,8px);--wp-ui-button-height:24px}.dd460c965226cc77__is-brand{&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-active,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-brand-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 85%,#000));--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.e722a8f96726aa99__is-neutral{&.b50b3358c5fb4d0b__is-solid{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong-active,#1e1e1e);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong-active,#f0f0f0);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral,#1e1e1e);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-active,#1e1e1e);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-neutral,#8d8d8d);--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-neutral-active,#6e6e6e);--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.abbb272e2ce49bd6__is-unstyled{background:none;border:none;min-width:unset}.cf59cf1b69629838__is-compact{--wp-ui-button-height:32px}._914b42f315c0e580__is-loading{color:#0000;&:not([data-disabled]):is(:hover,:active,:focus){color:#0000}*{opacity:0}&:before{opacity:1;transition-delay:.05s;@media not (prefers-reduced-motion){animation:_5a1d53da6f830c8d__loading-animation 1s linear infinite}}}[aria-pressed=true].ad0619a3217c6a5b__is-minimal.e722a8f96726aa99__is-neutral{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0)}}@keyframes _5a1d53da6f830c8d__loading-animation{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}'));
13
- document.head.appendChild(style);
91
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
92
+ registerStyle("26d90ece4e", '@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._97b0fc33c028be1a__button,.abbb272e2ce49bd6__is-unstyled{appearance:none;padding:0}._97b0fc33c028be1a__button{--wp-ui-button-font-weight:499;--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-strong,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-strong-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 93%,#000));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand-strong,#fff);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-strong-active,#fff);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d);--wp-ui-button-padding-inline:var(--wpds-dimension-padding-md,12px);--wp-ui-button-height:40px;--wp-ui-button-aspect-ratio:auto;--wp-ui-button-font-size:var(--wpds-typography-font-size-md,13px);--wp-ui-button-min-width:calc(4ch + var(--wp-ui-button-padding-inline)*2);--wp-ui-button-border-color:var(--wp-ui-button-background-color);--wp-ui-button-border-color-active:var(--wp-ui-button-background-color-active);--wp-ui-button-border-color-disabled:var(--wp-ui-button-background-color-disabled);--_gcd-button-font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,"Segoe UI","Roboto","Oxygen-Sans","Ubuntu","Cantarell","Helvetica Neue",sans-serif);--_gcd-button-font-size:var(--wp-ui-button-font-size);--_gcd-button-font-weight:var(--wp-ui-button-font-weight);align-items:center;aspect-ratio:var(--wp-ui-button-aspect-ratio);background-clip:padding-box;background-color:var(--wp-ui-button-background-color);border-color:var(--wp-ui-button-border-color);border-radius:var(--wpds-border-radius-sm,2px);border-style:solid;border-width:1px;color:var(--wp-ui-button-foreground-color);cursor:var(--wpds-cursor-control,pointer);display:inline-flex;font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,"Segoe UI","Roboto","Oxygen-Sans","Ubuntu","Cantarell","Helvetica Neue",sans-serif);font-size:var(--wp-ui-button-font-size);font-weight:var(--wp-ui-button-font-weight);gap:var(--wpds-dimension-gap-sm,8px);height:var(--wp-ui-button-height);justify-content:center;line-height:var(--wpds-typography-line-height-sm,20px);min-width:var(--wp-ui-button-min-width);padding-inline:var(--wp-ui-button-padding-inline);position:relative;text-decoration:none;@media not (prefers-reduced-motion){transition:color .1s ease-out;*{transition:opacity .1s ease-out}}&[href]{cursor:pointer}[href]{color:inherit;text-decoration:inherit}&:not([data-disabled]):is(:hover,:active,:focus){background-color:var(--wp-ui-button-background-color-active);border-color:var(--wp-ui-button-border-color-active);color:var(--wp-ui-button-foreground-color-active)}&[data-disabled]:not(._914b42f315c0e580__is-loading){background-color:var(--wp-ui-button-background-color-disabled);border-color:var(--wp-ui-button-border-color-disabled);color:var(--wp-ui-button-foreground-color-disabled);@media (forced-colors:active){border-bottom-color:GrayText;border-left-color:GrayText;border-right-color:GrayText;border-top-color:GrayText;color:GrayText}}&:before{aspect-ratio:1;border:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid;border-block-end-color:#0000;border-block-start-color:var(--wp-ui-button-foreground-color);border-inline-end-color:var(--wp-ui-button-foreground-color);border-inline-start-color:#0000;border-radius:50%;box-sizing:border-box;content:"";display:block;height:var(--wp-ui-button-font-size);inset-inline-start:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);@media not (prefers-reduced-motion){transition:opacity .1s ease-out}}}._908205475f9f2a92__is-small{--wp-ui-button-padding-inline:var(--wpds-dimension-padding-sm,8px);--wp-ui-button-height:24px}.dd460c965226cc77__is-brand{&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-active,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-brand-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 85%,#000));--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.e722a8f96726aa99__is-neutral{&.b50b3358c5fb4d0b__is-solid{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong-active,#1e1e1e);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong-active,#f0f0f0);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral,#1e1e1e);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-active,#1e1e1e);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-neutral,#8d8d8d);--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-neutral-active,#6e6e6e);--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.abbb272e2ce49bd6__is-unstyled{background:none;border:none;min-width:unset}.cf59cf1b69629838__is-compact{--wp-ui-button-height:32px}._914b42f315c0e580__is-loading{color:#0000;&:not([data-disabled]):is(:hover,:active,:focus){color:#0000}*{opacity:0}&:before{opacity:1;transition-delay:.05s;@media not (prefers-reduced-motion){animation:_5a1d53da6f830c8d__loading-animation 1s linear infinite}}}[aria-pressed=true].ad0619a3217c6a5b__is-minimal.e722a8f96726aa99__is-neutral{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0)}}@keyframes _5a1d53da6f830c8d__loading-animation{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}');
14
93
  }
15
94
  var style_default = { "button": "_97b0fc33c028be1a__button", "is-unstyled": "abbb272e2ce49bd6__is-unstyled", "is-loading": "_914b42f315c0e580__is-loading", "is-small": "_908205475f9f2a92__is-small", "is-brand": "dd460c965226cc77__is-brand", "is-outline": "_62d5a778b7b258ee__is-outline", "is-minimal": "ad0619a3217c6a5b__is-minimal", "is-neutral": "e722a8f96726aa99__is-neutral", "is-solid": "b50b3358c5fb4d0b__is-solid", "is-compact": "cf59cf1b69629838__is-compact", "loading-animation": "_5a1d53da6f830c8d__loading-animation" };
16
95
 
17
96
  // packages/ui/src/utils/css/resets.module.css
18
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='e3ae230cea']")) {
19
- const style = document.createElement("style");
20
- style.setAttribute("data-wp-hash", "e3ae230cea");
21
- style.appendChild(document.createTextNode("@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._336cd3e4e743482f__box-sizing{box-sizing:border-box;*,:after,:before{box-sizing:inherit}}}"));
22
- document.head.appendChild(style);
97
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
98
+ registerStyle("e3ae230cea", "@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._336cd3e4e743482f__box-sizing{box-sizing:border-box;*,:after,:before{box-sizing:inherit}}}");
23
99
  }
24
100
  var resets_default = { "box-sizing": "_336cd3e4e743482f__box-sizing" };
25
101
 
26
102
  // packages/ui/src/utils/css/focus.module.css
27
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='2a5ab8f3a7']")) {
28
- const style = document.createElement("style");
29
- style.setAttribute("data-wp-hash", "2a5ab8f3a7");
30
- style.appendChild(document.createTextNode("@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._08e8a2e44959f892__outset-ring--focus,._970d04df7376df67__outset-ring--focus-within-except-active,.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible,.cd83dfc2126a0846__outset-ring--focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active,.ecadb9e080e2dfa5__outset-ring--focus-parent-visible{@media not (prefers-reduced-motion){--_gcd-a-transition:outline 0.1s ease-out;transition:outline .1s ease-out}outline:0 solid #0000;outline-offset:1px}._08e8a2e44959f892__outset-ring--focus:focus,._970d04df7376df67__outset-ring--focus-within-except-active:focus-within:not(:has(:active)),.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible:focus-within:has(:focus-visible),.cd83dfc2126a0846__outset-ring--focus-within:focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible:focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active:focus:not(:active),:focus-visible .ecadb9e080e2dfa5__outset-ring--focus-parent-visible{--_gcd-a-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));--_gcd-div-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9))}}"));
31
- document.head.appendChild(style);
103
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
104
+ registerStyle("2a5ab8f3a7", "@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._08e8a2e44959f892__outset-ring--focus,._970d04df7376df67__outset-ring--focus-within-except-active,.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible,.cd83dfc2126a0846__outset-ring--focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active,.ecadb9e080e2dfa5__outset-ring--focus-parent-visible{@media not (prefers-reduced-motion){--_gcd-a-transition:outline 0.1s ease-out;transition:outline .1s ease-out}outline:0 solid #0000;outline-offset:1px}._08e8a2e44959f892__outset-ring--focus:focus,._970d04df7376df67__outset-ring--focus-within-except-active:focus-within:not(:has(:active)),.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible:focus-within:has(:focus-visible),.cd83dfc2126a0846__outset-ring--focus-within:focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible:focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active:focus:not(:active),:focus-visible .ecadb9e080e2dfa5__outset-ring--focus-parent-visible{--_gcd-a-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));--_gcd-div-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9))}}");
32
105
  }
33
106
  var focus_default = { "outset-ring--focus": "_08e8a2e44959f892__outset-ring--focus", "outset-ring--focus-except-active": "e25b2bdd7aa21721__outset-ring--focus-except-active", "outset-ring--focus-visible": "d0541bc9dd9dc7b6__outset-ring--focus-visible", "outset-ring--focus-within": "cd83dfc2126a0846__outset-ring--focus-within", "outset-ring--focus-within-except-active": "_970d04df7376df67__outset-ring--focus-within-except-active", "outset-ring--focus-within-visible": "c5cb3ee4bddaa8e4__outset-ring--focus-within-visible", "outset-ring--focus-parent-visible": "ecadb9e080e2dfa5__outset-ring--focus-parent-visible" };
34
107
 
35
108
  // packages/ui/src/utils/css/global-css-defense.module.css
36
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='1fb29d3a3c']")) {
37
- const style = document.createElement("style");
38
- style.setAttribute("data-wp-hash", "1fb29d3a3c");
39
- style.appendChild(document.createTextNode("._6defc79820e382c6__button{box-sizing:var(--_gcd-button-box-sizing,border-box);font-family:var(--_gcd-button-font-family,inherit);font-size:var(--_gcd-button-font-size,inherit);font-weight:var(--_gcd-button-font-weight,inherit)}.d2cff2e5dea83bd1__input{box-sizing:var(--_gcd-input-box-sizing,border-box);font-family:var(--_gcd-input-font-family,inherit);font-size:var(--_gcd-input-font-size,inherit);font-weight:var(--_gcd-input-font-weight,inherit);margin:var(--_gcd-input-margin,0);&:is(textarea,[type=text],[type=password],[type=color],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){background-color:var(--_gcd-input-background-color,#0000);border:var(--_gcd-input-border,none);border-radius:var(--_gcd-input-border-radius,0);box-shadow:var(--_gcd-input-box-shadow,0 0 0 #0000);color:var(--_gcd-input-color,var(--wpds-color-fg-interactive-neutral,#1e1e1e));&:focus{border-color:var(--_gcd-input-border-color-focus,var(--wp-admin-theme-color));box-shadow:var(--_gcd-input-box-shadow-focus,none);outline:var(--_gcd-input-outline-focus,none)}&:disabled{background:var(--_gcd-input-background-disabled,#0000);border-color:var(--_gcd-input-border-color-disabled,#0000);box-shadow:var(--_gcd-input-box-shadow-disabled,none);color:var(--_gcd-input-color-disabled,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}&::placeholder{color:var(--_gcd-input-placeholder-color,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}}&:is(textarea,[type=text],[type=password],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){line-height:var(--_gcd-input-line-height,inherit);min-height:var(--_gcd-input-min-height,auto);padding:var(--_gcd-input-padding,0)}}._547d86373d02e108__textarea{box-sizing:var(--_gcd-textarea-box-sizing,border-box);overflow:var(--_gcd-textarea-overflow,auto);resize:var(--_gcd-textarea-resize,block)}._8c15fd0ed9f28ba4__div{outline:var(--_gcd-div-outline,0 solid #0000)}p._43cec3e1eec1066d__p{font-size:var(--_gcd-p-font-size,13px);line-height:var(--_gcd-p-line-height,1.5);margin:var(--_gcd-p-margin,0)}:is(h1,h2,h3,h4,h5,h6).e97669c6d9a38497__heading{color:var(--_gcd-heading-color,var(--wpds-color-fg-content-neutral,#1e1e1e));font-size:var(--_gcd-heading-font-size,inherit);font-weight:var(--_gcd-heading-font-weight,var(--wpds-typography-font-weight-medium,499));margin:var(--_gcd-heading-margin,0)}._2c0831b0499dbd6e__a,._2c0831b0499dbd6e__a:is(:hover,:focus,:active){border-radius:var(--_gcd-a-border-radius,0);box-shadow:var(--_gcd-a-box-shadow,none);color:var(--_gcd-a-color,inherit);outline:var(--_gcd-a-outline,0 solid #0000);transition:var(--_gcd-a-transition,none)}"));
40
- document.head.appendChild(style);
109
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
110
+ registerStyle("1fb29d3a3c", "._6defc79820e382c6__button{box-sizing:var(--_gcd-button-box-sizing,border-box);font-family:var(--_gcd-button-font-family,inherit);font-size:var(--_gcd-button-font-size,inherit);font-weight:var(--_gcd-button-font-weight,inherit)}.d2cff2e5dea83bd1__input{box-sizing:var(--_gcd-input-box-sizing,border-box);font-family:var(--_gcd-input-font-family,inherit);font-size:var(--_gcd-input-font-size,inherit);font-weight:var(--_gcd-input-font-weight,inherit);margin:var(--_gcd-input-margin,0);&:is(textarea,[type=text],[type=password],[type=color],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){background-color:var(--_gcd-input-background-color,#0000);border:var(--_gcd-input-border,none);border-radius:var(--_gcd-input-border-radius,0);box-shadow:var(--_gcd-input-box-shadow,0 0 0 #0000);color:var(--_gcd-input-color,var(--wpds-color-fg-interactive-neutral,#1e1e1e));&:focus{border-color:var(--_gcd-input-border-color-focus,var(--wp-admin-theme-color));box-shadow:var(--_gcd-input-box-shadow-focus,none);outline:var(--_gcd-input-outline-focus,none)}&:disabled{background:var(--_gcd-input-background-disabled,#0000);border-color:var(--_gcd-input-border-color-disabled,#0000);box-shadow:var(--_gcd-input-box-shadow-disabled,none);color:var(--_gcd-input-color-disabled,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}&::placeholder{color:var(--_gcd-input-placeholder-color,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}}&:is(textarea,[type=text],[type=password],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){line-height:var(--_gcd-input-line-height,inherit);min-height:var(--_gcd-input-min-height,auto);padding:var(--_gcd-input-padding,0)}}._547d86373d02e108__textarea{box-sizing:var(--_gcd-textarea-box-sizing,border-box);overflow:var(--_gcd-textarea-overflow,auto);resize:var(--_gcd-textarea-resize,block)}._8c15fd0ed9f28ba4__div{outline:var(--_gcd-div-outline,0 solid #0000)}p._43cec3e1eec1066d__p{font-size:var(--_gcd-p-font-size,13px);line-height:var(--_gcd-p-line-height,1.5);margin:var(--_gcd-p-margin,0)}:is(h1,h2,h3,h4,h5,h6).e97669c6d9a38497__heading{color:var(--_gcd-heading-color,var(--wpds-color-fg-content-neutral,#1e1e1e));font-size:var(--_gcd-heading-font-size,inherit);font-weight:var(--_gcd-heading-font-weight,var(--wpds-typography-font-weight-medium,499));margin:var(--_gcd-heading-margin,0)}._2c0831b0499dbd6e__a,._2c0831b0499dbd6e__a:is(:hover,:focus,:active){border-radius:var(--_gcd-a-border-radius,0);box-shadow:var(--_gcd-a-box-shadow,none);color:var(--_gcd-a-color,inherit);outline:var(--_gcd-a-outline,0 solid #0000);transition:var(--_gcd-a-transition,none)}");
41
111
  }
42
112
  var global_css_defense_default = { "button": "_6defc79820e382c6__button", "input": "d2cff2e5dea83bd1__input", "textarea": "_547d86373d02e108__textarea", "div": "_8c15fd0ed9f28ba4__div", "p": "_43cec3e1eec1066d__p", "heading": "e97669c6d9a38497__heading", "a": "_2c0831b0499dbd6e__a" };
43
113
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/button/button.tsx", "../../src/button/style.module.css", "../../src/utils/css/resets.module.css", "../../src/utils/css/focus.module.css", "../../src/utils/css/global-css-defense.module.css"],
4
- "sourcesContent": ["import { Button as _Button } from '@base-ui/react/button';\nimport clsx from 'clsx';\nimport { speak } from '@wordpress/a11y';\nimport { forwardRef, useEffect } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { type ButtonProps } from './types';\nimport styles from './style.module.css';\nimport resetStyles from '../utils/css/resets.module.css';\nimport focusStyles from '../utils/css/focus.module.css';\nimport defenseStyles from '../utils/css/global-css-defense.module.css';\n\nexport const Button = forwardRef< HTMLButtonElement, ButtonProps >(\n\tfunction Button(\n\t\t{\n\t\t\ttone = 'brand',\n\t\t\tvariant = 'solid',\n\t\t\tsize = 'default',\n\t\t\tclassName,\n\t\t\tfocusableWhenDisabled = true,\n\t\t\tdisabled,\n\t\t\tloading,\n\t\t\tloadingAnnouncement = __( 'Loading' ),\n\t\t\tchildren,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) {\n\t\tconst mergedClassName = clsx(\n\t\t\tdefenseStyles.button,\n\t\t\tresetStyles[ 'box-sizing' ],\n\t\t\tfocusStyles[ 'outset-ring--focus-except-active' ],\n\t\t\tvariant !== 'unstyled' && styles.button,\n\t\t\tstyles[ `is-${ tone }` ],\n\t\t\tstyles[ `is-${ variant }` ],\n\t\t\tstyles[ `is-${ size }` ],\n\t\t\tloading && styles[ 'is-loading' ],\n\t\t\tclassName\n\t\t);\n\n\t\t// Announce loading state to assistive technology\n\t\tuseEffect( () => {\n\t\t\tif ( loading && loadingAnnouncement ) {\n\t\t\t\tspeak( loadingAnnouncement );\n\t\t\t}\n\t\t}, [ loading, loadingAnnouncement ] );\n\n\t\treturn (\n\t\t\t<_Button\n\t\t\t\tref={ ref }\n\t\t\t\tclassName={ mergedClassName }\n\t\t\t\tfocusableWhenDisabled={ focusableWhenDisabled }\n\t\t\t\tdisabled={ disabled ?? loading }\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</_Button>\n\t\t);\n\t}\n);\n", "if (typeof document !== 'undefined' && process.env.NODE_ENV !== 'test' && !document.head.querySelector(\"style[data-wp-hash='26d90ece4e']\")) {\n\tconst style = document.createElement(\"style\");\n\tstyle.setAttribute(\"data-wp-hash\", \"26d90ece4e\");\n\tstyle.appendChild(document.createTextNode(\"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._97b0fc33c028be1a__button,.abbb272e2ce49bd6__is-unstyled{appearance:none;padding:0}._97b0fc33c028be1a__button{--wp-ui-button-font-weight:499;--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-strong,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-strong-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 93%,#000));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand-strong,#fff);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-strong-active,#fff);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d);--wp-ui-button-padding-inline:var(--wpds-dimension-padding-md,12px);--wp-ui-button-height:40px;--wp-ui-button-aspect-ratio:auto;--wp-ui-button-font-size:var(--wpds-typography-font-size-md,13px);--wp-ui-button-min-width:calc(4ch + var(--wp-ui-button-padding-inline)*2);--wp-ui-button-border-color:var(--wp-ui-button-background-color);--wp-ui-button-border-color-active:var(--wp-ui-button-background-color-active);--wp-ui-button-border-color-disabled:var(--wp-ui-button-background-color-disabled);--_gcd-button-font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,\\\"Segoe UI\\\",\\\"Roboto\\\",\\\"Oxygen-Sans\\\",\\\"Ubuntu\\\",\\\"Cantarell\\\",\\\"Helvetica Neue\\\",sans-serif);--_gcd-button-font-size:var(--wp-ui-button-font-size);--_gcd-button-font-weight:var(--wp-ui-button-font-weight);align-items:center;aspect-ratio:var(--wp-ui-button-aspect-ratio);background-clip:padding-box;background-color:var(--wp-ui-button-background-color);border-color:var(--wp-ui-button-border-color);border-radius:var(--wpds-border-radius-sm,2px);border-style:solid;border-width:1px;color:var(--wp-ui-button-foreground-color);cursor:var(--wpds-cursor-control,pointer);display:inline-flex;font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,\\\"Segoe UI\\\",\\\"Roboto\\\",\\\"Oxygen-Sans\\\",\\\"Ubuntu\\\",\\\"Cantarell\\\",\\\"Helvetica Neue\\\",sans-serif);font-size:var(--wp-ui-button-font-size);font-weight:var(--wp-ui-button-font-weight);gap:var(--wpds-dimension-gap-sm,8px);height:var(--wp-ui-button-height);justify-content:center;line-height:var(--wpds-typography-line-height-sm,20px);min-width:var(--wp-ui-button-min-width);padding-inline:var(--wp-ui-button-padding-inline);position:relative;text-decoration:none;@media not (prefers-reduced-motion){transition:color .1s ease-out;*{transition:opacity .1s ease-out}}&[href]{cursor:pointer}[href]{color:inherit;text-decoration:inherit}&:not([data-disabled]):is(:hover,:active,:focus){background-color:var(--wp-ui-button-background-color-active);border-color:var(--wp-ui-button-border-color-active);color:var(--wp-ui-button-foreground-color-active)}&[data-disabled]:not(._914b42f315c0e580__is-loading){background-color:var(--wp-ui-button-background-color-disabled);border-color:var(--wp-ui-button-border-color-disabled);color:var(--wp-ui-button-foreground-color-disabled);@media (forced-colors:active){border-bottom-color:GrayText;border-left-color:GrayText;border-right-color:GrayText;border-top-color:GrayText;color:GrayText}}&:before{aspect-ratio:1;border:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid;border-block-end-color:#0000;border-block-start-color:var(--wp-ui-button-foreground-color);border-inline-end-color:var(--wp-ui-button-foreground-color);border-inline-start-color:#0000;border-radius:50%;box-sizing:border-box;content:\\\"\\\";display:block;height:var(--wp-ui-button-font-size);inset-inline-start:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);@media not (prefers-reduced-motion){transition:opacity .1s ease-out}}}._908205475f9f2a92__is-small{--wp-ui-button-padding-inline:var(--wpds-dimension-padding-sm,8px);--wp-ui-button-height:24px}.dd460c965226cc77__is-brand{&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-active,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-brand-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 85%,#000));--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.e722a8f96726aa99__is-neutral{&.b50b3358c5fb4d0b__is-solid{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong-active,#1e1e1e);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong-active,#f0f0f0);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral,#1e1e1e);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-active,#1e1e1e);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-neutral,#8d8d8d);--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-neutral-active,#6e6e6e);--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.abbb272e2ce49bd6__is-unstyled{background:none;border:none;min-width:unset}.cf59cf1b69629838__is-compact{--wp-ui-button-height:32px}._914b42f315c0e580__is-loading{color:#0000;&:not([data-disabled]):is(:hover,:active,:focus){color:#0000}*{opacity:0}&:before{opacity:1;transition-delay:.05s;@media not (prefers-reduced-motion){animation:_5a1d53da6f830c8d__loading-animation 1s linear infinite}}}[aria-pressed=true].ad0619a3217c6a5b__is-minimal.e722a8f96726aa99__is-neutral{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0)}}@keyframes _5a1d53da6f830c8d__loading-animation{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}\"));\n\tdocument.head.appendChild(style);\n}\nexport default {\"button\":\"_97b0fc33c028be1a__button\",\"is-unstyled\":\"abbb272e2ce49bd6__is-unstyled\",\"is-loading\":\"_914b42f315c0e580__is-loading\",\"is-small\":\"_908205475f9f2a92__is-small\",\"is-brand\":\"dd460c965226cc77__is-brand\",\"is-outline\":\"_62d5a778b7b258ee__is-outline\",\"is-minimal\":\"ad0619a3217c6a5b__is-minimal\",\"is-neutral\":\"e722a8f96726aa99__is-neutral\",\"is-solid\":\"b50b3358c5fb4d0b__is-solid\",\"is-compact\":\"cf59cf1b69629838__is-compact\",\"loading-animation\":\"_5a1d53da6f830c8d__loading-animation\"};\n", "if (typeof document !== 'undefined' && process.env.NODE_ENV !== 'test' && !document.head.querySelector(\"style[data-wp-hash='e3ae230cea']\")) {\n\tconst style = document.createElement(\"style\");\n\tstyle.setAttribute(\"data-wp-hash\", \"e3ae230cea\");\n\tstyle.appendChild(document.createTextNode(\"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._336cd3e4e743482f__box-sizing{box-sizing:border-box;*,:after,:before{box-sizing:inherit}}}\"));\n\tdocument.head.appendChild(style);\n}\nexport default {\"box-sizing\":\"_336cd3e4e743482f__box-sizing\"};\n", "if (typeof document !== 'undefined' && process.env.NODE_ENV !== 'test' && !document.head.querySelector(\"style[data-wp-hash='2a5ab8f3a7']\")) {\n\tconst style = document.createElement(\"style\");\n\tstyle.setAttribute(\"data-wp-hash\", \"2a5ab8f3a7\");\n\tstyle.appendChild(document.createTextNode(\"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._08e8a2e44959f892__outset-ring--focus,._970d04df7376df67__outset-ring--focus-within-except-active,.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible,.cd83dfc2126a0846__outset-ring--focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active,.ecadb9e080e2dfa5__outset-ring--focus-parent-visible{@media not (prefers-reduced-motion){--_gcd-a-transition:outline 0.1s ease-out;transition:outline .1s ease-out}outline:0 solid #0000;outline-offset:1px}._08e8a2e44959f892__outset-ring--focus:focus,._970d04df7376df67__outset-ring--focus-within-except-active:focus-within:not(:has(:active)),.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible:focus-within:has(:focus-visible),.cd83dfc2126a0846__outset-ring--focus-within:focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible:focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active:focus:not(:active),:focus-visible .ecadb9e080e2dfa5__outset-ring--focus-parent-visible{--_gcd-a-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));--_gcd-div-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9))}}\"));\n\tdocument.head.appendChild(style);\n}\nexport default {\"outset-ring--focus\":\"_08e8a2e44959f892__outset-ring--focus\",\"outset-ring--focus-except-active\":\"e25b2bdd7aa21721__outset-ring--focus-except-active\",\"outset-ring--focus-visible\":\"d0541bc9dd9dc7b6__outset-ring--focus-visible\",\"outset-ring--focus-within\":\"cd83dfc2126a0846__outset-ring--focus-within\",\"outset-ring--focus-within-except-active\":\"_970d04df7376df67__outset-ring--focus-within-except-active\",\"outset-ring--focus-within-visible\":\"c5cb3ee4bddaa8e4__outset-ring--focus-within-visible\",\"outset-ring--focus-parent-visible\":\"ecadb9e080e2dfa5__outset-ring--focus-parent-visible\"};\n", "if (typeof document !== 'undefined' && process.env.NODE_ENV !== 'test' && !document.head.querySelector(\"style[data-wp-hash='1fb29d3a3c']\")) {\n\tconst style = document.createElement(\"style\");\n\tstyle.setAttribute(\"data-wp-hash\", \"1fb29d3a3c\");\n\tstyle.appendChild(document.createTextNode(\"._6defc79820e382c6__button{box-sizing:var(--_gcd-button-box-sizing,border-box);font-family:var(--_gcd-button-font-family,inherit);font-size:var(--_gcd-button-font-size,inherit);font-weight:var(--_gcd-button-font-weight,inherit)}.d2cff2e5dea83bd1__input{box-sizing:var(--_gcd-input-box-sizing,border-box);font-family:var(--_gcd-input-font-family,inherit);font-size:var(--_gcd-input-font-size,inherit);font-weight:var(--_gcd-input-font-weight,inherit);margin:var(--_gcd-input-margin,0);&:is(textarea,[type=text],[type=password],[type=color],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){background-color:var(--_gcd-input-background-color,#0000);border:var(--_gcd-input-border,none);border-radius:var(--_gcd-input-border-radius,0);box-shadow:var(--_gcd-input-box-shadow,0 0 0 #0000);color:var(--_gcd-input-color,var(--wpds-color-fg-interactive-neutral,#1e1e1e));&:focus{border-color:var(--_gcd-input-border-color-focus,var(--wp-admin-theme-color));box-shadow:var(--_gcd-input-box-shadow-focus,none);outline:var(--_gcd-input-outline-focus,none)}&:disabled{background:var(--_gcd-input-background-disabled,#0000);border-color:var(--_gcd-input-border-color-disabled,#0000);box-shadow:var(--_gcd-input-box-shadow-disabled,none);color:var(--_gcd-input-color-disabled,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}&::placeholder{color:var(--_gcd-input-placeholder-color,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}}&:is(textarea,[type=text],[type=password],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){line-height:var(--_gcd-input-line-height,inherit);min-height:var(--_gcd-input-min-height,auto);padding:var(--_gcd-input-padding,0)}}._547d86373d02e108__textarea{box-sizing:var(--_gcd-textarea-box-sizing,border-box);overflow:var(--_gcd-textarea-overflow,auto);resize:var(--_gcd-textarea-resize,block)}._8c15fd0ed9f28ba4__div{outline:var(--_gcd-div-outline,0 solid #0000)}p._43cec3e1eec1066d__p{font-size:var(--_gcd-p-font-size,13px);line-height:var(--_gcd-p-line-height,1.5);margin:var(--_gcd-p-margin,0)}:is(h1,h2,h3,h4,h5,h6).e97669c6d9a38497__heading{color:var(--_gcd-heading-color,var(--wpds-color-fg-content-neutral,#1e1e1e));font-size:var(--_gcd-heading-font-size,inherit);font-weight:var(--_gcd-heading-font-weight,var(--wpds-typography-font-weight-medium,499));margin:var(--_gcd-heading-margin,0)}._2c0831b0499dbd6e__a,._2c0831b0499dbd6e__a:is(:hover,:focus,:active){border-radius:var(--_gcd-a-border-radius,0);box-shadow:var(--_gcd-a-box-shadow,none);color:var(--_gcd-a-color,inherit);outline:var(--_gcd-a-outline,0 solid #0000);transition:var(--_gcd-a-transition,none)}\"));\n\tdocument.head.appendChild(style);\n}\nexport default {\"button\":\"_6defc79820e382c6__button\",\"input\":\"d2cff2e5dea83bd1__input\",\"textarea\":\"_547d86373d02e108__textarea\",\"div\":\"_8c15fd0ed9f28ba4__div\",\"p\":\"_43cec3e1eec1066d__p\",\"heading\":\"e97669c6d9a38497__heading\",\"a\":\"_2c0831b0499dbd6e__a\"};\n"],
5
- "mappings": ";AAAA,SAAS,UAAU,eAAe;AAClC,OAAO,UAAU;AACjB,SAAS,aAAa;AACtB,SAAS,YAAY,iBAAiB;AACtC,SAAS,UAAU;;;ACJnB,IAAI,OAAO,aAAa,eAAe,QAAQ,IAAI,aAAa,UAAU,CAAC,SAAS,KAAK,cAAc,kCAAkC,GAAG;AAC3I,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,aAAa,gBAAgB,YAAY;AAC/C,QAAM,YAAY,SAAS,eAAe,8vQAAwxQ,CAAC;AACn0Q,WAAS,KAAK,YAAY,KAAK;AAChC;AACA,IAAO,gBAAQ,EAAC,UAAS,6BAA4B,eAAc,iCAAgC,cAAa,iCAAgC,YAAW,+BAA8B,YAAW,8BAA6B,cAAa,iCAAgC,cAAa,gCAA+B,cAAa,gCAA+B,YAAW,8BAA6B,cAAa,gCAA+B,qBAAoB,uCAAsC;;;ACNpf,IAAI,OAAO,aAAa,eAAe,QAAQ,IAAI,aAAa,UAAU,CAAC,SAAS,KAAK,cAAc,kCAAkC,GAAG;AAC3I,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,aAAa,gBAAgB,YAAY;AAC/C,QAAM,YAAY,SAAS,eAAe,kMAAkM,CAAC;AAC7O,WAAS,KAAK,YAAY,KAAK;AAChC;AACA,IAAO,iBAAQ,EAAC,cAAa,gCAA+B;;;ACN5D,IAAI,OAAO,aAAa,eAAe,QAAQ,IAAI,aAAa,UAAU,CAAC,SAAS,KAAK,cAAc,kCAAkC,GAAG;AAC3I,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,aAAa,gBAAgB,YAAY;AAC/C,QAAM,YAAY,SAAS,eAAe,siDAAsiD,CAAC;AACjlD,WAAS,KAAK,YAAY,KAAK;AAChC;AACA,IAAO,gBAAQ,EAAC,sBAAqB,yCAAwC,oCAAmC,sDAAqD,8BAA6B,gDAA+C,6BAA4B,+CAA8C,2CAA0C,8DAA6D,qCAAoC,uDAAsD,qCAAoC,sDAAqD;;;ACNrlB,IAAI,OAAO,aAAa,eAAe,QAAQ,IAAI,aAAa,UAAU,CAAC,SAAS,KAAK,cAAc,kCAAkC,GAAG;AAC3I,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,aAAa,gBAAgB,YAAY;AAC/C,QAAM,YAAY,SAAS,eAAe,2vFAA2vF,CAAC;AACtyF,WAAS,KAAK,YAAY,KAAK;AAChC;AACA,IAAO,6BAAQ,EAAC,UAAS,6BAA4B,SAAQ,2BAA0B,YAAW,+BAA8B,OAAM,0BAAyB,KAAI,wBAAuB,WAAU,6BAA4B,KAAI,uBAAsB;;;AJyCvP;AApCI,IAAM,SAAS;AAAA,EACrB,SAASA,QACR;AAAA,IACC,OAAO;AAAA,IACP,UAAU;AAAA,IACV,OAAO;AAAA,IACP;AAAA,IACA,wBAAwB;AAAA,IACxB;AAAA,IACA;AAAA,IACA,sBAAsB,GAAI,SAAU;AAAA,IACpC;AAAA,IACA,GAAG;AAAA,EACJ,GACA,KACC;AACD,UAAM,kBAAkB;AAAA,MACvB,2BAAc;AAAA,MACd,eAAa,YAAa;AAAA,MAC1B,cAAa,kCAAmC;AAAA,MAChD,YAAY,cAAc,cAAO;AAAA,MACjC,cAAQ,MAAO,IAAK,EAAG;AAAA,MACvB,cAAQ,MAAO,OAAQ,EAAG;AAAA,MAC1B,cAAQ,MAAO,IAAK,EAAG;AAAA,MACvB,WAAW,cAAQ,YAAa;AAAA,MAChC;AAAA,IACD;AAGA,cAAW,MAAM;AAChB,UAAK,WAAW,qBAAsB;AACrC,cAAO,mBAAoB;AAAA,MAC5B;AAAA,IACD,GAAG,CAAE,SAAS,mBAAoB,CAAE;AAEpC,WACC;AAAA,MAAC;AAAA;AAAA,QACA;AAAA,QACA,WAAY;AAAA,QACZ;AAAA,QACA,UAAW,YAAY;AAAA,QACrB,GAAG;AAAA,QAEH;AAAA;AAAA,IACH;AAAA,EAEF;AACD;",
3
+ "sources": ["../../src/button/button.tsx", "../../../style-runtime/src/index.ts", "../../src/button/style.module.css", "../../src/utils/css/resets.module.css", "../../src/utils/css/focus.module.css", "../../src/utils/css/global-css-defense.module.css"],
4
+ "sourcesContent": ["import { Button as _Button } from '@base-ui/react/button';\nimport clsx from 'clsx';\nimport { speak } from '@wordpress/a11y';\nimport { forwardRef, useEffect } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { type ButtonProps } from './types';\nimport styles from './style.module.css';\nimport resetStyles from '../utils/css/resets.module.css';\nimport focusStyles from '../utils/css/focus.module.css';\nimport defenseStyles from '../utils/css/global-css-defense.module.css';\n\n/**\n * A versatile button component with multiple variants, tones, and sizes.\n */\nexport const Button = forwardRef< HTMLButtonElement, ButtonProps >(\n\tfunction Button(\n\t\t{\n\t\t\ttone = 'brand',\n\t\t\tvariant = 'solid',\n\t\t\tsize = 'default',\n\t\t\tclassName,\n\t\t\tfocusableWhenDisabled = true,\n\t\t\tdisabled,\n\t\t\tloading,\n\t\t\tloadingAnnouncement = __( 'Loading' ),\n\t\t\tchildren,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) {\n\t\tconst mergedClassName = clsx(\n\t\t\tdefenseStyles.button,\n\t\t\tresetStyles[ 'box-sizing' ],\n\t\t\tfocusStyles[ 'outset-ring--focus-except-active' ],\n\t\t\tvariant !== 'unstyled' && styles.button,\n\t\t\tstyles[ `is-${ tone }` ],\n\t\t\tstyles[ `is-${ variant }` ],\n\t\t\tstyles[ `is-${ size }` ],\n\t\t\tloading && styles[ 'is-loading' ],\n\t\t\tclassName\n\t\t);\n\n\t\t// Announce loading state to assistive technology\n\t\tuseEffect( () => {\n\t\t\tif ( loading && loadingAnnouncement ) {\n\t\t\t\tspeak( loadingAnnouncement );\n\t\t\t}\n\t\t}, [ loading, loadingAnnouncement ] );\n\n\t\treturn (\n\t\t\t<_Button\n\t\t\t\tref={ ref }\n\t\t\t\tclassName={ mergedClassName }\n\t\t\t\tfocusableWhenDisabled={ focusableWhenDisabled }\n\t\t\t\tdisabled={ disabled ?? loading }\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</_Button>\n\t\t);\n\t}\n);\n", "type GlobalScopeWithStyleRuntime = typeof globalThis & {\n\t// This global is shared by separately bundled copies of this package.\n\t// Keep its shape backward compatible after release.\n\t__wpStyleRuntime?: {\n\t\tdocuments: Map< Document, number >;\n\t\tstyles: Map< string, string >;\n\t\tinjectedStyles: WeakMap< Document, Set< string > >;\n\t};\n};\n\nconst STYLE_HASH_ATTRIBUTE = 'data-wp-hash';\n\n/**\n * Returns the shared style runtime registry.\n *\n * The registry is stored on `globalThis` so separately bundled copies of this\n * package can coordinate through the same document and style maps.\n *\n * @return The shared runtime registry.\n */\nfunction getRuntime() {\n\tconst globalScope = globalThis as GlobalScopeWithStyleRuntime;\n\n\tif ( globalScope.__wpStyleRuntime ) {\n\t\treturn globalScope.__wpStyleRuntime;\n\t}\n\n\tglobalScope.__wpStyleRuntime = {\n\t\tdocuments: new Map(),\n\t\tstyles: new Map(),\n\t\tinjectedStyles: new WeakMap(),\n\t};\n\n\tif ( typeof document !== 'undefined' ) {\n\t\tregisterDocument( document );\n\t}\n\n\treturn globalScope.__wpStyleRuntime;\n}\n\n/**\n * Checks whether a document already contains a style tag for a hash.\n *\n * @param targetDocument Document to inspect.\n * @param hash Stable hash for the transformed CSS.\n *\n * @return Whether the style hash already exists in the document.\n */\nfunction documentContainsStyleHash(\n\ttargetDocument: Document,\n\thash: string\n): boolean {\n\tif ( ! targetDocument.head ) {\n\t\treturn false;\n\t}\n\n\tfor ( const style of targetDocument.head.querySelectorAll(\n\t\t`style[${ STYLE_HASH_ATTRIBUTE }]`\n\t) ) {\n\t\tif ( style.getAttribute( STYLE_HASH_ATTRIBUTE ) === hash ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n}\n\n/**\n * Injects a registered style into a document, unless that document already\n * contains a style tag for the same hash.\n *\n * @param targetDocument Document to inject the style into.\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nfunction injectStyle( targetDocument: Document, hash: string, css: string ) {\n\tif ( ! targetDocument.head ) {\n\t\treturn;\n\t}\n\n\tconst runtime = getRuntime();\n\tlet injectedStyles = runtime.injectedStyles.get( targetDocument );\n\n\tif ( ! injectedStyles ) {\n\t\tinjectedStyles = new Set();\n\t\truntime.injectedStyles.set( targetDocument, injectedStyles );\n\t}\n\n\tif ( injectedStyles.has( hash ) ) {\n\t\treturn;\n\t}\n\n\t// Older generated CSS module output can still inject matching style tags\n\t// after this document's cache is created, so keep the DOM as the fallback\n\t// source of truth on cache misses.\n\tif ( documentContainsStyleHash( targetDocument, hash ) ) {\n\t\tinjectedStyles.add( hash );\n\t\treturn;\n\t}\n\n\tconst style = targetDocument.createElement( 'style' );\n\tstyle.setAttribute( STYLE_HASH_ATTRIBUTE, hash );\n\tstyle.appendChild( targetDocument.createTextNode( css ) );\n\ttargetDocument.head.appendChild( style );\n\tinjectedStyles.add( hash );\n}\n\n/**\n * Registers a document as a style injection target.\n *\n * Existing registered styles are replayed into the document immediately.\n * Documents are reference-counted so multiple providers can safely register the\n * same document without one cleanup removing it while another registration is\n * still active.\n *\n * @param targetDocument Document to receive registered styles.\n * @return Cleanup function that unregisters this document registration.\n */\nexport function registerDocument( targetDocument: Document ) {\n\tconst runtime = getRuntime();\n\n\truntime.documents.set(\n\t\ttargetDocument,\n\t\t( runtime.documents.get( targetDocument ) ?? 0 ) + 1\n\t);\n\n\tfor ( const [ hash, css ] of runtime.styles ) {\n\t\tinjectStyle( targetDocument, hash, css );\n\t}\n\n\treturn () => {\n\t\tconst count = runtime.documents.get( targetDocument );\n\n\t\tif ( count === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( count <= 1 ) {\n\t\t\truntime.documents.delete( targetDocument );\n\t\t\treturn;\n\t\t}\n\n\t\truntime.documents.set( targetDocument, count - 1 );\n\t};\n}\n\n/**\n * Registers a style and injects it into all registered documents.\n *\n * The hash is used as the deduplication key, so calling this repeatedly with\n * the same hash will not add duplicate style tags to a document.\n * Registered styles are retained for the lifetime of the page so they can be\n * replayed into documents that are registered later.\n *\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nexport function registerStyle( hash: string, css: string ) {\n\tconst runtime = getRuntime();\n\n\truntime.styles.set( hash, css );\n\n\tfor ( const targetDocument of runtime.documents.keys() ) {\n\t\tinjectStyle( targetDocument, hash, css );\n\t}\n}\n", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"26d90ece4e\", \"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._97b0fc33c028be1a__button,.abbb272e2ce49bd6__is-unstyled{appearance:none;padding:0}._97b0fc33c028be1a__button{--wp-ui-button-font-weight:499;--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-strong,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-strong-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 93%,#000));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand-strong,#fff);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-strong-active,#fff);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d);--wp-ui-button-padding-inline:var(--wpds-dimension-padding-md,12px);--wp-ui-button-height:40px;--wp-ui-button-aspect-ratio:auto;--wp-ui-button-font-size:var(--wpds-typography-font-size-md,13px);--wp-ui-button-min-width:calc(4ch + var(--wp-ui-button-padding-inline)*2);--wp-ui-button-border-color:var(--wp-ui-button-background-color);--wp-ui-button-border-color-active:var(--wp-ui-button-background-color-active);--wp-ui-button-border-color-disabled:var(--wp-ui-button-background-color-disabled);--_gcd-button-font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,\\\"Segoe UI\\\",\\\"Roboto\\\",\\\"Oxygen-Sans\\\",\\\"Ubuntu\\\",\\\"Cantarell\\\",\\\"Helvetica Neue\\\",sans-serif);--_gcd-button-font-size:var(--wp-ui-button-font-size);--_gcd-button-font-weight:var(--wp-ui-button-font-weight);align-items:center;aspect-ratio:var(--wp-ui-button-aspect-ratio);background-clip:padding-box;background-color:var(--wp-ui-button-background-color);border-color:var(--wp-ui-button-border-color);border-radius:var(--wpds-border-radius-sm,2px);border-style:solid;border-width:1px;color:var(--wp-ui-button-foreground-color);cursor:var(--wpds-cursor-control,pointer);display:inline-flex;font-family:var(--wpds-typography-font-family-body,-apple-system,system-ui,\\\"Segoe UI\\\",\\\"Roboto\\\",\\\"Oxygen-Sans\\\",\\\"Ubuntu\\\",\\\"Cantarell\\\",\\\"Helvetica Neue\\\",sans-serif);font-size:var(--wp-ui-button-font-size);font-weight:var(--wp-ui-button-font-weight);gap:var(--wpds-dimension-gap-sm,8px);height:var(--wp-ui-button-height);justify-content:center;line-height:var(--wpds-typography-line-height-sm,20px);min-width:var(--wp-ui-button-min-width);padding-inline:var(--wp-ui-button-padding-inline);position:relative;text-decoration:none;@media not (prefers-reduced-motion){transition:color .1s ease-out;*{transition:opacity .1s ease-out}}&[href]{cursor:pointer}[href]{color:inherit;text-decoration:inherit}&:not([data-disabled]):is(:hover,:active,:focus){background-color:var(--wp-ui-button-background-color-active);border-color:var(--wp-ui-button-border-color-active);color:var(--wp-ui-button-foreground-color-active)}&[data-disabled]:not(._914b42f315c0e580__is-loading){background-color:var(--wp-ui-button-background-color-disabled);border-color:var(--wp-ui-button-border-color-disabled);color:var(--wp-ui-button-foreground-color-disabled);@media (forced-colors:active){border-bottom-color:GrayText;border-left-color:GrayText;border-right-color:GrayText;border-top-color:GrayText;color:GrayText}}&:before{aspect-ratio:1;border:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid;border-block-end-color:#0000;border-block-start-color:var(--wp-ui-button-foreground-color);border-inline-end-color:var(--wp-ui-button-foreground-color);border-inline-start-color:#0000;border-radius:50%;box-sizing:border-box;content:\\\"\\\";display:block;height:var(--wp-ui-button-font-size);inset-inline-start:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);@media not (prefers-reduced-motion){transition:opacity .1s ease-out}}}._908205475f9f2a92__is-small{--wp-ui-button-padding-inline:var(--wpds-dimension-padding-sm,8px);--wp-ui-button-height:24px}.dd460c965226cc77__is-brand{&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-brand-active,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-brand,var(--wp-admin-theme-color,#3858e9));--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-brand-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 85%,#000));--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-brand-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-brand-weak-active,color-mix(in oklch,var(--wp-admin-theme-color,#3858e9) 12%,#fff));--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.e722a8f96726aa99__is-neutral{&.b50b3358c5fb4d0b__is-solid{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong-active,#1e1e1e);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-strong-disabled,#e6e6e6);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong-active,#f0f0f0);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-strong-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline,&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral,#1e1e1e);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-active,#1e1e1e);--wp-ui-button-foreground-color-disabled:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}&._62d5a778b7b258ee__is-outline{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);--wp-ui-button-border-color:var(--wpds-color-stroke-interactive-neutral,#8d8d8d);--wp-ui-button-border-color-active:var(--wpds-color-stroke-interactive-neutral-active,#6e6e6e);--wp-ui-button-border-color-disabled:var(--wpds-color-stroke-interactive-neutral-disabled,#dbdbdb)}&.ad0619a3217c6a5b__is-minimal{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-weak,#0000);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-weak-active,#ededed);--wp-ui-button-background-color-disabled:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000)}}.abbb272e2ce49bd6__is-unstyled{background:none;border:none;min-width:unset}.cf59cf1b69629838__is-compact{--wp-ui-button-height:32px}._914b42f315c0e580__is-loading{color:#0000;&:not([data-disabled]):is(:hover,:active,:focus){color:#0000}*{opacity:0}&:before{opacity:1;transition-delay:.05s;@media not (prefers-reduced-motion){animation:_5a1d53da6f830c8d__loading-animation 1s linear infinite}}}[aria-pressed=true].ad0619a3217c6a5b__is-minimal.e722a8f96726aa99__is-neutral{--wp-ui-button-background-color:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-background-color-active:var(--wpds-color-bg-interactive-neutral-strong,#2d2d2d);--wp-ui-button-foreground-color:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0);--wp-ui-button-foreground-color-active:var(--wpds-color-fg-interactive-neutral-strong,#f0f0f0)}}@keyframes _5a1d53da6f830c8d__loading-animation{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}\");\n}\nexport default {\"button\":\"_97b0fc33c028be1a__button\",\"is-unstyled\":\"abbb272e2ce49bd6__is-unstyled\",\"is-loading\":\"_914b42f315c0e580__is-loading\",\"is-small\":\"_908205475f9f2a92__is-small\",\"is-brand\":\"dd460c965226cc77__is-brand\",\"is-outline\":\"_62d5a778b7b258ee__is-outline\",\"is-minimal\":\"ad0619a3217c6a5b__is-minimal\",\"is-neutral\":\"e722a8f96726aa99__is-neutral\",\"is-solid\":\"b50b3358c5fb4d0b__is-solid\",\"is-compact\":\"cf59cf1b69629838__is-compact\",\"loading-animation\":\"_5a1d53da6f830c8d__loading-animation\"};\n", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"e3ae230cea\", \"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._336cd3e4e743482f__box-sizing{box-sizing:border-box;*,:after,:before{box-sizing:inherit}}}\");\n}\nexport default {\"box-sizing\":\"_336cd3e4e743482f__box-sizing\"};\n", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"2a5ab8f3a7\", \"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._08e8a2e44959f892__outset-ring--focus,._970d04df7376df67__outset-ring--focus-within-except-active,.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible,.cd83dfc2126a0846__outset-ring--focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active,.ecadb9e080e2dfa5__outset-ring--focus-parent-visible{@media not (prefers-reduced-motion){--_gcd-a-transition:outline 0.1s ease-out;transition:outline .1s ease-out}outline:0 solid #0000;outline-offset:1px}._08e8a2e44959f892__outset-ring--focus:focus,._970d04df7376df67__outset-ring--focus-within-except-active:focus-within:not(:has(:active)),.c5cb3ee4bddaa8e4__outset-ring--focus-within-visible:focus-within:has(:focus-visible),.cd83dfc2126a0846__outset-ring--focus-within:focus-within,.d0541bc9dd9dc7b6__outset-ring--focus-visible:focus-visible,.e25b2bdd7aa21721__outset-ring--focus-except-active:focus:not(:active),:focus-visible .ecadb9e080e2dfa5__outset-ring--focus-parent-visible{--_gcd-a-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));--_gcd-div-outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9));outline:var(--wpds-border-width-focus,var(--wp-admin-border-width-focus,2px)) solid var(--wpds-color-stroke-focus-brand,var(--wp-admin-theme-color,#3858e9))}}\");\n}\nexport default {\"outset-ring--focus\":\"_08e8a2e44959f892__outset-ring--focus\",\"outset-ring--focus-except-active\":\"e25b2bdd7aa21721__outset-ring--focus-except-active\",\"outset-ring--focus-visible\":\"d0541bc9dd9dc7b6__outset-ring--focus-visible\",\"outset-ring--focus-within\":\"cd83dfc2126a0846__outset-ring--focus-within\",\"outset-ring--focus-within-except-active\":\"_970d04df7376df67__outset-ring--focus-within-except-active\",\"outset-ring--focus-within-visible\":\"c5cb3ee4bddaa8e4__outset-ring--focus-within-visible\",\"outset-ring--focus-parent-visible\":\"ecadb9e080e2dfa5__outset-ring--focus-parent-visible\"};\n", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"1fb29d3a3c\", \"._6defc79820e382c6__button{box-sizing:var(--_gcd-button-box-sizing,border-box);font-family:var(--_gcd-button-font-family,inherit);font-size:var(--_gcd-button-font-size,inherit);font-weight:var(--_gcd-button-font-weight,inherit)}.d2cff2e5dea83bd1__input{box-sizing:var(--_gcd-input-box-sizing,border-box);font-family:var(--_gcd-input-font-family,inherit);font-size:var(--_gcd-input-font-size,inherit);font-weight:var(--_gcd-input-font-weight,inherit);margin:var(--_gcd-input-margin,0);&:is(textarea,[type=text],[type=password],[type=color],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){background-color:var(--_gcd-input-background-color,#0000);border:var(--_gcd-input-border,none);border-radius:var(--_gcd-input-border-radius,0);box-shadow:var(--_gcd-input-box-shadow,0 0 0 #0000);color:var(--_gcd-input-color,var(--wpds-color-fg-interactive-neutral,#1e1e1e));&:focus{border-color:var(--_gcd-input-border-color-focus,var(--wp-admin-theme-color));box-shadow:var(--_gcd-input-box-shadow-focus,none);outline:var(--_gcd-input-outline-focus,none)}&:disabled{background:var(--_gcd-input-background-disabled,#0000);border-color:var(--_gcd-input-border-color-disabled,#0000);box-shadow:var(--_gcd-input-box-shadow-disabled,none);color:var(--_gcd-input-color-disabled,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}&::placeholder{color:var(--_gcd-input-placeholder-color,var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d))}}&:is(textarea,[type=text],[type=password],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=search],[type=tel],[type=time],[type=url],[type=week]){line-height:var(--_gcd-input-line-height,inherit);min-height:var(--_gcd-input-min-height,auto);padding:var(--_gcd-input-padding,0)}}._547d86373d02e108__textarea{box-sizing:var(--_gcd-textarea-box-sizing,border-box);overflow:var(--_gcd-textarea-overflow,auto);resize:var(--_gcd-textarea-resize,block)}._8c15fd0ed9f28ba4__div{outline:var(--_gcd-div-outline,0 solid #0000)}p._43cec3e1eec1066d__p{font-size:var(--_gcd-p-font-size,13px);line-height:var(--_gcd-p-line-height,1.5);margin:var(--_gcd-p-margin,0)}:is(h1,h2,h3,h4,h5,h6).e97669c6d9a38497__heading{color:var(--_gcd-heading-color,var(--wpds-color-fg-content-neutral,#1e1e1e));font-size:var(--_gcd-heading-font-size,inherit);font-weight:var(--_gcd-heading-font-weight,var(--wpds-typography-font-weight-medium,499));margin:var(--_gcd-heading-margin,0)}._2c0831b0499dbd6e__a,._2c0831b0499dbd6e__a:is(:hover,:focus,:active){border-radius:var(--_gcd-a-border-radius,0);box-shadow:var(--_gcd-a-box-shadow,none);color:var(--_gcd-a-color,inherit);outline:var(--_gcd-a-outline,0 solid #0000);transition:var(--_gcd-a-transition,none)}\");\n}\nexport default {\"button\":\"_6defc79820e382c6__button\",\"input\":\"d2cff2e5dea83bd1__input\",\"textarea\":\"_547d86373d02e108__textarea\",\"div\":\"_8c15fd0ed9f28ba4__div\",\"p\":\"_43cec3e1eec1066d__p\",\"heading\":\"e97669c6d9a38497__heading\",\"a\":\"_2c0831b0499dbd6e__a\"};\n"],
5
+ "mappings": ";AAAA,SAAS,UAAU,eAAe;AAClC,OAAO,UAAU;AACjB,SAAS,aAAa;AACtB,SAAS,YAAY,iBAAiB;AACtC,SAAS,UAAU;;;ACMnB,IAAM,uBAAuB;AAU7B,SAAS,aAAa;AACrB,QAAM,cAAc;AAEpB,MAAK,YAAY,kBAAmB;AACnC,WAAO,YAAY;AAAA,EACpB;AAEA,cAAY,mBAAmB;AAAA,IAC9B,WAAW,oBAAI,IAAI;AAAA,IACnB,QAAQ,oBAAI,IAAI;AAAA,IAChB,gBAAgB,oBAAI,QAAQ;AAAA,EAC7B;AAEA,MAAK,OAAO,aAAa,aAAc;AACtC,qBAAkB,QAAS;AAAA,EAC5B;AAEA,SAAO,YAAY;AACpB;AAUA,SAAS,0BACR,gBACA,MACU;AACV,MAAK,CAAE,eAAe,MAAO;AAC5B,WAAO;AAAA,EACR;AAEA,aAAY,SAAS,eAAe,KAAK;AAAA,IACxC,SAAU,oBAAqB;AAAA,EAChC,GAAI;AACH,QAAK,MAAM,aAAc,oBAAqB,MAAM,MAAO;AAC1D,aAAO;AAAA,IACR;AAAA,EACD;AAEA,SAAO;AACR;AAUA,SAAS,YAAa,gBAA0B,MAAc,KAAc;AAC3E,MAAK,CAAE,eAAe,MAAO;AAC5B;AAAA,EACD;AAEA,QAAM,UAAU,WAAW;AAC3B,MAAI,iBAAiB,QAAQ,eAAe,IAAK,cAAe;AAEhE,MAAK,CAAE,gBAAiB;AACvB,qBAAiB,oBAAI,IAAI;AACzB,YAAQ,eAAe,IAAK,gBAAgB,cAAe;AAAA,EAC5D;AAEA,MAAK,eAAe,IAAK,IAAK,GAAI;AACjC;AAAA,EACD;AAKA,MAAK,0BAA2B,gBAAgB,IAAK,GAAI;AACxD,mBAAe,IAAK,IAAK;AACzB;AAAA,EACD;AAEA,QAAM,QAAQ,eAAe,cAAe,OAAQ;AACpD,QAAM,aAAc,sBAAsB,IAAK;AAC/C,QAAM,YAAa,eAAe,eAAgB,GAAI,CAAE;AACxD,iBAAe,KAAK,YAAa,KAAM;AACvC,iBAAe,IAAK,IAAK;AAC1B;AAaO,SAAS,iBAAkB,gBAA2B;AAC5D,QAAM,UAAU,WAAW;AAE3B,UAAQ,UAAU;AAAA,IACjB;AAAA,KACE,QAAQ,UAAU,IAAK,cAAe,KAAK,KAAM;AAAA,EACpD;AAEA,aAAY,CAAE,MAAM,GAAI,KAAK,QAAQ,QAAS;AAC7C,gBAAa,gBAAgB,MAAM,GAAI;AAAA,EACxC;AAEA,SAAO,MAAM;AACZ,UAAM,QAAQ,QAAQ,UAAU,IAAK,cAAe;AAEpD,QAAK,UAAU,QAAY;AAC1B;AAAA,IACD;AAEA,QAAK,SAAS,GAAI;AACjB,cAAQ,UAAU,OAAQ,cAAe;AACzC;AAAA,IACD;AAEA,YAAQ,UAAU,IAAK,gBAAgB,QAAQ,CAAE;AAAA,EAClD;AACD;AAaO,SAAS,cAAe,MAAc,KAAc;AAC1D,QAAM,UAAU,WAAW;AAE3B,UAAQ,OAAO,IAAK,MAAM,GAAI;AAE9B,aAAY,kBAAkB,QAAQ,UAAU,KAAK,GAAI;AACxD,gBAAa,gBAAgB,MAAM,GAAI;AAAA,EACxC;AACD;;;ACpKA,IAAI,OAAO,YAAY,eAAe,QAAQ,IAAI,aAAa,QAAQ;AACtE,gBAAc,cAAc,8vQAAwxQ;AACrzQ;AACA,IAAO,gBAAQ,EAAC,UAAS,6BAA4B,eAAc,iCAAgC,cAAa,iCAAgC,YAAW,+BAA8B,YAAW,8BAA6B,cAAa,iCAAgC,cAAa,gCAA+B,cAAa,gCAA+B,YAAW,8BAA6B,cAAa,gCAA+B,qBAAoB,uCAAsC;;;ACHpf,IAAI,OAAO,YAAY,eAAe,QAAQ,IAAI,aAAa,QAAQ;AACtE,gBAAc,cAAc,kMAAkM;AAC/N;AACA,IAAO,iBAAQ,EAAC,cAAa,gCAA+B;;;ACH5D,IAAI,OAAO,YAAY,eAAe,QAAQ,IAAI,aAAa,QAAQ;AACtE,gBAAc,cAAc,siDAAsiD;AACnkD;AACA,IAAO,gBAAQ,EAAC,sBAAqB,yCAAwC,oCAAmC,sDAAqD,8BAA6B,gDAA+C,6BAA4B,+CAA8C,2CAA0C,8DAA6D,qCAAoC,uDAAsD,qCAAoC,sDAAqD;;;ACHrlB,IAAI,OAAO,YAAY,eAAe,QAAQ,IAAI,aAAa,QAAQ;AACtE,gBAAc,cAAc,2vFAA2vF;AACxxF;AACA,IAAO,6BAAQ,EAAC,UAAS,6BAA4B,SAAQ,2BAA0B,YAAW,+BAA8B,OAAM,0BAAyB,KAAI,wBAAuB,WAAU,6BAA4B,KAAI,uBAAsB;;;AL8CvP;AApCI,IAAM,SAAS;AAAA,EACrB,SAASA,QACR;AAAA,IACC,OAAO;AAAA,IACP,UAAU;AAAA,IACV,OAAO;AAAA,IACP;AAAA,IACA,wBAAwB;AAAA,IACxB;AAAA,IACA;AAAA,IACA,sBAAsB,GAAI,SAAU;AAAA,IACpC;AAAA,IACA,GAAG;AAAA,EACJ,GACA,KACC;AACD,UAAM,kBAAkB;AAAA,MACvB,2BAAc;AAAA,MACd,eAAa,YAAa;AAAA,MAC1B,cAAa,kCAAmC;AAAA,MAChD,YAAY,cAAc,cAAO;AAAA,MACjC,cAAQ,MAAO,IAAK,EAAG;AAAA,MACvB,cAAQ,MAAO,OAAQ,EAAG;AAAA,MAC1B,cAAQ,MAAO,IAAK,EAAG;AAAA,MACvB,WAAW,cAAQ,YAAa;AAAA,MAChC;AAAA,IACD;AAGA,cAAW,MAAM;AAChB,UAAK,WAAW,qBAAsB;AACrC,cAAO,mBAAoB;AAAA,MAC5B;AAAA,IACD,GAAG,CAAE,SAAS,mBAAoB,CAAE;AAEpC,WACC;AAAA,MAAC;AAAA;AAAA,QACA;AAAA,QACA,WAAY;AAAA,QACZ;AAAA,QACA,UAAW,YAAY;AAAA,QACrB,GAAG;AAAA,QAEH;AAAA;AAAA,IACH;AAAA,EAEF;AACD;",
6
6
  "names": ["Button"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/button/icon.tsx"],
4
- "sourcesContent": ["import { forwardRef } from '@wordpress/element';\nimport { type IconProps } from '../icon/types';\nimport { Icon } from '../icon';\n\ninterface ButtonIconProps extends IconProps {\n\t/**\n\t * The icon to display, from the `@wordpress/icons` package.\n\t */\n\ticon: IconProps[ 'icon' ];\n}\n\nexport const ButtonIcon = forwardRef< SVGSVGElement, ButtonIconProps >(\n\tfunction ButtonIcon( { icon, ...props }, ref ) {\n\t\treturn (\n\t\t\t<Icon\n\t\t\t\tref={ ref }\n\t\t\t\ticon={ icon }\n\t\t\t\tviewBox=\"4 4 16 16\"\n\t\t\t\tsize={ 16 }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t);\n\t}\n);\n"],
5
- "mappings": ";AAAA,SAAS,kBAAkB;AAE3B,SAAS,YAAY;AAYlB;AAHI,IAAM,aAAa;AAAA,EACzB,SAASA,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,KAAM;AAC9C,WACC;AAAA,MAAC;AAAA;AAAA,QACA;AAAA,QACA;AAAA,QACA,SAAQ;AAAA,QACR,MAAO;AAAA,QACL,GAAG;AAAA;AAAA,IACN;AAAA,EAEF;AACD;",
4
+ "sourcesContent": ["import { forwardRef } from '@wordpress/element';\nimport { type ButtonIconProps } from './types';\nimport { Icon } from '../icon';\n\nexport const ButtonIcon = forwardRef< SVGSVGElement, ButtonIconProps >(\n\tfunction ButtonIcon( { icon, ...props }, ref ) {\n\t\treturn (\n\t\t\t<Icon\n\t\t\t\tref={ ref }\n\t\t\t\ticon={ icon }\n\t\t\t\tviewBox=\"4 4 16 16\"\n\t\t\t\tsize={ 16 }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t);\n\t}\n);\n"],
5
+ "mappings": ";AAAA,SAAS,kBAAkB;AAE3B,SAAS,YAAY;AAKlB;AAHI,IAAM,aAAa;AAAA,EACzB,SAASA,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,KAAM;AAC9C,WACC;AAAA,MAAC;AAAA;AAAA,QACA;AAAA,QACA;AAAA,QACA,SAAQ;AAAA,QACR,MAAO;AAAA,QACL,GAAG;AAAA;AAAA,IACN;AAAA,EAEF;AACD;",
6
6
  "names": ["ButtonIcon"]
7
7
  }
@@ -1,7 +1,8 @@
1
1
  // packages/ui/src/button/index.ts
2
- import { Button as ButtonButton } from "./button.mjs";
2
+ import { Button as _Button } from "./button.mjs";
3
3
  import { ButtonIcon } from "./icon.mjs";
4
- var Button = Object.assign(ButtonButton, {
4
+ ButtonIcon.displayName = "Button.Icon";
5
+ var Button = Object.assign(_Button, {
5
6
  /**
6
7
  * An icon component specifically designed to work well when rendered inside
7
8
  * a `Button` component.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/button/index.ts"],
4
- "sourcesContent": ["import { Button as ButtonButton } from './button';\nimport { ButtonIcon } from './icon';\n\n/**\n * A versatile button component with multiple variants, tones, and sizes.\n * Built on design tokens for consistent theming and accessibility.\n */\nexport const Button = Object.assign( ButtonButton, {\n\t/**\n\t * An icon component specifically designed to work well when rendered inside\n\t * a `Button` component.\n\t */\n\tIcon: ButtonIcon,\n} ) as typeof ButtonButton & {\n\tIcon: typeof ButtonIcon;\n};\n"],
5
- "mappings": ";AAAA,SAAS,UAAU,oBAAoB;AACvC,SAAS,kBAAkB;AAMpB,IAAM,SAAS,OAAO,OAAQ,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA,EAKlD,MAAM;AACP,CAAE;",
4
+ "sourcesContent": ["import { Button as _Button } from './button';\nimport { ButtonIcon } from './icon';\n\nButtonIcon.displayName = 'Button.Icon';\n\n/**\n * A versatile button component with multiple variants, tones, and sizes.\n */\nexport const Button = Object.assign( _Button, {\n\t/**\n\t * An icon component specifically designed to work well when rendered inside\n\t * a `Button` component.\n\t */\n\tIcon: ButtonIcon,\n} );\n"],
5
+ "mappings": ";AAAA,SAAS,UAAU,eAAe;AAClC,SAAS,kBAAkB;AAE3B,WAAW,cAAc;AAKlB,IAAM,SAAS,OAAO,OAAQ,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,EAK7C,MAAM;AACP,CAAE;",
6
6
  "names": []
7
7
  }
@@ -2,12 +2,91 @@
2
2
  import { mergeProps, useRender } from "@base-ui/react";
3
3
  import { forwardRef } from "@wordpress/element";
4
4
 
5
+ // packages/style-runtime/src/index.ts
6
+ var STYLE_HASH_ATTRIBUTE = "data-wp-hash";
7
+ function getRuntime() {
8
+ const globalScope = globalThis;
9
+ if (globalScope.__wpStyleRuntime) {
10
+ return globalScope.__wpStyleRuntime;
11
+ }
12
+ globalScope.__wpStyleRuntime = {
13
+ documents: /* @__PURE__ */ new Map(),
14
+ styles: /* @__PURE__ */ new Map(),
15
+ injectedStyles: /* @__PURE__ */ new WeakMap()
16
+ };
17
+ if (typeof document !== "undefined") {
18
+ registerDocument(document);
19
+ }
20
+ return globalScope.__wpStyleRuntime;
21
+ }
22
+ function documentContainsStyleHash(targetDocument, hash) {
23
+ if (!targetDocument.head) {
24
+ return false;
25
+ }
26
+ for (const style of targetDocument.head.querySelectorAll(
27
+ `style[${STYLE_HASH_ATTRIBUTE}]`
28
+ )) {
29
+ if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {
30
+ return true;
31
+ }
32
+ }
33
+ return false;
34
+ }
35
+ function injectStyle(targetDocument, hash, css) {
36
+ if (!targetDocument.head) {
37
+ return;
38
+ }
39
+ const runtime = getRuntime();
40
+ let injectedStyles = runtime.injectedStyles.get(targetDocument);
41
+ if (!injectedStyles) {
42
+ injectedStyles = /* @__PURE__ */ new Set();
43
+ runtime.injectedStyles.set(targetDocument, injectedStyles);
44
+ }
45
+ if (injectedStyles.has(hash)) {
46
+ return;
47
+ }
48
+ if (documentContainsStyleHash(targetDocument, hash)) {
49
+ injectedStyles.add(hash);
50
+ return;
51
+ }
52
+ const style = targetDocument.createElement("style");
53
+ style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);
54
+ style.appendChild(targetDocument.createTextNode(css));
55
+ targetDocument.head.appendChild(style);
56
+ injectedStyles.add(hash);
57
+ }
58
+ function registerDocument(targetDocument) {
59
+ const runtime = getRuntime();
60
+ runtime.documents.set(
61
+ targetDocument,
62
+ (runtime.documents.get(targetDocument) ?? 0) + 1
63
+ );
64
+ for (const [hash, css] of runtime.styles) {
65
+ injectStyle(targetDocument, hash, css);
66
+ }
67
+ return () => {
68
+ const count = runtime.documents.get(targetDocument);
69
+ if (count === void 0) {
70
+ return;
71
+ }
72
+ if (count <= 1) {
73
+ runtime.documents.delete(targetDocument);
74
+ return;
75
+ }
76
+ runtime.documents.set(targetDocument, count - 1);
77
+ };
78
+ }
79
+ function registerStyle(hash, css) {
80
+ const runtime = getRuntime();
81
+ runtime.styles.set(hash, css);
82
+ for (const targetDocument of runtime.documents.keys()) {
83
+ injectStyle(targetDocument, hash, css);
84
+ }
85
+ }
86
+
5
87
  // packages/ui/src/card/style.module.css
6
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='14f5e9ddeb']")) {
7
- const style = document.createElement("style");
8
- style.setAttribute("data-wp-hash", "14f5e9ddeb");
9
- style.appendChild(document.createTextNode("@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._02872bf298eadc43__root{--wp-ui-card-padding:var(--wpds-dimension-padding-2xl,24px);--wp-ui-card-header-content-gap:var(--wpds-dimension-gap-xl,24px);--wp-ui-card-header-content-margin:calc(var(--wp-ui-card-header-content-gap) - var(--wp-ui-card-padding));background-color:var(--wpds-color-bg-surface-neutral-strong,#fff);border:1px solid var(--wpds-color-stroke-surface-neutral-weak,#e4e4e4);border-radius:var(--wpds-border-radius-lg,8px);color:var(--wpds-color-fg-content-neutral,#1e1e1e);display:flex;flex-direction:column;overflow:clip}._5dffdaf2a6e669ac__content,.bbccc92e6ba5662d__header{padding:var(--wp-ui-card-padding);&:not(:first-child):not(:last-child){padding-block-end:0}}.bbccc92e6ba5662d__header+._5dffdaf2a6e669ac__content{margin-block-start:var(--wp-ui-card-header-content-margin);padding-block-start:0}.c1fa192587e1b4a6__fullbleed{margin-inline:calc(var(--wp-ui-card-padding)*-1);width:calc(100% + var(--wp-ui-card-padding)*2)}}"));
10
- document.head.appendChild(style);
88
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
89
+ registerStyle("14f5e9ddeb", "@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._02872bf298eadc43__root{--wp-ui-card-padding:var(--wpds-dimension-padding-2xl,24px);--wp-ui-card-header-content-gap:var(--wpds-dimension-gap-xl,24px);--wp-ui-card-header-content-margin:calc(var(--wp-ui-card-header-content-gap) - var(--wp-ui-card-padding));background-color:var(--wpds-color-bg-surface-neutral-strong,#fff);border:1px solid var(--wpds-color-stroke-surface-neutral-weak,#e4e4e4);border-radius:var(--wpds-border-radius-lg,8px);color:var(--wpds-color-fg-content-neutral,#1e1e1e);display:flex;flex-direction:column;overflow:clip}._5dffdaf2a6e669ac__content,.bbccc92e6ba5662d__header{padding:var(--wp-ui-card-padding);&:not(:first-child):not(:last-child){padding-block-end:0}}.bbccc92e6ba5662d__header+._5dffdaf2a6e669ac__content{margin-block-start:var(--wp-ui-card-header-content-margin);padding-block-start:0}.c1fa192587e1b4a6__fullbleed{margin-inline:calc(var(--wp-ui-card-padding)*-1);width:calc(100% + var(--wp-ui-card-padding)*2)}}");
11
90
  }
12
91
  var style_default = { "root": "_02872bf298eadc43__root", "header": "bbccc92e6ba5662d__header", "content": "_5dffdaf2a6e669ac__content", "fullbleed": "c1fa192587e1b4a6__fullbleed" };
13
92
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/card/content.tsx", "../../src/card/style.module.css"],
4
- "sourcesContent": ["import { mergeProps, useRender } from '@base-ui/react';\nimport { forwardRef } from '@wordpress/element';\nimport styles from './style.module.css';\nimport type { ContentProps } from './types';\n\n/**\n * The main content area of the card.\n */\nexport const Content = forwardRef< HTMLDivElement, ContentProps >(\n\tfunction CardContent( { render, ...props }, ref ) {\n\t\tconst element = useRender( {\n\t\t\tdefaultTagName: 'div',\n\t\t\trender,\n\t\t\tref,\n\t\t\tprops: mergeProps< 'div' >( { className: styles.content }, props ),\n\t\t} );\n\n\t\treturn element;\n\t}\n);\n", "if (typeof document !== 'undefined' && process.env.NODE_ENV !== 'test' && !document.head.querySelector(\"style[data-wp-hash='14f5e9ddeb']\")) {\n\tconst style = document.createElement(\"style\");\n\tstyle.setAttribute(\"data-wp-hash\", \"14f5e9ddeb\");\n\tstyle.appendChild(document.createTextNode(\"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._02872bf298eadc43__root{--wp-ui-card-padding:var(--wpds-dimension-padding-2xl,24px);--wp-ui-card-header-content-gap:var(--wpds-dimension-gap-xl,24px);--wp-ui-card-header-content-margin:calc(var(--wp-ui-card-header-content-gap) - var(--wp-ui-card-padding));background-color:var(--wpds-color-bg-surface-neutral-strong,#fff);border:1px solid var(--wpds-color-stroke-surface-neutral-weak,#e4e4e4);border-radius:var(--wpds-border-radius-lg,8px);color:var(--wpds-color-fg-content-neutral,#1e1e1e);display:flex;flex-direction:column;overflow:clip}._5dffdaf2a6e669ac__content,.bbccc92e6ba5662d__header{padding:var(--wp-ui-card-padding);&:not(:first-child):not(:last-child){padding-block-end:0}}.bbccc92e6ba5662d__header+._5dffdaf2a6e669ac__content{margin-block-start:var(--wp-ui-card-header-content-margin);padding-block-start:0}.c1fa192587e1b4a6__fullbleed{margin-inline:calc(var(--wp-ui-card-padding)*-1);width:calc(100% + var(--wp-ui-card-padding)*2)}}\"));\n\tdocument.head.appendChild(style);\n}\nexport default {\"root\":\"_02872bf298eadc43__root\",\"header\":\"bbccc92e6ba5662d__header\",\"content\":\"_5dffdaf2a6e669ac__content\",\"fullbleed\":\"c1fa192587e1b4a6__fullbleed\"};\n"],
5
- "mappings": ";AAAA,SAAS,YAAY,iBAAiB;AACtC,SAAS,kBAAkB;;;ACD3B,IAAI,OAAO,aAAa,eAAe,QAAQ,IAAI,aAAa,UAAU,CAAC,SAAS,KAAK,cAAc,kCAAkC,GAAG;AAC3I,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,aAAa,gBAAgB,YAAY;AAC/C,QAAM,YAAY,SAAS,eAAe,4hCAA4hC,CAAC;AACvkC,WAAS,KAAK,YAAY,KAAK;AAChC;AACA,IAAO,gBAAQ,EAAC,QAAO,2BAA0B,UAAS,4BAA2B,WAAU,8BAA6B,aAAY,8BAA6B;;;ADE9J,IAAM,UAAU;AAAA,EACtB,SAAS,YAAa,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAM;AACjD,UAAM,UAAU,UAAW;AAAA,MAC1B,gBAAgB;AAAA,MAChB;AAAA,MACA;AAAA,MACA,OAAO,WAAqB,EAAE,WAAW,cAAO,QAAQ,GAAG,KAAM;AAAA,IAClE,CAAE;AAEF,WAAO;AAAA,EACR;AACD;",
3
+ "sources": ["../../src/card/content.tsx", "../../../style-runtime/src/index.ts", "../../src/card/style.module.css"],
4
+ "sourcesContent": ["import { mergeProps, useRender } from '@base-ui/react';\nimport { forwardRef } from '@wordpress/element';\nimport styles from './style.module.css';\nimport type { ContentProps } from './types';\n\n/**\n * The main content area of the card.\n */\nexport const Content = forwardRef< HTMLDivElement, ContentProps >(\n\tfunction CardContent( { render, ...props }, ref ) {\n\t\tconst element = useRender( {\n\t\t\tdefaultTagName: 'div',\n\t\t\trender,\n\t\t\tref,\n\t\t\tprops: mergeProps< 'div' >( { className: styles.content }, props ),\n\t\t} );\n\n\t\treturn element;\n\t}\n);\n", "type GlobalScopeWithStyleRuntime = typeof globalThis & {\n\t// This global is shared by separately bundled copies of this package.\n\t// Keep its shape backward compatible after release.\n\t__wpStyleRuntime?: {\n\t\tdocuments: Map< Document, number >;\n\t\tstyles: Map< string, string >;\n\t\tinjectedStyles: WeakMap< Document, Set< string > >;\n\t};\n};\n\nconst STYLE_HASH_ATTRIBUTE = 'data-wp-hash';\n\n/**\n * Returns the shared style runtime registry.\n *\n * The registry is stored on `globalThis` so separately bundled copies of this\n * package can coordinate through the same document and style maps.\n *\n * @return The shared runtime registry.\n */\nfunction getRuntime() {\n\tconst globalScope = globalThis as GlobalScopeWithStyleRuntime;\n\n\tif ( globalScope.__wpStyleRuntime ) {\n\t\treturn globalScope.__wpStyleRuntime;\n\t}\n\n\tglobalScope.__wpStyleRuntime = {\n\t\tdocuments: new Map(),\n\t\tstyles: new Map(),\n\t\tinjectedStyles: new WeakMap(),\n\t};\n\n\tif ( typeof document !== 'undefined' ) {\n\t\tregisterDocument( document );\n\t}\n\n\treturn globalScope.__wpStyleRuntime;\n}\n\n/**\n * Checks whether a document already contains a style tag for a hash.\n *\n * @param targetDocument Document to inspect.\n * @param hash Stable hash for the transformed CSS.\n *\n * @return Whether the style hash already exists in the document.\n */\nfunction documentContainsStyleHash(\n\ttargetDocument: Document,\n\thash: string\n): boolean {\n\tif ( ! targetDocument.head ) {\n\t\treturn false;\n\t}\n\n\tfor ( const style of targetDocument.head.querySelectorAll(\n\t\t`style[${ STYLE_HASH_ATTRIBUTE }]`\n\t) ) {\n\t\tif ( style.getAttribute( STYLE_HASH_ATTRIBUTE ) === hash ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n}\n\n/**\n * Injects a registered style into a document, unless that document already\n * contains a style tag for the same hash.\n *\n * @param targetDocument Document to inject the style into.\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nfunction injectStyle( targetDocument: Document, hash: string, css: string ) {\n\tif ( ! targetDocument.head ) {\n\t\treturn;\n\t}\n\n\tconst runtime = getRuntime();\n\tlet injectedStyles = runtime.injectedStyles.get( targetDocument );\n\n\tif ( ! injectedStyles ) {\n\t\tinjectedStyles = new Set();\n\t\truntime.injectedStyles.set( targetDocument, injectedStyles );\n\t}\n\n\tif ( injectedStyles.has( hash ) ) {\n\t\treturn;\n\t}\n\n\t// Older generated CSS module output can still inject matching style tags\n\t// after this document's cache is created, so keep the DOM as the fallback\n\t// source of truth on cache misses.\n\tif ( documentContainsStyleHash( targetDocument, hash ) ) {\n\t\tinjectedStyles.add( hash );\n\t\treturn;\n\t}\n\n\tconst style = targetDocument.createElement( 'style' );\n\tstyle.setAttribute( STYLE_HASH_ATTRIBUTE, hash );\n\tstyle.appendChild( targetDocument.createTextNode( css ) );\n\ttargetDocument.head.appendChild( style );\n\tinjectedStyles.add( hash );\n}\n\n/**\n * Registers a document as a style injection target.\n *\n * Existing registered styles are replayed into the document immediately.\n * Documents are reference-counted so multiple providers can safely register the\n * same document without one cleanup removing it while another registration is\n * still active.\n *\n * @param targetDocument Document to receive registered styles.\n * @return Cleanup function that unregisters this document registration.\n */\nexport function registerDocument( targetDocument: Document ) {\n\tconst runtime = getRuntime();\n\n\truntime.documents.set(\n\t\ttargetDocument,\n\t\t( runtime.documents.get( targetDocument ) ?? 0 ) + 1\n\t);\n\n\tfor ( const [ hash, css ] of runtime.styles ) {\n\t\tinjectStyle( targetDocument, hash, css );\n\t}\n\n\treturn () => {\n\t\tconst count = runtime.documents.get( targetDocument );\n\n\t\tif ( count === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( count <= 1 ) {\n\t\t\truntime.documents.delete( targetDocument );\n\t\t\treturn;\n\t\t}\n\n\t\truntime.documents.set( targetDocument, count - 1 );\n\t};\n}\n\n/**\n * Registers a style and injects it into all registered documents.\n *\n * The hash is used as the deduplication key, so calling this repeatedly with\n * the same hash will not add duplicate style tags to a document.\n * Registered styles are retained for the lifetime of the page so they can be\n * replayed into documents that are registered later.\n *\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nexport function registerStyle( hash: string, css: string ) {\n\tconst runtime = getRuntime();\n\n\truntime.styles.set( hash, css );\n\n\tfor ( const targetDocument of runtime.documents.keys() ) {\n\t\tinjectStyle( targetDocument, hash, css );\n\t}\n}\n", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"14f5e9ddeb\", \"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._02872bf298eadc43__root{--wp-ui-card-padding:var(--wpds-dimension-padding-2xl,24px);--wp-ui-card-header-content-gap:var(--wpds-dimension-gap-xl,24px);--wp-ui-card-header-content-margin:calc(var(--wp-ui-card-header-content-gap) - var(--wp-ui-card-padding));background-color:var(--wpds-color-bg-surface-neutral-strong,#fff);border:1px solid var(--wpds-color-stroke-surface-neutral-weak,#e4e4e4);border-radius:var(--wpds-border-radius-lg,8px);color:var(--wpds-color-fg-content-neutral,#1e1e1e);display:flex;flex-direction:column;overflow:clip}._5dffdaf2a6e669ac__content,.bbccc92e6ba5662d__header{padding:var(--wp-ui-card-padding);&:not(:first-child):not(:last-child){padding-block-end:0}}.bbccc92e6ba5662d__header+._5dffdaf2a6e669ac__content{margin-block-start:var(--wp-ui-card-header-content-margin);padding-block-start:0}.c1fa192587e1b4a6__fullbleed{margin-inline:calc(var(--wp-ui-card-padding)*-1);width:calc(100% + var(--wp-ui-card-padding)*2)}}\");\n}\nexport default {\"root\":\"_02872bf298eadc43__root\",\"header\":\"bbccc92e6ba5662d__header\",\"content\":\"_5dffdaf2a6e669ac__content\",\"fullbleed\":\"c1fa192587e1b4a6__fullbleed\"};\n"],
5
+ "mappings": ";AAAA,SAAS,YAAY,iBAAiB;AACtC,SAAS,kBAAkB;;;ACS3B,IAAM,uBAAuB;AAU7B,SAAS,aAAa;AACrB,QAAM,cAAc;AAEpB,MAAK,YAAY,kBAAmB;AACnC,WAAO,YAAY;AAAA,EACpB;AAEA,cAAY,mBAAmB;AAAA,IAC9B,WAAW,oBAAI,IAAI;AAAA,IACnB,QAAQ,oBAAI,IAAI;AAAA,IAChB,gBAAgB,oBAAI,QAAQ;AAAA,EAC7B;AAEA,MAAK,OAAO,aAAa,aAAc;AACtC,qBAAkB,QAAS;AAAA,EAC5B;AAEA,SAAO,YAAY;AACpB;AAUA,SAAS,0BACR,gBACA,MACU;AACV,MAAK,CAAE,eAAe,MAAO;AAC5B,WAAO;AAAA,EACR;AAEA,aAAY,SAAS,eAAe,KAAK;AAAA,IACxC,SAAU,oBAAqB;AAAA,EAChC,GAAI;AACH,QAAK,MAAM,aAAc,oBAAqB,MAAM,MAAO;AAC1D,aAAO;AAAA,IACR;AAAA,EACD;AAEA,SAAO;AACR;AAUA,SAAS,YAAa,gBAA0B,MAAc,KAAc;AAC3E,MAAK,CAAE,eAAe,MAAO;AAC5B;AAAA,EACD;AAEA,QAAM,UAAU,WAAW;AAC3B,MAAI,iBAAiB,QAAQ,eAAe,IAAK,cAAe;AAEhE,MAAK,CAAE,gBAAiB;AACvB,qBAAiB,oBAAI,IAAI;AACzB,YAAQ,eAAe,IAAK,gBAAgB,cAAe;AAAA,EAC5D;AAEA,MAAK,eAAe,IAAK,IAAK,GAAI;AACjC;AAAA,EACD;AAKA,MAAK,0BAA2B,gBAAgB,IAAK,GAAI;AACxD,mBAAe,IAAK,IAAK;AACzB;AAAA,EACD;AAEA,QAAM,QAAQ,eAAe,cAAe,OAAQ;AACpD,QAAM,aAAc,sBAAsB,IAAK;AAC/C,QAAM,YAAa,eAAe,eAAgB,GAAI,CAAE;AACxD,iBAAe,KAAK,YAAa,KAAM;AACvC,iBAAe,IAAK,IAAK;AAC1B;AAaO,SAAS,iBAAkB,gBAA2B;AAC5D,QAAM,UAAU,WAAW;AAE3B,UAAQ,UAAU;AAAA,IACjB;AAAA,KACE,QAAQ,UAAU,IAAK,cAAe,KAAK,KAAM;AAAA,EACpD;AAEA,aAAY,CAAE,MAAM,GAAI,KAAK,QAAQ,QAAS;AAC7C,gBAAa,gBAAgB,MAAM,GAAI;AAAA,EACxC;AAEA,SAAO,MAAM;AACZ,UAAM,QAAQ,QAAQ,UAAU,IAAK,cAAe;AAEpD,QAAK,UAAU,QAAY;AAC1B;AAAA,IACD;AAEA,QAAK,SAAS,GAAI;AACjB,cAAQ,UAAU,OAAQ,cAAe;AACzC;AAAA,IACD;AAEA,YAAQ,UAAU,IAAK,gBAAgB,QAAQ,CAAE;AAAA,EAClD;AACD;AAaO,SAAS,cAAe,MAAc,KAAc;AAC1D,QAAM,UAAU,WAAW;AAE3B,UAAQ,OAAO,IAAK,MAAM,GAAI;AAE9B,aAAY,kBAAkB,QAAQ,UAAU,KAAK,GAAI;AACxD,gBAAa,gBAAgB,MAAM,GAAI;AAAA,EACxC;AACD;;;ACpKA,IAAI,OAAO,YAAY,eAAe,QAAQ,IAAI,aAAa,QAAQ;AACtE,gBAAc,cAAc,4hCAA4hC;AACzjC;AACA,IAAO,gBAAQ,EAAC,QAAO,2BAA0B,UAAS,4BAA2B,WAAU,8BAA6B,aAAY,8BAA6B;;;AFI9J,IAAM,UAAU;AAAA,EACtB,SAAS,YAAa,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAM;AACjD,UAAM,UAAU,UAAW;AAAA,MAC1B,gBAAgB;AAAA,MAChB;AAAA,MACA;AAAA,MACA,OAAO,WAAqB,EAAE,WAAW,cAAO,QAAQ,GAAG,KAAM;AAAA,IAClE,CAAE;AAEF,WAAO;AAAA,EACR;AACD;",
6
6
  "names": []
7
7
  }
@@ -2,12 +2,91 @@
2
2
  import { mergeProps, useRender } from "@base-ui/react";
3
3
  import { forwardRef } from "@wordpress/element";
4
4
 
5
+ // packages/style-runtime/src/index.ts
6
+ var STYLE_HASH_ATTRIBUTE = "data-wp-hash";
7
+ function getRuntime() {
8
+ const globalScope = globalThis;
9
+ if (globalScope.__wpStyleRuntime) {
10
+ return globalScope.__wpStyleRuntime;
11
+ }
12
+ globalScope.__wpStyleRuntime = {
13
+ documents: /* @__PURE__ */ new Map(),
14
+ styles: /* @__PURE__ */ new Map(),
15
+ injectedStyles: /* @__PURE__ */ new WeakMap()
16
+ };
17
+ if (typeof document !== "undefined") {
18
+ registerDocument(document);
19
+ }
20
+ return globalScope.__wpStyleRuntime;
21
+ }
22
+ function documentContainsStyleHash(targetDocument, hash) {
23
+ if (!targetDocument.head) {
24
+ return false;
25
+ }
26
+ for (const style of targetDocument.head.querySelectorAll(
27
+ `style[${STYLE_HASH_ATTRIBUTE}]`
28
+ )) {
29
+ if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {
30
+ return true;
31
+ }
32
+ }
33
+ return false;
34
+ }
35
+ function injectStyle(targetDocument, hash, css) {
36
+ if (!targetDocument.head) {
37
+ return;
38
+ }
39
+ const runtime = getRuntime();
40
+ let injectedStyles = runtime.injectedStyles.get(targetDocument);
41
+ if (!injectedStyles) {
42
+ injectedStyles = /* @__PURE__ */ new Set();
43
+ runtime.injectedStyles.set(targetDocument, injectedStyles);
44
+ }
45
+ if (injectedStyles.has(hash)) {
46
+ return;
47
+ }
48
+ if (documentContainsStyleHash(targetDocument, hash)) {
49
+ injectedStyles.add(hash);
50
+ return;
51
+ }
52
+ const style = targetDocument.createElement("style");
53
+ style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);
54
+ style.appendChild(targetDocument.createTextNode(css));
55
+ targetDocument.head.appendChild(style);
56
+ injectedStyles.add(hash);
57
+ }
58
+ function registerDocument(targetDocument) {
59
+ const runtime = getRuntime();
60
+ runtime.documents.set(
61
+ targetDocument,
62
+ (runtime.documents.get(targetDocument) ?? 0) + 1
63
+ );
64
+ for (const [hash, css] of runtime.styles) {
65
+ injectStyle(targetDocument, hash, css);
66
+ }
67
+ return () => {
68
+ const count = runtime.documents.get(targetDocument);
69
+ if (count === void 0) {
70
+ return;
71
+ }
72
+ if (count <= 1) {
73
+ runtime.documents.delete(targetDocument);
74
+ return;
75
+ }
76
+ runtime.documents.set(targetDocument, count - 1);
77
+ };
78
+ }
79
+ function registerStyle(hash, css) {
80
+ const runtime = getRuntime();
81
+ runtime.styles.set(hash, css);
82
+ for (const targetDocument of runtime.documents.keys()) {
83
+ injectStyle(targetDocument, hash, css);
84
+ }
85
+ }
86
+
5
87
  // packages/ui/src/card/style.module.css
6
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='14f5e9ddeb']")) {
7
- const style = document.createElement("style");
8
- style.setAttribute("data-wp-hash", "14f5e9ddeb");
9
- style.appendChild(document.createTextNode("@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._02872bf298eadc43__root{--wp-ui-card-padding:var(--wpds-dimension-padding-2xl,24px);--wp-ui-card-header-content-gap:var(--wpds-dimension-gap-xl,24px);--wp-ui-card-header-content-margin:calc(var(--wp-ui-card-header-content-gap) - var(--wp-ui-card-padding));background-color:var(--wpds-color-bg-surface-neutral-strong,#fff);border:1px solid var(--wpds-color-stroke-surface-neutral-weak,#e4e4e4);border-radius:var(--wpds-border-radius-lg,8px);color:var(--wpds-color-fg-content-neutral,#1e1e1e);display:flex;flex-direction:column;overflow:clip}._5dffdaf2a6e669ac__content,.bbccc92e6ba5662d__header{padding:var(--wp-ui-card-padding);&:not(:first-child):not(:last-child){padding-block-end:0}}.bbccc92e6ba5662d__header+._5dffdaf2a6e669ac__content{margin-block-start:var(--wp-ui-card-header-content-margin);padding-block-start:0}.c1fa192587e1b4a6__fullbleed{margin-inline:calc(var(--wp-ui-card-padding)*-1);width:calc(100% + var(--wp-ui-card-padding)*2)}}"));
10
- document.head.appendChild(style);
88
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
89
+ registerStyle("14f5e9ddeb", "@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._02872bf298eadc43__root{--wp-ui-card-padding:var(--wpds-dimension-padding-2xl,24px);--wp-ui-card-header-content-gap:var(--wpds-dimension-gap-xl,24px);--wp-ui-card-header-content-margin:calc(var(--wp-ui-card-header-content-gap) - var(--wp-ui-card-padding));background-color:var(--wpds-color-bg-surface-neutral-strong,#fff);border:1px solid var(--wpds-color-stroke-surface-neutral-weak,#e4e4e4);border-radius:var(--wpds-border-radius-lg,8px);color:var(--wpds-color-fg-content-neutral,#1e1e1e);display:flex;flex-direction:column;overflow:clip}._5dffdaf2a6e669ac__content,.bbccc92e6ba5662d__header{padding:var(--wp-ui-card-padding);&:not(:first-child):not(:last-child){padding-block-end:0}}.bbccc92e6ba5662d__header+._5dffdaf2a6e669ac__content{margin-block-start:var(--wp-ui-card-header-content-margin);padding-block-start:0}.c1fa192587e1b4a6__fullbleed{margin-inline:calc(var(--wp-ui-card-padding)*-1);width:calc(100% + var(--wp-ui-card-padding)*2)}}");
11
90
  }
12
91
  var style_default = { "root": "_02872bf298eadc43__root", "header": "bbccc92e6ba5662d__header", "content": "_5dffdaf2a6e669ac__content", "fullbleed": "c1fa192587e1b4a6__fullbleed" };
13
92