@wordpress/components 25.15.1-next.79a6196f.0 → 26.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1422) hide show
  1. package/.stylelintrc.js +23 -0
  2. package/CHANGELOG.md +74 -2
  3. package/build/alignment-matrix-control/icon.js +1 -2
  4. package/build/alignment-matrix-control/icon.js.map +1 -1
  5. package/build/alignment-matrix-control/index.js +1 -2
  6. package/build/alignment-matrix-control/index.js.map +1 -1
  7. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +4 -8
  8. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
  9. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +4 -8
  10. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  11. package/build/alignment-matrix-control/utils.js +3 -6
  12. package/build/alignment-matrix-control/utils.js.map +1 -1
  13. package/build/angle-picker-control/angle-circle.js +1 -2
  14. package/build/angle-picker-control/angle-circle.js.map +1 -1
  15. package/build/angle-picker-control/index.js +3 -15
  16. package/build/angle-picker-control/index.js.map +1 -1
  17. package/build/angle-picker-control/styles/angle-picker-control-styles.js +9 -27
  18. package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  19. package/build/angle-picker-control/types.js.map +1 -1
  20. package/build/animate/index.js +1 -2
  21. package/build/animate/index.js.map +1 -1
  22. package/build/autocomplete/autocompleter-ui.native.js +1 -2
  23. package/build/autocomplete/autocompleter-ui.native.js.map +1 -1
  24. package/build/autocomplete/background-view.android.js +1 -2
  25. package/build/autocomplete/background-view.android.js.map +1 -1
  26. package/build/autocomplete/background-view.ios.js +1 -2
  27. package/build/autocomplete/background-view.ios.js.map +1 -1
  28. package/build/base-control/index.js +2 -4
  29. package/build/base-control/index.js.map +1 -1
  30. package/build/base-control/styles/base-control-styles.js +5 -10
  31. package/build/base-control/styles/base-control-styles.js.map +1 -1
  32. package/build/border-box-control/border-box-control/component.js +2 -4
  33. package/build/border-box-control/border-box-control/component.js.map +1 -1
  34. package/build/border-box-control/border-box-control/hook.js +5 -3
  35. package/build/border-box-control/border-box-control/hook.js.map +1 -1
  36. package/build/border-box-control/border-box-control-linked-button/component.js +1 -2
  37. package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -1
  38. package/build/border-box-control/border-box-control-linked-button/hook.js +2 -2
  39. package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
  40. package/build/border-box-control/border-box-control-split-controls/component.js +1 -2
  41. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  42. package/build/border-box-control/border-box-control-split-controls/hook.js +2 -2
  43. package/build/border-box-control/border-box-control-split-controls/hook.js.map +1 -1
  44. package/build/border-box-control/border-box-control-visualizer/component.js +1 -2
  45. package/build/border-box-control/border-box-control-visualizer/component.js.map +1 -1
  46. package/build/border-box-control/border-box-control-visualizer/hook.js +2 -2
  47. package/build/border-box-control/border-box-control-visualizer/hook.js.map +1 -1
  48. package/build/border-box-control/styles.js +3 -6
  49. package/build/border-box-control/styles.js.map +1 -1
  50. package/build/border-box-control/types.js.map +1 -1
  51. package/build/border-control/border-control/component.js +7 -5
  52. package/build/border-control/border-control/component.js.map +1 -1
  53. package/build/border-control/border-control/hook.js +20 -17
  54. package/build/border-control/border-control/hook.js.map +1 -1
  55. package/build/border-control/border-control-dropdown/component.js +3 -3
  56. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  57. package/build/border-control/border-control-dropdown/hook.js +2 -2
  58. package/build/border-control/border-control-dropdown/hook.js.map +1 -1
  59. package/build/border-control/border-control-style-picker/component.js +21 -50
  60. package/build/border-control/border-control-style-picker/component.js.map +1 -1
  61. package/build/border-control/styles.js +16 -35
  62. package/build/border-control/styles.js.map +1 -1
  63. package/build/border-control/types.js.map +1 -1
  64. package/build/box-control/all-input-control.js +35 -29
  65. package/build/box-control/all-input-control.js.map +1 -1
  66. package/build/box-control/axial-input-controls.js +40 -54
  67. package/build/box-control/axial-input-controls.js.map +1 -1
  68. package/build/box-control/index.js +22 -26
  69. package/build/box-control/index.js.map +1 -1
  70. package/build/box-control/input-controls.js +45 -37
  71. package/build/box-control/input-controls.js.map +1 -1
  72. package/build/box-control/styles/box-control-icon-styles.js +6 -12
  73. package/build/box-control/styles/box-control-icon-styles.js.map +1 -1
  74. package/build/box-control/styles/box-control-styles.js +44 -112
  75. package/build/box-control/styles/box-control-styles.js.map +1 -1
  76. package/build/box-control/types.js.map +1 -1
  77. package/build/box-control/utils.js +125 -14
  78. package/build/box-control/utils.js.map +1 -1
  79. package/build/button/deprecated.js +1 -2
  80. package/build/button/deprecated.js.map +1 -1
  81. package/build/button/index.js +16 -20
  82. package/build/button/index.js.map +1 -1
  83. package/build/button/index.native.js +1 -3
  84. package/build/button/index.native.js.map +1 -1
  85. package/build/button/types.js.map +1 -1
  86. package/build/button-group/index.js +2 -4
  87. package/build/button-group/index.js.map +1 -1
  88. package/build/card/card/component.js +4 -6
  89. package/build/card/card/component.js.map +1 -1
  90. package/build/card/card/hook.js +2 -2
  91. package/build/card/card/hook.js.map +1 -1
  92. package/build/card/card-body/component.js +2 -4
  93. package/build/card/card-body/component.js.map +1 -1
  94. package/build/card/card-body/hook.js +2 -2
  95. package/build/card/card-body/hook.js.map +1 -1
  96. package/build/card/card-divider/component.js +2 -4
  97. package/build/card/card-divider/component.js.map +1 -1
  98. package/build/card/card-divider/hook.js +2 -2
  99. package/build/card/card-divider/hook.js.map +1 -1
  100. package/build/card/card-footer/component.js +2 -4
  101. package/build/card/card-footer/component.js.map +1 -1
  102. package/build/card/card-footer/hook.js +2 -2
  103. package/build/card/card-footer/hook.js.map +1 -1
  104. package/build/card/card-header/component.js +2 -4
  105. package/build/card/card-header/component.js.map +1 -1
  106. package/build/card/card-header/hook.js +2 -2
  107. package/build/card/card-header/hook.js.map +1 -1
  108. package/build/card/card-media/component.js +2 -4
  109. package/build/card/card-media/component.js.map +1 -1
  110. package/build/card/card-media/hook.js +2 -2
  111. package/build/card/card-media/hook.js.map +1 -1
  112. package/build/card/context.js +1 -2
  113. package/build/card/context.js.map +1 -1
  114. package/build/card/index.js +2 -2
  115. package/build/card/index.js.map +1 -1
  116. package/build/card/styles.js +14 -28
  117. package/build/card/styles.js.map +1 -1
  118. package/build/checkbox-control/index.js +1 -2
  119. package/build/checkbox-control/index.js.map +1 -1
  120. package/build/checkbox-control/types.js.map +1 -1
  121. package/build/circular-option-picker/circular-option-picker-context.js +1 -2
  122. package/build/circular-option-picker/circular-option-picker-context.js.map +1 -1
  123. package/build/circular-option-picker/circular-option-picker.js +1 -2
  124. package/build/circular-option-picker/circular-option-picker.js.map +1 -1
  125. package/build/circular-option-picker/index.js +1 -2
  126. package/build/circular-option-picker/index.js.map +1 -1
  127. package/build/color-control/index.native.js +1 -2
  128. package/build/color-control/index.native.js.map +1 -1
  129. package/build/color-indicator/index.js +2 -4
  130. package/build/color-indicator/index.js.map +1 -1
  131. package/build/color-indicator/index.native.js +1 -2
  132. package/build/color-indicator/index.native.js.map +1 -1
  133. package/build/color-palette/index.js +2 -4
  134. package/build/color-palette/index.js.map +1 -1
  135. package/build/color-palette/index.native.js +1 -2
  136. package/build/color-palette/index.native.js.map +1 -1
  137. package/build/color-palette/styles.js +1 -2
  138. package/build/color-palette/styles.js.map +1 -1
  139. package/build/color-picker/component.js +2 -4
  140. package/build/color-picker/component.js.map +1 -1
  141. package/build/color-picker/hsl-input.js +55 -33
  142. package/build/color-picker/hsl-input.js.map +1 -1
  143. package/build/color-picker/hsv-color-picker.native.js +1 -2
  144. package/build/color-picker/hsv-color-picker.native.js.map +1 -1
  145. package/build/color-picker/hue-picker.native.js +2 -2
  146. package/build/color-picker/hue-picker.native.js.map +1 -1
  147. package/build/color-picker/saturation-picker.native.js +2 -2
  148. package/build/color-picker/saturation-picker.native.js.map +1 -1
  149. package/build/color-picker/styles.js +8 -16
  150. package/build/color-picker/styles.js.map +1 -1
  151. package/build/combobox-control/index.js +2 -3
  152. package/build/combobox-control/index.js.map +1 -1
  153. package/build/combobox-control/styles.js +1 -2
  154. package/build/combobox-control/styles.js.map +1 -1
  155. package/build/composite/current/index.js +43 -0
  156. package/build/composite/current/index.js.map +1 -0
  157. package/build/composite/index.js +10 -24
  158. package/build/composite/index.js.map +1 -1
  159. package/build/composite/legacy/index.js +127 -0
  160. package/build/composite/legacy/index.js.map +1 -0
  161. package/build/composite/v2.js +10 -36
  162. package/build/composite/v2.js.map +1 -1
  163. package/build/confirm-dialog/component.js +6 -6
  164. package/build/confirm-dialog/component.js.map +1 -1
  165. package/build/confirm-dialog/styles.js +1 -2
  166. package/build/confirm-dialog/styles.js.map +1 -1
  167. package/build/context/constants.js +3 -6
  168. package/build/context/constants.js.map +1 -1
  169. package/build/context/context-system-provider.js +2 -4
  170. package/build/context/context-system-provider.js.map +1 -1
  171. package/build/context/get-styled-class-name-from-key.js +1 -2
  172. package/build/context/get-styled-class-name-from-key.js.map +1 -1
  173. package/build/context/wordpress-component.js.map +1 -1
  174. package/build/custom-gradient-picker/constants.js +5 -10
  175. package/build/custom-gradient-picker/constants.js.map +1 -1
  176. package/build/custom-gradient-picker/gradient-bar/constants.js +7 -14
  177. package/build/custom-gradient-picker/gradient-bar/constants.js.map +1 -1
  178. package/build/custom-gradient-picker/gradient-bar/control-points.js +1 -2
  179. package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
  180. package/build/custom-gradient-picker/index.js +2 -17
  181. package/build/custom-gradient-picker/index.js.map +1 -1
  182. package/build/custom-gradient-picker/index.native.js +1 -2
  183. package/build/custom-gradient-picker/index.native.js.map +1 -1
  184. package/build/custom-gradient-picker/styles/custom-gradient-picker-styles.js +2 -4
  185. package/build/custom-gradient-picker/styles/custom-gradient-picker-styles.js.map +1 -1
  186. package/build/custom-gradient-picker/types.js.map +1 -1
  187. package/build/custom-select-control/index.js +1 -1
  188. package/build/custom-select-control/index.js.map +1 -1
  189. package/build/custom-select-control/styles.js +1 -2
  190. package/build/custom-select-control/styles.js.map +1 -1
  191. package/build/custom-select-control-v2/index.js +9 -7
  192. package/build/custom-select-control-v2/index.js.map +1 -1
  193. package/build/custom-select-control-v2/styles.js +6 -10
  194. package/build/custom-select-control-v2/styles.js.map +1 -1
  195. package/build/dashicon/index.js +1 -2
  196. package/build/dashicon/index.js.map +1 -1
  197. package/build/dashicon/index.native.js +3 -4
  198. package/build/dashicon/index.native.js.map +1 -1
  199. package/build/date-time/constants.js +1 -2
  200. package/build/date-time/constants.js.map +1 -1
  201. package/build/date-time/date/index.js +1 -2
  202. package/build/date-time/date/index.js.map +1 -1
  203. package/build/date-time/date/styles.js +6 -12
  204. package/build/date-time/date/styles.js.map +1 -1
  205. package/build/date-time/date-time/index.js +2 -4
  206. package/build/date-time/date-time/index.js.map +1 -1
  207. package/build/date-time/date-time/styles.js +1 -2
  208. package/build/date-time/date-time/styles.js.map +1 -1
  209. package/build/date-time/index.js +1 -2
  210. package/build/date-time/index.js.map +1 -1
  211. package/build/date-time/time/index.js +1 -2
  212. package/build/date-time/time/index.js.map +1 -1
  213. package/build/date-time/time/styles.js +10 -20
  214. package/build/date-time/time/styles.js.map +1 -1
  215. package/build/date-time/time/timezone.js +2 -3
  216. package/build/date-time/time/timezone.js.map +1 -1
  217. package/build/dimension-control/index.js +3 -4
  218. package/build/dimension-control/index.js.map +1 -1
  219. package/build/dimension-control/sizes.js +1 -2
  220. package/build/dimension-control/sizes.js.map +1 -1
  221. package/build/disabled/index.js +1 -2
  222. package/build/disabled/index.js.map +1 -1
  223. package/build/disabled/index.native.js +1 -2
  224. package/build/disabled/index.native.js.map +1 -1
  225. package/build/disabled/styles/disabled-styles.js +1 -2
  226. package/build/disabled/styles/disabled-styles.js.map +1 -1
  227. package/build/disclosure/index.js +4 -6
  228. package/build/disclosure/index.js.map +1 -1
  229. package/build/divider/component.js +4 -6
  230. package/build/divider/component.js.map +1 -1
  231. package/build/divider/styles.js +1 -2
  232. package/build/divider/styles.js.map +1 -1
  233. package/build/draggable/index.js +1 -2
  234. package/build/draggable/index.js.map +1 -1
  235. package/build/draggable/index.native.js +3 -4
  236. package/build/draggable/index.native.js.map +1 -1
  237. package/build/drop-zone/index.js +1 -2
  238. package/build/drop-zone/index.js.map +1 -1
  239. package/build/dropdown/dropdown-content-wrapper.js +2 -4
  240. package/build/dropdown/dropdown-content-wrapper.js.map +1 -1
  241. package/build/dropdown/index.js +2 -4
  242. package/build/dropdown/index.js.map +1 -1
  243. package/build/dropdown/index.native.js +1 -2
  244. package/build/dropdown/index.native.js.map +1 -1
  245. package/build/dropdown/styles.js +1 -2
  246. package/build/dropdown/styles.js.map +1 -1
  247. package/build/dropdown-menu/index.js +2 -4
  248. package/build/dropdown-menu/index.js.map +1 -1
  249. package/build/dropdown-menu/index.native.js +1 -2
  250. package/build/dropdown-menu/index.native.js.map +1 -1
  251. package/build/dropdown-menu-v2/index.js +11 -20
  252. package/build/dropdown-menu-v2/index.js.map +1 -1
  253. package/build/dropdown-menu-v2/styles.js +29 -42
  254. package/build/dropdown-menu-v2/styles.js.map +1 -1
  255. package/build/duotone-picker/color-list-picker/index.js +1 -2
  256. package/build/duotone-picker/color-list-picker/index.js.map +1 -1
  257. package/build/duotone-picker/duotone-picker.js +1 -2
  258. package/build/duotone-picker/duotone-picker.js.map +1 -1
  259. package/build/duotone-picker/duotone-swatch.js +1 -2
  260. package/build/duotone-picker/duotone-swatch.js.map +1 -1
  261. package/build/elevation/component.js +2 -4
  262. package/build/elevation/component.js.map +1 -1
  263. package/build/elevation/hook.js +2 -2
  264. package/build/elevation/hook.js.map +1 -1
  265. package/build/elevation/styles.js +1 -2
  266. package/build/elevation/styles.js.map +1 -1
  267. package/build/external-link/index.js +3 -5
  268. package/build/external-link/index.js.map +1 -1
  269. package/build/external-link/index.native.js +1 -2
  270. package/build/external-link/index.native.js.map +1 -1
  271. package/build/external-link/styles/external-link-styles.js +1 -2
  272. package/build/external-link/styles/external-link-styles.js.map +1 -1
  273. package/build/flex/context.js +1 -2
  274. package/build/flex/context.js.map +1 -1
  275. package/build/flex/flex/component.js +2 -4
  276. package/build/flex/flex/component.js.map +1 -1
  277. package/build/flex/flex/hook.js +2 -2
  278. package/build/flex/flex/hook.js.map +1 -1
  279. package/build/flex/flex-block/component.js +2 -4
  280. package/build/flex/flex-block/component.js.map +1 -1
  281. package/build/flex/flex-item/component.js +2 -4
  282. package/build/flex/flex-item/component.js.map +1 -1
  283. package/build/flex/flex-item/hook.js +2 -2
  284. package/build/flex/flex-item/hook.js.map +1 -1
  285. package/build/flex/index.js +2 -2
  286. package/build/flex/index.js.map +1 -1
  287. package/build/flex/styles.js +5 -10
  288. package/build/flex/styles.js.map +1 -1
  289. package/build/focal-point-picker/index.js +3 -4
  290. package/build/focal-point-picker/index.js.map +1 -1
  291. package/build/focal-point-picker/index.native.js +1 -3
  292. package/build/focal-point-picker/index.native.js.map +1 -1
  293. package/build/focal-point-picker/styles/focal-point-picker-style.js +37 -54
  294. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  295. package/build/focal-point-picker/styles/focal-point-style.js +12 -4
  296. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  297. package/build/focal-point-picker/tooltip/index.native.js +1 -2
  298. package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
  299. package/build/focal-point-picker/utils.js +1 -2
  300. package/build/focal-point-picker/utils.js.map +1 -1
  301. package/build/font-size-picker/constants.js +2 -4
  302. package/build/font-size-picker/constants.js.map +1 -1
  303. package/build/font-size-picker/font-size-picker-select.js +1 -2
  304. package/build/font-size-picker/font-size-picker-select.js.map +1 -1
  305. package/build/font-size-picker/font-size-picker-toggle-group.js +2 -4
  306. package/build/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  307. package/build/font-size-picker/index.js +6 -22
  308. package/build/font-size-picker/index.js.map +1 -1
  309. package/build/font-size-picker/index.native.js +3 -4
  310. package/build/font-size-picker/index.native.js.map +1 -1
  311. package/build/font-size-picker/styles.js +17 -29
  312. package/build/font-size-picker/styles.js.map +1 -1
  313. package/build/font-size-picker/types.js.map +1 -1
  314. package/build/footer-message-control/index.native.js +1 -2
  315. package/build/footer-message-control/index.native.js.map +1 -1
  316. package/build/form-file-upload/index.js +1 -2
  317. package/build/form-file-upload/index.js.map +1 -1
  318. package/build/form-toggle/index.js +1 -2
  319. package/build/form-toggle/index.js.map +1 -1
  320. package/build/form-token-field/index.js +2 -7
  321. package/build/form-token-field/index.js.map +1 -1
  322. package/build/form-token-field/styles.js +1 -2
  323. package/build/form-token-field/styles.js.map +1 -1
  324. package/build/form-token-field/suggestions-list.js +1 -2
  325. package/build/form-token-field/suggestions-list.js.map +1 -1
  326. package/build/form-token-field/token-input.js +2 -4
  327. package/build/form-token-field/token-input.js.map +1 -1
  328. package/build/gradient-picker/index.js +19 -43
  329. package/build/gradient-picker/index.js.map +1 -1
  330. package/build/gradient-picker/types.js.map +1 -1
  331. package/build/grid/component.js +2 -4
  332. package/build/grid/component.js.map +1 -1
  333. package/build/guide/index.js +1 -2
  334. package/build/guide/index.js.map +1 -1
  335. package/build/h-stack/component.js +2 -4
  336. package/build/h-stack/component.js.map +1 -1
  337. package/build/heading/component.js +2 -4
  338. package/build/heading/component.js.map +1 -1
  339. package/build/higher-order/navigate-regions/index.js +1 -2
  340. package/build/higher-order/navigate-regions/index.js.map +1 -1
  341. package/build/higher-order/with-constrained-tabbing/index.js +1 -2
  342. package/build/higher-order/with-constrained-tabbing/index.js.map +1 -1
  343. package/build/higher-order/with-focus-outside/index.js +1 -2
  344. package/build/higher-order/with-focus-outside/index.js.map +1 -1
  345. package/build/higher-order/with-focus-outside/index.native.js +1 -2
  346. package/build/higher-order/with-focus-outside/index.native.js.map +1 -1
  347. package/build/higher-order/with-focus-return/index.js +1 -2
  348. package/build/higher-order/with-focus-return/index.js.map +1 -1
  349. package/build/higher-order/with-notices/index.js +1 -2
  350. package/build/higher-order/with-notices/index.js.map +1 -1
  351. package/build/higher-order/with-spoken-messages/index.js +1 -2
  352. package/build/higher-order/with-spoken-messages/index.js.map +1 -1
  353. package/build/icon/index.js +1 -2
  354. package/build/icon/index.js.map +1 -1
  355. package/build/index.js +2 -2
  356. package/build/index.js.map +1 -1
  357. package/build/index.native.js +2 -2
  358. package/build/index.native.js.map +1 -1
  359. package/build/input-control/backdrop.js +3 -2
  360. package/build/input-control/backdrop.js.map +1 -1
  361. package/build/input-control/index.js +3 -5
  362. package/build/input-control/index.js.map +1 -1
  363. package/build/input-control/input-base.js +4 -3
  364. package/build/input-control/input-base.js.map +1 -1
  365. package/build/input-control/input-field.js +1 -2
  366. package/build/input-control/input-field.js.map +1 -1
  367. package/build/input-control/input-prefix-wrapper.js +2 -4
  368. package/build/input-control/input-prefix-wrapper.js.map +1 -1
  369. package/build/input-control/input-suffix-wrapper.js +2 -4
  370. package/build/input-control/input-suffix-wrapper.js.map +1 -1
  371. package/build/input-control/reducer/actions.js +11 -22
  372. package/build/input-control/reducer/actions.js.map +1 -1
  373. package/build/input-control/reducer/reducer.js +2 -2
  374. package/build/input-control/reducer/reducer.js.map +1 -1
  375. package/build/input-control/reducer/state.js +1 -2
  376. package/build/input-control/reducer/state.js.map +1 -1
  377. package/build/input-control/styles/input-control-styles.js +32 -37
  378. package/build/input-control/styles/input-control-styles.js.map +1 -1
  379. package/build/input-control/types.js.map +1 -1
  380. package/build/isolated-event-container/index.js +1 -2
  381. package/build/isolated-event-container/index.js.map +1 -1
  382. package/build/item-group/context.js +1 -2
  383. package/build/item-group/context.js.map +1 -1
  384. package/build/item-group/item/component.js +2 -4
  385. package/build/item-group/item/component.js.map +1 -1
  386. package/build/item-group/item/hook.js +2 -2
  387. package/build/item-group/item/hook.js.map +1 -1
  388. package/build/item-group/item-group/component.js +2 -4
  389. package/build/item-group/item-group/component.js.map +1 -1
  390. package/build/item-group/item-group/hook.js +2 -2
  391. package/build/item-group/item-group/hook.js.map +1 -1
  392. package/build/item-group/styles.js +13 -20
  393. package/build/item-group/styles.js.map +1 -1
  394. package/build/keyboard-shortcuts/index.js +1 -2
  395. package/build/keyboard-shortcuts/index.js.map +1 -1
  396. package/build/keyboard-shortcuts/index.native.js +1 -2
  397. package/build/keyboard-shortcuts/index.native.js.map +1 -1
  398. package/build/menu-group/index.js +1 -2
  399. package/build/menu-group/index.js.map +1 -1
  400. package/build/menu-item/index.js +2 -4
  401. package/build/menu-item/index.js.map +1 -1
  402. package/build/menu-items-choice/index.js +1 -2
  403. package/build/menu-items-choice/index.js.map +1 -1
  404. package/build/mobile/audio-player/index.native.js +1 -2
  405. package/build/mobile/audio-player/index.native.js.map +1 -1
  406. package/build/mobile/badge/index.native.js +1 -2
  407. package/build/mobile/badge/index.native.js.map +1 -1
  408. package/build/mobile/bottom-sheet/bottom-sheet-context.native.js +1 -2
  409. package/build/mobile/bottom-sheet/bottom-sheet-context.native.js.map +1 -1
  410. package/build/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js +1 -2
  411. package/build/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js.map +1 -1
  412. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +3 -4
  413. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
  414. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +1 -2
  415. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
  416. package/build/mobile/bottom-sheet/button.native.js +1 -2
  417. package/build/mobile/bottom-sheet/button.native.js.map +1 -1
  418. package/build/mobile/bottom-sheet/cell.native.js +1 -2
  419. package/build/mobile/bottom-sheet/cell.native.js.map +1 -1
  420. package/build/mobile/bottom-sheet/chevron-back.native.js +1 -2
  421. package/build/mobile/bottom-sheet/chevron-back.native.js.map +1 -1
  422. package/build/mobile/bottom-sheet/footer-message-cell.native.js +1 -2
  423. package/build/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
  424. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +1 -2
  425. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
  426. package/build/mobile/bottom-sheet/index.native.js +1 -2
  427. package/build/mobile/bottom-sheet/index.native.js.map +1 -1
  428. package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js +1 -2
  429. package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js.map +1 -1
  430. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js +1 -2
  431. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  432. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js +1 -2
  433. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
  434. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js +1 -2
  435. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
  436. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js +1 -2
  437. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
  438. package/build/mobile/bottom-sheet/nav-bar/heading.native.js +1 -2
  439. package/build/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
  440. package/build/mobile/bottom-sheet/nav-bar/index.native.js +1 -2
  441. package/build/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
  442. package/build/mobile/bottom-sheet/range-cell.native.js +1 -2
  443. package/build/mobile/bottom-sheet/range-cell.native.js.map +1 -1
  444. package/build/mobile/bottom-sheet/range-text-input.native.js +1 -2
  445. package/build/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
  446. package/build/mobile/bottom-sheet/ripple.native.js +1 -2
  447. package/build/mobile/bottom-sheet/ripple.native.js.map +1 -1
  448. package/build/mobile/bottom-sheet/stepper-cell/index.native.js +1 -2
  449. package/build/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
  450. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js +1 -2
  451. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
  452. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js +1 -2
  453. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
  454. package/build/mobile/bottom-sheet/sub-sheet/index.native.js +1 -2
  455. package/build/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
  456. package/build/mobile/bottom-sheet-select-control/index.native.js +1 -2
  457. package/build/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
  458. package/build/mobile/bottom-sheet-text-control/index.native.js +1 -2
  459. package/build/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
  460. package/build/mobile/color-settings/gradient-picker-screen.native.js +1 -2
  461. package/build/mobile/color-settings/gradient-picker-screen.native.js.map +1 -1
  462. package/build/mobile/color-settings/index.native.js +1 -2
  463. package/build/mobile/color-settings/index.native.js.map +1 -1
  464. package/build/mobile/color-settings/palette.screen.native.js +1 -2
  465. package/build/mobile/color-settings/palette.screen.native.js.map +1 -1
  466. package/build/mobile/color-settings/picker-screen.native.js +1 -2
  467. package/build/mobile/color-settings/picker-screen.native.js.map +1 -1
  468. package/build/mobile/color-settings/utils.native.js +1 -2
  469. package/build/mobile/color-settings/utils.native.js.map +1 -1
  470. package/build/mobile/cycle-select-control/index.native.js +1 -2
  471. package/build/mobile/cycle-select-control/index.native.js.map +1 -1
  472. package/build/mobile/dashicons/index.native.js +3 -6
  473. package/build/mobile/dashicons/index.native.js.map +1 -1
  474. package/build/mobile/focal-point-settings-panel/index.native.js +1 -2
  475. package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  476. package/build/mobile/global-styles-context/index.native.js +1 -2
  477. package/build/mobile/global-styles-context/index.native.js.map +1 -1
  478. package/build/mobile/global-styles-context/utils.native.js +1 -2
  479. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  480. package/build/mobile/gradient/index.native.js +1 -2
  481. package/build/mobile/gradient/index.native.js.map +1 -1
  482. package/build/mobile/gridicons/index.native.js +8 -16
  483. package/build/mobile/gridicons/index.native.js.map +1 -1
  484. package/build/mobile/html-text-input/index.native.js +1 -2
  485. package/build/mobile/html-text-input/index.native.js.map +1 -1
  486. package/build/mobile/image/constants.js +1 -2
  487. package/build/mobile/image/constants.js.map +1 -1
  488. package/build/mobile/image/icon-customize.native.js +1 -2
  489. package/build/mobile/image/icon-customize.native.js.map +1 -1
  490. package/build/mobile/image/icon-retry.native.js +1 -2
  491. package/build/mobile/image/icon-retry.native.js.map +1 -1
  492. package/build/mobile/image/image-editing-button.native.js +1 -2
  493. package/build/mobile/image/image-editing-button.native.js.map +1 -1
  494. package/build/mobile/image/index.native.js +81 -7
  495. package/build/mobile/image/index.native.js.map +1 -1
  496. package/build/mobile/keyboard-avoiding-view/index.android.js +2 -4
  497. package/build/mobile/keyboard-avoiding-view/index.android.js.map +1 -1
  498. package/build/mobile/keyboard-avoiding-view/index.ios.js +1 -2
  499. package/build/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
  500. package/build/mobile/keyboard-aware-flat-list/index.android.js +1 -2
  501. package/build/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
  502. package/build/mobile/keyboard-aware-flat-list/index.ios.js +1 -2
  503. package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  504. package/build/mobile/link-picker/link-picker-screen.native.js +1 -2
  505. package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  506. package/build/mobile/link-settings/index.native.js +1 -2
  507. package/build/mobile/link-settings/index.native.js.map +1 -1
  508. package/build/mobile/link-settings/link-rel.native.js +1 -2
  509. package/build/mobile/link-settings/link-rel.native.js.map +1 -1
  510. package/build/mobile/link-settings/link-settings-navigation.native.js +1 -2
  511. package/build/mobile/link-settings/link-settings-navigation.native.js.map +1 -1
  512. package/build/mobile/link-settings/link-settings-screen.native.js +1 -2
  513. package/build/mobile/link-settings/link-settings-screen.native.js.map +1 -1
  514. package/build/mobile/media-edit/index.native.js +3 -6
  515. package/build/mobile/media-edit/index.native.js.map +1 -1
  516. package/build/mobile/picker/index.ios.js +1 -2
  517. package/build/mobile/picker/index.ios.js.map +1 -1
  518. package/build/mobile/segmented-control/index.native.js +1 -2
  519. package/build/mobile/segmented-control/index.native.js.map +1 -1
  520. package/build/mobile/utils/alignments.native.js +3 -6
  521. package/build/mobile/utils/alignments.native.js.map +1 -1
  522. package/build/mobile/utils/get-px-from-css-unit.native.js +1 -2
  523. package/build/mobile/utils/get-px-from-css-unit.native.js.map +1 -1
  524. package/build/modal/index.js +4 -6
  525. package/build/modal/index.js.map +1 -1
  526. package/build/navigable-container/container.js +1 -2
  527. package/build/navigable-container/container.js.map +1 -1
  528. package/build/navigable-container/menu.js +2 -4
  529. package/build/navigable-container/menu.js.map +1 -1
  530. package/build/navigable-container/tabbable.js +2 -4
  531. package/build/navigable-container/tabbable.js.map +1 -1
  532. package/build/navigation/back-button/index.js +2 -4
  533. package/build/navigation/back-button/index.js.map +1 -1
  534. package/build/navigation/constants.js +2 -4
  535. package/build/navigation/constants.js.map +1 -1
  536. package/build/navigation/context.js +1 -2
  537. package/build/navigation/context.js.map +1 -1
  538. package/build/navigation/group/context.js +1 -2
  539. package/build/navigation/group/context.js.map +1 -1
  540. package/build/navigation/group/index.js +1 -2
  541. package/build/navigation/group/index.js.map +1 -1
  542. package/build/navigation/index.js +1 -2
  543. package/build/navigation/index.js.map +1 -1
  544. package/build/navigation/item/index.js +1 -2
  545. package/build/navigation/item/index.js.map +1 -1
  546. package/build/navigation/menu/context.js +1 -2
  547. package/build/navigation/menu/context.js.map +1 -1
  548. package/build/navigation/menu/index.js +1 -2
  549. package/build/navigation/menu/index.js.map +1 -1
  550. package/build/navigation/menu/menu-title-search.js +5 -8
  551. package/build/navigation/menu/menu-title-search.js.map +1 -1
  552. package/build/navigation/styles/navigation-styles.js +34 -47
  553. package/build/navigation/styles/navigation-styles.js.map +1 -1
  554. package/build/navigator/context.js +1 -2
  555. package/build/navigator/context.js.map +1 -1
  556. package/build/navigator/navigator-back-button/component.js +2 -4
  557. package/build/navigator/navigator-back-button/component.js.map +1 -1
  558. package/build/navigator/navigator-button/component.js +2 -4
  559. package/build/navigator/navigator-button/component.js.map +1 -1
  560. package/build/navigator/navigator-provider/component.js +4 -6
  561. package/build/navigator/navigator-provider/component.js.map +1 -1
  562. package/build/navigator/navigator-screen/component.js +4 -6
  563. package/build/navigator/navigator-screen/component.js.map +1 -1
  564. package/build/navigator/navigator-to-parent-button/component.js +2 -4
  565. package/build/navigator/navigator-to-parent-button/component.js.map +1 -1
  566. package/build/navigator/styles.js +1 -2
  567. package/build/navigator/styles.js.map +1 -1
  568. package/build/navigator/use-navigator.js +1 -2
  569. package/build/navigator/use-navigator.js.map +1 -1
  570. package/build/notice/index.js +1 -2
  571. package/build/notice/index.js.map +1 -1
  572. package/build/notice/index.native.js +1 -2
  573. package/build/notice/index.native.js.map +1 -1
  574. package/build/notice/list.js +1 -2
  575. package/build/notice/list.js.map +1 -1
  576. package/build/notice/list.native.js +1 -2
  577. package/build/notice/list.native.js.map +1 -1
  578. package/build/number-control/index.js +5 -7
  579. package/build/number-control/index.js.map +1 -1
  580. package/build/number-control/styles/number-control-styles.js +3 -6
  581. package/build/number-control/styles/number-control-styles.js.map +1 -1
  582. package/build/palette-edit/index.js +11 -17
  583. package/build/palette-edit/index.js.map +1 -1
  584. package/build/palette-edit/styles.js +50 -51
  585. package/build/palette-edit/styles.js.map +1 -1
  586. package/build/panel/actions.native.js +1 -2
  587. package/build/panel/actions.native.js.map +1 -1
  588. package/build/panel/body.js +2 -4
  589. package/build/panel/body.js.map +1 -1
  590. package/build/panel/body.native.js +1 -2
  591. package/build/panel/body.native.js.map +1 -1
  592. package/build/panel/bottom-separator-cover.native.js +1 -2
  593. package/build/panel/bottom-separator-cover.native.js.map +1 -1
  594. package/build/panel/header.js +1 -2
  595. package/build/panel/header.js.map +1 -1
  596. package/build/panel/index.js +2 -4
  597. package/build/panel/index.js.map +1 -1
  598. package/build/panel/row.js +2 -4
  599. package/build/panel/row.js.map +1 -1
  600. package/build/placeholder/index.js +1 -2
  601. package/build/placeholder/index.js.map +1 -1
  602. package/build/popover/index.js +5 -6
  603. package/build/popover/index.js.map +1 -1
  604. package/build/popover/types.js.map +1 -1
  605. package/build/private-apis.js +1 -2
  606. package/build/private-apis.js.map +1 -1
  607. package/build/private-apis.native.js +1 -2
  608. package/build/private-apis.native.js.map +1 -1
  609. package/build/progress-bar/index.js +4 -6
  610. package/build/progress-bar/index.js.map +1 -1
  611. package/build/progress-bar/styles.js +4 -8
  612. package/build/progress-bar/styles.js.map +1 -1
  613. package/build/query-controls/index.js +5 -6
  614. package/build/query-controls/index.js.map +1 -1
  615. package/build/query-controls/index.native.js +4 -5
  616. package/build/query-controls/index.native.js.map +1 -1
  617. package/build/radio-control/index.js +1 -2
  618. package/build/radio-control/index.js.map +1 -1
  619. package/build/radio-control/index.native.js +1 -2
  620. package/build/radio-control/index.native.js.map +1 -1
  621. package/build/radio-group/context.js +1 -2
  622. package/build/radio-group/context.js.map +1 -1
  623. package/build/radio-group/index.js +4 -6
  624. package/build/radio-group/index.js.map +1 -1
  625. package/build/radio-group/radio.js +4 -6
  626. package/build/radio-group/radio.js.map +1 -1
  627. package/build/range-control/index.js +2 -4
  628. package/build/range-control/index.js.map +1 -1
  629. package/build/range-control/index.native.js +1 -2
  630. package/build/range-control/index.native.js.map +1 -1
  631. package/build/range-control/input-range.js +1 -2
  632. package/build/range-control/input-range.js.map +1 -1
  633. package/build/range-control/styles/range-control-styles.js +15 -30
  634. package/build/range-control/styles/range-control-styles.js.map +1 -1
  635. package/build/resizable-box/index.js +2 -4
  636. package/build/resizable-box/index.js.map +1 -1
  637. package/build/resizable-box/index.native.js +1 -2
  638. package/build/resizable-box/index.native.js.map +1 -1
  639. package/build/resizable-box/resize-tooltip/index.js +1 -2
  640. package/build/resizable-box/resize-tooltip/index.js.map +1 -1
  641. package/build/resizable-box/resize-tooltip/label.js +1 -2
  642. package/build/resizable-box/resize-tooltip/label.js.map +1 -1
  643. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +9 -12
  644. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  645. package/build/resizable-box/resize-tooltip/utils.js +1 -2
  646. package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
  647. package/build/responsive-wrapper/index.js +1 -2
  648. package/build/responsive-wrapper/index.js.map +1 -1
  649. package/build/sandbox/index.js +1 -2
  650. package/build/sandbox/index.js.map +1 -1
  651. package/build/sandbox/index.native.js +1 -2
  652. package/build/sandbox/index.native.js.map +1 -1
  653. package/build/scroll-lock/index.js +1 -2
  654. package/build/scroll-lock/index.js.map +1 -1
  655. package/build/scrollable/component.js +2 -4
  656. package/build/scrollable/component.js.map +1 -1
  657. package/build/scrollable/hook.js +2 -2
  658. package/build/scrollable/hook.js.map +1 -1
  659. package/build/scrollable/styles.js +7 -14
  660. package/build/scrollable/styles.js.map +1 -1
  661. package/build/search-control/index.js +68 -60
  662. package/build/search-control/index.js.map +1 -1
  663. package/build/search-control/index.native.js +1 -2
  664. package/build/search-control/index.native.js.map +1 -1
  665. package/build/search-control/styles.js +37 -0
  666. package/build/search-control/styles.js.map +1 -0
  667. package/build/search-control/types.js.map +1 -1
  668. package/build/select-control/chevron-down.js +1 -2
  669. package/build/select-control/chevron-down.js.map +1 -1
  670. package/build/select-control/index.js +3 -5
  671. package/build/select-control/index.js.map +1 -1
  672. package/build/select-control/index.native.js +2 -4
  673. package/build/select-control/index.native.js.map +1 -1
  674. package/build/select-control/styles/select-control-styles.js +4 -8
  675. package/build/select-control/styles/select-control-styles.js.map +1 -1
  676. package/build/shortcut/index.js +1 -2
  677. package/build/shortcut/index.js.map +1 -1
  678. package/build/slot-fill/bubbles-virtually/slot-fill-context.js +1 -2
  679. package/build/slot-fill/bubbles-virtually/slot-fill-context.js.map +1 -1
  680. package/build/slot-fill/bubbles-virtually/slot.js +1 -2
  681. package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
  682. package/build/slot-fill/bubbles-virtually/use-slot-fills.js +1 -1
  683. package/build/slot-fill/bubbles-virtually/use-slot-fills.js.map +1 -1
  684. package/build/slot-fill/context.js +2 -4
  685. package/build/slot-fill/context.js.map +1 -1
  686. package/build/slot-fill/index.js +1 -2
  687. package/build/slot-fill/index.js.map +1 -1
  688. package/build/slot-fill/provider.js +1 -2
  689. package/build/slot-fill/provider.js.map +1 -1
  690. package/build/slot-fill/slot.js +1 -2
  691. package/build/slot-fill/slot.js.map +1 -1
  692. package/build/slot-fill/use-slot.js +1 -2
  693. package/build/slot-fill/use-slot.js.map +1 -1
  694. package/build/snackbar/index.js +19 -9
  695. package/build/snackbar/index.js.map +1 -1
  696. package/build/snackbar/list.js +1 -2
  697. package/build/snackbar/list.js.map +1 -1
  698. package/build/spacer/component.js +2 -4
  699. package/build/spacer/component.js.map +1 -1
  700. package/build/spinner/index.js +2 -4
  701. package/build/spinner/index.js.map +1 -1
  702. package/build/spinner/styles.js +3 -6
  703. package/build/spinner/styles.js.map +1 -1
  704. package/build/style-provider/index.js +3 -4
  705. package/build/style-provider/index.js.map +1 -1
  706. package/build/surface/component.js +2 -4
  707. package/build/surface/component.js.map +1 -1
  708. package/build/surface/hook.js +2 -2
  709. package/build/surface/hook.js.map +1 -1
  710. package/build/surface/styles.js +5 -10
  711. package/build/surface/styles.js.map +1 -1
  712. package/build/tab-panel/index.js +4 -6
  713. package/build/tab-panel/index.js.map +1 -1
  714. package/build/tabs/context.js +1 -2
  715. package/build/tabs/context.js.map +1 -1
  716. package/build/tabs/index.js +23 -20
  717. package/build/tabs/index.js.map +1 -1
  718. package/build/tabs/styles.js +5 -8
  719. package/build/tabs/styles.js.map +1 -1
  720. package/build/tabs/tab.js +1 -2
  721. package/build/tabs/tab.js.map +1 -1
  722. package/build/tabs/tablist.js +25 -4
  723. package/build/tabs/tablist.js.map +1 -1
  724. package/build/tabs/tabpanel.js +1 -2
  725. package/build/tabs/tabpanel.js.map +1 -1
  726. package/build/text/component.js +2 -4
  727. package/build/text/component.js.map +1 -1
  728. package/build/text/hook.js +2 -2
  729. package/build/text/hook.js.map +1 -1
  730. package/build/text/index.native.js +1 -2
  731. package/build/text/index.native.js.map +1 -1
  732. package/build/text/styles/emotion-css.native.js +1 -2
  733. package/build/text/styles/emotion-css.native.js.map +1 -1
  734. package/build/text/styles/font-family.native.js +1 -2
  735. package/build/text/styles/font-family.native.js.map +1 -1
  736. package/build/text/styles.js +7 -14
  737. package/build/text/styles.js.map +1 -1
  738. package/build/text-control/index.js +2 -4
  739. package/build/text-control/index.js.map +1 -1
  740. package/build/text-control/index.native.js +1 -2
  741. package/build/text-control/index.native.js.map +1 -1
  742. package/build/text-highlight/index.js +1 -2
  743. package/build/text-highlight/index.js.map +1 -1
  744. package/build/textarea-control/index.js +2 -4
  745. package/build/textarea-control/index.js.map +1 -1
  746. package/build/textarea-control/index.native.js +1 -2
  747. package/build/textarea-control/index.native.js.map +1 -1
  748. package/build/textarea-control/styles/textarea-control-styles.js +1 -2
  749. package/build/textarea-control/styles/textarea-control-styles.js.map +1 -1
  750. package/build/theme/index.js +1 -2
  751. package/build/theme/index.js.map +1 -1
  752. package/build/theme/styles.js +12 -8
  753. package/build/theme/styles.js.map +1 -1
  754. package/build/tip/index.js +1 -2
  755. package/build/tip/index.js.map +1 -1
  756. package/build/toggle-control/index.js +1 -2
  757. package/build/toggle-control/index.js.map +1 -1
  758. package/build/toggle-control/index.native.js +1 -2
  759. package/build/toggle-control/index.native.js.map +1 -1
  760. package/build/toggle-group-control/context.js +1 -2
  761. package/build/toggle-group-control/context.js.map +1 -1
  762. package/build/toggle-group-control/toggle-group-control/as-button-group.js +1 -2
  763. package/build/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
  764. package/build/toggle-group-control/toggle-group-control/as-radio-group.js +3 -4
  765. package/build/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
  766. package/build/toggle-group-control/toggle-group-control/component.js +7 -8
  767. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  768. package/build/toggle-group-control/toggle-group-control/styles.js +2 -4
  769. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  770. package/build/toggle-group-control/toggle-group-control/utils.js +7 -1
  771. package/build/toggle-group-control/toggle-group-control/utils.js.map +1 -1
  772. package/build/toggle-group-control/toggle-group-control-option/component.js +2 -4
  773. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  774. package/build/toggle-group-control/toggle-group-control-option-base/component.js +3 -4
  775. package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  776. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +4 -8
  777. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  778. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +2 -4
  779. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  780. package/build/toolbar/toolbar/index.js +2 -4
  781. package/build/toolbar/toolbar/index.js.map +1 -1
  782. package/build/toolbar/toolbar/toolbar-container.js +4 -6
  783. package/build/toolbar/toolbar/toolbar-container.js.map +1 -1
  784. package/build/toolbar/toolbar/toolbar-container.native.js +1 -2
  785. package/build/toolbar/toolbar/toolbar-container.native.js.map +1 -1
  786. package/build/toolbar/toolbar-button/index.js +2 -4
  787. package/build/toolbar/toolbar-button/index.js.map +1 -1
  788. package/build/toolbar/toolbar-button/toolbar-button-container.js +1 -2
  789. package/build/toolbar/toolbar-button/toolbar-button-container.js.map +1 -1
  790. package/build/toolbar/toolbar-context/index.js +1 -2
  791. package/build/toolbar/toolbar-context/index.js.map +1 -1
  792. package/build/toolbar/toolbar-dropdown-menu/index.js +1 -2
  793. package/build/toolbar/toolbar-dropdown-menu/index.js.map +1 -1
  794. package/build/toolbar/toolbar-group/index.js +1 -2
  795. package/build/toolbar/toolbar-group/index.js.map +1 -1
  796. package/build/toolbar/toolbar-group/toolbar-group-collapsed.js +1 -2
  797. package/build/toolbar/toolbar-group/toolbar-group-collapsed.js.map +1 -1
  798. package/build/toolbar/toolbar-group/toolbar-group-collapsed.native.js +1 -2
  799. package/build/toolbar/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
  800. package/build/toolbar/toolbar-group/toolbar-group-container.js +1 -2
  801. package/build/toolbar/toolbar-group/toolbar-group-container.js.map +1 -1
  802. package/build/toolbar/toolbar-group/toolbar-group-container.native.js +1 -2
  803. package/build/toolbar/toolbar-group/toolbar-group-container.native.js.map +1 -1
  804. package/build/toolbar/toolbar-item/index.js +3 -4
  805. package/build/toolbar/toolbar-item/index.js.map +1 -1
  806. package/build/toolbar/toolbar-item/index.native.js +1 -2
  807. package/build/toolbar/toolbar-item/index.native.js.map +1 -1
  808. package/build/tools-panel/context.js +1 -2
  809. package/build/tools-panel/context.js.map +1 -1
  810. package/build/tools-panel/styles.js +8 -16
  811. package/build/tools-panel/styles.js.map +1 -1
  812. package/build/tools-panel/tools-panel/component.js +2 -4
  813. package/build/tools-panel/tools-panel/component.js.map +1 -1
  814. package/build/tools-panel/tools-panel/hook.js +2 -2
  815. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  816. package/build/tools-panel/tools-panel-header/component.js +1 -2
  817. package/build/tools-panel/tools-panel-header/component.js.map +1 -1
  818. package/build/tools-panel/tools-panel-header/hook.js +2 -2
  819. package/build/tools-panel/tools-panel-header/hook.js.map +1 -1
  820. package/build/tools-panel/tools-panel-item/component.js +2 -4
  821. package/build/tools-panel/tools-panel-item/component.js.map +1 -1
  822. package/build/tools-panel/tools-panel-item/hook.js +2 -2
  823. package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
  824. package/build/tooltip/index.js +19 -19
  825. package/build/tooltip/index.js.map +1 -1
  826. package/build/tooltip/index.native.js +1 -2
  827. package/build/tooltip/index.native.js.map +1 -1
  828. package/build/tooltip/types.js.map +1 -1
  829. package/build/tree-grid/cell.js +2 -4
  830. package/build/tree-grid/cell.js.map +1 -1
  831. package/build/tree-grid/index.js +2 -4
  832. package/build/tree-grid/index.js.map +1 -1
  833. package/build/tree-grid/item.js +2 -4
  834. package/build/tree-grid/item.js.map +1 -1
  835. package/build/tree-grid/roving-tab-index-context.js +1 -2
  836. package/build/tree-grid/roving-tab-index-context.js.map +1 -1
  837. package/build/tree-grid/roving-tab-index-item.js +2 -4
  838. package/build/tree-grid/roving-tab-index-item.js.map +1 -1
  839. package/build/tree-grid/row.js +2 -4
  840. package/build/tree-grid/row.js.map +1 -1
  841. package/build/tree-select/index.js +2 -3
  842. package/build/tree-select/index.js.map +1 -1
  843. package/build/truncate/component.js +2 -4
  844. package/build/truncate/component.js.map +1 -1
  845. package/build/truncate/hook.js +2 -2
  846. package/build/truncate/hook.js.map +1 -1
  847. package/build/truncate/styles.js +1 -2
  848. package/build/truncate/styles.js.map +1 -1
  849. package/build/truncate/utils.js +3 -6
  850. package/build/truncate/utils.js.map +1 -1
  851. package/build/unit-control/index.js +3 -5
  852. package/build/unit-control/index.js.map +1 -1
  853. package/build/unit-control/index.native.js +1 -2
  854. package/build/unit-control/index.native.js.map +1 -1
  855. package/build/unit-control/styles/unit-control-styles.js +3 -6
  856. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  857. package/build/unit-control/unit-select-control.js +1 -2
  858. package/build/unit-control/unit-select-control.js.map +1 -1
  859. package/build/unit-control/utils.js +3 -6
  860. package/build/unit-control/utils.js.map +1 -1
  861. package/build/utils/base-label.js +1 -2
  862. package/build/utils/base-label.js.map +1 -1
  863. package/build/utils/box-sizing.js +1 -2
  864. package/build/utils/box-sizing.js.map +1 -1
  865. package/build/utils/breakpoint-values.js +1 -2
  866. package/build/utils/breakpoint-values.js.map +1 -1
  867. package/build/utils/colors-values.js +44 -24
  868. package/build/utils/colors-values.js.map +1 -1
  869. package/build/utils/config-values.js +1 -2
  870. package/build/utils/config-values.js.map +1 -1
  871. package/build/utils/font-size.js +3 -6
  872. package/build/utils/font-size.js.map +1 -1
  873. package/build/utils/font-values.js +1 -2
  874. package/build/utils/font-values.js.map +1 -1
  875. package/build/utils/hooks/use-controlled-state.js +1 -2
  876. package/build/utils/hooks/use-controlled-state.js.map +1 -1
  877. package/build/utils/hooks/use-update-effect.js +2 -3
  878. package/build/utils/hooks/use-update-effect.js.map +1 -1
  879. package/build/utils/input/base.js +2 -4
  880. package/build/utils/input/base.js.map +1 -1
  881. package/build/utils/input/input-control.js +1 -2
  882. package/build/utils/input/input-control.js.map +1 -1
  883. package/build/utils/use-deprecated-props.js +1 -15
  884. package/build/utils/use-deprecated-props.js.map +1 -1
  885. package/build/utils/use-responsive-value.js +2 -3
  886. package/build/utils/use-responsive-value.js.map +1 -1
  887. package/build/v-stack/component.js +2 -4
  888. package/build/v-stack/component.js.map +1 -1
  889. package/build/view/component.js +2 -4
  890. package/build/view/component.js.map +1 -1
  891. package/build/visually-hidden/component.js +2 -4
  892. package/build/visually-hidden/component.js.map +1 -1
  893. package/build/visually-hidden/styles.js +1 -2
  894. package/build/visually-hidden/styles.js.map +1 -1
  895. package/build/z-stack/component.js +2 -4
  896. package/build/z-stack/component.js.map +1 -1
  897. package/build/z-stack/styles.js +2 -4
  898. package/build/z-stack/styles.js.map +1 -1
  899. package/build-module/angle-picker-control/index.js +3 -13
  900. package/build-module/angle-picker-control/index.js.map +1 -1
  901. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +5 -17
  902. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  903. package/build-module/angle-picker-control/types.js.map +1 -1
  904. package/build-module/border-box-control/border-box-control/component.js.map +1 -1
  905. package/build-module/border-box-control/border-box-control/hook.js +3 -1
  906. package/build-module/border-box-control/border-box-control/hook.js.map +1 -1
  907. package/build-module/border-box-control/types.js.map +1 -1
  908. package/build-module/border-control/border-control/component.js +5 -1
  909. package/build-module/border-control/border-control/component.js.map +1 -1
  910. package/build-module/border-control/border-control/hook.js +18 -15
  911. package/build-module/border-control/border-control/hook.js.map +1 -1
  912. package/build-module/border-control/border-control-dropdown/component.js +2 -1
  913. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  914. package/build-module/border-control/border-control-style-picker/component.js +21 -48
  915. package/build-module/border-control/border-control-style-picker/component.js.map +1 -1
  916. package/build-module/border-control/styles.js +14 -24
  917. package/build-module/border-control/styles.js.map +1 -1
  918. package/build-module/border-control/types.js.map +1 -1
  919. package/build-module/box-control/all-input-control.js +38 -28
  920. package/build-module/box-control/all-input-control.js.map +1 -1
  921. package/build-module/box-control/axial-input-controls.js +42 -57
  922. package/build-module/box-control/axial-input-controls.js.map +1 -1
  923. package/build-module/box-control/index.js +22 -25
  924. package/build-module/box-control/index.js.map +1 -1
  925. package/build-module/box-control/input-controls.js +47 -40
  926. package/build-module/box-control/input-controls.js.map +1 -1
  927. package/build-module/box-control/styles/box-control-styles.js +45 -105
  928. package/build-module/box-control/styles/box-control-styles.js.map +1 -1
  929. package/build-module/box-control/types.js.map +1 -1
  930. package/build-module/box-control/utils.js +121 -7
  931. package/build-module/box-control/utils.js.map +1 -1
  932. package/build-module/button/index.js +14 -16
  933. package/build-module/button/index.js.map +1 -1
  934. package/build-module/button/index.native.js +0 -1
  935. package/build-module/button/index.native.js.map +1 -1
  936. package/build-module/button/types.js.map +1 -1
  937. package/build-module/checkbox-control/types.js.map +1 -1
  938. package/build-module/color-picker/hsl-input.js +55 -33
  939. package/build-module/color-picker/hsl-input.js.map +1 -1
  940. package/build-module/combobox-control/index.js +1 -2
  941. package/build-module/combobox-control/index.js.map +1 -1
  942. package/build-module/composite/current/index.js +15 -0
  943. package/build-module/composite/current/index.js.map +1 -0
  944. package/build-module/composite/index.js +6 -15
  945. package/build-module/composite/index.js.map +1 -1
  946. package/build-module/composite/legacy/index.js +117 -0
  947. package/build-module/composite/legacy/index.js.map +1 -0
  948. package/build-module/composite/v2.js +3 -13
  949. package/build-module/composite/v2.js.map +1 -1
  950. package/build-module/confirm-dialog/component.js +2 -0
  951. package/build-module/confirm-dialog/component.js.map +1 -1
  952. package/build-module/context/wordpress-component.js.map +1 -1
  953. package/build-module/custom-gradient-picker/index.js +2 -15
  954. package/build-module/custom-gradient-picker/index.js.map +1 -1
  955. package/build-module/custom-gradient-picker/types.js.map +1 -1
  956. package/build-module/custom-select-control/index.js +1 -1
  957. package/build-module/custom-select-control/index.js.map +1 -1
  958. package/build-module/custom-select-control-v2/index.js +6 -3
  959. package/build-module/custom-select-control-v2/index.js.map +1 -1
  960. package/build-module/date-time/time/timezone.js +1 -1
  961. package/build-module/date-time/time/timezone.js.map +1 -1
  962. package/build-module/dropdown-menu-v2/styles.js +14 -14
  963. package/build-module/dropdown-menu-v2/styles.js.map +1 -1
  964. package/build-module/external-link/index.js +1 -1
  965. package/build-module/focal-point-picker/index.js +2 -2
  966. package/build-module/focal-point-picker/index.js.map +1 -1
  967. package/build-module/focal-point-picker/index.native.js +0 -1
  968. package/build-module/focal-point-picker/index.native.js.map +1 -1
  969. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +29 -37
  970. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  971. package/build-module/focal-point-picker/styles/focal-point-style.js +10 -2
  972. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  973. package/build-module/font-size-picker/font-size-picker-toggle-group.js +1 -2
  974. package/build-module/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  975. package/build-module/font-size-picker/index.js +3 -17
  976. package/build-module/font-size-picker/index.js.map +1 -1
  977. package/build-module/font-size-picker/styles.js +14 -20
  978. package/build-module/font-size-picker/styles.js.map +1 -1
  979. package/build-module/font-size-picker/types.js.map +1 -1
  980. package/build-module/form-token-field/index.js +1 -6
  981. package/build-module/form-token-field/index.js.map +1 -1
  982. package/build-module/form-token-field/suggestions-list.js +0 -1
  983. package/build-module/form-token-field/suggestions-list.js.map +1 -1
  984. package/build-module/gradient-picker/index.js +18 -41
  985. package/build-module/gradient-picker/index.js.map +1 -1
  986. package/build-module/gradient-picker/types.js.map +1 -1
  987. package/build-module/input-control/backdrop.js +2 -0
  988. package/build-module/input-control/backdrop.js.map +1 -1
  989. package/build-module/input-control/index.js +1 -1
  990. package/build-module/input-control/index.js.map +1 -1
  991. package/build-module/input-control/input-base.js +6 -4
  992. package/build-module/input-control/input-base.js.map +1 -1
  993. package/build-module/input-control/styles/input-control-styles.js +25 -23
  994. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  995. package/build-module/input-control/types.js.map +1 -1
  996. package/build-module/isolated-event-container/index.js +0 -1
  997. package/build-module/isolated-event-container/index.js.map +1 -1
  998. package/build-module/item-group/styles.js +10 -10
  999. package/build-module/item-group/styles.js.map +1 -1
  1000. package/build-module/mobile/image/index.native.js +83 -8
  1001. package/build-module/mobile/image/index.native.js.map +1 -1
  1002. package/build-module/navigation/menu/menu-title-search.js +4 -6
  1003. package/build-module/navigation/menu/menu-title-search.js.map +1 -1
  1004. package/build-module/navigation/styles/navigation-styles.js +23 -24
  1005. package/build-module/navigation/styles/navigation-styles.js.map +1 -1
  1006. package/build-module/number-control/index.js +1 -1
  1007. package/build-module/number-control/index.js.map +1 -1
  1008. package/build-module/palette-edit/index.js +10 -15
  1009. package/build-module/palette-edit/index.js.map +1 -1
  1010. package/build-module/palette-edit/styles.js +43 -33
  1011. package/build-module/palette-edit/styles.js.map +1 -1
  1012. package/build-module/popover/index.js +2 -0
  1013. package/build-module/popover/index.js.map +1 -1
  1014. package/build-module/popover/types.js.map +1 -1
  1015. package/build-module/query-controls/index.js +5 -5
  1016. package/build-module/query-controls/index.js.map +1 -1
  1017. package/build-module/query-controls/index.native.js +4 -4
  1018. package/build-module/query-controls/index.native.js.map +1 -1
  1019. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  1020. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  1021. package/build-module/search-control/index.js +67 -57
  1022. package/build-module/search-control/index.js.map +1 -1
  1023. package/build-module/search-control/styles.js +29 -0
  1024. package/build-module/search-control/styles.js.map +1 -0
  1025. package/build-module/search-control/types.js.map +1 -1
  1026. package/build-module/select-control/index.js +1 -1
  1027. package/build-module/select-control/index.js.map +1 -1
  1028. package/build-module/slot-fill/bubbles-virtually/use-slot-fills.js +1 -1
  1029. package/build-module/slot-fill/bubbles-virtually/use-slot-fills.js.map +1 -1
  1030. package/build-module/snackbar/index.js +18 -6
  1031. package/build-module/snackbar/index.js.map +1 -1
  1032. package/build-module/tabs/index.js +21 -17
  1033. package/build-module/tabs/index.js.map +1 -1
  1034. package/build-module/tabs/tablist.js +22 -0
  1035. package/build-module/tabs/tablist.js.map +1 -1
  1036. package/build-module/theme/styles.js +11 -2
  1037. package/build-module/theme/styles.js.map +1 -1
  1038. package/build-module/toggle-group-control/toggle-group-control/utils.js +7 -1
  1039. package/build-module/toggle-group-control/toggle-group-control/utils.js.map +1 -1
  1040. package/build-module/tooltip/index.js +16 -13
  1041. package/build-module/tooltip/index.js.map +1 -1
  1042. package/build-module/tooltip/types.js.map +1 -1
  1043. package/build-module/tree-select/index.js +1 -1
  1044. package/build-module/tree-select/index.js.map +1 -1
  1045. package/build-module/unit-control/index.js +1 -1
  1046. package/build-module/unit-control/index.js.map +1 -1
  1047. package/build-module/utils/colors-values.js +42 -19
  1048. package/build-module/utils/colors-values.js.map +1 -1
  1049. package/build-module/utils/hooks/use-update-effect.js +1 -1
  1050. package/build-module/utils/hooks/use-update-effect.js.map +1 -1
  1051. package/build-module/utils/use-deprecated-props.js +1 -13
  1052. package/build-module/utils/use-deprecated-props.js.map +1 -1
  1053. package/build-module/utils/use-responsive-value.js +2 -3
  1054. package/build-module/utils/use-responsive-value.js.map +1 -1
  1055. package/build-style/style-rtl.css +28 -113
  1056. package/build-style/style.css +28 -113
  1057. package/build-types/angle-picker-control/index.d.ts +0 -1
  1058. package/build-types/angle-picker-control/index.d.ts.map +1 -1
  1059. package/build-types/angle-picker-control/styles/angle-picker-control-styles.d.ts +0 -6
  1060. package/build-types/angle-picker-control/styles/angle-picker-control-styles.d.ts.map +1 -1
  1061. package/build-types/angle-picker-control/types.d.ts +2 -0
  1062. package/build-types/angle-picker-control/types.d.ts.map +1 -1
  1063. package/build-types/border-box-control/border-box-control/component.d.ts +1 -0
  1064. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  1065. package/build-types/border-box-control/border-box-control/hook.d.ts +4 -4
  1066. package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -1
  1067. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +5 -5
  1068. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +4 -4
  1069. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +4 -4
  1070. package/build-types/border-box-control/stories/index.story.d.ts +2 -1
  1071. package/build-types/border-box-control/stories/index.story.d.ts.map +1 -1
  1072. package/build-types/border-box-control/types.d.ts +6 -0
  1073. package/build-types/border-box-control/types.d.ts.map +1 -1
  1074. package/build-types/border-control/border-control/component.d.ts +1 -0
  1075. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  1076. package/build-types/border-control/border-control/hook.d.ts +6 -4
  1077. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  1078. package/build-types/border-control/border-control-dropdown/component.d.ts +1 -0
  1079. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  1080. package/build-types/border-control/border-control-dropdown/hook.d.ts +5 -4
  1081. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  1082. package/build-types/border-control/border-control-style-picker/component.d.ts +3 -4
  1083. package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
  1084. package/build-types/border-control/stories/index.story.d.ts +12 -6
  1085. package/build-types/border-control/stories/index.story.d.ts.map +1 -1
  1086. package/build-types/border-control/styles.d.ts +0 -2
  1087. package/build-types/border-control/styles.d.ts.map +1 -1
  1088. package/build-types/border-control/types.d.ts +12 -1
  1089. package/build-types/border-control/types.d.ts.map +1 -1
  1090. package/build-types/box-control/all-input-control.d.ts +1 -1
  1091. package/build-types/box-control/all-input-control.d.ts.map +1 -1
  1092. package/build-types/box-control/axial-input-controls.d.ts +1 -1
  1093. package/build-types/box-control/axial-input-controls.d.ts.map +1 -1
  1094. package/build-types/box-control/index.d.ts +1 -1
  1095. package/build-types/box-control/index.d.ts.map +1 -1
  1096. package/build-types/box-control/input-controls.d.ts +1 -1
  1097. package/build-types/box-control/input-controls.d.ts.map +1 -1
  1098. package/build-types/box-control/stories/index.story.d.ts +42 -36
  1099. package/build-types/box-control/stories/index.story.d.ts.map +1 -1
  1100. package/build-types/box-control/styles/box-control-styles.d.ts +49 -23
  1101. package/build-types/box-control/styles/box-control-styles.d.ts.map +1 -1
  1102. package/build-types/box-control/types.d.ts +12 -12
  1103. package/build-types/box-control/types.d.ts.map +1 -1
  1104. package/build-types/box-control/utils.d.ts +2 -1
  1105. package/build-types/box-control/utils.d.ts.map +1 -1
  1106. package/build-types/button/deprecated.d.ts +3 -3
  1107. package/build-types/button/index.d.ts.map +1 -1
  1108. package/build-types/button/stories/e2e/index.story.d.ts.map +1 -1
  1109. package/build-types/button/types.d.ts +7 -3
  1110. package/build-types/button/types.d.ts.map +1 -1
  1111. package/build-types/card/card/hook.d.ts +4 -4
  1112. package/build-types/card/card-body/hook.d.ts +4 -4
  1113. package/build-types/card/card-divider/hook.d.ts +4 -4
  1114. package/build-types/card/card-footer/hook.d.ts +4 -4
  1115. package/build-types/card/card-header/hook.d.ts +4 -4
  1116. package/build-types/card/card-media/hook.d.ts +4 -4
  1117. package/build-types/card/stories/index.story.d.ts +2 -2
  1118. package/build-types/checkbox-control/stories/index.story.d.ts +11 -0
  1119. package/build-types/checkbox-control/stories/index.story.d.ts.map +1 -1
  1120. package/build-types/checkbox-control/types.d.ts +2 -3
  1121. package/build-types/checkbox-control/types.d.ts.map +1 -1
  1122. package/build-types/color-palette/styles.d.ts +2 -2
  1123. package/build-types/color-picker/component.d.ts +1 -1
  1124. package/build-types/color-picker/hsl-input.d.ts.map +1 -1
  1125. package/build-types/color-picker/stories/index.story.d.ts +1 -1
  1126. package/build-types/color-picker/styles.d.ts +3 -3
  1127. package/build-types/combobox-control/index.d.ts.map +1 -1
  1128. package/build-types/composite/current/index.d.ts +12 -0
  1129. package/build-types/composite/current/index.d.ts.map +1 -0
  1130. package/build-types/composite/current/stories/index.story.d.ts +13 -0
  1131. package/build-types/composite/current/stories/index.story.d.ts.map +1 -0
  1132. package/build-types/composite/current/stories/utils.d.ts +15 -0
  1133. package/build-types/composite/current/stories/utils.d.ts.map +1 -0
  1134. package/build-types/composite/index.d.ts +1 -14
  1135. package/build-types/composite/index.d.ts.map +1 -1
  1136. package/build-types/composite/legacy/index.d.ts +84 -0
  1137. package/build-types/composite/legacy/index.d.ts.map +1 -0
  1138. package/build-types/composite/legacy/stories/index.story.d.ts +12 -0
  1139. package/build-types/composite/legacy/stories/index.story.d.ts.map +1 -0
  1140. package/build-types/composite/legacy/stories/utils.d.ts +15 -0
  1141. package/build-types/composite/legacy/stories/utils.d.ts.map +1 -0
  1142. package/build-types/composite/legacy/test/index.d.ts.map +1 -0
  1143. package/build-types/composite/v2.d.ts +1 -11
  1144. package/build-types/composite/v2.d.ts.map +1 -1
  1145. package/build-types/confirm-dialog/component.d.ts.map +1 -1
  1146. package/build-types/custom-gradient-picker/index.d.ts +1 -3
  1147. package/build-types/custom-gradient-picker/index.d.ts.map +1 -1
  1148. package/build-types/custom-gradient-picker/types.d.ts +2 -0
  1149. package/build-types/custom-gradient-picker/types.d.ts.map +1 -1
  1150. package/build-types/custom-select-control/index.d.ts.map +1 -1
  1151. package/build-types/custom-select-control/styles.d.ts +2 -2
  1152. package/build-types/custom-select-control-v2/index.d.ts.map +1 -1
  1153. package/build-types/custom-select-control-v2/stories/index.story.d.ts.map +1 -1
  1154. package/build-types/custom-select-control-v2/test/index.d.ts +2 -0
  1155. package/build-types/custom-select-control-v2/test/index.d.ts.map +1 -0
  1156. package/build-types/date-time/date/styles.d.ts +3 -3
  1157. package/build-types/date-time/date-time/styles.d.ts +1 -1
  1158. package/build-types/date-time/time/styles.d.ts +4 -4
  1159. package/build-types/dropdown-menu-v2/stories/index.story.d.ts.map +1 -1
  1160. package/build-types/elevation/hook.d.ts +4 -4
  1161. package/build-types/flex/flex/hook.d.ts +4 -4
  1162. package/build-types/flex/flex-block/hook.d.ts +4 -4
  1163. package/build-types/flex/flex-item/hook.d.ts +4 -4
  1164. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +1 -1
  1165. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts.map +1 -1
  1166. package/build-types/focal-point-picker/styles/focal-point-style.d.ts.map +1 -1
  1167. package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts.map +1 -1
  1168. package/build-types/font-size-picker/index.d.ts.map +1 -1
  1169. package/build-types/font-size-picker/stories/index.story.d.ts.map +1 -1
  1170. package/build-types/font-size-picker/styles.d.ts +1 -7
  1171. package/build-types/font-size-picker/styles.d.ts.map +1 -1
  1172. package/build-types/font-size-picker/types.d.ts +3 -1
  1173. package/build-types/font-size-picker/types.d.ts.map +1 -1
  1174. package/build-types/form-token-field/index.d.ts.map +1 -1
  1175. package/build-types/gradient-picker/index.d.ts +1 -4
  1176. package/build-types/gradient-picker/index.d.ts.map +1 -1
  1177. package/build-types/gradient-picker/stories/index.story.d.ts.map +1 -1
  1178. package/build-types/gradient-picker/types.d.ts +2 -0
  1179. package/build-types/gradient-picker/types.d.ts.map +1 -1
  1180. package/build-types/grid/hook.d.ts +4 -4
  1181. package/build-types/h-stack/hook.d.ts +4 -4
  1182. package/build-types/heading/component.d.ts +1 -1
  1183. package/build-types/heading/hook.d.ts +4 -4
  1184. package/build-types/input-control/backdrop.d.ts +2 -1
  1185. package/build-types/input-control/backdrop.d.ts.map +1 -1
  1186. package/build-types/input-control/index.d.ts.map +1 -1
  1187. package/build-types/input-control/input-base.d.ts +1 -3
  1188. package/build-types/input-control/input-base.d.ts.map +1 -1
  1189. package/build-types/input-control/styles/input-control-styles.d.ts +1 -0
  1190. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  1191. package/build-types/input-control/types.d.ts +7 -1
  1192. package/build-types/input-control/types.d.ts.map +1 -1
  1193. package/build-types/item-group/item/hook.d.ts +4 -4
  1194. package/build-types/item-group/item-group/hook.d.ts +4 -4
  1195. package/build-types/item-group/styles.d.ts.map +1 -1
  1196. package/build-types/menu-item/index.d.ts +1 -1
  1197. package/build-types/menu-item/stories/index.story.d.ts +4 -4
  1198. package/build-types/navigation/styles/navigation-styles.d.ts +6 -13
  1199. package/build-types/navigation/styles/navigation-styles.d.ts.map +1 -1
  1200. package/build-types/navigator/navigator-back-button/hook.d.ts +4 -4
  1201. package/build-types/navigator/navigator-button/hook.d.ts +4 -4
  1202. package/build-types/number-control/index.d.ts +1 -1
  1203. package/build-types/number-control/index.d.ts.map +1 -1
  1204. package/build-types/number-control/stories/index.story.d.ts +1 -1
  1205. package/build-types/palette-edit/index.d.ts.map +1 -1
  1206. package/build-types/palette-edit/stories/index.story.d.ts.map +1 -1
  1207. package/build-types/palette-edit/styles.d.ts +17 -23
  1208. package/build-types/palette-edit/styles.d.ts.map +1 -1
  1209. package/build-types/popover/index.d.ts.map +1 -1
  1210. package/build-types/popover/types.d.ts +9 -0
  1211. package/build-types/popover/types.d.ts.map +1 -1
  1212. package/build-types/progress-bar/stories/index.story.d.ts.map +1 -1
  1213. package/build-types/range-control/index.d.ts +1 -1
  1214. package/build-types/range-control/styles/range-control-styles.d.ts +1 -1
  1215. package/build-types/resizable-box/index.d.ts +1 -1
  1216. package/build-types/resizable-box/resize-tooltip/index.d.ts +1 -1
  1217. package/build-types/resizable-box/stories/index.story.d.ts +2 -2
  1218. package/build-types/scrollable/hook.d.ts +4 -4
  1219. package/build-types/search-control/index.d.ts +4 -9
  1220. package/build-types/search-control/index.d.ts.map +1 -1
  1221. package/build-types/search-control/stories/index.story.d.ts +2 -18
  1222. package/build-types/search-control/stories/index.story.d.ts.map +1 -1
  1223. package/build-types/search-control/styles.d.ts +10 -0
  1224. package/build-types/search-control/styles.d.ts.map +1 -0
  1225. package/build-types/search-control/test/index.d.ts +2 -0
  1226. package/build-types/search-control/test/index.d.ts.map +1 -0
  1227. package/build-types/search-control/types.d.ts +34 -18
  1228. package/build-types/search-control/types.d.ts.map +1 -1
  1229. package/build-types/select-control/index.d.ts.map +1 -1
  1230. package/build-types/snackbar/index.d.ts.map +1 -1
  1231. package/build-types/spacer/hook.d.ts +4 -4
  1232. package/build-types/surface/hook.d.ts +4 -4
  1233. package/build-types/tabs/index.d.ts.map +1 -1
  1234. package/build-types/tabs/stories/index.story.d.ts.map +1 -1
  1235. package/build-types/tabs/tablist.d.ts.map +1 -1
  1236. package/build-types/text/hook.d.ts +4 -4
  1237. package/build-types/theme/stories/index.story.d.ts.map +1 -1
  1238. package/build-types/theme/styles.d.ts.map +1 -1
  1239. package/build-types/toggle-control/stories/index.story.d.ts +2 -2
  1240. package/build-types/toggle-group-control/toggle-group-control/utils.d.ts.map +1 -1
  1241. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +1 -1
  1242. package/build-types/toolbar/toolbar-button/index.d.ts +3 -3
  1243. package/build-types/tools-panel/tools-panel/hook.d.ts +4 -4
  1244. package/build-types/tools-panel/tools-panel-header/hook.d.ts +4 -4
  1245. package/build-types/tools-panel/tools-panel-item/hook.d.ts +4 -4
  1246. package/build-types/tooltip/index.d.ts +1 -1
  1247. package/build-types/tooltip/index.d.ts.map +1 -1
  1248. package/build-types/tooltip/stories/index.story.d.ts +1 -1
  1249. package/build-types/tooltip/stories/index.story.d.ts.map +1 -1
  1250. package/build-types/tooltip/types.d.ts +1 -1
  1251. package/build-types/tooltip/types.d.ts.map +1 -1
  1252. package/build-types/tree-select/index.d.ts.map +1 -1
  1253. package/build-types/truncate/hook.d.ts +4 -4
  1254. package/build-types/unit-control/index.d.ts +1 -1
  1255. package/build-types/unit-control/index.d.ts.map +1 -1
  1256. package/build-types/unit-control/styles/unit-control-styles.d.ts +1 -1
  1257. package/build-types/utils/colors-values.d.ts +28 -1
  1258. package/build-types/utils/colors-values.d.ts.map +1 -1
  1259. package/build-types/utils/hooks/use-update-effect.d.ts +1 -1
  1260. package/build-types/utils/use-deprecated-props.d.ts +1 -5
  1261. package/build-types/utils/use-deprecated-props.d.ts.map +1 -1
  1262. package/build-types/v-stack/hook.d.ts +4 -4
  1263. package/build-types/v-stack/stories/index.story.d.ts +1 -1
  1264. package/package.json +19 -20
  1265. package/src/angle-picker-control/README.md +0 -8
  1266. package/src/angle-picker-control/index.tsx +4 -23
  1267. package/src/angle-picker-control/stories/index.story.tsx +0 -3
  1268. package/src/angle-picker-control/styles/angle-picker-control-styles.tsx +0 -18
  1269. package/src/angle-picker-control/types.ts +2 -0
  1270. package/src/border-box-control/border-box-control/component.tsx +0 -1
  1271. package/src/border-box-control/border-box-control/hook.ts +5 -1
  1272. package/src/border-box-control/types.ts +6 -0
  1273. package/src/border-control/border-control/component.tsx +4 -0
  1274. package/src/border-control/border-control/hook.ts +22 -16
  1275. package/src/border-control/border-control-dropdown/component.tsx +2 -1
  1276. package/src/border-control/border-control-style-picker/component.tsx +31 -66
  1277. package/src/border-control/styles.ts +0 -15
  1278. package/src/border-control/types.ts +15 -1
  1279. package/src/box-control/all-input-control.tsx +57 -34
  1280. package/src/box-control/axial-input-controls.tsx +79 -69
  1281. package/src/box-control/index.tsx +47 -54
  1282. package/src/box-control/input-controls.tsx +114 -83
  1283. package/src/box-control/styles/box-control-styles.ts +21 -61
  1284. package/src/box-control/test/index.tsx +126 -18
  1285. package/src/box-control/types.ts +10 -21
  1286. package/src/box-control/utils.ts +43 -8
  1287. package/src/button/README.md +1 -1
  1288. package/src/button/index.tsx +21 -33
  1289. package/src/button/stories/e2e/index.story.tsx +6 -0
  1290. package/src/button/style.scss +17 -5
  1291. package/src/button/test/index.tsx +122 -0
  1292. package/src/button/types.ts +7 -3
  1293. package/src/card/test/__snapshots__/index.tsx.snap +3 -3
  1294. package/src/checkbox-control/README.md +1 -2
  1295. package/src/checkbox-control/stories/index.story.tsx +44 -0
  1296. package/src/checkbox-control/test/index.tsx +2 -2
  1297. package/src/checkbox-control/types.ts +2 -3
  1298. package/src/circular-option-picker/test/index.tsx +10 -16
  1299. package/src/color-picker/hsl-input.tsx +56 -30
  1300. package/src/color-picker/test/index.tsx +190 -16
  1301. package/src/combobox-control/index.tsx +1 -4
  1302. package/src/composite/current/index.ts +22 -0
  1303. package/src/composite/current/stories/index.story.tsx +86 -0
  1304. package/src/composite/current/stories/utils.tsx +61 -0
  1305. package/src/composite/index.ts +6 -21
  1306. package/src/composite/legacy/index.tsx +191 -0
  1307. package/src/composite/legacy/stories/index.story.tsx +205 -0
  1308. package/src/composite/legacy/stories/utils.tsx +67 -0
  1309. package/src/composite/legacy/test/index.tsx +579 -0
  1310. package/src/composite/v2.ts +3 -21
  1311. package/src/confirm-dialog/component.tsx +2 -0
  1312. package/src/context/wordpress-component.ts +1 -1
  1313. package/src/custom-gradient-picker/index.tsx +1 -22
  1314. package/src/custom-gradient-picker/stories/index.story.tsx +0 -3
  1315. package/src/custom-gradient-picker/style.scss +0 -7
  1316. package/src/custom-gradient-picker/types.ts +2 -0
  1317. package/src/custom-select-control/index.js +1 -5
  1318. package/src/custom-select-control-v2/index.tsx +7 -2
  1319. package/src/custom-select-control-v2/stories/index.story.tsx +1 -0
  1320. package/src/custom-select-control-v2/test/index.tsx +219 -0
  1321. package/src/date-time/time/timezone.tsx +1 -1
  1322. package/src/dimension-control/test/__snapshots__/index.test.js.snap +16 -16
  1323. package/src/divider/README.md +1 -1
  1324. package/src/dropdown-menu-v2/stories/index.story.tsx +1 -0
  1325. package/src/dropdown-menu-v2/styles.ts +1 -1
  1326. package/src/focal-point-picker/index.tsx +2 -2
  1327. package/src/focal-point-picker/styles/focal-point-picker-style.ts +26 -10
  1328. package/src/focal-point-picker/styles/focal-point-style.ts +21 -7
  1329. package/src/font-size-picker/README.md +0 -8
  1330. package/src/font-size-picker/font-size-picker-toggle-group.tsx +2 -9
  1331. package/src/font-size-picker/index.tsx +3 -21
  1332. package/src/font-size-picker/stories/index.story.tsx +0 -1
  1333. package/src/font-size-picker/styles.ts +0 -7
  1334. package/src/font-size-picker/test/index.tsx +16 -99
  1335. package/src/font-size-picker/types.ts +3 -1
  1336. package/src/form-token-field/index.tsx +1 -4
  1337. package/src/gradient-picker/README.md +0 -8
  1338. package/src/gradient-picker/index.tsx +32 -56
  1339. package/src/gradient-picker/stories/index.story.tsx +0 -1
  1340. package/src/gradient-picker/types.ts +2 -0
  1341. package/src/guide/style.scss +1 -1
  1342. package/src/input-control/backdrop.tsx +6 -1
  1343. package/src/input-control/index.tsx +1 -5
  1344. package/src/input-control/input-base.tsx +14 -7
  1345. package/src/input-control/styles/input-control-styles.tsx +6 -3
  1346. package/src/input-control/types.ts +10 -1
  1347. package/src/item-group/styles.ts +1 -4
  1348. package/src/mobile/image/index.native.js +117 -12
  1349. package/src/mobile/image/style.native.scss +6 -0
  1350. package/src/modal/style.scss +1 -1
  1351. package/src/navigation/menu/menu-title-search.tsx +6 -6
  1352. package/src/navigation/styles/navigation-styles.tsx +5 -27
  1353. package/src/number-control/index.tsx +1 -5
  1354. package/src/palette-edit/index.tsx +18 -16
  1355. package/src/palette-edit/stories/index.story.tsx +1 -0
  1356. package/src/palette-edit/{styles.js → styles.ts} +56 -13
  1357. package/src/palette-edit/test/index.tsx +326 -10
  1358. package/src/placeholder/style.scss +6 -5
  1359. package/src/popover/index.tsx +2 -0
  1360. package/src/popover/style.scss +1 -0
  1361. package/src/popover/test/index.tsx +250 -0
  1362. package/src/popover/types.ts +9 -0
  1363. package/src/progress-bar/stories/index.story.tsx +1 -0
  1364. package/src/query-controls/index.native.js +4 -4
  1365. package/src/query-controls/index.tsx +5 -5
  1366. package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.ts +3 -3
  1367. package/src/search-control/README.md +23 -3
  1368. package/src/search-control/index.tsx +88 -70
  1369. package/src/search-control/stories/index.story.tsx +1 -1
  1370. package/src/search-control/styles.ts +42 -0
  1371. package/src/search-control/test/index.tsx +107 -0
  1372. package/src/search-control/types.ts +37 -22
  1373. package/src/select-control/index.tsx +1 -5
  1374. package/src/slot-fill/bubbles-virtually/use-slot-fills.ts +1 -1
  1375. package/src/snackbar/index.tsx +19 -6
  1376. package/src/style.scss +0 -1
  1377. package/src/tabs/index.tsx +31 -27
  1378. package/src/tabs/stories/index.story.tsx +1 -0
  1379. package/src/tabs/tablist.tsx +19 -0
  1380. package/src/tabs/test/index.tsx +105 -47
  1381. package/src/theme/stories/index.story.tsx +1 -0
  1382. package/src/theme/styles.ts +3 -1
  1383. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +14 -14
  1384. package/src/toggle-group-control/test/index.tsx +73 -36
  1385. package/src/toggle-group-control/toggle-group-control/utils.ts +8 -3
  1386. package/src/toolbar/toolbar-button/README.md +2 -2
  1387. package/src/toolbar/toolbar-dropdown-menu/README.md +2 -2
  1388. package/src/toolbar/toolbar-item/README.md +2 -2
  1389. package/src/tooltip/index.tsx +29 -29
  1390. package/src/tooltip/test/index.tsx +32 -13
  1391. package/src/tooltip/types.ts +1 -1
  1392. package/src/tree-select/index.tsx +1 -5
  1393. package/src/unit-control/index.tsx +1 -5
  1394. package/src/utils/colors-values.js +45 -23
  1395. package/src/utils/hooks/use-update-effect.js +1 -1
  1396. package/src/utils/use-deprecated-props.ts +1 -18
  1397. package/tsconfig.tsbuildinfo +1 -1
  1398. package/build/border-control/border-control-style-picker/hook.js +0 -41
  1399. package/build/border-control/border-control-style-picker/hook.js.map +0 -1
  1400. package/build/box-control/styles/box-control-visualizer-styles.js +0 -93
  1401. package/build/box-control/styles/box-control-visualizer-styles.js.map +0 -1
  1402. package/build/box-control/unit-control.js +0 -76
  1403. package/build/box-control/unit-control.js.map +0 -1
  1404. package/build-module/border-control/border-control-style-picker/hook.js +0 -32
  1405. package/build-module/border-control/border-control-style-picker/hook.js.map +0 -1
  1406. package/build-module/box-control/styles/box-control-visualizer-styles.js +0 -86
  1407. package/build-module/box-control/styles/box-control-visualizer-styles.js.map +0 -1
  1408. package/build-module/box-control/unit-control.js +0 -68
  1409. package/build-module/box-control/unit-control.js.map +0 -1
  1410. package/build-types/border-control/border-control-style-picker/hook.d.ts +0 -267
  1411. package/build-types/border-control/border-control-style-picker/hook.d.ts.map +0 -1
  1412. package/build-types/box-control/styles/box-control-visualizer-styles.d.ts +0 -46
  1413. package/build-types/box-control/styles/box-control-visualizer-styles.d.ts.map +0 -1
  1414. package/build-types/box-control/unit-control.d.ts +0 -4
  1415. package/build-types/box-control/unit-control.d.ts.map +0 -1
  1416. package/build-types/composite/test/index.d.ts.map +0 -1
  1417. package/src/border-control/border-control-style-picker/hook.ts +0 -35
  1418. package/src/box-control/styles/box-control-visualizer-styles.ts +0 -75
  1419. package/src/box-control/unit-control.tsx +0 -74
  1420. package/src/composite/test/index.tsx +0 -576
  1421. package/src/search-control/style.scss +0 -71
  1422. /package/build-types/composite/{test → legacy/test}/index.d.ts +0 -0
