@wordpress/components 19.13.0 → 19.16.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 (1183) hide show
  1. package/CHANGELOG.md +139 -12
  2. package/build/alignment-matrix-control/utils.js +1 -7
  3. package/build/alignment-matrix-control/utils.js.map +1 -1
  4. package/build/angle-picker-control/index.js +2 -2
  5. package/build/angle-picker-control/index.js.map +1 -1
  6. package/build/autocomplete/autocompleter-ui.js +4 -2
  7. package/build/autocomplete/autocompleter-ui.js.map +1 -1
  8. package/build/autocomplete/autocompleter-ui.native.js +9 -3
  9. package/build/autocomplete/autocompleter-ui.native.js.map +1 -1
  10. package/build/autocomplete/get-default-use-items.js +5 -1
  11. package/build/autocomplete/get-default-use-items.js.map +1 -1
  12. package/build/autocomplete/index.js +9 -3
  13. package/build/autocomplete/index.js.map +1 -1
  14. package/build/base-control/styles/base-control-styles.js +8 -8
  15. package/build/base-control/styles/base-control-styles.js.map +1 -1
  16. package/build/border-box-control/border-box-control/component.js +2 -1
  17. package/build/border-box-control/border-box-control/component.js.map +1 -1
  18. package/build/border-box-control/border-box-control-split-controls/component.js +2 -1
  19. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  20. package/build/border-control/border-control/component.js +78 -29
  21. package/build/border-control/border-control/component.js.map +1 -1
  22. package/build/border-control/border-control/hook.js +4 -7
  23. package/build/border-control/border-control/hook.js.map +1 -1
  24. package/build/border-control/border-control-dropdown/component.js +13 -7
  25. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  26. package/build/border-control/border-control-dropdown/hook.js +0 -4
  27. package/build/border-control/border-control-dropdown/hook.js.map +1 -1
  28. package/build/border-control/styles.js +33 -56
  29. package/build/border-control/styles.js.map +1 -1
  30. package/build/box-control/axial-input-controls.js +1 -1
  31. package/build/box-control/axial-input-controls.js.map +1 -1
  32. package/build/box-control/index.js +1 -1
  33. package/build/box-control/index.js.map +1 -1
  34. package/build/box-control/utils.js +5 -11
  35. package/build/box-control/utils.js.map +1 -1
  36. package/build/color-indicator/index.js +27 -10
  37. package/build/color-indicator/index.js.map +1 -1
  38. package/build/color-indicator/types.js +6 -0
  39. package/build/color-indicator/types.js.map +1 -0
  40. package/build/color-palette/index.js +16 -3
  41. package/build/color-palette/index.js.map +1 -1
  42. package/build/color-picker/component.js +6 -9
  43. package/build/color-picker/component.js.map +1 -1
  44. package/build/color-picker/hex-input.js +7 -5
  45. package/build/color-picker/hex-input.js.map +1 -1
  46. package/build/color-picker/index.native.js +35 -34
  47. package/build/color-picker/index.native.js.map +1 -1
  48. package/build/color-picker/input-with-slider.js +7 -5
  49. package/build/color-picker/input-with-slider.js.map +1 -1
  50. package/build/color-picker/styles.js +42 -43
  51. package/build/color-picker/styles.js.map +1 -1
  52. package/build/color-picker/use-deprecated-props.js +22 -31
  53. package/build/color-picker/use-deprecated-props.js.map +1 -1
  54. package/build/combobox-control/index.js +19 -13
  55. package/build/combobox-control/index.js.map +1 -1
  56. package/build/combobox-control/styles.js +39 -0
  57. package/build/combobox-control/styles.js.map +1 -0
  58. package/build/custom-gradient-picker/index.js +8 -8
  59. package/build/custom-gradient-picker/index.js.map +1 -1
  60. package/build/custom-gradient-picker/index.native.js +8 -9
  61. package/build/custom-gradient-picker/index.native.js.map +1 -1
  62. package/build/custom-gradient-picker/serializer.js +4 -7
  63. package/build/custom-gradient-picker/serializer.js.map +1 -1
  64. package/build/custom-select-control/index.js +26 -8
  65. package/build/custom-select-control/index.js.map +1 -1
  66. package/build/date-time/date/index.js +3 -1
  67. package/build/date-time/date/index.js.map +1 -1
  68. package/build/date-time/date-time/index.js +3 -1
  69. package/build/date-time/date-time/index.js.map +1 -1
  70. package/build/divider/component.js +0 -1
  71. package/build/divider/component.js.map +1 -1
  72. package/build/divider/index.js.map +1 -1
  73. package/build/divider/styles.js +5 -5
  74. package/build/divider/styles.js.map +1 -1
  75. package/build/dropdown/dropdown-content-wrapper.js +60 -0
  76. package/build/dropdown/dropdown-content-wrapper.js.map +1 -0
  77. package/build/dropdown/styles.js +42 -0
  78. package/build/dropdown/styles.js.map +1 -0
  79. package/build/dropdown/types.js +6 -0
  80. package/build/dropdown/types.js.map +1 -0
  81. package/build/dropdown-menu/index.js +5 -5
  82. package/build/dropdown-menu/index.js.map +1 -1
  83. package/build/dropdown-menu/index.native.js +5 -5
  84. package/build/dropdown-menu/index.native.js.map +1 -1
  85. package/build/duotone-picker/duotone-picker.js +42 -29
  86. package/build/duotone-picker/duotone-picker.js.map +1 -1
  87. package/build/elevation/component.js +15 -15
  88. package/build/elevation/component.js.map +1 -1
  89. package/build/elevation/hook.js +15 -27
  90. package/build/elevation/hook.js.map +1 -1
  91. package/build/elevation/index.js.map +1 -1
  92. package/build/elevation/styles.js +1 -1
  93. package/build/elevation/styles.js.map +1 -1
  94. package/build/external-link/index.js +1 -3
  95. package/build/external-link/index.js.map +1 -1
  96. package/build/flex/flex/component.js +11 -17
  97. package/build/flex/flex/component.js.map +1 -1
  98. package/build/flex/flex-block/component.js +9 -3
  99. package/build/flex/flex-block/component.js.map +1 -1
  100. package/build/flex/flex-item/component.js +9 -3
  101. package/build/flex/flex-item/component.js.map +1 -1
  102. package/build/focal-point-picker/grid.js +2 -7
  103. package/build/focal-point-picker/grid.js.map +1 -1
  104. package/build/focal-point-picker/index.native.js +12 -12
  105. package/build/focal-point-picker/index.native.js.map +1 -1
  106. package/build/focal-point-picker/tooltip/index.native.js +11 -12
  107. package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
  108. package/build/form-toggle/index.js +28 -5
  109. package/build/form-toggle/index.js.map +1 -1
  110. package/build/form-toggle/types.js +6 -0
  111. package/build/form-toggle/types.js.map +1 -0
  112. package/build/form-token-field/index.js +22 -7
  113. package/build/form-token-field/index.js.map +1 -1
  114. package/build/form-token-field/styles.js +40 -0
  115. package/build/form-token-field/styles.js.map +1 -0
  116. package/build/form-token-field/suggestions-list.js +2 -7
  117. package/build/form-token-field/suggestions-list.js.map +1 -1
  118. package/build/grid/component.js +7 -8
  119. package/build/grid/component.js.map +1 -1
  120. package/build/grid/hook.js +1 -5
  121. package/build/grid/hook.js.map +1 -1
  122. package/build/grid/index.js.map +1 -1
  123. package/build/grid/utils.js +4 -7
  124. package/build/grid/utils.js.map +1 -1
  125. package/build/h-stack/component.js +5 -9
  126. package/build/h-stack/component.js.map +1 -1
  127. package/build/h-stack/hook.js +8 -10
  128. package/build/h-stack/hook.js.map +1 -1
  129. package/build/h-stack/index.js.map +1 -1
  130. package/build/h-stack/utils.js +8 -19
  131. package/build/h-stack/utils.js.map +1 -1
  132. package/build/heading/component.js +0 -1
  133. package/build/heading/component.js.map +1 -1
  134. package/build/heading/hook.js.map +1 -1
  135. package/build/heading/types.js +6 -0
  136. package/build/heading/types.js.map +1 -0
  137. package/build/icon/index.js.map +1 -1
  138. package/build/index.js +24 -0
  139. package/build/index.js.map +1 -1
  140. package/build/input-control/index.js +7 -0
  141. package/build/input-control/index.js.map +1 -1
  142. package/build/input-control/input-base.js +23 -1
  143. package/build/input-control/input-base.js.map +1 -1
  144. package/build/input-control/input-prefix-wrapper.js +54 -0
  145. package/build/input-control/input-prefix-wrapper.js.map +1 -0
  146. package/build/input-control/input-suffix-wrapper.js +54 -0
  147. package/build/input-control/input-suffix-wrapper.js.map +1 -0
  148. package/build/input-control/styles/input-control-styles.js +61 -42
  149. package/build/input-control/styles/input-control-styles.js.map +1 -1
  150. package/build/menu-item/index.js +1 -3
  151. package/build/menu-item/index.js.map +1 -1
  152. package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js +0 -1
  153. package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js.map +1 -1
  154. package/build/mobile/focal-point-settings-panel/index.native.js +1 -1
  155. package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  156. package/build/mobile/image/index.native.js +9 -4
  157. package/build/mobile/image/index.native.js.map +1 -1
  158. package/build/mobile/link-picker/index.native.js +4 -4
  159. package/build/mobile/link-picker/index.native.js.map +1 -1
  160. package/build/mobile/media-edit/index.native.js +1 -7
  161. package/build/mobile/media-edit/index.native.js.map +1 -1
  162. package/build/mobile/segmented-control/index.native.js +2 -4
  163. package/build/mobile/segmented-control/index.native.js.map +1 -1
  164. package/build/modal/index.js +17 -3
  165. package/build/modal/index.js.map +1 -1
  166. package/build/navigation/group/index.js +4 -7
  167. package/build/navigation/group/index.js.map +1 -1
  168. package/build/navigation/index.js +4 -1
  169. package/build/navigation/index.js.map +1 -1
  170. package/build/navigation/item/base.js +6 -3
  171. package/build/navigation/item/base.js.map +1 -1
  172. package/build/navigation/item/use-navigation-tree-item.js +2 -1
  173. package/build/navigation/item/use-navigation-tree-item.js.map +1 -1
  174. package/build/navigation/menu/menu-title-search.js +1 -7
  175. package/build/navigation/menu/menu-title-search.js.map +1 -1
  176. package/build/navigation/menu/search-no-results-found.js +1 -7
  177. package/build/navigation/menu/search-no-results-found.js.map +1 -1
  178. package/build/navigation/use-navigation-tree-nodes.js +18 -10
  179. package/build/navigation/use-navigation-tree-nodes.js.map +1 -1
  180. package/build/navigation/utils.js +4 -2
  181. package/build/navigation/utils.js.map +1 -1
  182. package/build/popover/index.js +17 -14
  183. package/build/popover/index.js.map +1 -1
  184. package/build/radio-control/index.js +1 -3
  185. package/build/radio-control/index.js.map +1 -1
  186. package/build/range-control/index.js +57 -43
  187. package/build/range-control/index.js.map +1 -1
  188. package/build/range-control/input-range.js +5 -7
  189. package/build/range-control/input-range.js.map +1 -1
  190. package/build/range-control/mark.js +5 -7
  191. package/build/range-control/mark.js.map +1 -1
  192. package/build/range-control/rail.js +10 -16
  193. package/build/range-control/rail.js.map +1 -1
  194. package/build/range-control/styles/range-control-styles.js +62 -62
  195. package/build/range-control/styles/range-control-styles.js.map +1 -1
  196. package/build/range-control/tooltip.js +5 -7
  197. package/build/range-control/tooltip.js.map +1 -1
  198. package/build/range-control/types.js +6 -0
  199. package/build/range-control/types.js.map +1 -0
  200. package/build/range-control/utils.js +21 -32
  201. package/build/range-control/utils.js.map +1 -1
  202. package/build/resizable-box/resize-tooltip/utils.js +2 -7
  203. package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
  204. package/build/sandbox/index.native.js +13 -2
  205. package/build/sandbox/index.native.js.map +1 -1
  206. package/build/scroll-lock/index.js +35 -6
  207. package/build/scroll-lock/index.js.map +1 -1
  208. package/build/scrollable/component.js +7 -8
  209. package/build/scrollable/component.js.map +1 -1
  210. package/build/scrollable/hook.js +0 -8
  211. package/build/scrollable/hook.js.map +1 -1
  212. package/build/scrollable/index.js.map +1 -1
  213. package/build/scrollable/styles.js +7 -7
  214. package/build/scrollable/styles.js.map +1 -1
  215. package/build/select-control/index.js +1 -3
  216. package/build/select-control/index.js.map +1 -1
  217. package/build/select-control/styles/select-control-styles.js +31 -11
  218. package/build/select-control/styles/select-control-styles.js.map +1 -1
  219. package/build/shortcut/index.js +6 -21
  220. package/build/shortcut/index.js.map +1 -1
  221. package/build/shortcut/types.js +6 -0
  222. package/build/shortcut/types.js.map +1 -0
  223. package/build/slot-fill/index.native.js +6 -8
  224. package/build/slot-fill/index.native.js.map +1 -1
  225. package/build/slot-fill/provider.js +4 -8
  226. package/build/slot-fill/provider.js.map +1 -1
  227. package/build/slot-fill/slot.js +4 -8
  228. package/build/slot-fill/slot.js.map +1 -1
  229. package/build/spacer/component.js +8 -6
  230. package/build/spacer/component.js.map +1 -1
  231. package/build/spacer/hook.js +2 -2
  232. package/build/spacer/hook.js.map +1 -1
  233. package/build/spacer/index.js.map +1 -1
  234. package/build/spinner/index.js +26 -13
  235. package/build/spinner/index.js.map +1 -1
  236. package/build/spinner/styles.js +10 -10
  237. package/build/spinner/styles.js.map +1 -1
  238. package/build/text-highlight/index.js +22 -5
  239. package/build/text-highlight/index.js.map +1 -1
  240. package/build/text-highlight/types.js +6 -0
  241. package/build/text-highlight/types.js.map +1 -0
  242. package/build/tip/index.js +5 -11
  243. package/build/tip/index.js.map +1 -1
  244. package/build/tip/types.js +6 -0
  245. package/build/tip/types.js.map +1 -0
  246. package/build/toggle-group-control/toggle-group-control/component.js +4 -1
  247. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  248. package/build/toggle-group-control/toggle-group-control/styles.js +20 -4
  249. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  250. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +7 -9
  251. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  252. package/build/toolbar-group/index.js +3 -3
  253. package/build/toolbar-group/index.js.map +1 -1
  254. package/build/tooltip/index.js +51 -14
  255. package/build/tooltip/index.js.map +1 -1
  256. package/build/tree-select/index.js +4 -4
  257. package/build/tree-select/index.js.map +1 -1
  258. package/build/truncate/component.js +7 -8
  259. package/build/truncate/component.js.map +1 -1
  260. package/build/truncate/hook.js +3 -10
  261. package/build/truncate/hook.js.map +1 -1
  262. package/build/truncate/index.js.map +1 -1
  263. package/build/truncate/styles.js +1 -1
  264. package/build/truncate/styles.js.map +1 -1
  265. package/build/truncate/utils.js +3 -16
  266. package/build/truncate/utils.js.map +1 -1
  267. package/build/ui/context/use-context-system.js +7 -2
  268. package/build/ui/context/use-context-system.js.map +1 -1
  269. package/build/ui/utils/get-valid-children.js.map +1 -1
  270. package/build/ui/utils/space.js +7 -1
  271. package/build/ui/utils/space.js.map +1 -1
  272. package/build/unit-control/styles/unit-control-styles.js +10 -26
  273. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  274. package/build/utils/math.js +17 -7
  275. package/build/utils/math.js.map +1 -1
  276. package/build/v-stack/component.js +9 -9
  277. package/build/v-stack/component.js.map +1 -1
  278. package/build/v-stack/hook.js +0 -5
  279. package/build/v-stack/hook.js.map +1 -1
  280. package/build/v-stack/index.js.map +1 -1
  281. package/build/visually-hidden/component.js +12 -13
  282. package/build/visually-hidden/component.js.map +1 -1
  283. package/build/visually-hidden/index.js.map +1 -1
  284. package/build/visually-hidden/styles.js +3 -1
  285. package/build/visually-hidden/styles.js.map +1 -1
  286. package/build/visually-hidden/types.js +6 -0
  287. package/build/visually-hidden/types.js.map +1 -0
  288. package/build-module/alignment-matrix-control/utils.js +1 -6
  289. package/build-module/alignment-matrix-control/utils.js.map +1 -1
  290. package/build-module/angle-picker-control/index.js +2 -2
  291. package/build-module/angle-picker-control/index.js.map +1 -1
  292. package/build-module/autocomplete/autocompleter-ui.js +4 -2
  293. package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
  294. package/build-module/autocomplete/autocompleter-ui.native.js +9 -3
  295. package/build-module/autocomplete/autocompleter-ui.native.js.map +1 -1
  296. package/build-module/autocomplete/get-default-use-items.js +3 -2
  297. package/build-module/autocomplete/get-default-use-items.js.map +1 -1
  298. package/build-module/autocomplete/index.js +7 -4
  299. package/build-module/autocomplete/index.js.map +1 -1
  300. package/build-module/base-control/styles/base-control-styles.js +8 -8
  301. package/build-module/base-control/styles/base-control-styles.js.map +1 -1
  302. package/build-module/border-box-control/border-box-control/component.js +2 -1
  303. package/build-module/border-box-control/border-box-control/component.js.map +1 -1
  304. package/build-module/border-box-control/border-box-control-split-controls/component.js +2 -1
  305. package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  306. package/build-module/border-control/border-control/component.js +75 -28
  307. package/build-module/border-control/border-control/component.js.map +1 -1
  308. package/build-module/border-control/border-control/hook.js +4 -7
  309. package/build-module/border-control/border-control/hook.js.map +1 -1
  310. package/build-module/border-control/border-control-dropdown/component.js +12 -7
  311. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  312. package/build-module/border-control/border-control-dropdown/hook.js +0 -4
  313. package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
  314. package/build-module/border-control/styles.js +33 -49
  315. package/build-module/border-control/styles.js.map +1 -1
  316. package/build-module/box-control/axial-input-controls.js +1 -1
  317. package/build-module/box-control/axial-input-controls.js.map +1 -1
  318. package/build-module/box-control/index.js +1 -1
  319. package/build-module/box-control/index.js.map +1 -1
  320. package/build-module/box-control/utils.js +5 -10
  321. package/build-module/box-control/utils.js.map +1 -1
  322. package/build-module/color-indicator/index.js +29 -8
  323. package/build-module/color-indicator/index.js.map +1 -1
  324. package/build-module/color-indicator/types.js +2 -0
  325. package/build-module/color-indicator/types.js.map +1 -0
  326. package/build-module/color-palette/index.js +12 -2
  327. package/build-module/color-palette/index.js.map +1 -1
  328. package/build-module/color-picker/component.js +7 -8
  329. package/build-module/color-picker/component.js.map +1 -1
  330. package/build-module/color-picker/hex-input.js +6 -4
  331. package/build-module/color-picker/hex-input.js.map +1 -1
  332. package/build-module/color-picker/index.native.js +36 -35
  333. package/build-module/color-picker/index.native.js.map +1 -1
  334. package/build-module/color-picker/input-with-slider.js +7 -5
  335. package/build-module/color-picker/input-with-slider.js.map +1 -1
  336. package/build-module/color-picker/styles.js +29 -39
  337. package/build-module/color-picker/styles.js.map +1 -1
  338. package/build-module/color-picker/use-deprecated-props.js +22 -31
  339. package/build-module/color-picker/use-deprecated-props.js.map +1 -1
  340. package/build-module/combobox-control/index.js +19 -13
  341. package/build-module/combobox-control/index.js.map +1 -1
  342. package/build-module/combobox-control/styles.js +27 -0
  343. package/build-module/combobox-control/styles.js.map +1 -0
  344. package/build-module/custom-gradient-picker/index.js +8 -7
  345. package/build-module/custom-gradient-picker/index.js.map +1 -1
  346. package/build-module/custom-gradient-picker/index.native.js +8 -8
  347. package/build-module/custom-gradient-picker/index.native.js.map +1 -1
  348. package/build-module/custom-gradient-picker/serializer.js +4 -6
  349. package/build-module/custom-gradient-picker/serializer.js.map +1 -1
  350. package/build-module/custom-select-control/index.js +26 -10
  351. package/build-module/custom-select-control/index.js.map +1 -1
  352. package/build-module/date-time/date/index.js +3 -1
  353. package/build-module/date-time/date/index.js.map +1 -1
  354. package/build-module/date-time/date-time/index.js +3 -1
  355. package/build-module/date-time/date-time/index.js.map +1 -1
  356. package/build-module/divider/component.js +0 -1
  357. package/build-module/divider/component.js.map +1 -1
  358. package/build-module/divider/index.js.map +1 -1
  359. package/build-module/divider/styles.js +5 -5
  360. package/build-module/divider/styles.js.map +1 -1
  361. package/build-module/dropdown/dropdown-content-wrapper.js +47 -0
  362. package/build-module/dropdown/dropdown-content-wrapper.js.map +1 -0
  363. package/build-module/dropdown/styles.js +31 -0
  364. package/build-module/dropdown/styles.js.map +1 -0
  365. package/build-module/dropdown/types.js +2 -0
  366. package/build-module/dropdown/types.js.map +1 -0
  367. package/build-module/dropdown-menu/index.js +5 -4
  368. package/build-module/dropdown-menu/index.js.map +1 -1
  369. package/build-module/dropdown-menu/index.native.js +5 -4
  370. package/build-module/dropdown-menu/index.native.js.map +1 -1
  371. package/build-module/duotone-picker/duotone-picker.js +42 -29
  372. package/build-module/duotone-picker/duotone-picker.js.map +1 -1
  373. package/build-module/elevation/component.js +15 -15
  374. package/build-module/elevation/component.js.map +1 -1
  375. package/build-module/elevation/hook.js +14 -26
  376. package/build-module/elevation/hook.js.map +1 -1
  377. package/build-module/elevation/index.js.map +1 -1
  378. package/build-module/elevation/styles.js +1 -1
  379. package/build-module/elevation/styles.js.map +1 -1
  380. package/build-module/external-link/index.js +1 -2
  381. package/build-module/external-link/index.js.map +1 -1
  382. package/build-module/flex/flex/component.js +11 -17
  383. package/build-module/flex/flex/component.js.map +1 -1
  384. package/build-module/flex/flex-block/component.js +9 -3
  385. package/build-module/flex/flex-block/component.js.map +1 -1
  386. package/build-module/flex/flex-item/component.js +9 -3
  387. package/build-module/flex/flex-item/component.js.map +1 -1
  388. package/build-module/focal-point-picker/grid.js +2 -6
  389. package/build-module/focal-point-picker/grid.js.map +1 -1
  390. package/build-module/focal-point-picker/index.native.js +9 -9
  391. package/build-module/focal-point-picker/index.native.js.map +1 -1
  392. package/build-module/focal-point-picker/tooltip/index.native.js +11 -12
  393. package/build-module/focal-point-picker/tooltip/index.native.js.map +1 -1
  394. package/build-module/form-toggle/index.js +30 -6
  395. package/build-module/form-toggle/index.js.map +1 -1
  396. package/build-module/form-toggle/types.js +2 -0
  397. package/build-module/form-toggle/types.js.map +1 -0
  398. package/build-module/form-token-field/index.js +20 -6
  399. package/build-module/form-token-field/index.js.map +1 -1
  400. package/build-module/form-token-field/styles.js +28 -0
  401. package/build-module/form-token-field/styles.js.map +1 -0
  402. package/build-module/form-token-field/suggestions-list.js +2 -7
  403. package/build-module/form-token-field/suggestions-list.js.map +1 -1
  404. package/build-module/grid/component.js +7 -8
  405. package/build-module/grid/component.js.map +1 -1
  406. package/build-module/grid/hook.js +1 -5
  407. package/build-module/grid/hook.js.map +1 -1
  408. package/build-module/grid/index.js.map +1 -1
  409. package/build-module/grid/utils.js +3 -8
  410. package/build-module/grid/utils.js.map +1 -1
  411. package/build-module/h-stack/component.js +3 -7
  412. package/build-module/h-stack/component.js.map +1 -1
  413. package/build-module/h-stack/hook.js +10 -12
  414. package/build-module/h-stack/hook.js.map +1 -1
  415. package/build-module/h-stack/index.js.map +1 -1
  416. package/build-module/h-stack/utils.js +8 -20
  417. package/build-module/h-stack/utils.js.map +1 -1
  418. package/build-module/heading/component.js +0 -1
  419. package/build-module/heading/component.js.map +1 -1
  420. package/build-module/heading/hook.js.map +1 -1
  421. package/build-module/heading/types.js +2 -0
  422. package/build-module/heading/types.js.map +1 -0
  423. package/build-module/icon/index.js.map +1 -1
  424. package/build-module/index.js +3 -0
  425. package/build-module/index.js.map +1 -1
  426. package/build-module/input-control/index.js +6 -0
  427. package/build-module/input-control/index.js.map +1 -1
  428. package/build-module/input-control/input-base.js +24 -3
  429. package/build-module/input-control/input-base.js.map +1 -1
  430. package/build-module/input-control/input-prefix-wrapper.js +41 -0
  431. package/build-module/input-control/input-prefix-wrapper.js.map +1 -0
  432. package/build-module/input-control/input-suffix-wrapper.js +41 -0
  433. package/build-module/input-control/input-suffix-wrapper.js.map +1 -0
  434. package/build-module/input-control/styles/input-control-styles.js +57 -41
  435. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  436. package/build-module/menu-item/index.js +1 -2
  437. package/build-module/menu-item/index.js.map +1 -1
  438. package/build-module/mobile/bottom-sheet/keyboard-avoiding-view.native.js +0 -1
  439. package/build-module/mobile/bottom-sheet/keyboard-avoiding-view.native.js.map +1 -1
  440. package/build-module/mobile/focal-point-settings-panel/index.native.js +2 -2
  441. package/build-module/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  442. package/build-module/mobile/image/index.native.js +10 -6
  443. package/build-module/mobile/image/index.native.js.map +1 -1
  444. package/build-module/mobile/link-picker/index.native.js +4 -3
  445. package/build-module/mobile/link-picker/index.native.js.map +1 -1
  446. package/build-module/mobile/media-edit/index.native.js +1 -6
  447. package/build-module/mobile/media-edit/index.native.js.map +1 -1
  448. package/build-module/mobile/segmented-control/index.native.js +2 -3
  449. package/build-module/mobile/segmented-control/index.native.js.map +1 -1
  450. package/build-module/modal/index.js +19 -5
  451. package/build-module/modal/index.js.map +1 -1
  452. package/build-module/navigation/group/index.js +3 -6
  453. package/build-module/navigation/group/index.js.map +1 -1
  454. package/build-module/navigation/index.js +4 -1
  455. package/build-module/navigation/index.js.map +1 -1
  456. package/build-module/navigation/item/base.js +5 -2
  457. package/build-module/navigation/item/base.js.map +1 -1
  458. package/build-module/navigation/item/use-navigation-tree-item.js +2 -1
  459. package/build-module/navigation/item/use-navigation-tree-item.js.map +1 -1
  460. package/build-module/navigation/menu/menu-title-search.js +1 -6
  461. package/build-module/navigation/menu/menu-title-search.js.map +1 -1
  462. package/build-module/navigation/menu/search-no-results-found.js +1 -6
  463. package/build-module/navigation/menu/search-no-results-found.js.map +1 -1
  464. package/build-module/navigation/use-navigation-tree-nodes.js +18 -9
  465. package/build-module/navigation/use-navigation-tree-nodes.js.map +1 -1
  466. package/build-module/navigation/utils.js +2 -2
  467. package/build-module/navigation/utils.js.map +1 -1
  468. package/build-module/popover/index.js +17 -14
  469. package/build-module/popover/index.js.map +1 -1
  470. package/build-module/radio-control/index.js +1 -2
  471. package/build-module/radio-control/index.js.map +1 -1
  472. package/build-module/range-control/index.js +55 -41
  473. package/build-module/range-control/index.js.map +1 -1
  474. package/build-module/range-control/input-range.js +5 -6
  475. package/build-module/range-control/input-range.js.map +1 -1
  476. package/build-module/range-control/mark.js +5 -6
  477. package/build-module/range-control/mark.js.map +1 -1
  478. package/build-module/range-control/rail.js +10 -15
  479. package/build-module/range-control/rail.js.map +1 -1
  480. package/build-module/range-control/styles/range-control-styles.js +62 -64
  481. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  482. package/build-module/range-control/tooltip.js +5 -6
  483. package/build-module/range-control/tooltip.js.map +1 -1
  484. package/build-module/range-control/types.js +2 -0
  485. package/build-module/range-control/types.js.map +1 -0
  486. package/build-module/range-control/utils.js +22 -33
  487. package/build-module/range-control/utils.js.map +1 -1
  488. package/build-module/resizable-box/resize-tooltip/utils.js +2 -6
  489. package/build-module/resizable-box/resize-tooltip/utils.js.map +1 -1
  490. package/build-module/sandbox/index.native.js +13 -3
  491. package/build-module/sandbox/index.native.js.map +1 -1
  492. package/build-module/scroll-lock/index.js +32 -6
  493. package/build-module/scroll-lock/index.js.map +1 -1
  494. package/build-module/scrollable/component.js +7 -8
  495. package/build-module/scrollable/component.js.map +1 -1
  496. package/build-module/scrollable/hook.js +0 -8
  497. package/build-module/scrollable/hook.js.map +1 -1
  498. package/build-module/scrollable/index.js.map +1 -1
  499. package/build-module/scrollable/styles.js +7 -7
  500. package/build-module/scrollable/styles.js.map +1 -1
  501. package/build-module/select-control/index.js +1 -2
  502. package/build-module/select-control/index.js.map +1 -1
  503. package/build-module/select-control/styles/select-control-styles.js +31 -11
  504. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  505. package/build-module/shortcut/index.js +6 -20
  506. package/build-module/shortcut/index.js.map +1 -1
  507. package/build-module/shortcut/types.js +2 -0
  508. package/build-module/shortcut/types.js.map +1 -0
  509. package/build-module/slot-fill/index.native.js +6 -7
  510. package/build-module/slot-fill/index.native.js.map +1 -1
  511. package/build-module/slot-fill/provider.js +4 -7
  512. package/build-module/slot-fill/provider.js.map +1 -1
  513. package/build-module/slot-fill/slot.js +4 -7
  514. package/build-module/slot-fill/slot.js.map +1 -1
  515. package/build-module/spacer/component.js +6 -5
  516. package/build-module/spacer/component.js.map +1 -1
  517. package/build-module/spacer/hook.js +2 -2
  518. package/build-module/spacer/hook.js.map +1 -1
  519. package/build-module/spacer/index.js.map +1 -1
  520. package/build-module/spinner/index.js +22 -13
  521. package/build-module/spinner/index.js.map +1 -1
  522. package/build-module/spinner/styles.js +10 -10
  523. package/build-module/spinner/styles.js.map +1 -1
  524. package/build-module/text-highlight/index.js +23 -6
  525. package/build-module/text-highlight/index.js.map +1 -1
  526. package/build-module/text-highlight/types.js +2 -0
  527. package/build-module/text-highlight/types.js.map +1 -0
  528. package/build-module/tip/index.js +6 -10
  529. package/build-module/tip/index.js.map +1 -1
  530. package/build-module/tip/types.js +2 -0
  531. package/build-module/tip/types.js.map +1 -0
  532. package/build-module/toggle-group-control/toggle-group-control/component.js +4 -1
  533. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  534. package/build-module/toggle-group-control/toggle-group-control/styles.js +15 -3
  535. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  536. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +6 -7
  537. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  538. package/build-module/toolbar-group/index.js +3 -2
  539. package/build-module/toolbar-group/index.js.map +1 -1
  540. package/build-module/tooltip/index.js +53 -16
  541. package/build-module/tooltip/index.js.map +1 -1
  542. package/build-module/tree-select/index.js +5 -5
  543. package/build-module/tree-select/index.js.map +1 -1
  544. package/build-module/truncate/component.js +7 -8
  545. package/build-module/truncate/component.js.map +1 -1
  546. package/build-module/truncate/hook.js +3 -10
  547. package/build-module/truncate/hook.js.map +1 -1
  548. package/build-module/truncate/index.js.map +1 -1
  549. package/build-module/truncate/styles.js +1 -1
  550. package/build-module/truncate/styles.js.map +1 -1
  551. package/build-module/truncate/utils.js +3 -16
  552. package/build-module/truncate/utils.js.map +1 -1
  553. package/build-module/ui/context/use-context-system.js +7 -2
  554. package/build-module/ui/context/use-context-system.js.map +1 -1
  555. package/build-module/ui/utils/get-valid-children.js.map +1 -1
  556. package/build-module/ui/utils/space.js +7 -1
  557. package/build-module/ui/utils/space.js.map +1 -1
  558. package/build-module/unit-control/styles/unit-control-styles.js +10 -27
  559. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  560. package/build-module/utils/math.js +15 -6
  561. package/build-module/utils/math.js.map +1 -1
  562. package/build-module/v-stack/component.js +9 -9
  563. package/build-module/v-stack/component.js.map +1 -1
  564. package/build-module/v-stack/hook.js +0 -5
  565. package/build-module/v-stack/hook.js.map +1 -1
  566. package/build-module/v-stack/index.js.map +1 -1
  567. package/build-module/visually-hidden/component.js +12 -13
  568. package/build-module/visually-hidden/component.js.map +1 -1
  569. package/build-module/visually-hidden/index.js.map +1 -1
  570. package/build-module/visually-hidden/styles.js +3 -1
  571. package/build-module/visually-hidden/styles.js.map +1 -1
  572. package/build-module/visually-hidden/types.js +2 -0
  573. package/build-module/visually-hidden/types.js.map +1 -0
  574. package/build-style/style-rtl.css +41 -45
  575. package/build-style/style.css +41 -43
  576. package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
  577. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  578. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
  579. package/build-types/border-control/border-control/component.d.ts +36 -2
  580. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  581. package/build-types/border-control/border-control/hook.d.ts +2 -2
  582. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  583. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  584. package/build-types/border-control/border-control-dropdown/hook.d.ts +0 -1
  585. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  586. package/build-types/border-control/stories/index.d.ts +33 -0
  587. package/build-types/border-control/stories/index.d.ts.map +1 -0
  588. package/build-types/border-control/styles.d.ts +1 -4
  589. package/build-types/border-control/styles.d.ts.map +1 -1
  590. package/build-types/card/card-divider/hook.d.ts +1 -1
  591. package/build-types/color-indicator/index.d.ts +16 -5
  592. package/build-types/color-indicator/index.d.ts.map +1 -1
  593. package/build-types/color-indicator/stories/index.d.ts +12 -0
  594. package/build-types/color-indicator/stories/index.d.ts.map +1 -0
  595. package/build-types/color-indicator/test/index.d.ts +2 -0
  596. package/build-types/color-indicator/test/index.d.ts.map +1 -0
  597. package/build-types/color-indicator/types.d.ts +12 -0
  598. package/build-types/color-indicator/types.d.ts.map +1 -0
  599. package/build-types/color-palette/index.d.ts +1 -0
  600. package/build-types/color-palette/index.d.ts.map +1 -1
  601. package/build-types/color-palette/styles.d.ts +4 -2
  602. package/build-types/color-palette/styles.d.ts.map +1 -1
  603. package/build-types/color-picker/component.d.ts.map +1 -1
  604. package/build-types/color-picker/hex-input.d.ts.map +1 -1
  605. package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
  606. package/build-types/color-picker/styles.d.ts +47 -31
  607. package/build-types/color-picker/styles.d.ts.map +1 -1
  608. package/build-types/color-picker/use-deprecated-props.d.ts.map +1 -1
  609. package/build-types/date-time/date/index.d.ts +1 -1
  610. package/build-types/date-time/date/index.d.ts.map +1 -1
  611. package/build-types/date-time/date-time/index.d.ts.map +1 -1
  612. package/build-types/date-time/types.d.ts +6 -0
  613. package/build-types/date-time/types.d.ts.map +1 -1
  614. package/build-types/divider/component.d.ts +2 -3
  615. package/build-types/divider/component.d.ts.map +1 -1
  616. package/build-types/divider/index.d.ts +1 -1
  617. package/build-types/divider/index.d.ts.map +1 -1
  618. package/build-types/divider/styles.d.ts +6 -2
  619. package/build-types/divider/styles.d.ts.map +1 -1
  620. package/build-types/divider/test/index.d.ts +2 -0
  621. package/build-types/divider/test/index.d.ts.map +1 -0
  622. package/build-types/divider/types.d.ts +18 -10
  623. package/build-types/divider/types.d.ts.map +1 -1
  624. package/build-types/dropdown/dropdown-content-wrapper.d.ts +23 -0
  625. package/build-types/dropdown/dropdown-content-wrapper.d.ts.map +1 -0
  626. package/build-types/dropdown/styles.d.ts +7 -0
  627. package/build-types/dropdown/styles.d.ts.map +1 -0
  628. package/build-types/dropdown/types.d.ts +9 -0
  629. package/build-types/dropdown/types.d.ts.map +1 -0
  630. package/build-types/dropdown-menu/index.d.ts.map +1 -1
  631. package/build-types/elevation/component.d.ts +11 -10
  632. package/build-types/elevation/component.d.ts.map +1 -1
  633. package/build-types/elevation/hook.d.ts +6 -7
  634. package/build-types/elevation/hook.d.ts.map +1 -1
  635. package/build-types/elevation/index.d.ts +2 -2
  636. package/build-types/elevation/index.d.ts.map +1 -1
  637. package/build-types/elevation/stories/index.d.ts +22 -0
  638. package/build-types/elevation/stories/index.d.ts.map +1 -0
  639. package/build-types/elevation/styles.d.ts +1 -1
  640. package/build-types/elevation/styles.d.ts.map +1 -1
  641. package/build-types/elevation/test/index.d.ts +2 -0
  642. package/build-types/elevation/test/index.d.ts.map +1 -0
  643. package/build-types/elevation/types.d.ts +12 -19
  644. package/build-types/elevation/types.d.ts.map +1 -1
  645. package/build-types/external-link/index.d.ts.map +1 -1
  646. package/build-types/flex/flex/component.d.ts +11 -17
  647. package/build-types/flex/flex/component.d.ts.map +1 -1
  648. package/build-types/flex/flex-block/component.d.ts +9 -3
  649. package/build-types/flex/flex-block/component.d.ts.map +1 -1
  650. package/build-types/flex/flex-item/component.d.ts +9 -3
  651. package/build-types/flex/flex-item/component.d.ts.map +1 -1
  652. package/build-types/flex/types.d.ts +4 -1
  653. package/build-types/flex/types.d.ts.map +1 -1
  654. package/build-types/form-toggle/index.d.ts +29 -0
  655. package/build-types/form-toggle/index.d.ts.map +1 -0
  656. package/build-types/form-toggle/stories/index.d.ts +12 -0
  657. package/build-types/form-toggle/stories/index.d.ts.map +1 -0
  658. package/build-types/form-toggle/test/index.d.ts +2 -0
  659. package/build-types/form-toggle/test/index.d.ts.map +1 -0
  660. package/build-types/form-toggle/types.d.ts +22 -0
  661. package/build-types/form-toggle/types.d.ts.map +1 -0
  662. package/build-types/form-token-field/index.d.ts.map +1 -1
  663. package/build-types/form-token-field/styles.d.ts +14 -0
  664. package/build-types/form-token-field/styles.d.ts.map +1 -0
  665. package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
  666. package/build-types/form-token-field/test/lib/token-field-wrapper.d.ts +3 -0
  667. package/build-types/form-token-field/test/lib/token-field-wrapper.d.ts.map +1 -1
  668. package/build-types/form-token-field/types.d.ts +7 -0
  669. package/build-types/form-token-field/types.d.ts.map +1 -1
  670. package/build-types/grid/component.d.ts +3 -3
  671. package/build-types/grid/component.d.ts.map +1 -1
  672. package/build-types/grid/hook.d.ts +5 -2
  673. package/build-types/grid/hook.d.ts.map +1 -1
  674. package/build-types/grid/index.d.ts +2 -2
  675. package/build-types/grid/index.d.ts.map +1 -1
  676. package/build-types/grid/stories/index.d.ts +9 -0
  677. package/build-types/grid/stories/index.d.ts.map +1 -0
  678. package/build-types/grid/test/grid.d.ts +2 -0
  679. package/build-types/grid/test/grid.d.ts.map +1 -0
  680. package/build-types/grid/types.d.ts +16 -15
  681. package/build-types/grid/types.d.ts.map +1 -1
  682. package/build-types/grid/utils.d.ts +50 -69
  683. package/build-types/grid/utils.d.ts.map +1 -1
  684. package/build-types/h-stack/component.d.ts +3 -2
  685. package/build-types/h-stack/component.d.ts.map +1 -1
  686. package/build-types/h-stack/hook.d.ts +5 -3
  687. package/build-types/h-stack/hook.d.ts.map +1 -1
  688. package/build-types/h-stack/index.d.ts +2 -2
  689. package/build-types/h-stack/index.d.ts.map +1 -1
  690. package/build-types/h-stack/stories/index.d.ts +9 -0
  691. package/build-types/h-stack/stories/index.d.ts.map +1 -0
  692. package/build-types/h-stack/test/index.d.ts +2 -0
  693. package/build-types/h-stack/test/index.d.ts.map +1 -0
  694. package/build-types/h-stack/utils.d.ts +8 -4
  695. package/build-types/h-stack/utils.d.ts.map +1 -1
  696. package/build-types/heading/component.d.ts +1 -2
  697. package/build-types/heading/component.d.ts.map +1 -1
  698. package/build-types/heading/hook.d.ts +1 -28
  699. package/build-types/heading/hook.d.ts.map +1 -1
  700. package/build-types/heading/stories/index.d.ts.map +1 -1
  701. package/build-types/heading/test/index.d.ts +2 -0
  702. package/build-types/heading/test/index.d.ts.map +1 -0
  703. package/build-types/heading/types.d.ts +16 -0
  704. package/build-types/heading/types.d.ts.map +1 -0
  705. package/build-types/icon/index.d.ts +1 -1
  706. package/build-types/icon/index.d.ts.map +1 -1
  707. package/build-types/input-control/index.d.ts +1 -1
  708. package/build-types/input-control/index.d.ts.map +1 -1
  709. package/build-types/input-control/input-base.d.ts +1 -1
  710. package/build-types/input-control/input-base.d.ts.map +1 -1
  711. package/build-types/input-control/input-prefix-wrapper.d.ts +19 -0
  712. package/build-types/input-control/input-prefix-wrapper.d.ts.map +1 -0
  713. package/build-types/input-control/input-suffix-wrapper.d.ts +19 -0
  714. package/build-types/input-control/input-suffix-wrapper.d.ts.map +1 -0
  715. package/build-types/input-control/stories/index.d.ts +10 -0
  716. package/build-types/input-control/stories/index.d.ts.map +1 -1
  717. package/build-types/input-control/styles/input-control-styles.d.ts +21 -0
  718. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  719. package/build-types/input-control/types.d.ts +45 -3
  720. package/build-types/input-control/types.d.ts.map +1 -1
  721. package/build-types/menu-item/index.d.ts.map +1 -1
  722. package/build-types/popover/index.d.ts.map +1 -1
  723. package/build-types/radio-control/index.d.ts.map +1 -1
  724. package/build-types/range-control/index.d.ts +54 -29
  725. package/build-types/range-control/index.d.ts.map +1 -1
  726. package/build-types/range-control/input-range.d.ts +7 -10
  727. package/build-types/range-control/input-range.d.ts.map +1 -1
  728. package/build-types/range-control/mark.d.ts +4 -7
  729. package/build-types/range-control/mark.d.ts.map +1 -1
  730. package/build-types/range-control/rail.d.ts +4 -9
  731. package/build-types/range-control/rail.d.ts.map +1 -1
  732. package/build-types/range-control/stories/index.d.ts +48 -0
  733. package/build-types/range-control/stories/index.d.ts.map +1 -0
  734. package/build-types/range-control/styles/range-control-styles.d.ts +32 -40
  735. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  736. package/build-types/range-control/test/index.d.ts +2 -0
  737. package/build-types/range-control/test/index.d.ts.map +1 -0
  738. package/build-types/range-control/tooltip.d.ts +4 -11
  739. package/build-types/range-control/tooltip.d.ts.map +1 -1
  740. package/build-types/range-control/types.d.ts +304 -0
  741. package/build-types/range-control/types.d.ts.map +1 -0
  742. package/build-types/range-control/utils.d.ts +15 -33
  743. package/build-types/range-control/utils.d.ts.map +1 -1
  744. package/build-types/resizable-box/resize-tooltip/utils.d.ts.map +1 -1
  745. package/build-types/scroll-lock/index.d.ts +32 -3
  746. package/build-types/scroll-lock/index.d.ts.map +1 -1
  747. package/build-types/scroll-lock/stories/index.d.ts +9 -0
  748. package/build-types/scroll-lock/stories/index.d.ts.map +1 -0
  749. package/build-types/scroll-lock/test/index.d.ts +2 -0
  750. package/build-types/scroll-lock/test/index.d.ts.map +1 -0
  751. package/build-types/scrollable/component.d.ts +3 -3
  752. package/build-types/scrollable/component.d.ts.map +1 -1
  753. package/build-types/scrollable/hook.d.ts +5 -2
  754. package/build-types/scrollable/hook.d.ts.map +1 -1
  755. package/build-types/scrollable/index.d.ts +2 -2
  756. package/build-types/scrollable/index.d.ts.map +1 -1
  757. package/build-types/scrollable/stories/index.d.ts +9 -0
  758. package/build-types/scrollable/stories/index.d.ts.map +1 -0
  759. package/build-types/scrollable/styles.d.ts +7 -7
  760. package/build-types/scrollable/styles.d.ts.map +1 -1
  761. package/build-types/scrollable/test/index.d.ts +2 -0
  762. package/build-types/scrollable/test/index.d.ts.map +1 -0
  763. package/build-types/scrollable/types.d.ts +9 -6
  764. package/build-types/scrollable/types.d.ts.map +1 -1
  765. package/build-types/select-control/index.d.ts.map +1 -1
  766. package/build-types/select-control/styles/select-control-styles.d.ts +1 -1
  767. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  768. package/build-types/select-control/types.d.ts +1 -1
  769. package/build-types/select-control/types.d.ts.map +1 -1
  770. package/build-types/shortcut/index.d.ts +5 -24
  771. package/build-types/shortcut/index.d.ts.map +1 -1
  772. package/build-types/shortcut/test/index.d.ts +2 -0
  773. package/build-types/shortcut/test/index.d.ts.map +1 -0
  774. package/build-types/shortcut/types.d.ts +14 -0
  775. package/build-types/shortcut/types.d.ts.map +1 -0
  776. package/build-types/slot-fill/provider.d.ts.map +1 -1
  777. package/build-types/slot-fill/slot.d.ts.map +1 -1
  778. package/build-types/spacer/component.d.ts +6 -5
  779. package/build-types/spacer/component.d.ts.map +1 -1
  780. package/build-types/spacer/hook.d.ts +2 -2
  781. package/build-types/spacer/hook.d.ts.map +1 -1
  782. package/build-types/spacer/index.d.ts +1 -1
  783. package/build-types/spacer/index.d.ts.map +1 -1
  784. package/build-types/spacer/stories/index.d.ts +12 -0
  785. package/build-types/spacer/stories/index.d.ts.map +1 -0
  786. package/build-types/spacer/test/index.d.ts +2 -0
  787. package/build-types/spacer/test/index.d.ts.map +1 -0
  788. package/build-types/spacer/types.d.ts +41 -29
  789. package/build-types/spacer/types.d.ts.map +1 -1
  790. package/build-types/spinner/index.d.ts +16 -15
  791. package/build-types/spinner/index.d.ts.map +1 -1
  792. package/build-types/spinner/stories/index.d.ts +13 -0
  793. package/build-types/spinner/stories/index.d.ts.map +1 -0
  794. package/build-types/spinner/styles.d.ts +4 -3
  795. package/build-types/spinner/styles.d.ts.map +1 -1
  796. package/build-types/text/types.d.ts +1 -1
  797. package/build-types/text/types.d.ts.map +1 -1
  798. package/build-types/text-highlight/index.d.ts +23 -0
  799. package/build-types/text-highlight/index.d.ts.map +1 -0
  800. package/build-types/text-highlight/stories/index.d.ts +12 -0
  801. package/build-types/text-highlight/stories/index.d.ts.map +1 -0
  802. package/build-types/text-highlight/test/index.d.ts +2 -0
  803. package/build-types/text-highlight/test/index.d.ts.map +1 -0
  804. package/build-types/text-highlight/types.d.ts +17 -0
  805. package/build-types/text-highlight/types.d.ts.map +1 -0
  806. package/build-types/tip/index.d.ts +5 -14
  807. package/build-types/tip/index.d.ts.map +1 -1
  808. package/build-types/tip/stories/index.d.ts +12 -0
  809. package/build-types/tip/stories/index.d.ts.map +1 -0
  810. package/build-types/tip/types.d.ts +11 -0
  811. package/build-types/tip/types.d.ts.map +1 -0
  812. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +5 -1
  813. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  814. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +0 -1
  815. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  816. package/build-types/toggle-group-control/types.d.ts +6 -0
  817. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  818. package/build-types/tooltip/index.d.ts.map +1 -1
  819. package/build-types/tree-select/index.d.ts.map +1 -1
  820. package/build-types/tree-select/types.d.ts +1 -0
  821. package/build-types/tree-select/types.d.ts.map +1 -1
  822. package/build-types/truncate/component.d.ts +3 -3
  823. package/build-types/truncate/component.d.ts.map +1 -1
  824. package/build-types/truncate/hook.d.ts +5 -2
  825. package/build-types/truncate/hook.d.ts.map +1 -1
  826. package/build-types/truncate/index.d.ts +2 -2
  827. package/build-types/truncate/index.d.ts.map +1 -1
  828. package/build-types/truncate/stories/index.d.ts +13 -0
  829. package/build-types/truncate/stories/index.d.ts.map +1 -0
  830. package/build-types/truncate/styles.d.ts +1 -1
  831. package/build-types/truncate/styles.d.ts.map +1 -1
  832. package/build-types/truncate/test/index.d.ts +2 -0
  833. package/build-types/truncate/test/index.d.ts.map +1 -0
  834. package/build-types/truncate/types.d.ts +22 -11
  835. package/build-types/truncate/types.d.ts.map +1 -1
  836. package/build-types/truncate/utils.d.ts +17 -28
  837. package/build-types/truncate/utils.d.ts.map +1 -1
  838. package/build-types/ui/context/use-context-system.d.ts.map +1 -1
  839. package/build-types/ui/form-group/form-group.d.ts +1 -1
  840. package/build-types/ui/form-group/types.d.ts +1 -1
  841. package/build-types/ui/form-group/types.d.ts.map +1 -1
  842. package/build-types/ui/form-group/use-form-group.d.ts +5 -5
  843. package/build-types/ui/utils/get-valid-children.d.ts +2 -2
  844. package/build-types/ui/utils/get-valid-children.d.ts.map +1 -1
  845. package/build-types/ui/utils/space.d.ts +7 -1
  846. package/build-types/ui/utils/space.d.ts.map +1 -1
  847. package/build-types/unit-control/index.d.ts +2 -2
  848. package/build-types/unit-control/index.d.ts.map +1 -1
  849. package/build-types/unit-control/styles/unit-control-styles.d.ts +0 -1
  850. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  851. package/build-types/unit-control/types.d.ts +1 -1
  852. package/build-types/unit-control/types.d.ts.map +1 -1
  853. package/build-types/utils/math.d.ts +10 -0
  854. package/build-types/utils/math.d.ts.map +1 -1
  855. package/build-types/v-stack/component.d.ts +5 -4
  856. package/build-types/v-stack/component.d.ts.map +1 -1
  857. package/build-types/v-stack/hook.d.ts +5 -3
  858. package/build-types/v-stack/hook.d.ts.map +1 -1
  859. package/build-types/v-stack/index.d.ts +2 -2
  860. package/build-types/v-stack/index.d.ts.map +1 -1
  861. package/build-types/v-stack/stories/index.d.ts +9 -0
  862. package/build-types/v-stack/stories/index.d.ts.map +1 -0
  863. package/build-types/v-stack/test/index.d.ts +2 -0
  864. package/build-types/v-stack/test/index.d.ts.map +1 -0
  865. package/build-types/v-stack/types.d.ts +21 -1
  866. package/build-types/v-stack/types.d.ts.map +1 -1
  867. package/build-types/visually-hidden/component.d.ts +8 -10
  868. package/build-types/visually-hidden/component.d.ts.map +1 -1
  869. package/build-types/visually-hidden/index.d.ts +1 -1
  870. package/build-types/visually-hidden/index.d.ts.map +1 -1
  871. package/build-types/visually-hidden/stories/index.d.ts +14 -0
  872. package/build-types/visually-hidden/stories/index.d.ts.map +1 -0
  873. package/build-types/visually-hidden/styles.d.ts +5 -2
  874. package/build-types/visually-hidden/styles.d.ts.map +1 -1
  875. package/build-types/visually-hidden/test/index.d.ts +2 -0
  876. package/build-types/visually-hidden/test/index.d.ts.map +1 -0
  877. package/build-types/visually-hidden/types.d.ts +11 -0
  878. package/build-types/visually-hidden/types.d.ts.map +1 -0
  879. package/package.json +18 -17
  880. package/src/alignment-matrix-control/utils.js +1 -6
  881. package/src/angle-picker-control/index.js +1 -2
  882. package/src/autocomplete/autocompleter-ui.js +4 -1
  883. package/src/autocomplete/autocompleter-ui.native.js +8 -2
  884. package/src/autocomplete/get-default-use-items.js +3 -2
  885. package/src/autocomplete/index.js +7 -10
  886. package/src/base-control/styles/base-control-styles.ts +5 -0
  887. package/src/border-box-control/border-box-control/component.tsx +1 -0
  888. package/src/border-box-control/border-box-control-split-controls/component.tsx +1 -0
  889. package/src/border-control/border-control/component.tsx +82 -36
  890. package/src/border-control/border-control/hook.ts +5 -10
  891. package/src/border-control/border-control-dropdown/component.tsx +50 -45
  892. package/src/border-control/border-control-dropdown/hook.ts +0 -5
  893. package/src/border-control/stories/index.tsx +153 -0
  894. package/src/border-control/styles.ts +23 -69
  895. package/src/border-control/test/index.js +19 -8
  896. package/src/box-control/axial-input-controls.js +1 -1
  897. package/src/box-control/index.js +1 -1
  898. package/src/box-control/utils.js +9 -16
  899. package/src/button/README.md +1 -1
  900. package/src/card/test/__snapshots__/index.js.snap +8 -8
  901. package/src/color-indicator/README.md +7 -9
  902. package/src/color-indicator/index.tsx +47 -0
  903. package/src/color-indicator/stories/index.tsx +37 -0
  904. package/src/color-indicator/test/__snapshots__/index.tsx.snap +11 -0
  905. package/src/color-indicator/test/{index.js → index.tsx} +4 -4
  906. package/src/color-indicator/types.ts +12 -0
  907. package/src/color-palette/index.js +24 -9
  908. package/src/color-palette/style.scss +5 -0
  909. package/src/color-palette/test/utils.ts +19 -1
  910. package/src/color-picker/component.tsx +12 -11
  911. package/src/color-picker/hex-input.tsx +5 -3
  912. package/src/color-picker/index.native.js +20 -27
  913. package/src/color-picker/input-with-slider.tsx +6 -3
  914. package/src/color-picker/styles.ts +20 -17
  915. package/src/color-picker/use-deprecated-props.ts +24 -43
  916. package/src/combobox-control/index.js +20 -13
  917. package/src/combobox-control/stories/index.js +3 -2
  918. package/src/combobox-control/style.scss +1 -1
  919. package/src/combobox-control/styles.ts +27 -0
  920. package/src/confirm-dialog/README.md +1 -1
  921. package/src/custom-gradient-picker/index.js +4 -11
  922. package/src/custom-gradient-picker/index.native.js +3 -11
  923. package/src/custom-gradient-picker/serializer.js +5 -11
  924. package/src/custom-select-control/index.js +44 -26
  925. package/src/custom-select-control/stories/index.js +7 -2
  926. package/src/custom-select-control/style.scss +4 -29
  927. package/src/date-time/README.md +7 -0
  928. package/src/date-time/date/index.tsx +2 -0
  929. package/src/date-time/date-time/index.tsx +2 -0
  930. package/src/date-time/types.ts +7 -0
  931. package/src/dimension-control/README.md +5 -2
  932. package/src/dimension-control/test/index.test.js +7 -7
  933. package/src/divider/README.md +12 -5
  934. package/src/divider/component.tsx +2 -3
  935. package/src/divider/index.ts +1 -1
  936. package/src/divider/stories/index.tsx +4 -4
  937. package/src/divider/styles.ts +7 -7
  938. package/src/divider/test/__snapshots__/{index.js.snap → index.tsx.snap} +7 -7
  939. package/src/divider/test/index.tsx +40 -0
  940. package/src/divider/types.ts +21 -15
  941. package/src/draggable/README.md +1 -1
  942. package/src/dropdown/dropdown-content-wrapper.tsx +59 -0
  943. package/src/dropdown/stories/index.js +60 -69
  944. package/src/dropdown/styles.ts +38 -0
  945. package/src/dropdown/types.ts +8 -0
  946. package/src/dropdown-menu/index.js +3 -4
  947. package/src/dropdown-menu/index.native.js +3 -5
  948. package/src/duotone-picker/duotone-picker.js +58 -37
  949. package/src/duotone-picker/style.scss +19 -0
  950. package/src/elevation/README.md +16 -14
  951. package/src/elevation/component.tsx +48 -0
  952. package/src/elevation/{hook.js → hook.ts} +29 -26
  953. package/src/elevation/{index.js → index.ts} +0 -0
  954. package/src/elevation/stories/index.tsx +85 -0
  955. package/src/elevation/{styles.js → styles.ts} +0 -0
  956. package/src/elevation/test/__snapshots__/{index.js.snap → index.tsx.snap} +19 -13
  957. package/src/elevation/test/index.tsx +64 -0
  958. package/src/elevation/types.ts +12 -19
  959. package/src/external-link/index.tsx +10 -4
  960. package/src/flex/flex/README.md +3 -12
  961. package/src/flex/flex/component.js +11 -17
  962. package/src/flex/flex-block/README.md +0 -4
  963. package/src/flex/flex-block/component.js +9 -3
  964. package/src/flex/flex-item/README.md +1 -5
  965. package/src/flex/flex-item/component.js +9 -3
  966. package/src/flex/stories/index.js +1 -1
  967. package/src/flex/types.ts +4 -1
  968. package/src/focal-point-picker/grid.js +2 -5
  969. package/src/focal-point-picker/index.native.js +9 -9
  970. package/src/focal-point-picker/tooltip/index.native.js +10 -11
  971. package/src/form-toggle/README.md +10 -11
  972. package/src/form-toggle/index.tsx +71 -0
  973. package/src/form-toggle/stories/index.tsx +52 -0
  974. package/src/form-toggle/test/__snapshots__/index.tsx.snap +54 -0
  975. package/src/form-toggle/test/index.tsx +102 -0
  976. package/src/form-toggle/types.ts +22 -0
  977. package/src/form-token-field/index.tsx +45 -24
  978. package/src/form-token-field/style.scss +2 -7
  979. package/src/form-token-field/styles.ts +32 -0
  980. package/src/form-token-field/suggestions-list.tsx +2 -4
  981. package/src/form-token-field/test/index.js +7 -10
  982. package/src/form-token-field/test/lib/token-field-wrapper.tsx +2 -2
  983. package/src/form-token-field/types.ts +7 -0
  984. package/src/grid/README.md +33 -19
  985. package/src/grid/{component.js → component.tsx} +13 -9
  986. package/src/grid/{hook.js → hook.ts} +5 -5
  987. package/src/grid/{index.js → index.ts} +0 -0
  988. package/src/grid/stories/index.tsx +72 -0
  989. package/src/grid/test/{grid.js → grid.tsx} +4 -4
  990. package/src/grid/types.ts +16 -17
  991. package/src/grid/{utils.js → utils.ts} +9 -7
  992. package/src/guide/style.scss +1 -0
  993. package/src/h-stack/{component.js → component.tsx} +8 -8
  994. package/src/h-stack/{hook.js → hook.tsx} +21 -16
  995. package/src/h-stack/{index.js → index.ts} +0 -0
  996. package/src/h-stack/stories/index.tsx +92 -0
  997. package/src/h-stack/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  998. package/src/h-stack/test/{index.js → index.tsx} +0 -0
  999. package/src/h-stack/{utils.js → utils.ts} +16 -16
  1000. package/src/heading/README.md +4 -3
  1001. package/src/heading/component.tsx +2 -2
  1002. package/src/heading/hook.ts +1 -42
  1003. package/src/heading/stories/index.tsx +5 -1
  1004. package/src/heading/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  1005. package/src/heading/test/index.tsx +68 -0
  1006. package/src/heading/types.ts +29 -0
  1007. package/src/higher-order/navigate-regions/README.md +4 -1
  1008. package/src/icon/index.tsx +1 -1
  1009. package/src/index.js +3 -0
  1010. package/src/input-control/index.tsx +6 -0
  1011. package/src/input-control/input-base.tsx +28 -12
  1012. package/src/input-control/input-prefix-wrapper.tsx +48 -0
  1013. package/src/input-control/input-suffix-wrapper.tsx +48 -0
  1014. package/src/input-control/stories/index.tsx +15 -2
  1015. package/src/input-control/styles/input-control-styles.tsx +25 -11
  1016. package/src/input-control/test/index.js +106 -31
  1017. package/src/input-control/types.ts +52 -3
  1018. package/src/menu-item/index.js +1 -2
  1019. package/src/mobile/bottom-sheet/keyboard-avoiding-view.native.js +2 -7
  1020. package/src/mobile/focal-point-settings-panel/index.native.js +2 -2
  1021. package/src/mobile/image/index.native.js +12 -6
  1022. package/src/mobile/link-picker/index.native.js +2 -3
  1023. package/src/mobile/media-edit/index.native.js +2 -7
  1024. package/src/mobile/segmented-control/index.native.js +6 -5
  1025. package/src/modal/index.js +21 -2
  1026. package/src/modal/stories/index.js +17 -1
  1027. package/src/modal/style.scss +14 -19
  1028. package/src/navigation/group/index.js +8 -3
  1029. package/src/navigation/index.js +3 -0
  1030. package/src/navigation/item/base.js +5 -3
  1031. package/src/navigation/item/use-navigation-tree-item.js +2 -0
  1032. package/src/navigation/menu/menu-title-search.js +3 -6
  1033. package/src/navigation/menu/search-no-results-found.js +3 -6
  1034. package/src/navigation/use-navigation-tree-nodes.js +11 -10
  1035. package/src/navigation/utils.js +2 -2
  1036. package/src/number-control/stories/index.js +24 -24
  1037. package/src/popover/README.md +2 -2
  1038. package/src/popover/index.js +20 -13
  1039. package/src/popover/stories/index.js +2 -0
  1040. package/src/popover/style.scss +1 -1
  1041. package/src/radio-control/index.tsx +1 -2
  1042. package/src/range-control/README.md +108 -80
  1043. package/src/range-control/{index.js → index.tsx} +79 -49
  1044. package/src/range-control/{input-range.js → input-range.tsx} +11 -7
  1045. package/src/range-control/{mark.js → mark.tsx} +15 -9
  1046. package/src/range-control/{rail.js → rail.tsx} +40 -23
  1047. package/src/range-control/stories/index.tsx +244 -0
  1048. package/src/range-control/styles/{range-control-styles.js → range-control-styles.ts} +28 -24
  1049. package/src/range-control/test/index.tsx +341 -0
  1050. package/src/range-control/{tooltip.js → tooltip.tsx} +19 -14
  1051. package/src/range-control/types.ts +328 -0
  1052. package/src/range-control/utils.ts +135 -0
  1053. package/src/resizable-box/resize-tooltip/utils.ts +2 -3
  1054. package/src/sandbox/index.native.js +14 -1
  1055. package/src/scroll-lock/README.md +1 -1
  1056. package/src/scroll-lock/{index.js → index.tsx} +34 -7
  1057. package/src/scroll-lock/stories/index.tsx +96 -0
  1058. package/src/scroll-lock/test/index.tsx +26 -0
  1059. package/src/scrollable/README.md +14 -8
  1060. package/src/scrollable/{component.js → component.tsx} +13 -10
  1061. package/src/scrollable/{hook.js → hook.ts} +5 -7
  1062. package/src/scrollable/{index.js → index.ts} +0 -0
  1063. package/src/scrollable/stories/{index.js → index.tsx} +29 -34
  1064. package/src/scrollable/{styles.js → styles.ts} +0 -0
  1065. package/src/scrollable/test/__snapshots__/{index.js.snap → index.tsx.snap} +1 -0
  1066. package/src/scrollable/test/index.tsx +34 -0
  1067. package/src/scrollable/types.ts +10 -5
  1068. package/src/select-control/index.tsx +1 -2
  1069. package/src/select-control/styles/select-control-styles.ts +33 -9
  1070. package/src/select-control/test/select-control.tsx +22 -15
  1071. package/src/select-control/types.ts +1 -0
  1072. package/src/shortcut/index.tsx +32 -0
  1073. package/src/shortcut/test/__snapshots__/index.tsx.snap +15 -0
  1074. package/src/shortcut/test/index.tsx +41 -0
  1075. package/src/shortcut/types.ts +10 -0
  1076. package/src/slot-fill/index.native.js +2 -7
  1077. package/src/slot-fill/provider.js +3 -7
  1078. package/src/slot-fill/slot.js +21 -24
  1079. package/src/slot-fill/test/slot.js +2 -3
  1080. package/src/spacer/README.md +43 -37
  1081. package/src/spacer/component.tsx +8 -7
  1082. package/src/spacer/hook.ts +4 -2
  1083. package/src/spacer/index.ts +1 -1
  1084. package/src/spacer/stories/index.tsx +70 -0
  1085. package/src/spacer/test/__snapshots__/{index.js.snap → index.tsx.snap} +1 -0
  1086. package/src/spacer/test/index.tsx +149 -0
  1087. package/src/spacer/types.ts +41 -29
  1088. package/src/spinner/{index.js → index.tsx} +23 -9
  1089. package/src/spinner/stories/index.tsx +32 -0
  1090. package/src/spinner/{styles.js → styles.ts} +0 -0
  1091. package/src/style.scss +1 -0
  1092. package/src/tab-panel/README.md +1 -1
  1093. package/src/text/types.ts +1 -1
  1094. package/src/text-highlight/README.md +6 -6
  1095. package/src/text-highlight/index.tsx +49 -0
  1096. package/src/text-highlight/stories/index.tsx +33 -0
  1097. package/src/text-highlight/test/index.tsx +93 -0
  1098. package/src/text-highlight/types.ts +16 -0
  1099. package/src/tip/index.tsx +22 -0
  1100. package/src/tip/stories/index.tsx +33 -0
  1101. package/src/tip/types.ts +11 -0
  1102. package/src/toggle-group-control/stories/index.js +19 -3
  1103. package/src/toggle-group-control/test/__snapshots__/index.js.snap +4 -4
  1104. package/src/toggle-group-control/toggle-group-control/component.tsx +3 -3
  1105. package/src/toggle-group-control/toggle-group-control/styles.ts +22 -2
  1106. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +0 -4
  1107. package/src/toggle-group-control/types.ts +6 -0
  1108. package/src/toolbar-group/index.js +1 -2
  1109. package/src/tools-panel/tools-panel/README.md +94 -21
  1110. package/src/tooltip/index.js +56 -10
  1111. package/src/tooltip/stories/index.js +28 -13
  1112. package/src/tooltip/style.scss +1 -1
  1113. package/src/tree-select/index.tsx +7 -6
  1114. package/src/tree-select/types.ts +4 -0
  1115. package/src/truncate/README.md +16 -12
  1116. package/src/truncate/{component.js → component.tsx} +13 -9
  1117. package/src/truncate/{hook.js → hook.ts} +8 -10
  1118. package/src/truncate/{index.js → index.ts} +0 -0
  1119. package/src/truncate/stories/index.tsx +49 -0
  1120. package/src/truncate/{styles.js → styles.ts} +0 -0
  1121. package/src/truncate/test/{index.js → index.tsx} +4 -4
  1122. package/src/truncate/types.ts +28 -10
  1123. package/src/truncate/{utils.js → utils.ts} +19 -19
  1124. package/src/ui/context/test/context-system-provider.js +101 -1
  1125. package/src/ui/context/use-context-system.js +7 -2
  1126. package/src/ui/form-group/types.ts +1 -1
  1127. package/src/ui/utils/get-valid-children.ts +4 -2
  1128. package/src/ui/utils/space.ts +7 -1
  1129. package/src/unit-control/styles/unit-control-styles.ts +15 -13
  1130. package/src/unit-control/test/__snapshots__/index.tsx.snap +4 -4
  1131. package/src/unit-control/types.ts +1 -1
  1132. package/src/utils/math.js +14 -5
  1133. package/src/utils/test/math.js +22 -1
  1134. package/src/v-stack/README.md +6 -18
  1135. package/src/v-stack/{component.js → component.tsx} +15 -10
  1136. package/src/v-stack/{hook.js → hook.ts} +5 -6
  1137. package/src/v-stack/{index.js → index.ts} +0 -0
  1138. package/src/v-stack/stories/index.tsx +41 -0
  1139. package/src/v-stack/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  1140. package/src/v-stack/test/{index.js → index.tsx} +0 -0
  1141. package/src/v-stack/types.ts +21 -1
  1142. package/src/visually-hidden/{component.js → component.tsx} +23 -15
  1143. package/src/visually-hidden/{index.js → index.ts} +0 -0
  1144. package/src/visually-hidden/stories/index.tsx +66 -0
  1145. package/src/visually-hidden/{styles.js → styles.ts} +6 -2
  1146. package/src/visually-hidden/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  1147. package/src/visually-hidden/test/index.tsx +17 -0
  1148. package/src/visually-hidden/types.ts +11 -0
  1149. package/tsconfig.json +2 -0
  1150. package/tsconfig.tsbuildinfo +1 -1
  1151. package/src/border-control/stories/index.js +0 -119
  1152. package/src/color-indicator/index.js +0 -16
  1153. package/src/color-indicator/stories/index.js +0 -22
  1154. package/src/color-indicator/test/__snapshots__/index.js.snap +0 -13
  1155. package/src/divider/test/index.js +0 -41
  1156. package/src/elevation/component.js +0 -43
  1157. package/src/elevation/stories/index.js +0 -148
  1158. package/src/elevation/test/index.js +0 -51
  1159. package/src/form-toggle/index.js +0 -38
  1160. package/src/form-toggle/stories/index.js +0 -28
  1161. package/src/form-toggle/test/index.js +0 -74
  1162. package/src/grid/stories/index.js +0 -49
  1163. package/src/h-stack/stories/index.js +0 -22
  1164. package/src/heading/test/index.js +0 -67
  1165. package/src/range-control/stories/index.js +0 -180
  1166. package/src/range-control/test/index.js +0 -320
  1167. package/src/range-control/utils.js +0 -134
  1168. package/src/scroll-lock/stories/index.js +0 -71
  1169. package/src/scroll-lock/test/index.js +0 -53
  1170. package/src/scrollable/test/index.js +0 -31
  1171. package/src/shortcut/index.js +0 -41
  1172. package/src/shortcut/test/index.js +0 -37
  1173. package/src/spacer/stories/index.js +0 -59
  1174. package/src/spacer/test/index.js +0 -146
  1175. package/src/spinner/stories/index.js +0 -43
  1176. package/src/text-highlight/index.js +0 -28
  1177. package/src/text-highlight/stories/index.js +0 -28
  1178. package/src/text-highlight/test/index.js +0 -120
  1179. package/src/tip/index.js +0 -24
  1180. package/src/tip/stories/index.js +0 -26
  1181. package/src/truncate/stories/index.js +0 -38
  1182. package/src/visually-hidden/stories/index.js +0 -42
  1183. package/src/visually-hidden/test/index.js +0 -19
