@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
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/form/primitives/select/trigger.tsx", "../../../../src/utils/css/focus.module.css", "../../../../src/utils/css/select-trigger.module.css"],
4
- "sourcesContent": ["import { Select as _Select } from '@base-ui/react/select';\nimport clsx from 'clsx';\nimport { forwardRef } from '@wordpress/element';\nimport { chevronDown } from '@wordpress/icons';\nimport focusStyles from '../../../utils/css/focus.module.css';\nimport selectTriggerStyles from '../../../utils/css/select-trigger.module.css';\nimport { InputLayout } from '../input-layout';\nimport { Icon } from '../../../icon';\nimport type { SelectTriggerProps } from './types';\n\nexport const Trigger = forwardRef< HTMLButtonElement, SelectTriggerProps >(\n\tfunction Trigger(\n\t\t{ className, size, variant, children, ...restProps },\n\t\tref\n\t) {\n\t\treturn (\n\t\t\t<InputLayout\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\tfocusStyles[ 'outset-ring--focus-within-except-active' ],\n\t\t\t\t\tselectTriggerStyles[ 'trigger-wrapper' ],\n\t\t\t\t\tvariant === 'minimal' &&\n\t\t\t\t\t\tselectTriggerStyles[ 'is-minimal' ],\n\t\t\t\t\tclassName\n\t\t\t\t) }\n\t\t\t\tsize={ size }\n\t\t\t\tisBorderless={ variant === 'minimal' }\n\t\t\t>\n\t\t\t\t<_Select.Trigger\n\t\t\t\t\t{ ...restProps }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tselectTriggerStyles.trigger,\n\t\t\t\t\t\tvariant === 'minimal' &&\n\t\t\t\t\t\t\tselectTriggerStyles[ 'is-minimal' ]\n\t\t\t\t\t) }\n\t\t\t\t\tdata-can-disable-input-layout\n\t\t\t\t\tref={ ref }\n\t\t\t\t>\n\t\t\t\t\t<_Select.Value\n\t\t\t\t\t\tclassName={ ( state ) =>\n\t\t\t\t\t\t\tclsx(\n\t\t\t\t\t\t\t\tselectTriggerStyles[ 'trigger-value' ],\n\t\t\t\t\t\t\t\tstate.value === '' &&\n\t\t\t\t\t\t\t\t\tselectTriggerStyles[ 'is-placeholder' ]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</_Select.Value>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName={ selectTriggerStyles[ 'trigger-caret' ] }\n\t\t\t\t\t\ticon={ chevronDown }\n\t\t\t\t\t\tsize={ 18 }\n\t\t\t\t\t/>\n\t\t\t\t</_Select.Trigger>\n\t\t\t</InputLayout>\n\t\t);\n\t}\n);\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='94e95fb494']\")) {\n\tconst style = document.createElement(\"style\");\n\tstyle.setAttribute(\"data-wp-hash\", \"94e95fb494\");\n\tstyle.appendChild(document.createTextNode(\"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._6e4e0445ef20426b__trigger-wrapper{&.fa98c865fb77e675__is-minimal{width:fit-content}}._7893295e3f6d1af7__trigger{align-items:center;background-color:initial;border:none;color:var(--wpds-color-fg-interactive-neutral,#1e1e1e);cursor:var(--wpds-cursor-control,pointer);display:flex;font-family:inherit;font-size:inherit;gap:var(--wpds-dimension-gap-xs,4px);justify-content:space-between;line-height:1.4;padding-block:4px;padding-inline-end:calc(var(--wp-ui-input-layout-padding-inline) - 4px);padding-inline-start:var(--wp-ui-input-layout-padding-inline);text-align:start;user-select:none;width:100%;&.fa98c865fb77e675__is-minimal{width:auto}&:focus{outline:none}&[data-disabled]{background-color:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);color:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}}.e760c9339965ce84__trigger-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;&.c67f9ed393747f3f__is-placeholder{color:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}}._308bc63e43681f99__trigger-caret{flex:0 0 auto}}\"));\n\tdocument.head.appendChild(style);\n}\nexport default {\"trigger-wrapper\":\"_6e4e0445ef20426b__trigger-wrapper\",\"is-minimal\":\"fa98c865fb77e675__is-minimal\",\"trigger\":\"_7893295e3f6d1af7__trigger\",\"trigger-value\":\"e760c9339965ce84__trigger-value\",\"is-placeholder\":\"c67f9ed393747f3f__is-placeholder\",\"trigger-caret\":\"_308bc63e43681f99__trigger-caret\"};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAkC;AAClC,kBAAiB;AACjB,qBAA2B;AAC3B,mBAA4B;;;ACH5B,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,4oCAA4oC,CAAC;AACvrC,WAAS,KAAK,YAAY,KAAK;AAChC;AACA,IAAO,yBAAQ,EAAC,mBAAkB,sCAAqC,cAAa,gCAA+B,WAAU,8BAA6B,iBAAgB,mCAAkC,kBAAiB,oCAAmC,iBAAgB,mCAAkC;;;AFAlT,0BAA4B;AAC5B,kBAAqB;AAoBjB;AAjBG,IAAM,cAAU;AAAA,EACtB,SAASA,SACR,EAAE,WAAW,MAAM,SAAS,UAAU,GAAG,UAAU,GACnD,KACC;AACD,WACC;AAAA,MAAC;AAAA;AAAA,QACA,eAAY,YAAAC;AAAA,UACX,cAAa,yCAA0C;AAAA,UACvD,uBAAqB,iBAAkB;AAAA,UACvC,YAAY,aACX,uBAAqB,YAAa;AAAA,UACnC;AAAA,QACD;AAAA,QACA;AAAA,QACA,cAAe,YAAY;AAAA,QAE3B;AAAA,UAAC,cAAAC,OAAQ;AAAA,UAAR;AAAA,YACE,GAAG;AAAA,YACL,eAAY,YAAAD;AAAA,cACX,uBAAoB;AAAA,cACpB,YAAY,aACX,uBAAqB,YAAa;AAAA,YACpC;AAAA,YACA,iCAA6B;AAAA,YAC7B;AAAA,YAEA;AAAA;AAAA,gBAAC,cAAAC,OAAQ;AAAA,gBAAR;AAAA,kBACA,WAAY,CAAE,cACb,YAAAD;AAAA,oBACC,uBAAqB,eAAgB;AAAA,oBACrC,MAAM,UAAU,MACf,uBAAqB,gBAAiB;AAAA,kBACxC;AAAA,kBAGC;AAAA;AAAA,cACH;AAAA,cACA;AAAA,gBAAC;AAAA;AAAA,kBACA,WAAY,uBAAqB,eAAgB;AAAA,kBACjD,MAAO;AAAA,kBACP,MAAO;AAAA;AAAA,cACR;AAAA;AAAA;AAAA,QACD;AAAA;AAAA,IACD;AAAA,EAEF;AACD;",
3
+ "sources": ["../../../../src/form/primitives/select/trigger.tsx", "../../../../../style-runtime/src/index.ts", "../../../../src/utils/css/focus.module.css", "../../../../src/utils/css/select-trigger.module.css"],
4
+ "sourcesContent": ["import { Select as _Select } from '@base-ui/react/select';\nimport clsx from 'clsx';\nimport { forwardRef } from '@wordpress/element';\nimport { chevronDown } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport focusStyles from '../../../utils/css/focus.module.css';\nimport selectTriggerStyles from '../../../utils/css/select-trigger.module.css';\nimport { InputLayout } from '../input-layout';\nimport { Icon } from '../../../icon';\nimport type { SelectTriggerProps } from './types';\n\nexport const Trigger = forwardRef< HTMLButtonElement, SelectTriggerProps >(\n\tfunction Trigger(\n\t\t{\n\t\t\tclassName,\n\t\t\tsize,\n\t\t\tvariant,\n\t\t\tchildren,\n\t\t\tplaceholder = __( 'Select' ),\n\t\t\t...restProps\n\t\t},\n\t\tref\n\t) {\n\t\treturn (\n\t\t\t<InputLayout\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\tfocusStyles[ 'outset-ring--focus-within-except-active' ],\n\t\t\t\t\tselectTriggerStyles[ 'trigger-wrapper' ],\n\t\t\t\t\tvariant === 'minimal' &&\n\t\t\t\t\t\tselectTriggerStyles[ 'is-minimal' ],\n\t\t\t\t\tclassName\n\t\t\t\t) }\n\t\t\t\tsize={ size }\n\t\t\t\tisBorderless={ variant === 'minimal' }\n\t\t\t>\n\t\t\t\t<_Select.Trigger\n\t\t\t\t\t{ ...restProps }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tselectTriggerStyles.trigger,\n\t\t\t\t\t\tvariant === 'minimal' &&\n\t\t\t\t\t\t\tselectTriggerStyles[ 'is-minimal' ]\n\t\t\t\t\t) }\n\t\t\t\t\tdata-can-disable-input-layout\n\t\t\t\t\tref={ ref }\n\t\t\t\t>\n\t\t\t\t\t<_Select.Value\n\t\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\t\tclassName={ selectTriggerStyles[ 'trigger-value' ] }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</_Select.Value>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName={ selectTriggerStyles[ 'trigger-caret' ] }\n\t\t\t\t\t\ticon={ chevronDown }\n\t\t\t\t\t\tsize={ 18 }\n\t\t\t\t\t/>\n\t\t\t\t</_Select.Trigger>\n\t\t\t</InputLayout>\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(\"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(\"0592559a0a\", \"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-utilities{._6e4e0445ef20426b__trigger-wrapper{&.fa98c865fb77e675__is-minimal{width:fit-content}}._7893295e3f6d1af7__trigger{align-items:center;background-color:initial;border:none;color:var(--wpds-color-fg-interactive-neutral,#1e1e1e);display:flex;font-family:inherit;font-size:inherit;gap:var(--wpds-dimension-gap-xs,4px);justify-content:space-between;line-height:1.4;padding-block:4px;padding-inline-end:calc(var(--wp-ui-input-layout-padding-inline) - 4px);padding-inline-start:var(--wp-ui-input-layout-padding-inline);text-align:start;user-select:none;width:100%;&:not([data-disabled]){cursor:var(--wpds-cursor-control,pointer)}&.fa98c865fb77e675__is-minimal{width:auto}&:focus{outline:none}&[data-disabled]{background-color:var(--wpds-color-bg-interactive-neutral-weak-disabled,#0000);color:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}}.e760c9339965ce84__trigger-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;&[data-placeholder]{color:var(--wpds-color-fg-interactive-neutral-disabled,#8d8d8d)}}._308bc63e43681f99__trigger-caret{flex:0 0 auto}}\");\n}\nexport default {\"trigger-wrapper\":\"_6e4e0445ef20426b__trigger-wrapper\",\"is-minimal\":\"fa98c865fb77e675__is-minimal\",\"trigger\":\"_7893295e3f6d1af7__trigger\",\"trigger-value\":\"e760c9339965ce84__trigger-value\",\"trigger-caret\":\"_308bc63e43681f99__trigger-caret\"};\n"],
5
+ "mappings": "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",
6
6
  "names": ["Trigger", "clsx", "_Select"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/form/primitives/select/types.ts"],
4
- "sourcesContent": ["import type { Select as _Select } from '@base-ui/react/select';\nimport type { ComponentPropsWithoutRef, ReactElement } from 'react';\n\nimport type { ComponentProps } from '../../../utils/types';\nimport type { InputLayoutProps } from '../input-layout/types';\n\nexport type PortalProps = ComponentPropsWithoutRef< typeof _Select.Portal >;\n\n// The second type parameter is the `multiple` flag (currently disabled).\nexport type SelectRootProps = Omit<\n\t_Select.Root.Props< string, false >,\n\t'multiple'\n>;\n\nexport type SelectTriggerProps = ComponentProps< typeof _Select.Trigger > & {\n\t/**\n\t * The size of the trigger.\n\t *\n\t * @default 'default'\n\t */\n\tsize?: InputLayoutProps[ 'size' ];\n\t/**\n\t * The style variant of the trigger.\n\t *\n\t * @default 'default'\n\t */\n\tvariant?: 'default' | 'minimal';\n\t/**\n\t * A function that gets called with the current value as an argument.\n\t * Use this to customize the trigger content.\n\t */\n\tchildren?: _Select.Value.Props[ 'children' ];\n};\n\nexport type SelectPopupProps = ComponentProps< typeof _Select.Popup > & {\n\t/**\n\t * The content to be rendered inside the popup.\n\t */\n\tchildren?: React.ReactNode;\n\t/**\n\t * Optional portal element, typically `<Select.Portal />` with custom\n\t * `container`. When omitted, `Select.Popup` uses `Select.Portal` with\n\t * default props. Do not pass `children` on the portal element; they would\n\t * be ignored.\n\t */\n\tportal?: ReactElement< Omit< PortalProps, 'children' > >;\n};\n\nexport type SelectItemProps = Omit<\n\tComponentProps< typeof _Select.Item >,\n\t'value'\n> & {\n\t/**\n\t * A unique value that identifies this select item.\n\t */\n\tvalue?: string;\n\t/**\n\t * The size of the item.\n\t *\n\t * @default 'default'\n\t */\n\tsize?: InputLayoutProps[ 'size' ];\n\t/**\n\t * The content of the item.\n\t *\n\t * @default `value`\n\t */\n\tchildren?: _Select.Item.Props[ 'children' ];\n};\n"],
4
+ "sourcesContent": ["import type { Select as _Select } from '@base-ui/react/select';\nimport type { ComponentPropsWithoutRef, ReactElement } from 'react';\n\nimport type { ComponentProps } from '../../../utils/types';\nimport type { InputLayoutProps } from '../input-layout/types';\n\nexport type PortalProps = ComponentPropsWithoutRef< typeof _Select.Portal >;\n\n// The second type parameter is the `multiple` flag (currently disabled).\nexport type SelectRootProps< Value = unknown > = Omit<\n\t_Select.Root.Props< Value, false >,\n\t'multiple'\n>;\n\nexport type SelectTriggerProps = ComponentProps< typeof _Select.Trigger > & {\n\t/**\n\t * The size of the trigger.\n\t *\n\t * @default 'default'\n\t */\n\tsize?: InputLayoutProps[ 'size' ];\n\t/**\n\t * The style variant of the trigger.\n\t *\n\t * @default 'default'\n\t */\n\tvariant?: 'default' | 'minimal';\n\t/**\n\t * Text to show when no value is selected.\n\t * This is overridden by `children` if specified, or by a null item's label in `items`.\n\t *\n\t * @default __( 'Select' )\n\t */\n\tplaceholder?: _Select.Value.Props[ 'placeholder' ];\n\t/**\n\t * A function that gets called with the current value as an argument.\n\t * Use this to customize the trigger content.\n\t *\n\t * When no value is selected, the rendered content inherits the\n\t * placeholder text color.\n\t */\n\tchildren?: _Select.Value.Props[ 'children' ];\n};\n\nexport type SelectPopupProps = ComponentProps< typeof _Select.Popup > & {\n\t/**\n\t * The content to be rendered inside the popup.\n\t */\n\tchildren?: React.ReactNode;\n\t/**\n\t * Optional portal element, typically `<Select.Portal />` with custom\n\t * `container`. When omitted, `Select.Popup` uses `Select.Portal` with\n\t * default props. Do not pass `children` on the portal element; they would\n\t * be ignored.\n\t */\n\tportal?: ReactElement< Omit< PortalProps, 'children' > >;\n};\n\nexport type SelectItemProps = Omit<\n\tComponentProps< typeof _Select.Item >,\n\t'value'\n> & {\n\t/**\n\t * A unique value that identifies this select item.\n\t */\n\tvalue?: unknown;\n\t/**\n\t * The size of the item.\n\t *\n\t * @default 'default'\n\t */\n\tsize?: InputLayoutProps[ 'size' ];\n\t/**\n\t * The content of the item.\n\t */\n\tchildren?: _Select.Item.Props[ 'children' ];\n};\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
@@ -37,12 +37,91 @@ var import_react = require("@base-ui/react");
37
37
  var import_clsx = __toESM(require("clsx"));
38
38
  var import_element = require("@wordpress/element");
39
39
 
40
+ // packages/style-runtime/src/index.ts
41
+ var STYLE_HASH_ATTRIBUTE = "data-wp-hash";
42
+ function getRuntime() {
43
+ const globalScope = globalThis;
44
+ if (globalScope.__wpStyleRuntime) {
45
+ return globalScope.__wpStyleRuntime;
46
+ }
47
+ globalScope.__wpStyleRuntime = {
48
+ documents: /* @__PURE__ */ new Map(),
49
+ styles: /* @__PURE__ */ new Map(),
50
+ injectedStyles: /* @__PURE__ */ new WeakMap()
51
+ };
52
+ if (typeof document !== "undefined") {
53
+ registerDocument(document);
54
+ }
55
+ return globalScope.__wpStyleRuntime;
56
+ }
57
+ function documentContainsStyleHash(targetDocument, hash) {
58
+ if (!targetDocument.head) {
59
+ return false;
60
+ }
61
+ for (const style of targetDocument.head.querySelectorAll(
62
+ `style[${STYLE_HASH_ATTRIBUTE}]`
63
+ )) {
64
+ if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {
65
+ return true;
66
+ }
67
+ }
68
+ return false;
69
+ }
70
+ function injectStyle(targetDocument, hash, css) {
71
+ if (!targetDocument.head) {
72
+ return;
73
+ }
74
+ const runtime = getRuntime();
75
+ let injectedStyles = runtime.injectedStyles.get(targetDocument);
76
+ if (!injectedStyles) {
77
+ injectedStyles = /* @__PURE__ */ new Set();
78
+ runtime.injectedStyles.set(targetDocument, injectedStyles);
79
+ }
80
+ if (injectedStyles.has(hash)) {
81
+ return;
82
+ }
83
+ if (documentContainsStyleHash(targetDocument, hash)) {
84
+ injectedStyles.add(hash);
85
+ return;
86
+ }
87
+ const style = targetDocument.createElement("style");
88
+ style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);
89
+ style.appendChild(targetDocument.createTextNode(css));
90
+ targetDocument.head.appendChild(style);
91
+ injectedStyles.add(hash);
92
+ }
93
+ function registerDocument(targetDocument) {
94
+ const runtime = getRuntime();
95
+ runtime.documents.set(
96
+ targetDocument,
97
+ (runtime.documents.get(targetDocument) ?? 0) + 1
98
+ );
99
+ for (const [hash, css] of runtime.styles) {
100
+ injectStyle(targetDocument, hash, css);
101
+ }
102
+ return () => {
103
+ const count = runtime.documents.get(targetDocument);
104
+ if (count === void 0) {
105
+ return;
106
+ }
107
+ if (count <= 1) {
108
+ runtime.documents.delete(targetDocument);
109
+ return;
110
+ }
111
+ runtime.documents.set(targetDocument, count - 1);
112
+ };
113
+ }
114
+ function registerStyle(hash, css) {
115
+ const runtime = getRuntime();
116
+ runtime.styles.set(hash, css);
117
+ for (const targetDocument of runtime.documents.keys()) {
118
+ injectStyle(targetDocument, hash, css);
119
+ }
120
+ }
121
+
40
122
  // packages/ui/src/form/primitives/textarea/style.module.css
41
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='1485e116be']")) {
42
- const style = document.createElement("style");
43
- style.setAttribute("data-wp-hash", "1485e116be");
44
- style.appendChild(document.createTextNode("@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._1e441c22c9dc5d28__wrapper{--wp-ui-textarea-min-height:40px}._414844876c32ecee__textarea{min-height:calc(var(--wp-ui-textarea-min-height) - 2px);resize:block}}@layer wp-ui-compositions{._1e441c22c9dc5d28__wrapper{--wp-ui-input-padding-block:9.9px;height:auto;line-height:1.4}}"));
45
- document.head.appendChild(style);
123
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
124
+ registerStyle("1485e116be", "@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._1e441c22c9dc5d28__wrapper{--wp-ui-textarea-min-height:40px}._414844876c32ecee__textarea{min-height:calc(var(--wp-ui-textarea-min-height) - 2px);resize:block}}@layer wp-ui-compositions{._1e441c22c9dc5d28__wrapper{--wp-ui-input-padding-block:9.9px;height:auto;line-height:1.4}}");
46
125
  }