@@ -0,0 +1,117 @@
1
+ import { createElement } from "react";
2
+ /**
3
+ * Composite is a component that may contain navigable items represented by
4
+ * CompositeItem. It's inspired by the WAI-ARIA Composite Role and implements
5
+ * all the keyboard navigation mechanisms to ensure that there's only one
6
+ * tab stop for the whole Composite element. This means that it can behave as
7
+ * a roving tabindex or aria-activedescendant container.
8
+ *
9
+ * @see https://ariakit.org/components/composite
10
+ */
11
+
12
+ /**
13
+ * WordPress dependencies
14
+ */
15
+ import { forwardRef } from '@wordpress/element';
16
+
17
+ /**
18
+ * Internal dependencies
19
+ */
20
+ import * as Current from '../current';
21
+ import { useInstanceId } from '@wordpress/compose';
22
+ function mapLegacyStatePropsToComponentProps(legacyProps) {
23
+ // If a `state` prop is provided, we unpack that; otherwise,
24
+ // the necessary props are provided directly in `legacyProps`.
25
+ if (legacyProps.state) {
26
+ const {
27
+ state,
28
+ ...rest
29
+ } = legacyProps;
30
+ const {
31
+ store,
32
+ ...props
33
+ } = mapLegacyStatePropsToComponentProps(state);
34
+ return {
35
+ ...rest,
36
+ ...props,
37
+ store
38
+ };
39
+ }
40
+ return legacyProps;
41
+ }
42
+ function proxyComposite(ProxiedComponent, propMap = {}) {
43
+ const displayName = ProxiedComponent.displayName;
44
+ const Component = legacyProps => {
45
+ const {
46
+ store,
47
+ ...rest
48
+ } = mapLegacyStatePropsToComponentProps(legacyProps);
49
+ const props = rest;
50
+ props.id = useInstanceId(store, props.baseId, props.id);
51
+ Object.entries(propMap).forEach(([from, to]) => {
52
+ if (props.hasOwnProperty(from)) {
53
+ Object.assign(props, {
54
+ [to]: props[from]
55
+ });
56
+ delete props[from];
57
+ }
58
+ });
59
+ delete props.baseId;
60
+ return createElement(ProxiedComponent, {
61
+ ...props,
62
+ store: store
63
+ });
64
+ };
65
+ Component.displayName = displayName;
66
+ return Component;
67
+ }
68
+
69
+ // The old `CompositeGroup` used to behave more like the current
70
+ // `CompositeRow`, but this has been split into two different
71
+ // components. We handle that difference by checking on the
72
+ // provided role, and returning the appropriate component.
73
+ const unproxiedCompositeGroup = forwardRef(({
74
+ role,
75
+ ...props
76
+ }, ref) => {
77
+ const Component = role === 'row' ? Current.CompositeRow : Current.CompositeGroup;
78
+ return createElement(Component, {
79
+ ref: ref,
80
+ role: role,
81
+ ...props
82
+ });
83
+ });
84
+ unproxiedCompositeGroup.displayName = 'CompositeGroup';
85
+ export const Composite = proxyComposite(Current.Composite, {
86
+ baseId: 'id'
87
+ });
88
+ export const CompositeGroup = proxyComposite(unproxiedCompositeGroup);
89
+ export const CompositeItem = proxyComposite(Current.CompositeItem, {
90
+ focusable: 'accessibleWhenDisabled'
91
+ });
92
+ export function useCompositeState(legacyStateOptions = {}) {
93
+ const {
94
+ baseId,
95
+ currentId: defaultActiveId,
96
+ orientation,
97
+ rtl = false,
98
+ loop: focusLoop = false,
99
+ wrap: focusWrap = false,
100
+ shift: focusShift = false,
101
+ // eslint-disable-next-line camelcase
102
+ unstable_virtual: virtualFocus
103
+ } = legacyStateOptions;
104
+ return {
105
+ baseId: useInstanceId(Composite, 'composite', baseId),
106
+ store: Current.useCompositeStore({
107
+ defaultActiveId,
108
+ rtl,
109
+ orientation,
110
+ focusLoop,
111
+ focusShift,
112
+ focusWrap,
113
+ virtualFocus
114
+ })
115
+ };
116
+ }
117
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["forwardRef","Current","useInstanceId","mapLegacyStatePropsToComponentProps","legacyProps","state","rest","store","props","proxyComposite","ProxiedComponent","propMap","displayName","Component","id","baseId","Object","entries","forEach","from","to","hasOwnProperty","assign","createElement","unproxiedCompositeGroup","role","ref","CompositeRow","CompositeGroup","Composite","CompositeItem","focusable","useCompositeState","legacyStateOptions","currentId","defaultActiveId","orientation","rtl","loop","focusLoop","wrap","focusWrap","shift","focusShift","unstable_virtual","virtualFocus","useCompositeStore"],"sources":["@wordpress/components/src/composite/legacy/index.tsx"],"sourcesContent":["/**\n * Composite is a component that may contain navigable items represented by\n * CompositeItem. It's inspired by the WAI-ARIA Composite Role and implements\n * all the keyboard navigation mechanisms to ensure that there's only one\n * tab stop for the whole Composite element. This means that it can behave as\n * a roving tabindex or aria-activedescendant container.\n *\n * @see https://ariakit.org/components/composite\n */\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as Current from '../current';\nimport { useInstanceId } from '@wordpress/compose';\n\ntype Orientation = 'horizontal' | 'vertical';\n\nexport interface LegacyStateOptions {\n\t/**\n\t * ID that will serve as a base for all the items IDs.\n\t */\n\tbaseId?: string;\n\t/**\n\t * Determines how next and previous functions will behave. If `rtl` is set\n\t * to `true`, they will be inverted. This only affects the composite widget\n\t * behavior. You still need to set `dir=\"rtl\"` on HTML/CSS.\n\t *\n\t * @default false\n\t */\n\trtl?: boolean;\n\t/**\n\t * Defines the orientation of the composite widget. If the composite has a\n\t * single row or column (one-dimensional), the orientation value determines\n\t * which arrow keys can be used to move focus.\n\t */\n\torientation?: Orientation;\n\t/**\n\t * The current focused item `id`.\n\t */\n\tcurrentId?: string;\n\t/**\n\t * Determines how focus moves from the start and end of rows and columns.\n\t *\n\t * @default false\n\t */\n\tloop?: boolean | Orientation;\n\t/**\n\t * If enabled, moving to the next item from the last one in a row or column\n\t * will focus the first item in the next row or column and vice-versa.\n\t *\n\t * ** Has effect only on two-dimensional composites. **\n\t *\n\t * @default false\n\t */\n\twrap?: boolean | Orientation;\n\t/**\n\t * If enabled, moving up or down when there's no next item or the next item\n\t * is disabled will shift to the item right before it.\n\t *\n\t * ** Has effect only on two-dimensional composites. **\n\t *\n\t * @default false\n\t */\n\tshift?: boolean;\n\tunstable_virtual?: boolean;\n}\n\ntype Component = React.FunctionComponent< any >;\n\ntype CompositeStore = ReturnType< typeof Current.useCompositeStore >;\ntype CompositeStoreState = { store: CompositeStore };\nexport type CompositeState = CompositeStoreState &\n\tRequired< Pick< LegacyStateOptions, 'baseId' > >;\n\n// Legacy composite components can either provide state through a\n// single `state` prop, or via individual props, usually through\n// spreading the state generated by `useCompositeState`.\n// That is, `<Composite* { ...state }>`.\nexport type CompositeStateProps =\n\t| { state: CompositeState }\n\t| ( CompositeState & { state?: never } );\ntype ComponentProps< C extends Component > = React.ComponentPropsWithRef< C >;\nexport type CompositeProps< C extends Component > = ComponentProps< C > &\n\tCompositeStateProps;\ntype CompositeComponent< C extends Component > = (\n\tprops: CompositeProps< C >\n) => React.ReactElement;\ntype CompositeComponentProps = CompositeState &\n\t(\n\t\t| ComponentProps< typeof Current.CompositeGroup >\n\t\t| ComponentProps< typeof Current.CompositeItem >\n\t\t| ComponentProps< typeof Current.CompositeRow >\n\t);\n\nfunction mapLegacyStatePropsToComponentProps(\n\tlegacyProps: CompositeStateProps\n): CompositeComponentProps {\n\t// If a `state` prop is provided, we unpack that; otherwise,\n\t// the necessary props are provided directly in `legacyProps`.\n\tif ( legacyProps.state ) {\n\t\tconst { state, ...rest } = legacyProps;\n\t\tconst { store, ...props } =\n\t\t\tmapLegacyStatePropsToComponentProps( state );\n\t\treturn { ...rest, ...props, store };\n\t}\n\n\treturn legacyProps;\n}\n\nfunction proxyComposite< C extends Component >(\n\tProxiedComponent: C | React.ForwardRefExoticComponent< C >,\n\tpropMap: Record< string, string > = {}\n): CompositeComponent< C > {\n\tconst displayName = ProxiedComponent.displayName;\n\tconst Component = ( legacyProps: CompositeStateProps ) => {\n\t\tconst { store, ...rest } =\n\t\t\tmapLegacyStatePropsToComponentProps( legacyProps );\n\t\tconst props = rest as ComponentProps< C >;\n\t\tprops.id = useInstanceId( store, props.baseId, props.id );\n\n\t\tObject.entries( propMap ).forEach( ( [ from, to ] ) => {\n\t\t\tif ( props.hasOwnProperty( from ) ) {\n\t\t\t\tObject.assign( props, { [ to ]: props[ from ] } );\n\t\t\t\tdelete props[ from ];\n\t\t\t}\n\t\t} );\n\n\t\tdelete props.baseId;\n\n\t\treturn <ProxiedComponent { ...props } store={ store } />;\n\t};\n\tComponent.displayName = displayName;\n\treturn Component;\n}\n\n// The old `CompositeGroup` used to behave more like the current\n// `CompositeRow`, but this has been split into two different\n// components. We handle that difference by checking on the\n// provided role, and returning the appropriate component.\nconst unproxiedCompositeGroup = forwardRef<\n\tany,\n\tReact.ComponentPropsWithoutRef<\n\t\ttypeof Current.CompositeGroup | typeof Current.CompositeRow\n\t>\n>( ( { role, ...props }, ref ) => {\n\tconst Component =\n\t\trole === 'row' ? Current.CompositeRow : Current.CompositeGroup;\n\treturn <Component ref={ ref } role={ role } { ...props } />;\n} );\nunproxiedCompositeGroup.displayName = 'CompositeGroup';\n\nexport const Composite = proxyComposite( Current.Composite, { baseId: 'id' } );\nexport const CompositeGroup = proxyComposite( unproxiedCompositeGroup );\nexport const CompositeItem = proxyComposite( Current.CompositeItem, {\n\tfocusable: 'accessibleWhenDisabled',\n} );\n\nexport function useCompositeState(\n\tlegacyStateOptions: LegacyStateOptions = {}\n): CompositeState {\n\tconst {\n\t\tbaseId,\n\t\tcurrentId: defaultActiveId,\n\t\torientation,\n\t\trtl = false,\n\t\tloop: focusLoop = false,\n\t\twrap: focusWrap = false,\n\t\tshift: focusShift = false,\n\t\t// eslint-disable-next-line camelcase\n\t\tunstable_virtual: virtualFocus,\n\t} = legacyStateOptions;\n\n\treturn {\n\t\tbaseId: useInstanceId( Composite, 'composite', baseId ),\n\t\tstore: Current.useCompositeStore( {\n\t\t\tdefaultActiveId,\n\t\t\trtl,\n\t\t\torientation,\n\t\t\tfocusLoop,\n\t\t\tfocusShift,\n\t\t\tfocusWrap,\n\t\t\tvirtualFocus,\n\t\t} ),\n\t};\n}\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAASA,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,OAAO,KAAKC,OAAO,MAAM,YAAY;AACrC,SAASC,aAAa,QAAQ,oBAAoB;AAiFlD,SAASC,mCAAmCA,CAC3CC,WAAgC,EACN;EAC1B;EACA;EACA,IAAKA,WAAW,CAACC,KAAK,EAAG;IACxB,MAAM;MAAEA,KAAK;MAAE,GAAGC;IAAK,CAAC,GAAGF,WAAW;IACtC,MAAM;MAAEG,KAAK;MAAE,GAAGC;IAAM,CAAC,GACxBL,mCAAmC,CAAEE,KAAM,CAAC;IAC7C,OAAO;MAAE,GAAGC,IAAI;MAAE,GAAGE,KAAK;MAAED;IAAM,CAAC;EACpC;EAEA,OAAOH,WAAW;AACnB;AAEA,SAASK,cAAcA,CACtBC,gBAA0D,EAC1DC,OAAiC,GAAG,CAAC,CAAC,EACZ;EAC1B,MAAMC,WAAW,GAAGF,gBAAgB,CAACE,WAAW;EAChD,MAAMC,SAAS,GAAKT,WAAgC,IAAM;IACzD,MAAM;MAAEG,KAAK;MAAE,GAAGD;IAAK,CAAC,GACvBH,mCAAmC,CAAEC,WAAY,CAAC;IACnD,MAAMI,KAAK,GAAGF,IAA2B;IACzCE,KAAK,CAACM,EAAE,GAAGZ,aAAa,CAAEK,KAAK,EAAEC,KAAK,CAACO,MAAM,EAAEP,KAAK,CAACM,EAAG,CAAC;IAEzDE,MAAM,CAACC,OAAO,CAAEN,OAAQ,CAAC,CAACO,OAAO,CAAE,CAAE,CAAEC,IAAI,EAAEC,EAAE,CAAE,KAAM;MACtD,IAAKZ,KAAK,CAACa,cAAc,CAAEF,IAAK,CAAC,EAAG;QACnCH,MAAM,CAACM,MAAM,CAAEd,KAAK,EAAE;UAAE,CAAEY,EAAE,GAAIZ,KAAK,CAAEW,IAAI;QAAG,CAAE,CAAC;QACjD,OAAOX,KAAK,CAAEW,IAAI,CAAE;MACrB;IACD,CAAE,CAAC;IAEH,OAAOX,KAAK,CAACO,MAAM;IAEnB,OAAOQ,aAAA,CAACb,gBAAgB;MAAA,GAAMF,KAAK;MAAGD,KAAK,EAAGA;IAAO,CAAE,CAAC;EACzD,CAAC;EACDM,SAAS,CAACD,WAAW,GAAGA,WAAW;EACnC,OAAOC,SAAS;AACjB;;AAEA;AACA;AACA;AACA;AACA,MAAMW,uBAAuB,GAAGxB,UAAU,CAKvC,CAAE;EAAEyB,IAAI;EAAE,GAAGjB;AAAM,CAAC,EAAEkB,GAAG,KAAM;EACjC,MAAMb,SAAS,GACdY,IAAI,KAAK,KAAK,GAAGxB,OAAO,CAAC0B,YAAY,GAAG1B,OAAO,CAAC2B,cAAc;EAC/D,OAAOL,aAAA,CAACV,SAAS;IAACa,GAAG,EAAGA,GAAK;IAACD,IAAI,EAAGA,IAAM;IAAA,GAAMjB;EAAK,CAAI,CAAC;AAC5D,CAAE,CAAC;AACHgB,uBAAuB,CAACZ,WAAW,GAAG,gBAAgB;AAEtD,OAAO,MAAMiB,SAAS,GAAGpB,cAAc,CAAER,OAAO,CAAC4B,SAAS,EAAE;EAAEd,MAAM,EAAE;AAAK,CAAE,CAAC;AAC9E,OAAO,MAAMa,cAAc,GAAGnB,cAAc,CAAEe,uBAAwB,CAAC;AACvE,OAAO,MAAMM,aAAa,GAAGrB,cAAc,CAAER,OAAO,CAAC6B,aAAa,EAAE;EACnEC,SAAS,EAAE;AACZ,CAAE,CAAC;AAEH,OAAO,SAASC,iBAAiBA,CAChCC,kBAAsC,GAAG,CAAC,CAAC,EAC1B;EACjB,MAAM;IACLlB,MAAM;IACNmB,SAAS,EAAEC,eAAe;IAC1BC,WAAW;IACXC,GAAG,GAAG,KAAK;IACXC,IAAI,EAAEC,SAAS,GAAG,KAAK;IACvBC,IAAI,EAAEC,SAAS,GAAG,KAAK;IACvBC,KAAK,EAAEC,UAAU,GAAG,KAAK;IACzB;IACAC,gBAAgB,EAAEC;EACnB,CAAC,GAAGZ,kBAAkB;EAEtB,OAAO;IACNlB,MAAM,EAAEb,aAAa,CAAE2B,SAAS,EAAE,WAAW,EAAEd,MAAO,CAAC;IACvDR,KAAK,EAAEN,OAAO,CAAC6C,iBAAiB,CAAE;MACjCX,eAAe;MACfE,GAAG;MACHD,WAAW;MACXG,SAAS;MACTI,UAAU;MACVF,SAAS;MACTI;IACD,CAAE;EACH,CAAC;AACF"}
@@ -1,15 +1,5 @@
1
- /**
2
- * Composite is a component that may contain navigable items represented by
3
- * CompositeItem. It's inspired by the WAI-ARIA Composite Role and implements
4
- * all the keyboard navigation mechanisms to ensure that there's only one
5
- * tab stop for the whole Composite element. This means that it can behave as
6
- * a roving tabindex or aria-activedescendant container.
7
- *
8
- * @see https://ariakit.org/components/composite
9
- */
1
+ // Although we have migrated away from Reakit, the 'current'
2
+ // Ariakit implementation is still considered a v2.
10
3
 