@@ -1,9 +1,14 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import { createElement } from "@wordpress/element";
3
3
 
4
+ /**
5
+ * WordPress dependencies
6
+ */
7
+ import { __ } from '@wordpress/i18n';
4
8
  /**
5
9
  * Internal dependencies
6
10
  */
11
+
7
12
  import BorderControlDropdown from '../border-control-dropdown';
8
13
  import UnitControl from '../../unit-control';
9
14
  import RangeControl from '../../range-control';
@@ -25,11 +30,13 @@ const BorderLabel = props => {
25
30
  }
26
31
 
27
32
  return hideLabelFromVision ? createElement(VisuallyHidden, {
28
- as: "label"
29
- }, label) : createElement(StyledLabel, null, label);
33
+ as: "legend"
34
+ }, label) : createElement(StyledLabel, {
35
+ as: "legend"
36
+ }, label);
30
37
  };
31
38
 
32
- const BorderControl = (props, forwardedRef) => {
39
+ const UnconnectedBorderControl = (props, forwardedRef) => {
33
40
  const {
34
41
  colors,
35
42
  disableCustomColors,
@@ -37,6 +44,7 @@ const BorderControl = (props, forwardedRef) => {
37
44
  enableStyle = true,
38
45
  hideLabelFromVision,
39
46
  innerWrapperClassName,
47
+ inputWidth,
40
48
  label,
41
49
  onBorderChange,
42
50
  onSliderChange,
@@ -47,7 +55,6 @@ const BorderControl = (props, forwardedRef) => {
47
55
  showDropdownHeader,
48
56
  sliderClassName,
49
57
  value: border,
50
- widthControlClassName,
51
58
  widthUnit,
52
59
  widthValue,
53
60
  withSlider,
@@ -56,36 +63,41 @@ const BorderControl = (props, forwardedRef) => {
56
63
  __next36pxDefaultSize,
57
64
  ...otherProps
58
65
  } = useBorderControl(props);
59
- return createElement(View, _extends({}, otherProps, {
66
+ return createElement(View, _extends({
67
+ as: "fieldset"
68
+ }, otherProps, {
60
69
  ref: forwardedRef
61
70
  }), createElement(BorderLabel, {
62
71
  label: label,
63
72
  hideLabelFromVision: hideLabelFromVision
64
73
  }), createElement(HStack, {
65
- spacing: 3
66
- }, createElement(HStack, {
67
- className: innerWrapperClassName,
68
- alignment: "stretch"
69
- }, createElement(BorderControlDropdown, {
70
- border: border,
71
- colors: colors,
72
- __unstablePopoverProps: __unstablePopoverProps,
73
- disableCustomColors: disableCustomColors,
74
- enableAlpha: enableAlpha,
75
- enableStyle: enableStyle,
76
- onChange: onBorderChange,
77
- previousStyleSelection: previousStyleSelection,
78
- showDropdownHeader: showDropdownHeader,
79
- __experimentalHasMultipleOrigins: __experimentalHasMultipleOrigins,
80
- __experimentalIsRenderedInSidebar: __experimentalIsRenderedInSidebar,
81
- __next36pxDefaultSize: __next36pxDefaultSize
82
- }), createElement(UnitControl, {
83
- className: widthControlClassName,
74
+ spacing: 3,
75
+ className: innerWrapperClassName
76
+ }, createElement(UnitControl, {
77
+ prefix: createElement(BorderControlDropdown, {
78
+ border: border,
79
+ colors: colors,
80
+ __unstablePopoverProps: __unstablePopoverProps,
81
+ disableCustomColors: disableCustomColors,
82
+ enableAlpha: enableAlpha,
83
+ enableStyle: enableStyle,
84
+ onChange: onBorderChange,
85
+ previousStyleSelection: previousStyleSelection,
86
+ showDropdownHeader: showDropdownHeader,
87
+ __experimentalHasMultipleOrigins: __experimentalHasMultipleOrigins,
88
+ __experimentalIsRenderedInSidebar: __experimentalIsRenderedInSidebar,
89
+ __next36pxDefaultSize: __next36pxDefaultSize
90
+ }),
91
+ label: __('Border width'),
92
+ hideLabelFromVision: true,
84
93
  min: 0,
85
94
  onChange: onWidthChange,
86
95
  value: (border === null || border === void 0 ? void 0 : border.width) || '',
87
- placeholder: placeholder
88
- })), withSlider && createElement(RangeControl, {
96
+ placeholder: placeholder,
97
+ __unstableInputWidth: inputWidth
98
+ }), withSlider && createElement(RangeControl, {
99
+ label: __('Border width'),
100
+ hideLabelFromVision: true,
89
101
  className: sliderClassName,
90
102
  initialPosition: 0,
91
103
  max: 100,
@@ -96,7 +108,42 @@ const BorderControl = (props, forwardedRef) => {
96
108
  withInputField: false
97
109
  })));
98
110
  };
111
+ /**
112
+ * The `BorderControl` brings together internal sub-components which allow users to
113
+ * set the various properties of a border. The first sub-component, a
114
+ * `BorderDropdown` contains options representing border color and style. The
115
+ * border width is controlled via a `UnitControl` and an optional `RangeControl`.
116
+ *
117
+ * Border radius is not covered by this control as it may be desired separate to
118
+ * color, style, and width. For example, the border radius may be absorbed under
119
+ * a "shape" abstraction.
120
+ *
121
+ * ```jsx
122
+ * import { __experimentalBorderControl as BorderControl } from '@wordpress/components';
123
+ * import { __ } from '@wordpress/i18n';
124
+ *
125
+ * const colors = [
126
+ * { name: 'Blue 20', color: '#72aee6' },
127
+ * // ...
128
+ * ];
129
+ *
130
+ * const MyBorderControl = () => {
131
+ * const [ border, setBorder ] = useState();
132
+ * const onChange = ( newBorder ) => setBorder( newBorder );
133
+ *
134
+ * return (
135
+ * <BorderControl
136
+ * colors={ colors }
137
+ * label={ __( 'Border' ) }
138
+ * onChange={ onChange }
139
+ * value={ border }
140
+ * />
141
+ * );
142
+ * };
143
+ * ```
144
+ */
145
+
99
146
 
100
- const ConnectedBorderControl = contextConnect(BorderControl, 'BorderControl');
101
- export default ConnectedBorderControl;
147
+ export const BorderControl = contextConnect(UnconnectedBorderControl, 'BorderControl');
148
+ export default BorderControl;
102
149
  //# sourceMappingURL=component.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/border-control/border-control/component.tsx"],"names":["BorderControlDropdown","UnitControl","RangeControl","HStack","StyledLabel","View","VisuallyHidden","contextConnect","useBorderControl","BorderLabel","props","label","hideLabelFromVision","BorderControl","forwardedRef","colors","disableCustomColors","enableAlpha","enableStyle","innerWrapperClassName","onBorderChange","onSliderChange","onWidthChange","placeholder","__unstablePopoverProps","previousStyleSelection","showDropdownHeader","sliderClassName","value","border","widthControlClassName","widthUnit","widthValue","withSlider","__experimentalHasMultipleOrigins","__experimentalIsRenderedInSidebar","__next36pxDefaultSize","otherProps","width","includes","undefined","ConnectedBorderControl"],"mappings":"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","sourcesContent":["/**\n * Internal dependencies\n */\nimport BorderControlDropdown from '../border-control-dropdown';\nimport UnitControl from '../../unit-control';\nimport RangeControl from '../../range-control';\nimport { HStack } from '../../h-stack';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\nimport { View } from '../../view';\nimport { VisuallyHidden } from '../../visually-hidden';\nimport { contextConnect, WordPressComponentProps } from '../../ui/context';\nimport { useBorderControl } from './hook';\n\nimport type { BorderControlProps, LabelProps } from '../types';\n\nconst BorderLabel = ( props: LabelProps ) => {\n\tconst { label, hideLabelFromVision } = props;\n\n\tif ( ! label ) {\n\t\treturn null;\n\t}\n\n\treturn hideLabelFromVision ? (\n\t\t<VisuallyHidden as=\"label\">{ label }</VisuallyHidden>\n\t) : (\n\t\t<StyledLabel>{ label }</StyledLabel>\n\t);\n};\n\nconst BorderControl = (\n\tprops: WordPressComponentProps< BorderControlProps, 'div' >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tenableAlpha,\n\t\tenableStyle = true,\n\t\thideLabelFromVision,\n\t\tinnerWrapperClassName,\n\t\tlabel,\n\t\tonBorderChange,\n\t\tonSliderChange,\n\t\tonWidthChange,\n\t\tplaceholder,\n\t\t__unstablePopoverProps,\n\t\tpreviousStyleSelection,\n\t\tshowDropdownHeader,\n\t\tsliderClassName,\n\t\tvalue: border,\n\t\twidthControlClassName,\n\t\twidthUnit,\n\t\twidthValue,\n\t\twithSlider,\n\t\t__experimentalHasMultipleOrigins,\n\t\t__experimentalIsRenderedInSidebar,\n\t\t__next36pxDefaultSize,\n\t\t...otherProps\n\t} = useBorderControl( props );\n\n\treturn (\n\t\t<View { ...otherProps } ref={ forwardedRef }>\n\t\t\t<BorderLabel\n\t\t\t\tlabel={ label }\n\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t/>\n\t\t\t<HStack spacing={ 3 }>\n\t\t\t\t<HStack className={ innerWrapperClassName } alignment=\"stretch\">\n\t\t\t\t\t<BorderControlDropdown\n\t\t\t\t\t\tborder={ border }\n\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\t__unstablePopoverProps={ __unstablePopoverProps }\n\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\tenableStyle={ enableStyle }\n\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\tpreviousStyleSelection={ previousStyleSelection }\n\t\t\t\t\t\tshowDropdownHeader={ showDropdownHeader }\n\t\t\t\t\t\t__experimentalHasMultipleOrigins={\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t}\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\t__next36pxDefaultSize={ __next36pxDefaultSize }\n\t\t\t\t\t/>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tclassName={ widthControlClassName }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ onWidthChange }\n\t\t\t\t\t\tvalue={ border?.width || '' }\n\t\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t\t{ withSlider && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tclassName={ sliderClassName }\n\t\t\t\t\t\tinitialPosition={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ onSliderChange }\n\t\t\t\t\t\tstep={ [ 'px', '%' ].includes( widthUnit ) ? 1 : 0.1 }\n\t\t\t\t\t\tvalue={ widthValue || undefined }\n\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</View>\n\t);\n};\n\nconst ConnectedBorderControl = contextConnect( BorderControl, 'BorderControl' );\n\nexport default ConnectedBorderControl;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/border-control/border-control/component.tsx"],"names":["__","BorderControlDropdown","UnitControl","RangeControl","HStack","StyledLabel","View","VisuallyHidden","contextConnect","useBorderControl","BorderLabel","props","label","hideLabelFromVision","UnconnectedBorderControl","forwardedRef","colors","disableCustomColors","enableAlpha","enableStyle","innerWrapperClassName","inputWidth","onBorderChange","onSliderChange","onWidthChange","placeholder","__unstablePopoverProps","previousStyleSelection","showDropdownHeader","sliderClassName","value","border","widthUnit","widthValue","withSlider","__experimentalHasMultipleOrigins","__experimentalIsRenderedInSidebar","__next36pxDefaultSize","otherProps","width","includes","undefined","BorderControl"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BorderControlDropdown from '../border-control-dropdown';\nimport UnitControl from '../../unit-control';\nimport RangeControl from '../../range-control';\nimport { HStack } from '../../h-stack';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\nimport { View } from '../../view';\nimport { VisuallyHidden } from '../../visually-hidden';\nimport { contextConnect, WordPressComponentProps } from '../../ui/context';\nimport { useBorderControl } from './hook';\n\nimport type { BorderControlProps, LabelProps } from '../types';\n\nconst BorderLabel = ( props: LabelProps ) => {\n\tconst { label, hideLabelFromVision } = props;\n\n\tif ( ! label ) {\n\t\treturn null;\n\t}\n\n\treturn hideLabelFromVision ? (\n\t\t<VisuallyHidden as=\"legend\">{ label }</VisuallyHidden>\n\t) : (\n\t\t<StyledLabel as=\"legend\">{ label }</StyledLabel>\n\t);\n};\n\nconst UnconnectedBorderControl = (\n\tprops: WordPressComponentProps< BorderControlProps, 'div', false >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tenableAlpha,\n\t\tenableStyle = true,\n\t\thideLabelFromVision,\n\t\tinnerWrapperClassName,\n\t\tinputWidth,\n\t\tlabel,\n\t\tonBorderChange,\n\t\tonSliderChange,\n\t\tonWidthChange,\n\t\tplaceholder,\n\t\t__unstablePopoverProps,\n\t\tpreviousStyleSelection,\n\t\tshowDropdownHeader,\n\t\tsliderClassName,\n\t\tvalue: border,\n\t\twidthUnit,\n\t\twidthValue,\n\t\twithSlider,\n\t\t__experimentalHasMultipleOrigins,\n\t\t__experimentalIsRenderedInSidebar,\n\t\t__next36pxDefaultSize,\n\t\t...otherProps\n\t} = useBorderControl( props );\n\n\treturn (\n\t\t<View as=\"fieldset\" { ...otherProps } ref={ forwardedRef }>\n\t\t\t<BorderLabel\n\t\t\t\tlabel={ label }\n\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t/>\n\t\t\t<HStack spacing={ 3 } className={ innerWrapperClassName }>\n\t\t\t\t<UnitControl\n\t\t\t\t\tprefix={\n\t\t\t\t\t\t<BorderControlDropdown\n\t\t\t\t\t\t\tborder={ border }\n\t\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\t\t__unstablePopoverProps={ __unstablePopoverProps }\n\t\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t\tenableStyle={ enableStyle }\n\t\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\t\tpreviousStyleSelection={ previousStyleSelection }\n\t\t\t\t\t\t\tshowDropdownHeader={ showDropdownHeader }\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins={\n\t\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__next36pxDefaultSize={ __next36pxDefaultSize }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\tlabel={ __( 'Border width' ) }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ onWidthChange }\n\t\t\t\t\tvalue={ border?.width || '' }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\t__unstableInputWidth={ inputWidth }\n\t\t\t\t/>\n\t\t\t\t{ withSlider && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Border width' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tclassName={ sliderClassName }\n\t\t\t\t\t\tinitialPosition={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ onSliderChange }\n\t\t\t\t\t\tstep={ [ 'px', '%' ].includes( widthUnit ) ? 1 : 0.1 }\n\t\t\t\t\t\tvalue={ widthValue || undefined }\n\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</View>\n\t);\n};\n\n/**\n * The `BorderControl` brings together internal sub-components which allow users to\n * set the various properties of a border. The first sub-component, a\n * `BorderDropdown` contains options representing border color and style. The\n * border width is controlled via a `UnitControl` and an optional `RangeControl`.\n *\n * Border radius is not covered by this control as it may be desired separate to\n * color, style, and width. For example, the border radius may be absorbed under\n * a \"shape\" abstraction.\n *\n * ```jsx\n * import { __experimentalBorderControl as BorderControl } from '@wordpress/components';\n * import { __ } from '@wordpress/i18n';\n *\n * const colors = [\n * \t{ name: 'Blue 20', color: '#72aee6' },\n * \t// ...\n * ];\n *\n * const MyBorderControl = () => {\n * \tconst [ border, setBorder ] = useState();\n * \tconst onChange = ( newBorder ) => setBorder( newBorder );\n *\n * \treturn (\n * \t\t<BorderControl\n * \t\t\tcolors={ colors }\n * \t\t\tlabel={ __( 'Border' ) }\n * \t\t\tonChange={ onChange }\n * \t\t\tvalue={ border }\n * \t\t/>\n * \t);\n * };\n * ```\n */\nexport const BorderControl = contextConnect(\n\tUnconnectedBorderControl,\n\t'BorderControl'\n);\n\nexport default BorderControl;\n"]}
@@ -88,28 +88,25 @@ export function useBorderControl(props) {
88
88
  const classes = useMemo(() => {
89
89
  return cx(styles.borderControl, className);
90
90
  }, [className, cx]);
91
+ const wrapperWidth = isCompact ? '90px' : width;
91
92
  const innerWrapperClassName = useMemo(() => {
92
- const wrapperWidth = isCompact ? '90px' : width;
93
- const widthStyle = !!wrapperWidth && styles.wrapperWidth(wrapperWidth);
93
+ const widthStyle = !!wrapperWidth && styles.wrapperWidth;
94
94
  const heightStyle = styles.wrapperHeight(__next36pxDefaultSize);
95
95
  return cx(styles.innerWrapper(), widthStyle, heightStyle);
96
- }, [isCompact, width, cx, __next36pxDefaultSize]);
97
- const widthControlClassName = useMemo(() => {
98
- return cx(styles.borderWidthControl());
99
- }, [cx]);
96
+ }, [wrapperWidth, cx, __next36pxDefaultSize]);
100
97
  const sliderClassName = useMemo(() => {
101
98
  return cx(styles.borderSlider());
102
99
  }, [cx]);
103
100
  return { ...otherProps,
104
101
  className: classes,
105
102
  innerWrapperClassName,
103
+ inputWidth: wrapperWidth,
106
104
  onBorderChange,
107
105
  onSliderChange,
108
106
  onWidthChange,
109
107
  previousStyleSelection: styleSelection,
110
108
  sliderClassName,
111
109
  value: border,
112
- widthControlClassName,
113
110
  widthUnit,
114
111
  widthValue,
115
112
  __next36pxDefaultSize
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/border-control/border-control/hook.ts"],"names":["useCallback","useMemo","useState","styles","parseQuantityAndUnitFromRawValue","useContextSystem","useCx","sanitizeBorder","border","hasNoWidth","width","undefined","hasNoColor","color","useBorderControl","props","className","isCompact","onChange","shouldSanitizeBorder","value","__next36pxDefaultSize","otherProps","widthValue","originalWidthUnit","widthUnit","hadPreviousZeroWidth","colorSelection","setColorSelection","styleSelection","setStyleSelection","onBorderChange","newBorder","onWidthChange","newWidth","newWidthValue","parsedValue","hasZeroWidth","updatedBorder","style","onSliderChange","cx","classes","borderControl","innerWrapperClassName","wrapperWidth","widthStyle","heightStyle","wrapperHeight","innerWrapper","widthControlClassName","borderWidthControl","sliderClassName","borderSlider","previousStyleSelection"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,EAAsBC,OAAtB,EAA+BC,QAA/B,QAA+C,oBAA/C;AAEA;AACA;AACA;;AACA,OAAO,KAAKC,MAAZ,MAAwB,WAAxB;AACA,SAASC,gCAAT,QAAiD,0BAAjD;AACA,SAASC,gBAAT,QAA0D,kBAA1D;AACA,SAASC,KAAT,QAAsB,0BAAtB;;AAIA,MAAMC,cAAc,GAAKC,MAAF,IAAuB;AAC7C,QAAMC,UAAU,GAAG,CAAAD,MAAM,SAAN,IAAAA,MAAM,WAAN,YAAAA,MAAM,CAAEE,KAAR,MAAkBC,SAAlB,IAA+BH,MAAM,CAACE,KAAP,KAAiB,EAAnE;AACA,QAAME,UAAU,GAAG,CAAAJ,MAAM,SAAN,IAAAA,MAAM,WAAN,YAAAA,MAAM,CAAEK,KAAR,MAAkBF,SAArC,CAF6C,CAI7C;;AACA,MAAKF,UAAU,IAAIG,UAAnB,EAAgC;AAC/B,WAAOD,SAAP;AACA;;AAED,SAAOH,MAAP;AACA,CAVD;;AAYA,OAAO,SAASM,gBAAT,CACNC,KADM,EAEL;AACD,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,SAFK;AAGLC,IAAAA,QAHK;AAILC,IAAAA,oBAAoB,GAAG,IAJlB;AAKLC,IAAAA,KAAK,EAAEZ,MALF;AAMLE,IAAAA,KANK;AAOLW,IAAAA,qBAAqB,GAAG,KAPnB;AAQL,OAAGC;AARE,MASFjB,gBAAgB,CAAEU,KAAF,EAAS,eAAT,CATpB;AAWA,QAAM,CAAEQ,UAAF,EAAcC,iBAAd,IAAoCpB,gCAAgC,CACzEI,MADyE,aACzEA,MADyE,uBACzEA,MAAM,CAAEE,KADiE,CAA1E;AAGA,QAAMe,SAAS,GAAGD,iBAAiB,IAAI,IAAvC;AACA,QAAME,oBAAoB,GAAGH,UAAU,KAAK,CAA5C;AAEA,QAAM,CAAEI,cAAF,EAAkBC,iBAAlB,IAAwC1B,QAAQ,EAAtD;AACA,QAAM,CAAE2B,cAAF,EAAkBC,iBAAlB,IAAwC5B,QAAQ,EAAtD;AAEA,QAAM6B,cAAc,GAAG/B,WAAW,CAC/BgC,SAAF,IAA0B;AACzB,QAAKb,oBAAL,EAA4B;AAC3B,aAAOD,QAAQ,CAAEX,cAAc,CAAEyB,SAAF,CAAhB,CAAf;AACA;;AAEDd,IAAAA,QAAQ,CAAEc,SAAF,CAAR;AACA,GAPgC,EAQjC,CAAEd,QAAF,EAAYC,oBAAZ,CARiC,CAAlC;AAWA,QAAMc,aAAa,GAAGjC,WAAW,CAC9BkC,QAAF,IAAyB;AACxB,UAAMC,aAAa,GAAGD,QAAQ,KAAK,EAAb,GAAkBvB,SAAlB,GAA8BuB,QAApD;AACA,UAAM,CAAEE,WAAF,IACLhC,gCAAgC,CAAE8B,QAAF,CADjC;AAEA,UAAMG,YAAY,GAAGD,WAAW,KAAK,CAArC;AAEA,UAAME,aAAa,GAAG,EAAE,GAAG9B,MAAL;AAAaE,MAAAA,KAAK,EAAEyB;AAApB,KAAtB,CANwB,CAQxB;AACA;;AACA,QAAKE,YAAY,IAAI,CAAEX,oBAAvB,EAA8C;AAC7C;AACA;AACA;AACAE,MAAAA,iBAAiB,CAAEpB,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEK,KAAV,CAAjB;AACAiB,MAAAA,iBAAiB,CAAEtB,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAE+B,KAAV,CAAjB,CAL6C,CAO7C;;AACAD,MAAAA,aAAa,CAACzB,KAAd,GAAsBF,SAAtB;AACA2B,MAAAA,aAAa,CAACC,KAAd,GAAsB,MAAtB;AACA,KApBuB,CAsBxB;;;AACA,QAAK,CAAEF,YAAF,IAAkBX,oBAAvB,EAA8C;AAC7C;AACA;AACA,UAAKY,aAAa,CAACzB,KAAd,KAAwBF,SAA7B,EAAyC;AACxC2B,QAAAA,aAAa,CAACzB,KAAd,GAAsBc,cAAtB;AACA;;AACD,UAAKW,aAAa,CAACC,KAAd,KAAwB,MAA7B,EAAsC;AACrCD,QAAAA,aAAa,CAACC,KAAd,GAAsBV,cAAtB;AACA;AACD;;AAEDE,IAAAA,cAAc,CAAEO,aAAF,CAAd;AACA,GApC+B,EAqChC,CACC9B,MADD,EAECkB,oBAFD,EAGCC,cAHD,EAICE,cAJD,EAKCE,cALD,CArCgC,CAAjC;AA8CA,QAAMS,cAAc,GAAGxC,WAAW,CAC/BoB,KAAF,IAAqB;AACpBa,IAAAA,aAAa,CAAG,GAAGb,KAAO,GAAGK,SAAW,EAA3B,CAAb;AACA,GAHgC,EAIjC,CAAEQ,aAAF,EAAiBR,SAAjB,CAJiC,CAAlC,CA9EC,CAqFD;;AACA,QAAMgB,EAAE,GAAGnC,KAAK,EAAhB;AACA,QAAMoC,OAAO,GAAGzC,OAAO,CAAE,MAAM;AAC9B,WAAOwC,EAAE,CAAEtC,MAAM,CAACwC,aAAT,EAAwB3B,SAAxB,CAAT;AACA,GAFsB,EAEpB,CAAEA,SAAF,EAAayB,EAAb,CAFoB,CAAvB;AAIA,QAAMG,qBAAqB,GAAG3C,OAAO,CAAE,MAAM;AAC5C,UAAM4C,YAAY,GAAG5B,SAAS,GAAG,MAAH,GAAYP,KAA1C;AACA,UAAMoC,UAAU,GACf,CAAC,CAAED,YAAH,IAAmB1C,MAAM,CAAC0C,YAAP,CAAqBA,YAArB,CADpB;AAEA,UAAME,WAAW,GAAG5C,MAAM,CAAC6C,aAAP,CAAsB3B,qBAAtB,CAApB;AAEA,WAAOoB,EAAE,CAAEtC,MAAM,CAAC8C,YAAP,EAAF,EAAyBH,UAAzB,EAAqCC,WAArC,CAAT;AACA,GAPoC,EAOlC,CAAE9B,SAAF,EAAaP,KAAb,EAAoB+B,EAApB,EAAwBpB,qBAAxB,CAPkC,CAArC;AASA,QAAM6B,qBAAqB,GAAGjD,OAAO,CAAE,MAAM;AAC5C,WAAOwC,EAAE,CAAEtC,MAAM,CAACgD,kBAAP,EAAF,CAAT;AACA,GAFoC,EAElC,CAAEV,EAAF,CAFkC,CAArC;AAIA,QAAMW,eAAe,GAAGnD,OAAO,CAAE,MAAM;AACtC,WAAOwC,EAAE,CAAEtC,MAAM,CAACkD,YAAP,EAAF,CAAT;AACA,GAF8B,EAE5B,CAAEZ,EAAF,CAF4B,CAA/B;AAIA,SAAO,EACN,GAAGnB,UADG;AAENN,IAAAA,SAAS,EAAE0B,OAFL;AAGNE,IAAAA,qBAHM;AAINb,IAAAA,cAJM;AAKNS,IAAAA,cALM;AAMNP,IAAAA,aANM;AAONqB,IAAAA,sBAAsB,EAAEzB,cAPlB;AAQNuB,IAAAA,eARM;AASNhC,IAAAA,KAAK,EAAEZ,MATD;AAUN0C,IAAAA,qBAVM;AAWNzB,IAAAA,SAXM;AAYNF,IAAAA,UAZM;AAaNF,IAAAA;AAbM,GAAP;AAeA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback, useMemo, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { parseQuantityAndUnitFromRawValue } from '../../unit-control/utils';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\n\nimport type { Border, BorderControlProps } from '../types';\n\nconst sanitizeBorder = ( border?: Border ) => {\n\tconst hasNoWidth = border?.width === undefined || border.width === '';\n\tconst hasNoColor = border?.color === undefined;\n\n\t// If width and color are undefined, unset any style selection as well.\n\tif ( hasNoWidth && hasNoColor ) {\n\t\treturn undefined;\n\t}\n\n\treturn border;\n};\n\nexport function useBorderControl(\n\tprops: WordPressComponentProps< BorderControlProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\tisCompact,\n\t\tonChange,\n\t\tshouldSanitizeBorder = true,\n\t\tvalue: border,\n\t\twidth,\n\t\t__next36pxDefaultSize = false,\n\t\t...otherProps\n\t} = useContextSystem( props, 'BorderControl' );\n\n\tconst [ widthValue, originalWidthUnit ] = parseQuantityAndUnitFromRawValue(\n\t\tborder?.width\n\t);\n\tconst widthUnit = originalWidthUnit || 'px';\n\tconst hadPreviousZeroWidth = widthValue === 0;\n\n\tconst [ colorSelection, setColorSelection ] = useState< string >();\n\tconst [ styleSelection, setStyleSelection ] = useState< string >();\n\n\tconst onBorderChange = useCallback(\n\t\t( newBorder?: Border ) => {\n\t\t\tif ( shouldSanitizeBorder ) {\n\t\t\t\treturn onChange( sanitizeBorder( newBorder ) );\n\t\t\t}\n\n\t\t\tonChange( newBorder );\n\t\t},\n\t\t[ onChange, shouldSanitizeBorder ]\n\t);\n\n\tconst onWidthChange = useCallback(\n\t\t( newWidth?: string ) => {\n\t\t\tconst newWidthValue = newWidth === '' ? undefined : newWidth;\n\t\t\tconst [ parsedValue ] =\n\t\t\t\tparseQuantityAndUnitFromRawValue( newWidth );\n\t\t\tconst hasZeroWidth = parsedValue === 0;\n\n\t\t\tconst updatedBorder = { ...border, width: newWidthValue };\n\n\t\t\t// Setting the border width explicitly to zero will also set the\n\t\t\t// border style to `none` and clear the border color.\n\t\t\tif ( hasZeroWidth && ! hadPreviousZeroWidth ) {\n\t\t\t\t// Before clearing the color and style selections, keep track of\n\t\t\t\t// the current selections so they can be restored when the width\n\t\t\t\t// changes to a non-zero value.\n\t\t\t\tsetColorSelection( border?.color );\n\t\t\t\tsetStyleSelection( border?.style );\n\n\t\t\t\t// Clear the color and style border properties.\n\t\t\t\tupdatedBorder.color = undefined;\n\t\t\t\tupdatedBorder.style = 'none';\n\t\t\t}\n\n\t\t\t// Selection has changed from zero border width to non-zero width.\n\t\t\tif ( ! hasZeroWidth && hadPreviousZeroWidth ) {\n\t\t\t\t// Restore previous border color and style selections if width\n\t\t\t\t// is now not zero.\n\t\t\t\tif ( updatedBorder.color === undefined ) {\n\t\t\t\t\tupdatedBorder.color = colorSelection;\n\t\t\t\t}\n\t\t\t\tif ( updatedBorder.style === 'none' ) {\n\t\t\t\t\tupdatedBorder.style = styleSelection;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tonBorderChange( updatedBorder );\n\t\t},\n\t\t[\n\t\t\tborder,\n\t\t\thadPreviousZeroWidth,\n\t\t\tcolorSelection,\n\t\t\tstyleSelection,\n\t\t\tonBorderChange,\n\t\t]\n\t);\n\n\tconst onSliderChange = useCallback(\n\t\t( value: string ) => {\n\t\t\tonWidthChange( `${ value }${ widthUnit }` );\n\t\t},\n\t\t[ onWidthChange, widthUnit ]\n\t);\n\n\t// Generate class names.\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\treturn cx( styles.borderControl, className );\n\t}, [ className, cx ] );\n\n\tconst innerWrapperClassName = useMemo( () => {\n\t\tconst wrapperWidth = isCompact ? '90px' : width;\n\t\tconst widthStyle =\n\t\t\t!! wrapperWidth && styles.wrapperWidth( wrapperWidth );\n\t\tconst heightStyle = styles.wrapperHeight( __next36pxDefaultSize );\n\n\t\treturn cx( styles.innerWrapper(), widthStyle, heightStyle );\n\t}, [ isCompact, width, cx, __next36pxDefaultSize ] );\n\n\tconst widthControlClassName = useMemo( () => {\n\t\treturn cx( styles.borderWidthControl() );\n\t}, [ cx ] );\n\n\tconst sliderClassName = useMemo( () => {\n\t\treturn cx( styles.borderSlider() );\n\t}, [ cx ] );\n\n\treturn {\n\t\t...otherProps,\n\t\tclassName: classes,\n\t\tinnerWrapperClassName,\n\t\tonBorderChange,\n\t\tonSliderChange,\n\t\tonWidthChange,\n\t\tpreviousStyleSelection: styleSelection,\n\t\tsliderClassName,\n\t\tvalue: border,\n\t\twidthControlClassName,\n\t\twidthUnit,\n\t\twidthValue,\n\t\t__next36pxDefaultSize,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/border-control/border-control/hook.ts"],"names":["useCallback","useMemo","useState","styles","parseQuantityAndUnitFromRawValue","useContextSystem","useCx","sanitizeBorder","border","hasNoWidth","width","undefined","hasNoColor","color","useBorderControl","props","className","isCompact","onChange","shouldSanitizeBorder","value","__next36pxDefaultSize","otherProps","widthValue","originalWidthUnit","widthUnit","hadPreviousZeroWidth","colorSelection","setColorSelection","styleSelection","setStyleSelection","onBorderChange","newBorder","onWidthChange","newWidth","newWidthValue","parsedValue","hasZeroWidth","updatedBorder","style","onSliderChange","cx","classes","borderControl","wrapperWidth","innerWrapperClassName","widthStyle","heightStyle","wrapperHeight","innerWrapper","sliderClassName","borderSlider","inputWidth","previousStyleSelection"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback, useMemo, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { parseQuantityAndUnitFromRawValue } from '../../unit-control/utils';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\n\nimport type { Border, BorderControlProps } from '../types';\n\nconst sanitizeBorder = ( border?: Border ) => {\n\tconst hasNoWidth = border?.width === undefined || border.width === '';\n\tconst hasNoColor = border?.color === undefined;\n\n\t// If width and color are undefined, unset any style selection as well.\n\tif ( hasNoWidth && hasNoColor ) {\n\t\treturn undefined;\n\t}\n\n\treturn border;\n};\n\nexport function useBorderControl(\n\tprops: WordPressComponentProps< BorderControlProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\tisCompact,\n\t\tonChange,\n\t\tshouldSanitizeBorder = true,\n\t\tvalue: border,\n\t\twidth,\n\t\t__next36pxDefaultSize = false,\n\t\t...otherProps\n\t} = useContextSystem( props, 'BorderControl' );\n\n\tconst [ widthValue, originalWidthUnit ] = parseQuantityAndUnitFromRawValue(\n\t\tborder?.width\n\t);\n\tconst widthUnit = originalWidthUnit || 'px';\n\tconst hadPreviousZeroWidth = widthValue === 0;\n\n\tconst [ colorSelection, setColorSelection ] = useState< string >();\n\tconst [ styleSelection, setStyleSelection ] = useState< string >();\n\n\tconst onBorderChange = useCallback(\n\t\t( newBorder?: Border ) => {\n\t\t\tif ( shouldSanitizeBorder ) {\n\t\t\t\treturn onChange( sanitizeBorder( newBorder ) );\n\t\t\t}\n\n\t\t\tonChange( newBorder );\n\t\t},\n\t\t[ onChange, shouldSanitizeBorder ]\n\t);\n\n\tconst onWidthChange = useCallback(\n\t\t( newWidth?: string ) => {\n\t\t\tconst newWidthValue = newWidth === '' ? undefined : newWidth;\n\t\t\tconst [ parsedValue ] =\n\t\t\t\tparseQuantityAndUnitFromRawValue( newWidth );\n\t\t\tconst hasZeroWidth = parsedValue === 0;\n\n\t\t\tconst updatedBorder = { ...border, width: newWidthValue };\n\n\t\t\t// Setting the border width explicitly to zero will also set the\n\t\t\t// border style to `none` and clear the border color.\n\t\t\tif ( hasZeroWidth && ! hadPreviousZeroWidth ) {\n\t\t\t\t// Before clearing the color and style selections, keep track of\n\t\t\t\t// the current selections so they can be restored when the width\n\t\t\t\t// changes to a non-zero value.\n\t\t\t\tsetColorSelection( border?.color );\n\t\t\t\tsetStyleSelection( border?.style );\n\n\t\t\t\t// Clear the color and style border properties.\n\t\t\t\tupdatedBorder.color = undefined;\n\t\t\t\tupdatedBorder.style = 'none';\n\t\t\t}\n\n\t\t\t// Selection has changed from zero border width to non-zero width.\n\t\t\tif ( ! hasZeroWidth && hadPreviousZeroWidth ) {\n\t\t\t\t// Restore previous border color and style selections if width\n\t\t\t\t// is now not zero.\n\t\t\t\tif ( updatedBorder.color === undefined ) {\n\t\t\t\t\tupdatedBorder.color = colorSelection;\n\t\t\t\t}\n\t\t\t\tif ( updatedBorder.style === 'none' ) {\n\t\t\t\t\tupdatedBorder.style = styleSelection;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tonBorderChange( updatedBorder );\n\t\t},\n\t\t[\n\t\t\tborder,\n\t\t\thadPreviousZeroWidth,\n\t\t\tcolorSelection,\n\t\t\tstyleSelection,\n\t\t\tonBorderChange,\n\t\t]\n\t);\n\n\tconst onSliderChange = useCallback(\n\t\t( value?: number ) => {\n\t\t\tonWidthChange( `${ value }${ widthUnit }` );\n\t\t},\n\t\t[ onWidthChange, widthUnit ]\n\t);\n\n\t// Generate class names.\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\treturn cx( styles.borderControl, className );\n\t}, [ className, cx ] );\n\n\tconst wrapperWidth = isCompact ? '90px' : width;\n\tconst innerWrapperClassName = useMemo( () => {\n\t\tconst widthStyle = !! wrapperWidth && styles.wrapperWidth;\n\t\tconst heightStyle = styles.wrapperHeight( __next36pxDefaultSize );\n\n\t\treturn cx( styles.innerWrapper(), widthStyle, heightStyle );\n\t}, [ wrapperWidth, cx, __next36pxDefaultSize ] );\n\n\tconst sliderClassName = useMemo( () => {\n\t\treturn cx( styles.borderSlider() );\n\t}, [ cx ] );\n\n\treturn {\n\t\t...otherProps,\n\t\tclassName: classes,\n\t\tinnerWrapperClassName,\n\t\tinputWidth: wrapperWidth,\n\t\tonBorderChange,\n\t\tonSliderChange,\n\t\tonWidthChange,\n\t\tpreviousStyleSelection: styleSelection,\n\t\tsliderClassName,\n\t\tvalue: border,\n\t\twidthUnit,\n\t\twidthValue,\n\t\t__next36pxDefaultSize,\n\t};\n}\n"]}
@@ -24,6 +24,7 @@ import { VStack } from '../../v-stack';
24
24
  import { contextConnect } from '../../ui/context';
25
25
  import { useBorderControlDropdown } from './hook';
26
26
  import { StyledLabel } from '../../base-control/styles/base-control-styles';
27
+ import DropdownContentWrapper from '../../dropdown/dropdown-content-wrapper';
27
28
 
28
29
  const noop = () => undefined;
29
30
 
@@ -91,7 +92,6 @@ const BorderControlDropdown = (props, forwardedRef) => {
91
92
  onReset,
92
93
  onColorChange,
93
94
  onStyleChange,
94
- popoverClassName,
95
95
  popoverContentClassName,
96
96
  popoverControlsClassName,
97
97
  resetButtonClassName,
@@ -117,7 +117,9 @@ const BorderControlDropdown = (props, forwardedRef) => {
117
117
  onClick: onToggle,
118
118
  variant: "tertiary",
119
119
  "aria-label": toggleAriaLabel,
120
- position: dropdownPosition
120
+ position: dropdownPosition,
121
+ label: __('Border color and style picker'),
122
+ showTooltip: true
121
123
  }, createElement("span", {
122
124
  className: indicatorWrapperClassName
123
125
  }, createElement(ColorIndicator, {
@@ -130,7 +132,9 @@ const BorderControlDropdown = (props, forwardedRef) => {
130
132
  let {
131
133
  onClose
132
134
  } = _ref2;
133
- return createElement(Fragment, null, createElement(VStack, {
135
+ return createElement(Fragment, null, createElement(DropdownContentWrapper, {
136
+ paddingSize: "medium"
137
+ }, createElement(VStack, {
134
138
  className: popoverControlsClassName,
135
139
  spacing: 6
136
140
  }, showDropdownHeader ? createElement(HStack, null, createElement(StyledLabel, null, __('Border color')), createElement(Button, {
@@ -152,21 +156,22 @@ const BorderControlDropdown = (props, forwardedRef) => {
152
156
  label: __('Style'),
153
157
  value: style,
154
158
  onChange: onStyleChange
155
- })), showResetButton && createElement(Button, {
159
+ }))), showResetButton && createElement(DropdownContentWrapper, {
160
+ paddingSize: "none"
161
+ }, createElement(Button, {
156
162
  className: resetButtonClassName,
157
163
  variant: "tertiary",
158
164
  onClick: () => {
159
165
  onReset();
160
166
  onClose();
161
167
  }
162
- }, __('Reset to default')));
168
+ }, __('Reset to default'))));
163
169
  };
164
170
 
165
171
  return createElement(Dropdown, _extends({
166
172
  renderToggle: renderToggle,
167
173
  renderContent: renderContent,
168
- popoverProps: { ...__unstablePopoverProps,
169
- className: popoverClassName
174
+ popoverProps: { ...__unstablePopoverProps
170
175
  }
171
176
  }, otherProps, {
172
177
  ref: forwardedRef
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/border-control/border-control-dropdown/component.tsx"],"names":["__","sprintf","closeSmall","BorderControlStylePicker","Button","ColorIndicator","ColorPalette","Dropdown","HStack","VStack","contextConnect","useBorderControlDropdown","StyledLabel","noop","undefined","getColorObject","colorValue","colors","hasMultipleColorOrigins","matchedColor","some","origin","color","find","getToggleAriaLabel","colorObject","style","isStyleEnabled","name","BorderControlDropdown","props","forwardedRef","__experimentalHasMultipleOrigins","__experimentalIsRenderedInSidebar","border","disableCustomColors","enableAlpha","indicatorClassName","indicatorWrapperClassName","onReset","onColorChange","onStyleChange","popoverClassName","popoverContentClassName","popoverControlsClassName","resetButtonClassName","showDropdownHeader","enableStyle","__unstablePopoverProps","otherProps","toggleAriaLabel","showResetButton","dropdownPosition","renderToggle","onToggle","renderContent","onClose","className","ConnectedBorderControlDropdown"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BorderControlStylePicker from '../border-control-style-picker';\nimport Button from '../../button';\nimport ColorIndicator from '../../color-indicator';\nimport ColorPalette from '../../color-palette';\nimport Dropdown from '../../dropdown';\nimport { HStack } from '../../h-stack';\nimport { VStack } from '../../v-stack';\nimport { contextConnect, WordPressComponentProps } from '../../ui/context';\nimport { useBorderControlDropdown } from './hook';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\n\nimport type {\n\tColor,\n\tColorOrigin,\n\tColors,\n\tDropdownProps,\n\tPopoverProps,\n} from '../types';\n\nconst noop = () => undefined;\nconst getColorObject = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolors: Colors | undefined,\n\thasMultipleColorOrigins: boolean\n) => {\n\tif ( ! colorValue || ! colors ) {\n\t\treturn;\n\t}\n\n\tif ( hasMultipleColorOrigins ) {\n\t\tlet matchedColor;\n\n\t\t( colors as ColorOrigin[] ).some( ( origin ) =>\n\t\t\torigin.colors.some( ( color ) => {\n\t\t\t\tif ( color.color === colorValue ) {\n\t\t\t\t\tmatchedColor = color;\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t} )\n\t\t);\n\n\t\treturn matchedColor;\n\t}\n\n\treturn ( colors as Color[] ).find(\n\t\t( color ) => color.color === colorValue\n\t);\n};\n\nconst getToggleAriaLabel = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolorObject: Color | undefined,\n\tstyle: CSSProperties[ 'borderStyle' ],\n\tisStyleEnabled: boolean\n) => {\n\tif ( isStyleEnabled ) {\n\t\tif ( colorObject ) {\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\". %3$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\". The currently selected style is \"%3$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tcolorObject.color,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tcolorObject.color\n\t\t\t\t );\n\t\t}\n\n\t\tif ( colorValue ) {\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\". %2$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\". The currently selected style is \"%2$s\".',\n\t\t\t\t\t\tcolorValue,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\".',\n\t\t\t\t\t\tcolorValue\n\t\t\t\t );\n\t\t}\n\n\t\treturn __( 'Border color and style picker.' );\n\t}\n\n\tif ( colorObject ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t'Border color picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\tcolorObject.name,\n\t\t\tcolorObject.color\n\t\t);\n\t}\n\n\tif ( colorValue ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t'Border color picker. The currently selected color has a value of \"%1$s\".',\n\t\t\tcolorValue\n\t\t);\n\t}\n\n\treturn __( 'Border color picker.' );\n};\n\nconst BorderControlDropdown = (\n\tprops: WordPressComponentProps< DropdownProps, 'div' >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\t__experimentalHasMultipleOrigins,\n\t\t__experimentalIsRenderedInSidebar,\n\t\tborder,\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tenableAlpha,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonReset,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tpopoverClassName,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t\tshowDropdownHeader,\n\t\tenableStyle = true,\n\t\t__unstablePopoverProps,\n\t\t...otherProps\n\t} = useBorderControlDropdown( props );\n\n\tconst { color, style } = border || {};\n\tconst colorObject = getColorObject(\n\t\tcolor,\n\t\tcolors,\n\t\t!! __experimentalHasMultipleOrigins\n\t);\n\n\tconst toggleAriaLabel = getToggleAriaLabel(\n\t\tcolor,\n\t\tcolorObject,\n\t\tstyle,\n\t\tenableStyle\n\t);\n\n\tconst showResetButton = color || ( style && style !== 'none' );\n\tconst dropdownPosition = __experimentalIsRenderedInSidebar\n\t\t? 'bottom left'\n\t\t: undefined;\n\n\tconst renderToggle = ( { onToggle = noop } ) => (\n\t\t<Button\n\t\t\tonClick={ onToggle }\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-label={ toggleAriaLabel }\n\t\t\tposition={ dropdownPosition }\n\t\t>\n\t\t\t<span className={ indicatorWrapperClassName }>\n\t\t\t\t<ColorIndicator\n\t\t\t\t\tclassName={ indicatorClassName }\n\t\t\t\t\tcolorValue={ color }\n\t\t\t\t/>\n\t\t\t</span>\n\t\t</Button>\n\t);\n\n\tconst renderContent = ( { onClose }: PopoverProps ) => (\n\t\t<>\n\t\t\t<VStack className={ popoverControlsClassName } spacing={ 6 }>\n\t\t\t\t{ showDropdownHeader ? (\n\t\t\t\t\t<HStack>\n\t\t\t\t\t\t<StyledLabel>{ __( 'Border color' ) }</StyledLabel>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tlabel={ __( 'Close border color' ) }\n\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t) : undefined }\n\t\t\t\t<ColorPalette\n\t\t\t\t\tclassName={ popoverContentClassName }\n\t\t\t\t\tvalue={ color }\n\t\t\t\t\tonChange={ onColorChange }\n\t\t\t\t\t{ ...{ colors, disableCustomColors } }\n\t\t\t\t\t__experimentalHasMultipleOrigins={\n\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t}\n\t\t\t\t\tclearable={ false }\n\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t/>\n\t\t\t\t{ enableStyle && (\n\t\t\t\t\t<BorderControlStylePicker\n\t\t\t\t\t\tlabel={ __( 'Style' ) }\n\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\tonChange={ onStyleChange }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</VStack>\n\t\t\t{ showResetButton && (\n\t\t\t\t<Button\n\t\t\t\t\tclassName={ resetButtonClassName }\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tonReset();\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Reset to default' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<Dropdown\n\t\t\trenderToggle={ renderToggle }\n\t\t\trenderContent={ renderContent }\n\t\t\tpopoverProps={ {\n\t\t\t\t...__unstablePopoverProps,\n\t\t\t\tclassName: popoverClassName,\n\t\t\t} }\n\t\t\t{ ...otherProps }\n\t\t\tref={ forwardedRef }\n\t\t/>\n\t);\n};\n\nconst ConnectedBorderControlDropdown = contextConnect(\n\tBorderControlDropdown,\n\t'BorderControlDropdown'\n);\n\nexport default ConnectedBorderControlDropdown;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/border-control/border-control-dropdown/component.tsx"],"names":["__","sprintf","closeSmall","BorderControlStylePicker","Button","ColorIndicator","ColorPalette","Dropdown","HStack","VStack","contextConnect","useBorderControlDropdown","StyledLabel","DropdownContentWrapper","noop","undefined","getColorObject","colorValue","colors","hasMultipleColorOrigins","matchedColor","some","origin","color","find","getToggleAriaLabel","colorObject","style","isStyleEnabled","name","BorderControlDropdown","props","forwardedRef","__experimentalHasMultipleOrigins","__experimentalIsRenderedInSidebar","border","disableCustomColors","enableAlpha","indicatorClassName","indicatorWrapperClassName","onReset","onColorChange","onStyleChange","popoverContentClassName","popoverControlsClassName","resetButtonClassName","showDropdownHeader","enableStyle","__unstablePopoverProps","otherProps","toggleAriaLabel","showResetButton","dropdownPosition","renderToggle","onToggle","renderContent","onClose","ConnectedBorderControlDropdown"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BorderControlStylePicker from '../border-control-style-picker';\nimport Button from '../../button';\nimport ColorIndicator from '../../color-indicator';\nimport ColorPalette from '../../color-palette';\nimport Dropdown from '../../dropdown';\nimport { HStack } from '../../h-stack';\nimport { VStack } from '../../v-stack';\nimport { contextConnect, WordPressComponentProps } from '../../ui/context';\nimport { useBorderControlDropdown } from './hook';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\nimport DropdownContentWrapper from '../../dropdown/dropdown-content-wrapper';\n\nimport type {\n\tColor,\n\tColorOrigin,\n\tColors,\n\tDropdownProps,\n\tPopoverProps,\n} from '../types';\n\nconst noop = () => undefined;\nconst getColorObject = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolors: Colors | undefined,\n\thasMultipleColorOrigins: boolean\n) => {\n\tif ( ! colorValue || ! colors ) {\n\t\treturn;\n\t}\n\n\tif ( hasMultipleColorOrigins ) {\n\t\tlet matchedColor;\n\n\t\t( colors as ColorOrigin[] ).some( ( origin ) =>\n\t\t\torigin.colors.some( ( color ) => {\n\t\t\t\tif ( color.color === colorValue ) {\n\t\t\t\t\tmatchedColor = color;\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t} )\n\t\t);\n\n\t\treturn matchedColor;\n\t}\n\n\treturn ( colors as Color[] ).find(\n\t\t( color ) => color.color === colorValue\n\t);\n};\n\nconst getToggleAriaLabel = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolorObject: Color | undefined,\n\tstyle: CSSProperties[ 'borderStyle' ],\n\tisStyleEnabled: boolean\n) => {\n\tif ( isStyleEnabled ) {\n\t\tif ( colorObject ) {\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\". %3$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\". The currently selected style is \"%3$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tcolorObject.color,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tcolorObject.color\n\t\t\t\t );\n\t\t}\n\n\t\tif ( colorValue ) {\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\". %2$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\". The currently selected style is \"%2$s\".',\n\t\t\t\t\t\tcolorValue,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\".',\n\t\t\t\t\t\tcolorValue\n\t\t\t\t );\n\t\t}\n\n\t\treturn __( 'Border color and style picker.' );\n\t}\n\n\tif ( colorObject ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t'Border color picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\tcolorObject.name,\n\t\t\tcolorObject.color\n\t\t);\n\t}\n\n\tif ( colorValue ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t'Border color picker. The currently selected color has a value of \"%1$s\".',\n\t\t\tcolorValue\n\t\t);\n\t}\n\n\treturn __( 'Border color picker.' );\n};\n\nconst BorderControlDropdown = (\n\tprops: WordPressComponentProps< DropdownProps, 'div' >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\t__experimentalHasMultipleOrigins,\n\t\t__experimentalIsRenderedInSidebar,\n\t\tborder,\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tenableAlpha,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonReset,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t\tshowDropdownHeader,\n\t\tenableStyle = true,\n\t\t__unstablePopoverProps,\n\t\t...otherProps\n\t} = useBorderControlDropdown( props );\n\n\tconst { color, style } = border || {};\n\tconst colorObject = getColorObject(\n\t\tcolor,\n\t\tcolors,\n\t\t!! __experimentalHasMultipleOrigins\n\t);\n\n\tconst toggleAriaLabel = getToggleAriaLabel(\n\t\tcolor,\n\t\tcolorObject,\n\t\tstyle,\n\t\tenableStyle\n\t);\n\n\tconst showResetButton = color || ( style && style !== 'none' );\n\tconst dropdownPosition = __experimentalIsRenderedInSidebar\n\t\t? 'bottom left'\n\t\t: undefined;\n\n\tconst renderToggle = ( { onToggle = noop } ) => (\n\t\t<Button\n\t\t\tonClick={ onToggle }\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-label={ toggleAriaLabel }\n\t\t\tposition={ dropdownPosition }\n\t\t\tlabel={ __( 'Border color and style picker' ) }\n\t\t\tshowTooltip={ true }\n\t\t>\n\t\t\t<span className={ indicatorWrapperClassName }>\n\t\t\t\t<ColorIndicator\n\t\t\t\t\tclassName={ indicatorClassName }\n\t\t\t\t\tcolorValue={ color }\n\t\t\t\t/>\n\t\t\t</span>\n\t\t</Button>\n\t);\n\n\tconst renderContent = ( { onClose }: PopoverProps ) => (\n\t\t<>\n\t\t\t<DropdownContentWrapper paddingSize=\"medium\">\n\t\t\t\t<VStack className={ popoverControlsClassName } spacing={ 6 }>\n\t\t\t\t\t{ showDropdownHeader ? (\n\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t<StyledLabel>{ __( 'Border color' ) }</StyledLabel>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tlabel={ __( 'Close border color' ) }\n\t\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t) : undefined }\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclassName={ popoverContentClassName }\n\t\t\t\t\t\tvalue={ color }\n\t\t\t\t\t\tonChange={ onColorChange }\n\t\t\t\t\t\t{ ...{ colors, disableCustomColors } }\n\t\t\t\t\t\t__experimentalHasMultipleOrigins={\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t}\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableStyle && (\n\t\t\t\t\t\t<BorderControlStylePicker\n\t\t\t\t\t\t\tlabel={ __( 'Style' ) }\n\t\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\t\tonChange={ onStyleChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t</DropdownContentWrapper>\n\t\t\t{ showResetButton && (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName={ resetButtonClassName }\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Reset to default' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<Dropdown\n\t\t\trenderToggle={ renderToggle }\n\t\t\trenderContent={ renderContent }\n\t\t\tpopoverProps={ {\n\t\t\t\t...__unstablePopoverProps,\n\t\t\t} }\n\t\t\t{ ...otherProps }\n\t\t\tref={ forwardedRef }\n\t\t/>\n\t);\n};\n\nconst ConnectedBorderControlDropdown = contextConnect(\n\tBorderControlDropdown,\n\t'BorderControlDropdown'\n);\n\nexport default ConnectedBorderControlDropdown;\n"]}
@@ -59,9 +59,6 @@ export function useBorderControlDropdown(props) {
59
59
  const indicatorWrapperClassName = useMemo(() => {
60
60
  return cx(styles.colorIndicatorWrapper(border, __next36pxDefaultSize));
61
61
  }, [border, cx, __next36pxDefaultSize]);
62
- const popoverClassName = useMemo(() => {
63
- return cx(styles.borderControlPopover);
64
- }, [cx]);
65
62
  const popoverControlsClassName = useMemo(() => {
66
63
  return cx(styles.borderControlPopoverControls);
67
64
  }, [cx]);
@@ -80,7 +77,6 @@ export function useBorderControlDropdown(props) {
80
77
  onColorChange,
81
78
  onStyleChange,
82
79
  onReset,
83
- popoverClassName,
84
80
  popoverContentClassName,
85
81
  popoverControlsClassName,
86
82
  resetButtonClassName
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/border-control/border-control-dropdown/hook.ts"],"names":["useMemo","styles","parseQuantityAndUnitFromRawValue","useContextSystem","useCx","useBorderControlDropdown","props","border","className","colors","onChange","previousStyleSelection","__next36pxDefaultSize","otherProps","widthValue","width","hasZeroWidth","onColorChange","color","style","onStyleChange","onReset","undefined","cx","classes","borderControlDropdown","indicatorClassName","borderColorIndicator","indicatorWrapperClassName","colorIndicatorWrapper","popoverClassName","borderControlPopover","popoverControlsClassName","borderControlPopoverControls","popoverContentClassName","borderControlPopoverContent","resetButtonClassName","resetButton"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { parseQuantityAndUnitFromRawValue } from '../../unit-control/utils';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\n\nimport type { DropdownProps } from '../types';\n\nexport function useBorderControlDropdown(\n\tprops: WordPressComponentProps< DropdownProps, 'div' >\n) {\n\tconst {\n\t\tborder,\n\t\tclassName,\n\t\tcolors,\n\t\tonChange,\n\t\tpreviousStyleSelection,\n\t\t__next36pxDefaultSize,\n\t\t...otherProps\n\t} = useContextSystem( props, 'BorderControlDropdown' );\n\n\tconst [ widthValue ] = parseQuantityAndUnitFromRawValue( border?.width );\n\tconst hasZeroWidth = widthValue === 0;\n\n\tconst onColorChange = ( color?: string ) => {\n\t\tconst style =\n\t\t\tborder?.style === 'none' ? previousStyleSelection : border?.style;\n\t\tconst width = hasZeroWidth && !! color ? '1px' : border?.width;\n\n\t\tonChange( { color, style, width } );\n\t};\n\n\tconst onStyleChange = ( style?: string ) => {\n\t\tconst width = hasZeroWidth && !! style ? '1px' : border?.width;\n\t\tonChange( { ...border, style, width } );\n\t};\n\n\tconst onReset = () => {\n\t\tonChange( {\n\t\t\t...border,\n\t\t\tcolor: undefined,\n\t\t\tstyle: undefined,\n\t\t} );\n\t};\n\n\t// Generate class names.\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\treturn cx( styles.borderControlDropdown(), className );\n\t}, [ className, cx ] );\n\n\tconst indicatorClassName = useMemo( () => {\n\t\treturn cx( styles.borderColorIndicator );\n\t}, [ cx ] );\n\n\tconst indicatorWrapperClassName = useMemo( () => {\n\t\treturn cx(\n\t\t\tstyles.colorIndicatorWrapper( border, __next36pxDefaultSize )\n\t\t);\n\t}, [ border, cx, __next36pxDefaultSize ] );\n\n\tconst popoverClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopover );\n\t}, [ cx ] );\n\n\tconst popoverControlsClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverControls );\n\t}, [ cx ] );\n\n\tconst popoverContentClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverContent );\n\t}, [ cx ] );\n\n\tconst resetButtonClassName = useMemo( () => {\n\t\treturn cx( styles.resetButton );\n\t}, [ cx ] );\n\n\treturn {\n\t\t...otherProps,\n\t\tborder,\n\t\tclassName: classes,\n\t\tcolors,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tonReset,\n\t\tpopoverClassName,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/border-control/border-control-dropdown/hook.ts"],"names":["useMemo","styles","parseQuantityAndUnitFromRawValue","useContextSystem","useCx","useBorderControlDropdown","props","border","className","colors","onChange","previousStyleSelection","__next36pxDefaultSize","otherProps","widthValue","width","hasZeroWidth","onColorChange","color","style","onStyleChange","onReset","undefined","cx","classes","borderControlDropdown","indicatorClassName","borderColorIndicator","indicatorWrapperClassName","colorIndicatorWrapper","popoverControlsClassName","borderControlPopoverControls","popoverContentClassName","borderControlPopoverContent","resetButtonClassName","resetButton"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { parseQuantityAndUnitFromRawValue } from '../../unit-control/utils';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\n\nimport type { DropdownProps } from '../types';\n\nexport function useBorderControlDropdown(\n\tprops: WordPressComponentProps< DropdownProps, 'div' >\n) {\n\tconst {\n\t\tborder,\n\t\tclassName,\n\t\tcolors,\n\t\tonChange,\n\t\tpreviousStyleSelection,\n\t\t__next36pxDefaultSize,\n\t\t...otherProps\n\t} = useContextSystem( props, 'BorderControlDropdown' );\n\n\tconst [ widthValue ] = parseQuantityAndUnitFromRawValue( border?.width );\n\tconst hasZeroWidth = widthValue === 0;\n\n\tconst onColorChange = ( color?: string ) => {\n\t\tconst style =\n\t\t\tborder?.style === 'none' ? previousStyleSelection : border?.style;\n\t\tconst width = hasZeroWidth && !! color ? '1px' : border?.width;\n\n\t\tonChange( { color, style, width } );\n\t};\n\n\tconst onStyleChange = ( style?: string ) => {\n\t\tconst width = hasZeroWidth && !! style ? '1px' : border?.width;\n\t\tonChange( { ...border, style, width } );\n\t};\n\n\tconst onReset = () => {\n\t\tonChange( {\n\t\t\t...border,\n\t\t\tcolor: undefined,\n\t\t\tstyle: undefined,\n\t\t} );\n\t};\n\n\t// Generate class names.\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\treturn cx( styles.borderControlDropdown(), className );\n\t}, [ className, cx ] );\n\n\tconst indicatorClassName = useMemo( () => {\n\t\treturn cx( styles.borderColorIndicator );\n\t}, [ cx ] );\n\n\tconst indicatorWrapperClassName = useMemo( () => {\n\t\treturn cx(\n\t\t\tstyles.colorIndicatorWrapper( border, __next36pxDefaultSize )\n\t\t);\n\t}, [ border, cx, __next36pxDefaultSize ] );\n\n\tconst popoverControlsClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverControls );\n\t}, [ cx ] );\n\n\tconst popoverContentClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverContent );\n\t}, [ cx ] );\n\n\tconst resetButtonClassName = useMemo( () => {\n\t\treturn cx( styles.resetButton );\n\t}, [ cx ] );\n\n\treturn {\n\t\t...otherProps,\n\t\tborder,\n\t\tclassName: classes,\n\t\tcolors,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tonReset,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t};\n}\n"]}