47
126
  var style_default = { "wrapper": "_1e441c22c9dc5d28__wrapper", "textarea": "_414844876c32ecee__textarea" };
48
127
 
@@ -50,11 +129,8 @@ var style_default = { "wrapper": "_1e441c22c9dc5d28__wrapper", "textarea": "_414
50
129
  var import_input = require("../input/index.cjs");
51
130
 
52
131
  // packages/ui/src/utils/css/global-css-defense.module.css
53
- if (typeof document !== "undefined" && process.env.NODE_ENV !== "test" && !document.head.querySelector("style[data-wp-hash='1fb29d3a3c']")) {
54
- const style = document.createElement("style");
55
- style.setAttribute("data-wp-hash", "1fb29d3a3c");
56
- 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)}"));
57
- document.head.appendChild(style);
132
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
133
+ 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)}");
58
134
  }
59
135
  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" };
60
136
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/form/primitives/textarea/textarea.tsx", "../../../../src/form/primitives/textarea/style.module.css", "../../../../src/utils/css/global-css-defense.module.css"],
4
- "sourcesContent": ["import { mergeProps } from '@base-ui/react';\nimport clsx from 'clsx';\nimport { cloneElement, forwardRef } from '@wordpress/element';\nimport styles from './style.module.css';\nimport type { TextareaProps } from './types';\nimport { Input } from '../input';\nimport defenseStyles from '../../../utils/css/global-css-defense.module.css';\n\nconst wrappedRender = (\n\trender: NonNullable< TextareaProps[ 'render' ] >,\n\trestProps: TextareaProps & { ref: React.Ref< HTMLTextAreaElement > }\n) => {\n\treturn function textareaRender(\n\t\tprops: React.HTMLAttributes< HTMLTextAreaElement >\n\t) {\n\t\treturn typeof render === 'function'\n\t\t\t? render( mergeProps( props, restProps ) )\n\t\t\t: cloneElement( render, mergeProps( props, restProps ) );\n\t};\n};\n\nexport const Textarea = forwardRef< HTMLTextAreaElement, TextareaProps >(\n\tfunction Textarea(\n\t\t{\n\t\t\tclassName,\n\t\t\tdefaultValue,\n\t\t\tdisabled,\n\t\t\tonValueChange,\n\t\t\trender,\n\t\t\trows = 4,\n\t\t\tstyle,\n\t\t\tvalue,\n\t\t\t...restProps\n\t\t},\n\t\tref\n\t) {\n\t\treturn (\n\t\t\t<Input\n\t\t\t\tclassName={ clsx( styles.wrapper, className ) }\n\t\t\t\tstyle={ style }\n\t\t\t\trender={ wrappedRender(\n\t\t\t\t\trender || ( ( props ) => <textarea { ...props } /> ),\n\t\t\t\t\t{\n\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\tdefenseStyles.textarea,\n\t\t\t\t\t\t\tstyles.textarea\n\t\t\t\t\t\t),\n\t\t\t\t\t\tref,\n\t\t\t\t\t\trows,\n\t\t\t\t\t\t...restProps,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\tvalue={ value }\n\t\t\t\tdefaultValue={ defaultValue }\n\t\t\t\tonValueChange={ onValueChange }\n\t\t\t\tdisabled={ disabled }\n\t\t\t/>\n\t\t);\n\t}\n);\n", "if (typeof document !== 'undefined' && process.env.NODE_ENV !== 'test' && !document.head.querySelector(\"style[data-wp-hash='1485e116be']\")) {\n\tconst style = document.createElement(\"style\");\n\tstyle.setAttribute(\"data-wp-hash\", \"1485e116be\");\n\tstyle.appendChild(document.createTextNode(\"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._1e441c22c9dc5d28__wrapper{--wp-ui-textarea-min-height:40px}._414844876c32ecee__textarea{min-height:calc(var(--wp-ui-textarea-min-height) - 2px);resize:block}}@layer wp-ui-compositions{._1e441c22c9dc5d28__wrapper{--wp-ui-input-padding-block:9.9px;height:auto;line-height:1.4}}\"));\n\tdocument.head.appendChild(style);\n}\nexport default {\"wrapper\":\"_1e441c22c9dc5d28__wrapper\",\"textarea\":\"_414844876c32ecee__textarea\"};\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;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2B;AAC3B,kBAAiB;AACjB,qBAAyC;;;ACFzC,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,6XAA6X,CAAC;AACxa,WAAS,KAAK,YAAY,KAAK;AAChC;AACA,IAAO,gBAAQ,EAAC,WAAU,8BAA6B,YAAW,8BAA6B;;;ADD/F,mBAAsB;;;AELtB,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;;;AFmC5N;AAjC9B,IAAM,gBAAgB,CACrB,QACA,cACI;AACJ,SAAO,SAAS,eACf,OACC;AACD,WAAO,OAAO,WAAW,aACtB,WAAQ,yBAAY,OAAO,SAAU,CAAE,QACvC,6BAAc,YAAQ,yBAAY,OAAO,SAAU,CAAE;AAAA,EACzD;AACD;AAEO,IAAM,eAAW;AAAA,EACvB,SAASA,UACR;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACJ,GACA,KACC;AACD,WACC;AAAA,MAAC;AAAA;AAAA,QACA,eAAY,YAAAC,SAAM,cAAO,SAAS,SAAU;AAAA,QAC5C;AAAA,QACA,QAAS;AAAA,UACR,WAAY,CAAE,UAAW,4CAAC,cAAW,GAAG,OAAQ;AAAA,UAChD;AAAA,YACC,eAAW,YAAAA;AAAA,cACV,2BAAc;AAAA,cACd,cAAO;AAAA,YACR;AAAA,YACA;AAAA,YACA;AAAA,YACA,GAAG;AAAA,UACJ;AAAA,QACD;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACD;AAAA,EAEF;AACD;",
3
+ "sources": ["../../../../src/form/primitives/textarea/textarea.tsx", "../../../../../style-runtime/src/index.ts", "../../../../src/form/primitives/textarea/style.module.css", "../../../../src/utils/css/global-css-defense.module.css"],
4
+ "sourcesContent": ["import { mergeProps } from '@base-ui/react';\nimport clsx from 'clsx';\nimport { cloneElement, forwardRef } from '@wordpress/element';\nimport styles from './style.module.css';\nimport type { TextareaProps } from './types';\nimport { Input } from '../input';\nimport defenseStyles from '../../../utils/css/global-css-defense.module.css';\n\nconst wrappedRender = (\n\trender: NonNullable< TextareaProps[ 'render' ] >,\n\trestProps: TextareaProps & { ref: React.Ref< HTMLTextAreaElement > }\n) => {\n\treturn function textareaRender(\n\t\tprops: React.HTMLAttributes< HTMLTextAreaElement >\n\t) {\n\t\treturn typeof render === 'function'\n\t\t\t? render( mergeProps( props, restProps ) )\n\t\t\t: cloneElement( render, mergeProps( props, restProps ) );\n\t};\n};\n\nexport const Textarea = forwardRef< HTMLTextAreaElement, TextareaProps >(\n\tfunction Textarea(\n\t\t{\n\t\t\tclassName,\n\t\t\tdefaultValue,\n\t\t\tdisabled,\n\t\t\tonValueChange,\n\t\t\trender,\n\t\t\trows = 4,\n\t\t\tstyle,\n\t\t\tvalue,\n\t\t\t...restProps\n\t\t},\n\t\tref\n\t) {\n\t\treturn (\n\t\t\t<Input\n\t\t\t\tclassName={ clsx( styles.wrapper, className ) }\n\t\t\t\tstyle={ style }\n\t\t\t\trender={ wrappedRender(\n\t\t\t\t\trender || ( ( props ) => <textarea { ...props } /> ),\n\t\t\t\t\t{\n\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\tdefenseStyles.textarea,\n\t\t\t\t\t\t\tstyles.textarea\n\t\t\t\t\t\t),\n\t\t\t\t\t\tref,\n\t\t\t\t\t\trows,\n\t\t\t\t\t\t...restProps,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\tvalue={ value }\n\t\t\t\tdefaultValue={ defaultValue }\n\t\t\t\tonValueChange={ onValueChange }\n\t\t\t\tdisabled={ disabled }\n\t\t\t/>\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(\"1485e116be\", \"@layer wp-ui-utilities, wp-ui-components, wp-ui-compositions, wp-ui-overrides;@layer wp-ui-components{._1e441c22c9dc5d28__wrapper{--wp-ui-textarea-min-height:40px}._414844876c32ecee__textarea{min-height:calc(var(--wp-ui-textarea-min-height) - 2px);resize:block}}@layer wp-ui-compositions{._1e441c22c9dc5d28__wrapper{--wp-ui-input-padding-block:9.9px;height:auto;line-height:1.4}}\");\n}\nexport default {\"wrapper\":\"_1e441c22c9dc5d28__wrapper\",\"textarea\":\"_414844876c32ecee__textarea\"};\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": "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",
6
6
  "names": ["Textarea", "clsx"]
7
7
  }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/ui/src/form/select-control/context.tsx
21
+ var context_exports = {};
22
+ __export(context_exports, {
23
+ SelectControlSizeContext: () => SelectControlSizeContext,
24
+ useSelectControlSizeContext: () => useSelectControlSizeContext
25
+ });
26
+ module.exports = __toCommonJS(context_exports);
27
+ var import_element = require("@wordpress/element");
28
+ var SelectControlSizeContext = (0, import_element.createContext)(void 0);
29
+ var useSelectControlSizeContext = () => {
30
+ return (0, import_element.useContext)(SelectControlSizeContext);
31
+ };
32
+ // Annotate the CommonJS export names for ESM import in node:
33
+ 0 && (module.exports = {
34
+ SelectControlSizeContext,
35
+ useSelectControlSizeContext
36
+ });
37
+ //# sourceMappingURL=context.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/form/select-control/context.tsx"],
4
+ "sourcesContent": ["import { createContext, useContext } from '@wordpress/element';\nimport type { SelectTriggerProps } from '../primitives/select/types';\n\nexport const SelectControlSizeContext =\n\tcreateContext< SelectTriggerProps[ 'size' ] >( undefined );\n\nexport const useSelectControlSizeContext = () => {\n\treturn useContext( SelectControlSizeContext );\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA0C;AAGnC,IAAM,+BACZ,8BAA+C,MAAU;AAEnD,IAAM,8BAA8B,MAAM;AAChD,aAAO,2BAAY,wBAAyB;AAC7C;",
6
+ "names": []
7
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/ui/src/form/select-control/index.ts
21
+ var select_control_exports = {};
22
+ __export(select_control_exports, {
23
+ SelectControl: () => SelectControl
24
+ });
25
+ module.exports = __toCommonJS(select_control_exports);
26
+ var import_select_control = require("./select-control.cjs");
27
+ var import_item = require("./item.cjs");
28
+ import_item.Item.displayName = "SelectControl.Item";
29
+ var SelectControl = Object.assign(import_select_control.SelectControl, {
30
+ /**
31
+ * An item rendered inside a `SelectControl` popup.
32
+ */
33
+ Item: import_item.Item
34
+ });
35
+ // Annotate the CommonJS export names for ESM import in node:
36
+ 0 && (module.exports = {
37
+ SelectControl
38
+ });
39
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/form/select-control/index.ts"],
4
+ "sourcesContent": ["import { SelectControl as _SelectControl } from './select-control';\nimport { Item } from './item';\n\nItem.displayName = 'SelectControl.Item';\n\n/**\n * A complete select field with integrated label and description.\n */\nexport const SelectControl = Object.assign( _SelectControl, {\n\t/**\n\t * An item rendered inside a `SelectControl` popup.\n\t */\n\tItem,\n} );\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAAgD;AAChD,kBAAqB;AAErB,iBAAK,cAAc;AAKZ,IAAM,gBAAgB,OAAO,OAAQ,sBAAAA,eAAgB;AAAA;AAAA;AAAA;AAAA,EAI3D;AACD,CAAE;",
6
+ "names": ["_SelectControl"]
7
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/ui/src/form/select-control/item.tsx
21
+ var item_exports = {};
22
+ __export(item_exports, {
23
+ Item: () => Item
24
+ });
25
+ module.exports = __toCommonJS(item_exports);
26
+ var import_element = require("@wordpress/element");
27
+ var import_primitives = require("../primitives/index.cjs");
28
+ var import_context = require("./context.cjs");
29
+ var import_jsx_runtime = require("react/jsx-runtime");
30
+ var Item = (0, import_element.forwardRef)(
31
+ function Item2({ size: sizeProp, ...restProps }, ref) {
32
+ const contextSize = (0, import_context.useSelectControlSizeContext)();
33
+ const size = sizeProp ?? contextSize;
34
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_primitives.Select.Item, { size, ref, ...restProps });
35
+ }
36
+ );
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ Item
40
+ });
41
+ //# sourceMappingURL=item.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/form/select-control/item.tsx"],
4
+ "sourcesContent": ["import { forwardRef } from '@wordpress/element';\nimport { Select } from '../primitives';\nimport { useSelectControlSizeContext } from './context';\nimport type { SelectItemProps } from '../primitives/select/types';\n\nexport const Item = forwardRef< HTMLDivElement, SelectItemProps >(\n\tfunction Item( { size: sizeProp, ...restProps }, ref ) {\n\t\tconst contextSize = useSelectControlSizeContext();\n\t\tconst size = sizeProp ?? contextSize;\n\n\t\treturn <Select.Item size={ size } ref={ ref } { ...restProps } />;\n\t}\n);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA2B;AAC3B,wBAAuB;AACvB,qBAA4C;AAQnC;AALF,IAAM,WAAO;AAAA,EACnB,SAASA,MAAM,EAAE,MAAM,UAAU,GAAG,UAAU,GAAG,KAAM;AACtD,UAAM,kBAAc,4CAA4B;AAChD,UAAM,OAAO,YAAY;AAEzB,WAAO,4CAAC,yBAAO,MAAP,EAAY,MAAc,KAAc,GAAG,WAAY;AAAA,EAChE;AACD;",
6
+ "names": ["Item"]
7
+ }
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/ui/src/form/select-control/select-control.tsx
21
+ var select_control_exports = {};
22
+ __export(select_control_exports, {
23
+ SelectControl: () => SelectControl
24
+ });
25
+ module.exports = __toCommonJS(select_control_exports);
26
+ var import_element = require("@wordpress/element");
27
+ var import_primitives = require("../primitives/index.cjs");
28
+ var import_context = require("./context.cjs");
29
+ var import_item = require("./item.cjs");
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var SelectControl = (0, import_element.forwardRef)(function SelectControl2({
32
+ className,
33
+ children,
34
+ items,
35
+ label,
36
+ description,
37
+ details,
38
+ hideLabelFromVision,
39
+ placeholder,
40
+ size = "default",
41
+ triggerContent,
42
+ ...restProps
43
+ }, ref) {
44
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_primitives.Field.Root, { className, children: [
45
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_primitives.Field.Label, { hideFromVision: hideLabelFromVision, children: label }),
46
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_primitives.Select.Root, { items, ...restProps, children: [
47
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
48
+ import_primitives.Select.Trigger,
49
+ {
50
+ ref,
51
+ placeholder,
52
+ size,
53
+ children: triggerContent
54
+ }
55
+ ),
56
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_primitives.Select.Popup, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_context.SelectControlSizeContext.Provider, { value: size, children: children !== void 0 ? children : items?.map((item) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
57
+ import_item.Item,
58
+ {
59
+ value: item,
60
+ label: item.label,
61
+ disabled: item.disabled,
62
+ children: item.label
63
+ },
64
+ item.value ?? "null"
65
+ )) }) })
66
+ ] }),
67
+ description && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_primitives.Field.Description, { children: description }),
68
+ details && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_primitives.Field.Details, { children: details })
69
+ ] });
70
+ });
71
+ // Annotate the CommonJS export names for ESM import in node:
72
+ 0 && (module.exports = {
73
+ SelectControl
74
+ });
75
+ //# sourceMappingURL=select-control.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/form/select-control/select-control.tsx"],
4
+ "sourcesContent": ["import { forwardRef } from '@wordpress/element';\nimport { Field, Select } from '../primitives';\nimport { SelectControlSizeContext } from './context';\nimport { Item } from './item';\nimport type { SelectControlProps } from './types';\n\n/**\n * A complete select field with integrated label and description.\n */\nexport const SelectControl = forwardRef<\n\tHTMLButtonElement,\n\tSelectControlProps\n>( function SelectControl(\n\t{\n\t\tclassName,\n\t\tchildren,\n\t\titems,\n\t\tlabel,\n\t\tdescription,\n\t\tdetails,\n\t\thideLabelFromVision,\n\t\tplaceholder,\n\t\tsize = 'default',\n\t\ttriggerContent,\n\t\t...restProps\n\t},\n\tref\n) {\n\treturn (\n\t\t<Field.Root className={ className }>\n\t\t\t<Field.Label hideFromVision={ hideLabelFromVision }>\n\t\t\t\t{ label }\n\t\t\t</Field.Label>\n\t\t\t<Select.Root items={ items } { ...restProps }>\n\t\t\t\t<Select.Trigger\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tsize={ size }\n\t\t\t\t>\n\t\t\t\t\t{ triggerContent }\n\t\t\t\t</Select.Trigger>\n\t\t\t\t<Select.Popup>\n\t\t\t\t\t<SelectControlSizeContext.Provider value={ size }>\n\t\t\t\t\t\t{ children !== undefined\n\t\t\t\t\t\t\t? children\n\t\t\t\t\t\t\t: items?.map( ( item ) => (\n\t\t\t\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\t\t\t\tkey={ item.value ?? 'null' }\n\t\t\t\t\t\t\t\t\t\tvalue={ item }\n\t\t\t\t\t\t\t\t\t\tlabel={ item.label }\n\t\t\t\t\t\t\t\t\t\tdisabled={ item.disabled }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t ) ) }\n\t\t\t\t\t</SelectControlSizeContext.Provider>\n\t\t\t\t</Select.Popup>\n\t\t\t</Select.Root>\n\t\t\t{ description && (\n\t\t\t\t<Field.Description>{ description }</Field.Description>\n\t\t\t) }\n\t\t\t{ details && <Field.Details>{ details }</Field.Details> }\n\t\t</Field.Root>\n\t);\n} );\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA2B;AAC3B,wBAA8B;AAC9B,qBAAyC;AACzC,kBAAqB;AA2BlB;AArBI,IAAM,oBAAgB,2BAG1B,SAASA,eACX;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,GAAG;AACJ,GACA,KACC;AACD,SACC,6CAAC,wBAAM,MAAN,EAAW,WACX;AAAA,gDAAC,wBAAM,OAAN,EAAY,gBAAiB,qBAC3B,iBACH;AAAA,IACA,6CAAC,yBAAO,MAAP,EAAY,OAAkB,GAAG,WACjC;AAAA;AAAA,QAAC,yBAAO;AAAA,QAAP;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UAEE;AAAA;AAAA,MACH;AAAA,MACA,4CAAC,yBAAO,OAAP,EACA,sDAAC,wCAAyB,UAAzB,EAAkC,OAAQ,MACxC,uBAAa,SACZ,WACA,OAAO,IAAK,CAAE,SACd;AAAA,QAAC;AAAA;AAAA,UAEA,OAAQ;AAAA,UACR,OAAQ,KAAK;AAAA,UACb,UAAW,KAAK;AAAA,UAEd,eAAK;AAAA;AAAA,QALD,KAAK,SAAS;AAAA,MAMrB,CACE,GACN,GACD;AAAA,OACD;AAAA,IACE,eACD,4CAAC,wBAAM,aAAN,EAAoB,uBAAa;AAAA,IAEjC,WAAW,4CAAC,wBAAM,SAAN,EAAgB,mBAAS;AAAA,KACxC;AAEF,CAAE;",
6
+ "names": ["SelectControl"]
7
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // packages/ui/src/form/select-control/types.ts
17
+ var types_exports = {};
18
+ module.exports = __toCommonJS(types_exports);
19
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/form/select-control/types.ts"],
4
+ "sourcesContent": ["import type React from 'react';\nimport type { ControlProps } from '../types';\nimport type {\n\tSelectRootProps,\n\tSelectTriggerProps,\n} from '../primitives/select/types';\n\nexport type SelectItem = {\n\tlabel: string;\n\tvalue: string | null;\n\tdisabled?: boolean;\n};\n\nexport type SelectControlProps = Omit<\n\tSelectRootProps< SelectItem >,\n\t'items' | 'inputRef'\n> &\n\tControlProps & {\n\t\t/**\n\t\t * CSS class to apply.\n\t\t */\n\t\tclassName?: string;\n\t\t/**\n\t\t * The array of option items to render in the select.\n\t\t */\n\t\titems?: SelectItem[];\n\t\t/**\n\t\t * Text to show when no value is selected. This is overridden by `triggerContent`\n\t\t * if specified, or by a null item's label in `items`.\n\t\t *\n\t\t * @default __( 'Select' )\n\t\t */\n\t\tplaceholder?: SelectTriggerProps[ 'placeholder' ];\n\t\t/**\n\t\t * The custom trigger content to use instead of the default.\n\t\t *\n\t\t * ```jsx\n\t\t * triggerContent={ ( item ) => item.label }\n\t\t * ```\n\t\t */\n\t\ttriggerContent?:\n\t\t\t| ( ( item: SelectItem ) => React.ReactNode )\n\t\t\t| React.ReactNode;\n\t\t/**\n\t\t * The size of the control.\n\t\t *\n\t\t * @default 'default'\n\t\t */\n\t\tsize?: Exclude< SelectTriggerProps[ 'size' ], 'small' >;\n\t};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;",
6
+ "names": []
7
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/form/types.ts"],
4
- "sourcesContent": ["import type { Field } from './primitives';\n\nexport type ControlProps = {\n\t/**\n\t * The accessible label. All controls must be labeled.\n\t */\n\tlabel: React.ComponentProps< typeof Field.Label >[ 'children' ];\n\t/**\n\t * The accessible description, associated using `aria-describedby`.\n\t *\n\t * For screen reader accessibility, this should only contain plain text,\n\t * and no semantics such as links.\n\t */\n\tdescription?: React.ComponentProps<\n\t\ttypeof Field.Description\n\t>[ 'children' ];\n\t/**\n\t * Additional information about the field, which unlike a normal description,\n\t * can include links and other semantic elements.\n\t *\n\t * Do not use this prop when the content is only plain text;\n\t * use `description` instead.\n\t */\n\tdetails?: React.ComponentProps< typeof Field.Details >[ 'children' ];\n\t/**\n\t * Whether to visually hide the label while keeping it accessible\n\t * to screen readers.\n\t *\n\t * @default false\n\t */\n\thideLabelFromVision?: React.ComponentProps<\n\t\ttypeof Field.Label\n\t>[ 'hideFromVision' ];\n};\n"],
4
+ "sourcesContent": ["import type { Field } from './primitives';\n\nexport type ControlProps = {\n\t/**\n\t * The accessible label. All controls must be labeled.\n\t */\n\tlabel: string;\n\t/**\n\t * The accessible description, associated using `aria-describedby`.\n\t *\n\t * For screen reader accessibility, this should only contain plain text,\n\t * and no semantics such as links.\n\t */\n\tdescription?: React.ComponentProps<\n\t\ttypeof Field.Description\n\t>[ 'children' ];\n\t/**\n\t * Additional information about the field, which unlike a normal description,\n\t * can include links and other semantic elements.\n\t *\n\t * Do not use this prop when the content is only plain text;\n\t * use `description` instead.\n\t */\n\tdetails?: React.ComponentProps< typeof Field.Details >[ 'children' ];\n\t/**\n\t * Whether to visually hide the label while keeping it accessible\n\t * to screen readers.\n\t *\n\t * @default false\n\t */\n\thideLabelFromVision?: React.ComponentProps<\n\t\ttypeof Field.Label\n\t>[ 'hideFromVision' ];\n};\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;",
6
6
  "names": []
7
7
  }