11
- /* eslint-disable-next-line no-restricted-imports */
12
- export { Composite, CompositeGroup, CompositeGroupLabel, CompositeItem, CompositeRow, useCompositeStore } from '@ariakit/react';
13
-
14
- /* eslint-disable-next-line no-restricted-imports */
4
+ export * from './current';
15
5
  //# sourceMappingURL=v2.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Composite","CompositeGroup","CompositeGroupLabel","CompositeItem","CompositeRow","useCompositeStore"],"sources":["@wordpress/components/src/composite/v2.ts"],"sourcesContent":["/**\n * Composite is a component that may contain navigable items represented by\n * CompositeItem. It's inspired by the WAI-ARIA Composite Role and implements\n * all the keyboard navigation mechanisms to ensure that there's only one\n * tab stop for the whole Composite element. This means that it can behave as\n * a roving tabindex or aria-activedescendant container.\n *\n * @see https://ariakit.org/components/composite\n */\n\n/* eslint-disable-next-line no-restricted-imports */\nexport {\n\tComposite,\n\tCompositeGroup,\n\tCompositeGroupLabel,\n\tCompositeItem,\n\tCompositeRow,\n\tuseCompositeStore,\n} from '@ariakit/react';\n\n/* eslint-disable-next-line no-restricted-imports */\nexport type { CompositeStore } from '@ariakit/react';\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,SACCA,SAAS,EACTC,cAAc,EACdC,mBAAmB,EACnBC,aAAa,EACbC,YAAY,EACZC,iBAAiB,QACX,gBAAgB;;AAEvB"}
