@wordpress/components 19.17.0 → 20.0.2-next.957ca95e4c.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 (916) hide show
  1. package/CHANGELOG.md +96 -1
  2. package/CONTRIBUTING.md +12 -12
  3. package/build/alignment-matrix-control/index.js +1 -1
  4. package/build/alignment-matrix-control/index.js.map +1 -1
  5. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +13 -13
  6. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  7. package/build/angle-picker-control/index.js +3 -0
  8. package/build/angle-picker-control/index.js.map +1 -1
  9. package/build/angle-picker-control/styles/angle-picker-control-styles.js +14 -4
  10. package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  11. package/build/autocomplete/get-default-use-items.js +7 -1
  12. package/build/autocomplete/get-default-use-items.js.map +1 -1
  13. package/build/autocomplete/index.js +12 -12
  14. package/build/autocomplete/index.js.map +1 -1
  15. package/build/base-control/styles/base-control-styles.js +8 -8
  16. package/build/base-control/styles/base-control-styles.js.map +1 -1
  17. package/build/base-field/styles.js +5 -5
  18. package/build/base-field/styles.js.map +1 -1
  19. package/build/box-control/styles/box-control-visualizer-styles.js +8 -8
  20. package/build/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  21. package/build/card/card/component.js +6 -11
  22. package/build/card/card/component.js.map +1 -1
  23. package/build/card/card/hook.js +0 -10
  24. package/build/card/card/hook.js.map +1 -1
  25. package/build/card/card/index.js.map +1 -1
  26. package/build/card/card-body/component.js +7 -8
  27. package/build/card/card-body/component.js.map +1 -1
  28. package/build/card/card-body/hook.js +0 -4
  29. package/build/card/card-body/hook.js.map +1 -1
  30. package/build/card/card-body/index.js.map +1 -1
  31. package/build/card/card-divider/component.js +7 -8
  32. package/build/card/card-divider/component.js.map +1 -1
  33. package/build/card/card-divider/hook.js +0 -4
  34. package/build/card/card-divider/hook.js.map +1 -1
  35. package/build/card/card-divider/index.js.map +1 -1
  36. package/build/card/card-footer/component.js +7 -8
  37. package/build/card/card-footer/component.js.map +1 -1
  38. package/build/card/card-footer/hook.js +0 -4
  39. package/build/card/card-footer/hook.js.map +1 -1
  40. package/build/card/card-footer/index.js.map +1 -1
  41. package/build/card/card-header/component.js +7 -8
  42. package/build/card/card-header/component.js.map +1 -1
  43. package/build/card/card-header/hook.js +0 -4
  44. package/build/card/card-header/hook.js.map +1 -1
  45. package/build/card/card-header/index.js.map +1 -1
  46. package/build/card/card-media/component.js +7 -7
  47. package/build/card/card-media/component.js.map +1 -1
  48. package/build/card/card-media/hook.js +0 -4
  49. package/build/card/card-media/hook.js.map +1 -1
  50. package/build/card/card-media/index.js.map +1 -1
  51. package/build/card/context.js.map +1 -1
  52. package/build/card/index.js.map +1 -1
  53. package/build/card/styles.js +17 -17
  54. package/build/card/styles.js.map +1 -1
  55. package/build/clipboard-button/index.js +16 -1
  56. package/build/clipboard-button/index.js.map +1 -1
  57. package/build/color-list-picker/index.js +16 -5
  58. package/build/color-list-picker/index.js.map +1 -1
  59. package/build/color-palette/index.js +28 -14
  60. package/build/color-palette/index.js.map +1 -1
  61. package/build/color-palette/index.native.js +3 -3
  62. package/build/color-palette/index.native.js.map +1 -1
  63. package/build/combobox-control/index.js +7 -4
  64. package/build/combobox-control/index.js.map +1 -1
  65. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
  66. package/build/custom-gradient-picker/gradient-bar/constants.js.map +1 -0
  67. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +34 -41
  68. package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -0
  69. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -1
  70. package/build/custom-gradient-picker/gradient-bar/index.js.map +1 -0
  71. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
  72. package/build/custom-gradient-picker/gradient-bar/utils.js.map +1 -0
  73. package/build/custom-gradient-picker/index.js +30 -4
  74. package/build/custom-gradient-picker/index.js.map +1 -1
  75. package/build/custom-select-control/index.js +21 -11
  76. package/build/custom-select-control/index.js.map +1 -1
  77. package/build/custom-select-control/styles.js +34 -0
  78. package/build/custom-select-control/styles.js.map +1 -0
  79. package/build/date-time/constants.js +9 -0
  80. package/build/date-time/constants.js.map +1 -0
  81. package/build/date-time/date/index.js +196 -188
  82. package/build/date-time/date/index.js.map +1 -1
  83. package/build/date-time/date/styles.js +68 -39
  84. package/build/date-time/date/styles.js.map +1 -1
  85. package/build/date-time/date-time/index.js +3 -2
  86. package/build/date-time/date-time/index.js.map +1 -1
  87. package/build/date-time/date-time/styles.js +19 -5
  88. package/build/date-time/date-time/styles.js.map +1 -1
  89. package/build/date-time/time/index.js +22 -17
  90. package/build/date-time/time/index.js.map +1 -1
  91. package/build/date-time/time/styles.js +12 -12
  92. package/build/date-time/time/styles.js.map +1 -1
  93. package/build/date-time/utils.js +27 -0
  94. package/build/date-time/utils.js.map +1 -0
  95. package/build/dimension-control/index.js +2 -6
  96. package/build/dimension-control/index.js.map +1 -1
  97. package/build/disabled/index.js +28 -11
  98. package/build/disabled/index.js.map +1 -1
  99. package/build/disabled/styles/disabled-styles.js +3 -3
  100. package/build/disabled/styles/disabled-styles.js.map +1 -1
  101. package/build/{swatch → disabled}/types.js +0 -0
  102. package/build/{swatch → disabled}/types.js.map +0 -0
  103. package/build/drop-zone/index.js +2 -4
  104. package/build/drop-zone/index.js.map +1 -1
  105. package/build/dropdown/index.js +5 -6
  106. package/build/dropdown/index.js.map +1 -1
  107. package/build/dropdown-menu/index.js +1 -3
  108. package/build/dropdown-menu/index.js.map +1 -1
  109. package/build/dropdown-menu/index.native.js +0 -17
  110. package/build/dropdown-menu/index.native.js.map +1 -1
  111. package/build/duotone-picker/custom-duotone-bar.js +2 -2
  112. package/build/duotone-picker/custom-duotone-bar.js.map +1 -1
  113. package/build/duotone-picker/duotone-picker.js +9 -1
  114. package/build/duotone-picker/duotone-picker.js.map +1 -1
  115. package/build/duotone-picker/duotone-swatch.js +13 -3
  116. package/build/duotone-picker/duotone-swatch.js.map +1 -1
  117. package/build/focal-point-picker/controls.js +4 -4
  118. package/build/focal-point-picker/controls.js.map +1 -1
  119. package/build/focal-point-picker/focal-point.js +4 -6
  120. package/build/focal-point-picker/focal-point.js.map +1 -1
  121. package/build/focal-point-picker/grid.js +6 -35
  122. package/build/focal-point-picker/grid.js.map +1 -1
  123. package/build/focal-point-picker/index.js +164 -336
  124. package/build/focal-point-picker/index.js.map +1 -1
  125. package/build/focal-point-picker/media.js +4 -34
  126. package/build/focal-point-picker/media.js.map +1 -1
  127. package/build/focal-point-picker/styles/focal-point-picker-style.js +14 -14
  128. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  129. package/build/focal-point-picker/styles/focal-point-style.js +4 -4
  130. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  131. package/build/focal-point-picker/utils.js +2 -6
  132. package/build/focal-point-picker/utils.js.map +1 -1
  133. package/build/focusable-iframe/index.js +6 -0
  134. package/build/focusable-iframe/index.js.map +1 -1
  135. package/build/font-size-picker/index.js +43 -14
  136. package/build/font-size-picker/index.js.map +1 -1
  137. package/build/font-size-picker/utils.js +32 -22
  138. package/build/font-size-picker/utils.js.map +1 -1
  139. package/build/form-token-field/index.js +29 -20
  140. package/build/form-token-field/index.js.map +1 -1
  141. package/build/gradient-picker/index.js +25 -2
  142. package/build/gradient-picker/index.js.map +1 -1
  143. package/build/guide/index.js +13 -9
  144. package/build/guide/index.js.map +1 -1
  145. package/build/guide/page-control.js +3 -7
  146. package/build/guide/page-control.js.map +1 -1
  147. package/build/higher-order/with-constrained-tabbing/index.js +1 -1
  148. package/build/higher-order/with-constrained-tabbing/index.js.map +1 -1
  149. package/build/higher-order/with-spoken-messages/index.js +2 -0
  150. package/build/higher-order/with-spoken-messages/index.js.map +1 -1
  151. package/build/isolated-event-container/index.js +4 -0
  152. package/build/isolated-event-container/index.js.map +1 -1
  153. package/build/item-group/styles.js +10 -10
  154. package/build/item-group/styles.js.map +1 -1
  155. package/build/mobile/bottom-sheet/index.native.js +3 -6
  156. package/build/mobile/bottom-sheet/index.native.js.map +1 -1
  157. package/build/mobile/global-styles-context/utils.native.js +4 -2
  158. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  159. package/build/mobile/image/index.native.js +6 -26
  160. package/build/mobile/image/index.native.js.map +1 -1
  161. package/build/mobile/picker/index.android.js +3 -3
  162. package/build/mobile/picker/index.android.js.map +1 -1
  163. package/build/modal/index.js +1 -3
  164. package/build/modal/index.js.map +1 -1
  165. package/build/navigable-container/container.js +9 -8
  166. package/build/navigable-container/container.js.map +1 -1
  167. package/build/navigable-container/menu.js +3 -9
  168. package/build/navigable-container/menu.js.map +1 -1
  169. package/build/navigation/menu/menu-title-search.js +1 -3
  170. package/build/navigation/menu/menu-title-search.js.map +1 -1
  171. package/build/navigator/navigator-back-button/hook.js +0 -4
  172. package/build/navigator/navigator-back-button/hook.js.map +1 -1
  173. package/build/navigator/navigator-button/hook.js +0 -4
  174. package/build/navigator/navigator-button/hook.js.map +1 -1
  175. package/build/notice/list.js +10 -6
  176. package/build/notice/list.js.map +1 -1
  177. package/build/palette-edit/index.js +7 -2
  178. package/build/palette-edit/index.js.map +1 -1
  179. package/build/palette-edit/styles.js +10 -10
  180. package/build/palette-edit/styles.js.map +1 -1
  181. package/build/popover/index.js +93 -110
  182. package/build/popover/index.js.map +1 -1
  183. package/build/popover/utils.js +178 -0
  184. package/build/popover/utils.js.map +1 -0
  185. package/build/range-control/index.js +3 -0
  186. package/build/range-control/index.js.map +1 -1
  187. package/build/range-control/styles/range-control-styles.js +43 -37
  188. package/build/range-control/styles/range-control-styles.js.map +1 -1
  189. package/build/select-control/chevron-down.js +30 -0
  190. package/build/select-control/chevron-down.js.map +1 -0
  191. package/build/select-control/index.js +7 -7
  192. package/build/select-control/index.js.map +1 -1
  193. package/build/select-control/styles/select-control-styles.js +30 -15
  194. package/build/select-control/styles/select-control-styles.js.map +1 -1
  195. package/build/snackbar/list.js +5 -3
  196. package/build/snackbar/list.js.map +1 -1
  197. package/build/spinner/index.js +2 -0
  198. package/build/spinner/index.js.map +1 -1
  199. package/build/text/styles.js +7 -7
  200. package/build/text/styles.js.map +1 -1
  201. package/build/text-highlight/index.js +4 -4
  202. package/build/text-highlight/index.js.map +1 -1
  203. package/build/toggle-group-control/toggle-group-control/component.js +17 -9
  204. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  205. package/build/toggle-group-control/toggle-group-control/styles.js +24 -7
  206. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  207. package/build/toggle-group-control/toggle-group-control-option/component.js +15 -5
  208. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  209. package/build/toggle-group-control/toggle-group-control-option-base/component.js +5 -1
  210. package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  211. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +20 -7
  212. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  213. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +26 -7
  214. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  215. package/build/tools-panel/styles.js +11 -11
  216. package/build/tools-panel/styles.js.map +1 -1
  217. package/build/tooltip/index.js +1 -7
  218. package/build/tooltip/index.js.map +1 -1
  219. package/build/tree-grid/index.js +4 -10
  220. package/build/tree-grid/index.js.map +1 -1
  221. package/build/ui/context/context-connect.js +1 -3
  222. package/build/ui/context/context-connect.js.map +1 -1
  223. package/build/unit-control/index.js +2 -3
  224. package/build/unit-control/index.js.map +1 -1
  225. package/build/utils/colors-values.js +52 -142
  226. package/build/utils/colors-values.js.map +1 -1
  227. package/build/utils/config-values.js +1 -1
  228. package/build/utils/config-values.js.map +1 -1
  229. package/build/utils/input/input-control.js +1 -1
  230. package/build/utils/input/input-control.js.map +1 -1
  231. package/build/utils/rtl.js +6 -5
  232. package/build/utils/rtl.js.map +1 -1
  233. package/build/utils/strings.js +63 -0
  234. package/build/utils/strings.js.map +1 -0
  235. package/build-module/alignment-matrix-control/index.js +1 -1
  236. package/build-module/alignment-matrix-control/index.js.map +1 -1
  237. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +13 -13
  238. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  239. package/build-module/angle-picker-control/index.js +3 -0
  240. package/build-module/angle-picker-control/index.js.map +1 -1
  241. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +13 -4
  242. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  243. package/build-module/autocomplete/get-default-use-items.js +6 -1
  244. package/build-module/autocomplete/get-default-use-items.js.map +1 -1
  245. package/build-module/autocomplete/index.js +11 -11
  246. package/build-module/autocomplete/index.js.map +1 -1
  247. package/build-module/base-control/styles/base-control-styles.js +8 -8
  248. package/build-module/base-control/styles/base-control-styles.js.map +1 -1
  249. package/build-module/base-field/styles.js +5 -5
  250. package/build-module/base-field/styles.js.map +1 -1
  251. package/build-module/box-control/styles/box-control-visualizer-styles.js +8 -8
  252. package/build-module/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  253. package/build-module/card/card/component.js +5 -10
  254. package/build-module/card/card/component.js.map +1 -1
  255. package/build-module/card/card/hook.js +0 -9
  256. package/build-module/card/card/hook.js.map +1 -1
  257. package/build-module/card/card/index.js.map +1 -1
  258. package/build-module/card/card-body/component.js +7 -8
  259. package/build-module/card/card-body/component.js.map +1 -1
  260. package/build-module/card/card-body/hook.js +0 -4
  261. package/build-module/card/card-body/hook.js.map +1 -1
  262. package/build-module/card/card-body/index.js.map +1 -1
  263. package/build-module/card/card-divider/component.js +7 -8
  264. package/build-module/card/card-divider/component.js.map +1 -1
  265. package/build-module/card/card-divider/hook.js +0 -4
  266. package/build-module/card/card-divider/hook.js.map +1 -1
  267. package/build-module/card/card-divider/index.js.map +1 -1
  268. package/build-module/card/card-footer/component.js +7 -8
  269. package/build-module/card/card-footer/component.js.map +1 -1
  270. package/build-module/card/card-footer/hook.js +0 -4
  271. package/build-module/card/card-footer/hook.js.map +1 -1
  272. package/build-module/card/card-footer/index.js.map +1 -1
  273. package/build-module/card/card-header/component.js +7 -8
  274. package/build-module/card/card-header/component.js.map +1 -1
  275. package/build-module/card/card-header/hook.js +0 -4
  276. package/build-module/card/card-header/hook.js.map +1 -1
  277. package/build-module/card/card-header/index.js.map +1 -1
  278. package/build-module/card/card-media/component.js +7 -7
  279. package/build-module/card/card-media/component.js.map +1 -1
  280. package/build-module/card/card-media/hook.js +0 -4
  281. package/build-module/card/card-media/hook.js.map +1 -1
  282. package/build-module/card/card-media/index.js.map +1 -1
  283. package/build-module/card/context.js.map +1 -1
  284. package/build-module/card/index.js.map +1 -1
  285. package/build-module/card/styles.js +17 -17
  286. package/build-module/card/styles.js.map +1 -1
  287. package/build-module/clipboard-button/index.js +17 -1
  288. package/build-module/clipboard-button/index.js.map +1 -1
  289. package/build-module/color-list-picker/index.js +13 -5
  290. package/build-module/color-list-picker/index.js.map +1 -1
  291. package/build-module/color-palette/index.js +27 -13
  292. package/build-module/color-palette/index.js.map +1 -1
  293. package/build-module/color-palette/index.native.js +4 -4
  294. package/build-module/color-palette/index.native.js.map +1 -1
  295. package/build-module/combobox-control/index.js +6 -3
  296. package/build-module/combobox-control/index.js.map +1 -1
  297. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
  298. package/build-module/custom-gradient-picker/gradient-bar/constants.js.map +1 -0
  299. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +34 -41
  300. package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -0
  301. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -1
  302. package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -0
  303. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
  304. package/build-module/custom-gradient-picker/gradient-bar/utils.js.map +1 -0
  305. package/build-module/custom-gradient-picker/index.js +26 -3
  306. package/build-module/custom-gradient-picker/index.js.map +1 -1
  307. package/build-module/custom-select-control/index.js +20 -12
  308. package/build-module/custom-select-control/index.js.map +1 -1
  309. package/build-module/custom-select-control/styles.js +22 -0
  310. package/build-module/custom-select-control/styles.js.map +1 -0
  311. package/build-module/date-time/constants.js +2 -0
  312. package/build-module/date-time/constants.js.map +1 -0
  313. package/build-module/date-time/date/index.js +199 -186
  314. package/build-module/date-time/date/index.js.map +1 -1
  315. package/build-module/date-time/date/styles.js +61 -36
  316. package/build-module/date-time/date/styles.js.map +1 -1
  317. package/build-module/date-time/date-time/index.js +4 -3
  318. package/build-module/date-time/date-time/index.js.map +1 -1
  319. package/build-module/date-time/date-time/styles.js +20 -1
  320. package/build-module/date-time/date-time/styles.js.map +1 -1
  321. package/build-module/date-time/time/index.js +20 -16
  322. package/build-module/date-time/time/index.js.map +1 -1
  323. package/build-module/date-time/time/styles.js +12 -12
  324. package/build-module/date-time/time/styles.js.map +1 -1
  325. package/build-module/date-time/utils.js +19 -0
  326. package/build-module/date-time/utils.js.map +1 -0
  327. package/build-module/dimension-control/index.js +1 -5
  328. package/build-module/dimension-control/index.js.map +1 -1
  329. package/build-module/disabled/index.js +28 -11
  330. package/build-module/disabled/index.js.map +1 -1
  331. package/build-module/disabled/styles/disabled-styles.js +3 -3
  332. package/build-module/disabled/styles/disabled-styles.js.map +1 -1
  333. package/build-module/{swatch → disabled}/types.js +0 -0
  334. package/build-module/{swatch → disabled}/types.js.map +0 -0
  335. package/build-module/drop-zone/index.js +2 -3
  336. package/build-module/drop-zone/index.js.map +1 -1
  337. package/build-module/dropdown/index.js +5 -6
  338. package/build-module/dropdown/index.js.map +1 -1
  339. package/build-module/dropdown-menu/index.js +1 -2
  340. package/build-module/dropdown-menu/index.js.map +1 -1
  341. package/build-module/dropdown-menu/index.native.js +0 -16
  342. package/build-module/dropdown-menu/index.native.js.map +1 -1
  343. package/build-module/duotone-picker/custom-duotone-bar.js +1 -1
  344. package/build-module/duotone-picker/custom-duotone-bar.js.map +1 -1
  345. package/build-module/duotone-picker/duotone-picker.js +7 -1
  346. package/build-module/duotone-picker/duotone-picker.js.map +1 -1
  347. package/build-module/duotone-picker/duotone-swatch.js +11 -3
  348. package/build-module/duotone-picker/duotone-swatch.js.map +1 -1
  349. package/build-module/focal-point-picker/controls.js +4 -4
  350. package/build-module/focal-point-picker/controls.js.map +1 -1
  351. package/build-module/focal-point-picker/focal-point.js +4 -6
  352. package/build-module/focal-point-picker/focal-point.js.map +1 -1
  353. package/build-module/focal-point-picker/grid.js +6 -34
  354. package/build-module/focal-point-picker/grid.js.map +1 -1
  355. package/build-module/focal-point-picker/index.js +162 -330
  356. package/build-module/focal-point-picker/index.js.map +1 -1
  357. package/build-module/focal-point-picker/media.js +4 -36
  358. package/build-module/focal-point-picker/media.js.map +1 -1
  359. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +13 -14
  360. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  361. package/build-module/focal-point-picker/styles/focal-point-style.js +4 -4
  362. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  363. package/build-module/focal-point-picker/utils.js +2 -6
  364. package/build-module/focal-point-picker/utils.js.map +1 -1
  365. package/build-module/focusable-iframe/index.js +6 -0
  366. package/build-module/focusable-iframe/index.js.map +1 -1
  367. package/build-module/font-size-picker/index.js +39 -14
  368. package/build-module/font-size-picker/index.js.map +1 -1
  369. package/build-module/font-size-picker/utils.js +31 -23
  370. package/build-module/font-size-picker/utils.js.map +1 -1
  371. package/build-module/form-token-field/index.js +30 -20
  372. package/build-module/form-token-field/index.js.map +1 -1
  373. package/build-module/gradient-picker/index.js +23 -2
  374. package/build-module/gradient-picker/index.js.map +1 -1
  375. package/build-module/guide/index.js +13 -8
  376. package/build-module/guide/index.js.map +1 -1
  377. package/build-module/guide/page-control.js +3 -6
  378. package/build-module/guide/page-control.js.map +1 -1
  379. package/build-module/higher-order/with-constrained-tabbing/index.js +1 -1
  380. package/build-module/higher-order/with-constrained-tabbing/index.js.map +1 -1
  381. package/build-module/higher-order/with-spoken-messages/index.js +2 -0
  382. package/build-module/higher-order/with-spoken-messages/index.js.map +1 -1
  383. package/build-module/isolated-event-container/index.js +3 -0
  384. package/build-module/isolated-event-container/index.js.map +1 -1
  385. package/build-module/item-group/styles.js +10 -10
  386. package/build-module/item-group/styles.js.map +1 -1
  387. package/build-module/mobile/bottom-sheet/index.native.js +3 -5
  388. package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
  389. package/build-module/mobile/global-styles-context/utils.native.js +3 -2
  390. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  391. package/build-module/mobile/image/index.native.js +8 -28
  392. package/build-module/mobile/image/index.native.js.map +1 -1
  393. package/build-module/mobile/picker/index.android.js +3 -3
  394. package/build-module/mobile/picker/index.android.js.map +1 -1
  395. package/build-module/modal/index.js +1 -2
  396. package/build-module/modal/index.js.map +1 -1
  397. package/build-module/navigable-container/container.js +9 -7
  398. package/build-module/navigable-container/container.js.map +1 -1
  399. package/build-module/navigable-container/menu.js +3 -8
  400. package/build-module/navigable-container/menu.js.map +1 -1
  401. package/build-module/navigation/menu/menu-title-search.js +1 -2
  402. package/build-module/navigation/menu/menu-title-search.js.map +1 -1
  403. package/build-module/navigator/navigator-back-button/hook.js +0 -4
  404. package/build-module/navigator/navigator-back-button/hook.js.map +1 -1
  405. package/build-module/navigator/navigator-button/hook.js +0 -4
  406. package/build-module/navigator/navigator-button/hook.js.map +1 -1
  407. package/build-module/notice/list.js +10 -5
  408. package/build-module/notice/list.js.map +1 -1
  409. package/build-module/palette-edit/index.js +7 -2
  410. package/build-module/palette-edit/index.js.map +1 -1
  411. package/build-module/palette-edit/styles.js +10 -10
  412. package/build-module/palette-edit/styles.js.map +1 -1
  413. package/build-module/popover/index.js +93 -111
  414. package/build-module/popover/index.js.map +1 -1
  415. package/build-module/popover/utils.js +164 -0
  416. package/build-module/popover/utils.js.map +1 -0
  417. package/build-module/range-control/index.js +3 -0
  418. package/build-module/range-control/index.js.map +1 -1
  419. package/build-module/range-control/styles/range-control-styles.js +43 -37
  420. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  421. package/build-module/select-control/chevron-down.js +21 -0
  422. package/build-module/select-control/chevron-down.js.map +1 -0
  423. package/build-module/select-control/index.js +7 -7
  424. package/build-module/select-control/index.js.map +1 -1
  425. package/build-module/select-control/styles/select-control-styles.js +24 -13
  426. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  427. package/build-module/snackbar/list.js +5 -2
  428. package/build-module/snackbar/list.js.map +1 -1
  429. package/build-module/spinner/index.js +2 -0
  430. package/build-module/spinner/index.js.map +1 -1
  431. package/build-module/text/styles.js +7 -7
  432. package/build-module/text/styles.js.map +1 -1
  433. package/build-module/text-highlight/index.js +2 -5
  434. package/build-module/text-highlight/index.js.map +1 -1
  435. package/build-module/toggle-group-control/toggle-group-control/component.js +16 -8
  436. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  437. package/build-module/toggle-group-control/toggle-group-control/styles.js +20 -5
  438. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  439. package/build-module/toggle-group-control/toggle-group-control-option/component.js +17 -3
  440. package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  441. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +5 -1
  442. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  443. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +16 -6
  444. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  445. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +27 -5
  446. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  447. package/build-module/tools-panel/styles.js +11 -11
  448. package/build-module/tools-panel/styles.js.map +1 -1
  449. package/build-module/tooltip/index.js +1 -6
  450. package/build-module/tooltip/index.js.map +1 -1
  451. package/build-module/tree-grid/index.js +4 -9
  452. package/build-module/tree-grid/index.js.map +1 -1
  453. package/build-module/ui/context/context-connect.js +1 -2
  454. package/build-module/ui/context/context-connect.js.map +1 -1
  455. package/build-module/unit-control/index.js +2 -2
  456. package/build-module/unit-control/index.js.map +1 -1
  457. package/build-module/utils/colors-values.js +52 -141
  458. package/build-module/utils/colors-values.js.map +1 -1
  459. package/build-module/utils/config-values.js +1 -1
  460. package/build-module/utils/config-values.js.map +1 -1
  461. package/build-module/utils/input/input-control.js +1 -1
  462. package/build-module/utils/input/input-control.js.map +1 -1
  463. package/build-module/utils/rtl.js +6 -4
  464. package/build-module/utils/rtl.js.map +1 -1
  465. package/build-module/utils/strings.js +48 -0
  466. package/build-module/utils/strings.js.map +1 -0
  467. package/build-style/style-rtl.css +202 -1272
  468. package/build-style/style.css +202 -1275
  469. package/build-types/animation/index.d.ts +2 -0
  470. package/build-types/{flyout → animation}/index.d.ts.map +1 -1
  471. package/build-types/card/card/component.d.ts +3 -3
  472. package/build-types/card/card/component.d.ts.map +1 -1
  473. package/build-types/card/card/hook.d.ts +7 -2
  474. package/build-types/card/card/hook.d.ts.map +1 -1
  475. package/build-types/card/card/index.d.ts +2 -2
  476. package/build-types/card/card/index.d.ts.map +1 -1
  477. package/build-types/card/card-body/component.d.ts +3 -3
  478. package/build-types/card/card-body/component.d.ts.map +1 -1
  479. package/build-types/card/card-body/hook.d.ts +5 -2
  480. package/build-types/card/card-body/hook.d.ts.map +1 -1
  481. package/build-types/card/card-body/index.d.ts +2 -2
  482. package/build-types/card/card-body/index.d.ts.map +1 -1
  483. package/build-types/card/card-divider/component.d.ts +3 -3
  484. package/build-types/card/card-divider/component.d.ts.map +1 -1
  485. package/build-types/card/card-divider/hook.d.ts +5 -2
  486. package/build-types/card/card-divider/hook.d.ts.map +1 -1
  487. package/build-types/card/card-divider/index.d.ts +2 -2
  488. package/build-types/card/card-divider/index.d.ts.map +1 -1
  489. package/build-types/card/card-footer/component.d.ts +3 -3
  490. package/build-types/card/card-footer/component.d.ts.map +1 -1
  491. package/build-types/card/card-footer/hook.d.ts +5 -2
  492. package/build-types/card/card-footer/hook.d.ts.map +1 -1
  493. package/build-types/card/card-footer/index.d.ts +2 -2
  494. package/build-types/card/card-footer/index.d.ts.map +1 -1
  495. package/build-types/card/card-header/component.d.ts +3 -3
  496. package/build-types/card/card-header/component.d.ts.map +1 -1
  497. package/build-types/card/card-header/hook.d.ts +5 -2
  498. package/build-types/card/card-header/hook.d.ts.map +1 -1
  499. package/build-types/card/card-header/index.d.ts +2 -2
  500. package/build-types/card/card-header/index.d.ts.map +1 -1
  501. package/build-types/card/card-media/component.d.ts +3 -4
  502. package/build-types/card/card-media/component.d.ts.map +1 -1
  503. package/build-types/card/card-media/hook.d.ts +6 -5
  504. package/build-types/card/card-media/hook.d.ts.map +1 -1
  505. package/build-types/card/card-media/index.d.ts +2 -2
  506. package/build-types/card/card-media/index.d.ts.map +1 -1
  507. package/build-types/card/context.d.ts +3 -2
  508. package/build-types/card/context.d.ts.map +1 -1
  509. package/build-types/card/index.d.ts +6 -6
  510. package/build-types/card/index.d.ts.map +1 -1
  511. package/build-types/card/stories/index.d.ts +12 -0
  512. package/build-types/card/stories/index.d.ts.map +1 -0
  513. package/build-types/card/styles.d.ts +20 -22
  514. package/build-types/card/styles.d.ts.map +1 -1
  515. package/build-types/card/test/index.d.ts +2 -0
  516. package/build-types/{flyout/flyout → card/test}/index.d.ts.map +1 -1
  517. package/build-types/card/types.d.ts +7 -1
  518. package/build-types/card/types.d.ts.map +1 -1
  519. package/build-types/clipboard-button/index.d.ts +16 -0
  520. package/build-types/clipboard-button/index.d.ts.map +1 -0
  521. package/build-types/color-palette/index.d.ts +2 -1
  522. package/build-types/color-palette/index.d.ts.map +1 -1
  523. package/build-types/color-picker/styles.d.ts +2 -2
  524. package/build-types/composite/index.d.ts +2 -0
  525. package/build-types/composite/index.d.ts.map +1 -0
  526. package/build-types/date-time/constants.d.ts +2 -0
  527. package/build-types/date-time/constants.d.ts.map +1 -0
  528. package/build-types/date-time/date/index.d.ts +4 -2
  529. package/build-types/date-time/date/index.d.ts.map +1 -1
  530. package/build-types/date-time/date/styles.d.ts +26 -8
  531. package/build-types/date-time/date/styles.d.ts.map +1 -1
  532. package/build-types/date-time/date/test/index.d.ts +1 -1
  533. package/build-types/date-time/date/test/index.d.ts.map +1 -1
  534. package/build-types/date-time/date-time/styles.d.ts +13 -0
  535. package/build-types/date-time/date-time/styles.d.ts.map +1 -1
  536. package/build-types/date-time/time/index.d.ts.map +1 -1
  537. package/build-types/date-time/time/styles.d.ts.map +1 -1
  538. package/build-types/date-time/utils.d.ts +8 -0
  539. package/build-types/date-time/utils.d.ts.map +1 -0
  540. package/build-types/disabled/index.d.ts +35 -28
  541. package/build-types/disabled/index.d.ts.map +1 -1
  542. package/build-types/disabled/stories/index.d.ts +13 -0
  543. package/build-types/disabled/stories/index.d.ts.map +1 -0
  544. package/build-types/disabled/styles/disabled-styles.d.ts +2 -1
  545. package/build-types/disabled/styles/disabled-styles.d.ts.map +1 -1
  546. package/build-types/disabled/test/index.d.ts +2 -0
  547. package/build-types/disabled/test/index.d.ts.map +1 -0
  548. package/build-types/disabled/types.d.ts +14 -0
  549. package/build-types/disabled/types.d.ts.map +1 -0
  550. package/build-types/disclosure/index.d.ts +2 -0
  551. package/build-types/disclosure/index.d.ts.map +1 -0
  552. package/build-types/dropdown/index.d.ts.map +1 -1
  553. package/build-types/dropdown-menu/index.d.ts.map +1 -1
  554. package/build-types/focusable-iframe/index.d.ts +8 -0
  555. package/build-types/focusable-iframe/index.d.ts.map +1 -0
  556. package/build-types/form-token-field/index.d.ts.map +1 -1
  557. package/build-types/form-token-field/stories/index.d.ts +1 -0
  558. package/build-types/form-token-field/stories/index.d.ts.map +1 -1
  559. package/build-types/form-token-field/test/index.d.ts +2 -0
  560. package/build-types/form-token-field/test/index.d.ts.map +1 -0
  561. package/build-types/form-token-field/types.d.ts +7 -0
  562. package/build-types/form-token-field/types.d.ts.map +1 -1
  563. package/build-types/higher-order/with-constrained-tabbing/index.d.ts +3 -0
  564. package/build-types/higher-order/with-constrained-tabbing/index.d.ts.map +1 -0
  565. package/build-types/higher-order/with-spoken-messages/index.d.ts +4 -0
  566. package/build-types/higher-order/with-spoken-messages/index.d.ts.map +1 -0
  567. package/build-types/isolated-event-container/index.d.ts +3 -0
  568. package/build-types/isolated-event-container/index.d.ts.map +1 -0
  569. package/build-types/mobile/inserter-button/sparkles.d.ts +3 -0
  570. package/build-types/mobile/inserter-button/sparkles.d.ts.map +1 -0
  571. package/build-types/navigable-container/menu.d.ts.map +1 -1
  572. package/build-types/navigator/navigator-back-button/hook.d.ts +0 -3
  573. package/build-types/navigator/navigator-back-button/hook.d.ts.map +1 -1
  574. package/build-types/navigator/navigator-button/hook.d.ts +0 -3
  575. package/build-types/navigator/navigator-button/hook.d.ts.map +1 -1
  576. package/build-types/placeholder/test/index.d.ts +2 -0
  577. package/build-types/placeholder/test/index.d.ts.map +1 -0
  578. package/build-types/popover/index.d.ts +1 -2
  579. package/build-types/popover/index.d.ts.map +1 -1
  580. package/build-types/popover/utils.d.ts +26 -69
  581. package/build-types/popover/utils.d.ts.map +1 -1
  582. package/build-types/radio-context/index.d.ts +6 -0
  583. package/build-types/radio-context/index.d.ts.map +1 -0
  584. package/build-types/range-control/index.d.ts +2 -2
  585. package/build-types/range-control/index.d.ts.map +1 -1
  586. package/build-types/range-control/styles/range-control-styles.d.ts +5 -2
  587. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  588. package/build-types/range-control/types.d.ts +2 -2
  589. package/build-types/range-control/types.d.ts.map +1 -1
  590. package/build-types/select-control/chevron-down.d.ts +4 -0
  591. package/build-types/select-control/chevron-down.d.ts.map +1 -0
  592. package/build-types/select-control/index.d.ts.map +1 -1
  593. package/build-types/select-control/styles/select-control-styles.d.ts +8 -0
  594. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  595. package/build-types/spinner/index.d.ts.map +1 -1
  596. package/build-types/text-highlight/index.d.ts +0 -3
  597. package/build-types/text-highlight/index.d.ts.map +1 -1
  598. package/build-types/toggle-group-control/stories/index.d.ts +25 -0
  599. package/build-types/toggle-group-control/stories/index.d.ts.map +1 -0
  600. package/build-types/toggle-group-control/test/index.d.ts +2 -0
  601. package/build-types/toggle-group-control/test/index.d.ts.map +1 -0
  602. package/build-types/toggle-group-control/toggle-group-control/component.d.ts +6 -3
  603. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  604. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +5 -0
  605. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  606. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +6 -7
  607. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  608. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  609. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +4 -0
  610. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  611. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +11 -9
  612. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts.map +1 -1
  613. package/build-types/toggle-group-control/types.d.ts +23 -10
  614. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  615. package/build-types/tooltip/index.d.ts.map +1 -1
  616. package/build-types/ui/context/context-connect.d.ts +3 -0
  617. package/build-types/ui/context/context-connect.d.ts.map +1 -1
  618. package/build-types/ui/form-group/use-form-group.d.ts +2 -2
  619. package/build-types/unit-control/index.d.ts +2 -1
  620. package/build-types/unit-control/index.d.ts.map +1 -1
  621. package/build-types/unit-control/types.d.ts +5 -1
  622. package/build-types/unit-control/types.d.ts.map +1 -1
  623. package/build-types/utils/colors-values.d.ts +18 -97
  624. package/build-types/utils/colors-values.d.ts.map +1 -1
  625. package/build-types/utils/rtl.d.ts.map +1 -1
  626. package/build-types/utils/strings.d.ts +10 -0
  627. package/build-types/utils/strings.d.ts.map +1 -0
  628. package/package.json +22 -21
  629. package/src/alignment-matrix-control/index.js +1 -1
  630. package/src/alignment-matrix-control/stories/index.js +49 -24
  631. package/src/alignment-matrix-control/styles/alignment-matrix-control-styles.js +2 -3
  632. package/src/angle-picker-control/index.js +7 -1
  633. package/src/angle-picker-control/stories/index.js +8 -5
  634. package/src/angle-picker-control/styles/angle-picker-control-styles.js +12 -3
  635. package/src/autocomplete/get-default-use-items.js +6 -1
  636. package/src/autocomplete/index.js +11 -19
  637. package/src/base-control/styles/base-control-styles.ts +1 -1
  638. package/src/base-field/styles.js +1 -1
  639. package/src/base-field/test/__snapshots__/index.js.snap +2 -2
  640. package/src/box-control/styles/box-control-visualizer-styles.js +0 -1
  641. package/src/box-control/test/index.js +8 -8
  642. package/src/button/test/index.js +188 -146
  643. package/src/card/card/{component.js → component.tsx} +13 -9
  644. package/src/card/card/{hook.js → hook.ts} +11 -11
  645. package/src/card/card/{index.js → index.ts} +0 -0
  646. package/src/card/card-body/{component.js → component.tsx} +13 -9
  647. package/src/card/card-body/{hook.js → hook.ts} +5 -5
  648. package/src/card/card-body/{index.js → index.ts} +0 -0
  649. package/src/card/card-divider/{component.js → component.tsx} +16 -10
  650. package/src/card/card-divider/{hook.js → hook.ts} +5 -5
  651. package/src/card/card-divider/{index.js → index.ts} +0 -0
  652. package/src/card/card-footer/{component.js → component.tsx} +13 -9
  653. package/src/card/card-footer/{hook.js → hook.ts} +5 -5
  654. package/src/card/card-footer/{index.js → index.ts} +0 -0
  655. package/src/card/card-header/{component.js → component.tsx} +13 -9
  656. package/src/card/card-header/{hook.js → hook.ts} +5 -5
  657. package/src/card/card-header/{index.js → index.ts} +0 -0
  658. package/src/card/card-media/{component.js → component.tsx} +13 -8
  659. package/src/card/card-media/{hook.js → hook.ts} +5 -5
  660. package/src/card/card-media/{index.js → index.ts} +0 -0
  661. package/src/card/{context.js → context.ts} +0 -0
  662. package/src/card/{index.js → index.ts} +0 -0
  663. package/src/card/stories/index.tsx +75 -0
  664. package/src/card/{styles.js → styles.ts} +0 -0
  665. package/src/card/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  666. package/src/card/test/{index.js → index.tsx} +3 -3
  667. package/src/card/types.ts +8 -1
  668. package/src/clipboard-button/index.js +13 -0
  669. package/src/color-list-picker/index.js +15 -3
  670. package/src/color-list-picker/style.scss +11 -0
  671. package/src/color-palette/index.js +40 -21
  672. package/src/color-palette/index.native.js +10 -6
  673. package/src/color-palette/stories/index.js +1 -1
  674. package/src/color-palette/style.scss +0 -14
  675. package/src/color-palette/test/__snapshots__/index.js.snap +28 -7
  676. package/src/combobox-control/index.js +6 -5
  677. package/src/combobox-control/stories/index.js +9 -3
  678. package/src/combobox-control/style.scss +0 -1
  679. package/src/confirm-dialog/test/index.js +85 -62
  680. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
  681. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +54 -50
  682. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -3
  683. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/test/utils.js +0 -0
  684. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
  685. package/src/custom-gradient-picker/index.js +30 -3
  686. package/src/custom-gradient-picker/stories/index.js +6 -2
  687. package/src/custom-gradient-picker/style.scss +30 -27
  688. package/src/custom-select-control/README.md +10 -0
  689. package/src/custom-select-control/index.js +22 -16
  690. package/src/custom-select-control/stories/index.js +1 -1
  691. package/src/custom-select-control/style.scss +0 -12
  692. package/src/custom-select-control/styles.ts +28 -0
  693. package/src/custom-select-control/test/index.js +4 -1
  694. package/src/date-time/constants.ts +1 -0
  695. package/src/date-time/date/index.tsx +310 -185
  696. package/src/date-time/date/styles.ts +92 -27
  697. package/src/date-time/date/test/index.tsx +24 -30
  698. package/src/date-time/date-time/index.tsx +3 -3
  699. package/src/date-time/date-time/styles.ts +9 -0
  700. package/src/date-time/time/index.tsx +23 -19
  701. package/src/date-time/time/styles.ts +1 -0
  702. package/src/date-time/utils.ts +17 -0
  703. package/src/dimension-control/index.js +1 -5
  704. package/src/disabled/index.tsx +80 -0
  705. package/src/disabled/stories/index.tsx +87 -0
  706. package/src/disabled/styles/{disabled-styles.js → disabled-styles.tsx} +0 -0
  707. package/src/disabled/test/index.tsx +174 -0
  708. package/src/disabled/types.ts +13 -0
  709. package/src/drop-zone/index.js +2 -3
  710. package/src/dropdown/index.js +3 -5
  711. package/src/dropdown-menu/index.js +1 -2
  712. package/src/dropdown-menu/index.native.js +0 -13
  713. package/src/dropdown-menu/stories/index.js +13 -2
  714. package/src/dropdown-menu/test/index.js +54 -58
  715. package/src/duotone-picker/custom-duotone-bar.js +1 -1
  716. package/src/duotone-picker/duotone-picker.js +34 -26
  717. package/src/duotone-picker/duotone-swatch.js +12 -5
  718. package/src/duotone-picker/stories/duotone-picker.js +66 -0
  719. package/src/duotone-picker/stories/duotone-swatch.js +32 -0
  720. package/src/focal-point-picker/README.md +3 -6
  721. package/src/focal-point-picker/controls.js +4 -4
  722. package/src/focal-point-picker/focal-point.js +2 -8
  723. package/src/focal-point-picker/grid.js +5 -41
  724. package/src/focal-point-picker/index.js +171 -308
  725. package/src/focal-point-picker/media.js +4 -28
  726. package/src/focal-point-picker/styles/focal-point-picker-style.js +5 -8
  727. package/src/focal-point-picker/styles/focal-point-style.js +0 -1
  728. package/src/focal-point-picker/test/index.js +79 -46
  729. package/src/focal-point-picker/utils.js +2 -6
  730. package/src/focusable-iframe/index.js +5 -0
  731. package/src/font-size-picker/index.js +161 -144
  732. package/src/font-size-picker/stories/index.js +1 -0
  733. package/src/font-size-picker/style.scss +8 -5
  734. package/src/font-size-picker/test/index.js +13 -6
  735. package/src/font-size-picker/test/{util.js → utils.js} +77 -1
  736. package/src/font-size-picker/utils.js +38 -23
  737. package/src/form-token-field/README.md +1 -0
  738. package/src/form-token-field/index.tsx +41 -33
  739. package/src/form-token-field/stories/index.tsx +8 -0
  740. package/src/form-token-field/test/index.tsx +2106 -0
  741. package/src/form-token-field/types.ts +7 -0
  742. package/src/gradient-picker/README.md +9 -0
  743. package/src/gradient-picker/index.js +31 -7
  744. package/src/gradient-picker/stories/index.js +57 -81
  745. package/src/guide/index.js +9 -4
  746. package/src/guide/page-control.js +1 -6
  747. package/src/guide/stories/index.js +12 -11
  748. package/src/guide/test/index.js +191 -37
  749. package/src/higher-order/with-constrained-tabbing/index.js +1 -1
  750. package/src/higher-order/with-notices/test/index.js +4 -2
  751. package/src/higher-order/with-spoken-messages/index.js +2 -0
  752. package/src/higher-order/with-spoken-messages/test/index.js +1 -1
  753. package/src/isolated-event-container/index.js +3 -0
  754. package/src/item-group/styles.ts +3 -3
  755. package/src/menu-group/test/index.js +18 -7
  756. package/src/mobile/bottom-sheet/index.native.js +2 -4
  757. package/src/mobile/global-styles-context/utils.native.js +8 -2
  758. package/src/mobile/image/index.native.js +9 -30
  759. package/src/mobile/picker/index.android.js +10 -4
  760. package/src/mobile/picker/styles.native.scss +4 -4
  761. package/src/modal/index.js +1 -2
  762. package/src/modal/test/index.js +11 -9
  763. package/src/navigable-container/container.js +12 -18
  764. package/src/navigable-container/menu.js +3 -7
  765. package/src/navigable-container/test/menu.js +14 -11
  766. package/src/navigation/menu/menu-title-search.js +1 -2
  767. package/src/navigator/navigator-back-button/hook.ts +0 -3
  768. package/src/navigator/navigator-button/hook.ts +0 -3
  769. package/src/notice/list.js +12 -10
  770. package/src/palette-edit/index.js +15 -10
  771. package/src/palette-edit/style.scss +3 -11
  772. package/src/palette-edit/styles.js +6 -5
  773. package/src/placeholder/README.md +1 -1
  774. package/src/placeholder/style.scss +62 -20
  775. package/src/placeholder/test/index.tsx +174 -0
  776. package/src/popover/index.js +129 -126
  777. package/src/popover/stories/index.js +17 -4
  778. package/src/popover/test/__snapshots__/index.js.snap +6 -6
  779. package/src/popover/test/index.js +129 -36
  780. package/src/popover/utils.js +107 -0
  781. package/src/range-control/index.tsx +3 -0
  782. package/src/range-control/styles/range-control-styles.ts +9 -4
  783. package/src/range-control/types.ts +5 -2
  784. package/src/select-control/chevron-down.tsx +25 -0
  785. package/src/select-control/index.tsx +6 -9
  786. package/src/select-control/styles/select-control-styles.ts +23 -14
  787. package/src/slot-fill/test/slot.js +5 -5
  788. package/src/snackbar/list.js +3 -2
  789. package/src/spinner/index.tsx +2 -0
  790. package/src/style.scss +0 -2
  791. package/src/text/styles.js +1 -1
  792. package/src/text/test/index.tsx +1 -1
  793. package/src/text-highlight/index.tsx +1 -5
  794. package/src/toggle-group-control/stories/index.tsx +127 -0
  795. package/src/toggle-group-control/test/__snapshots__/{index.js.snap → index.tsx.snap} +81 -57
  796. package/src/toggle-group-control/test/{index.js → index.tsx} +2 -4
  797. package/src/toggle-group-control/toggle-group-control/README.md +2 -0
  798. package/src/toggle-group-control/toggle-group-control/component.tsx +21 -11
  799. package/src/toggle-group-control/toggle-group-control/styles.ts +14 -6
  800. package/src/toggle-group-control/toggle-group-control-option/component.tsx +19 -3
  801. package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +3 -0
  802. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +18 -0
  803. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +6 -8
  804. package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +30 -7
  805. package/src/toggle-group-control/types.ts +74 -59
  806. package/src/toolbar/test/index.js +4 -4
  807. package/src/toolbar-group/test/index.js +9 -15
  808. package/src/tools-panel/styles.ts +2 -2
  809. package/src/tools-panel/test/index.js +3 -2
  810. package/src/tooltip/index.js +1 -5
  811. package/src/tooltip/test/index.js +188 -172
  812. package/src/tree-grid/index.js +4 -9
  813. package/src/ui/context/context-connect.ts +3 -2
  814. package/src/unit-control/index.tsx +2 -2
  815. package/src/unit-control/types.ts +10 -1
  816. package/src/utils/colors-values.js +42 -137
  817. package/src/utils/config-values.js +1 -1
  818. package/src/utils/input/input-control.js +6 -6
  819. package/src/utils/rtl.js +6 -2
  820. package/src/utils/strings.ts +83 -0
  821. package/src/utils/test/strings.js +15 -0
  822. package/tsconfig.json +45 -77
  823. package/tsconfig.tsbuildinfo +1 -1
  824. package/build/custom-gradient-bar/constants.js.map +0 -1
  825. package/build/custom-gradient-bar/control-points.js.map +0 -1
  826. package/build/custom-gradient-bar/index.js.map +0 -1
  827. package/build/custom-gradient-bar/utils.js.map +0 -1
  828. package/build/date-time/date/utils.js +0 -34
  829. package/build/date-time/date/utils.js.map +0 -1
  830. package/build/swatch/index.js +0 -41
  831. package/build/swatch/index.js.map +0 -1
  832. package/build/ui/__storybook-utils/example-grid.js +0 -88
  833. package/build/ui/__storybook-utils/example-grid.js.map +0 -1
  834. package/build/ui/__storybook-utils/index.js +0 -19
  835. package/build/ui/__storybook-utils/index.js.map +0 -1
  836. package/build/ui/__storybook-utils/page.js +0 -43
  837. package/build/ui/__storybook-utils/page.js.map +0 -1
  838. package/build/utils/keyboard.js +0 -41
  839. package/build/utils/keyboard.js.map +0 -1
  840. package/build-module/custom-gradient-bar/constants.js.map +0 -1
  841. package/build-module/custom-gradient-bar/control-points.js.map +0 -1
  842. package/build-module/custom-gradient-bar/index.js.map +0 -1
  843. package/build-module/custom-gradient-bar/utils.js.map +0 -1
  844. package/build-module/date-time/date/utils.js +0 -22
  845. package/build-module/date-time/date/utils.js.map +0 -1
  846. package/build-module/swatch/index.js +0 -30
  847. package/build-module/swatch/index.js.map +0 -1
  848. package/build-module/ui/__storybook-utils/example-grid.js +0 -69
  849. package/build-module/ui/__storybook-utils/example-grid.js.map +0 -1
  850. package/build-module/ui/__storybook-utils/index.js +0 -2
  851. package/build-module/ui/__storybook-utils/index.js.map +0 -1
  852. package/build-module/ui/__storybook-utils/page.js +0 -32
  853. package/build-module/ui/__storybook-utils/page.js.map +0 -1
  854. package/build-module/utils/keyboard.js +0 -33
  855. package/build-module/utils/keyboard.js.map +0 -1
  856. package/build-types/color-picker/color-display.d.ts +0 -13
  857. package/build-types/color-picker/color-display.d.ts.map +0 -1
  858. package/build-types/date-time/date/test/utils.d.ts +0 -2
  859. package/build-types/date-time/date/test/utils.d.ts.map +0 -1
  860. package/build-types/date-time/date/utils.d.ts +0 -15
  861. package/build-types/date-time/date/utils.d.ts.map +0 -1
  862. package/build-types/flyout/context.d.ts +0 -6
  863. package/build-types/flyout/context.d.ts.map +0 -1
  864. package/build-types/flyout/flyout/component.d.ts +0 -21
  865. package/build-types/flyout/flyout/component.d.ts.map +0 -1
  866. package/build-types/flyout/flyout/hook.d.ts +0 -270
  867. package/build-types/flyout/flyout/hook.d.ts.map +0 -1
  868. package/build-types/flyout/flyout/index.d.ts +0 -3
  869. package/build-types/flyout/flyout-content/component.d.ts +0 -3
  870. package/build-types/flyout/flyout-content/component.d.ts.map +0 -1
  871. package/build-types/flyout/flyout-content/index.d.ts +0 -2
  872. package/build-types/flyout/flyout-content/index.d.ts.map +0 -1
  873. package/build-types/flyout/index.d.ts +0 -2
  874. package/build-types/flyout/styles.d.ts +0 -22
  875. package/build-types/flyout/styles.d.ts.map +0 -1
  876. package/build-types/flyout/types.d.ts +0 -80
  877. package/build-types/flyout/types.d.ts.map +0 -1
  878. package/build-types/flyout/utils.d.ts +0 -8
  879. package/build-types/flyout/utils.d.ts.map +0 -1
  880. package/build-types/form-token-field/test/lib/fixtures.d.ts +0 -26
  881. package/build-types/form-token-field/test/lib/fixtures.d.ts.map +0 -1
  882. package/build-types/form-token-field/test/lib/token-field-wrapper.d.ts +0 -21
  883. package/build-types/form-token-field/test/lib/token-field-wrapper.d.ts.map +0 -1
  884. package/build-types/swatch/index.d.ts +0 -5
  885. package/build-types/swatch/index.d.ts.map +0 -1
  886. package/build-types/swatch/types.d.ts +0 -11
  887. package/build-types/swatch/types.d.ts.map +0 -1
  888. package/build-types/utils/hooks/use-combined-ref.d.ts +0 -8
  889. package/build-types/utils/hooks/use-combined-ref.d.ts.map +0 -1
  890. package/build-types/utils/keyboard.d.ts +0 -12
  891. package/build-types/utils/keyboard.d.ts.map +0 -1
  892. package/src/card/stories/index.js +0 -209
  893. package/src/date-time/date/datepicker.scss +0 -863
  894. package/src/date-time/date/style.scss +0 -85
  895. package/src/date-time/date/test/utils.ts +0 -32
  896. package/src/date-time/date/utils.ts +0 -20
  897. package/src/date-time/style.scss +0 -1
  898. package/src/disabled/index.js +0 -55
  899. package/src/disabled/stories/index.js +0 -61
  900. package/src/disabled/test/index.js +0 -240
  901. package/src/form-token-field/test/index.js +0 -411
  902. package/src/form-token-field/test/lib/fixtures.js +0 -89
  903. package/src/form-token-field/test/lib/token-field-wrapper.tsx +0 -71
  904. package/src/guide/test/page-control.js +0 -43
  905. package/src/menu-group/test/__snapshots__/index.js.snap +0 -23
  906. package/src/placeholder/test/index.js +0 -163
  907. package/src/swatch/index.tsx +0 -22
  908. package/src/swatch/style.scss +0 -21
  909. package/src/swatch/types.ts +0 -11
  910. package/src/toggle-group-control/stories/index.js +0 -203
  911. package/src/tools-panel/test/__snapshots__/index.js.snap +0 -210
  912. package/src/ui/__storybook-utils/example-grid.js +0 -61
  913. package/src/ui/__storybook-utils/index.js +0 -1
  914. package/src/ui/__storybook-utils/page.js +0 -29
  915. package/src/utils/keyboard.js +0 -28
  916. package/src/utils/test/keyboard.js +0 -34
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/popover/index.js"],"names":["classnames","useFloating","flip","shift","autoUpdate","arrow","offset","offsetMiddleware","limitShift","size","useRef","useLayoutEffect","forwardRef","createContext","useContext","useMemo","useViewportMatch","useMergeRefs","__experimentalUseDialog","useDialog","close","deprecated","Path","SVG","Button","ScrollLock","Slot","Fill","useSlot","getAnimateClassName","SLOT_NAME","ArrowTriangle","props","slotNameContext","positionToPlacement","position","x","y","z","split","includes","suffix","placementToAnimationOrigin","placement","a","b","Popover","forwardedRef","range","animate","headerTitle","onClose","children","className","noArrow","isAlternate","placementProp","focusOnMount","anchorRef","anchorRect","getAnchorRect","expandOnMobile","onFocusOutside","__unstableSlotName","__unstableObserveElement","__unstableForcePosition","__unstableShift","contentProps","since","version","arrowRef","anchorRefFallback","isMobileViewport","isExpanded","hasArrow","normalizedPlacementFromProps","ownerDocument","documentToReturn","top","startContainer","current","document","frameOffset","defaultView","frameElement","undefined","iframeRect","getBoundingClientRect","left","middleware","currentPlacement","isTopBottomPlacement","mainAxis","crossAxis","hasBeforePlacement","mainAxisModifier","normalizedOffset","apply","sizeProps","height","refs","floating","Object","assign","firstChild","style","maxHeight","overflow","limiter","padding","element","filter","m","slotName","slot","onDialogClose","type","event","dialogRef","dialogProps","__unstableOnClose","reference","strategy","update","computedPlacement","middlewareData","arrowData","resultingReferenceRef","topRect","bottomRect","bottom","window","DOMRect","width","rect","right","parentNode","observer","MutationObserver","observe","attributes","disconnect","addEventListener","removeEventListener","animateClassName","origin","mergedFloatingRef","content","Number","isNaN","join","isFinite","ref","PopoverContainer","PopoverSlot","name","__unstableSlotNameProvider","Provider"],"mappings":";;AAAA;;AACA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,SACCC,WADD,EAECC,IAFD,EAGCC,KAHD,EAICC,UAJD,EAKCC,KALD,EAMCC,MAAM,IAAIC,gBANX,EAOCC,UAPD,EAQCC,IARD,QASO,wBATP;AAWA;AACA;AACA;;AACA,SACCC,MADD,EAECC,eAFD,EAGCC,UAHD,EAICC,aAJD,EAKCC,UALD,EAMCC,OAND,QAOO,oBAPP;AAQA,SACCC,gBADD,EAECC,YAFD,EAGCC,uBAAuB,IAAIC,SAH5B,QAIO,oBAJP;AAKA,SAASC,KAAT,QAAsB,kBAAtB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AACA,SAASC,IAAT,EAAeC,GAAf,QAA0B,uBAA1B;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,UAAP,MAAuB,gBAAvB;AACA,SAASC,IAAT,EAAeC,IAAf,EAAqBC,OAArB,QAAoC,cAApC;AACA,SAASC,mBAAT,QAAoC,YAApC;AAEA;AACA;AACA;AACA;AACA;;AACA,MAAMC,SAAS,GAAG,SAAlB,C,CAEA;AACA;AACA;AACA;;AACA,MAAMC,aAAa,GAAKC,KAAF,IACrB,cAAC,GAAD,eACMA,KADN;AAEC,EAAA,KAAK,EAAC,4BAFP;AAGC,EAAA,OAAO,EAAI,aAHZ;AAIC,EAAA,SAAS,EAAC,8BAJX;AAKC,EAAA,IAAI,EAAC;AALN,IAOC,cAAC,IAAD;AACC,EAAA,SAAS,EAAC,iCADX;AAEC,EAAA,CAAC,EAAC;AAFH,EAPD,EAWC,cAAC,IAAD;AACC,EAAA,SAAS,EAAC,qCADX;AAEC,EAAA,CAAC,EAAC,uBAFH;AAGC,EAAA,YAAY,EAAC;AAHd,EAXD,CADD;;AAoBA,MAAMC,eAAe,GAAGpB,aAAa,EAArC;;AAEA,MAAMqB,mBAAmB,GAAKC,QAAF,IAAgB;AAC3C,QAAM,CAAEC,CAAF,EAAKC,CAAL,EAAQC,CAAR,IAAcH,QAAQ,CAACI,KAAT,CAAgB,GAAhB,CAApB;;AAEA,MAAK,CAAE,KAAF,EAAS,QAAT,EAAoBC,QAApB,CAA8BJ,CAA9B,CAAL,EAAyC;AACxC,QAAIK,MAAM,GAAG,EAAb;;AACA,QAAO,CAAC,CAAEH,CAAH,IAAQA,CAAC,KAAK,MAAhB,IAA4BD,CAAC,KAAK,OAAvC,EAAiD;AAChDI,MAAAA,MAAM,GAAG,QAAT;AACA,KAFD,MAEO,IAAO,CAAC,CAAEH,CAAH,IAAQA,CAAC,KAAK,OAAhB,IAA6BD,CAAC,KAAK,MAAxC,EAAiD;AACvDI,MAAAA,MAAM,GAAG,MAAT;AACA;;AACD,WAAOL,CAAC,GAAGK,MAAX;AACA;;AAED,SAAOJ,CAAP;AACA,CAdD;;AAgBA,MAAMK,0BAA0B,GAAKC,SAAF,IAAiB;AACnD,QAAM,CAAEC,CAAF,EAAKC,CAAL,IAAWF,SAAS,CAACJ,KAAV,CAAiB,GAAjB,CAAjB;AAEA,MAAIH,CAAJ,EAAOC,CAAP;;AACA,MAAKO,CAAC,KAAK,KAAN,IAAeA,CAAC,KAAK,QAA1B,EAAqC;AACpCR,IAAAA,CAAC,GAAGQ,CAAC,KAAK,KAAN,GAAc,QAAd,GAAyB,KAA7B;AACAP,IAAAA,CAAC,GAAG,QAAJ;;AACA,QAAKQ,CAAC,KAAK,OAAX,EAAqB;AACpBR,MAAAA,CAAC,GAAG,MAAJ;AACA,KAFD,MAEO,IAAKQ,CAAC,KAAK,KAAX,EAAmB;AACzBR,MAAAA,CAAC,GAAG,OAAJ;AACA;AACD;;AAED,MAAKO,CAAC,KAAK,MAAN,IAAgBA,CAAC,KAAK,OAA3B,EAAqC;AACpCR,IAAAA,CAAC,GAAG,QAAJ;AACAC,IAAAA,CAAC,GAAGO,CAAC,KAAK,MAAN,GAAe,OAAf,GAAyB,MAA7B;;AACA,QAAKC,CAAC,KAAK,OAAX,EAAqB;AACpBT,MAAAA,CAAC,GAAG,KAAJ;AACA,KAFD,MAEO,IAAKS,CAAC,KAAK,KAAX,EAAmB;AACzBT,MAAAA,CAAC,GAAG,QAAJ;AACA;AACD;;AAED,SAAOA,CAAC,GAAG,GAAJ,GAAUC,CAAjB;AACA,CAzBD;;AA2BA,MAAMS,OAAO,GAAG,OAyBfC,YAzBe,KA0BX;AAAA,MAzBJ;AACCC,IAAAA,KADD;AAECC,IAAAA,OAAO,GAAG,IAFX;AAGCC,IAAAA,WAHD;AAICC,IAAAA,OAJD;AAKCC,IAAAA,QALD;AAMCC,IAAAA,SAND;AAOCC,IAAAA,OAAO,GAAG,IAPX;AAQCC,IAAAA,WARD;AASCpB,IAAAA,QATD;AAUCQ,IAAAA,SAAS,EAAEa,aAAa,GAAG,cAV5B;AAWClD,IAAAA,MAXD;AAYCmD,IAAAA,YAAY,GAAG,cAZhB;AAaCC,IAAAA,SAbD;AAcCC,IAAAA,UAdD;AAeCC,IAAAA,aAfD;AAgBCC,IAAAA,cAhBD;AAiBCC,IAAAA,cAjBD;AAkBCC,IAAAA,kBAAkB,GAAGjC,SAlBtB;AAmBCkC,IAAAA,wBAnBD;AAoBCC,IAAAA,uBAAuB,GAAG,KApB3B;AAqBCC,IAAAA,eAAe,GAAG,KArBnB;AAsBC,OAAGC;AAtBJ,GAyBI;;AACJ,MAAKnB,KAAL,EAAa;AACZ3B,IAAAA,UAAU,CAAE,iCAAF,EAAqC;AAC9C+C,MAAAA,KAAK,EAAE,KADuC;AAE9CC,MAAAA,OAAO,EAAE;AAFqC,KAArC,CAAV;AAIA;;AAED,QAAMC,QAAQ,GAAG5D,MAAM,CAAE,IAAF,CAAvB;AACA,QAAM6D,iBAAiB,GAAG7D,MAAM,CAAE,IAAF,CAAhC;AAEA,QAAM8D,gBAAgB,GAAGxD,gBAAgB,CAAE,QAAF,EAAY,GAAZ,CAAzC;AACA,QAAMyD,UAAU,GAAGZ,cAAc,IAAIW,gBAArC;AACA,QAAME,QAAQ,GAAG,CAAED,UAAF,IAAgB,CAAEnB,OAAnC;AACA,QAAMqB,4BAA4B,GAAGxC,QAAQ,GAC1CD,mBAAmB,CAAEC,QAAF,CADuB,GAE1CqB,aAFH;AAIA,QAAMoB,aAAa,GAAG7D,OAAO,CAAE,MAAM;AAAA;;AACpC,QAAI8D,gBAAJ;;AAEA,QAAKnB,SAAL,aAAKA,SAAL,eAAKA,SAAS,CAAEoB,GAAhB,EAAsB;AACrBD,MAAAA,gBAAgB,GAAGnB,SAAH,aAAGA,SAAH,uBAAGA,SAAS,CAAEoB,GAAX,CAAeF,aAAlC;AACA,KAFD,MAEO,IAAKlB,SAAL,aAAKA,SAAL,eAAKA,SAAS,CAAEqB,cAAhB,EAAiC;AACvCF,MAAAA,gBAAgB,GAAGnB,SAAS,CAACqB,cAAV,CAAyBH,aAA5C;AACA,KAFM,MAEA,IAAKlB,SAAL,aAAKA,SAAL,eAAKA,SAAS,CAAEsB,OAAhB,EAA0B;AAChCH,MAAAA,gBAAgB,GAAGnB,SAAS,CAACsB,OAAV,CAAkBJ,aAArC;AACA,KAFM,MAEA,IAAKlB,SAAL,EAAiB;AACvB;AACAmB,MAAAA,gBAAgB,GAAGnB,SAAS,CAACkB,aAA7B;AACA,KAHM,MAGA,IAAKjB,UAAU,IAAIA,UAAJ,aAAIA,UAAJ,eAAIA,UAAU,CAAEiB,aAA/B,EAA+C;AACrDC,MAAAA,gBAAgB,GAAGlB,UAAU,CAACiB,aAA9B;AACA,KAFM,MAEA,IAAKhB,aAAL,EAAqB;AAAA;;AAC3BiB,MAAAA,gBAAgB,qBAAGjB,aAAa,CAC/BW,iBAAiB,CAACS,OADa,CAAhB,mDAAG,eAEhBJ,aAFH;AAGA;;AAED,gCAAOC,gBAAP,iEAA2BI,QAA3B;AACA,GArB4B,EAqB1B,CAAEvB,SAAF,EAAaC,UAAb,EAAyBC,aAAzB,CArB0B,CAA7B;AAuBA;AACD;AACA;;AACC,QAAMsB,WAAW,GAAGnE,OAAO,CAAE,MAAM;AAClC,UAAM;AAAEoE,MAAAA;AAAF,QAAkBP,aAAxB;AACA,UAAM;AAAEQ,MAAAA;AAAF,QAAmBD,WAAzB;;AAEA,QAAK,CAAEC,YAAF,IAAkBR,aAAa,KAAKK,QAAzC,EAAoD;AACnD,aAAOI,SAAP;AACA;;AAED,UAAMC,UAAU,GAAGF,YAAY,CAACG,qBAAb,EAAnB;AACA,WAAO;AAAEnD,MAAAA,CAAC,EAAEkD,UAAU,CAACE,IAAhB;AAAsBnD,MAAAA,CAAC,EAAEiD,UAAU,CAACR;AAApC,KAAP;AACA,GAV0B,EAUxB,CAAEF,aAAF,CAVwB,CAA3B;AAYA,QAAMa,UAAU,GAAG,CAClBP,WAAW,IAAI5E,MAAf,GACGC,gBAAgB,CAAE,SAAuC;AAAA,QAArC;AAAEoC,MAAAA,SAAS,EAAE+C;AAAb,KAAqC;;AACzD,QAAK,CAAER,WAAP,EAAqB;AACpB,aAAO5E,MAAP;AACA;;AAED,UAAMqF,oBAAoB,GACzBD,gBAAgB,CAAClD,QAAjB,CAA2B,KAA3B,KACAkD,gBAAgB,CAAClD,QAAjB,CAA2B,QAA3B,CAFD,CALyD,CASzD;AACA;AACA;;AACA,UAAMoD,QAAQ,GAAGD,oBAAoB,GAAG,GAAH,GAAS,GAA9C;AACA,UAAME,SAAS,GAAGD,QAAQ,KAAK,GAAb,GAAmB,GAAnB,GAAyB,GAA3C,CAbyD,CAezD;AACA;;AACA,UAAME,kBAAkB,GACvBJ,gBAAgB,CAAClD,QAAjB,CAA2B,KAA3B,KACAkD,gBAAgB,CAAClD,QAAjB,CAA2B,MAA3B,CAFD;AAGA,UAAMuD,gBAAgB,GAAGD,kBAAkB,GAAG,CAAC,CAAJ,GAAQ,CAAnD;AACA,UAAME,gBAAgB,GAAG1F,MAAM,GAAGA,MAAH,GAAY,CAA3C;AAEA,WAAO;AACNsF,MAAAA,QAAQ,EACPI,gBAAgB,GAChBd,WAAW,CAAEU,QAAF,CAAX,GAA0BG,gBAHrB;AAINF,MAAAA,SAAS,EAAEX,WAAW,CAAEW,SAAF;AAJhB,KAAP;AAMC,GA7Be,CADnB,GA+BGR,SAhCe,EAiClBpB,uBAAuB,GAAGoB,SAAH,GAAenF,IAAI,EAjCxB,EAkClB+D,uBAAuB,GACpBoB,SADoB,GAEpB5E,IAAI,CAAE;AACNwF,IAAAA,KAAK,CAAEC,SAAF,EAAc;AAClB,YAAM;AAAEC,QAAAA;AAAF,UAAaD,SAAnB;AACA,UAAK,CAAEE,IAAI,CAACC,QAAL,CAAcrB,OAArB,EAA+B,OAFb,CAGlB;;AACAsB,MAAAA,MAAM,CAACC,MAAP,CAAeH,IAAI,CAACC,QAAL,CAAcrB,OAAd,CAAsBwB,UAAtB,CAAiCC,KAAhD,EAAuD;AACtDC,QAAAA,SAAS,EAAG,GAAGP,MAAQ,IAD+B;AAEtDQ,QAAAA,QAAQ,EAAE;AAF4C,OAAvD;AAIA;;AATK,GAAF,CApCW,EA+ClBzC,eAAe,GACZ/D,KAAK,CAAE;AACP0F,IAAAA,SAAS,EAAE,IADJ;AAEPe,IAAAA,OAAO,EAAEpG,UAAU,EAFZ;AAGPqG,IAAAA,OAAO,EAAE,CAHF,CAGK;;AAHL,GAAF,CADO,GAMZxB,SArDe,EAsDlBX,QAAQ,GAAGrE,KAAK,CAAE;AAAEyG,IAAAA,OAAO,EAAExC;AAAX,GAAF,CAAR,GAAoCe,SAtD1B,EAuDjB0B,MAvDiB,CAuDPC,CAAF,IAAS,CAAC,CAAEA,CAvDH,CAAnB;;AAwDA,QAAMC,QAAQ,GAAGnG,UAAU,CAAEmB,eAAF,CAAV,IAAiC8B,kBAAlD;;AACA,QAAMmD,IAAI,GAAGtF,OAAO,CAAEqF,QAAF,CAApB;AAEA,MAAIE,aAAJ;;AAEA,MAAKhE,OAAO,IAAIW,cAAhB,EAAiC;AAChCqD,IAAAA,aAAa,GAAG,CAAEC,IAAF,EAAQC,KAAR,KAAmB;AAClC;AACA;AACA,UAAKD,IAAI,KAAK,eAAT,IAA4BtD,cAAjC,EAAkD;AACjDA,QAAAA,cAAc,CAAEuD,KAAF,CAAd;AACA,OAFD,MAEO,IAAKlE,OAAL,EAAe;AACrBA,QAAAA,OAAO;AACP;AACD,KARD;AASA;;AAED,QAAM,CAAEmE,SAAF,EAAaC,WAAb,IAA6BpG,SAAS,CAAE;AAC7CsC,IAAAA,YAD6C;AAE7C+D,IAAAA,iBAAiB,EAAEL,aAF0B;AAG7ChE,IAAAA,OAAO,EAAEgE;AAHoC,GAAF,CAA5C;AAMA,QAAM;AACL;AACA/E,IAAAA,CAFK;AAGLC,IAAAA,CAHK;AAIL;AACA;AACAoF,IAAAA,SANK;AAOLpB,IAAAA,QAPK;AAQL;AACAD,IAAAA,IATK;AAUL;AACAsB,IAAAA,QAXK;AAYLC,IAAAA,MAZK;AAaLhF,IAAAA,SAAS,EAAEiF,iBAbN;AAcLC,IAAAA,cAAc,EAAE;AAAExH,MAAAA,KAAK,EAAEyH,SAAS,GAAG;AAArB;AAdX,MAeF7H,WAAW,CAAE;AAAE0C,IAAAA,SAAS,EAAEgC,4BAAb;AAA2Cc,IAAAA;AAA3C,GAAF,CAff,CAvII,CAwJJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA9E,EAAAA,eAAe,CAAE,MAAM;AACtB,QAAIoH,qBAAJ;;AAEA,QAAKrE,SAAL,aAAKA,SAAL,eAAKA,SAAS,CAAEoB,GAAhB,EAAsB;AACrB;AACA;AACAiD,MAAAA,qBAAqB,GAAG;AACvBxC,QAAAA,qBAAqB,GAAG;AACvB,gBAAMyC,OAAO,GAAGtE,SAAS,CAACoB,GAAV,CAAcS,qBAAd,EAAhB;AACA,gBAAM0C,UAAU,GAAGvE,SAAS,CAACwE,MAAV,CAAiB3C,qBAAjB,EAAnB;AACA,iBAAO,IAAI4C,MAAM,CAACC,OAAX,CACNJ,OAAO,CAAC5F,CADF,EAEN4F,OAAO,CAAC3F,CAFF,EAGN2F,OAAO,CAACK,KAHF,EAINJ,UAAU,CAACC,MAAX,GAAoBF,OAAO,CAAClD,GAJtB,CAAP;AAMA;;AAVsB,OAAxB;AAYA,KAfD,MAeO,IAAKpB,SAAL,aAAKA,SAAL,eAAKA,SAAS,CAAEsB,OAAhB,EAA0B;AAChC;AACA+C,MAAAA,qBAAqB,GAAGrE,SAAS,CAACsB,OAAlC;AACA,KAHM,MAGA,IAAKtB,SAAL,EAAiB;AACvB;AACA;AACAqE,MAAAA,qBAAqB,GAAGrE,SAAxB;AACA,KAJM,MAIA,IAAKC,UAAL,EAAkB;AACxB;AACAoE,MAAAA,qBAAqB,GAAG;AACvBxC,QAAAA,qBAAqB,GAAG;AACvB,iBAAO5B,UAAP;AACA;;AAHsB,OAAxB;AAKA,KAPM,MAOA,IAAKC,aAAL,EAAqB;AAC3B;AACAmE,MAAAA,qBAAqB,GAAG;AACvBxC,QAAAA,qBAAqB,GAAG;AAAA;;AACvB,gBAAM+C,IAAI,GAAG1E,aAAa,CAAEW,iBAAiB,CAACS,OAApB,CAA1B;AACA,iBAAO,IAAImD,MAAM,CAACC,OAAX,YACNE,IAAI,CAAClG,CADC,6CACIkG,IAAI,CAAC9C,IADT,aAEN8C,IAAI,CAACjG,CAFC,6CAEIiG,IAAI,CAACxD,GAFT,iBAGNwD,IAAI,CAACD,KAHC,qDAGQC,IAAI,CAACC,KAAL,GAAaD,IAAI,CAAC9C,IAH1B,kBAIN8C,IAAI,CAACnC,MAJC,uDAISmC,IAAI,CAACJ,MAAL,GAAcI,IAAI,CAACxD,GAJ5B,CAAP;AAMA;;AATsB,OAAxB;AAWA,KAbM,MAaA,IAAKP,iBAAiB,CAACS,OAAvB,EAAiC;AACvC;AACA;AACA+C,MAAAA,qBAAqB,GAAGxD,iBAAiB,CAACS,OAAlB,CAA0BwD,UAAlD;AACA;;AAED,QAAK,CAAET,qBAAP,EAA+B;AAC9B;AACA;;AAEDN,IAAAA,SAAS,CAAEM,qBAAF,CAAT;;AAEA,QAAK,CAAE3B,IAAI,CAACC,QAAL,CAAcrB,OAArB,EAA+B;AAC9B;AACA;;AAED,WAAO5E,UAAU,CAChB2H,qBADgB,EAEhB3B,IAAI,CAACC,QAAL,CAAcrB,OAFE,EAGhB2C,MAHgB,CAAjB;AAKA,GAlEc,EAkEZ,CAAEjE,SAAF,EAAaC,UAAb,EAAyBC,aAAzB,CAlEY,CAAf,CAjKI,CAqOJ;;AACAjD,EAAAA,eAAe,CAAE,MAAM;AACtB,QAAK,CAAEqD,wBAAP,EAAkC;AACjC;AACA;;AACD,UAAMyE,QAAQ,GAAG,IAAIN,MAAM,CAACO,gBAAX,CAA6Bf,MAA7B,CAAjB;AACAc,IAAAA,QAAQ,CAACE,OAAT,CAAkB3E,wBAAlB,EAA4C;AAAE4E,MAAAA,UAAU,EAAE;AAAd,KAA5C;AAEA,WAAO,MAAM;AACZH,MAAAA,QAAQ,CAACI,UAAT;AACA,KAFD;AAGA,GAVc,EAUZ,CAAE7E,wBAAF,CAVY,CAAf,CAtOI,CAkPJ;AACA;AACA;;AACArD,EAAAA,eAAe,CAAE,MAAM;AACtB,QAAKiE,aAAa,KAAKK,QAAvB,EAAkC;AACjC;AACA;;AAEDL,IAAAA,aAAa,CAACkE,gBAAd,CAAgC,QAAhC,EAA0CnB,MAA1C;AACA,WAAO,MAAM/C,aAAa,CAACmE,mBAAd,CAAmC,QAAnC,EAA6CpB,MAA7C,CAAb;AACA,GAPc,EAOZ,CAAE/C,aAAF,CAPY,CAAf;AASA;;AACA,QAAMoE,gBAAgB,GACrB,CAAC,CAAE/F,OAAH,IACApB,mBAAmB,CAAE;AACpBuF,IAAAA,IAAI,EAAE,QADc;AAEpB6B,IAAAA,MAAM,EAAEvG,0BAA0B,CAAEkF,iBAAF;AAFd,GAAF,CAFpB;AAOA,QAAMsB,iBAAiB,GAAGjI,YAAY,CAAE,CACvCoF,QADuC,EAEvCiB,SAFuC,EAGvCvE,YAHuC,CAAF,CAAtC,CAtQI,CA4QJ;AACA;;AAEA,MAAIoG,OAAO,GACV;AACA;AACA;AACC,IAAA,SAAS,EAAGnJ,UAAU,CACrB,oBADqB,EAErBqD,SAFqB,EAGrB2F,gBAHqB,EAIrB;AACC,qBAAevE,UADhB;AAEC,sBAAgBlB;AAFjB,KAJqB;AADvB,KAUMY,YAVN;AAWC,IAAA,GAAG,EAAG+E;AAXP,KAYM3B,WAZN;AAaC,IAAA,QAAQ,EAAC,IAbV;AAcC,IAAA,KAAK,EACJ9C,UAAU,GACPY,SADO,GAEP;AACAlD,MAAAA,QAAQ,EAAEuF,QADV;AAEAlC,MAAAA,IAAI,EAAE4D,MAAM,CAACC,KAAP,CAAcjH,CAAd,IAAoB,CAApB,GAAwBA,CAF9B;AAGA0C,MAAAA,GAAG,EAAEsE,MAAM,CAACC,KAAP,CAAchH,CAAd,IAAoB,CAApB,GAAwBA;AAH7B;AAjBL,MAyBGoC,UAAU,IAAI,cAAC,UAAD,OAzBjB,EA0BGA,UAAU,IACX;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGvB,WADH,CADD,EAIC,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,2BADX;AAEC,IAAA,IAAI,EAAG9B,KAFR;AAGC,IAAA,OAAO,EAAG+B;AAHX,IAJD,CA3BF,EAsCC;AAAK,IAAA,SAAS,EAAC;AAAf,KAA+CC,QAA/C,CAtCD,EAuCGsB,QAAQ,IACT;AACC,IAAA,GAAG,EAAGJ,QADP;AAEC,IAAA,SAAS,EAAG,CACX,2BADW,EAEV,MAAMsD,iBAAiB,CAACrF,KAAlB,CAAyB,GAAzB,EAAgC,CAAhC,CAAqC,EAFjC,EAGV+G,IAHU,CAGJ,GAHI,CAFb;AAMC,IAAA,KAAK,EAAG;AACP9D,MAAAA,IAAI,EAAE4D,MAAM,CAACG,QAAP,CAAiBzB,SAAjB,aAAiBA,SAAjB,uBAAiBA,SAAS,CAAE1F,CAA5B,IACF,GAAG0F,SAAS,CAAC1F,CAAG,IADd,GAEH,EAHI;AAIP0C,MAAAA,GAAG,EAAEsE,MAAM,CAACG,QAAP,CAAiBzB,SAAjB,aAAiBA,SAAjB,uBAAiBA,SAAS,CAAEzF,CAA5B,IACD,GAAGyF,SAAS,CAACzF,CAAG,IADf,GAEF;AANI;AANT,KAeC,cAAC,aAAD,OAfD,CAxCF,CAHD;;AAgEA,MAAK6E,IAAI,CAACsC,GAAV,EAAgB;AACfL,IAAAA,OAAO,GAAG,cAAC,IAAD;AAAM,MAAA,IAAI,EAAGlC;AAAb,OAA0BkC,OAA1B,CAAV;AACA;;AAED,MAAKzF,SAAS,IAAIC,UAAlB,EAA+B;AAC9B,WAAOwF,OAAP;AACA;;AAED,SAAO;AAAM,IAAA,GAAG,EAAG5E;AAAZ,KAAkC4E,OAAlC,CAAP;AACA,CAlXD;;AAoXA,MAAMM,gBAAgB,GAAG7I,UAAU,CAAEkC,OAAF,CAAnC;;AAEA,SAAS4G,WAAT,QAA4CF,GAA5C,EAAkD;AAAA,MAA5B;AAAEG,IAAAA,IAAI,GAAG7H;AAAT,GAA4B;AACjD,SACC,cAAC,IAAD;AACC,IAAA,gBAAgB,MADjB;AAEC,IAAA,IAAI,EAAG6H,IAFR;AAGC,IAAA,SAAS,EAAC,cAHX;AAIC,IAAA,GAAG,EAAGH;AAJP,IADD;AAQA;;AAEDC,gBAAgB,CAAC/H,IAAjB,GAAwBd,UAAU,CAAE8I,WAAF,CAAlC;AACAD,gBAAgB,CAACG,0BAAjB,GAA8C3H,eAAe,CAAC4H,QAA9D;AAEA,eAAeJ,gBAAf","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport {\n\tuseFloating,\n\tflip,\n\tshift,\n\tautoUpdate,\n\tarrow,\n\toffset as offsetMiddleware,\n\tlimitShift,\n\tsize,\n} from '@floating-ui/react-dom';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseRef,\n\tuseLayoutEffect,\n\tforwardRef,\n\tcreateContext,\n\tuseContext,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tuseViewportMatch,\n\tuseMergeRefs,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { close } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\nimport { Path, SVG } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport Button from '../button';\nimport ScrollLock from '../scroll-lock';\nimport { Slot, Fill, useSlot } from '../slot-fill';\nimport { getAnimateClassName } from '../animate';\n\n/**\n * Name of slot in which popover should fill.\n *\n * @type {string}\n */\nconst SLOT_NAME = 'Popover';\n\n// An SVG displaying a triangle facing down, filled with a solid\n// color and bordered in such a way to create an arrow-like effect.\n// Keeping the SVG's viewbox squared simplify the arrow positioning\n// calculations.\nconst ArrowTriangle = ( props ) => (\n\t<SVG\n\t\t{ ...props }\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox={ `0 0 100 100` }\n\t\tclassName=\"components-popover__triangle\"\n\t\trole=\"presentation\"\n\t>\n\t\t<Path\n\t\t\tclassName=\"components-popover__triangle-bg\"\n\t\t\td=\"M 0 0 L 50 50 L 100 0\"\n\t\t/>\n\t\t<Path\n\t\t\tclassName=\"components-popover__triangle-border\"\n\t\t\td=\"M 0 0 L 50 50 L 100 0\"\n\t\t\tvectorEffect=\"non-scaling-stroke\"\n\t\t/>\n\t</SVG>\n);\n\nconst slotNameContext = createContext();\n\nconst positionToPlacement = ( position ) => {\n\tconst [ x, y, z ] = position.split( ' ' );\n\n\tif ( [ 'top', 'bottom' ].includes( x ) ) {\n\t\tlet suffix = '';\n\t\tif ( ( !! z && z === 'left' ) || y === 'right' ) {\n\t\t\tsuffix = '-start';\n\t\t} else if ( ( !! z && z === 'right' ) || y === 'left' ) {\n\t\t\tsuffix = '-end';\n\t\t}\n\t\treturn x + suffix;\n\t}\n\n\treturn y;\n};\n\nconst placementToAnimationOrigin = ( placement ) => {\n\tconst [ a, b ] = placement.split( '-' );\n\n\tlet x, y;\n\tif ( a === 'top' || a === 'bottom' ) {\n\t\tx = a === 'top' ? 'bottom' : 'top';\n\t\ty = 'middle';\n\t\tif ( b === 'start' ) {\n\t\t\ty = 'left';\n\t\t} else if ( b === 'end' ) {\n\t\t\ty = 'right';\n\t\t}\n\t}\n\n\tif ( a === 'left' || a === 'right' ) {\n\t\tx = 'center';\n\t\ty = a === 'left' ? 'right' : 'left';\n\t\tif ( b === 'start' ) {\n\t\t\tx = 'top';\n\t\t} else if ( b === 'end' ) {\n\t\t\tx = 'bottom';\n\t\t}\n\t}\n\n\treturn x + ' ' + y;\n};\n\nconst Popover = (\n\t{\n\t\trange,\n\t\tanimate = true,\n\t\theaderTitle,\n\t\tonClose,\n\t\tchildren,\n\t\tclassName,\n\t\tnoArrow = true,\n\t\tisAlternate,\n\t\tposition,\n\t\tplacement: placementProp = 'bottom-start',\n\t\toffset,\n\t\tfocusOnMount = 'firstElement',\n\t\tanchorRef,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\texpandOnMobile,\n\t\tonFocusOutside,\n\t\t__unstableSlotName = SLOT_NAME,\n\t\t__unstableObserveElement,\n\t\t__unstableForcePosition = false,\n\t\t__unstableShift = false,\n\t\t...contentProps\n\t},\n\tforwardedRef\n) => {\n\tif ( range ) {\n\t\tdeprecated( 'range prop in Popover component', {\n\t\t\tsince: '6.1',\n\t\t\tversion: '6.3',\n\t\t} );\n\t}\n\n\tconst arrowRef = useRef( null );\n\tconst anchorRefFallback = useRef( null );\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isExpanded = expandOnMobile && isMobileViewport;\n\tconst hasArrow = ! isExpanded && ! noArrow;\n\tconst normalizedPlacementFromProps = position\n\t\t? positionToPlacement( position )\n\t\t: placementProp;\n\n\tconst ownerDocument = useMemo( () => {\n\t\tlet documentToReturn;\n\n\t\tif ( anchorRef?.top ) {\n\t\t\tdocumentToReturn = anchorRef?.top.ownerDocument;\n\t\t} else if ( anchorRef?.startContainer ) {\n\t\t\tdocumentToReturn = anchorRef.startContainer.ownerDocument;\n\t\t} else if ( anchorRef?.current ) {\n\t\t\tdocumentToReturn = anchorRef.current.ownerDocument;\n\t\t} else if ( anchorRef ) {\n\t\t\t// This one should be deprecated.\n\t\t\tdocumentToReturn = anchorRef.ownerDocument;\n\t\t} else if ( anchorRect && anchorRect?.ownerDocument ) {\n\t\t\tdocumentToReturn = anchorRect.ownerDocument;\n\t\t} else if ( getAnchorRect ) {\n\t\t\tdocumentToReturn = getAnchorRect(\n\t\t\t\tanchorRefFallback.current\n\t\t\t)?.ownerDocument;\n\t\t}\n\n\t\treturn documentToReturn ?? document;\n\t}, [ anchorRef, anchorRect, getAnchorRect ] );\n\n\t/**\n\t * Offsets the position of the popover when the anchor is inside an iframe.\n\t */\n\tconst frameOffset = useMemo( () => {\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst { frameElement } = defaultView;\n\n\t\tif ( ! frameElement || ownerDocument === document ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst iframeRect = frameElement.getBoundingClientRect();\n\t\treturn { x: iframeRect.left, y: iframeRect.top };\n\t}, [ ownerDocument ] );\n\n\tconst middleware = [\n\t\tframeOffset || offset\n\t\t\t? offsetMiddleware( ( { placement: currentPlacement } ) => {\n\t\t\t\t\tif ( ! frameOffset ) {\n\t\t\t\t\t\treturn offset;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isTopBottomPlacement =\n\t\t\t\t\t\tcurrentPlacement.includes( 'top' ) ||\n\t\t\t\t\t\tcurrentPlacement.includes( 'bottom' );\n\n\t\t\t\t\t// The main axis should represent the gap between the\n\t\t\t\t\t// floating element and the reference element. The cross\n\t\t\t\t\t// axis is always perpendicular to the main axis.\n\t\t\t\t\tconst mainAxis = isTopBottomPlacement ? 'y' : 'x';\n\t\t\t\t\tconst crossAxis = mainAxis === 'x' ? 'y' : 'x';\n\n\t\t\t\t\t// When the popover is before the reference, subtract the offset,\n\t\t\t\t\t// of the main axis else add it.\n\t\t\t\t\tconst hasBeforePlacement =\n\t\t\t\t\t\tcurrentPlacement.includes( 'top' ) ||\n\t\t\t\t\t\tcurrentPlacement.includes( 'left' );\n\t\t\t\t\tconst mainAxisModifier = hasBeforePlacement ? -1 : 1;\n\t\t\t\t\tconst normalizedOffset = offset ? offset : 0;\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tmainAxis:\n\t\t\t\t\t\t\tnormalizedOffset +\n\t\t\t\t\t\t\tframeOffset[ mainAxis ] * mainAxisModifier,\n\t\t\t\t\t\tcrossAxis: frameOffset[ crossAxis ],\n\t\t\t\t\t};\n\t\t\t } )\n\t\t\t: undefined,\n\t\t__unstableForcePosition ? undefined : flip(),\n\t\t__unstableForcePosition\n\t\t\t? undefined\n\t\t\t: size( {\n\t\t\t\t\tapply( sizeProps ) {\n\t\t\t\t\t\tconst { height } = sizeProps;\n\t\t\t\t\t\tif ( ! refs.floating.current ) return;\n\t\t\t\t\t\t// Reduce the height of the popover to the available space.\n\t\t\t\t\t\tObject.assign( refs.floating.current.firstChild.style, {\n\t\t\t\t\t\t\tmaxHeight: `${ height }px`,\n\t\t\t\t\t\t\toverflow: 'auto',\n\t\t\t\t\t\t} );\n\t\t\t\t\t},\n\t\t\t } ),\n\t\t__unstableShift\n\t\t\t? shift( {\n\t\t\t\t\tcrossAxis: true,\n\t\t\t\t\tlimiter: limitShift(),\n\t\t\t\t\tpadding: 1, // Necessary to avoid flickering at the edge of the viewport.\n\t\t\t } )\n\t\t\t: undefined,\n\t\thasArrow ? arrow( { element: arrowRef } ) : undefined,\n\t].filter( ( m ) => !! m );\n\tconst slotName = useContext( slotNameContext ) || __unstableSlotName;\n\tconst slot = useSlot( slotName );\n\n\tlet onDialogClose;\n\n\tif ( onClose || onFocusOutside ) {\n\t\tonDialogClose = ( type, event ) => {\n\t\t\t// Ideally the popover should have just a single onClose prop and\n\t\t\t// not three props that potentially do the same thing.\n\t\t\tif ( type === 'focus-outside' && onFocusOutside ) {\n\t\t\t\tonFocusOutside( event );\n\t\t\t} else if ( onClose ) {\n\t\t\t\tonClose();\n\t\t\t}\n\t\t};\n\t}\n\n\tconst [ dialogRef, dialogProps ] = useDialog( {\n\t\tfocusOnMount,\n\t\t__unstableOnClose: onDialogClose,\n\t\tonClose: onDialogClose,\n\t} );\n\n\tconst {\n\t\t// Positioning coordinates\n\t\tx,\n\t\ty,\n\t\t// Callback refs (not regular refs). This allows the position to be updated.\n\t\t// when either elements change.\n\t\treference,\n\t\tfloating,\n\t\t// Object with \"regular\" refs to both \"reference\" and \"floating\"\n\t\trefs,\n\t\t// Type of CSS position property to use (absolute or fixed)\n\t\tstrategy,\n\t\tupdate,\n\t\tplacement: computedPlacement,\n\t\tmiddlewareData: { arrow: arrowData = {} },\n\t} = useFloating( { placement: normalizedPlacementFromProps, middleware } );\n\n\t// Update the `reference`'s ref.\n\t//\n\t// In floating-ui's terms:\n\t// - \"reference\" refers to the popover's anchor element.\n\t// - \"floating\" refers the floating popover's element.\n\t// A floating element can also be positioned relative to a virtual element,\n\t// instead of a real one. A virtual element is represented by an object\n\t// with the `getBoundingClientRect()` function (like real elements).\n\t// See https://floating-ui.com/docs/virtual-elements for more info.\n\tuseLayoutEffect( () => {\n\t\tlet resultingReferenceRef;\n\n\t\tif ( anchorRef?.top ) {\n\t\t\t// Create a virtual element for the ref. The expectation is that\n\t\t\t// if anchorRef.top is defined, then anchorRef.bottom is defined too.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst topRect = anchorRef.top.getBoundingClientRect();\n\t\t\t\t\tconst bottomRect = anchorRef.bottom.getBoundingClientRect();\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\ttopRect.x,\n\t\t\t\t\t\ttopRect.y,\n\t\t\t\t\t\ttopRect.width,\n\t\t\t\t\t\tbottomRect.bottom - topRect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRef?.current ) {\n\t\t\t// Standard React ref.\n\t\t\tresultingReferenceRef = anchorRef.current;\n\t\t} else if ( anchorRef ) {\n\t\t\t// If `anchorRef` holds directly the element's value (no `current` key)\n\t\t\t// This is a weird scenario and should be deprecated.\n\t\t\tresultingReferenceRef = anchorRef;\n\t\t} else if ( anchorRect ) {\n\t\t\t// Create a virtual element for the ref.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\treturn anchorRect;\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( getAnchorRect ) {\n\t\t\t// Create a virtual element for the ref.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst rect = getAnchorRect( anchorRefFallback.current );\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\trect.x ?? rect.left,\n\t\t\t\t\t\trect.y ?? rect.top,\n\t\t\t\t\t\trect.width ?? rect.right - rect.left,\n\t\t\t\t\t\trect.height ?? rect.bottom - rect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRefFallback.current ) {\n\t\t\t// If no explicit ref is passed via props, fall back to\n\t\t\t// anchoring to the popover's parent node.\n\t\t\tresultingReferenceRef = anchorRefFallback.current.parentNode;\n\t\t}\n\n\t\tif ( ! resultingReferenceRef ) {\n\t\t\treturn;\n\t\t}\n\n\t\treference( resultingReferenceRef );\n\n\t\tif ( ! refs.floating.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn autoUpdate(\n\t\t\tresultingReferenceRef,\n\t\t\trefs.floating.current,\n\t\t\tupdate\n\t\t);\n\t}, [ anchorRef, anchorRect, getAnchorRect ] );\n\n\t// This is only needed for a smooth transition when moving blocks.\n\tuseLayoutEffect( () => {\n\t\tif ( ! __unstableObserveElement ) {\n\t\t\treturn;\n\t\t}\n\t\tconst observer = new window.MutationObserver( update );\n\t\tobserver.observe( __unstableObserveElement, { attributes: true } );\n\n\t\treturn () => {\n\t\t\tobserver.disconnect();\n\t\t};\n\t}, [ __unstableObserveElement ] );\n\n\t// If the reference element is in a different ownerDocument (e.g. iFrame),\n\t// we need to manually update the floating's position as the reference's owner\n\t// document scrolls.\n\tuseLayoutEffect( () => {\n\t\tif ( ownerDocument === document ) {\n\t\t\treturn;\n\t\t}\n\n\t\townerDocument.addEventListener( 'scroll', update );\n\t\treturn () => ownerDocument.removeEventListener( 'scroll', update );\n\t}, [ ownerDocument ] );\n\n\t/** @type {false | string} */\n\tconst animateClassName =\n\t\t!! animate &&\n\t\tgetAnimateClassName( {\n\t\t\ttype: 'appear',\n\t\t\torigin: placementToAnimationOrigin( computedPlacement ),\n\t\t} );\n\n\tconst mergedFloatingRef = useMergeRefs( [\n\t\tfloating,\n\t\tdialogRef,\n\t\tforwardedRef,\n\t] );\n\n\t// Disable reason: We care to capture the _bubbled_ events from inputs\n\t// within popover as inferring close intent.\n\n\tlet content = (\n\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-popover',\n\t\t\t\tclassName,\n\t\t\t\tanimateClassName,\n\t\t\t\t{\n\t\t\t\t\t'is-expanded': isExpanded,\n\t\t\t\t\t'is-alternate': isAlternate,\n\t\t\t\t}\n\t\t\t) }\n\t\t\t{ ...contentProps }\n\t\t\tref={ mergedFloatingRef }\n\t\t\t{ ...dialogProps }\n\t\t\ttabIndex=\"-1\"\n\t\t\tstyle={\n\t\t\t\tisExpanded\n\t\t\t\t\t? undefined\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tposition: strategy,\n\t\t\t\t\t\t\tleft: Number.isNaN( x ) ? 0 : x,\n\t\t\t\t\t\t\ttop: Number.isNaN( y ) ? 0 : y,\n\t\t\t\t\t }\n\t\t\t}\n\t\t>\n\t\t\t{ /* Prevents scroll on the document */ }\n\t\t\t{ isExpanded && <ScrollLock /> }\n\t\t\t{ isExpanded && (\n\t\t\t\t<div className=\"components-popover__header\">\n\t\t\t\t\t<span className=\"components-popover__header-title\">\n\t\t\t\t\t\t{ headerTitle }\n\t\t\t\t\t</span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"components-popover__close\"\n\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div className=\"components-popover__content\">{ children }</div>\n\t\t\t{ hasArrow && (\n\t\t\t\t<div\n\t\t\t\t\tref={ arrowRef }\n\t\t\t\t\tclassName={ [\n\t\t\t\t\t\t'components-popover__arrow',\n\t\t\t\t\t\t`is-${ computedPlacement.split( '-' )[ 0 ] }`,\n\t\t\t\t\t].join( ' ' ) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tleft: Number.isFinite( arrowData?.x )\n\t\t\t\t\t\t\t? `${ arrowData.x }px`\n\t\t\t\t\t\t\t: '',\n\t\t\t\t\t\ttop: Number.isFinite( arrowData?.y )\n\t\t\t\t\t\t\t? `${ arrowData.y }px`\n\t\t\t\t\t\t\t: '',\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<ArrowTriangle />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</div>\n\t);\n\n\tif ( slot.ref ) {\n\t\tcontent = <Fill name={ slotName }>{ content }</Fill>;\n\t}\n\n\tif ( anchorRef || anchorRect ) {\n\t\treturn content;\n\t}\n\n\treturn <span ref={ anchorRefFallback }>{ content }</span>;\n};\n\nconst PopoverContainer = forwardRef( Popover );\n\nfunction PopoverSlot( { name = SLOT_NAME }, ref ) {\n\treturn (\n\t\t<Slot\n\t\t\tbubblesVirtually\n\t\t\tname={ name }\n\t\t\tclassName=\"popover-slot\"\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nPopoverContainer.Slot = forwardRef( PopoverSlot );\nPopoverContainer.__unstableSlotNameProvider = slotNameContext.Provider;\n\nexport default PopoverContainer;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/popover/index.js"],"names":["classnames","useFloating","flip","shift","autoUpdate","arrow","offset","offsetMiddleware","limitShift","size","motion","useReducedMotion","useRef","useLayoutEffect","forwardRef","createContext","useContext","useMemo","useEffect","useViewportMatch","useMergeRefs","__experimentalUseDialog","useDialog","close","deprecated","Path","SVG","Button","ScrollLock","Slot","Fill","useSlot","getFrameOffset","positionToPlacement","placementToMotionAnimationProps","SLOT_NAME","ArrowTriangle","props","MaybeAnimatedWrapper","forwardedRef","style","receivedInlineStyles","placement","shouldAnimate","shouldReduceMotion","motionInlineStyles","otherMotionProps","slotNameContext","Popover","range","animate","headerTitle","onClose","children","className","noArrow","isAlternate","position","placementProp","offsetProp","focusOnMount","anchorRef","anchorRect","getAnchorRect","expandOnMobile","onFocusOutside","__unstableSlotName","__unstableForcePosition","__unstableShift","contentProps","since","version","arrowRef","anchorRefFallback","isMobileViewport","isExpanded","hasArrow","normalizedPlacementFromProps","referenceOwnerDocument","documentToReturn","top","ownerDocument","startContainer","current","document","frameOffsetRef","offsetRef","middleware","currentPlacement","isTopBottomPlacement","includes","mainAxis","crossAxis","hasBeforePlacement","mainAxisModifier","undefined","apply","sizeProps","availableHeight","refs","floating","Object","assign","firstChild","maxHeight","overflow","limiter","padding","element","filter","m","slotName","slot","onDialogClose","type","event","dialogRef","dialogProps","__unstableOnClose","x","y","reference","strategy","update","computedPlacement","middlewareData","arrowData","resultingReferenceRef","getBoundingClientRect","topRect","bottomRect","bottom","window","DOMRect","width","rect","left","right","height","parentNode","animationFrame","referenceAndFloatingHaveSameDocument","hasFrameElement","defaultView","frameElement","updateFrameOffset","addEventListener","removeEventListener","mergedFloatingRef","content","Number","isNaN","split","join","isFinite","ref","PopoverContainer","PopoverSlot","name","__unstableSlotNameProvider","Provider"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport {\n\tuseFloating,\n\tflip,\n\tshift,\n\tautoUpdate,\n\tarrow,\n\toffset as offsetMiddleware,\n\tlimitShift,\n\tsize,\n} from '@floating-ui/react-dom';\n// eslint-disable-next-line no-restricted-imports\nimport { motion, useReducedMotion } from 'framer-motion';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseRef,\n\tuseLayoutEffect,\n\tforwardRef,\n\tcreateContext,\n\tuseContext,\n\tuseMemo,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tuseViewportMatch,\n\tuseMergeRefs,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { close } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\nimport { Path, SVG } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport Button from '../button';\nimport ScrollLock from '../scroll-lock';\nimport { Slot, Fill, useSlot } from '../slot-fill';\nimport {\n\tgetFrameOffset,\n\tpositionToPlacement,\n\tplacementToMotionAnimationProps,\n} from './utils';\n\n/**\n * Name of slot in which popover should fill.\n *\n * @type {string}\n */\nconst SLOT_NAME = 'Popover';\n\n// An SVG displaying a triangle facing down, filled with a solid\n// color and bordered in such a way to create an arrow-like effect.\n// Keeping the SVG's viewbox squared simplify the arrow positioning\n// calculations.\nconst ArrowTriangle = ( props ) => (\n\t<SVG\n\t\t{ ...props }\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox={ `0 0 100 100` }\n\t\tclassName=\"components-popover__triangle\"\n\t\trole=\"presentation\"\n\t>\n\t\t<Path\n\t\t\tclassName=\"components-popover__triangle-bg\"\n\t\t\td=\"M 0 0 L 50 50 L 100 0\"\n\t\t/>\n\t\t<Path\n\t\t\tclassName=\"components-popover__triangle-border\"\n\t\t\td=\"M 0 0 L 50 50 L 100 0\"\n\t\t\tvectorEffect=\"non-scaling-stroke\"\n\t\t/>\n\t</SVG>\n);\n\nconst MaybeAnimatedWrapper = forwardRef(\n\t(\n\t\t{\n\t\t\tstyle: receivedInlineStyles,\n\t\t\tplacement,\n\t\t\tshouldAnimate = false,\n\t\t\t...props\n\t\t},\n\t\tforwardedRef\n\t) => {\n\t\tconst shouldReduceMotion = useReducedMotion();\n\n\t\tconst { style: motionInlineStyles, ...otherMotionProps } = useMemo(\n\t\t\t() => placementToMotionAnimationProps( placement ),\n\t\t\t[ placement ]\n\t\t);\n\n\t\tif ( shouldAnimate && ! shouldReduceMotion ) {\n\t\t\treturn (\n\t\t\t\t<motion.div\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...motionInlineStyles,\n\t\t\t\t\t\t...receivedInlineStyles,\n\t\t\t\t\t} }\n\t\t\t\t\t{ ...otherMotionProps }\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tref={ forwardedRef }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={ receivedInlineStyles }\n\t\t\t\t{ ...props }\n\t\t\t\tref={ forwardedRef }\n\t\t\t/>\n\t\t);\n\t}\n);\n\nconst slotNameContext = createContext();\n\nconst Popover = (\n\t{\n\t\trange,\n\t\tanimate = true,\n\t\theaderTitle,\n\t\tonClose,\n\t\tchildren,\n\t\tclassName,\n\t\tnoArrow = true,\n\t\tisAlternate,\n\t\tposition,\n\t\tplacement: placementProp = 'bottom-start',\n\t\toffset: offsetProp = 0,\n\t\tfocusOnMount = 'firstElement',\n\t\tanchorRef,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\texpandOnMobile,\n\t\tonFocusOutside,\n\t\t__unstableSlotName = SLOT_NAME,\n\t\t__unstableForcePosition = false,\n\t\t__unstableShift = false,\n\t\t...contentProps\n\t},\n\tforwardedRef\n) => {\n\tif ( range ) {\n\t\tdeprecated( 'range prop in Popover component', {\n\t\t\tsince: '6.1',\n\t\t\tversion: '6.3',\n\t\t} );\n\t}\n\n\tconst arrowRef = useRef( null );\n\tconst anchorRefFallback = useRef( null );\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isExpanded = expandOnMobile && isMobileViewport;\n\tconst hasArrow = ! isExpanded && ! noArrow;\n\tconst normalizedPlacementFromProps = position\n\t\t? positionToPlacement( position )\n\t\t: placementProp;\n\n\tconst referenceOwnerDocument = useMemo( () => {\n\t\tlet documentToReturn;\n\n\t\tif ( anchorRef?.top ) {\n\t\t\tdocumentToReturn = anchorRef?.top.ownerDocument;\n\t\t} else if ( anchorRef?.startContainer ) {\n\t\t\tdocumentToReturn = anchorRef.startContainer.ownerDocument;\n\t\t} else if ( anchorRef?.current ) {\n\t\t\tdocumentToReturn = anchorRef.current.ownerDocument;\n\t\t} else if ( anchorRef ) {\n\t\t\t// This one should be deprecated.\n\t\t\tdocumentToReturn = anchorRef.ownerDocument;\n\t\t} else if ( anchorRect && anchorRect?.ownerDocument ) {\n\t\t\tdocumentToReturn = anchorRect.ownerDocument;\n\t\t} else if ( getAnchorRect ) {\n\t\t\tdocumentToReturn = getAnchorRect(\n\t\t\t\tanchorRefFallback.current\n\t\t\t)?.ownerDocument;\n\t\t}\n\n\t\treturn documentToReturn ?? document;\n\t}, [ anchorRef, anchorRect, getAnchorRect ] );\n\n\t/**\n\t * Offsets the position of the popover when the anchor is inside an iframe.\n\t *\n\t * Store the offset in a ref, due to constraints with floating-ui:\n\t * https://floating-ui.com/docs/react-dom#variables-inside-middleware-functions.\n\t */\n\tconst frameOffsetRef = useRef( getFrameOffset( referenceOwnerDocument ) );\n\t/**\n\t * Store the offset prop in a ref, due to constraints with floating-ui:\n\t * https://floating-ui.com/docs/react-dom#variables-inside-middleware-functions.\n\t */\n\tconst offsetRef = useRef( offsetProp );\n\n\tconst middleware = [\n\t\toffsetMiddleware( ( { placement: currentPlacement } ) => {\n\t\t\tif ( ! frameOffsetRef.current ) {\n\t\t\t\treturn offsetRef.current;\n\t\t\t}\n\n\t\t\tconst isTopBottomPlacement =\n\t\t\t\tcurrentPlacement.includes( 'top' ) ||\n\t\t\t\tcurrentPlacement.includes( 'bottom' );\n\n\t\t\t// The main axis should represent the gap between the\n\t\t\t// floating element and the reference element. The cross\n\t\t\t// axis is always perpendicular to the main axis.\n\t\t\tconst mainAxis = isTopBottomPlacement ? 'y' : 'x';\n\t\t\tconst crossAxis = mainAxis === 'x' ? 'y' : 'x';\n\n\t\t\t// When the popover is before the reference, subtract the offset,\n\t\t\t// of the main axis else add it.\n\t\t\tconst hasBeforePlacement =\n\t\t\t\tcurrentPlacement.includes( 'top' ) ||\n\t\t\t\tcurrentPlacement.includes( 'left' );\n\t\t\tconst mainAxisModifier = hasBeforePlacement ? -1 : 1;\n\n\t\t\treturn {\n\t\t\t\tmainAxis:\n\t\t\t\t\toffsetRef.current +\n\t\t\t\t\tframeOffsetRef.current[ mainAxis ] * mainAxisModifier,\n\t\t\t\tcrossAxis: frameOffsetRef.current[ crossAxis ],\n\t\t\t};\n\t\t} ),\n\t\t__unstableForcePosition ? undefined : flip(),\n\t\t__unstableForcePosition\n\t\t\t? undefined\n\t\t\t: size( {\n\t\t\t\t\tapply( sizeProps ) {\n\t\t\t\t\t\tconst { availableHeight } = sizeProps;\n\t\t\t\t\t\tif ( ! refs.floating.current ) return;\n\t\t\t\t\t\t// Reduce the height of the popover to the available space.\n\t\t\t\t\t\tObject.assign( refs.floating.current.firstChild.style, {\n\t\t\t\t\t\t\tmaxHeight: `${ availableHeight }px`,\n\t\t\t\t\t\t\toverflow: 'auto',\n\t\t\t\t\t\t} );\n\t\t\t\t\t},\n\t\t\t } ),\n\t\t__unstableShift\n\t\t\t? shift( {\n\t\t\t\t\tcrossAxis: true,\n\t\t\t\t\tlimiter: limitShift(),\n\t\t\t\t\tpadding: 1, // Necessary to avoid flickering at the edge of the viewport.\n\t\t\t } )\n\t\t\t: undefined,\n\t\thasArrow ? arrow( { element: arrowRef } ) : undefined,\n\t].filter( ( m ) => !! m );\n\tconst slotName = useContext( slotNameContext ) || __unstableSlotName;\n\tconst slot = useSlot( slotName );\n\n\tlet onDialogClose;\n\n\tif ( onClose || onFocusOutside ) {\n\t\tonDialogClose = ( type, event ) => {\n\t\t\t// Ideally the popover should have just a single onClose prop and\n\t\t\t// not three props that potentially do the same thing.\n\t\t\tif ( type === 'focus-outside' && onFocusOutside ) {\n\t\t\t\tonFocusOutside( event );\n\t\t\t} else if ( onClose ) {\n\t\t\t\tonClose();\n\t\t\t}\n\t\t};\n\t}\n\n\tconst [ dialogRef, dialogProps ] = useDialog( {\n\t\tfocusOnMount,\n\t\t__unstableOnClose: onDialogClose,\n\t\tonClose: onDialogClose,\n\t} );\n\n\tconst {\n\t\t// Positioning coordinates\n\t\tx,\n\t\ty,\n\t\t// Callback refs (not regular refs). This allows the position to be updated.\n\t\t// when either elements change.\n\t\treference,\n\t\tfloating,\n\t\t// Object with \"regular\" refs to both \"reference\" and \"floating\"\n\t\trefs,\n\t\t// Type of CSS position property to use (absolute or fixed)\n\t\tstrategy,\n\t\tupdate,\n\t\tplacement: computedPlacement,\n\t\tmiddlewareData: { arrow: arrowData = {} },\n\t} = useFloating( { placement: normalizedPlacementFromProps, middleware } );\n\n\tuseEffect( () => {\n\t\toffsetRef.current = offsetProp;\n\t\tupdate();\n\t}, [ offsetProp, update ] );\n\n\t// Update the `reference`'s ref.\n\t//\n\t// In floating-ui's terms:\n\t// - \"reference\" refers to the popover's anchor element.\n\t// - \"floating\" refers the floating popover's element.\n\t// A floating element can also be positioned relative to a virtual element,\n\t// instead of a real one. A virtual element is represented by an object\n\t// with the `getBoundingClientRect()` function (like real elements).\n\t// See https://floating-ui.com/docs/virtual-elements for more info.\n\tuseLayoutEffect( () => {\n\t\tlet resultingReferenceRef;\n\n\t\tif ( anchorRef?.top ) {\n\t\t\t// Create a virtual element for the ref. The expectation is that\n\t\t\t// if anchorRef.top is defined, then anchorRef.bottom is defined too.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst topRect = anchorRef.top.getBoundingClientRect();\n\t\t\t\t\tconst bottomRect = anchorRef.bottom.getBoundingClientRect();\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\ttopRect.x,\n\t\t\t\t\t\ttopRect.y,\n\t\t\t\t\t\ttopRect.width,\n\t\t\t\t\t\tbottomRect.bottom - topRect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRef?.current ) {\n\t\t\t// Standard React ref.\n\t\t\tresultingReferenceRef = anchorRef.current;\n\t\t} else if ( anchorRef ) {\n\t\t\t// If `anchorRef` holds directly the element's value (no `current` key)\n\t\t\t// This is a weird scenario and should be deprecated.\n\t\t\tresultingReferenceRef = anchorRef;\n\t\t} else if ( anchorRect ) {\n\t\t\t// Create a virtual element for the ref.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\treturn anchorRect;\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( getAnchorRect ) {\n\t\t\t// Create a virtual element for the ref.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst rect = getAnchorRect( anchorRefFallback.current );\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\trect.x ?? rect.left,\n\t\t\t\t\t\trect.y ?? rect.top,\n\t\t\t\t\t\trect.width ?? rect.right - rect.left,\n\t\t\t\t\t\trect.height ?? rect.bottom - rect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRefFallback.current ) {\n\t\t\t// If no explicit ref is passed via props, fall back to\n\t\t\t// anchoring to the popover's parent node.\n\t\t\tresultingReferenceRef = anchorRefFallback.current.parentNode;\n\t\t}\n\n\t\tif ( ! resultingReferenceRef ) {\n\t\t\treturn;\n\t\t}\n\n\t\treference( resultingReferenceRef );\n\n\t\tif ( ! refs.floating.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn autoUpdate(\n\t\t\tresultingReferenceRef,\n\t\t\trefs.floating.current,\n\t\t\tupdate,\n\t\t\t{\n\t\t\t\tanimationFrame: true,\n\t\t\t}\n\t\t);\n\t\t// 'reference' and 'refs.floating' are refs and don't need to be listed\n\t\t// as dependencies (see https://github.com/WordPress/gutenberg/pull/41612)\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ anchorRef, anchorRect, getAnchorRect, update ] );\n\n\t// If the reference element is in a different ownerDocument (e.g. iFrame),\n\t// we need to manually update the floating's position as the reference's owner\n\t// document scrolls. Also update the frame offset if the view resizes.\n\tuseLayoutEffect( () => {\n\t\tconst referenceAndFloatingHaveSameDocument =\n\t\t\treferenceOwnerDocument === document;\n\t\tconst hasFrameElement =\n\t\t\t!! referenceOwnerDocument?.defaultView?.frameElement;\n\n\t\tif ( referenceAndFloatingHaveSameDocument || ! hasFrameElement ) {\n\t\t\tframeOffsetRef.current = undefined;\n\t\t\treturn;\n\t\t}\n\n\t\tconst { defaultView } = referenceOwnerDocument;\n\n\t\tconst updateFrameOffset = () => {\n\t\t\tframeOffsetRef.current = getFrameOffset( referenceOwnerDocument );\n\t\t\tupdate();\n\t\t};\n\t\tdefaultView.addEventListener( 'resize', updateFrameOffset );\n\n\t\tupdateFrameOffset();\n\n\t\treturn () => {\n\t\t\tdefaultView.removeEventListener( 'resize', updateFrameOffset );\n\t\t};\n\t}, [ referenceOwnerDocument, update ] );\n\n\tconst mergedFloatingRef = useMergeRefs( [\n\t\tfloating,\n\t\tdialogRef,\n\t\tforwardedRef,\n\t] );\n\n\t// Disable reason: We care to capture the _bubbled_ events from inputs\n\t// within popover as inferring close intent.\n\n\tlet content = (\n\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<MaybeAnimatedWrapper\n\t\t\tshouldAnimate={ animate && ! isExpanded }\n\t\t\tplacement={ computedPlacement }\n\t\t\tclassName={ classnames( 'components-popover', className, {\n\t\t\t\t'is-expanded': isExpanded,\n\t\t\t\t'is-alternate': isAlternate,\n\t\t\t} ) }\n\t\t\t{ ...contentProps }\n\t\t\tref={ mergedFloatingRef }\n\t\t\t{ ...dialogProps }\n\t\t\ttabIndex=\"-1\"\n\t\t\tstyle={\n\t\t\t\tisExpanded\n\t\t\t\t\t? undefined\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tposition: strategy,\n\t\t\t\t\t\t\tleft: Number.isNaN( x ) ? 0 : x,\n\t\t\t\t\t\t\ttop: Number.isNaN( y ) ? 0 : y,\n\t\t\t\t\t }\n\t\t\t}\n\t\t>\n\t\t\t{ /* Prevents scroll on the document */ }\n\t\t\t{ isExpanded && <ScrollLock /> }\n\t\t\t{ isExpanded && (\n\t\t\t\t<div className=\"components-popover__header\">\n\t\t\t\t\t<span className=\"components-popover__header-title\">\n\t\t\t\t\t\t{ headerTitle }\n\t\t\t\t\t</span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"components-popover__close\"\n\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div className=\"components-popover__content\">{ children }</div>\n\t\t\t{ hasArrow && (\n\t\t\t\t<div\n\t\t\t\t\tref={ arrowRef }\n\t\t\t\t\tclassName={ [\n\t\t\t\t\t\t'components-popover__arrow',\n\t\t\t\t\t\t`is-${ computedPlacement.split( '-' )[ 0 ] }`,\n\t\t\t\t\t].join( ' ' ) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tleft: Number.isFinite( arrowData?.x )\n\t\t\t\t\t\t\t? `${ arrowData.x }px`\n\t\t\t\t\t\t\t: '',\n\t\t\t\t\t\ttop: Number.isFinite( arrowData?.y )\n\t\t\t\t\t\t\t? `${ arrowData.y }px`\n\t\t\t\t\t\t\t: '',\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<ArrowTriangle />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</MaybeAnimatedWrapper>\n\t);\n\n\tif ( slot.ref ) {\n\t\tcontent = <Fill name={ slotName }>{ content }</Fill>;\n\t}\n\n\tif ( anchorRef || anchorRect ) {\n\t\treturn content;\n\t}\n\n\treturn <span ref={ anchorRefFallback }>{ content }</span>;\n};\n\nconst PopoverContainer = forwardRef( Popover );\n\nfunction PopoverSlot( { name = SLOT_NAME }, ref ) {\n\treturn (\n\t\t<Slot\n\t\t\tbubblesVirtually\n\t\t\tname={ name }\n\t\t\tclassName=\"popover-slot\"\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nPopoverContainer.Slot = forwardRef( PopoverSlot );\nPopoverContainer.__unstableSlotNameProvider = slotNameContext.Provider;\n\nexport default PopoverContainer;\n"]}
@@ -0,0 +1,164 @@
1
+ /**
2
+ * @typedef {import('../animate').AppearOrigin} AppearOrigin
3
+ * @typedef {import('@floating-ui/react-dom').Placement} FloatingUIPlacement
4
+ * @typedef { 'top left' | 'top center' | 'top right' | 'middle left' | 'middle center' | 'middle right' | 'bottom left' | 'bottom center' | 'bottom right' | 'bottom left' | 'bottom center' | 'bottom right' } LegacyPosition
5
+ */
6
+
7
+ /**
8
+ * Converts the `Popover`'s legacy "position" prop to the new "placement" prop
9
+ * (used by `floating-ui`).
10
+ *
11
+ * @param {LegacyPosition} position The legacy position
12
+ * @return {FloatingUIPlacement} The corresponding placement
13
+ */
14
+ export const positionToPlacement = position => {
15
+ const [x, y, z] = position.split(' ');
16
+
17
+ if (['top', 'bottom'].includes(x)) {
18
+ let suffix = '';
19
+
20
+ if (!!z && z === 'left' || y === 'right') {
21
+ suffix = '-start';
22
+ } else if (!!z && z === 'right' || y === 'left') {
23
+ suffix = '-end';
24
+ } // @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.
25
+
26
+
27
+ return x + suffix;
28
+ } // @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.
29
+
30
+
31
+ return y;
32
+ };
33
+ /**
34
+ * @typedef AnimationOrigin
35
+ * @type {Object}
36
+ * @property {number} originX A number between 0 and 1 (in CSS logical properties jargon, 0 is "start", 0.5 is "center", and 1 is "end")
37
+ * @property {number} originY A number between 0 and 1 (0 is top, 0.5 is center, and 1 is bottom)
38
+ */
39
+
40
+ /** @type {Object.<FloatingUIPlacement, {originX: number, originY: number}>} */
41
+
42
+ const PLACEMENT_TO_ANIMATION_ORIGIN = {
43
+ top: {
44
+ originX: 0.5,
45
+ originY: 1
46
+ },
47
+ // open from bottom, center
48
+ 'top-start': {
49
+ originX: 0,
50
+ originY: 1
51
+ },
52
+ // open from bottom, left
53
+ 'top-end': {
54
+ originX: 1,
55
+ originY: 1
56
+ },
57
+ // open from bottom, right
58
+ right: {
59
+ originX: 0,
60
+ originY: 0.5
61
+ },
62
+ // open from middle, left
63
+ 'right-start': {
64
+ originX: 0,
65
+ originY: 0
66
+ },
67
+ // open from top, left
68
+ 'right-end': {
69
+ originX: 0,
70
+ originY: 1
71
+ },
72
+ // open from bottom, left
73
+ bottom: {
74
+ originX: 0.5,
75
+ originY: 0
76
+ },
77
+ // open from top, center
78
+ 'bottom-start': {
79
+ originX: 0,
80
+ originY: 0
81
+ },
82
+ // open from top, left
83
+ 'bottom-end': {
84
+ originX: 1,
85
+ originY: 0
86
+ },
87
+ // open from top, right
88
+ left: {
89
+ originX: 1,
90
+ originY: 0.5
91
+ },
92
+ // open from middle, right
93
+ 'left-start': {
94
+ originX: 1,
95
+ originY: 0
96
+ },
97
+ // open from top, right
98
+ 'left-end': {
99
+ originX: 1,
100
+ originY: 1
101
+ } // open from bottom, right
102
+
103
+ };
104
+ /**
105
+ * Given the floating-ui `placement`, compute the framer-motion props for the
106
+ * popover's entry animation.
107
+ *
108
+ * @param {FloatingUIPlacement} placement A placement string from floating ui
109
+ * @return {import('framer-motion').MotionProps} The object containing the motion props
110
+ */
111
+
112
+ export const placementToMotionAnimationProps = placement => {
113
+ const translateProp = placement.startsWith('top') || placement.startsWith('bottom') ? 'translateY' : 'translateX';
114
+ const translateDirection = placement.startsWith('top') || placement.startsWith('left') ? 1 : -1;
115
+ return {
116
+ style: PLACEMENT_TO_ANIMATION_ORIGIN[placement],
117
+ initial: {
118
+ opacity: 0,
119
+ scale: 0,
120
+ [translateProp]: `${2 * translateDirection}em`
121
+ },
122
+ animate: {
123
+ opacity: 1,
124
+ scale: 1,
125
+ [translateProp]: 0
126
+ },
127
+ transition: {
128
+ duration: 0.1,
129
+ ease: [0, 0, 0.2, 1]
130
+ }
131
+ };
132
+ };
133
+ /**
134
+ * @typedef FrameOffset
135
+ * @type {Object}
136
+ * @property {number} x A numerical value representing the horizontal offset of the frame.
137
+ * @property {number} y A numerical value representing the vertical offset of the frame.
138
+ */
139
+
140
+ /**
141
+ * Returns the offset of a document's frame element.
142
+ *
143
+ * @param {Document} document A document. This will usually be the document within an iframe.
144
+ *
145
+ * @return {FrameOffset|undefined} The offset of the document's frame element,
146
+ * or undefined if the document has no frame element.
147
+ */
148
+
149
+ export const getFrameOffset = document => {
150
+ var _document$defaultView;
151
+
152
+ const frameElement = document === null || document === void 0 ? void 0 : (_document$defaultView = document.defaultView) === null || _document$defaultView === void 0 ? void 0 : _document$defaultView.frameElement;
153
+
154
+ if (!frameElement) {
155
+ return;
156
+ }
157
+
158
+ const iframeRect = frameElement.getBoundingClientRect();
159
+ return {
160
+ x: iframeRect.left,
161
+ y: iframeRect.top
162
+ };
163
+ };
164
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/components/src/popover/utils.js"],"names":["positionToPlacement","position","x","y","z","split","includes","suffix","PLACEMENT_TO_ANIMATION_ORIGIN","top","originX","originY","right","bottom","left","placementToMotionAnimationProps","placement","translateProp","startsWith","translateDirection","style","initial","opacity","scale","animate","transition","duration","ease","getFrameOffset","document","frameElement","defaultView","iframeRect","getBoundingClientRect"],"mappings":"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","sourcesContent":["/**\n * @typedef {import('../animate').AppearOrigin} AppearOrigin\n * @typedef {import('@floating-ui/react-dom').Placement} FloatingUIPlacement\n * @typedef {\t'top left' | 'top center' | 'top right' | 'middle left' | 'middle center' | 'middle right' | 'bottom left' | 'bottom center' | 'bottom right' | 'bottom left' | 'bottom center' | 'bottom right' } LegacyPosition\n */\n\n/**\n * Converts the `Popover`'s legacy \"position\" prop to the new \"placement\" prop\n * (used by `floating-ui`).\n *\n * @param {LegacyPosition} position The legacy position\n * @return {FloatingUIPlacement} The corresponding placement\n */\nexport const positionToPlacement = ( position ) => {\n\tconst [ x, y, z ] = position.split( ' ' );\n\n\tif ( [ 'top', 'bottom' ].includes( x ) ) {\n\t\tlet suffix = '';\n\t\tif ( ( !! z && z === 'left' ) || y === 'right' ) {\n\t\t\tsuffix = '-start';\n\t\t} else if ( ( !! z && z === 'right' ) || y === 'left' ) {\n\t\t\tsuffix = '-end';\n\t\t}\n\n\t\t// @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.\n\t\treturn x + suffix;\n\t}\n\n\t// @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.\n\treturn y;\n};\n\n/**\n * @typedef AnimationOrigin\n * @type {Object}\n * @property {number} originX A number between 0 and 1 (in CSS logical properties jargon, 0 is \"start\", 0.5 is \"center\", and 1 is \"end\")\n * @property {number} originY A number between 0 and 1 (0 is top, 0.5 is center, and 1 is bottom)\n */\n\n/** @type {Object.<FloatingUIPlacement, {originX: number, originY: number}>} */\nconst PLACEMENT_TO_ANIMATION_ORIGIN = {\n\ttop: { originX: 0.5, originY: 1 }, // open from bottom, center\n\t'top-start': { originX: 0, originY: 1 }, // open from bottom, left\n\t'top-end': { originX: 1, originY: 1 }, // open from bottom, right\n\tright: { originX: 0, originY: 0.5 }, // open from middle, left\n\t'right-start': { originX: 0, originY: 0 }, // open from top, left\n\t'right-end': { originX: 0, originY: 1 }, // open from bottom, left\n\tbottom: { originX: 0.5, originY: 0 }, // open from top, center\n\t'bottom-start': { originX: 0, originY: 0 }, // open from top, left\n\t'bottom-end': { originX: 1, originY: 0 }, // open from top, right\n\tleft: { originX: 1, originY: 0.5 }, // open from middle, right\n\t'left-start': { originX: 1, originY: 0 }, // open from top, right\n\t'left-end': { originX: 1, originY: 1 }, // open from bottom, right\n};\n\n/**\n * Given the floating-ui `placement`, compute the framer-motion props for the\n * popover's entry animation.\n *\n * @param {FloatingUIPlacement} placement A placement string from floating ui\n * @return {import('framer-motion').MotionProps} The object containing the motion props\n */\nexport const placementToMotionAnimationProps = ( placement ) => {\n\tconst translateProp =\n\t\tplacement.startsWith( 'top' ) || placement.startsWith( 'bottom' )\n\t\t\t? 'translateY'\n\t\t\t: 'translateX';\n\tconst translateDirection =\n\t\tplacement.startsWith( 'top' ) || placement.startsWith( 'left' )\n\t\t\t? 1\n\t\t\t: -1;\n\n\treturn {\n\t\tstyle: PLACEMENT_TO_ANIMATION_ORIGIN[ placement ],\n\t\tinitial: {\n\t\t\topacity: 0,\n\t\t\tscale: 0,\n\t\t\t[ translateProp ]: `${ 2 * translateDirection }em`,\n\t\t},\n\t\tanimate: { opacity: 1, scale: 1, [ translateProp ]: 0 },\n\t\ttransition: { duration: 0.1, ease: [ 0, 0, 0.2, 1 ] },\n\t};\n};\n\n/**\n * @typedef FrameOffset\n * @type {Object}\n * @property {number} x A numerical value representing the horizontal offset of the frame.\n * @property {number} y A numerical value representing the vertical offset of the frame.\n */\n\n/**\n * Returns the offset of a document's frame element.\n *\n * @param {Document} document A document. This will usually be the document within an iframe.\n *\n * @return {FrameOffset|undefined} The offset of the document's frame element,\n * or undefined if the document has no frame element.\n */\nexport const getFrameOffset = ( document ) => {\n\tconst frameElement = document?.defaultView?.frameElement;\n\tif ( ! frameElement ) {\n\t\treturn;\n\t}\n\tconst iframeRect = frameElement.getBoundingClientRect();\n\treturn { x: iframeRect.left, y: iframeRect.top };\n};\n"]}
@@ -33,6 +33,7 @@ function UnforwardedRangeControl(props, forwardedRef) {
33
33
  var _inputRef$current;
34
34
 
35
35
  const {
36
+ __nextHasNoMarginBottom = false,
36
37
  afterIcon,
37
38
  allowReset = false,
38
39
  beforeIcon,
@@ -178,6 +179,7 @@ function UnforwardedRangeControl(props, forwardedRef) {
178
179
  [isRTL() ? 'right' : 'left']: fillValueOffset
179
180
  };
180
181
  return createElement(BaseControl, {
182
+ __nextHasNoMarginBottom: __nextHasNoMarginBottom,
181
183
  className: classes,
182
184
  label: label,
183
185
  hideLabelFromVision: hideLabelFromVision,
@@ -188,6 +190,7 @@ function UnforwardedRangeControl(props, forwardedRef) {
188
190
  }, beforeIcon && createElement(BeforeIconWrapper, null, createElement(Icon, {
189
191
  icon: beforeIcon
190
192
  })), createElement(Wrapper, {
193
+ __nextHasNoMarginBottom: __nextHasNoMarginBottom,
191
194
  className: wrapperClasses,
192
195
  color: colorProp,
193
196
  marks: !!marks
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/range-control/index.tsx"],"names":["classnames","__","isRTL","useRef","useState","forwardRef","useInstanceId","useMergeRefs","BaseControl","Button","Icon","COLORS","floatClamp","useControlledRangeValue","clamp","InputRange","RangeRail","SimpleTooltip","ActionRightWrapper","AfterIconWrapper","BeforeIconWrapper","InputNumber","Root","Track","ThumbWrapper","Thumb","Wrapper","noop","UnforwardedRangeControl","props","forwardedRef","afterIcon","allowReset","beforeIcon","className","color","colorProp","ui","theme","currentInput","disabled","help","hideLabelFromVision","initialPosition","isShiftStepEnabled","label","marks","max","min","onBlur","onChange","onFocus","onMouseLeave","onMouseMove","railColor","renderTooltipContent","v","resetFallbackValue","shiftStep","showTooltip","showTooltipProp","step","trackColor","value","valueProp","withInputField","otherProps","setValue","initial","isResetPendent","hasTooltip","hasInputField","setShowTooltip","isFocused","setIsFocused","inputRef","isCurrentlyFocused","current","matches","isThumbFocused","isValueReset","currentValue","undefined","inputSliderValue","rangeFillValue","fillValue","fillValueOffset","classes","wrapperClasses","id","describedBy","enableTooltip","Number","isFinite","handleOnRangeChange","event","nextValue","parseFloat","target","handleOnChange","next","isNaN","handleOnInputNumberBlur","handleOnReset","resetValue","onChangeResetValue","handleShowTooltip","handleHideTooltip","handleOnBlur","handleOnFocus","offsetStyle","width","RangeControl"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type { ChangeEvent, FocusEvent, ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useRef, useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BaseControl from '../base-control';\nimport Button from '../button';\nimport Icon from '../icon';\nimport { COLORS } from '../utils';\nimport { floatClamp, useControlledRangeValue } from './utils';\nimport { clamp } from '../utils/math';\nimport InputRange from './input-range';\nimport RangeRail from './rail';\nimport SimpleTooltip from './tooltip';\nimport {\n\tActionRightWrapper,\n\tAfterIconWrapper,\n\tBeforeIconWrapper,\n\tInputNumber,\n\tRoot,\n\tTrack,\n\tThumbWrapper,\n\tThumb,\n\tWrapper,\n} from './styles/range-control-styles';\n\nimport type { RangeControlProps } from './types';\nimport type { WordPressComponentProps } from '../ui/context';\n\nconst noop = () => {};\n\nfunction UnforwardedRangeControl< IconProps = unknown >(\n\tprops: WordPressComponentProps<\n\t\tRangeControlProps< IconProps >,\n\t\t'input',\n\t\tfalse\n\t>,\n\tforwardedRef: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\tafterIcon,\n\t\tallowReset = false,\n\t\tbeforeIcon,\n\t\tclassName,\n\t\tcolor: colorProp = COLORS.ui.theme,\n\t\tcurrentInput,\n\t\tdisabled = false,\n\t\thelp,\n\t\thideLabelFromVision = false,\n\t\tinitialPosition,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmarks = false,\n\t\tmax = 100,\n\t\tmin = 0,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonFocus = noop,\n\t\tonMouseLeave = noop,\n\t\tonMouseMove = noop,\n\t\trailColor,\n\t\trenderTooltipContent = ( v ) => v,\n\t\tresetFallbackValue,\n\t\tshiftStep = 10,\n\t\tshowTooltip: showTooltipProp,\n\t\tstep = 1,\n\t\ttrackColor,\n\t\tvalue: valueProp,\n\t\twithInputField = true,\n\t\t...otherProps\n\t} = props;\n\n\tconst [ value, setValue ] = useControlledRangeValue( {\n\t\tmin,\n\t\tmax,\n\t\tvalue: valueProp ?? null,\n\t\tinitial: initialPosition,\n\t} );\n\tconst isResetPendent = useRef( false );\n\n\tlet hasTooltip = showTooltipProp;\n\tlet hasInputField = withInputField;\n\n\tif ( step === 'any' ) {\n\t\t// The tooltip and number input field are hidden when the step is \"any\"\n\t\t// because the decimals get too lengthy to fit well.\n\t\thasTooltip = false;\n\t\thasInputField = false;\n\t}\n\n\tconst [ showTooltip, setShowTooltip ] = useState( hasTooltip );\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tconst inputRef = useRef< HTMLInputElement >();\n\tconst isCurrentlyFocused = inputRef.current?.matches( ':focus' );\n\tconst isThumbFocused = ! disabled && isFocused;\n\n\tconst isValueReset = value === null;\n\tconst currentValue = value !== undefined ? value : currentInput;\n\n\tconst inputSliderValue = isValueReset ? '' : currentValue;\n\tconst rangeFillValue = isValueReset ? ( max - min ) / 2 + min : value;\n\n\tconst fillValue = isValueReset\n\t\t? 50\n\t\t: ( ( value - min ) / ( max - min ) ) * 100;\n\tconst fillValueOffset = `${ clamp( fillValue, 0, 100 ) }%`;\n\n\tconst classes = classnames( 'components-range-control', className );\n\n\tconst wrapperClasses = classnames(\n\t\t'components-range-control__wrapper',\n\t\t!! marks && 'is-marked'\n\t);\n\n\tconst id = useInstanceId(\n\t\tUnforwardedRangeControl,\n\t\t'inspector-range-control'\n\t);\n\tconst describedBy = !! help ? `${ id }__help` : undefined;\n\tconst enableTooltip = hasTooltip !== false && Number.isFinite( value );\n\n\tconst handleOnRangeChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = parseFloat( event.target.value );\n\t\tsetValue( nextValue );\n\t\tonChange( nextValue );\n\t};\n\n\tconst handleOnChange = ( next: string ) => {\n\t\tlet nextValue = parseFloat( next );\n\t\tsetValue( nextValue );\n\n\t\t/*\n\t\t * Calls onChange only when nextValue is numeric\n\t\t * otherwise may queue a reset for the blur event.\n\t\t */\n\t\tif ( ! isNaN( nextValue ) ) {\n\t\t\tif ( nextValue < min || nextValue > max ) {\n\t\t\t\tnextValue = floatClamp( nextValue, min, max ) as number;\n\t\t\t}\n\n\t\t\tonChange( nextValue );\n\t\t\tisResetPendent.current = false;\n\t\t} else if ( allowReset ) {\n\t\t\tisResetPendent.current = true;\n\t\t}\n\t};\n\n\tconst handleOnInputNumberBlur = () => {\n\t\tif ( isResetPendent.current ) {\n\t\t\thandleOnReset();\n\t\t\tisResetPendent.current = false;\n\t\t}\n\t};\n\n\tconst handleOnReset = () => {\n\t\tlet resetValue: number | null = parseFloat( `${ resetFallbackValue }` );\n\t\tlet onChangeResetValue: number | undefined = resetValue;\n\n\t\tif ( isNaN( resetValue ) ) {\n\t\t\tresetValue = null;\n\t\t\tonChangeResetValue = undefined;\n\t\t}\n\n\t\tsetValue( resetValue );\n\n\t\t/**\n\t\t * Previously, this callback would always receive undefined as\n\t\t * an argument. This behavior is unexpected, specifically\n\t\t * when resetFallbackValue is defined.\n\t\t *\n\t\t * The value of undefined is not ideal. Passing it through\n\t\t * to internal <input /> elements would change it from a\n\t\t * controlled component to an uncontrolled component.\n\t\t *\n\t\t * For now, to minimize unexpected regressions, we're going to\n\t\t * preserve the undefined callback argument, except when a\n\t\t * resetFallbackValue is defined.\n\t\t */\n\t\tonChange( onChangeResetValue );\n\t};\n\n\tconst handleShowTooltip = () => setShowTooltip( true );\n\tconst handleHideTooltip = () => setShowTooltip( false );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused( false );\n\t\thandleHideTooltip();\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused( true );\n\t\thandleShowTooltip();\n\t};\n\n\tconst offsetStyle = {\n\t\t[ isRTL() ? 'right' : 'left' ]: fillValueOffset,\n\t};\n\n\treturn (\n\t\t<BaseControl\n\t\t\tclassName={ classes }\n\t\t\tlabel={ label }\n\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\tid={ `${ id }` }\n\t\t\thelp={ help }\n\t\t>\n\t\t\t<Root className=\"components-range-control__root\">\n\t\t\t\t{ beforeIcon && (\n\t\t\t\t\t<BeforeIconWrapper>\n\t\t\t\t\t\t<Icon icon={ beforeIcon } />\n\t\t\t\t\t</BeforeIconWrapper>\n\t\t\t\t) }\n\t\t\t\t<Wrapper\n\t\t\t\t\tclassName={ wrapperClasses }\n\t\t\t\t\tcolor={ colorProp }\n\t\t\t\t\tmarks={ !! marks }\n\t\t\t\t>\n\t\t\t\t\t<InputRange\n\t\t\t\t\t\t{ ...otherProps }\n\t\t\t\t\t\tclassName=\"components-range-control__slider\"\n\t\t\t\t\t\tdescribedBy={ describedBy }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tid={ `${ id }` }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\t\t\tonChange={ handleOnRangeChange }\n\t\t\t\t\t\tonFocus={ handleOnFocus }\n\t\t\t\t\t\tonMouseMove={ onMouseMove }\n\t\t\t\t\t\tonMouseLeave={ onMouseLeave }\n\t\t\t\t\t\tref={ useMergeRefs( [ inputRef, forwardedRef ] ) }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue ?? undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<RangeRail\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tmarks={ marks }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\trailColor={ railColor }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ rangeFillValue }\n\t\t\t\t\t/>\n\t\t\t\t\t<Track\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tclassName=\"components-range-control__track\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tstyle={ { width: fillValueOffset } }\n\t\t\t\t\t\ttrackColor={ trackColor }\n\t\t\t\t\t/>\n\t\t\t\t\t<ThumbWrapper style={ offsetStyle } disabled={ disabled }>\n\t\t\t\t\t\t<Thumb\n\t\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\t\tisFocused={ isThumbFocused }\n\t\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ThumbWrapper>\n\t\t\t\t\t{ enableTooltip && (\n\t\t\t\t\t\t<SimpleTooltip\n\t\t\t\t\t\t\tclassName=\"components-range-control__tooltip\"\n\t\t\t\t\t\t\tinputRef={ inputRef }\n\t\t\t\t\t\t\ttooltipPosition=\"bottom\"\n\t\t\t\t\t\t\trenderTooltipContent={ renderTooltipContent }\n\t\t\t\t\t\t\tshow={ isCurrentlyFocused || showTooltip }\n\t\t\t\t\t\t\tstyle={ offsetStyle }\n\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</Wrapper>\n\t\t\t\t{ afterIcon && (\n\t\t\t\t\t<AfterIconWrapper>\n\t\t\t\t\t\t<Icon icon={ afterIcon } />\n\t\t\t\t\t</AfterIconWrapper>\n\t\t\t\t) }\n\t\t\t\t{ hasInputField && (\n\t\t\t\t\t<InputNumber\n\t\t\t\t\t\taria-label={ label }\n\t\t\t\t\t\tclassName=\"components-range-control__number\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tinputMode=\"decimal\"\n\t\t\t\t\t\tisShiftStepEnabled={ isShiftStepEnabled }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnInputNumberBlur }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tshiftStep={ shiftStep }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowReset && (\n\t\t\t\t\t<ActionRightWrapper>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-range-control__reset\"\n\t\t\t\t\t\t\tdisabled={ disabled || value === undefined }\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tonClick={ handleOnReset }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</ActionRightWrapper>\n\t\t\t\t) }\n\t\t\t</Root>\n\t\t</BaseControl>\n\t);\n}\n\n/**\n * RangeControls are used to make selections from a range of incremental values.\n *\n * ```jsx\n * import { RangeControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyRangeControl = () => {\n * const [ isChecked, setChecked ] = useState( true );\n * return (\n * <RangeControl\n * help=\"Please select how transparent you would like this.\"\n * initialPosition={50}\n * label=\"Opacity\"\n * max={100}\n * min={0}\n * onChange={() => {}}\n * />\n * );\n * };\n * ```\n */\nexport const RangeControl = forwardRef( UnforwardedRangeControl );\n\nexport default RangeControl;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/range-control/index.tsx"],"names":["classnames","__","isRTL","useRef","useState","forwardRef","useInstanceId","useMergeRefs","BaseControl","Button","Icon","COLORS","floatClamp","useControlledRangeValue","clamp","InputRange","RangeRail","SimpleTooltip","ActionRightWrapper","AfterIconWrapper","BeforeIconWrapper","InputNumber","Root","Track","ThumbWrapper","Thumb","Wrapper","noop","UnforwardedRangeControl","props","forwardedRef","__nextHasNoMarginBottom","afterIcon","allowReset","beforeIcon","className","color","colorProp","ui","theme","currentInput","disabled","help","hideLabelFromVision","initialPosition","isShiftStepEnabled","label","marks","max","min","onBlur","onChange","onFocus","onMouseLeave","onMouseMove","railColor","renderTooltipContent","v","resetFallbackValue","shiftStep","showTooltip","showTooltipProp","step","trackColor","value","valueProp","withInputField","otherProps","setValue","initial","isResetPendent","hasTooltip","hasInputField","setShowTooltip","isFocused","setIsFocused","inputRef","isCurrentlyFocused","current","matches","isThumbFocused","isValueReset","currentValue","undefined","inputSliderValue","rangeFillValue","fillValue","fillValueOffset","classes","wrapperClasses","id","describedBy","enableTooltip","Number","isFinite","handleOnRangeChange","event","nextValue","parseFloat","target","handleOnChange","next","isNaN","handleOnInputNumberBlur","handleOnReset","resetValue","onChangeResetValue","handleShowTooltip","handleHideTooltip","handleOnBlur","handleOnFocus","offsetStyle","width","RangeControl"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type { ChangeEvent, FocusEvent, ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useRef, useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BaseControl from '../base-control';\nimport Button from '../button';\nimport Icon from '../icon';\nimport { COLORS } from '../utils';\nimport { floatClamp, useControlledRangeValue } from './utils';\nimport { clamp } from '../utils/math';\nimport InputRange from './input-range';\nimport RangeRail from './rail';\nimport SimpleTooltip from './tooltip';\nimport {\n\tActionRightWrapper,\n\tAfterIconWrapper,\n\tBeforeIconWrapper,\n\tInputNumber,\n\tRoot,\n\tTrack,\n\tThumbWrapper,\n\tThumb,\n\tWrapper,\n} from './styles/range-control-styles';\n\nimport type { RangeControlProps } from './types';\nimport type { WordPressComponentProps } from '../ui/context';\n\nconst noop = () => {};\n\nfunction UnforwardedRangeControl< IconProps = unknown >(\n\tprops: WordPressComponentProps<\n\t\tRangeControlProps< IconProps >,\n\t\t'input',\n\t\tfalse\n\t>,\n\tforwardedRef: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\t__nextHasNoMarginBottom = false,\n\t\tafterIcon,\n\t\tallowReset = false,\n\t\tbeforeIcon,\n\t\tclassName,\n\t\tcolor: colorProp = COLORS.ui.theme,\n\t\tcurrentInput,\n\t\tdisabled = false,\n\t\thelp,\n\t\thideLabelFromVision = false,\n\t\tinitialPosition,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmarks = false,\n\t\tmax = 100,\n\t\tmin = 0,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonFocus = noop,\n\t\tonMouseLeave = noop,\n\t\tonMouseMove = noop,\n\t\trailColor,\n\t\trenderTooltipContent = ( v ) => v,\n\t\tresetFallbackValue,\n\t\tshiftStep = 10,\n\t\tshowTooltip: showTooltipProp,\n\t\tstep = 1,\n\t\ttrackColor,\n\t\tvalue: valueProp,\n\t\twithInputField = true,\n\t\t...otherProps\n\t} = props;\n\n\tconst [ value, setValue ] = useControlledRangeValue( {\n\t\tmin,\n\t\tmax,\n\t\tvalue: valueProp ?? null,\n\t\tinitial: initialPosition,\n\t} );\n\tconst isResetPendent = useRef( false );\n\n\tlet hasTooltip = showTooltipProp;\n\tlet hasInputField = withInputField;\n\n\tif ( step === 'any' ) {\n\t\t// The tooltip and number input field are hidden when the step is \"any\"\n\t\t// because the decimals get too lengthy to fit well.\n\t\thasTooltip = false;\n\t\thasInputField = false;\n\t}\n\n\tconst [ showTooltip, setShowTooltip ] = useState( hasTooltip );\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tconst inputRef = useRef< HTMLInputElement >();\n\tconst isCurrentlyFocused = inputRef.current?.matches( ':focus' );\n\tconst isThumbFocused = ! disabled && isFocused;\n\n\tconst isValueReset = value === null;\n\tconst currentValue = value !== undefined ? value : currentInput;\n\n\tconst inputSliderValue = isValueReset ? '' : currentValue;\n\tconst rangeFillValue = isValueReset ? ( max - min ) / 2 + min : value;\n\n\tconst fillValue = isValueReset\n\t\t? 50\n\t\t: ( ( value - min ) / ( max - min ) ) * 100;\n\tconst fillValueOffset = `${ clamp( fillValue, 0, 100 ) }%`;\n\n\tconst classes = classnames( 'components-range-control', className );\n\n\tconst wrapperClasses = classnames(\n\t\t'components-range-control__wrapper',\n\t\t!! marks && 'is-marked'\n\t);\n\n\tconst id = useInstanceId(\n\t\tUnforwardedRangeControl,\n\t\t'inspector-range-control'\n\t);\n\tconst describedBy = !! help ? `${ id }__help` : undefined;\n\tconst enableTooltip = hasTooltip !== false && Number.isFinite( value );\n\n\tconst handleOnRangeChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = parseFloat( event.target.value );\n\t\tsetValue( nextValue );\n\t\tonChange( nextValue );\n\t};\n\n\tconst handleOnChange = ( next: string ) => {\n\t\tlet nextValue = parseFloat( next );\n\t\tsetValue( nextValue );\n\n\t\t/*\n\t\t * Calls onChange only when nextValue is numeric\n\t\t * otherwise may queue a reset for the blur event.\n\t\t */\n\t\tif ( ! isNaN( nextValue ) ) {\n\t\t\tif ( nextValue < min || nextValue > max ) {\n\t\t\t\tnextValue = floatClamp( nextValue, min, max ) as number;\n\t\t\t}\n\n\t\t\tonChange( nextValue );\n\t\t\tisResetPendent.current = false;\n\t\t} else if ( allowReset ) {\n\t\t\tisResetPendent.current = true;\n\t\t}\n\t};\n\n\tconst handleOnInputNumberBlur = () => {\n\t\tif ( isResetPendent.current ) {\n\t\t\thandleOnReset();\n\t\t\tisResetPendent.current = false;\n\t\t}\n\t};\n\n\tconst handleOnReset = () => {\n\t\tlet resetValue: number | null = parseFloat( `${ resetFallbackValue }` );\n\t\tlet onChangeResetValue: number | undefined = resetValue;\n\n\t\tif ( isNaN( resetValue ) ) {\n\t\t\tresetValue = null;\n\t\t\tonChangeResetValue = undefined;\n\t\t}\n\n\t\tsetValue( resetValue );\n\n\t\t/**\n\t\t * Previously, this callback would always receive undefined as\n\t\t * an argument. This behavior is unexpected, specifically\n\t\t * when resetFallbackValue is defined.\n\t\t *\n\t\t * The value of undefined is not ideal. Passing it through\n\t\t * to internal <input /> elements would change it from a\n\t\t * controlled component to an uncontrolled component.\n\t\t *\n\t\t * For now, to minimize unexpected regressions, we're going to\n\t\t * preserve the undefined callback argument, except when a\n\t\t * resetFallbackValue is defined.\n\t\t */\n\t\tonChange( onChangeResetValue );\n\t};\n\n\tconst handleShowTooltip = () => setShowTooltip( true );\n\tconst handleHideTooltip = () => setShowTooltip( false );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused( false );\n\t\thandleHideTooltip();\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused( true );\n\t\thandleShowTooltip();\n\t};\n\n\tconst offsetStyle = {\n\t\t[ isRTL() ? 'right' : 'left' ]: fillValueOffset,\n\t};\n\n\treturn (\n\t\t<BaseControl\n\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\tclassName={ classes }\n\t\t\tlabel={ label }\n\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\tid={ `${ id }` }\n\t\t\thelp={ help }\n\t\t>\n\t\t\t<Root className=\"components-range-control__root\">\n\t\t\t\t{ beforeIcon && (\n\t\t\t\t\t<BeforeIconWrapper>\n\t\t\t\t\t\t<Icon icon={ beforeIcon } />\n\t\t\t\t\t</BeforeIconWrapper>\n\t\t\t\t) }\n\t\t\t\t<Wrapper\n\t\t\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\t\t\tclassName={ wrapperClasses }\n\t\t\t\t\tcolor={ colorProp }\n\t\t\t\t\tmarks={ !! marks }\n\t\t\t\t>\n\t\t\t\t\t<InputRange\n\t\t\t\t\t\t{ ...otherProps }\n\t\t\t\t\t\tclassName=\"components-range-control__slider\"\n\t\t\t\t\t\tdescribedBy={ describedBy }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tid={ `${ id }` }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\t\t\tonChange={ handleOnRangeChange }\n\t\t\t\t\t\tonFocus={ handleOnFocus }\n\t\t\t\t\t\tonMouseMove={ onMouseMove }\n\t\t\t\t\t\tonMouseLeave={ onMouseLeave }\n\t\t\t\t\t\tref={ useMergeRefs( [ inputRef, forwardedRef ] ) }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue ?? undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<RangeRail\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tmarks={ marks }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\trailColor={ railColor }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ rangeFillValue }\n\t\t\t\t\t/>\n\t\t\t\t\t<Track\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tclassName=\"components-range-control__track\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tstyle={ { width: fillValueOffset } }\n\t\t\t\t\t\ttrackColor={ trackColor }\n\t\t\t\t\t/>\n\t\t\t\t\t<ThumbWrapper style={ offsetStyle } disabled={ disabled }>\n\t\t\t\t\t\t<Thumb\n\t\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\t\tisFocused={ isThumbFocused }\n\t\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ThumbWrapper>\n\t\t\t\t\t{ enableTooltip && (\n\t\t\t\t\t\t<SimpleTooltip\n\t\t\t\t\t\t\tclassName=\"components-range-control__tooltip\"\n\t\t\t\t\t\t\tinputRef={ inputRef }\n\t\t\t\t\t\t\ttooltipPosition=\"bottom\"\n\t\t\t\t\t\t\trenderTooltipContent={ renderTooltipContent }\n\t\t\t\t\t\t\tshow={ isCurrentlyFocused || showTooltip }\n\t\t\t\t\t\t\tstyle={ offsetStyle }\n\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</Wrapper>\n\t\t\t\t{ afterIcon && (\n\t\t\t\t\t<AfterIconWrapper>\n\t\t\t\t\t\t<Icon icon={ afterIcon } />\n\t\t\t\t\t</AfterIconWrapper>\n\t\t\t\t) }\n\t\t\t\t{ hasInputField && (\n\t\t\t\t\t<InputNumber\n\t\t\t\t\t\taria-label={ label }\n\t\t\t\t\t\tclassName=\"components-range-control__number\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tinputMode=\"decimal\"\n\t\t\t\t\t\tisShiftStepEnabled={ isShiftStepEnabled }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnInputNumberBlur }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tshiftStep={ shiftStep }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowReset && (\n\t\t\t\t\t<ActionRightWrapper>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-range-control__reset\"\n\t\t\t\t\t\t\tdisabled={ disabled || value === undefined }\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tonClick={ handleOnReset }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</ActionRightWrapper>\n\t\t\t\t) }\n\t\t\t</Root>\n\t\t</BaseControl>\n\t);\n}\n\n/**\n * RangeControls are used to make selections from a range of incremental values.\n *\n * ```jsx\n * import { RangeControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyRangeControl = () => {\n * const [ isChecked, setChecked ] = useState( true );\n * return (\n * <RangeControl\n * help=\"Please select how transparent you would like this.\"\n * initialPosition={50}\n * label=\"Opacity\"\n * max={100}\n * min={0}\n * onChange={() => {}}\n * />\n * );\n * };\n * ```\n */\nexport const RangeControl = forwardRef( UnforwardedRangeControl );\n\nexport default RangeControl;\n"]}