1
+ {"version":3,"names":[],"sources":["@wordpress/components/src/composite/v2.ts"],"sourcesContent":["// Although we have migrated away from Reakit, the 'current'\n// Ariakit implementation is still considered a v2.\n\nexport * from './current';\n"],"mappings":"AAAA;AACA;;AAEA,cAAc,WAAW"}
@@ -72,10 +72,12 @@ const UnconnectedConfirmDialog = (props, forwardedRef) => {
72
72
  direction: "row",
73
73
  justify: "flex-end"
74
74
  }, createElement(Button, {
75
+ __next40pxDefaultSize: true,
75
76
  ref: cancelButtonRef,
76
77
  variant: "tertiary",
77
78
  onClick: handleEvent(onCancel)
78
79
  }, cancelLabel), createElement(Button, {
80
+ __next40pxDefaultSize: true,
79
81
  ref: confirmButtonRef,
80
82
  variant: "primary",
81
83
  onClick: handleEvent(onConfirm)
@@ -1 +1 @@
1
- {"version":3,"names":["__","useCallback","useEffect","useRef","useState","Modal","useContextSystem","contextConnect","Flex","Button","Text","VStack","styles","useCx","UnconnectedConfirmDialog","props","forwardedRef","isOpen","isOpenProp","onConfirm","onCancel","children","confirmButtonText","cancelButtonText","otherProps","cx","wrapperClassName","wrapper","cancelButtonRef","confirmButtonRef","setIsOpen","shouldSelfClose","setShouldSelfClose","isIsOpenSet","handleEvent","callback","event","handleEnter","isConfirmOrCancelButton","target","current","key","cancelLabel","confirmLabel","createElement","Fragment","onRequestClose","onKeyDown","closeButtonLabel","isDismissible","ref","overlayClassName","__experimentalHideHeader","spacing","direction","justify","variant","onClick","ConfirmDialog"],"sources":["@wordpress/components/src/confirm-dialog/component.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useCallback, useEffect, useRef, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Modal from '../modal';\nimport type { ConfirmDialogProps, DialogInputEvent } from './types';\nimport type { WordPressComponentProps } from '../context';\nimport { useContextSystem, contextConnect } from '../context';\nimport { Flex } from '../flex';\nimport Button from '../button';\nimport { Text } from '../text';\nimport { VStack } from '../v-stack';\nimport * as styles from './styles';\nimport { useCx } from '../utils/hooks/use-cx';\n\nconst UnconnectedConfirmDialog = (\n\tprops: WordPressComponentProps< ConfirmDialogProps, 'div', false >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\tisOpen: isOpenProp,\n\t\tonConfirm,\n\t\tonCancel,\n\t\tchildren,\n\t\tconfirmButtonText,\n\t\tcancelButtonText,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ConfirmDialog' );\n\n\tconst cx = useCx();\n\tconst wrapperClassName = cx( styles.wrapper );\n\tconst cancelButtonRef = useRef();\n\tconst confirmButtonRef = useRef();\n\n\tconst [ isOpen, setIsOpen ] = useState< boolean >();\n\tconst [ shouldSelfClose, setShouldSelfClose ] = useState< boolean >();\n\n\tuseEffect( () => {\n\t\t// We only allow the dialog to close itself if `isOpenProp` is *not* set.\n\t\t// If `isOpenProp` is set, then it (probably) means it's controlled by a\n\t\t// parent component. In that case, `shouldSelfClose` might do more harm than\n\t\t// good, so we disable it.\n\t\tconst isIsOpenSet = typeof isOpenProp !== 'undefined';\n\t\tsetIsOpen( isIsOpenSet ? isOpenProp : true );\n\t\tsetShouldSelfClose( ! isIsOpenSet );\n\t}, [ isOpenProp ] );\n\n\tconst handleEvent = useCallback(\n\t\t( callback?: ( event: DialogInputEvent ) => void ) =>\n\t\t\t( event: DialogInputEvent ) => {\n\t\t\t\tcallback?.( event );\n\t\t\t\tif ( shouldSelfClose ) {\n\t\t\t\t\tsetIsOpen( false );\n\t\t\t\t}\n\t\t\t},\n\t\t[ shouldSelfClose, setIsOpen ]\n\t);\n\n\tconst handleEnter = useCallback(\n\t\t( event: React.KeyboardEvent< HTMLDivElement > ) => {\n\t\t\t// Avoid triggering the 'confirm' action when a button is focused,\n\t\t\t// as this can cause a double submission.\n\t\t\tconst isConfirmOrCancelButton =\n\t\t\t\tevent.target === cancelButtonRef.current ||\n\t\t\t\tevent.target === confirmButtonRef.current;\n\n\t\t\tif ( ! isConfirmOrCancelButton && event.key === 'Enter' ) {\n\t\t\t\thandleEvent( onConfirm )( event );\n\t\t\t}\n\t\t},\n\t\t[ handleEvent, onConfirm ]\n\t);\n\n\tconst cancelLabel = cancelButtonText ?? __( 'Cancel' );\n\tconst confirmLabel = confirmButtonText ?? __( 'OK' );\n\n\treturn (\n\t\t<>\n\t\t\t{ isOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\tonRequestClose={ handleEvent( onCancel ) }\n\t\t\t\t\tonKeyDown={ handleEnter }\n\t\t\t\t\tcloseButtonLabel={ cancelLabel }\n\t\t\t\t\tisDismissible={ true }\n\t\t\t\t\tref={ forwardedRef }\n\t\t\t\t\toverlayClassName={ wrapperClassName }\n\t\t\t\t\t__experimentalHideHeader\n\t\t\t\t\t{ ...otherProps }\n\t\t\t\t>\n\t\t\t\t\t<VStack spacing={ 8 }>\n\t\t\t\t\t\t<Text>{ children }</Text>\n\t\t\t\t\t\t<Flex direction=\"row\" justify=\"flex-end\">\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tref={ cancelButtonRef }\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleEvent( onCancel ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ cancelLabel }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tref={ confirmButtonRef }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tonClick={ handleEvent( onConfirm ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ confirmLabel }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</VStack>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\n/**\n * `ConfirmDialog` is built of top of [`Modal`](/packages/components/src/modal/README.md)\n * and displays a confirmation dialog, with _confirm_ and _cancel_ buttons.\n * The dialog is confirmed by clicking the _confirm_ button or by pressing the `Enter` key.\n * It is cancelled (closed) by clicking the _cancel_ button, by pressing the `ESC` key, or by\n * clicking outside the dialog focus (i.e, the overlay).\n *\n * `ConfirmDialog` has two main implicit modes: controlled and uncontrolled.\n *\n * UnControlled:\n *\n * Allows the component to be used standalone, just by declaring it as part of another React's component render method:\n * - It will be automatically open (displayed) upon mounting;\n * - It will be automatically closed when clicking the _cancel_ button, by pressing the `ESC` key, or by clicking outside the dialog focus (i.e, the overlay);\n * - `onCancel` is not mandatory but can be passed. Even if passed, the dialog will still be able to close itself.\n *\n * Activating this mode is as simple as omitting the `isOpen` prop. The only mandatory prop, in this case, is the `onConfirm` callback. The message is passed as the `children`. You can pass any JSX you'd like, which allows to further format the message or include sub-component if you'd like:\n *\n * ```jsx\n * import { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n *\n * function Example() {\n * \treturn (\n * \t\t<ConfirmDialog onConfirm={ () => console.debug( ' Confirmed! ' ) }>\n * \t\t\tAre you sure? <strong>This action cannot be undone!</strong>\n * \t\t</ConfirmDialog>\n * \t);\n * }\n * ```\n *\n *\n * Controlled mode:\n * Let the parent component control when the dialog is open/closed. It's activated when a\n * boolean value is passed to `isOpen`:\n * - It will not be automatically closed. You need to let it know when to open/close by updating the value of the `isOpen` prop;\n * - Both `onConfirm` and the `onCancel` callbacks are mandatory props in this mode;\n * - You'll want to update the state that controls `isOpen` by updating it from the `onCancel` and `onConfirm` callbacks.\n *\n *```jsx\n * import { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * function Example() {\n * \tconst [ isOpen, setIsOpen ] = useState( true );\n *\n * \tconst handleConfirm = () => {\n * \t\tconsole.debug( 'Confirmed!' );\n * \t\tsetIsOpen( false );\n * \t};\n *\n * \tconst handleCancel = () => {\n * \t\tconsole.debug( 'Cancelled!' );\n * \t\tsetIsOpen( false );\n * \t};\n *\n * \treturn (\n * \t\t<ConfirmDialog\n * \t\t\tisOpen={ isOpen }\n * \t\t\tonConfirm={ handleConfirm }\n * \t\t\tonCancel={ handleCancel }\n * \t\t>\n * \t\t\tAre you sure? <strong>This action cannot be undone!</strong>\n * \t\t</ConfirmDialog>\n * \t);\n * }\n * ```\n */\nexport const ConfirmDialog = contextConnect(\n\tUnconnectedConfirmDialog,\n\t'ConfirmDialog'\n);\nexport default ConfirmDialog;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,oBAAoB;;AAE7E;AACA;AACA;AACA,OAAOC,KAAK,MAAM,UAAU;AAG5B,SAASC,gBAAgB,EAAEC,cAAc,QAAQ,YAAY;AAC7D,SAASC,IAAI,QAAQ,SAAS;AAC9B,OAAOC,MAAM,MAAM,WAAW;AAC9B,SAASC,IAAI,QAAQ,SAAS;AAC9B,SAASC,MAAM,QAAQ,YAAY;AACnC,OAAO,KAAKC,MAAM,MAAM,UAAU;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAE7C,MAAMC,wBAAwB,GAAGA,CAChCC,KAAkE,EAClEC,YAAuC,KACnC;EACJ,MAAM;IACLC,MAAM,EAAEC,UAAU;IAClBC,SAAS;IACTC,QAAQ;IACRC,QAAQ;IACRC,iBAAiB;IACjBC,gBAAgB;IAChB,GAAGC;EACJ,CAAC,GAAGlB,gBAAgB,CAAES,KAAK,EAAE,eAAgB,CAAC;EAE9C,MAAMU,EAAE,GAAGZ,KAAK,CAAC,CAAC;EAClB,MAAMa,gBAAgB,GAAGD,EAAE,CAAEb,MAAM,CAACe,OAAQ,CAAC;EAC7C,MAAMC,eAAe,GAAGzB,MAAM,CAAC,CAAC;EAChC,MAAM0B,gBAAgB,GAAG1B,MAAM,CAAC,CAAC;EAEjC,MAAM,CAAEc,MAAM,EAAEa,SAAS,CAAE,GAAG1B,QAAQ,CAAY,CAAC;EACnD,MAAM,CAAE2B,eAAe,EAAEC,kBAAkB,CAAE,GAAG5B,QAAQ,CAAY,CAAC;EAErEF,SAAS,CAAE,MAAM;IAChB;IACA;IACA;IACA;IACA,MAAM+B,WAAW,GAAG,OAAOf,UAAU,KAAK,WAAW;IACrDY,SAAS,CAAEG,WAAW,GAAGf,UAAU,GAAG,IAAK,CAAC;IAC5Cc,kBAAkB,CAAE,CAAEC,WAAY,CAAC;EACpC,CAAC,EAAE,CAAEf,UAAU,CAAG,CAAC;EAEnB,MAAMgB,WAAW,GAAGjC,WAAW,CAC5BkC,QAA8C,IAC7CC,KAAuB,IAAM;IAC9BD,QAAQ,GAAIC,KAAM,CAAC;IACnB,IAAKL,eAAe,EAAG;MACtBD,SAAS,CAAE,KAAM,CAAC;IACnB;EACD,CAAC,EACF,CAAEC,eAAe,EAAED,SAAS,CAC7B,CAAC;EAED,MAAMO,WAAW,GAAGpC,WAAW,CAC5BmC,KAA4C,IAAM;IACnD;IACA;IACA,MAAME,uBAAuB,GAC5BF,KAAK,CAACG,MAAM,KAAKX,eAAe,CAACY,OAAO,IACxCJ,KAAK,CAACG,MAAM,KAAKV,gBAAgB,CAACW,OAAO;IAE1C,IAAK,CAAEF,uBAAuB,IAAIF,KAAK,CAACK,GAAG,KAAK,OAAO,EAAG;MACzDP,WAAW,CAAEf,SAAU,CAAC,CAAEiB,KAAM,CAAC;IAClC;EACD,CAAC,EACD,CAAEF,WAAW,EAAEf,SAAS,CACzB,CAAC;EAED,MAAMuB,WAAW,GAAGnB,gBAAgB,aAAhBA,gBAAgB,cAAhBA,gBAAgB,GAAIvB,EAAE,CAAE,QAAS,CAAC;EACtD,MAAM2C,YAAY,GAAGrB,iBAAiB,aAAjBA,iBAAiB,cAAjBA,iBAAiB,GAAItB,EAAE,CAAE,IAAK,CAAC;EAEpD,OACC4C,aAAA,CAAAC,QAAA,QACG5B,MAAM,IACP2B,aAAA,CAACvC,KAAK;IACLyC,cAAc,EAAGZ,WAAW,CAAEd,QAAS,CAAG;IAC1C2B,SAAS,EAAGV,WAAa;IACzBW,gBAAgB,EAAGN,WAAa;IAChCO,aAAa,EAAG,IAAM;IACtBC,GAAG,EAAGlC,YAAc;IACpBmC,gBAAgB,EAAGzB,gBAAkB;IACrC0B,wBAAwB;IAAA,GACnB5B;EAAU,GAEfoB,aAAA,CAACjC,MAAM;IAAC0C,OAAO,EAAG;EAAG,GACpBT,aAAA,CAAClC,IAAI,QAAGW,QAAgB,CAAC,EACzBuB,aAAA,CAACpC,IAAI;IAAC8C,SAAS,EAAC,KAAK;IAACC,OAAO,EAAC;EAAU,GACvCX,aAAA,CAACnC,MAAM;IACNyC,GAAG,EAAGtB,eAAiB;IACvB4B,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAGvB,WAAW,CAAEd,QAAS;EAAG,GAEjCsB,WACK,CAAC,EACTE,aAAA,CAACnC,MAAM;IACNyC,GAAG,EAAGrB,gBAAkB;IACxB2B,OAAO,EAAC,SAAS;IACjBC,OAAO,EAAGvB,WAAW,CAAEf,SAAU;EAAG,GAElCwB,YACK,CACH,CACC,CACF,CAEP,CAAC;AAEL,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMe,aAAa,GAAGnD,cAAc,CAC1CO,wBAAwB,EACxB,eACD,CAAC;AACD,eAAe4C,aAAa"}
1
+ {"version":3,"names":["__","useCallback","useEffect","useRef","useState","Modal","useContextSystem","contextConnect","Flex","Button","Text","VStack","styles","useCx","UnconnectedConfirmDialog","props","forwardedRef","isOpen","isOpenProp","onConfirm","onCancel","children","confirmButtonText","cancelButtonText","otherProps","cx","wrapperClassName","wrapper","cancelButtonRef","confirmButtonRef","setIsOpen","shouldSelfClose","setShouldSelfClose","isIsOpenSet","handleEvent","callback","event","handleEnter","isConfirmOrCancelButton","target","current","key","cancelLabel","confirmLabel","createElement","Fragment","onRequestClose","onKeyDown","closeButtonLabel","isDismissible","ref","overlayClassName","__experimentalHideHeader","spacing","direction","justify","__next40pxDefaultSize","variant","onClick","ConfirmDialog"],"sources":["@wordpress/components/src/confirm-dialog/component.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useCallback, useEffect, useRef, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Modal from '../modal';\nimport type { ConfirmDialogProps, DialogInputEvent } from './types';\nimport type { WordPressComponentProps } from '../context';\nimport { useContextSystem, contextConnect } from '../context';\nimport { Flex } from '../flex';\nimport Button from '../button';\nimport { Text } from '../text';\nimport { VStack } from '../v-stack';\nimport * as styles from './styles';\nimport { useCx } from '../utils/hooks/use-cx';\n\nconst UnconnectedConfirmDialog = (\n\tprops: WordPressComponentProps< ConfirmDialogProps, 'div', false >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\tisOpen: isOpenProp,\n\t\tonConfirm,\n\t\tonCancel,\n\t\tchildren,\n\t\tconfirmButtonText,\n\t\tcancelButtonText,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ConfirmDialog' );\n\n\tconst cx = useCx();\n\tconst wrapperClassName = cx( styles.wrapper );\n\tconst cancelButtonRef = useRef();\n\tconst confirmButtonRef = useRef();\n\n\tconst [ isOpen, setIsOpen ] = useState< boolean >();\n\tconst [ shouldSelfClose, setShouldSelfClose ] = useState< boolean >();\n\n\tuseEffect( () => {\n\t\t// We only allow the dialog to close itself if `isOpenProp` is *not* set.\n\t\t// If `isOpenProp` is set, then it (probably) means it's controlled by a\n\t\t// parent component. In that case, `shouldSelfClose` might do more harm than\n\t\t// good, so we disable it.\n\t\tconst isIsOpenSet = typeof isOpenProp !== 'undefined';\n\t\tsetIsOpen( isIsOpenSet ? isOpenProp : true );\n\t\tsetShouldSelfClose( ! isIsOpenSet );\n\t}, [ isOpenProp ] );\n\n\tconst handleEvent = useCallback(\n\t\t( callback?: ( event: DialogInputEvent ) => void ) =>\n\t\t\t( event: DialogInputEvent ) => {\n\t\t\t\tcallback?.( event );\n\t\t\t\tif ( shouldSelfClose ) {\n\t\t\t\t\tsetIsOpen( false );\n\t\t\t\t}\n\t\t\t},\n\t\t[ shouldSelfClose, setIsOpen ]\n\t);\n\n\tconst handleEnter = useCallback(\n\t\t( event: React.KeyboardEvent< HTMLDivElement > ) => {\n\t\t\t// Avoid triggering the 'confirm' action when a button is focused,\n\t\t\t// as this can cause a double submission.\n\t\t\tconst isConfirmOrCancelButton =\n\t\t\t\tevent.target === cancelButtonRef.current ||\n\t\t\t\tevent.target === confirmButtonRef.current;\n\n\t\t\tif ( ! isConfirmOrCancelButton && event.key === 'Enter' ) {\n\t\t\t\thandleEvent( onConfirm )( event );\n\t\t\t}\n\t\t},\n\t\t[ handleEvent, onConfirm ]\n\t);\n\n\tconst cancelLabel = cancelButtonText ?? __( 'Cancel' );\n\tconst confirmLabel = confirmButtonText ?? __( 'OK' );\n\n\treturn (\n\t\t<>\n\t\t\t{ isOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\tonRequestClose={ handleEvent( onCancel ) }\n\t\t\t\t\tonKeyDown={ handleEnter }\n\t\t\t\t\tcloseButtonLabel={ cancelLabel }\n\t\t\t\t\tisDismissible={ true }\n\t\t\t\t\tref={ forwardedRef }\n\t\t\t\t\toverlayClassName={ wrapperClassName }\n\t\t\t\t\t__experimentalHideHeader\n\t\t\t\t\t{ ...otherProps }\n\t\t\t\t>\n\t\t\t\t\t<VStack spacing={ 8 }>\n\t\t\t\t\t\t<Text>{ children }</Text>\n\t\t\t\t\t\t<Flex direction=\"row\" justify=\"flex-end\">\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tref={ cancelButtonRef }\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleEvent( onCancel ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ cancelLabel }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tref={ confirmButtonRef }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tonClick={ handleEvent( onConfirm ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ confirmLabel }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</VStack>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\n/**\n * `ConfirmDialog` is built of top of [`Modal`](/packages/components/src/modal/README.md)\n * and displays a confirmation dialog, with _confirm_ and _cancel_ buttons.\n * The dialog is confirmed by clicking the _confirm_ button or by pressing the `Enter` key.\n * It is cancelled (closed) by clicking the _cancel_ button, by pressing the `ESC` key, or by\n * clicking outside the dialog focus (i.e, the overlay).\n *\n * `ConfirmDialog` has two main implicit modes: controlled and uncontrolled.\n *\n * UnControlled:\n *\n * Allows the component to be used standalone, just by declaring it as part of another React's component render method:\n * - It will be automatically open (displayed) upon mounting;\n * - It will be automatically closed when clicking the _cancel_ button, by pressing the `ESC` key, or by clicking outside the dialog focus (i.e, the overlay);\n * - `onCancel` is not mandatory but can be passed. Even if passed, the dialog will still be able to close itself.\n *\n * Activating this mode is as simple as omitting the `isOpen` prop. The only mandatory prop, in this case, is the `onConfirm` callback. The message is passed as the `children`. You can pass any JSX you'd like, which allows to further format the message or include sub-component if you'd like:\n *\n * ```jsx\n * import { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n *\n * function Example() {\n * \treturn (\n * \t\t<ConfirmDialog onConfirm={ () => console.debug( ' Confirmed! ' ) }>\n * \t\t\tAre you sure? <strong>This action cannot be undone!</strong>\n * \t\t</ConfirmDialog>\n * \t);\n * }\n * ```\n *\n *\n * Controlled mode:\n * Let the parent component control when the dialog is open/closed. It's activated when a\n * boolean value is passed to `isOpen`:\n * - It will not be automatically closed. You need to let it know when to open/close by updating the value of the `isOpen` prop;\n * - Both `onConfirm` and the `onCancel` callbacks are mandatory props in this mode;\n * - You'll want to update the state that controls `isOpen` by updating it from the `onCancel` and `onConfirm` callbacks.\n *\n *```jsx\n * import { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * function Example() {\n * \tconst [ isOpen, setIsOpen ] = useState( true );\n *\n * \tconst handleConfirm = () => {\n * \t\tconsole.debug( 'Confirmed!' );\n * \t\tsetIsOpen( false );\n * \t};\n *\n * \tconst handleCancel = () => {\n * \t\tconsole.debug( 'Cancelled!' );\n * \t\tsetIsOpen( false );\n * \t};\n *\n * \treturn (\n * \t\t<ConfirmDialog\n * \t\t\tisOpen={ isOpen }\n * \t\t\tonConfirm={ handleConfirm }\n * \t\t\tonCancel={ handleCancel }\n * \t\t>\n * \t\t\tAre you sure? <strong>This action cannot be undone!</strong>\n * \t\t</ConfirmDialog>\n * \t);\n * }\n * ```\n */\nexport const ConfirmDialog = contextConnect(\n\tUnconnectedConfirmDialog,\n\t'ConfirmDialog'\n);\nexport default ConfirmDialog;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["@wordpress/components/src/context/wordpress-component.ts"],"sourcesContent":["/**\n * External dependencies\n */\nimport type * as React from 'react';\n\n// Based on https://github.com/reakit/reakit/blob/master/packages/reakit-utils/src/types.ts\nexport type WordPressComponentProps<\n\t/** Prop types. */\n\tP,\n\t/** The HTML element to inherit props from. */\n\tT extends React.ElementType | null,\n\t/** Supports polymorphism through the `as` prop. */\n\tIsPolymorphic extends boolean = true,\n> = P &\n\t( T extends React.ElementType\n\t\t? // The `children` prop is being explicitly omitted since it is otherwise implicitly added\n\t\t // by `ComponentPropsWithRef`. The context is that components should require the `children`\n\t\t // prop explicitly when needed (see https://github.com/WordPress/gutenberg/pull/31817).\n\t\t Omit<\n\t\t\t\tReact.ComponentPropsWithoutRef< T >,\n\t\t\t\t'as' | keyof P | 'children'\n\t\t >\n\t\t: {} ) &\n\t( IsPolymorphic extends true\n\t\t? {\n\t\t\t\t/** The HTML element or React component to render the component as. */\n\t\t\t\tas?: T | keyof JSX.IntrinsicElements;\n\t\t }\n\t\t: {} );\n\nexport type WordPressComponent<\n\tT extends React.ElementType | null,\n\tO,\n\tIsPolymorphic extends boolean,\n> = {\n\t< TT extends React.ElementType >(\n\t\tprops: WordPressComponentProps< O, TT, IsPolymorphic > &\n\t\t\t( IsPolymorphic extends true ? { as: TT } : {} )\n\t): JSX.Element | null;\n\t(\n\t\tprops: WordPressComponentProps< O, T, IsPolymorphic >\n\t): JSX.Element | null;\n\tdisplayName?: string;\n\t/**\n\t * A CSS selector used to fake component interpolation in styled components\n\t * for components not generated by `styled`. Anything passed to `contextConnect`\n\t * will get this property.\n\t *\n\t * We restrict it to a class to align with the already existing class names that\n\t * are generated by the context system.\n\t */\n\tselector?: `.${ string }`;\n};\n\nexport type WordPressComponentFromProps<\n\tProps,\n\tForwardsRef extends boolean = true,\n> = Props extends WordPressComponentProps< infer P, infer T, infer I >\n\t? WordPressComponent<\n\t\t\tT,\n\t\t\tP & ( ForwardsRef extends true ? React.RefAttributes< any > : {} ),\n\t\t\tI\n\t >\n\t: never;\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["@wordpress/components/src/context/wordpress-component.ts"],"sourcesContent":["/**\n * External dependencies\n */\nimport type * as React from 'react';\n\n// Based on https://github.com/ariakit/ariakit/blob/reakit/packages/reakit-utils/src/types.ts\nexport type WordPressComponentProps<\n\t/** Prop types. */\n\tP,\n\t/** The HTML element to inherit props from. */\n\tT extends React.ElementType | null,\n\t/** Supports polymorphism through the `as` prop. */\n\tIsPolymorphic extends boolean = true,\n> = P &\n\t( T extends React.ElementType\n\t\t? // The `children` prop is being explicitly omitted since it is otherwise implicitly added\n\t\t // by `ComponentPropsWithRef`. The context is that components should require the `children`\n\t\t // prop explicitly when needed (see https://github.com/WordPress/gutenberg/pull/31817).\n\t\t Omit<\n\t\t\t\tReact.ComponentPropsWithoutRef< T >,\n\t\t\t\t'as' | keyof P | 'children'\n\t\t >\n\t\t: {} ) &\n\t( IsPolymorphic extends true\n\t\t? {\n\t\t\t\t/** The HTML element or React component to render the component as. */\n\t\t\t\tas?: T | keyof JSX.IntrinsicElements;\n\t\t }\n\t\t: {} );\n\nexport type WordPressComponent<\n\tT extends React.ElementType | null,\n\tO,\n\tIsPolymorphic extends boolean,\n> = {\n\t< TT extends React.ElementType >(\n\t\tprops: WordPressComponentProps< O, TT, IsPolymorphic > &\n\t\t\t( IsPolymorphic extends true ? { as: TT } : {} )\n\t): JSX.Element | null;\n\t(\n\t\tprops: WordPressComponentProps< O, T, IsPolymorphic >\n\t): JSX.Element | null;\n\tdisplayName?: string;\n\t/**\n\t * A CSS selector used to fake component interpolation in styled components\n\t * for components not generated by `styled`. Anything passed to `contextConnect`\n\t * will get this property.\n\t *\n\t * We restrict it to a class to align with the already existing class names that\n\t * are generated by the context system.\n\t */\n\tselector?: `.${ string }`;\n};\n\nexport type WordPressComponentFromProps<\n\tProps,\n\tForwardsRef extends boolean = true,\n> = Props extends WordPressComponentProps< infer P, infer T, infer I >\n\t? WordPressComponent<\n\t\t\tT,\n\t\t\tP & ( ForwardsRef extends true ? React.RefAttributes< any > : {} ),\n\t\t\tI\n\t >\n\t: never;\n"],"mappings":""}
@@ -2,11 +2,10 @@ import { createElement } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
5
- import classnames from 'classnames';
5
+
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import deprecated from '@wordpress/deprecated';
10
9
  import { __ } from '@wordpress/i18n';
11
10
 
12
11
  /**
@@ -38,7 +37,6 @@ const GradientAnglePicker = ({
38
37
  }));
39
38
  };
40
39
  return createElement(AnglePickerControl, {
41
- __nextHasNoMarginBottom: true,
42
40
  onChange: onAngleChange,
43
41
  value: hasGradient ? angle : ''
44
42
  });
@@ -110,8 +108,6 @@ const GradientTypePicker = ({
110
108
  * ```
111
109
  */
112
110
  export function CustomGradientPicker({
113
- /** Start opting into the new margin-free styles that will become the default in a future version. */
114
- __nextHasNoMargin = false,
115
111
  value,
116
112
  onChange,
117
113
  __experimentalIsRenderedInSidebar = false
@@ -137,18 +133,9 @@ export function CustomGradientPicker({
137
133
  position: parseInt(colorStop.length.value)
138
134
  };
139
135
  });
140
- if (!__nextHasNoMargin) {
141
- deprecated('Outer margin styles for wp.components.CustomGradientPicker', {
142
- since: '6.1',
143
- version: '6.4',
144
- hint: 'Set the `__nextHasNoMargin` prop to true to start opting into the new styles, which will become the default in a future version'
145
- });
146
- }
147
136
  return createElement(VStack, {
148
137
  spacing: 4,
149
- className: classnames('components-custom-gradient-picker', {
150
- 'is-next-has-no-margin': __nextHasNoMargin
151
- })
138
+ className: "components-custom-gradient-picker"
152
139
  }, createElement(CustomGradientBar, {
153
140
  __experimentalIsRenderedInSidebar: __experimentalIsRenderedInSidebar,
154
141
  background: background,
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","deprecated","__","AnglePickerControl","CustomGradientBar","Flex","SelectControl","VStack","getGradientAstWithDefault","getLinearGradientRepresentation","getGradientAstWithControlPoints","getStopCssColor","serializeGradient","DEFAULT_LINEAR_GRADIENT_ANGLE","HORIZONTAL_GRADIENT_ORIENTATION","GRADIENT_OPTIONS","AccessoryWrapper","SelectWrapper","GradientAnglePicker","gradientAST","hasGradient","onChange","_gradientAST$orientat","angle","orientation","value","onAngleChange","newAngle","type","createElement","__nextHasNoMarginBottom","GradientTypePicker","onSetLinearGradient","undefined","onSetRadialGradient","restGradientAST","handleOnChange","next","className","label","labelPosition","options","size","CustomGradientPicker","__nextHasNoMargin","__experimentalIsRenderedInSidebar","background","controlPoints","colorStops","map","colorStop","color","position","parseInt","length","since","version","hint","spacing","newControlPoints","gap"],"sources":["@wordpress/components/src/custom-gradient-picker/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type gradientParser from 'gradient-parser';\n\n/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport AnglePickerControl from '../angle-picker-control';\nimport CustomGradientBar from './gradient-bar';\nimport { Flex } from '../flex';\nimport SelectControl from '../select-control';\nimport { VStack } from '../v-stack';\nimport {\n\tgetGradientAstWithDefault,\n\tgetLinearGradientRepresentation,\n\tgetGradientAstWithControlPoints,\n\tgetStopCssColor,\n} from './utils';\nimport { serializeGradient } from './serializer';\nimport {\n\tDEFAULT_LINEAR_GRADIENT_ANGLE,\n\tHORIZONTAL_GRADIENT_ORIENTATION,\n\tGRADIENT_OPTIONS,\n} from './constants';\nimport {\n\tAccessoryWrapper,\n\tSelectWrapper,\n} from './styles/custom-gradient-picker-styles';\nimport type {\n\tCustomGradientPickerProps,\n\tGradientAnglePickerProps,\n\tGradientTypePickerProps,\n} from './types';\n\nconst GradientAnglePicker = ( {\n\tgradientAST,\n\thasGradient,\n\tonChange,\n}: GradientAnglePickerProps ) => {\n\tconst angle =\n\t\tgradientAST?.orientation?.value ?? DEFAULT_LINEAR_GRADIENT_ANGLE;\n\tconst onAngleChange = ( newAngle: number ) => {\n\t\tonChange(\n\t\t\tserializeGradient( {\n\t\t\t\t...gradientAST,\n\t\t\t\torientation: {\n\t\t\t\t\ttype: 'angular',\n\t\t\t\t\tvalue: `${ newAngle }`,\n\t\t\t\t},\n\t\t\t} )\n\t\t);\n\t};\n\treturn (\n\t\t<AnglePickerControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tonChange={ onAngleChange }\n\t\t\tvalue={ hasGradient ? angle : '' }\n\t\t/>\n\t);\n};\n\nconst GradientTypePicker = ( {\n\tgradientAST,\n\thasGradient,\n\tonChange,\n}: GradientTypePickerProps ) => {\n\tconst { type } = gradientAST;\n\n\tconst onSetLinearGradient = () => {\n\t\tonChange(\n\t\t\tserializeGradient( {\n\t\t\t\t...gradientAST,\n\t\t\t\torientation: gradientAST.orientation\n\t\t\t\t\t? undefined\n\t\t\t\t\t: HORIZONTAL_GRADIENT_ORIENTATION,\n\t\t\t\ttype: 'linear-gradient',\n\t\t\t} as gradientParser.LinearGradientNode )\n\t\t);\n\t};\n\n\tconst onSetRadialGradient = () => {\n\t\tconst { orientation, ...restGradientAST } = gradientAST;\n\t\tonChange(\n\t\t\tserializeGradient( {\n\t\t\t\t...restGradientAST,\n\t\t\t\ttype: 'radial-gradient',\n\t\t\t} )\n\t\t);\n\t};\n\n\tconst handleOnChange = ( next: string ) => {\n\t\tif ( next === 'linear-gradient' ) {\n\t\t\tonSetLinearGradient();\n\t\t}\n\t\tif ( next === 'radial-gradient' ) {\n\t\t\tonSetRadialGradient();\n\t\t}\n\t};\n\n\treturn (\n\t\t<SelectControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"components-custom-gradient-picker__type-picker\"\n\t\t\tlabel={ __( 'Type' ) }\n\t\t\tlabelPosition=\"top\"\n\t\t\tonChange={ handleOnChange }\n\t\t\toptions={ GRADIENT_OPTIONS }\n\t\t\tsize=\"__unstable-large\"\n\t\t\tvalue={ hasGradient ? type : undefined }\n\t\t/>\n\t);\n};\n\n/**\n * CustomGradientPicker is a React component that renders a UI for specifying\n * linear or radial gradients. Radial gradients are displayed in the picker as\n * a slice of the gradient from the center to the outside.\n *\n * ```jsx\n * import { CustomGradientPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyCustomGradientPicker = () => {\n * const [ gradient, setGradient ] = useState();\n *\n * return (\n * <CustomGradientPicker\n *\t\t\tvalue={ gradient }\n *\t\t\tonChange={ setGradient }\n * />\n * );\n * };\n * ```\n */\nexport function CustomGradientPicker( {\n\t/** Start opting into the new margin-free styles that will become the default in a future version. */\n\t__nextHasNoMargin = false,\n\tvalue,\n\tonChange,\n\t__experimentalIsRenderedInSidebar = false,\n}: CustomGradientPickerProps ) {\n\tconst { gradientAST, hasGradient } = getGradientAstWithDefault( value );\n\n\t// On radial gradients the bar should display a linear gradient.\n\t// On radial gradients the bar represents a slice of the gradient from the center until the outside.\n\t// On liner gradients the bar represents the color stops from left to right independently of the angle.\n\tconst background = getLinearGradientRepresentation( gradientAST );\n\n\t// Control points color option may be hex from presets, custom colors will be rgb.\n\t// The position should always be a percentage.\n\tconst controlPoints = gradientAST.colorStops.map( ( colorStop ) => {\n\t\treturn {\n\t\t\tcolor: getStopCssColor( colorStop ),\n\t\t\t// Although it's already been checked by `hasUnsupportedLength` in `getGradientAstWithDefault`,\n\t\t\t// TypeScript doesn't know that `colorStop.length` is not undefined here.\n\t\t\t// @ts-expect-error\n\t\t\tposition: parseInt( colorStop.length.value ),\n\t\t};\n\t} );\n\n\tif ( ! __nextHasNoMargin ) {\n\t\tdeprecated(\n\t\t\t'Outer margin styles for wp.components.CustomGradientPicker',\n\t\t\t{\n\t\t\t\tsince: '6.1',\n\t\t\t\tversion: '6.4',\n\t\t\t\thint: 'Set the `__nextHasNoMargin` prop to true to start opting into the new styles, which will become the default in a future version',\n\t\t\t}\n\t\t);\n\t}\n\n\treturn (\n\t\t<VStack\n\t\t\tspacing={ 4 }\n\t\t\tclassName={ classnames( 'components-custom-gradient-picker', {\n\t\t\t\t'is-next-has-no-margin': __nextHasNoMargin,\n\t\t\t} ) }\n\t\t>\n\t\t\t<CustomGradientBar\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tbackground={ background }\n\t\t\t\thasGradient={ hasGradient }\n\t\t\t\tvalue={ controlPoints }\n\t\t\t\tonChange={ ( newControlPoints ) => {\n\t\t\t\t\tonChange(\n\t\t\t\t\t\tserializeGradient(\n\t\t\t\t\t\t\tgetGradientAstWithControlPoints(\n\t\t\t\t\t\t\t\tgradientAST,\n\t\t\t\t\t\t\t\tnewControlPoints\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} }\n\t\t\t/>\n\t\t\t<Flex\n\t\t\t\tgap={ 3 }\n\t\t\t\tclassName=\"components-custom-gradient-picker__ui-line\"\n\t\t\t>\n\t\t\t\t<SelectWrapper>\n\t\t\t\t\t<GradientTypePicker\n\t\t\t\t\t\tgradientAST={ gradientAST }\n\t\t\t\t\t\thasGradient={ hasGradient }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t/>\n\t\t\t\t</SelectWrapper>\n\t\t\t\t<AccessoryWrapper>\n\t\t\t\t\t{ gradientAST.type === 'linear-gradient' && (\n\t\t\t\t\t\t<GradientAnglePicker\n\t\t\t\t\t\t\tgradientAST={ gradientAST }\n\t\t\t\t\t\t\thasGradient={ hasGradient }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</AccessoryWrapper>\n\t\t\t</Flex>\n\t\t</VStack>\n\t);\n}\n\nexport default CustomGradientPicker;\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","AnglePickerControl","CustomGradientBar","Flex","SelectControl","VStack","getGradientAstWithDefault","getLinearGradientRepresentation","getGradientAstWithControlPoints","getStopCssColor","serializeGradient","DEFAULT_LINEAR_GRADIENT_ANGLE","HORIZONTAL_GRADIENT_ORIENTATION","GRADIENT_OPTIONS","AccessoryWrapper","SelectWrapper","GradientAnglePicker","gradientAST","hasGradient","onChange","_gradientAST$orientat","angle","orientation","value","onAngleChange","newAngle","type","createElement","GradientTypePicker","onSetLinearGradient","undefined","onSetRadialGradient","restGradientAST","handleOnChange","next","__nextHasNoMarginBottom","className","label","labelPosition","options","size","CustomGradientPicker","__experimentalIsRenderedInSidebar","background","controlPoints","colorStops","map","colorStop","color","position","parseInt","length","spacing","newControlPoints","gap"],"sources":["@wordpress/components/src/custom-gradient-picker/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type gradientParser from 'gradient-parser';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport AnglePickerControl from '../angle-picker-control';\nimport CustomGradientBar from './gradient-bar';\nimport { Flex } from '../flex';\nimport SelectControl from '../select-control';\nimport { VStack } from '../v-stack';\nimport {\n\tgetGradientAstWithDefault,\n\tgetLinearGradientRepresentation,\n\tgetGradientAstWithControlPoints,\n\tgetStopCssColor,\n} from './utils';\nimport { serializeGradient } from './serializer';\nimport {\n\tDEFAULT_LINEAR_GRADIENT_ANGLE,\n\tHORIZONTAL_GRADIENT_ORIENTATION,\n\tGRADIENT_OPTIONS,\n} from './constants';\nimport {\n\tAccessoryWrapper,\n\tSelectWrapper,\n} from './styles/custom-gradient-picker-styles';\nimport type {\n\tCustomGradientPickerProps,\n\tGradientAnglePickerProps,\n\tGradientTypePickerProps,\n} from './types';\n\nconst GradientAnglePicker = ( {\n\tgradientAST,\n\thasGradient,\n\tonChange,\n}: GradientAnglePickerProps ) => {\n\tconst angle =\n\t\tgradientAST?.orientation?.value ?? DEFAULT_LINEAR_GRADIENT_ANGLE;\n\tconst onAngleChange = ( newAngle: number ) => {\n\t\tonChange(\n\t\t\tserializeGradient( {\n\t\t\t\t...gradientAST,\n\t\t\t\torientation: {\n\t\t\t\t\ttype: 'angular',\n\t\t\t\t\tvalue: `${ newAngle }`,\n\t\t\t\t},\n\t\t\t} )\n\t\t);\n\t};\n\treturn (\n\t\t<AnglePickerControl\n\t\t\tonChange={ onAngleChange }\n\t\t\tvalue={ hasGradient ? angle : '' }\n\t\t/>\n\t);\n};\n\nconst GradientTypePicker = ( {\n\tgradientAST,\n\thasGradient,\n\tonChange,\n}: GradientTypePickerProps ) => {\n\tconst { type } = gradientAST;\n\n\tconst onSetLinearGradient = () => {\n\t\tonChange(\n\t\t\tserializeGradient( {\n\t\t\t\t...gradientAST,\n\t\t\t\torientation: gradientAST.orientation\n\t\t\t\t\t? undefined\n\t\t\t\t\t: HORIZONTAL_GRADIENT_ORIENTATION,\n\t\t\t\ttype: 'linear-gradient',\n\t\t\t} as gradientParser.LinearGradientNode )\n\t\t);\n\t};\n\n\tconst onSetRadialGradient = () => {\n\t\tconst { orientation, ...restGradientAST } = gradientAST;\n\t\tonChange(\n\t\t\tserializeGradient( {\n\t\t\t\t...restGradientAST,\n\t\t\t\ttype: 'radial-gradient',\n\t\t\t} )\n\t\t);\n\t};\n\n\tconst handleOnChange = ( next: string ) => {\n\t\tif ( next === 'linear-gradient' ) {\n\t\t\tonSetLinearGradient();\n\t\t}\n\t\tif ( next === 'radial-gradient' ) {\n\t\t\tonSetRadialGradient();\n\t\t}\n\t};\n\n\treturn (\n\t\t<SelectControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"components-custom-gradient-picker__type-picker\"\n\t\t\tlabel={ __( 'Type' ) }\n\t\t\tlabelPosition=\"top\"\n\t\t\tonChange={ handleOnChange }\n\t\t\toptions={ GRADIENT_OPTIONS }\n\t\t\tsize=\"__unstable-large\"\n\t\t\tvalue={ hasGradient ? type : undefined }\n\t\t/>\n\t);\n};\n\n/**\n * CustomGradientPicker is a React component that renders a UI for specifying\n * linear or radial gradients. Radial gradients are displayed in the picker as\n * a slice of the gradient from the center to the outside.\n *\n * ```jsx\n * import { CustomGradientPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyCustomGradientPicker = () => {\n * const [ gradient, setGradient ] = useState();\n *\n * return (\n * <CustomGradientPicker\n *\t\t\tvalue={ gradient }\n *\t\t\tonChange={ setGradient }\n * />\n * );\n * };\n * ```\n */\nexport function CustomGradientPicker( {\n\tvalue,\n\tonChange,\n\t__experimentalIsRenderedInSidebar = false,\n}: CustomGradientPickerProps ) {\n\tconst { gradientAST, hasGradient } = getGradientAstWithDefault( value );\n\n\t// On radial gradients the bar should display a linear gradient.\n\t// On radial gradients the bar represents a slice of the gradient from the center until the outside.\n\t// On liner gradients the bar represents the color stops from left to right independently of the angle.\n\tconst background = getLinearGradientRepresentation( gradientAST );\n\n\t// Control points color option may be hex from presets, custom colors will be rgb.\n\t// The position should always be a percentage.\n\tconst controlPoints = gradientAST.colorStops.map( ( colorStop ) => {\n\t\treturn {\n\t\t\tcolor: getStopCssColor( colorStop ),\n\t\t\t// Although it's already been checked by `hasUnsupportedLength` in `getGradientAstWithDefault`,\n\t\t\t// TypeScript doesn't know that `colorStop.length` is not undefined here.\n\t\t\t// @ts-expect-error\n\t\t\tposition: parseInt( colorStop.length.value ),\n\t\t};\n\t} );\n\n\treturn (\n\t\t<VStack spacing={ 4 } className=\"components-custom-gradient-picker\">\n\t\t\t<CustomGradientBar\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tbackground={ background }\n\t\t\t\thasGradient={ hasGradient }\n\t\t\t\tvalue={ controlPoints }\n\t\t\t\tonChange={ ( newControlPoints ) => {\n\t\t\t\t\tonChange(\n\t\t\t\t\t\tserializeGradient(\n\t\t\t\t\t\t\tgetGradientAstWithControlPoints(\n\t\t\t\t\t\t\t\tgradientAST,\n\t\t\t\t\t\t\t\tnewControlPoints\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} }\n\t\t\t/>\n\t\t\t<Flex\n\t\t\t\tgap={ 3 }\n\t\t\t\tclassName=\"components-custom-gradient-picker__ui-line\"\n\t\t\t>\n\t\t\t\t<SelectWrapper>\n\t\t\t\t\t<GradientTypePicker\n\t\t\t\t\t\tgradientAST={ gradientAST }\n\t\t\t\t\t\thasGradient={ hasGradient }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t/>\n\t\t\t\t</SelectWrapper>\n\t\t\t\t<AccessoryWrapper>\n\t\t\t\t\t{ gradientAST.type === 'linear-gradient' && (\n\t\t\t\t\t\t<GradientAnglePicker\n\t\t\t\t\t\t\tgradientAST={ gradientAST }\n\t\t\t\t\t\t\thasGradient={ hasGradient }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</AccessoryWrapper>\n\t\t\t</Flex>\n\t\t</VStack>\n\t);\n}\n\nexport default CustomGradientPicker;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["@wordpress/components/src/custom-gradient-picker/types.ts"],"sourcesContent":["/**\n * External dependencies\n */\nimport type gradientParser from 'gradient-parser';\n\nexport type CustomGradientPickerProps = {\n\t/**\n\t * Start opting in to the new margin-free styles that will become the default\n\t * in a future version, currently scheduled to be WordPress 6.4. (The prop\n\t * can be safely removed once this happens.)\n\t *\n\t * @default false\n\t */\n\t__nextHasNoMargin?: boolean;\n\t/**\n\t * The current value of the gradient. Pass a css gradient string (See default value for example).\n\t * Optionally pass in a `null` value to specify no gradient is currently selected.\n\t *\n\t * @default 'linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%)'\n\t */\n\tvalue?: string | null;\n\t/**\n\t * The function called when a new gradient has been defined. It is passed to\n\t * the `currentGradient` as an argument.\n\t */\n\tonChange: ( currentGradient: string ) => void;\n\t/**\n\t * Whether this is rendered in the sidebar.\n\t *\n\t * @default false\n\t */\n\t__experimentalIsRenderedInSidebar?: boolean;\n};\n\nexport type GradientAnglePickerProps = {\n\tgradientAST:\n\t\t| gradientParser.LinearGradientNode\n\t\t| gradientParser.RepeatingLinearGradientNode;\n\thasGradient: boolean;\n\tonChange: ( gradient: string ) => void;\n};\n\nexport type GradientTypePickerProps = {\n\tgradientAST: gradientParser.GradientNode;\n\thasGradient: boolean;\n\tonChange: ( gradient: string ) => void;\n};\n\nexport type ControlPoint = { color: string; position: number };\n\nexport type CustomGradientBarProps = {\n\tbackground: React.CSSProperties[ 'background' ];\n\thasGradient: boolean;\n\tvalue: ControlPoint[];\n\tonChange: ( newControlPoints: ControlPoint[] ) => void;\n\tdisableInserter?: boolean;\n\tdisableAlpha?: boolean;\n\t__experimentalIsRenderedInSidebar?: boolean;\n};\n\nexport type CustomGradientBarIdleState = { id: 'IDLE' };\ntype CustomGradientBarMovingInserterState = {\n\tid: 'MOVING_INSERTER';\n\tinsertPosition: number;\n};\ntype CustomGradientBarInsertingControlPointState = {\n\tid: 'INSERTING_CONTROL_POINT';\n\tinsertPosition: number;\n};\ntype CustomGradientBarMovingControlPointState = { id: 'MOVING_CONTROL_POINT' };\n\nexport type CustomGradientBarReducerState =\n\t| CustomGradientBarIdleState\n\t| CustomGradientBarMovingInserterState\n\t| CustomGradientBarInsertingControlPointState\n\t| CustomGradientBarMovingControlPointState;\n\nexport type CustomGradientBarReducerAction =\n\t| { type: 'MOVE_INSERTER'; insertPosition: number }\n\t| { type: 'STOP_INSERTER_MOVE' }\n\t| { type: 'OPEN_INSERTER' }\n\t| { type: 'CLOSE_INSERTER' }\n\t| { type: 'START_CONTROL_CHANGE' }\n\t| { type: 'STOP_CONTROL_CHANGE' };\n\nexport type ControlPointButtonProps = {\n\tisOpen: boolean;\n\tposition: ControlPoint[ 'position' ];\n\tcolor: string;\n};\n\nexport type ControlPointsProps = {\n\tdisableRemove: boolean;\n\tdisableAlpha: boolean;\n\tgradientPickerDomRef: React.RefObject< HTMLDivElement >;\n\tignoreMarkerPosition?: number;\n\tvalue: ControlPoint[];\n\tonChange: ( controlPoints: ControlPoint[] ) => void;\n\tonStartControlPointChange: () => void;\n\tonStopControlPointChange: () => void;\n\t__experimentalIsRenderedInSidebar: boolean;\n};\n\nexport type ControlPointMoveState = {\n\tinitialPosition: number;\n\tindex: number;\n\tsignificantMoveHappened: boolean;\n\tlistenersActivated: boolean;\n};\n\nexport type InsertPointProps = {\n\tvalue: ControlPoint[];\n\tonChange: ( controlPoints: ControlPoint[] ) => void;\n\tonOpenInserter: () => void;\n\tonCloseInserter: () => void;\n\tinsertPosition: number;\n\tdisableAlpha: boolean;\n\t__experimentalIsRenderedInSidebar: boolean;\n};\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["@wordpress/components/src/custom-gradient-picker/types.ts"],"sourcesContent":["/**\n * External dependencies\n */\nimport type gradientParser from 'gradient-parser';\n\nexport type CustomGradientPickerProps = {\n\t/**\n\t * Start opting in to the new margin-free styles that will become the default\n\t * in a future version, currently scheduled to be WordPress 6.4. (The prop\n\t * can be safely removed once this happens.)\n\t *\n\t * @default false\n\t * @deprecated Default behavior since WP 6.5. Prop can be safely removed.\n\t * @ignore\n\t */\n\t__nextHasNoMargin?: boolean;\n\t/**\n\t * The current value of the gradient. Pass a css gradient string (See default value for example).\n\t * Optionally pass in a `null` value to specify no gradient is currently selected.\n\t *\n\t * @default 'linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%)'\n\t */\n\tvalue?: string | null;\n\t/**\n\t * The function called when a new gradient has been defined. It is passed to\n\t * the `currentGradient` as an argument.\n\t */\n\tonChange: ( currentGradient: string ) => void;\n\t/**\n\t * Whether this is rendered in the sidebar.\n\t *\n\t * @default false\n\t */\n\t__experimentalIsRenderedInSidebar?: boolean;\n};\n\nexport type GradientAnglePickerProps = {\n\tgradientAST:\n\t\t| gradientParser.LinearGradientNode\n\t\t| gradientParser.RepeatingLinearGradientNode;\n\thasGradient: boolean;\n\tonChange: ( gradient: string ) => void;\n};\n\nexport type GradientTypePickerProps = {\n\tgradientAST: gradientParser.GradientNode;\n\thasGradient: boolean;\n\tonChange: ( gradient: string ) => void;\n};\n\nexport type ControlPoint = { color: string; position: number };\n\nexport type CustomGradientBarProps = {\n\tbackground: React.CSSProperties[ 'background' ];\n\thasGradient: boolean;\n\tvalue: ControlPoint[];\n\tonChange: ( newControlPoints: ControlPoint[] ) => void;\n\tdisableInserter?: boolean;\n\tdisableAlpha?: boolean;\n\t__experimentalIsRenderedInSidebar?: boolean;\n};\n\nexport type CustomGradientBarIdleState = { id: 'IDLE' };\ntype CustomGradientBarMovingInserterState = {\n\tid: 'MOVING_INSERTER';\n\tinsertPosition: number;\n};\ntype CustomGradientBarInsertingControlPointState = {\n\tid: 'INSERTING_CONTROL_POINT';\n\tinsertPosition: number;\n};\ntype CustomGradientBarMovingControlPointState = { id: 'MOVING_CONTROL_POINT' };\n\nexport type CustomGradientBarReducerState =\n\t| CustomGradientBarIdleState\n\t| CustomGradientBarMovingInserterState\n\t| CustomGradientBarInsertingControlPointState\n\t| CustomGradientBarMovingControlPointState;\n\nexport type CustomGradientBarReducerAction =\n\t| { type: 'MOVE_INSERTER'; insertPosition: number }\n\t| { type: 'STOP_INSERTER_MOVE' }\n\t| { type: 'OPEN_INSERTER' }\n\t| { type: 'CLOSE_INSERTER' }\n\t| { type: 'START_CONTROL_CHANGE' }\n\t| { type: 'STOP_CONTROL_CHANGE' };\n\nexport type ControlPointButtonProps = {\n\tisOpen: boolean;\n\tposition: ControlPoint[ 'position' ];\n\tcolor: string;\n};\n\nexport type ControlPointsProps = {\n\tdisableRemove: boolean;\n\tdisableAlpha: boolean;\n\tgradientPickerDomRef: React.RefObject< HTMLDivElement >;\n\tignoreMarkerPosition?: number;\n\tvalue: ControlPoint[];\n\tonChange: ( controlPoints: ControlPoint[] ) => void;\n\tonStartControlPointChange: () => void;\n\tonStopControlPointChange: () => void;\n\t__experimentalIsRenderedInSidebar: boolean;\n};\n\nexport type ControlPointMoveState = {\n\tinitialPosition: number;\n\tindex: number;\n\tsignificantMoveHappened: boolean;\n\tlistenersActivated: boolean;\n};\n\nexport type InsertPointProps = {\n\tvalue: ControlPoint[];\n\tonChange: ( controlPoints: ControlPoint[] ) => void;\n\tonOpenInserter: () => void;\n\tonCloseInserter: () => void;\n\tinsertPosition: number;\n\tdisableAlpha: boolean;\n\t__experimentalIsRenderedInSidebar: boolean;\n};\n"],"mappings":""}
@@ -74,7 +74,7 @@ export default function CustomSelectControl(props) {
74
74
  onFocus,
75
75
  onBlur,
76
76
  __experimentalShowSelectedHint = false
77
- } = useDeprecated36pxDefaultSizeProp(props, 'wp.components.CustomSelectControl', '6.4');
77
+ } = useDeprecated36pxDefaultSizeProp(props);
78
78
  const {
79
79
  getLabelProps,
80
80
  getToggleButtonProps,
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","classnames","Icon","check","__","sprintf","useCallback","useState","deprecated","VisuallyHidden","Select","SelectControlSelect","SelectControlChevronDown","InputBaseWithBackCompatMinWidth","StyledLabel","useDeprecated36pxDefaultSizeProp","itemToString","item","name","stateReducer","selectedItem","type","changes","props","items","stateChangeTypes","ToggleButtonKeyDownArrowDown","Math","min","indexOf","length","ToggleButtonKeyDownArrowUp","max","CustomSelectControl","__next40pxDefaultSize","__nextUnconstrainedWidth","className","hideLabelFromVision","label","describedBy","options","onChange","onSelectedItemChange","size","value","_selectedItem","onMouseOver","onMouseOut","onFocus","onBlur","__experimentalShowSelectedHint","getLabelProps","getToggleButtonProps","getMenuProps","getItemProps","isOpen","highlightedIndex","initialSelectedItem","undefined","isFocused","setIsFocused","handleOnFocus","e","handleOnBlur","since","version","hint","getDescribedBy","menuProps","onKeyDownHandler","stopPropagation","onKeyDown","startsWith","createElement","as","__unstableInputWidth","labelPosition","suffix","selectSize","__experimentalHint","map","index","key","style","icon","StableCustomSelectControl"],"sources":["@wordpress/components/src/custom-select-control/index.js"],"sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { useSelect } from 'downshift';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Icon, check } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useCallback, useState } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport { VisuallyHidden } from '../visually-hidden';\nimport { Select as SelectControlSelect } from '../select-control/styles/select-control-styles';\nimport SelectControlChevronDown from '../select-control/chevron-down';\nimport { InputBaseWithBackCompatMinWidth } from './styles';\nimport { StyledLabel } from '../base-control/styles/base-control-styles';\nimport { useDeprecated36pxDefaultSizeProp } from '../utils/use-deprecated-props';\n\nconst itemToString = ( item ) => item?.name;\n// This is needed so that in Windows, where\n// the menu does not necessarily open on\n// key up/down, you can still switch between\n// options with the menu closed.\nconst stateReducer = (\n\t{ selectedItem },\n\t{ type, changes, props: { items } }\n) => {\n\tswitch ( type ) {\n\t\tcase useSelect.stateChangeTypes.ToggleButtonKeyDownArrowDown:\n\t\t\t// If we already have a selected item, try to select the next one,\n\t\t\t// without circular navigation. Otherwise, select the first item.\n\t\t\treturn {\n\t\t\t\tselectedItem:\n\t\t\t\t\titems[\n\t\t\t\t\t\tselectedItem\n\t\t\t\t\t\t\t? Math.min(\n\t\t\t\t\t\t\t\t\titems.indexOf( selectedItem ) + 1,\n\t\t\t\t\t\t\t\t\titems.length - 1\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t],\n\t\t\t};\n\t\tcase useSelect.stateChangeTypes.ToggleButtonKeyDownArrowUp:\n\t\t\t// If we already have a selected item, try to select the previous one,\n\t\t\t// without circular navigation. Otherwise, select the last item.\n\t\t\treturn {\n\t\t\t\tselectedItem:\n\t\t\t\t\titems[\n\t\t\t\t\t\tselectedItem\n\t\t\t\t\t\t\t? Math.max( items.indexOf( selectedItem ) - 1, 0 )\n\t\t\t\t\t\t\t: items.length - 1\n\t\t\t\t\t],\n\t\t\t};\n\t\tdefault:\n\t\t\treturn changes;\n\t}\n};\n\nexport default function CustomSelectControl( props ) {\n\tconst {\n\t\t/** Start opting into the larger default height that will become the default size in a future version. */\n\t\t__next40pxDefaultSize = false,\n\t\t/** Start opting into the unconstrained width that will become the default in a future version. */\n\t\t__nextUnconstrainedWidth = false,\n\t\tclassName,\n\t\thideLabelFromVision,\n\t\tlabel,\n\t\tdescribedBy,\n\t\toptions: items,\n\t\tonChange: onSelectedItemChange,\n\t\t/** @type {import('../select-control/types').SelectControlProps.size} */\n\t\tsize = 'default',\n\t\tvalue: _selectedItem,\n\t\tonMouseOver,\n\t\tonMouseOut,\n\t\tonFocus,\n\t\tonBlur,\n\t\t__experimentalShowSelectedHint = false,\n\t} = useDeprecated36pxDefaultSizeProp(\n\t\tprops,\n\t\t'wp.components.CustomSelectControl',\n\t\t'6.4'\n\t);\n\n\tconst {\n\t\tgetLabelProps,\n\t\tgetToggleButtonProps,\n\t\tgetMenuProps,\n\t\tgetItemProps,\n\t\tisOpen,\n\t\thighlightedIndex,\n\t\tselectedItem,\n\t} = useSelect( {\n\t\tinitialSelectedItem: items[ 0 ],\n\t\titems,\n\t\titemToString,\n\t\tonSelectedItemChange,\n\t\t...( typeof _selectedItem !== 'undefined' && _selectedItem !== null\n\t\t\t? { selectedItem: _selectedItem }\n\t\t\t: undefined ),\n\t\tstateReducer,\n\t} );\n\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tfunction handleOnFocus( e ) {\n\t\tsetIsFocused( true );\n\t\tonFocus?.( e );\n\t}\n\n\tfunction handleOnBlur( e ) {\n\t\tsetIsFocused( false );\n\t\tonBlur?.( e );\n\t}\n\n\tif ( ! __nextUnconstrainedWidth ) {\n\t\tdeprecated(\n\t\t\t'Constrained width styles for wp.components.CustomSelectControl',\n\t\t\t{\n\t\t\t\tsince: '6.1',\n\t\t\t\tversion: '6.4',\n\t\t\t\thint: 'Set the `__nextUnconstrainedWidth` prop to true to start opting into the new styles, which will become the default in a future version',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction getDescribedBy() {\n\t\tif ( describedBy ) {\n\t\t\treturn describedBy;\n\t\t}\n\n\t\tif ( ! selectedItem ) {\n\t\t\treturn __( 'No selection' );\n\t\t}\n\n\t\t// translators: %s: The selected option.\n\t\treturn sprintf( __( 'Currently selected: %s' ), selectedItem.name );\n\t}\n\n\tconst menuProps = getMenuProps( {\n\t\tclassName: 'components-custom-select-control__menu',\n\t\t'aria-hidden': ! isOpen,\n\t} );\n\n\tconst onKeyDownHandler = useCallback(\n\t\t( e ) => {\n\t\t\te.stopPropagation();\n\t\t\tmenuProps?.onKeyDown?.( e );\n\t\t},\n\t\t[ menuProps ]\n\t);\n\n\t// We need this here, because the null active descendant is not fully ARIA compliant.\n\tif (\n\t\tmenuProps[ 'aria-activedescendant' ]?.startsWith( 'downshift-null' )\n\t) {\n\t\tdelete menuProps[ 'aria-activedescendant' ];\n\t}\n\treturn (\n\t\t<div\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-custom-select-control',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t>\n\t\t\t{ hideLabelFromVision ? (\n\t\t\t\t<VisuallyHidden as=\"label\" { ...getLabelProps() }>\n\t\t\t\t\t{ label }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) : (\n\t\t\t\t/* eslint-disable-next-line jsx-a11y/label-has-associated-control, jsx-a11y/label-has-for */\n\t\t\t\t<StyledLabel\n\t\t\t\t\t{ ...getLabelProps( {\n\t\t\t\t\t\tclassName: 'components-custom-select-control__label',\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ label }\n\t\t\t\t</StyledLabel>\n\t\t\t) }\n\t\t\t<InputBaseWithBackCompatMinWidth\n\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t__nextUnconstrainedWidth={ __nextUnconstrainedWidth }\n\t\t\t\tisFocused={ isOpen || isFocused }\n\t\t\t\t__unstableInputWidth={\n\t\t\t\t\t__nextUnconstrainedWidth ? undefined : 'auto'\n\t\t\t\t}\n\t\t\t\tlabelPosition={ __nextUnconstrainedWidth ? undefined : 'top' }\n\t\t\t\tsize={ size }\n\t\t\t\tsuffix={ <SelectControlChevronDown /> }\n\t\t\t>\n\t\t\t\t<SelectControlSelect\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tas=\"button\"\n\t\t\t\t\tonFocus={ handleOnFocus }\n\t\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\t\tselectSize={ size }\n\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t{ ...getToggleButtonProps( {\n\t\t\t\t\t\t// This is needed because some speech recognition software don't support `aria-labelledby`.\n\t\t\t\t\t\t'aria-label': label,\n\t\t\t\t\t\t'aria-labelledby': undefined,\n\t\t\t\t\t\tclassName: 'components-custom-select-control__button',\n\t\t\t\t\t\tdescribedBy: getDescribedBy(),\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ itemToString( selectedItem ) }\n\t\t\t\t\t{ __experimentalShowSelectedHint &&\n\t\t\t\t\t\tselectedItem.__experimentalHint && (\n\t\t\t\t\t\t\t<span className=\"components-custom-select-control__hint\">\n\t\t\t\t\t\t\t\t{ selectedItem.__experimentalHint }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t</SelectControlSelect>\n\t\t\t</InputBaseWithBackCompatMinWidth>\n\t\t\t{ /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */ }\n\t\t\t<ul { ...menuProps } onKeyDown={ onKeyDownHandler }>\n\t\t\t\t{ isOpen &&\n\t\t\t\t\titems.map( ( item, index ) => (\n\t\t\t\t\t\t// eslint-disable-next-line react/jsx-key\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t{ ...getItemProps( {\n\t\t\t\t\t\t\t\titem,\n\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\tkey: item.key,\n\t\t\t\t\t\t\t\tclassName: classnames(\n\t\t\t\t\t\t\t\t\titem.className,\n\t\t\t\t\t\t\t\t\t'components-custom-select-control__item',\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t'is-highlighted':\n\t\t\t\t\t\t\t\t\t\t\tindex === highlightedIndex,\n\t\t\t\t\t\t\t\t\t\t'has-hint': !! item.__experimentalHint,\n\t\t\t\t\t\t\t\t\t\t'is-next-40px-default-size':\n\t\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tstyle: item.style,\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ item.name }\n\t\t\t\t\t\t\t{ item.__experimentalHint && (\n\t\t\t\t\t\t\t\t<span className=\"components-custom-select-control__item-hint\">\n\t\t\t\t\t\t\t\t\t{ item.__experimentalHint }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ item === selectedItem && (\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\ticon={ check }\n\t\t\t\t\t\t\t\t\tclassName=\"components-custom-select-control__item-icon\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n\nexport function StableCustomSelectControl( props ) {\n\treturn (\n\t\t<CustomSelectControl\n\t\t\t{ ...props }\n\t\t\t__experimentalShowSelectedHint={ false }\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,WAAW;AACrC,OAAOC,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SAASC,IAAI,EAAEC,KAAK,QAAQ,kBAAkB;AAC9C,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,WAAW,EAAEC,QAAQ,QAAQ,oBAAoB;AAC1D,OAAOC,UAAU,MAAM,uBAAuB;;AAE9C;AACA;AACA;AACA,SAASC,cAAc,QAAQ,oBAAoB;AACnD,SAASC,MAAM,IAAIC,mBAAmB,QAAQ,gDAAgD;AAC9F,OAAOC,wBAAwB,MAAM,gCAAgC;AACrE,SAASC,+BAA+B,QAAQ,UAAU;AAC1D,SAASC,WAAW,QAAQ,4CAA4C;AACxE,SAASC,gCAAgC,QAAQ,+BAA+B;AAEhF,MAAMC,YAAY,GAAKC,IAAI,IAAMA,IAAI,EAAEC,IAAI;AAC3C;AACA;AACA;AACA;AACA,MAAMC,YAAY,GAAGA,CACpB;EAAEC;AAAa,CAAC,EAChB;EAAEC,IAAI;EAAEC,OAAO;EAAEC,KAAK,EAAE;IAAEC;EAAM;AAAE,CAAC,KAC/B;EACJ,QAASH,IAAI;IACZ,KAAKrB,SAAS,CAACyB,gBAAgB,CAACC,4BAA4B;MAC3D;MACA;MACA,OAAO;QACNN,YAAY,EACXI,KAAK,CACJJ,YAAY,GACTO,IAAI,CAACC,GAAG,CACRJ,KAAK,CAACK,OAAO,CAAET,YAAa,CAAC,GAAG,CAAC,EACjCI,KAAK,CAACM,MAAM,GAAG,CACf,CAAC,GACD,CAAC;MAEP,CAAC;IACF,KAAK9B,SAAS,CAACyB,gBAAgB,CAACM,0BAA0B;MACzD;MACA;MACA,OAAO;QACNX,YAAY,EACXI,KAAK,CACJJ,YAAY,GACTO,IAAI,CAACK,GAAG,CAAER,KAAK,CAACK,OAAO,CAAET,YAAa,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC,GAChDI,KAAK,CAACM,MAAM,GAAG,CAAC;MAEtB,CAAC;IACF;MACC,OAAOR,OAAO;EAChB;AACD,CAAC;AAED,eAAe,SAASW,mBAAmBA,CAAEV,KAAK,EAAG;EACpD,MAAM;IACL;IACAW,qBAAqB,GAAG,KAAK;IAC7B;IACAC,wBAAwB,GAAG,KAAK;IAChCC,SAAS;IACTC,mBAAmB;IACnBC,KAAK;IACLC,WAAW;IACXC,OAAO,EAAEhB,KAAK;IACdiB,QAAQ,EAAEC,oBAAoB;IAC9B;IACAC,IAAI,GAAG,SAAS;IAChBC,KAAK,EAAEC,aAAa;IACpBC,WAAW;IACXC,UAAU;IACVC,OAAO;IACPC,MAAM;IACNC,8BAA8B,GAAG;EAClC,CAAC,GAAGnC,gCAAgC,CACnCQ,KAAK,EACL,mCAAmC,EACnC,KACD,CAAC;EAED,MAAM;IACL4B,aAAa;IACbC,oBAAoB;IACpBC,YAAY;IACZC,YAAY;IACZC,MAAM;IACNC,gBAAgB;IAChBpC;EACD,CAAC,GAAGpB,SAAS,CAAE;IACdyD,mBAAmB,EAAEjC,KAAK,CAAE,CAAC,CAAE;IAC/BA,KAAK;IACLR,YAAY;IACZ0B,oBAAoB;IACpB,IAAK,OAAOG,aAAa,KAAK,WAAW,IAAIA,aAAa,KAAK,IAAI,GAChE;MAAEzB,YAAY,EAAEyB;IAAc,CAAC,GAC/Ba,SAAS,CAAE;IACdvC;EACD,CAAE,CAAC;EAEH,MAAM,CAAEwC,SAAS,EAAEC,YAAY,CAAE,GAAGrD,QAAQ,CAAE,KAAM,CAAC;EAErD,SAASsD,aAAaA,CAAEC,CAAC,EAAG;IAC3BF,YAAY,CAAE,IAAK,CAAC;IACpBZ,OAAO,GAAIc,CAAE,CAAC;EACf;EAEA,SAASC,YAAYA,CAAED,CAAC,EAAG;IAC1BF,YAAY,CAAE,KAAM,CAAC;IACrBX,MAAM,GAAIa,CAAE,CAAC;EACd;EAEA,IAAK,CAAE3B,wBAAwB,EAAG;IACjC3B,UAAU,CACT,gEAAgE,EAChE;MACCwD,KAAK,EAAE,KAAK;MACZC,OAAO,EAAE,KAAK;MACdC,IAAI,EAAE;IACP,CACD,CAAC;EACF;EAEA,SAASC,cAAcA,CAAA,EAAG;IACzB,IAAK5B,WAAW,EAAG;MAClB,OAAOA,WAAW;IACnB;IAEA,IAAK,CAAEnB,YAAY,EAAG;MACrB,OAAOhB,EAAE,CAAE,cAAe,CAAC;IAC5B;;IAEA;IACA,OAAOC,OAAO,CAAED,EAAE,CAAE,wBAAyB,CAAC,EAAEgB,YAAY,CAACF,IAAK,CAAC;EACpE;EAEA,MAAMkD,SAAS,GAAGf,YAAY,CAAE;IAC/BjB,SAAS,EAAE,wCAAwC;IACnD,aAAa,EAAE,CAAEmB;EAClB,CAAE,CAAC;EAEH,MAAMc,gBAAgB,GAAG/D,WAAW,CACjCwD,CAAC,IAAM;IACRA,CAAC,CAACQ,eAAe,CAAC,CAAC;IACnBF,SAAS,EAAEG,SAAS,GAAIT,CAAE,CAAC;EAC5B,CAAC,EACD,CAAEM,SAAS,CACZ,CAAC;;EAED;EACA,IACCA,SAAS,CAAE,uBAAuB,CAAE,EAAEI,UAAU,CAAE,gBAAiB,CAAC,EACnE;IACD,OAAOJ,SAAS,CAAE,uBAAuB,CAAE;EAC5C;EACA,OACCK,aAAA;IACCrC,SAAS,EAAGnC,UAAU,CACrB,kCAAkC,EAClCmC,SACD;EAAG,GAEDC,mBAAmB,GACpBoC,aAAA,CAAChE,cAAc;IAACiE,EAAE,EAAC,OAAO;IAAA,GAAMvB,aAAa,CAAC;EAAC,GAC5Cb,KACa,CAAC,GAEjB;EACAmC,aAAA,CAAC3D,WAAW;IAAA,GACNqC,aAAa,CAAE;MACnBf,SAAS,EAAE;IACZ,CAAE;EAAC,GAEDE,KACU,CACb,EACDmC,aAAA,CAAC5D,+BAA+B;IAC/BqB,qBAAqB,EAAGA,qBAAuB;IAC/CC,wBAAwB,EAAGA,wBAA0B;IACrDwB,SAAS,EAAGJ,MAAM,IAAII,SAAW;IACjCgB,oBAAoB,EACnBxC,wBAAwB,GAAGuB,SAAS,GAAG,MACvC;IACDkB,aAAa,EAAGzC,wBAAwB,GAAGuB,SAAS,GAAG,KAAO;IAC9Df,IAAI,EAAGA,IAAM;IACbkC,MAAM,EAAGJ,aAAA,CAAC7D,wBAAwB,MAAE;EAAG,GAEvC6D,aAAA,CAAC9D,mBAAmB;IACnBmC,WAAW,EAAGA,WAAa;IAC3BC,UAAU,EAAGA,UAAY;IACzB2B,EAAE,EAAC,QAAQ;IACX1B,OAAO,EAAGa,aAAe;IACzBZ,MAAM,EAAGc,YAAc;IACvBe,UAAU,EAAGnC,IAAM;IACnBT,qBAAqB,EAAGA,qBAAuB;IAAA,GAC1CkB,oBAAoB,CAAE;MAC1B;MACA,YAAY,EAAEd,KAAK;MACnB,iBAAiB,EAAEoB,SAAS;MAC5BtB,SAAS,EAAE,0CAA0C;MACrDG,WAAW,EAAE4B,cAAc,CAAC;IAC7B,CAAE;EAAC,GAEDnD,YAAY,CAAEI,YAAa,CAAC,EAC5B8B,8BAA8B,IAC/B9B,YAAY,CAAC2D,kBAAkB,IAC9BN,aAAA;IAAMrC,SAAS,EAAC;EAAwC,GACrDhB,YAAY,CAAC2D,kBACV,CAEY,CACW,CAAC,EAElCN,aAAA;IAAA,GAASL,SAAS;IAAGG,SAAS,EAAGF;EAAkB,GAChDd,MAAM,IACP/B,KAAK,CAACwD,GAAG,CAAE,CAAE/D,IAAI,EAAEgE,KAAK;EACvB;EACAR,aAAA;IAAA,GACMnB,YAAY,CAAE;MAClBrC,IAAI;MACJgE,KAAK;MACLC,GAAG,EAAEjE,IAAI,CAACiE,GAAG;MACb9C,SAAS,EAAEnC,UAAU,CACpBgB,IAAI,CAACmB,SAAS,EACd,wCAAwC,EACxC;QACC,gBAAgB,EACf6C,KAAK,KAAKzB,gBAAgB;QAC3B,UAAU,EAAE,CAAC,CAAEvC,IAAI,CAAC8D,kBAAkB;QACtC,2BAA2B,EAC1B7C;MACF,CACD,CAAC;MACDiD,KAAK,EAAElE,IAAI,CAACkE;IACb,CAAE;EAAC,GAEDlE,IAAI,CAACC,IAAI,EACTD,IAAI,CAAC8D,kBAAkB,IACxBN,aAAA;IAAMrC,SAAS,EAAC;EAA6C,GAC1DnB,IAAI,CAAC8D,kBACF,CACN,EACC9D,IAAI,KAAKG,YAAY,IACtBqD,aAAA,CAACvE,IAAI;IACJkF,IAAI,EAAGjF,KAAO;IACdiC,SAAS,EAAC;EAA6C,CACvD,CAEC,CACH,CACA,CACA,CAAC;AAER;AAEA,OAAO,SAASiD,yBAAyBA,CAAE9D,KAAK,EAAG;EAClD,OACCkD,aAAA,CAACxC,mBAAmB;IAAA,GACdV,KAAK;IACV2B,8BAA8B,EAAG;EAAO,CACxC,CAAC;AAEJ"}
1
+ {"version":3,"names":["useSelect","classnames","Icon","check","__","sprintf","useCallback","useState","deprecated","VisuallyHidden","Select","SelectControlSelect","SelectControlChevronDown","InputBaseWithBackCompatMinWidth","StyledLabel","useDeprecated36pxDefaultSizeProp","itemToString","item","name","stateReducer","selectedItem","type","changes","props","items","stateChangeTypes","ToggleButtonKeyDownArrowDown","Math","min","indexOf","length","ToggleButtonKeyDownArrowUp","max","CustomSelectControl","__next40pxDefaultSize","__nextUnconstrainedWidth","className","hideLabelFromVision","label","describedBy","options","onChange","onSelectedItemChange","size","value","_selectedItem","onMouseOver","onMouseOut","onFocus","onBlur","__experimentalShowSelectedHint","getLabelProps","getToggleButtonProps","getMenuProps","getItemProps","isOpen","highlightedIndex","initialSelectedItem","undefined","isFocused","setIsFocused","handleOnFocus","e","handleOnBlur","since","version","hint","getDescribedBy","menuProps","onKeyDownHandler","stopPropagation","onKeyDown","startsWith","createElement","as","__unstableInputWidth","labelPosition","suffix","selectSize","__experimentalHint","map","index","key","style","icon","StableCustomSelectControl"],"sources":["@wordpress/components/src/custom-select-control/index.js"],"sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { useSelect } from 'downshift';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Icon, check } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useCallback, useState } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport { VisuallyHidden } from '../visually-hidden';\nimport { Select as SelectControlSelect } from '../select-control/styles/select-control-styles';\nimport SelectControlChevronDown from '../select-control/chevron-down';\nimport { InputBaseWithBackCompatMinWidth } from './styles';\nimport { StyledLabel } from '../base-control/styles/base-control-styles';\nimport { useDeprecated36pxDefaultSizeProp } from '../utils/use-deprecated-props';\n\nconst itemToString = ( item ) => item?.name;\n// This is needed so that in Windows, where\n// the menu does not necessarily open on\n// key up/down, you can still switch between\n// options with the menu closed.\nconst stateReducer = (\n\t{ selectedItem },\n\t{ type, changes, props: { items } }\n) => {\n\tswitch ( type ) {\n\t\tcase useSelect.stateChangeTypes.ToggleButtonKeyDownArrowDown:\n\t\t\t// If we already have a selected item, try to select the next one,\n\t\t\t// without circular navigation. Otherwise, select the first item.\n\t\t\treturn {\n\t\t\t\tselectedItem:\n\t\t\t\t\titems[\n\t\t\t\t\t\tselectedItem\n\t\t\t\t\t\t\t? Math.min(\n\t\t\t\t\t\t\t\t\titems.indexOf( selectedItem ) + 1,\n\t\t\t\t\t\t\t\t\titems.length - 1\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t],\n\t\t\t};\n\t\tcase useSelect.stateChangeTypes.ToggleButtonKeyDownArrowUp:\n\t\t\t// If we already have a selected item, try to select the previous one,\n\t\t\t// without circular navigation. Otherwise, select the last item.\n\t\t\treturn {\n\t\t\t\tselectedItem:\n\t\t\t\t\titems[\n\t\t\t\t\t\tselectedItem\n\t\t\t\t\t\t\t? Math.max( items.indexOf( selectedItem ) - 1, 0 )\n\t\t\t\t\t\t\t: items.length - 1\n\t\t\t\t\t],\n\t\t\t};\n\t\tdefault:\n\t\t\treturn changes;\n\t}\n};\n\nexport default function CustomSelectControl( props ) {\n\tconst {\n\t\t/** Start opting into the larger default height that will become the default size in a future version. */\n\t\t__next40pxDefaultSize = false,\n\t\t/** Start opting into the unconstrained width that will become the default in a future version. */\n\t\t__nextUnconstrainedWidth = false,\n\t\tclassName,\n\t\thideLabelFromVision,\n\t\tlabel,\n\t\tdescribedBy,\n\t\toptions: items,\n\t\tonChange: onSelectedItemChange,\n\t\t/** @type {import('../select-control/types').SelectControlProps.size} */\n\t\tsize = 'default',\n\t\tvalue: _selectedItem,\n\t\tonMouseOver,\n\t\tonMouseOut,\n\t\tonFocus,\n\t\tonBlur,\n\t\t__experimentalShowSelectedHint = false,\n\t} = useDeprecated36pxDefaultSizeProp( props );\n\n\tconst {\n\t\tgetLabelProps,\n\t\tgetToggleButtonProps,\n\t\tgetMenuProps,\n\t\tgetItemProps,\n\t\tisOpen,\n\t\thighlightedIndex,\n\t\tselectedItem,\n\t} = useSelect( {\n\t\tinitialSelectedItem: items[ 0 ],\n\t\titems,\n\t\titemToString,\n\t\tonSelectedItemChange,\n\t\t...( typeof _selectedItem !== 'undefined' && _selectedItem !== null\n\t\t\t? { selectedItem: _selectedItem }\n\t\t\t: undefined ),\n\t\tstateReducer,\n\t} );\n\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tfunction handleOnFocus( e ) {\n\t\tsetIsFocused( true );\n\t\tonFocus?.( e );\n\t}\n\n\tfunction handleOnBlur( e ) {\n\t\tsetIsFocused( false );\n\t\tonBlur?.( e );\n\t}\n\n\tif ( ! __nextUnconstrainedWidth ) {\n\t\tdeprecated(\n\t\t\t'Constrained width styles for wp.components.CustomSelectControl',\n\t\t\t{\n\t\t\t\tsince: '6.1',\n\t\t\t\tversion: '6.4',\n\t\t\t\thint: 'Set the `__nextUnconstrainedWidth` prop to true to start opting into the new styles, which will become the default in a future version',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction getDescribedBy() {\n\t\tif ( describedBy ) {\n\t\t\treturn describedBy;\n\t\t}\n\n\t\tif ( ! selectedItem ) {\n\t\t\treturn __( 'No selection' );\n\t\t}\n\n\t\t// translators: %s: The selected option.\n\t\treturn sprintf( __( 'Currently selected: %s' ), selectedItem.name );\n\t}\n\n\tconst menuProps = getMenuProps( {\n\t\tclassName: 'components-custom-select-control__menu',\n\t\t'aria-hidden': ! isOpen,\n\t} );\n\n\tconst onKeyDownHandler = useCallback(\n\t\t( e ) => {\n\t\t\te.stopPropagation();\n\t\t\tmenuProps?.onKeyDown?.( e );\n\t\t},\n\t\t[ menuProps ]\n\t);\n\n\t// We need this here, because the null active descendant is not fully ARIA compliant.\n\tif (\n\t\tmenuProps[ 'aria-activedescendant' ]?.startsWith( 'downshift-null' )\n\t) {\n\t\tdelete menuProps[ 'aria-activedescendant' ];\n\t}\n\treturn (\n\t\t<div\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-custom-select-control',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t>\n\t\t\t{ hideLabelFromVision ? (\n\t\t\t\t<VisuallyHidden as=\"label\" { ...getLabelProps() }>\n\t\t\t\t\t{ label }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) : (\n\t\t\t\t/* eslint-disable-next-line jsx-a11y/label-has-associated-control, jsx-a11y/label-has-for */\n\t\t\t\t<StyledLabel\n\t\t\t\t\t{ ...getLabelProps( {\n\t\t\t\t\t\tclassName: 'components-custom-select-control__label',\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ label }\n\t\t\t\t</StyledLabel>\n\t\t\t) }\n\t\t\t<InputBaseWithBackCompatMinWidth\n\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t__nextUnconstrainedWidth={ __nextUnconstrainedWidth }\n\t\t\t\tisFocused={ isOpen || isFocused }\n\t\t\t\t__unstableInputWidth={\n\t\t\t\t\t__nextUnconstrainedWidth ? undefined : 'auto'\n\t\t\t\t}\n\t\t\t\tlabelPosition={ __nextUnconstrainedWidth ? undefined : 'top' }\n\t\t\t\tsize={ size }\n\t\t\t\tsuffix={ <SelectControlChevronDown /> }\n\t\t\t>\n\t\t\t\t<SelectControlSelect\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tas=\"button\"\n\t\t\t\t\tonFocus={ handleOnFocus }\n\t\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\t\tselectSize={ size }\n\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t{ ...getToggleButtonProps( {\n\t\t\t\t\t\t// This is needed because some speech recognition software don't support `aria-labelledby`.\n\t\t\t\t\t\t'aria-label': label,\n\t\t\t\t\t\t'aria-labelledby': undefined,\n\t\t\t\t\t\tclassName: 'components-custom-select-control__button',\n\t\t\t\t\t\tdescribedBy: getDescribedBy(),\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ itemToString( selectedItem ) }\n\t\t\t\t\t{ __experimentalShowSelectedHint &&\n\t\t\t\t\t\tselectedItem.__experimentalHint && (\n\t\t\t\t\t\t\t<span className=\"components-custom-select-control__hint\">\n\t\t\t\t\t\t\t\t{ selectedItem.__experimentalHint }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t</SelectControlSelect>\n\t\t\t</InputBaseWithBackCompatMinWidth>\n\t\t\t{ /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */ }\n\t\t\t<ul { ...menuProps } onKeyDown={ onKeyDownHandler }>\n\t\t\t\t{ isOpen &&\n\t\t\t\t\titems.map( ( item, index ) => (\n\t\t\t\t\t\t// eslint-disable-next-line react/jsx-key\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t{ ...getItemProps( {\n\t\t\t\t\t\t\t\titem,\n\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\tkey: item.key,\n\t\t\t\t\t\t\t\tclassName: classnames(\n\t\t\t\t\t\t\t\t\titem.className,\n\t\t\t\t\t\t\t\t\t'components-custom-select-control__item',\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t'is-highlighted':\n\t\t\t\t\t\t\t\t\t\t\tindex === highlightedIndex,\n\t\t\t\t\t\t\t\t\t\t'has-hint': !! item.__experimentalHint,\n\t\t\t\t\t\t\t\t\t\t'is-next-40px-default-size':\n\t\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tstyle: item.style,\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ item.name }\n\t\t\t\t\t\t\t{ item.__experimentalHint && (\n\t\t\t\t\t\t\t\t<span className=\"components-custom-select-control__item-hint\">\n\t\t\t\t\t\t\t\t\t{ item.__experimentalHint }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ item === selectedItem && (\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\ticon={ check }\n\t\t\t\t\t\t\t\t\tclassName=\"components-custom-select-control__item-icon\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n\nexport function StableCustomSelectControl( props ) {\n\treturn (\n\t\t<CustomSelectControl\n\t\t\t{ ...props }\n\t\t\t__experimentalShowSelectedHint={ false }\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
@@ -34,17 +34,20 @@ export function CustomSelect({
34
34
  onChange,
35
35
  size = 'default',
36
36
  value,
37
- renderSelectedValue = defaultRenderSelectedValue,
37
+ renderSelectedValue,
38
38
  ...props
39
39
  }) {
40
40
  const store = Ariakit.useSelectStore({
41
41
  setValue: nextValue => onChange?.(nextValue),
42
42
  defaultValue,
43
- value
43
+ value,
44
+ // fix for Safari bug: https://github.com/WordPress/gutenberg/issues/55023#issuecomment-1834035917
45
+ virtualFocus: false
44
46
  });
45
47
  const {
46
48
  value: currentValue
47
49
  } = store.useState();
50
+ const computedRenderSelectedValue = renderSelectedValue !== null && renderSelectedValue !== void 0 ? renderSelectedValue : defaultRenderSelectedValue;
48
51
  return createElement(Fragment, null, createElement(Styled.CustomSelectLabel, {
49
52
  store: store
50
53
  }, label), createElement(Styled.CustomSelectButton, {
@@ -52,7 +55,7 @@ export function CustomSelect({
52
55
  size: size,
53
56
  hasCustomRenderProp: !!renderSelectedValue,
54
57
  store: store
55
- }, renderSelectedValue(currentValue), createElement(Ariakit.SelectArrow, null)), createElement(Styled.CustomSelectPopover, {
58
+ }, computedRenderSelectedValue(currentValue), createElement(Ariakit.SelectArrow, null)), createElement(Styled.CustomSelectPopover, {
56
59
  gutter: 12,
57
60
  store: store,
58
61
  sameWidth: true
@@ -1 +1 @@
1
- {"version":3,"names":["Ariakit","createContext","useContext","__","sprintf","Styled","CustomSelectContext","undefined","defaultRenderSelectedValue","value","isValueEmpty","Array","isArray","length","CustomSelect","children","defaultValue","label","onChange","size","renderSelectedValue","props","store","useSelectStore","setValue","nextValue","currentValue","useState","createElement","Fragment","CustomSelectLabel","CustomSelectButton","hasCustomRenderProp","SelectArrow","CustomSelectPopover","gutter","sameWidth","Provider","CustomSelectItem","customSelectContext","SelectItemCheck"],"sources":["@wordpress/components/src/custom-select-control-v2/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport * as Ariakit from '@ariakit/react';\n/**\n * WordPress dependencies\n */\nimport { createContext, useContext } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport * as Styled from './styles';\nimport type {\n\tCustomSelectProps,\n\tCustomSelectItemProps,\n\tCustomSelectContext as CustomSelectContextType,\n} from './types';\nimport type { WordPressComponentProps } from '../context';\n\nexport const CustomSelectContext =\n\tcreateContext< CustomSelectContextType >( undefined );\n\nfunction defaultRenderSelectedValue( value: CustomSelectProps[ 'value' ] ) {\n\tconst isValueEmpty = Array.isArray( value )\n\t\t? value.length === 0\n\t\t: value === undefined || value === null;\n\n\tif ( isValueEmpty ) {\n\t\treturn __( 'Select an item' );\n\t}\n\n\tif ( Array.isArray( value ) ) {\n\t\treturn value.length === 1\n\t\t\t? value[ 0 ]\n\t\t\t: // translators: %s: number of items selected (it will always be 2 or more items)\n\t\t\t sprintf( __( '%s items selected' ), value.length );\n\t}\n\n\treturn value;\n}\n\nexport function CustomSelect( {\n\tchildren,\n\tdefaultValue,\n\tlabel,\n\tonChange,\n\tsize = 'default',\n\tvalue,\n\trenderSelectedValue = defaultRenderSelectedValue,\n\t...props\n}: WordPressComponentProps< CustomSelectProps, 'button', false > ) {\n\tconst store = Ariakit.useSelectStore( {\n\t\tsetValue: ( nextValue ) => onChange?.( nextValue ),\n\t\tdefaultValue,\n\t\tvalue,\n\t} );\n\n\tconst { value: currentValue } = store.useState();\n\n\treturn (\n\t\t<>\n\t\t\t<Styled.CustomSelectLabel store={ store }>\n\t\t\t\t{ label }\n\t\t\t</Styled.CustomSelectLabel>\n\t\t\t<Styled.CustomSelectButton\n\t\t\t\t{ ...props }\n\t\t\t\tsize={ size }\n\t\t\t\thasCustomRenderProp={ !! renderSelectedValue }\n\t\t\t\tstore={ store }\n\t\t\t>\n\t\t\t\t{ renderSelectedValue( currentValue ) }\n\t\t\t\t<Ariakit.SelectArrow />\n\t\t\t</Styled.CustomSelectButton>\n\t\t\t<Styled.CustomSelectPopover gutter={ 12 } store={ store } sameWidth>\n\t\t\t\t<CustomSelectContext.Provider value={ { store } }>\n\t\t\t\t\t{ children }\n\t\t\t\t</CustomSelectContext.Provider>\n\t\t\t</Styled.CustomSelectPopover>\n\t\t</>\n\t);\n}\n\nexport function CustomSelectItem( {\n\tchildren,\n\t...props\n}: WordPressComponentProps< CustomSelectItemProps, 'div', false > ) {\n\tconst customSelectContext = useContext( CustomSelectContext );\n\treturn (\n\t\t<Styled.CustomSelectItem\n\t\t\tstore={ customSelectContext?.store }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ children ?? props.value }\n\t\t\t<Ariakit.SelectItemCheck />\n\t\t</Styled.CustomSelectItem>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AACzC;AACA;AACA;AACA,SAASC,aAAa,EAAEC,UAAU,QAAQ,oBAAoB;AAC9D,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;;AAE7C;AACA;AACA;AACA,OAAO,KAAKC,MAAM,MAAM,UAAU;AAQlC,OAAO,MAAMC,mBAAmB,GAC/BL,aAAa,CAA6BM,SAAU,CAAC;AAEtD,SAASC,0BAA0BA,CAAEC,KAAmC,EAAG;EAC1E,MAAMC,YAAY,GAAGC,KAAK,CAACC,OAAO,CAAEH,KAAM,CAAC,GACxCA,KAAK,CAACI,MAAM,KAAK,CAAC,GAClBJ,KAAK,KAAKF,SAAS,IAAIE,KAAK,KAAK,IAAI;EAExC,IAAKC,YAAY,EAAG;IACnB,OAAOP,EAAE,CAAE,gBAAiB,CAAC;EAC9B;EAEA,IAAKQ,KAAK,CAACC,OAAO,CAAEH,KAAM,CAAC,EAAG;IAC7B,OAAOA,KAAK,CAACI,MAAM,KAAK,CAAC,GACtBJ,KAAK,CAAE,CAAC,CAAE;IACV;IACAL,OAAO,CAAED,EAAE,CAAE,mBAAoB,CAAC,EAAEM,KAAK,CAACI,MAAO,CAAC;EACtD;EAEA,OAAOJ,KAAK;AACb;AAEA,OAAO,SAASK,YAAYA,CAAE;EAC7BC,QAAQ;EACRC,YAAY;EACZC,KAAK;EACLC,QAAQ;EACRC,IAAI,GAAG,SAAS;EAChBV,KAAK;EACLW,mBAAmB,GAAGZ,0BAA0B;EAChD,GAAGa;AAC2D,CAAC,EAAG;EAClE,MAAMC,KAAK,GAAGtB,OAAO,CAACuB,cAAc,CAAE;IACrCC,QAAQ,EAAIC,SAAS,IAAMP,QAAQ,GAAIO,SAAU,CAAC;IAClDT,YAAY;IACZP;EACD,CAAE,CAAC;EAEH,MAAM;IAAEA,KAAK,EAAEiB;EAAa,CAAC,GAAGJ,KAAK,CAACK,QAAQ,CAAC,CAAC;EAEhD,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACvB,MAAM,CAACyB,iBAAiB;IAACR,KAAK,EAAGA;EAAO,GACtCL,KACuB,CAAC,EAC3BW,aAAA,CAACvB,MAAM,CAAC0B,kBAAkB;IAAA,GACpBV,KAAK;IACVF,IAAI,EAAGA,IAAM;IACba,mBAAmB,EAAG,CAAC,CAAEZ,mBAAqB;IAC9CE,KAAK,EAAGA;EAAO,GAEbF,mBAAmB,CAAEM,YAAa,CAAC,EACrCE,aAAA,CAAC5B,OAAO,CAACiC,WAAW,MAAE,CACI,CAAC,EAC5BL,aAAA,CAACvB,MAAM,CAAC6B,mBAAmB;IAACC,MAAM,EAAG,EAAI;IAACb,KAAK,EAAGA,KAAO;IAACc,SAAS;EAAA,GAClER,aAAA,CAACtB,mBAAmB,CAAC+B,QAAQ;IAAC5B,KAAK,EAAG;MAAEa;IAAM;EAAG,GAC9CP,QAC2B,CACH,CAC3B,CAAC;AAEL;AAEA,OAAO,SAASuB,gBAAgBA,CAAE;EACjCvB,QAAQ;EACR,GAAGM;AAC4D,CAAC,EAAG;EACnE,MAAMkB,mBAAmB,GAAGrC,UAAU,CAAEI,mBAAoB,CAAC;EAC7D,OACCsB,aAAA,CAACvB,MAAM,CAACiC,gBAAgB;IACvBhB,KAAK,EAAGiB,mBAAmB,EAAEjB,KAAO;IAAA,GAC/BD;EAAK,GAERN,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAIM,KAAK,CAACZ,KAAK,EACzBmB,aAAA,CAAC5B,OAAO,CAACwC,eAAe,MAAE,CACF,CAAC;AAE5B"}
1
+ {"version":3,"names":["Ariakit","createContext","useContext","__","sprintf","Styled","CustomSelectContext","undefined","defaultRenderSelectedValue","value","isValueEmpty","Array","isArray","length","CustomSelect","children","defaultValue","label","onChange","size","renderSelectedValue","props","store","useSelectStore","setValue","nextValue","virtualFocus","currentValue","useState","computedRenderSelectedValue","createElement","Fragment","CustomSelectLabel","CustomSelectButton","hasCustomRenderProp","SelectArrow","CustomSelectPopover","gutter","sameWidth","Provider","CustomSelectItem","customSelectContext","SelectItemCheck"],"sources":["@wordpress/components/src/custom-select-control-v2/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport * as Ariakit from '@ariakit/react';\n/**\n * WordPress dependencies\n */\nimport { createContext, useContext } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport * as Styled from './styles';\nimport type {\n\tCustomSelectProps,\n\tCustomSelectItemProps,\n\tCustomSelectContext as CustomSelectContextType,\n} from './types';\nimport type { WordPressComponentProps } from '../context';\n\nexport const CustomSelectContext =\n\tcreateContext< CustomSelectContextType >( undefined );\n\nfunction defaultRenderSelectedValue( value: CustomSelectProps[ 'value' ] ) {\n\tconst isValueEmpty = Array.isArray( value )\n\t\t? value.length === 0\n\t\t: value === undefined || value === null;\n\n\tif ( isValueEmpty ) {\n\t\treturn __( 'Select an item' );\n\t}\n\n\tif ( Array.isArray( value ) ) {\n\t\treturn value.length === 1\n\t\t\t? value[ 0 ]\n\t\t\t: // translators: %s: number of items selected (it will always be 2 or more items)\n\t\t\t sprintf( __( '%s items selected' ), value.length );\n\t}\n\n\treturn value;\n}\n\nexport function CustomSelect( {\n\tchildren,\n\tdefaultValue,\n\tlabel,\n\tonChange,\n\tsize = 'default',\n\tvalue,\n\trenderSelectedValue,\n\t...props\n}: WordPressComponentProps< CustomSelectProps, 'button', false > ) {\n\tconst store = Ariakit.useSelectStore( {\n\t\tsetValue: ( nextValue ) => onChange?.( nextValue ),\n\t\tdefaultValue,\n\t\tvalue,\n\t\t// fix for Safari bug: https://github.com/WordPress/gutenberg/issues/55023#issuecomment-1834035917\n\t\tvirtualFocus: false,\n\t} );\n\n\tconst { value: currentValue } = store.useState();\n\n\tconst computedRenderSelectedValue =\n\t\trenderSelectedValue ?? defaultRenderSelectedValue;\n\n\treturn (\n\t\t<>\n\t\t\t<Styled.CustomSelectLabel store={ store }>\n\t\t\t\t{ label }\n\t\t\t</Styled.CustomSelectLabel>\n\t\t\t<Styled.CustomSelectButton\n\t\t\t\t{ ...props }\n\t\t\t\tsize={ size }\n\t\t\t\thasCustomRenderProp={ !! renderSelectedValue }\n\t\t\t\tstore={ store }\n\t\t\t>\n\t\t\t\t{ computedRenderSelectedValue( currentValue ) }\n\t\t\t\t<Ariakit.SelectArrow />\n\t\t\t</Styled.CustomSelectButton>\n\t\t\t<Styled.CustomSelectPopover gutter={ 12 } store={ store } sameWidth>\n\t\t\t\t<CustomSelectContext.Provider value={ { store } }>\n\t\t\t\t\t{ children }\n\t\t\t\t</CustomSelectContext.Provider>\n\t\t\t</Styled.CustomSelectPopover>\n\t\t</>\n\t);\n}\n\nexport function CustomSelectItem( {\n\tchildren,\n\t...props\n}: WordPressComponentProps< CustomSelectItemProps, 'div', false > ) {\n\tconst customSelectContext = useContext( CustomSelectContext );\n\treturn (\n\t\t<Styled.CustomSelectItem\n\t\t\tstore={ customSelectContext?.store }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ children ?? props.value }\n\t\t\t<Ariakit.SelectItemCheck />\n\t\t</Styled.CustomSelectItem>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AACzC;AACA;AACA;AACA,SAASC,aAAa,EAAEC,UAAU,QAAQ,oBAAoB;AAC9D,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;;AAE7C;AACA;AACA;AACA,OAAO,KAAKC,MAAM,MAAM,UAAU;AAQlC,OAAO,MAAMC,mBAAmB,GAC/BL,aAAa,CAA6BM,SAAU,CAAC;AAEtD,SAASC,0BAA0BA,CAAEC,KAAmC,EAAG;EAC1E,MAAMC,YAAY,GAAGC,KAAK,CAACC,OAAO,CAAEH,KAAM,CAAC,GACxCA,KAAK,CAACI,MAAM,KAAK,CAAC,GAClBJ,KAAK,KAAKF,SAAS,IAAIE,KAAK,KAAK,IAAI;EAExC,IAAKC,YAAY,EAAG;IACnB,OAAOP,EAAE,CAAE,gBAAiB,CAAC;EAC9B;EAEA,IAAKQ,KAAK,CAACC,OAAO,CAAEH,KAAM,CAAC,EAAG;IAC7B,OAAOA,KAAK,CAACI,MAAM,KAAK,CAAC,GACtBJ,KAAK,CAAE,CAAC,CAAE;IACV;IACAL,OAAO,CAAED,EAAE,CAAE,mBAAoB,CAAC,EAAEM,KAAK,CAACI,MAAO,CAAC;EACtD;EAEA,OAAOJ,KAAK;AACb;AAEA,OAAO,SAASK,YAAYA,CAAE;EAC7BC,QAAQ;EACRC,YAAY;EACZC,KAAK;EACLC,QAAQ;EACRC,IAAI,GAAG,SAAS;EAChBV,KAAK;EACLW,mBAAmB;EACnB,GAAGC;AAC2D,CAAC,EAAG;EAClE,MAAMC,KAAK,GAAGtB,OAAO,CAACuB,cAAc,CAAE;IACrCC,QAAQ,EAAIC,SAAS,IAAMP,QAAQ,GAAIO,SAAU,CAAC;IAClDT,YAAY;IACZP,KAAK;IACL;IACAiB,YAAY,EAAE;EACf,CAAE,CAAC;EAEH,MAAM;IAAEjB,KAAK,EAAEkB;EAAa,CAAC,GAAGL,KAAK,CAACM,QAAQ,CAAC,CAAC;EAEhD,MAAMC,2BAA2B,GAChCT,mBAAmB,aAAnBA,mBAAmB,cAAnBA,mBAAmB,GAAIZ,0BAA0B;EAElD,OACCsB,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACzB,MAAM,CAAC2B,iBAAiB;IAACV,KAAK,EAAGA;EAAO,GACtCL,KACuB,CAAC,EAC3Ba,aAAA,CAACzB,MAAM,CAAC4B,kBAAkB;IAAA,GACpBZ,KAAK;IACVF,IAAI,EAAGA,IAAM;IACbe,mBAAmB,EAAG,CAAC,CAAEd,mBAAqB;IAC9CE,KAAK,EAAGA;EAAO,GAEbO,2BAA2B,CAAEF,YAAa,CAAC,EAC7CG,aAAA,CAAC9B,OAAO,CAACmC,WAAW,MAAE,CACI,CAAC,EAC5BL,aAAA,CAACzB,MAAM,CAAC+B,mBAAmB;IAACC,MAAM,EAAG,EAAI;IAACf,KAAK,EAAGA,KAAO;IAACgB,SAAS;EAAA,GAClER,aAAA,CAACxB,mBAAmB,CAACiC,QAAQ;IAAC9B,KAAK,EAAG;MAAEa;IAAM;EAAG,GAC9CP,QAC2B,CACH,CAC3B,CAAC;AAEL;AAEA,OAAO,SAASyB,gBAAgBA,CAAE;EACjCzB,QAAQ;EACR,GAAGM;AAC4D,CAAC,EAAG;EACnE,MAAMoB,mBAAmB,GAAGvC,UAAU,CAAEI,mBAAoB,CAAC;EAC7D,OACCwB,aAAA,CAACzB,MAAM,CAACmC,gBAAgB;IACvBlB,KAAK,EAAGmB,mBAAmB,EAAEnB,KAAO;IAAA,GAC/BD;EAAK,GAERN,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAIM,KAAK,CAACZ,KAAK,EACzBqB,aAAA,CAAC9B,OAAO,CAAC0C,eAAe,MAAE,CACF,CAAC;AAE5B"}
@@ -29,7 +29,7 @@ const TimeZone = () => {
29
29
  return null;
30
30
  }
31
31
  const offsetSymbol = Number(timezone.offset) >= 0 ? '+' : '';
32
- const zoneAbbr = '' !== timezone.abbr && isNaN(Number(timezone.abbr)) ? timezone.abbr : `UTC${offsetSymbol}${timezone.offset}`;
32
+ const zoneAbbr = '' !== timezone.abbr && isNaN(Number(timezone.abbr)) ? timezone.abbr : `UTC${offsetSymbol}${timezone.offsetFormatted}`;
33
33
 
34
34
  // Replace underscore with space in strings like `America/Costa_Rica`.
35
35
  const prettyTimezoneString = timezone.string.replace('_', ' ');
@@ -1 +1 @@
1
- {"version":3,"names":["__","getSettings","getDateSettings","Tooltip","TimeZone","StyledComponent","timezone","userTimezoneOffset","Date","getTimezoneOffset","Number","offset","offsetSymbol","zoneAbbr","abbr","isNaN","prettyTimezoneString","string","replace","timezoneDetail","hasNoAdditionalTimezoneDetail","trim","length","createElement","className","placement","text"],"sources":["@wordpress/components/src/date-time/time/timezone.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { getSettings as getDateSettings } from '@wordpress/date';\n\n/**\n * Internal dependencies\n */\nimport Tooltip from '../../tooltip';\nimport { TimeZone as StyledComponent } from './styles';\n\n/**\n * Displays timezone information when user timezone is different from site\n * timezone.\n */\nconst TimeZone = () => {\n\tconst { timezone } = getDateSettings();\n\n\t// Convert timezone offset to hours.\n\tconst userTimezoneOffset = -1 * ( new Date().getTimezoneOffset() / 60 );\n\n\t// System timezone and user timezone match, nothing needed.\n\t// Compare as numbers because it comes over as string.\n\tif ( Number( timezone.offset ) === userTimezoneOffset ) {\n\t\treturn null;\n\t}\n\n\tconst offsetSymbol = Number( timezone.offset ) >= 0 ? '+' : '';\n\tconst zoneAbbr =\n\t\t'' !== timezone.abbr && isNaN( Number( timezone.abbr ) )\n\t\t\t? timezone.abbr\n\t\t\t: `UTC${ offsetSymbol }${ timezone.offset }`;\n\n\t// Replace underscore with space in strings like `America/Costa_Rica`.\n\tconst prettyTimezoneString = timezone.string.replace( '_', ' ' );\n\n\tconst timezoneDetail =\n\t\t'UTC' === timezone.string\n\t\t\t? __( 'Coordinated Universal Time' )\n\t\t\t: `(${ zoneAbbr }) ${ prettyTimezoneString }`;\n\n\t// When the prettyTimezoneString is empty, there is no additional timezone\n\t// detail information to show in a Tooltip.\n\tconst hasNoAdditionalTimezoneDetail =\n\t\tprettyTimezoneString.trim().length === 0;\n\n\treturn hasNoAdditionalTimezoneDetail ? (\n\t\t<StyledComponent className=\"components-datetime__timezone\">\n\t\t\t{ zoneAbbr }\n\t\t</StyledComponent>\n\t) : (\n\t\t<Tooltip placement=\"top\" text={ timezoneDetail }>\n\t\t\t<StyledComponent className=\"components-datetime__timezone\">\n\t\t\t\t{ zoneAbbr }\n\t\t\t</StyledComponent>\n\t\t</Tooltip>\n\t);\n};\n\nexport default TimeZone;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,IAAIC,eAAe,QAAQ,iBAAiB;;AAEhE;AACA;AACA;AACA,OAAOC,OAAO,MAAM,eAAe;AACnC,SAASC,QAAQ,IAAIC,eAAe,QAAQ,UAAU;;AAEtD;AACA;AACA;AACA;AACA,MAAMD,QAAQ,GAAGA,CAAA,KAAM;EACtB,MAAM;IAAEE;EAAS,CAAC,GAAGJ,eAAe,CAAC,CAAC;;EAEtC;EACA,MAAMK,kBAAkB,GAAG,CAAC,CAAC,IAAK,IAAIC,IAAI,CAAC,CAAC,CAACC,iBAAiB,CAAC,CAAC,GAAG,EAAE,CAAE;;EAEvE;EACA;EACA,IAAKC,MAAM,CAAEJ,QAAQ,CAACK,MAAO,CAAC,KAAKJ,kBAAkB,EAAG;IACvD,OAAO,IAAI;EACZ;EAEA,MAAMK,YAAY,GAAGF,MAAM,CAAEJ,QAAQ,CAACK,MAAO,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE;EAC9D,MAAME,QAAQ,GACb,EAAE,KAAKP,QAAQ,CAACQ,IAAI,IAAIC,KAAK,CAAEL,MAAM,CAAEJ,QAAQ,CAACQ,IAAK,CAAE,CAAC,GACrDR,QAAQ,CAACQ,IAAI,GACZ,MAAMF,YAAc,GAAGN,QAAQ,CAACK,MAAQ,EAAC;;EAE9C;EACA,MAAMK,oBAAoB,GAAGV,QAAQ,CAACW,MAAM,CAACC,OAAO,CAAE,GAAG,EAAE,GAAI,CAAC;EAEhE,MAAMC,cAAc,GACnB,KAAK,KAAKb,QAAQ,CAACW,MAAM,GACtBjB,EAAE,CAAE,4BAA6B,CAAC,GACjC,IAAIa,QAAU,KAAKG,oBAAsB,EAAC;;EAE/C;EACA;EACA,MAAMI,6BAA6B,GAClCJ,oBAAoB,CAACK,IAAI,CAAC,CAAC,CAACC,MAAM,KAAK,CAAC;EAEzC,OAAOF,6BAA6B,GACnCG,aAAA,CAAClB,eAAe;IAACmB,SAAS,EAAC;EAA+B,GACvDX,QACc,CAAC,GAElBU,aAAA,CAACpB,OAAO;IAACsB,SAAS,EAAC,KAAK;IAACC,IAAI,EAAGP;EAAgB,GAC/CI,aAAA,CAAClB,eAAe;IAACmB,SAAS,EAAC;EAA+B,GACvDX,QACc,CACT,CACT;AACF,CAAC;AAED,eAAeT,QAAQ"}
1
+ {"version":3,"names":["__","getSettings","getDateSettings","Tooltip","TimeZone","StyledComponent","timezone","userTimezoneOffset","Date","getTimezoneOffset","Number","offset","offsetSymbol","zoneAbbr","abbr","isNaN","offsetFormatted","prettyTimezoneString","string","replace","timezoneDetail","hasNoAdditionalTimezoneDetail","trim","length","createElement","className","placement","text"],"sources":["@wordpress/components/src/date-time/time/timezone.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { getSettings as getDateSettings } from '@wordpress/date';\n\n/**\n * Internal dependencies\n */\nimport Tooltip from '../../tooltip';\nimport { TimeZone as StyledComponent } from './styles';\n\n/**\n * Displays timezone information when user timezone is different from site\n * timezone.\n */\nconst TimeZone = () => {\n\tconst { timezone } = getDateSettings();\n\n\t// Convert timezone offset to hours.\n\tconst userTimezoneOffset = -1 * ( new Date().getTimezoneOffset() / 60 );\n\n\t// System timezone and user timezone match, nothing needed.\n\t// Compare as numbers because it comes over as string.\n\tif ( Number( timezone.offset ) === userTimezoneOffset ) {\n\t\treturn null;\n\t}\n\n\tconst offsetSymbol = Number( timezone.offset ) >= 0 ? '+' : '';\n\tconst zoneAbbr =\n\t\t'' !== timezone.abbr && isNaN( Number( timezone.abbr ) )\n\t\t\t? timezone.abbr\n\t\t\t: `UTC${ offsetSymbol }${ timezone.offsetFormatted }`;\n\n\t// Replace underscore with space in strings like `America/Costa_Rica`.\n\tconst prettyTimezoneString = timezone.string.replace( '_', ' ' );\n\n\tconst timezoneDetail =\n\t\t'UTC' === timezone.string\n\t\t\t? __( 'Coordinated Universal Time' )\n\t\t\t: `(${ zoneAbbr }) ${ prettyTimezoneString }`;\n\n\t// When the prettyTimezoneString is empty, there is no additional timezone\n\t// detail information to show in a Tooltip.\n\tconst hasNoAdditionalTimezoneDetail =\n\t\tprettyTimezoneString.trim().length === 0;\n\n\treturn hasNoAdditionalTimezoneDetail ? (\n\t\t<StyledComponent className=\"components-datetime__timezone\">\n\t\t\t{ zoneAbbr }\n\t\t</StyledComponent>\n\t) : (\n\t\t<Tooltip placement=\"top\" text={ timezoneDetail }>\n\t\t\t<StyledComponent className=\"components-datetime__timezone\">\n\t\t\t\t{ zoneAbbr }\n\t\t\t</StyledComponent>\n\t\t</Tooltip>\n\t);\n};\n\nexport default TimeZone;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,IAAIC,eAAe,QAAQ,iBAAiB;;AAEhE;AACA;AACA;AACA,OAAOC,OAAO,MAAM,eAAe;AACnC,SAASC,QAAQ,IAAIC,eAAe,QAAQ,UAAU;;AAEtD;AACA;AACA;AACA;AACA,MAAMD,QAAQ,GAAGA,CAAA,KAAM;EACtB,MAAM;IAAEE;EAAS,CAAC,GAAGJ,eAAe,CAAC,CAAC;;EAEtC;EACA,MAAMK,kBAAkB,GAAG,CAAC,CAAC,IAAK,IAAIC,IAAI,CAAC,CAAC,CAACC,iBAAiB,CAAC,CAAC,GAAG,EAAE,CAAE;;EAEvE;EACA;EACA,IAAKC,MAAM,CAAEJ,QAAQ,CAACK,MAAO,CAAC,KAAKJ,kBAAkB,EAAG;IACvD,OAAO,IAAI;EACZ;EAEA,MAAMK,YAAY,GAAGF,MAAM,CAAEJ,QAAQ,CAACK,MAAO,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE;EAC9D,MAAME,QAAQ,GACb,EAAE,KAAKP,QAAQ,CAACQ,IAAI,IAAIC,KAAK,CAAEL,MAAM,CAAEJ,QAAQ,CAACQ,IAAK,CAAE,CAAC,GACrDR,QAAQ,CAACQ,IAAI,GACZ,MAAMF,YAAc,GAAGN,QAAQ,CAACU,eAAiB,EAAC;;EAEvD;EACA,MAAMC,oBAAoB,GAAGX,QAAQ,CAACY,MAAM,CAACC,OAAO,CAAE,GAAG,EAAE,GAAI,CAAC;EAEhE,MAAMC,cAAc,GACnB,KAAK,KAAKd,QAAQ,CAACY,MAAM,GACtBlB,EAAE,CAAE,4BAA6B,CAAC,GACjC,IAAIa,QAAU,KAAKI,oBAAsB,EAAC;;EAE/C;EACA;EACA,MAAMI,6BAA6B,GAClCJ,oBAAoB,CAACK,IAAI,CAAC,CAAC,CAACC,MAAM,KAAK,CAAC;EAEzC,OAAOF,6BAA6B,GACnCG,aAAA,CAACnB,eAAe;IAACoB,SAAS,EAAC;EAA+B,GACvDZ,QACc,CAAC,GAElBW,aAAA,CAACrB,OAAO;IAACuB,SAAS,EAAC,KAAK;IAACC,IAAI,EAAGP;EAAgB,GAC/CI,aAAA,CAACnB,eAAe;IAACoB,SAAS,EAAC;EAA+B,GACvDZ,QACc,CACT,CACT;AACF,CAAC;AAED,eAAeT,QAAQ"}