@wordpress/components 20.0.2-next.957ca95e4c.0 → 21.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (851) hide show
  1. package/CHANGELOG.md +56 -1
  2. package/CONTRIBUTING.md +3 -54
  3. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -9
  4. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  5. package/build/angle-picker-control/index.js +10 -0
  6. package/build/angle-picker-control/index.js.map +1 -1
  7. package/build/border-box-control/border-box-control/component.js +5 -1
  8. package/build/border-box-control/border-box-control/component.js.map +1 -1
  9. package/build/border-box-control/border-box-control-split-controls/component.js +5 -1
  10. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  11. package/build/border-control/border-control-dropdown/component.js +2 -1
  12. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  13. package/build/card/styles.js +17 -17
  14. package/build/card/styles.js.map +1 -1
  15. package/build/checkbox-control/index.js +3 -3
  16. package/build/checkbox-control/index.js.map +1 -1
  17. package/build/color-palette/index.js +1 -1
  18. package/build/color-palette/index.js.map +1 -1
  19. package/build/color-picker/input-with-slider.js +2 -1
  20. package/build/color-picker/input-with-slider.js.map +1 -1
  21. package/build/combobox-control/index.js +1 -1
  22. package/build/combobox-control/index.js.map +1 -1
  23. package/build/custom-gradient-picker/index.js +1 -1
  24. package/build/custom-gradient-picker/index.js.map +1 -1
  25. package/build/date-time/date/index.js +1 -1
  26. package/build/date-time/date/index.js.map +1 -1
  27. package/build/date-time/time/timezone.js +1 -1
  28. package/build/date-time/time/timezone.js.map +1 -1
  29. package/build/disabled/index.js +14 -6
  30. package/build/disabled/index.js.map +1 -1
  31. package/build/disabled/styles/disabled-styles.js +8 -18
  32. package/build/disabled/styles/disabled-styles.js.map +1 -1
  33. package/build/drop-zone/index.js +44 -9
  34. package/build/drop-zone/index.js.map +1 -1
  35. package/build/drop-zone/provider.js.map +1 -1
  36. package/build/drop-zone/types.js +6 -0
  37. package/build/drop-zone/types.js.map +1 -0
  38. package/build/flex/flex/hook.js +6 -30
  39. package/build/flex/flex/hook.js.map +1 -1
  40. package/build/focal-point-picker/controls.js +10 -5
  41. package/build/focal-point-picker/controls.js.map +1 -1
  42. package/build/focal-point-picker/focal-point.js.map +1 -1
  43. package/build/focal-point-picker/grid.js.map +1 -1
  44. package/build/focal-point-picker/index.js +83 -16
  45. package/build/focal-point-picker/index.js.map +1 -1
  46. package/build/focal-point-picker/media.js +4 -0
  47. package/build/focal-point-picker/media.js.map +1 -1
  48. package/build/focal-point-picker/styles/focal-point-picker-style.js +70 -41
  49. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  50. package/build/focal-point-picker/styles/focal-point-style.js +12 -12
  51. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  52. package/build/focal-point-picker/types.js +6 -0
  53. package/build/focal-point-picker/types.js.map +1 -0
  54. package/build/focal-point-picker/utils.js +6 -6
  55. package/build/focal-point-picker/utils.js.map +1 -1
  56. package/build/font-size-picker/index.js +11 -0
  57. package/build/font-size-picker/index.js.map +1 -1
  58. package/build/font-size-picker/utils.js +1 -1
  59. package/build/font-size-picker/utils.js.map +1 -1
  60. package/build/form-file-upload/index.js +22 -2
  61. package/build/form-file-upload/index.js.map +1 -1
  62. package/build/form-file-upload/types.js +6 -0
  63. package/build/form-file-upload/types.js.map +1 -0
  64. package/build/form-toggle/index.js +1 -3
  65. package/build/form-toggle/index.js.map +1 -1
  66. package/build/form-token-field/index.js +4 -6
  67. package/build/form-token-field/index.js.map +1 -1
  68. package/build/form-token-field/suggestions-list.js +1 -3
  69. package/build/form-token-field/suggestions-list.js.map +1 -1
  70. package/build/gradient-picker/index.js +25 -26
  71. package/build/gradient-picker/index.js.map +1 -1
  72. package/build/icon/index.js +1 -2
  73. package/build/icon/index.js.map +1 -1
  74. package/build/input-control/input-base.js +3 -2
  75. package/build/input-control/input-base.js.map +1 -1
  76. package/build/input-control/label.js +2 -2
  77. package/build/input-control/label.js.map +1 -1
  78. package/build/input-control/styles/input-control-styles.js +41 -128
  79. package/build/input-control/styles/input-control-styles.js.map +1 -1
  80. package/build/modal/aria-helper.js +3 -10
  81. package/build/modal/aria-helper.js.map +1 -1
  82. package/build/navigable-container/container.js +5 -1
  83. package/build/navigable-container/container.js.map +1 -1
  84. package/build/navigable-container/menu.js +10 -12
  85. package/build/navigable-container/menu.js.map +1 -1
  86. package/build/navigable-container/tabbable.js +2 -4
  87. package/build/navigable-container/tabbable.js.map +1 -1
  88. package/build/navigator/navigator-button/hook.js +1 -1
  89. package/build/navigator/navigator-button/hook.js.map +1 -1
  90. package/build/navigator/navigator-screen/component.js +2 -2
  91. package/build/navigator/navigator-screen/component.js.map +1 -1
  92. package/build/number-control/index.js +29 -25
  93. package/build/number-control/index.js.map +1 -1
  94. package/build/number-control/types.js +6 -0
  95. package/build/number-control/types.js.map +1 -0
  96. package/build/placeholder/index.js +1 -3
  97. package/build/placeholder/index.js.map +1 -1
  98. package/build/popover/index.js +155 -154
  99. package/build/popover/index.js.map +1 -1
  100. package/build/popover/types.js +6 -0
  101. package/build/popover/types.js.map +1 -0
  102. package/build/popover/utils.js +119 -24
  103. package/build/popover/utils.js.map +1 -1
  104. package/build/radio-control/index.js +7 -4
  105. package/build/radio-control/index.js.map +1 -1
  106. package/build/range-control/index.js +4 -1
  107. package/build/range-control/index.js.map +1 -1
  108. package/build/range-control/styles/range-control-styles.js +33 -33
  109. package/build/range-control/styles/range-control-styles.js.map +1 -1
  110. package/build/sandbox/index.js +2 -2
  111. package/build/sandbox/index.js.map +1 -1
  112. package/build/search-control/index.js +38 -10
  113. package/build/search-control/index.js.map +1 -1
  114. package/build/search-control/types.js +6 -0
  115. package/build/search-control/types.js.map +1 -0
  116. package/build/select-control/index.native.js +2 -1
  117. package/build/select-control/index.native.js.map +1 -1
  118. package/build/tab-panel/index.js +48 -9
  119. package/build/tab-panel/index.js.map +1 -1
  120. package/build/tab-panel/types.js +6 -0
  121. package/build/tab-panel/types.js.map +1 -0
  122. package/build/text-control/index.js +2 -0
  123. package/build/text-control/index.js.map +1 -1
  124. package/build/textarea-control/index.js +3 -3
  125. package/build/textarea-control/index.js.map +1 -1
  126. package/build/toggle-control/index.js +44 -4
  127. package/build/toggle-control/index.js.map +1 -1
  128. package/build/toggle-control/types.js +6 -0
  129. package/build/toggle-control/types.js.map +1 -0
  130. package/build/toggle-group-control/toggle-group-control/component.js +2 -2
  131. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  132. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +1 -1
  133. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  134. package/build/tooltip/index.js +1 -1
  135. package/build/tooltip/index.js.map +1 -1
  136. package/build/ui/context/context-connect.js +31 -22
  137. package/build/ui/context/context-connect.js.map +1 -1
  138. package/build/ui/context/context-system-provider.js +4 -3
  139. package/build/ui/context/context-system-provider.js.map +1 -1
  140. package/build/unit-control/index.js +1 -1
  141. package/build/unit-control/index.js.map +1 -1
  142. package/build/unit-control/styles/unit-control-styles.js +9 -9
  143. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  144. package/build/utils/colors-values.js +2 -30
  145. package/build/utils/colors-values.js.map +1 -1
  146. package/build/utils/math.js +4 -4
  147. package/build/utils/math.js.map +1 -1
  148. package/build/utils/values.js +62 -6
  149. package/build/utils/values.js.map +1 -1
  150. package/build/view/component.js +6 -7
  151. package/build/view/component.js.map +1 -1
  152. package/build/view/types.js +6 -0
  153. package/build/view/types.js.map +1 -0
  154. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -9
  155. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  156. package/build-module/angle-picker-control/index.js +9 -0
  157. package/build-module/angle-picker-control/index.js.map +1 -1
  158. package/build-module/border-box-control/border-box-control/component.js +5 -1
  159. package/build-module/border-box-control/border-box-control/component.js.map +1 -1
  160. package/build-module/border-box-control/border-box-control-split-controls/component.js +5 -1
  161. package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  162. package/build-module/border-control/border-control-dropdown/component.js +2 -1
  163. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  164. package/build-module/card/styles.js +17 -17
  165. package/build-module/card/styles.js.map +1 -1
  166. package/build-module/checkbox-control/index.js +3 -3
  167. package/build-module/checkbox-control/index.js.map +1 -1
  168. package/build-module/color-palette/index.js +1 -1
  169. package/build-module/color-palette/index.js.map +1 -1
  170. package/build-module/color-picker/input-with-slider.js +2 -1
  171. package/build-module/color-picker/input-with-slider.js.map +1 -1
  172. package/build-module/combobox-control/index.js +1 -1
  173. package/build-module/combobox-control/index.js.map +1 -1
  174. package/build-module/custom-gradient-picker/index.js +1 -1
  175. package/build-module/custom-gradient-picker/index.js.map +1 -1
  176. package/build-module/date-time/date/index.js +2 -3
  177. package/build-module/date-time/date/index.js.map +1 -1
  178. package/build-module/date-time/time/timezone.js +1 -1
  179. package/build-module/date-time/time/timezone.js.map +1 -1
  180. package/build-module/disabled/index.js +16 -8
  181. package/build-module/disabled/index.js.map +1 -1
  182. package/build-module/disabled/styles/disabled-styles.js +6 -12
  183. package/build-module/disabled/styles/disabled-styles.js.map +1 -1
  184. package/build-module/drop-zone/index.js +40 -9
  185. package/build-module/drop-zone/index.js.map +1 -1
  186. package/build-module/drop-zone/provider.js.map +1 -1
  187. package/build-module/drop-zone/types.js +2 -0
  188. package/build-module/drop-zone/types.js.map +1 -0
  189. package/build-module/flex/flex/hook.js +7 -29
  190. package/build-module/flex/flex/hook.js.map +1 -1
  191. package/build-module/focal-point-picker/controls.js +11 -6
  192. package/build-module/focal-point-picker/controls.js.map +1 -1
  193. package/build-module/focal-point-picker/focal-point.js.map +1 -1
  194. package/build-module/focal-point-picker/grid.js.map +1 -1
  195. package/build-module/focal-point-picker/index.js +81 -16
  196. package/build-module/focal-point-picker/index.js.map +1 -1
  197. package/build-module/focal-point-picker/media.js +4 -0
  198. package/build-module/focal-point-picker/media.js.map +1 -1
  199. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +68 -40
  200. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  201. package/build-module/focal-point-picker/styles/focal-point-style.js +12 -12
  202. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  203. package/build-module/focal-point-picker/types.js +2 -0
  204. package/build-module/focal-point-picker/types.js.map +1 -0
  205. package/build-module/focal-point-picker/utils.js +6 -6
  206. package/build-module/focal-point-picker/utils.js.map +1 -1
  207. package/build-module/font-size-picker/index.js +10 -0
  208. package/build-module/font-size-picker/index.js.map +1 -1
  209. package/build-module/font-size-picker/utils.js +1 -1
  210. package/build-module/font-size-picker/utils.js.map +1 -1
  211. package/build-module/form-file-upload/index.js +21 -4
  212. package/build-module/form-file-upload/index.js.map +1 -1
  213. package/build-module/form-file-upload/types.js +2 -0
  214. package/build-module/form-file-upload/types.js.map +1 -0
  215. package/build-module/form-toggle/index.js +1 -3
  216. package/build-module/form-toggle/index.js.map +1 -1
  217. package/build-module/form-token-field/index.js +4 -5
  218. package/build-module/form-token-field/index.js.map +1 -1
  219. package/build-module/form-token-field/suggestions-list.js +1 -2
  220. package/build-module/form-token-field/suggestions-list.js.map +1 -1
  221. package/build-module/gradient-picker/index.js +25 -26
  222. package/build-module/gradient-picker/index.js.map +1 -1
  223. package/build-module/icon/index.js +1 -2
  224. package/build-module/icon/index.js.map +1 -1
  225. package/build-module/input-control/input-base.js +4 -3
  226. package/build-module/input-control/input-base.js.map +1 -1
  227. package/build-module/input-control/label.js +3 -3
  228. package/build-module/input-control/label.js.map +1 -1
  229. package/build-module/input-control/styles/input-control-styles.js +41 -127
  230. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  231. package/build-module/modal/aria-helper.js +3 -8
  232. package/build-module/modal/aria-helper.js.map +1 -1
  233. package/build-module/navigable-container/container.js +5 -1
  234. package/build-module/navigable-container/container.js.map +1 -1
  235. package/build-module/navigable-container/menu.js +10 -11
  236. package/build-module/navigable-container/menu.js.map +1 -1
  237. package/build-module/navigable-container/tabbable.js +2 -3
  238. package/build-module/navigable-container/tabbable.js.map +1 -1
  239. package/build-module/navigator/navigator-button/hook.js +1 -1
  240. package/build-module/navigator/navigator-button/hook.js.map +1 -1
  241. package/build-module/navigator/navigator-screen/component.js +2 -2
  242. package/build-module/navigator/navigator-screen/component.js.map +1 -1
  243. package/build-module/number-control/index.js +31 -23
  244. package/build-module/number-control/index.js.map +1 -1
  245. package/build-module/number-control/types.js +2 -0
  246. package/build-module/number-control/types.js.map +1 -0
  247. package/build-module/placeholder/index.js +1 -3
  248. package/build-module/placeholder/index.js.map +1 -1
  249. package/build-module/popover/index.js +157 -156
  250. package/build-module/popover/index.js.map +1 -1
  251. package/build-module/popover/types.js +2 -0
  252. package/build-module/popover/types.js.map +1 -0
  253. package/build-module/popover/utils.js +112 -23
  254. package/build-module/popover/utils.js.map +1 -1
  255. package/build-module/radio-control/index.js +7 -5
  256. package/build-module/radio-control/index.js.map +1 -1
  257. package/build-module/range-control/index.js +4 -1
  258. package/build-module/range-control/index.js.map +1 -1
  259. package/build-module/range-control/styles/range-control-styles.js +33 -33
  260. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  261. package/build-module/sandbox/index.js +2 -2
  262. package/build-module/sandbox/index.js.map +1 -1
  263. package/build-module/search-control/index.js +34 -7
  264. package/build-module/search-control/index.js.map +1 -1
  265. package/build-module/search-control/types.js +2 -0
  266. package/build-module/search-control/types.js.map +1 -0
  267. package/build-module/select-control/index.native.js +1 -1
  268. package/build-module/select-control/index.native.js.map +1 -1
  269. package/build-module/tab-panel/index.js +46 -10
  270. package/build-module/tab-panel/index.js.map +1 -1
  271. package/build-module/tab-panel/types.js +2 -0
  272. package/build-module/tab-panel/types.js.map +1 -0
  273. package/build-module/text-control/index.js +2 -0
  274. package/build-module/text-control/index.js.map +1 -1
  275. package/build-module/textarea-control/index.js +3 -3
  276. package/build-module/textarea-control/index.js.map +1 -1
  277. package/build-module/toggle-control/index.js +38 -4
  278. package/build-module/toggle-control/index.js.map +1 -1
  279. package/build-module/toggle-control/types.js +2 -0
  280. package/build-module/toggle-control/types.js.map +1 -0
  281. package/build-module/toggle-group-control/toggle-group-control/component.js +2 -2
  282. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  283. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +1 -1
  284. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  285. package/build-module/tooltip/index.js +1 -1
  286. package/build-module/tooltip/index.js.map +1 -1
  287. package/build-module/ui/context/context-connect.js +30 -23
  288. package/build-module/ui/context/context-connect.js.map +1 -1
  289. package/build-module/ui/context/context-system-provider.js +5 -4
  290. package/build-module/ui/context/context-system-provider.js.map +1 -1
  291. package/build-module/unit-control/index.js +1 -1
  292. package/build-module/unit-control/index.js.map +1 -1
  293. package/build-module/unit-control/styles/unit-control-styles.js +9 -9
  294. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  295. package/build-module/utils/colors-values.js +2 -30
  296. package/build-module/utils/colors-values.js.map +1 -1
  297. package/build-module/utils/math.js +4 -4
  298. package/build-module/utils/math.js.map +1 -1
  299. package/build-module/utils/values.js +48 -6
  300. package/build-module/utils/values.js.map +1 -1
  301. package/build-module/view/component.js +5 -8
  302. package/build-module/view/component.js.map +1 -1
  303. package/build-module/view/types.js +2 -0
  304. package/build-module/view/types.js.map +1 -0
  305. package/build-style/style-rtl.css +2 -28
  306. package/build-style/style.css +2 -28
  307. package/build-types/base-field/hook.d.ts +54 -55
  308. package/build-types/base-field/hook.d.ts.map +1 -1
  309. package/build-types/border-box-control/border-box-control/component.d.ts +10 -2
  310. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  311. package/build-types/border-box-control/border-box-control/hook.d.ts +56 -57
  312. package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -1
  313. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +2 -1
  314. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts.map +1 -1
  315. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +55 -56
  316. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -1
  317. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +9 -2
  318. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
  319. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +56 -57
  320. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -1
  321. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts +2 -1
  322. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts.map +1 -1
  323. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +55 -56
  324. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -1
  325. package/build-types/border-box-control/types.d.ts +5 -4
  326. package/build-types/border-box-control/types.d.ts.map +1 -1
  327. package/build-types/border-control/border-control/component.d.ts +14 -2
  328. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  329. package/build-types/border-control/border-control/hook.d.ts +56 -57
  330. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  331. package/build-types/border-control/border-control-dropdown/component.d.ts +10 -2
  332. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  333. package/build-types/border-control/border-control-dropdown/hook.d.ts +56 -57
  334. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  335. package/build-types/border-control/border-control-style-picker/component.d.ts +6 -2
  336. package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
  337. package/build-types/border-control/border-control-style-picker/hook.d.ts +55 -56
  338. package/build-types/border-control/border-control-style-picker/hook.d.ts.map +1 -1
  339. package/build-types/border-control/stories/index.d.ts +74 -6
  340. package/build-types/border-control/stories/index.d.ts.map +1 -1
  341. package/build-types/border-control/types.d.ts +6 -8
  342. package/build-types/border-control/types.d.ts.map +1 -1
  343. package/build-types/button-group/index.d.ts +1 -3
  344. package/build-types/button-group/index.d.ts.map +1 -1
  345. package/build-types/card/card/component.d.ts +9 -2
  346. package/build-types/card/card/component.d.ts.map +1 -1
  347. package/build-types/card/card/hook.d.ts +55 -56
  348. package/build-types/card/card/hook.d.ts.map +1 -1
  349. package/build-types/card/card-body/component.d.ts +9 -2
  350. package/build-types/card/card-body/component.d.ts.map +1 -1
  351. package/build-types/card/card-body/hook.d.ts +55 -56
  352. package/build-types/card/card-body/hook.d.ts.map +1 -1
  353. package/build-types/card/card-divider/component.d.ts +7 -2
  354. package/build-types/card/card-divider/component.d.ts.map +1 -1
  355. package/build-types/card/card-divider/hook.d.ts +55 -55
  356. package/build-types/card/card-footer/component.d.ts +11 -2
  357. package/build-types/card/card-footer/component.d.ts.map +1 -1
  358. package/build-types/card/card-footer/hook.d.ts +55 -56
  359. package/build-types/card/card-footer/hook.d.ts.map +1 -1
  360. package/build-types/card/card-header/component.d.ts +1 -1
  361. package/build-types/card/card-header/component.d.ts.map +1 -1
  362. package/build-types/card/card-header/hook.d.ts +55 -56
  363. package/build-types/card/card-header/hook.d.ts.map +1 -1
  364. package/build-types/card/card-media/component.d.ts +2 -1
  365. package/build-types/card/card-media/component.d.ts.map +1 -1
  366. package/build-types/card/card-media/hook.d.ts +55 -56
  367. package/build-types/card/card-media/hook.d.ts.map +1 -1
  368. package/build-types/checkbox-control/index.d.ts +1 -1
  369. package/build-types/checkbox-control/index.d.ts.map +1 -1
  370. package/build-types/checkbox-control/stories/index.d.ts.map +1 -1
  371. package/build-types/checkbox-control/types.d.ts +1 -1
  372. package/build-types/checkbox-control/types.d.ts.map +1 -1
  373. package/build-types/color-indicator/index.d.ts +1 -3
  374. package/build-types/color-indicator/index.d.ts.map +1 -1
  375. package/build-types/color-palette/styles.d.ts +1 -3
  376. package/build-types/color-palette/styles.d.ts.map +1 -1
  377. package/build-types/color-picker/component.d.ts +2 -1
  378. package/build-types/color-picker/component.d.ts.map +1 -1
  379. package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
  380. package/build-types/color-picker/styles.d.ts +12 -25
  381. package/build-types/color-picker/styles.d.ts.map +1 -1
  382. package/build-types/confirm-dialog/component.d.ts +4 -8
  383. package/build-types/confirm-dialog/component.d.ts.map +1 -1
  384. package/build-types/date-time/date/styles.d.ts +4 -8
  385. package/build-types/date-time/date/styles.d.ts.map +1 -1
  386. package/build-types/date-time/date-time/styles.d.ts +4 -6
  387. package/build-types/date-time/date-time/styles.d.ts.map +1 -1
  388. package/build-types/date-time/time/styles.d.ts +21 -43
  389. package/build-types/date-time/time/styles.d.ts.map +1 -1
  390. package/build-types/disabled/index.d.ts +1 -1
  391. package/build-types/disabled/index.d.ts.map +1 -1
  392. package/build-types/disabled/styles/disabled-styles.d.ts +1 -5
  393. package/build-types/disabled/styles/disabled-styles.d.ts.map +1 -1
  394. package/build-types/divider/component.d.ts +7 -2
  395. package/build-types/divider/component.d.ts.map +1 -1
  396. package/build-types/drop-zone/index.d.ts +29 -0
  397. package/build-types/drop-zone/index.d.ts.map +1 -0
  398. package/build-types/drop-zone/provider.d.ts +5 -0
  399. package/build-types/drop-zone/provider.d.ts.map +1 -0
  400. package/build-types/drop-zone/stories/index.d.ts +12 -0
  401. package/build-types/drop-zone/stories/index.d.ts.map +1 -0
  402. package/build-types/drop-zone/types.d.ts +29 -0
  403. package/build-types/drop-zone/types.d.ts.map +1 -0
  404. package/build-types/dropdown/dropdown-content-wrapper.d.ts +2 -1
  405. package/build-types/dropdown/dropdown-content-wrapper.d.ts.map +1 -1
  406. package/build-types/elevation/component.d.ts +2 -1
  407. package/build-types/elevation/component.d.ts.map +1 -1
  408. package/build-types/elevation/hook.d.ts +54 -55
  409. package/build-types/elevation/hook.d.ts.map +1 -1
  410. package/build-types/external-link/index.d.ts +1 -1
  411. package/build-types/external-link/index.d.ts.map +1 -1
  412. package/build-types/external-link/styles/external-link-styles.d.ts +1 -1
  413. package/build-types/flex/flex/component.d.ts +2 -1
  414. package/build-types/flex/flex/component.d.ts.map +1 -1
  415. package/build-types/flex/flex/hook.d.ts +55 -56
  416. package/build-types/flex/flex/hook.d.ts.map +1 -1
  417. package/build-types/flex/flex-block/component.d.ts +2 -1
  418. package/build-types/flex/flex-block/component.d.ts.map +1 -1
  419. package/build-types/flex/flex-block/hook.d.ts +55 -56
  420. package/build-types/flex/flex-block/hook.d.ts.map +1 -1
  421. package/build-types/flex/flex-item/component.d.ts +2 -1
  422. package/build-types/flex/flex-item/component.d.ts.map +1 -1
  423. package/build-types/flex/flex-item/hook.d.ts +55 -56
  424. package/build-types/flex/flex-item/hook.d.ts.map +1 -1
  425. package/build-types/focal-point-picker/controls.d.ts +4 -0
  426. package/build-types/focal-point-picker/controls.d.ts.map +1 -0
  427. package/build-types/focal-point-picker/focal-point.d.ts +5 -0
  428. package/build-types/focal-point-picker/focal-point.d.ts.map +1 -0
  429. package/build-types/focal-point-picker/grid.d.ts +5 -0
  430. package/build-types/focal-point-picker/grid.d.ts.map +1 -0
  431. package/build-types/focal-point-picker/index.d.ts +51 -0
  432. package/build-types/focal-point-picker/index.d.ts.map +1 -0
  433. package/build-types/focal-point-picker/media.d.ts +4 -0
  434. package/build-types/focal-point-picker/media.d.ts.map +1 -0
  435. package/build-types/focal-point-picker/stories/index.d.ts +15 -0
  436. package/build-types/focal-point-picker/stories/index.d.ts.map +1 -0
  437. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +56 -0
  438. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts.map +1 -0
  439. package/build-types/focal-point-picker/styles/focal-point-style.d.ts +19 -0
  440. package/build-types/focal-point-picker/styles/focal-point-style.d.ts.map +1 -0
  441. package/build-types/focal-point-picker/types.d.ts +79 -0
  442. package/build-types/focal-point-picker/types.d.ts.map +1 -0
  443. package/build-types/focal-point-picker/utils.d.ts +26 -0
  444. package/build-types/focal-point-picker/utils.d.ts.map +1 -0
  445. package/build-types/form-file-upload/index.d.ts +22 -0
  446. package/build-types/form-file-upload/index.d.ts.map +1 -0
  447. package/build-types/form-file-upload/stories/index.d.ts +23 -0
  448. package/build-types/form-file-upload/stories/index.d.ts.map +1 -0
  449. package/build-types/form-file-upload/test/index.d.ts +2 -0
  450. package/build-types/form-file-upload/test/index.d.ts.map +1 -0
  451. package/build-types/form-file-upload/types.d.ts +63 -0
  452. package/build-types/form-file-upload/types.d.ts.map +1 -0
  453. package/build-types/form-toggle/index.d.ts +1 -1
  454. package/build-types/form-toggle/index.d.ts.map +1 -1
  455. package/build-types/form-token-field/index.d.ts.map +1 -1
  456. package/build-types/form-token-field/styles.d.ts +1 -3
  457. package/build-types/form-token-field/styles.d.ts.map +1 -1
  458. package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
  459. package/build-types/form-token-field/token-input.d.ts +1 -3
  460. package/build-types/form-token-field/token-input.d.ts.map +1 -1
  461. package/build-types/grid/component.d.ts +2 -1
  462. package/build-types/grid/component.d.ts.map +1 -1
  463. package/build-types/grid/hook.d.ts +55 -56
  464. package/build-types/grid/hook.d.ts.map +1 -1
  465. package/build-types/h-stack/component.d.ts +5 -2
  466. package/build-types/h-stack/component.d.ts.map +1 -1
  467. package/build-types/h-stack/hook.d.ts +55 -56
  468. package/build-types/h-stack/hook.d.ts.map +1 -1
  469. package/build-types/heading/component.d.ts +4 -2
  470. package/build-types/heading/component.d.ts.map +1 -1
  471. package/build-types/heading/hook.d.ts +54 -55
  472. package/build-types/heading/hook.d.ts.map +1 -1
  473. package/build-types/input-control/index.d.ts +1 -1
  474. package/build-types/input-control/index.d.ts.map +1 -1
  475. package/build-types/input-control/input-base.d.ts.map +1 -1
  476. package/build-types/input-control/input-field.d.ts +1 -3
  477. package/build-types/input-control/input-field.d.ts.map +1 -1
  478. package/build-types/input-control/input-prefix-wrapper.d.ts +2 -1
  479. package/build-types/input-control/input-prefix-wrapper.d.ts.map +1 -1
  480. package/build-types/input-control/input-suffix-wrapper.d.ts +2 -1
  481. package/build-types/input-control/input-suffix-wrapper.d.ts.map +1 -1
  482. package/build-types/input-control/label.d.ts.map +1 -1
  483. package/build-types/input-control/stories/index.d.ts +5 -5
  484. package/build-types/input-control/stories/index.d.ts.map +1 -1
  485. package/build-types/input-control/styles/input-control-styles.d.ts +2 -6
  486. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  487. package/build-types/input-control/types.d.ts +3 -0
  488. package/build-types/input-control/types.d.ts.map +1 -1
  489. package/build-types/item-group/item/component.d.ts +2 -1
  490. package/build-types/item-group/item/component.d.ts.map +1 -1
  491. package/build-types/item-group/item/hook.d.ts +54 -55
  492. package/build-types/item-group/item/hook.d.ts.map +1 -1
  493. package/build-types/item-group/item-group/component.d.ts +2 -1
  494. package/build-types/item-group/item-group/component.d.ts.map +1 -1
  495. package/build-types/item-group/item-group/hook.d.ts +54 -55
  496. package/build-types/item-group/item-group/hook.d.ts.map +1 -1
  497. package/build-types/modal/aria-helper.d.ts.map +1 -1
  498. package/build-types/navigable-container/menu.d.ts.map +1 -1
  499. package/build-types/navigable-container/tabbable.d.ts.map +1 -1
  500. package/build-types/navigator/navigator-back-button/component.d.ts +4 -2
  501. package/build-types/navigator/navigator-back-button/component.d.ts.map +1 -1
  502. package/build-types/navigator/navigator-back-button/hook.d.ts +59 -60
  503. package/build-types/navigator/navigator-back-button/hook.d.ts.map +1 -1
  504. package/build-types/navigator/navigator-button/component.d.ts +7 -2
  505. package/build-types/navigator/navigator-button/component.d.ts.map +1 -1
  506. package/build-types/navigator/navigator-button/hook.d.ts +59 -60
  507. package/build-types/navigator/navigator-button/hook.d.ts.map +1 -1
  508. package/build-types/navigator/navigator-provider/component.d.ts +2 -1
  509. package/build-types/navigator/navigator-provider/component.d.ts.map +1 -1
  510. package/build-types/navigator/navigator-screen/component.d.ts +1 -1
  511. package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
  512. package/build-types/number-control/index.d.ts +10 -28
  513. package/build-types/number-control/index.d.ts.map +1 -1
  514. package/build-types/number-control/styles/number-control-styles.d.ts +1 -1
  515. package/build-types/number-control/types.d.ts +72 -0
  516. package/build-types/number-control/types.d.ts.map +1 -0
  517. package/build-types/placeholder/index.d.ts +1 -1
  518. package/build-types/placeholder/index.d.ts.map +1 -1
  519. package/build-types/popover/index.d.ts +28 -24
  520. package/build-types/popover/index.d.ts.map +1 -1
  521. package/build-types/popover/stories/index.d.ts +12 -0
  522. package/build-types/popover/stories/index.d.ts.map +1 -0
  523. package/build-types/popover/types.d.ts +161 -0
  524. package/build-types/popover/types.d.ts.map +1 -0
  525. package/build-types/popover/utils.d.ts +42 -24
  526. package/build-types/popover/utils.d.ts.map +1 -1
  527. package/build-types/radio-control/index.d.ts +1 -1
  528. package/build-types/radio-control/index.d.ts.map +1 -1
  529. package/build-types/range-control/index.d.ts +2 -4
  530. package/build-types/range-control/index.d.ts.map +1 -1
  531. package/build-types/range-control/input-range.d.ts +2 -4
  532. package/build-types/range-control/input-range.d.ts.map +1 -1
  533. package/build-types/range-control/styles/range-control-styles.d.ts +5 -10
  534. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  535. package/build-types/resizable-box/index.d.ts +1 -1
  536. package/build-types/resizable-box/resize-tooltip/index.d.ts +1 -1
  537. package/build-types/resizable-box/resize-tooltip/label.d.ts +1 -1
  538. package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts +1 -3
  539. package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts.map +1 -1
  540. package/build-types/scrollable/component.d.ts +2 -1
  541. package/build-types/scrollable/component.d.ts.map +1 -1
  542. package/build-types/scrollable/hook.d.ts +55 -56
  543. package/build-types/scrollable/hook.d.ts.map +1 -1
  544. package/build-types/search-control/index.d.ts +29 -0
  545. package/build-types/search-control/index.d.ts.map +1 -0
  546. package/build-types/search-control/stories/index.d.ts +47 -0
  547. package/build-types/search-control/stories/index.d.ts.map +1 -0
  548. package/build-types/search-control/types.d.ts +39 -0
  549. package/build-types/search-control/types.d.ts.map +1 -0
  550. package/build-types/select-control/index.d.ts +1 -3
  551. package/build-types/select-control/index.d.ts.map +1 -1
  552. package/build-types/select-control/stories/index.d.ts +2 -6
  553. package/build-types/select-control/stories/index.d.ts.map +1 -1
  554. package/build-types/select-control/styles/select-control-styles.d.ts +1 -3
  555. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  556. package/build-types/spacer/component.d.ts +2 -1
  557. package/build-types/spacer/component.d.ts.map +1 -1
  558. package/build-types/spacer/hook.d.ts +55 -56
  559. package/build-types/spacer/hook.d.ts.map +1 -1
  560. package/build-types/spinner/index.d.ts +1 -3
  561. package/build-types/spinner/index.d.ts.map +1 -1
  562. package/build-types/surface/component.d.ts +2 -1
  563. package/build-types/surface/component.d.ts.map +1 -1
  564. package/build-types/surface/hook.d.ts +55 -56
  565. package/build-types/surface/hook.d.ts.map +1 -1
  566. package/build-types/tab-panel/index.d.ts +42 -0
  567. package/build-types/tab-panel/index.d.ts.map +1 -0
  568. package/build-types/tab-panel/stories/index.d.ts +12 -0
  569. package/build-types/tab-panel/stories/index.d.ts.map +1 -0
  570. package/build-types/tab-panel/test/index.d.ts +2 -0
  571. package/build-types/tab-panel/test/index.d.ts.map +1 -0
  572. package/build-types/tab-panel/types.d.ts +64 -0
  573. package/build-types/tab-panel/types.d.ts.map +1 -0
  574. package/build-types/text/component.d.ts +1 -1
  575. package/build-types/text/component.d.ts.map +1 -1
  576. package/build-types/text/hook.d.ts +55 -56
  577. package/build-types/text/hook.d.ts.map +1 -1
  578. package/build-types/text-control/index.d.ts +2 -4
  579. package/build-types/text-control/index.d.ts.map +1 -1
  580. package/build-types/text-control/types.d.ts +1 -1
  581. package/build-types/text-control/types.d.ts.map +1 -1
  582. package/build-types/textarea-control/index.d.ts +1 -1
  583. package/build-types/textarea-control/index.d.ts.map +1 -1
  584. package/build-types/textarea-control/types.d.ts +1 -1
  585. package/build-types/textarea-control/types.d.ts.map +1 -1
  586. package/build-types/toggle-control/index.d.ts +26 -0
  587. package/build-types/toggle-control/index.d.ts.map +1 -0
  588. package/build-types/toggle-control/stories/index.d.ts +13 -0
  589. package/build-types/toggle-control/stories/index.d.ts.map +1 -0
  590. package/build-types/toggle-control/test/index.d.ts +2 -0
  591. package/build-types/toggle-control/test/index.d.ts.map +1 -0
  592. package/build-types/toggle-control/types.d.ts +20 -0
  593. package/build-types/toggle-control/types.d.ts.map +1 -0
  594. package/build-types/toggle-group-control/stories/index.d.ts +4 -2
  595. package/build-types/toggle-group-control/stories/index.d.ts.map +1 -1
  596. package/build-types/toggle-group-control/toggle-group-control/component.d.ts +12 -2
  597. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  598. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +2 -4
  599. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  600. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts +2 -1
  601. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  602. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +3 -5
  603. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts.map +1 -1
  604. package/build-types/toggle-group-control/types.d.ts +2 -2
  605. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  606. package/build-types/tools-panel/tools-panel/component.d.ts +2 -1
  607. package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
  608. package/build-types/tools-panel/tools-panel/hook.d.ts +55 -56
  609. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  610. package/build-types/tools-panel/tools-panel-header/component.d.ts +2 -1
  611. package/build-types/tools-panel/tools-panel-header/component.d.ts.map +1 -1
  612. package/build-types/tools-panel/tools-panel-header/hook.d.ts +55 -56
  613. package/build-types/tools-panel/tools-panel-header/hook.d.ts.map +1 -1
  614. package/build-types/tools-panel/tools-panel-item/component.d.ts +6 -2
  615. package/build-types/tools-panel/tools-panel-item/component.d.ts.map +1 -1
  616. package/build-types/tools-panel/tools-panel-item/hook.d.ts +55 -56
  617. package/build-types/tools-panel/tools-panel-item/hook.d.ts.map +1 -1
  618. package/build-types/truncate/component.d.ts +2 -1
  619. package/build-types/truncate/component.d.ts.map +1 -1
  620. package/build-types/truncate/hook.d.ts +55 -56
  621. package/build-types/truncate/hook.d.ts.map +1 -1
  622. package/build-types/ui/context/context-connect.d.ts +10 -9
  623. package/build-types/ui/context/context-connect.d.ts.map +1 -1
  624. package/build-types/ui/context/context-system-provider.d.ts.map +1 -1
  625. package/build-types/ui/context/test/context-connect.d.ts +2 -0
  626. package/build-types/ui/context/test/context-connect.d.ts.map +1 -0
  627. package/build-types/ui/context/test/wordpress-component.d.ts +2 -0
  628. package/build-types/ui/context/test/wordpress-component.d.ts.map +1 -0
  629. package/build-types/ui/context/wordpress-component.d.ts +8 -9
  630. package/build-types/ui/context/wordpress-component.d.ts.map +1 -1
  631. package/build-types/ui/control-group/component.d.ts +4 -1
  632. package/build-types/ui/control-group/component.d.ts.map +1 -1
  633. package/build-types/ui/control-group/hook.d.ts +55 -56
  634. package/build-types/ui/control-group/hook.d.ts.map +1 -1
  635. package/build-types/ui/control-label/component.d.ts +4 -1
  636. package/build-types/ui/control-label/component.d.ts.map +1 -1
  637. package/build-types/ui/control-label/hook.d.ts +55 -56
  638. package/build-types/ui/control-label/hook.d.ts.map +1 -1
  639. package/build-types/ui/form-group/form-group.d.ts +4 -8
  640. package/build-types/ui/form-group/form-group.d.ts.map +1 -1
  641. package/build-types/ui/form-group/use-form-group.d.ts +112 -114
  642. package/build-types/ui/form-group/use-form-group.d.ts.map +1 -1
  643. package/build-types/ui/shortcut/component.d.ts +2 -1
  644. package/build-types/ui/shortcut/component.d.ts.map +1 -1
  645. package/build-types/ui/spinner/component.d.ts +1 -1
  646. package/build-types/ui/tooltip/component.d.ts +11 -1
  647. package/build-types/ui/tooltip/component.d.ts.map +1 -1
  648. package/build-types/ui/tooltip/content.d.ts +7 -1
  649. package/build-types/ui/tooltip/styles.d.ts +1 -3
  650. package/build-types/ui/tooltip/styles.d.ts.map +1 -1
  651. package/build-types/unit-control/index.d.ts +2 -12
  652. package/build-types/unit-control/index.d.ts.map +1 -1
  653. package/build-types/unit-control/stories/index.d.ts.map +1 -1
  654. package/build-types/unit-control/styles/unit-control-styles.d.ts +5 -10
  655. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  656. package/build-types/unit-control/types.d.ts +3 -35
  657. package/build-types/unit-control/types.d.ts.map +1 -1
  658. package/build-types/utils/colors-values.d.ts +0 -18
  659. package/build-types/utils/colors-values.d.ts.map +1 -1
  660. package/build-types/utils/math.d.ts +6 -6
  661. package/build-types/utils/math.d.ts.map +1 -1
  662. package/build-types/utils/values.d.ts +10 -8
  663. package/build-types/utils/values.d.ts.map +1 -1
  664. package/build-types/v-stack/component.d.ts +8 -2
  665. package/build-types/v-stack/component.d.ts.map +1 -1
  666. package/build-types/v-stack/hook.d.ts +55 -56
  667. package/build-types/v-stack/hook.d.ts.map +1 -1
  668. package/build-types/v-stack/stories/index.d.ts +8 -1
  669. package/build-types/v-stack/stories/index.d.ts.map +1 -1
  670. package/build-types/view/component.d.ts +8 -6
  671. package/build-types/view/component.d.ts.map +1 -1
  672. package/build-types/view/stories/index.d.ts +12 -0
  673. package/build-types/view/stories/index.d.ts.map +1 -0
  674. package/build-types/view/types.d.ts +8 -0
  675. package/build-types/view/types.d.ts.map +1 -0
  676. package/build-types/visually-hidden/component.d.ts +2 -1
  677. package/build-types/visually-hidden/component.d.ts.map +1 -1
  678. package/build-types/z-stack/component.d.ts +2 -1
  679. package/build-types/z-stack/component.d.ts.map +1 -1
  680. package/package.json +17 -17
  681. package/src/alignment-matrix-control/styles/alignment-matrix-control-styles.js +1 -1
  682. package/src/angle-picker-control/README.md +9 -1
  683. package/src/angle-picker-control/index.js +12 -0
  684. package/src/angle-picker-control/stories/index.js +3 -3
  685. package/src/base-field/test/__snapshots__/index.js.snap +3 -5
  686. package/src/border-box-control/border-box-control/component.tsx +9 -2
  687. package/src/border-box-control/border-box-control-split-controls/component.tsx +8 -2
  688. package/src/border-box-control/types.ts +5 -4
  689. package/src/border-control/border-control-dropdown/component.tsx +3 -8
  690. package/src/border-control/types.ts +7 -9
  691. package/src/card/styles.ts +1 -1
  692. package/src/card/test/__snapshots__/index.tsx.snap +39 -51
  693. package/src/checkbox-control/index.tsx +3 -6
  694. package/src/checkbox-control/stories/index.tsx +6 -2
  695. package/src/checkbox-control/types.ts +4 -1
  696. package/src/color-palette/index.js +1 -1
  697. package/src/color-palette/test/__snapshots__/index.js.snap +67 -91
  698. package/src/color-picker/input-with-slider.tsx +1 -0
  699. package/src/combobox-control/index.js +1 -1
  700. package/src/combobox-control/test/index.js +311 -0
  701. package/src/custom-gradient-picker/index.js +1 -1
  702. package/src/date-time/date/index.tsx +2 -2
  703. package/src/date-time/time/timezone.tsx +1 -1
  704. package/src/dimension-control/test/__snapshots__/index.test.js.snap +1122 -164
  705. package/src/dimension-control/test/index.test.js +29 -38
  706. package/src/disabled/index.tsx +27 -9
  707. package/src/disabled/styles/disabled-styles.tsx +2 -2
  708. package/src/disabled/test/index.tsx +38 -0
  709. package/src/drop-zone/README.md +3 -3
  710. package/src/drop-zone/{index.js → index.tsx} +48 -13
  711. package/src/drop-zone/{provider.js → provider.ts} +5 -1
  712. package/src/drop-zone/stories/index.tsx +30 -0
  713. package/src/drop-zone/types.ts +29 -0
  714. package/src/dropdown/README.md +6 -4
  715. package/src/dropdown/stories/index.js +1 -1
  716. package/src/flex/flex/hook.ts +5 -54
  717. package/src/flex/test/__snapshots__/index.tsx.snap +7 -15
  718. package/src/focal-point-picker/README.md +2 -2
  719. package/src/focal-point-picker/{controls.js → controls.tsx} +38 -10
  720. package/src/focal-point-picker/{focal-point.js → focal-point.tsx} +7 -1
  721. package/src/focal-point-picker/{grid.js → grid.tsx} +6 -1
  722. package/src/focal-point-picker/{index.js → index.tsx} +99 -15
  723. package/src/focal-point-picker/{media.js → media.tsx} +10 -4
  724. package/src/focal-point-picker/stories/index.tsx +93 -0
  725. package/src/focal-point-picker/styles/{focal-point-picker-style.js → focal-point-picker-style.ts} +31 -5
  726. package/src/focal-point-picker/styles/{focal-point-style.js → focal-point-style.ts} +2 -1
  727. package/src/focal-point-picker/test/index.js +27 -7
  728. package/src/focal-point-picker/types.ts +93 -0
  729. package/src/focal-point-picker/{utils.js → utils.ts} +9 -9
  730. package/src/font-size-picker/README.md +9 -0
  731. package/src/font-size-picker/index.js +9 -0
  732. package/src/font-size-picker/stories/index.js +3 -5
  733. package/src/font-size-picker/test/index.js +15 -2
  734. package/src/font-size-picker/test/utils.js +1 -2
  735. package/src/font-size-picker/utils.js +1 -1
  736. package/src/form-file-upload/README.md +6 -1
  737. package/src/form-file-upload/{index.js → index.tsx} +22 -4
  738. package/src/form-file-upload/stories/index.tsx +74 -0
  739. package/src/form-file-upload/test/{index.js → index.tsx} +7 -3
  740. package/src/form-file-upload/types.ts +63 -0
  741. package/src/form-toggle/index.tsx +1 -6
  742. package/src/form-token-field/index.tsx +4 -5
  743. package/src/form-token-field/suggestions-list.tsx +1 -2
  744. package/src/gradient-picker/index.js +41 -47
  745. package/src/gradient-picker/stories/index.js +10 -0
  746. package/src/h-stack/test/__snapshots__/index.tsx.snap +3 -12
  747. package/src/higher-order/with-filters/test/__snapshots__/index.js.snap +87 -0
  748. package/src/higher-order/with-filters/test/index.js +20 -74
  749. package/src/icon/index.tsx +1 -1
  750. package/src/icon/stories/index.js +18 -0
  751. package/src/icon/test/index.js +32 -83
  752. package/src/input-control/input-base.tsx +9 -11
  753. package/src/input-control/label.tsx +9 -4
  754. package/src/input-control/styles/input-control-styles.tsx +0 -43
  755. package/src/input-control/types.ts +3 -0
  756. package/src/isolated-event-container/test/index.js +53 -11
  757. package/src/item-group/test/__snapshots__/index.js.snap +16 -16
  758. package/src/keyboard-shortcuts/test/index.js +16 -31
  759. package/src/menu-item/test/__snapshots__/index.js.snap +60 -62
  760. package/src/menu-item/test/index.js +30 -22
  761. package/src/modal/aria-helper.js +3 -8
  762. package/src/navigable-container/README.md +2 -0
  763. package/src/navigable-container/container.js +8 -1
  764. package/src/navigable-container/menu.js +14 -11
  765. package/src/navigable-container/stories/navigable-menu.js +49 -0
  766. package/src/navigable-container/stories/tabbable-container.js +40 -0
  767. package/src/navigable-container/tabbable.js +2 -3
  768. package/src/navigable-container/test/navigable-menu.js +277 -0
  769. package/src/navigable-container/test/tababble-container.js +175 -0
  770. package/src/navigator/navigator-button/hook.ts +1 -1
  771. package/src/navigator/navigator-screen/component.tsx +6 -1
  772. package/src/number-control/index.tsx +209 -0
  773. package/src/number-control/stories/index.js +6 -18
  774. package/src/number-control/types.ts +75 -0
  775. package/src/panel/test/__snapshots__/header.js.snap +9 -0
  776. package/src/panel/test/__snapshots__/index.js.snap +17 -0
  777. package/src/panel/test/__snapshots__/row.js.snap +17 -0
  778. package/src/panel/test/header.js +30 -23
  779. package/src/panel/test/index.js +33 -25
  780. package/src/panel/test/row.js +18 -11
  781. package/src/placeholder/index.tsx +4 -5
  782. package/src/placeholder/style.scss +4 -0
  783. package/src/popover/README.md +83 -48
  784. package/src/popover/{index.js → index.tsx} +246 -176
  785. package/src/popover/stories/{index.js → index.tsx} +51 -54
  786. package/src/popover/types.ts +173 -0
  787. package/src/popover/utils.ts +230 -0
  788. package/src/radio-control/index.tsx +28 -29
  789. package/src/radio-control/style.scss +0 -17
  790. package/src/range-control/index.tsx +4 -1
  791. package/src/range-control/styles/range-control-styles.ts +8 -8
  792. package/src/sandbox/index.js +2 -2
  793. package/src/search-control/README.md +5 -3
  794. package/src/search-control/{index.js → index.tsx} +35 -7
  795. package/src/search-control/stories/index.tsx +66 -0
  796. package/src/search-control/types.ts +43 -0
  797. package/src/select-control/index.native.js +1 -1
  798. package/src/slot-fill/test/index.js +69 -12
  799. package/src/style.scss +0 -1
  800. package/src/surface/test/__snapshots__/index.tsx.snap +10 -10
  801. package/src/tab-panel/README.md +1 -2
  802. package/src/tab-panel/{index.js → index.tsx} +58 -13
  803. package/src/tab-panel/stories/index.tsx +37 -0
  804. package/src/tab-panel/test/index.tsx +120 -0
  805. package/src/tab-panel/types.ts +65 -0
  806. package/src/text-control/index.tsx +2 -0
  807. package/src/text-control/types.ts +5 -1
  808. package/src/textarea-control/index.tsx +3 -6
  809. package/src/textarea-control/types.ts +1 -1
  810. package/src/toggle-control/index.tsx +97 -0
  811. package/src/toggle-control/stories/index.tsx +58 -0
  812. package/src/toggle-control/test/index.tsx +53 -0
  813. package/src/toggle-control/types.ts +28 -0
  814. package/src/toggle-group-control/stories/index.tsx +10 -3
  815. package/src/toggle-group-control/toggle-group-control/component.tsx +3 -3
  816. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +1 -1
  817. package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +1 -1
  818. package/src/toggle-group-control/types.ts +2 -2
  819. package/src/tooltip/index.js +1 -1
  820. package/src/ui/context/context-connect.ts +58 -31
  821. package/src/ui/context/context-system-provider.js +5 -4
  822. package/src/ui/context/test/context-connect.tsx +55 -0
  823. package/src/ui/context/test/wordpress-component.tsx +36 -0
  824. package/src/ui/context/wordpress-component.ts +18 -12
  825. package/src/ui/control-group/test/__snapshots__/index.js.snap +1 -4
  826. package/src/unit-control/index.tsx +1 -1
  827. package/src/unit-control/stories/index.tsx +7 -16
  828. package/src/unit-control/styles/unit-control-styles.ts +2 -2
  829. package/src/unit-control/test/__snapshots__/index.tsx.snap +4 -6
  830. package/src/unit-control/types.ts +3 -44
  831. package/src/utils/colors-values.js +2 -24
  832. package/src/utils/math.js +4 -4
  833. package/src/utils/values.js +48 -6
  834. package/src/v-stack/test/__snapshots__/index.tsx.snap +3 -12
  835. package/src/view/{component.js → component.tsx} +13 -4
  836. package/src/view/stories/index.tsx +32 -0
  837. package/src/view/types.ts +6 -0
  838. package/tsconfig.json +0 -6
  839. package/tsconfig.tsbuildinfo +1 -1
  840. package/src/focal-point-picker/stories/index.js +0 -76
  841. package/src/navigable-container/test/menu.js +0 -310
  842. package/src/navigable-container/test/tabbable.js +0 -158
  843. package/src/number-control/index.js +0 -192
  844. package/src/popover/utils.js +0 -107
  845. package/src/search-control/stories/index.js +0 -39
  846. package/src/tab-panel/stories/index.js +0 -39
  847. package/src/tab-panel/test/index.js +0 -179
  848. package/src/toggle-control/index.js +0 -55
  849. package/src/toggle-control/stories/index.js +0 -64
  850. package/src/toggle-control/style.scss +0 -14
  851. package/src/toggle-control/test/index.js +0 -52
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/number-control/index.js"],"names":["classNames","forwardRef","isRTL","Input","inputControlActionTypes","add","subtract","roundClamp","isValueEmpty","NumberControl","ref","__unstableStateReducer","stateReducerProp","className","dragDirection","hideHTMLArrows","isDragEnabled","isShiftStepEnabled","label","max","Infinity","min","required","shiftStep","step","type","typeProp","value","valueProp","props","isStepAny","baseStep","parseFloat","baseValue","constrainValue","stepOverride","Math","autoComplete","classes","numberControlStateReducer","state","action","nextState","payload","event","currentValue","PRESS_UP","PRESS_DOWN","enableShift","shiftKey","incrementalValue","nextValue","preventDefault","DRAG","x","y","delta","modifier","directionModifier","ceil","abs","sign","distance","PRESS_ENTER","COMMIT","applyEmptyValue","baseState"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { Input } from './styles/number-control-styles';\nimport * as inputControlActionTypes from '../input-control/reducer/actions';\nimport { add, subtract, roundClamp } from '../utils/math';\nimport { isValueEmpty } from '../utils/values';\n\nexport function NumberControl(\n\t{\n\t\t__unstableStateReducer: stateReducerProp,\n\t\tclassName,\n\t\tdragDirection = 'n',\n\t\thideHTMLArrows = false,\n\t\tisDragEnabled = true,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmax = Infinity,\n\t\tmin = -Infinity,\n\t\trequired = false,\n\t\tshiftStep = 10,\n\t\tstep = 1,\n\t\ttype: typeProp = 'number',\n\t\tvalue: valueProp,\n\t\t...props\n\t},\n\tref\n) {\n\tconst isStepAny = step === 'any';\n\tconst baseStep = isStepAny ? 1 : parseFloat( step );\n\tconst baseValue = roundClamp( 0, min, max, baseStep );\n\tconst constrainValue = ( value, stepOverride ) => {\n\t\t// When step is \"any\" clamp the value, otherwise round and clamp it.\n\t\treturn isStepAny\n\t\t\t? Math.min( max, Math.max( min, value ) )\n\t\t\t: roundClamp( value, min, max, stepOverride ?? baseStep );\n\t};\n\n\tconst autoComplete = typeProp === 'number' ? 'off' : null;\n\tconst classes = classNames( 'components-number-control', className );\n\n\t/**\n\t * \"Middleware\" function that intercepts updates from InputControl.\n\t * This allows us to tap into actions to transform the (next) state for\n\t * InputControl.\n\t *\n\t * @param {Object} state State from InputControl\n\t * @param {Object} action Action triggering state change\n\t * @return {Object} The updated state to apply to InputControl\n\t */\n\tconst numberControlStateReducer = ( state, action ) => {\n\t\tconst nextState = { ...state };\n\n\t\tconst { type, payload } = action;\n\t\tconst event = payload?.event;\n\t\tconst currentValue = nextState.value;\n\n\t\t/**\n\t\t * Handles custom UP and DOWN Keyboard events\n\t\t */\n\t\tif (\n\t\t\ttype === inputControlActionTypes.PRESS_UP ||\n\t\t\ttype === inputControlActionTypes.PRESS_DOWN\n\t\t) {\n\t\t\tconst enableShift = event.shiftKey && isShiftStepEnabled;\n\n\t\t\tconst incrementalValue = enableShift\n\t\t\t\t? parseFloat( shiftStep ) * baseStep\n\t\t\t\t: baseStep;\n\t\t\tlet nextValue = isValueEmpty( currentValue )\n\t\t\t\t? baseValue\n\t\t\t\t: currentValue;\n\n\t\t\tif ( event?.preventDefault ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\n\t\t\tif ( type === inputControlActionTypes.PRESS_UP ) {\n\t\t\t\tnextValue = add( nextValue, incrementalValue );\n\t\t\t}\n\n\t\t\tif ( type === inputControlActionTypes.PRESS_DOWN ) {\n\t\t\t\tnextValue = subtract( nextValue, incrementalValue );\n\t\t\t}\n\n\t\t\tnextState.value = constrainValue(\n\t\t\t\tnextValue,\n\t\t\t\tenableShift ? incrementalValue : null\n\t\t\t);\n\t\t}\n\n\t\t/**\n\t\t * Handles drag to update events\n\t\t */\n\t\tif ( type === inputControlActionTypes.DRAG && isDragEnabled ) {\n\t\t\tconst [ x, y ] = payload.delta;\n\t\t\tconst enableShift = payload.shiftKey && isShiftStepEnabled;\n\t\t\tconst modifier = enableShift\n\t\t\t\t? parseFloat( shiftStep ) * baseStep\n\t\t\t\t: baseStep;\n\n\t\t\tlet directionModifier;\n\t\t\tlet delta;\n\n\t\t\tswitch ( dragDirection ) {\n\t\t\t\tcase 'n':\n\t\t\t\t\tdelta = y;\n\t\t\t\t\tdirectionModifier = -1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'e':\n\t\t\t\t\tdelta = x;\n\t\t\t\t\tdirectionModifier = isRTL() ? -1 : 1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 's':\n\t\t\t\t\tdelta = y;\n\t\t\t\t\tdirectionModifier = 1;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'w':\n\t\t\t\t\tdelta = x;\n\t\t\t\t\tdirectionModifier = isRTL() ? 1 : -1;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif ( delta !== 0 ) {\n\t\t\t\tdelta = Math.ceil( Math.abs( delta ) ) * Math.sign( delta );\n\t\t\t\tconst distance = delta * modifier * directionModifier;\n\n\t\t\t\tnextState.value = constrainValue(\n\t\t\t\t\tadd( currentValue, distance ),\n\t\t\t\t\tenableShift ? modifier : null\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Handles commit (ENTER key press or blur)\n\t\t */\n\t\tif (\n\t\t\ttype === inputControlActionTypes.PRESS_ENTER ||\n\t\t\ttype === inputControlActionTypes.COMMIT\n\t\t) {\n\t\t\tconst applyEmptyValue = required === false && currentValue === '';\n\n\t\t\tnextState.value = applyEmptyValue\n\t\t\t\t? currentValue\n\t\t\t\t: constrainValue( currentValue );\n\t\t}\n\n\t\treturn nextState;\n\t};\n\n\treturn (\n\t\t<Input\n\t\t\tautoComplete={ autoComplete }\n\t\t\tinputMode=\"numeric\"\n\t\t\t{ ...props }\n\t\t\tclassName={ classes }\n\t\t\tdragDirection={ dragDirection }\n\t\t\thideHTMLArrows={ hideHTMLArrows }\n\t\t\tisDragEnabled={ isDragEnabled }\n\t\t\tlabel={ label }\n\t\t\tmax={ max }\n\t\t\tmin={ min }\n\t\t\tref={ ref }\n\t\t\trequired={ required }\n\t\t\tstep={ step }\n\t\t\ttype={ typeProp }\n\t\t\tvalue={ valueProp }\n\t\t\t__unstableStateReducer={ ( state, action ) => {\n\t\t\t\tconst baseState = numberControlStateReducer( state, action );\n\t\t\t\treturn stateReducerProp?.( baseState, action ) ?? baseState;\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( NumberControl );\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/number-control/index.tsx"],"names":["classNames","forwardRef","isRTL","Input","inputControlActionTypes","add","subtract","roundClamp","ensureNumber","isValueEmpty","UnforwardedNumberControl","ref","__unstableStateReducer","stateReducerProp","className","dragDirection","hideHTMLArrows","isDragEnabled","isShiftStepEnabled","label","max","Infinity","min","required","shiftStep","step","type","typeProp","value","valueProp","props","isStepAny","baseStep","baseValue","constrainValue","stepOverride","Math","autoComplete","undefined","classes","numberControlStateReducer","state","action","nextState","payload","event","currentValue","PRESS_UP","PRESS_DOWN","enableShift","shiftKey","incrementalValue","nextValue","preventDefault","DRAG","x","y","delta","modifier","directionModifier","ceil","abs","sign","distance","PRESS_ENTER","COMMIT","applyEmptyValue","baseState","NumberControl"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classNames from 'classnames';\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { Input } from './styles/number-control-styles';\nimport * as inputControlActionTypes from '../input-control/reducer/actions';\nimport { add, subtract, roundClamp } from '../utils/math';\nimport { ensureNumber, isValueEmpty } from '../utils/values';\nimport type { WordPressComponentProps } from '../ui/context/wordpress-component';\nimport type { NumberControlProps } from './types';\n\nfunction UnforwardedNumberControl(\n\t{\n\t\t__unstableStateReducer: stateReducerProp,\n\t\tclassName,\n\t\tdragDirection = 'n',\n\t\thideHTMLArrows = false,\n\t\tisDragEnabled = true,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmax = Infinity,\n\t\tmin = -Infinity,\n\t\trequired = false,\n\t\tshiftStep = 10,\n\t\tstep = 1,\n\t\ttype: typeProp = 'number',\n\t\tvalue: valueProp,\n\t\t...props\n\t}: WordPressComponentProps< NumberControlProps, 'input', false >,\n\tref: ForwardedRef< any >\n) {\n\tconst isStepAny = step === 'any';\n\tconst baseStep = isStepAny ? 1 : ensureNumber( step );\n\tconst baseValue = roundClamp( 0, min, max, baseStep );\n\tconst constrainValue = (\n\t\tvalue: number | string,\n\t\tstepOverride?: number\n\t) => {\n\t\t// When step is \"any\" clamp the value, otherwise round and clamp it.\n\t\treturn isStepAny\n\t\t\t? Math.min( max, Math.max( min, ensureNumber( value ) ) )\n\t\t\t: roundClamp( value, min, max, stepOverride ?? baseStep );\n\t};\n\n\tconst autoComplete = typeProp === 'number' ? 'off' : undefined;\n\tconst classes = classNames( 'components-number-control', className );\n\n\t/**\n\t * \"Middleware\" function that intercepts updates from InputControl.\n\t * This allows us to tap into actions to transform the (next) state for\n\t * InputControl.\n\t *\n\t * @return The updated state to apply to InputControl\n\t */\n\tconst numberControlStateReducer: NumberControlProps[ '__unstableStateReducer' ] =\n\t\t( state, action ) => {\n\t\t\tconst nextState = { ...state };\n\n\t\t\tconst { type, payload } = action;\n\t\t\tconst event = payload.event;\n\t\t\tconst currentValue = nextState.value;\n\n\t\t\t/**\n\t\t\t * Handles custom UP and DOWN Keyboard events\n\t\t\t */\n\t\t\tif (\n\t\t\t\ttype === inputControlActionTypes.PRESS_UP ||\n\t\t\t\ttype === inputControlActionTypes.PRESS_DOWN\n\t\t\t) {\n\t\t\t\tconst enableShift =\n\t\t\t\t\t( event as KeyboardEvent | undefined )?.shiftKey &&\n\t\t\t\t\tisShiftStepEnabled;\n\n\t\t\t\tconst incrementalValue = enableShift\n\t\t\t\t\t? ensureNumber( shiftStep ) * baseStep\n\t\t\t\t\t: baseStep;\n\t\t\t\tlet nextValue = isValueEmpty( currentValue )\n\t\t\t\t\t? baseValue\n\t\t\t\t\t: currentValue;\n\n\t\t\t\tif ( event?.preventDefault ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\n\t\t\t\tif ( type === inputControlActionTypes.PRESS_UP ) {\n\t\t\t\t\tnextValue = add( nextValue, incrementalValue );\n\t\t\t\t}\n\n\t\t\t\tif ( type === inputControlActionTypes.PRESS_DOWN ) {\n\t\t\t\t\tnextValue = subtract( nextValue, incrementalValue );\n\t\t\t\t}\n\n\t\t\t\t// @ts-expect-error TODO: Resolve discrepancy between `value` types in InputControl based components\n\t\t\t\tnextState.value = constrainValue(\n\t\t\t\t\tnextValue,\n\t\t\t\t\tenableShift ? incrementalValue : undefined\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Handles drag to update events\n\t\t\t */\n\t\t\tif ( type === inputControlActionTypes.DRAG && isDragEnabled ) {\n\t\t\t\t// @ts-expect-error TODO: See if reducer actions can be typed better\n\t\t\t\tconst [ x, y ] = payload.delta;\n\t\t\t\t// @ts-expect-error TODO: See if reducer actions can be typed better\n\t\t\t\tconst enableShift = payload.shiftKey && isShiftStepEnabled;\n\t\t\t\tconst modifier = enableShift\n\t\t\t\t\t? ensureNumber( shiftStep ) * baseStep\n\t\t\t\t\t: baseStep;\n\n\t\t\t\tlet directionModifier;\n\t\t\t\tlet delta;\n\n\t\t\t\tswitch ( dragDirection ) {\n\t\t\t\t\tcase 'n':\n\t\t\t\t\t\tdelta = y;\n\t\t\t\t\t\tdirectionModifier = -1;\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\tcase 'e':\n\t\t\t\t\t\tdelta = x;\n\t\t\t\t\t\tdirectionModifier = isRTL() ? -1 : 1;\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\tcase 's':\n\t\t\t\t\t\tdelta = y;\n\t\t\t\t\t\tdirectionModifier = 1;\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\tcase 'w':\n\t\t\t\t\t\tdelta = x;\n\t\t\t\t\t\tdirectionModifier = isRTL() ? 1 : -1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tif ( delta !== 0 ) {\n\t\t\t\t\tdelta = Math.ceil( Math.abs( delta ) ) * Math.sign( delta );\n\t\t\t\t\tconst distance = delta * modifier * directionModifier;\n\n\t\t\t\t\t// @ts-expect-error TODO: Resolve discrepancy between `value` types in InputControl based components\n\t\t\t\t\tnextState.value = constrainValue(\n\t\t\t\t\t\t// @ts-expect-error TODO: Investigate if it's ok for currentValue to be undefined\n\t\t\t\t\t\tadd( currentValue, distance ),\n\t\t\t\t\t\tenableShift ? modifier : undefined\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Handles commit (ENTER key press or blur)\n\t\t\t */\n\t\t\tif (\n\t\t\t\ttype === inputControlActionTypes.PRESS_ENTER ||\n\t\t\t\ttype === inputControlActionTypes.COMMIT\n\t\t\t) {\n\t\t\t\tconst applyEmptyValue =\n\t\t\t\t\trequired === false && currentValue === '';\n\n\t\t\t\t// @ts-expect-error TODO: Resolve discrepancy between `value` types in InputControl based components\n\t\t\t\tnextState.value = applyEmptyValue\n\t\t\t\t\t? currentValue\n\t\t\t\t\t: // @ts-expect-error TODO: Investigate if it's ok for currentValue to be undefined\n\t\t\t\t\t constrainValue( currentValue );\n\t\t\t}\n\n\t\t\treturn nextState;\n\t\t};\n\n\treturn (\n\t\t<Input\n\t\t\tautoComplete={ autoComplete }\n\t\t\tinputMode=\"numeric\"\n\t\t\t{ ...props }\n\t\t\tclassName={ classes }\n\t\t\tdragDirection={ dragDirection }\n\t\t\thideHTMLArrows={ hideHTMLArrows }\n\t\t\tisDragEnabled={ isDragEnabled }\n\t\t\tlabel={ label }\n\t\t\tmax={ max }\n\t\t\tmin={ min }\n\t\t\tref={ ref }\n\t\t\trequired={ required }\n\t\t\tstep={ step }\n\t\t\ttype={ typeProp }\n\t\t\t// @ts-expect-error TODO: Resolve discrepancy between `value` types in InputControl based components\n\t\t\tvalue={ valueProp }\n\t\t\t__unstableStateReducer={ ( state, action ) => {\n\t\t\t\tconst baseState = numberControlStateReducer( state, action );\n\t\t\t\treturn stateReducerProp?.( baseState, action ) ?? baseState;\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nexport const NumberControl = forwardRef( UnforwardedNumberControl );\n\nexport default NumberControl;\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
@@ -37,9 +37,7 @@ const PlaceholderIllustration = createElement(SVG, {
37
37
  * ```
38
38
  */
39
39
 
40
- export function Placeholder( // ref is omitted until we have `WordPressComponentPropsWithoutRef` or add
41
- // ref forwarding to Placeholder.
42
- props) {
40
+ export function Placeholder(props) {
43
41
  const {
44
42
  icon,
45
43
  children,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/placeholder/index.tsx"],"names":["classnames","useResizeObserver","SVG","Path","Icon","PlaceholderIllustration","Placeholder","props","icon","children","label","instructions","className","notices","preview","isColumnLayout","withIllustration","additionalProps","resizeListener","width","modifierClassNames","classes","fieldsetClasses"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,iBAAT,QAAkC,oBAAlC;AACA,SAASC,GAAT,EAAcC,IAAd,QAA0B,uBAA1B;AAEA;AACA;AACA;;AACA,OAAOC,IAAP,MAAiB,SAAjB;AAIA,MAAMC,uBAAuB,GAC5B,cAAC,GAAD;AACC,EAAA,SAAS,EAAC,sCADX;AAEC,EAAA,IAAI,EAAC,MAFN;AAGC,EAAA,KAAK,EAAC,4BAHP;AAIC,EAAA,OAAO,EAAC,WAJT;AAKC,EAAA,mBAAmB,EAAC;AALrB,GAOC,cAAC,IAAD;AAAM,EAAA,YAAY,EAAC,oBAAnB;AAAwC,EAAA,CAAC,EAAC;AAA1C,EAPD,CADD;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,WAAT,EACN;AACA;AACAC,KAHM,EAOL;AACD,QAAM;AACLC,IAAAA,IADK;AAELC,IAAAA,QAFK;AAGLC,IAAAA,KAHK;AAILC,IAAAA,YAJK;AAKLC,IAAAA,SALK;AAMLC,IAAAA,OANK;AAOLC,IAAAA,OAPK;AAQLC,IAAAA,cARK;AASLC,IAAAA,gBATK;AAUL,OAAGC;AAVE,MAWFV,KAXJ;AAYA,QAAM,CAAEW,cAAF,EAAkB;AAAEC,IAAAA;AAAF,GAAlB,IAAgClB,iBAAiB,EAAvD,CAbC,CAeD;AACA;;AACA,MAAImB,kBAAJ;;AACA,MAAK,OAAOD,KAAP,KAAiB,QAAtB,EAAiC;AAChCC,IAAAA,kBAAkB,GAAG;AACpB,kBAAYD,KAAK,IAAI,GADD;AAEpB,mBAAaA,KAAK,IAAI,GAAT,IAAgBA,KAAK,GAAG,GAFjB;AAGpB,kBAAYA,KAAK,GAAG;AAHA,KAArB;AAKA;;AAED,QAAME,OAAO,GAAGrB,UAAU,CACzB,wBADyB,EAEzBY,SAFyB,EAGzBQ,kBAHyB,EAIzBJ,gBAAgB,GAAG,kBAAH,GAAwB,IAJf,CAA1B;AAMA,QAAMM,eAAe,GAAGtB,UAAU,CAAE,kCAAF,EAAsC;AACvE,wBAAoBe;AADmD,GAAtC,CAAlC;AAGA,SACC,kCAAUE,eAAV;AAA4B,IAAA,SAAS,EAAGI;AAAxC,MACGL,gBAAgB,GAAGX,uBAAH,GAA6B,IADhD,EAEGa,cAFH,EAGGL,OAHH,EAIGC,OAAO,IACR;AAAK,IAAA,SAAS,EAAC;AAAf,KACGA,OADH,CALF,EASC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGN;AAAb,IADD,EAEGE,KAFH,CATD,EAaC;AAAU,IAAA,SAAS,EAAGY;AAAtB,KACG,CAAC,CAAEX,YAAH,IACD;AAAQ,IAAA,SAAS,EAAC;AAAlB,KACGA,YADH,CAFF,EAMGF,QANH,CAbD,CADD;AAwBA;AAED,eAAeH,WAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useResizeObserver } from '@wordpress/compose';\nimport { SVG, Path } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport Icon from '../icon';\nimport type { PlaceholderProps } from './types';\nimport type { WordPressComponentProps } from '../ui/context';\n\nconst PlaceholderIllustration = (\n\t<SVG\n\t\tclassName=\"components-placeholder__illustration\"\n\t\tfill=\"none\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox=\"0 0 60 60\"\n\t\tpreserveAspectRatio=\"none\"\n\t>\n\t\t<Path vectorEffect=\"non-scaling-stroke\" d=\"M60 60 0 0\" />\n\t</SVG>\n);\n\n/**\n * Renders a placeholder. Normally used by blocks to render their empty state.\n *\n * ```jsx\n * import { Placeholder } from '@wordpress/components';\n * import { more } from '@wordpress/icons';\n *\n * const MyPlaceholder = () => <Placeholder icon={ more } label=\"Placeholder\" />;\n * ```\n */\nexport function Placeholder< IconProps = unknown >(\n\t// ref is omitted until we have `WordPressComponentPropsWithoutRef` or add\n\t// ref forwarding to Placeholder.\n\tprops: Omit<\n\t\tWordPressComponentProps< PlaceholderProps< IconProps >, 'div', false >,\n\t\t'ref'\n\t>\n) {\n\tconst {\n\t\ticon,\n\t\tchildren,\n\t\tlabel,\n\t\tinstructions,\n\t\tclassName,\n\t\tnotices,\n\t\tpreview,\n\t\tisColumnLayout,\n\t\twithIllustration,\n\t\t...additionalProps\n\t} = props;\n\tconst [ resizeListener, { width } ] = useResizeObserver();\n\n\t// Since `useResizeObserver` will report a width of `null` until after the\n\t// first render, avoid applying any modifier classes until width is known.\n\tlet modifierClassNames;\n\tif ( typeof width === 'number' ) {\n\t\tmodifierClassNames = {\n\t\t\t'is-large': width >= 480,\n\t\t\t'is-medium': width >= 160 && width < 480,\n\t\t\t'is-small': width < 160,\n\t\t};\n\t}\n\n\tconst classes = classnames(\n\t\t'components-placeholder',\n\t\tclassName,\n\t\tmodifierClassNames,\n\t\twithIllustration ? 'has-illustration' : null\n\t);\n\tconst fieldsetClasses = classnames( 'components-placeholder__fieldset', {\n\t\t'is-column-layout': isColumnLayout,\n\t} );\n\treturn (\n\t\t<div { ...additionalProps } className={ classes }>\n\t\t\t{ withIllustration ? PlaceholderIllustration : null }\n\t\t\t{ resizeListener }\n\t\t\t{ notices }\n\t\t\t{ preview && (\n\t\t\t\t<div className=\"components-placeholder__preview\">\n\t\t\t\t\t{ preview }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div className=\"components-placeholder__label\">\n\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t{ label }\n\t\t\t</div>\n\t\t\t<fieldset className={ fieldsetClasses }>\n\t\t\t\t{ !! instructions && (\n\t\t\t\t\t<legend className=\"components-placeholder__instructions\">\n\t\t\t\t\t\t{ instructions }\n\t\t\t\t\t</legend>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t</fieldset>\n\t\t</div>\n\t);\n}\n\nexport default Placeholder;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/placeholder/index.tsx"],"names":["classnames","useResizeObserver","SVG","Path","Icon","PlaceholderIllustration","Placeholder","props","icon","children","label","instructions","className","notices","preview","isColumnLayout","withIllustration","additionalProps","resizeListener","width","modifierClassNames","classes","fieldsetClasses"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,iBAAT,QAAkC,oBAAlC;AACA,SAASC,GAAT,EAAcC,IAAd,QAA0B,uBAA1B;AAEA;AACA;AACA;;AACA,OAAOC,IAAP,MAAiB,SAAjB;AAIA,MAAMC,uBAAuB,GAC5B,cAAC,GAAD;AACC,EAAA,SAAS,EAAC,sCADX;AAEC,EAAA,IAAI,EAAC,MAFN;AAGC,EAAA,KAAK,EAAC,4BAHP;AAIC,EAAA,OAAO,EAAC,WAJT;AAKC,EAAA,mBAAmB,EAAC;AALrB,GAOC,cAAC,IAAD;AAAM,EAAA,YAAY,EAAC,oBAAnB;AAAwC,EAAA,CAAC,EAAC;AAA1C,EAPD,CADD;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,WAAT,CACNC,KADM,EAML;AACD,QAAM;AACLC,IAAAA,IADK;AAELC,IAAAA,QAFK;AAGLC,IAAAA,KAHK;AAILC,IAAAA,YAJK;AAKLC,IAAAA,SALK;AAMLC,IAAAA,OANK;AAOLC,IAAAA,OAPK;AAQLC,IAAAA,cARK;AASLC,IAAAA,gBATK;AAUL,OAAGC;AAVE,MAWFV,KAXJ;AAYA,QAAM,CAAEW,cAAF,EAAkB;AAAEC,IAAAA;AAAF,GAAlB,IAAgClB,iBAAiB,EAAvD,CAbC,CAeD;AACA;;AACA,MAAImB,kBAAJ;;AACA,MAAK,OAAOD,KAAP,KAAiB,QAAtB,EAAiC;AAChCC,IAAAA,kBAAkB,GAAG;AACpB,kBAAYD,KAAK,IAAI,GADD;AAEpB,mBAAaA,KAAK,IAAI,GAAT,IAAgBA,KAAK,GAAG,GAFjB;AAGpB,kBAAYA,KAAK,GAAG;AAHA,KAArB;AAKA;;AAED,QAAME,OAAO,GAAGrB,UAAU,CACzB,wBADyB,EAEzBY,SAFyB,EAGzBQ,kBAHyB,EAIzBJ,gBAAgB,GAAG,kBAAH,GAAwB,IAJf,CAA1B;AAMA,QAAMM,eAAe,GAAGtB,UAAU,CAAE,kCAAF,EAAsC;AACvE,wBAAoBe;AADmD,GAAtC,CAAlC;AAGA,SACC,kCAAUE,eAAV;AAA4B,IAAA,SAAS,EAAGI;AAAxC,MACGL,gBAAgB,GAAGX,uBAAH,GAA6B,IADhD,EAEGa,cAFH,EAGGL,OAHH,EAIGC,OAAO,IACR;AAAK,IAAA,SAAS,EAAC;AAAf,KACGA,OADH,CALF,EASC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGN;AAAb,IADD,EAEGE,KAFH,CATD,EAaC;AAAU,IAAA,SAAS,EAAGY;AAAtB,KACG,CAAC,CAAEX,YAAH,IACD;AAAQ,IAAA,SAAS,EAAC;AAAlB,KACGA,YADH,CAFF,EAMGF,QANH,CAbD,CADD;AAwBA;AAED,eAAeH,WAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useResizeObserver } from '@wordpress/compose';\nimport { SVG, Path } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport Icon from '../icon';\nimport type { PlaceholderProps } from './types';\nimport type { WordPressComponentProps } from '../ui/context';\n\nconst PlaceholderIllustration = (\n\t<SVG\n\t\tclassName=\"components-placeholder__illustration\"\n\t\tfill=\"none\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox=\"0 0 60 60\"\n\t\tpreserveAspectRatio=\"none\"\n\t>\n\t\t<Path vectorEffect=\"non-scaling-stroke\" d=\"M60 60 0 0\" />\n\t</SVG>\n);\n\n/**\n * Renders a placeholder. Normally used by blocks to render their empty state.\n *\n * ```jsx\n * import { Placeholder } from '@wordpress/components';\n * import { more } from '@wordpress/icons';\n *\n * const MyPlaceholder = () => <Placeholder icon={ more } label=\"Placeholder\" />;\n * ```\n */\nexport function Placeholder< IconProps = unknown >(\n\tprops: WordPressComponentProps<\n\t\tPlaceholderProps< IconProps >,\n\t\t'div',\n\t\tfalse\n\t>\n) {\n\tconst {\n\t\ticon,\n\t\tchildren,\n\t\tlabel,\n\t\tinstructions,\n\t\tclassName,\n\t\tnotices,\n\t\tpreview,\n\t\tisColumnLayout,\n\t\twithIllustration,\n\t\t...additionalProps\n\t} = props;\n\tconst [ resizeListener, { width } ] = useResizeObserver();\n\n\t// Since `useResizeObserver` will report a width of `null` until after the\n\t// first render, avoid applying any modifier classes until width is known.\n\tlet modifierClassNames;\n\tif ( typeof width === 'number' ) {\n\t\tmodifierClassNames = {\n\t\t\t'is-large': width >= 480,\n\t\t\t'is-medium': width >= 160 && width < 480,\n\t\t\t'is-small': width < 160,\n\t\t};\n\t}\n\n\tconst classes = classnames(\n\t\t'components-placeholder',\n\t\tclassName,\n\t\tmodifierClassNames,\n\t\twithIllustration ? 'has-illustration' : null\n\t);\n\tconst fieldsetClasses = classnames( 'components-placeholder__fieldset', {\n\t\t'is-column-layout': isColumnLayout,\n\t} );\n\treturn (\n\t\t<div { ...additionalProps } className={ classes }>\n\t\t\t{ withIllustration ? PlaceholderIllustration : null }\n\t\t\t{ resizeListener }\n\t\t\t{ notices }\n\t\t\t{ preview && (\n\t\t\t\t<div className=\"components-placeholder__preview\">\n\t\t\t\t\t{ preview }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div className=\"components-placeholder__label\">\n\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t{ label }\n\t\t\t</div>\n\t\t\t<fieldset className={ fieldsetClasses }>\n\t\t\t\t{ !! instructions && (\n\t\t\t\t\t<legend className=\"components-placeholder__instructions\">\n\t\t\t\t\t\t{ instructions }\n\t\t\t\t\t</legend>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t</fieldset>\n\t\t</div>\n\t);\n}\n\nexport default Placeholder;\n"]}
@@ -1,19 +1,18 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import { createElement } from "@wordpress/element";
3
- // @ts-nocheck
4
3
 
5
4
  /**
6
5
  * External dependencies
7
6
  */
8
7
  import classnames from 'classnames';
9
- import { useFloating, flip, shift, autoUpdate, arrow, offset as offsetMiddleware, limitShift, size } from '@floating-ui/react-dom'; // eslint-disable-next-line no-restricted-imports
8
+ import { useFloating, flip as flipMiddleware, shift as shiftMiddleware, autoUpdate, arrow, offset as offsetMiddleware, limitShift, size } from '@floating-ui/react-dom'; // eslint-disable-next-line no-restricted-imports
10
9
 
11
10
  import { motion, useReducedMotion } from 'framer-motion';
12
11
  /**
13
12
  * WordPress dependencies
14
13
  */
15
14
 
16
- import { useRef, useLayoutEffect, forwardRef, createContext, useContext, useMemo, useEffect } from '@wordpress/element';
15
+ import { useRef, useLayoutEffect, forwardRef, createContext, useContext, useMemo, useState, useCallback, useEffect } from '@wordpress/element';
17
16
  import { useViewportMatch, useMergeRefs, __experimentalUseDialog as useDialog } from '@wordpress/compose';
18
17
  import { close } from '@wordpress/icons';
19
18
  import deprecated from '@wordpress/deprecated';
@@ -25,24 +24,24 @@ import { Path, SVG } from '@wordpress/primitives';
25
24
  import Button from '../button';
26
25
  import ScrollLock from '../scroll-lock';
27
26
  import { Slot, Fill, useSlot } from '../slot-fill';
28
- import { getFrameOffset, positionToPlacement, placementToMotionAnimationProps } from './utils';
27
+ import { getFrameOffset, positionToPlacement, placementToMotionAnimationProps, getReferenceOwnerDocument, getReferenceElement } from './utils';
28
+
29
29
  /**
30
30
  * Name of slot in which popover should fill.
31
31
  *
32
32
  * @type {string}
33
33
  */
34
-
35
34
  const SLOT_NAME = 'Popover'; // An SVG displaying a triangle facing down, filled with a solid
36
35
  // color and bordered in such a way to create an arrow-like effect.
37
36
  // Keeping the SVG's viewbox squared simplify the arrow positioning
38
37
  // calculations.
39
38
 
40
- const ArrowTriangle = props => createElement(SVG, _extends({}, props, {
39
+ const ArrowTriangle = () => createElement(SVG, {
41
40
  xmlns: "http://www.w3.org/2000/svg",
42
41
  viewBox: `0 0 100 100`,
43
42
  className: "components-popover__triangle",
44
43
  role: "presentation"
45
- }), createElement(Path, {
44
+ }, createElement(Path, {
46
45
  className: "components-popover__triangle-bg",
47
46
  d: "M 0 0 L 50 50 L 100 0"
48
47
  }), createElement(Path, {
@@ -51,39 +50,44 @@ const ArrowTriangle = props => createElement(SVG, _extends({}, props, {
51
50
  vectorEffect: "non-scaling-stroke"
52
51
  }));
53
52
 
54
- const MaybeAnimatedWrapper = forwardRef((_ref, forwardedRef) => {
53
+ const AnimatedWrapper = forwardRef((_ref, forwardedRef) => {
55
54
  let {
56
55
  style: receivedInlineStyles,
57
56
  placement,
58
57
  shouldAnimate = false,
59
58
  ...props
60
59
  } = _ref;
60
+ // When animating, animate only once (i.e. when the popover is opened), and
61
+ // do not animate on subsequent prop changes (as it conflicts with
62
+ // floating-ui's positioning updates).
63
+ const [hasAnimatedOnce, setHasAnimatedOnce] = useState(false);
61
64
  const shouldReduceMotion = useReducedMotion();
62
65
  const {
63
66
  style: motionInlineStyles,
64
67
  ...otherMotionProps
65
68
  } = useMemo(() => placementToMotionAnimationProps(placement), [placement]);
66
-
67
- if (shouldAnimate && !shouldReduceMotion) {
68
- return createElement(motion.div, _extends({
69
- style: { ...motionInlineStyles,
70
- ...receivedInlineStyles
71
- }
72
- }, otherMotionProps, props, {
73
- ref: forwardedRef
74
- }));
75
- }
76
-
77
- return createElement("div", _extends({
69
+ const onAnimationComplete = useCallback(() => setHasAnimatedOnce(true), []);
70
+ const computedAnimationProps = shouldAnimate && !shouldReduceMotion ? {
71
+ style: { ...motionInlineStyles,
72
+ ...receivedInlineStyles
73
+ },
74
+ ...otherMotionProps,
75
+ onAnimationComplete,
76
+ animate: hasAnimatedOnce ? false : otherMotionProps.animate
77
+ } : {
78
+ animate: false,
78
79
  style: receivedInlineStyles
79
- }, props, {
80
+ };
81
+ return createElement(motion.div, _extends({}, computedAnimationProps, props, {
80
82
  ref: forwardedRef
81
83
  }));
82
84
  });
83
- const slotNameContext = createContext();
85
+ const slotNameContext = createContext(undefined);
84
86
 
85
- const Popover = (_ref2, forwardedRef) => {
86
- let {
87
+ const UnforwardedPopover = (props, forwardedRef) => {
88
+ var _frameOffsetRef$curre, _frameOffsetRef$curre2, _frameOffsetRef$curre3, _frameOffsetRef$curre4;
89
+
90
+ const {
87
91
  range,
88
92
  animate = true,
89
93
  headerTitle,
@@ -102,10 +106,13 @@ const Popover = (_ref2, forwardedRef) => {
102
106
  expandOnMobile,
103
107
  onFocusOutside,
104
108
  __unstableSlotName = SLOT_NAME,
105
- __unstableForcePosition = false,
106
- __unstableShift = false,
109
+ flip = true,
110
+ resize = true,
111
+ shift = false,
112
+ __unstableShift,
113
+ __unstableForcePosition,
107
114
  ...contentProps
108
- } = _ref2;
115
+ } = props;
109
116
 
110
117
  if (range) {
111
118
  deprecated('range prop in Popover component', {
@@ -114,36 +121,43 @@ const Popover = (_ref2, forwardedRef) => {
114
121
  });
115
122
  }
116
123
 
124
+ let computedFlipProp = flip;
125
+ let computedResizeProp = resize;
126
+
127
+ if (__unstableForcePosition !== undefined) {
128
+ deprecated('__unstableForcePosition prop in Popover component', {
129
+ since: '6.1',
130
+ version: '6.3',
131
+ alternative: '`flip={ false }` and `resize={ false }`'
132
+ }); // Back-compat, set the `flip` and `resize` props
133
+ // to `false` to replicate `__unstableForcePosition`.
134
+
135
+ computedFlipProp = !__unstableForcePosition;
136
+ computedResizeProp = !__unstableForcePosition;
137
+ }
138
+
139
+ let shouldShift = shift;
140
+
141
+ if (__unstableShift !== undefined) {
142
+ deprecated('`__unstableShift` prop in Popover component', {
143
+ since: '6.1',
144
+ version: '6.3',
145
+ alternative: '`shift` prop`'
146
+ }); // Back-compat.
147
+
148
+ shouldShift = __unstableShift;
149
+ }
150
+
117
151
  const arrowRef = useRef(null);
118
- const anchorRefFallback = useRef(null);
152
+ const [fallbackReferenceElement, setFallbackReferenceElement] = useState(null);
153
+ const [referenceOwnerDocument, setReferenceOwnerDocument] = useState();
154
+ const anchorRefFallback = useCallback(node => {
155
+ setFallbackReferenceElement(node);
156
+ }, []);
119
157
  const isMobileViewport = useViewportMatch('medium', '<');
120
158
  const isExpanded = expandOnMobile && isMobileViewport;
121
159
  const hasArrow = !isExpanded && !noArrow;
122
160
  const normalizedPlacementFromProps = position ? positionToPlacement(position) : placementProp;
123
- const referenceOwnerDocument = useMemo(() => {
124
- var _documentToReturn;
125
-
126
- let documentToReturn;
127
-
128
- if (anchorRef !== null && anchorRef !== void 0 && anchorRef.top) {
129
- documentToReturn = anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.top.ownerDocument;
130
- } else if (anchorRef !== null && anchorRef !== void 0 && anchorRef.startContainer) {
131
- documentToReturn = anchorRef.startContainer.ownerDocument;
132
- } else if (anchorRef !== null && anchorRef !== void 0 && anchorRef.current) {
133
- documentToReturn = anchorRef.current.ownerDocument;
134
- } else if (anchorRef) {
135
- // This one should be deprecated.
136
- documentToReturn = anchorRef.ownerDocument;
137
- } else if (anchorRect && anchorRect !== null && anchorRect !== void 0 && anchorRect.ownerDocument) {
138
- documentToReturn = anchorRect.ownerDocument;
139
- } else if (getAnchorRect) {
140
- var _getAnchorRect;
141
-
142
- documentToReturn = (_getAnchorRect = getAnchorRect(anchorRefFallback.current)) === null || _getAnchorRect === void 0 ? void 0 : _getAnchorRect.ownerDocument;
143
- }
144
-
145
- return (_documentToReturn = documentToReturn) !== null && _documentToReturn !== void 0 ? _documentToReturn : document;
146
- }, [anchorRef, anchorRect, getAnchorRect]);
147
161
  /**
148
162
  * Offsets the position of the popover when the anchor is inside an iframe.
149
163
  *
@@ -158,10 +172,10 @@ const Popover = (_ref2, forwardedRef) => {
158
172
  */
159
173
 
160
174
  const offsetRef = useRef(offsetProp);
161
- const middleware = [offsetMiddleware(_ref3 => {
175
+ const middleware = [offsetMiddleware(_ref2 => {
162
176
  let {
163
177
  placement: currentPlacement
164
- } = _ref3;
178
+ } = _ref2;
165
179
 
166
180
  if (!frameOffsetRef.current) {
167
181
  return offsetRef.current;
@@ -181,27 +195,30 @@ const Popover = (_ref2, forwardedRef) => {
181
195
  mainAxis: offsetRef.current + frameOffsetRef.current[mainAxis] * mainAxisModifier,
182
196
  crossAxis: frameOffsetRef.current[crossAxis]
183
197
  };
184
- }), __unstableForcePosition ? undefined : flip(), __unstableForcePosition ? undefined : size({
198
+ }), computedFlipProp ? flipMiddleware() : undefined, computedResizeProp ? size({
185
199
  apply(sizeProps) {
200
+ var _refs$floating$curren;
201
+
186
202
  const {
187
- availableHeight
188
- } = sizeProps;
189
- if (!refs.floating.current) return; // Reduce the height of the popover to the available space.
203
+ firstElementChild
204
+ } = (_refs$floating$curren = refs.floating.current) !== null && _refs$floating$curren !== void 0 ? _refs$floating$curren : {}; // Only HTMLElement instances have the `style` property.
205
+
206
+ if (!(firstElementChild instanceof HTMLElement)) return; // Reduce the height of the popover to the available space.
190
207
 
191
- Object.assign(refs.floating.current.firstChild.style, {
192
- maxHeight: `${availableHeight}px`,
208
+ Object.assign(firstElementChild.style, {
209
+ maxHeight: `${sizeProps.availableHeight}px`,
193
210
  overflow: 'auto'
194
211
  });
195
212
  }
196
213
 
197
- }), __unstableShift ? shift({
214
+ }) : undefined, shouldShift ? shiftMiddleware({
198
215
  crossAxis: true,
199
216
  limiter: limitShift(),
200
217
  padding: 1 // Necessary to avoid flickering at the edge of the viewport.
201
218
 
202
- }) : undefined, hasArrow ? arrow({
219
+ }) : undefined, arrow({
203
220
  element: arrowRef
204
- }) : undefined].filter(m => !!m);
221
+ })].filter(m => m !== undefined);
205
222
 
206
223
  const slotName = useContext(slotNameContext) || __unstableSlotName;
207
224
 
@@ -223,6 +240,7 @@ const Popover = (_ref2, forwardedRef) => {
223
240
  const [dialogRef, dialogProps] = useDialog({
224
241
  focusOnMount,
225
242
  __unstableOnClose: onDialogClose,
243
+ // @ts-expect-error The __unstableOnClose property needs to be deprecated first (see https://github.com/WordPress/gutenberg/pull/27675)
226
244
  onClose: onDialogClose
227
245
  });
228
246
  const {
@@ -231,7 +249,7 @@ const Popover = (_ref2, forwardedRef) => {
231
249
  y,
232
250
  // Callback refs (not regular refs). This allows the position to be updated.
233
251
  // when either elements change.
234
- reference,
252
+ reference: referenceCallbackRef,
235
253
  floating,
236
254
  // Object with "regular" refs to both "reference" and "floating"
237
255
  refs,
@@ -240,97 +258,53 @@ const Popover = (_ref2, forwardedRef) => {
240
258
  update,
241
259
  placement: computedPlacement,
242
260
  middlewareData: {
243
- arrow: arrowData = {}
261
+ arrow: arrowData
244
262
  }
245
263
  } = useFloating({
246
264
  placement: normalizedPlacementFromProps,
247
- middleware
265
+ middleware,
266
+ whileElementsMounted: (referenceParam, floatingParam, updateParam) => autoUpdate(referenceParam, floatingParam, updateParam, {
267
+ animationFrame: true
268
+ })
248
269
  });
249
270
  useEffect(() => {
250
271
  offsetRef.current = offsetProp;
251
272
  update();
252
- }, [offsetProp, update]); // Update the `reference`'s ref.
253
- //
254
- // In floating-ui's terms:
255
- // - "reference" refers to the popover's anchor element.
256
- // - "floating" refers the floating popover's element.
257
- // A floating element can also be positioned relative to a virtual element,
258
- // instead of a real one. A virtual element is represented by an object
259
- // with the `getBoundingClientRect()` function (like real elements).
260
- // See https://floating-ui.com/docs/virtual-elements for more info.
273
+ }, [offsetProp, update]);
274
+ const arrowCallbackRef = useCallback(node => {
275
+ arrowRef.current = node;
276
+ update();
277
+ }, [update]); // When any of the possible anchor "sources" change,
278
+ // recompute the reference element (real or virtual) and its owner document.
261
279
 
262
280
  useLayoutEffect(() => {
263
- let resultingReferenceRef;
264
-
265
- if (anchorRef !== null && anchorRef !== void 0 && anchorRef.top) {
266
- // Create a virtual element for the ref. The expectation is that
267
- // if anchorRef.top is defined, then anchorRef.bottom is defined too.
268
- resultingReferenceRef = {
269
- getBoundingClientRect() {
270
- const topRect = anchorRef.top.getBoundingClientRect();
271
- const bottomRect = anchorRef.bottom.getBoundingClientRect();
272
- return new window.DOMRect(topRect.x, topRect.y, topRect.width, bottomRect.bottom - topRect.top);
273
- }
274
-
275
- };
276
- } else if (anchorRef !== null && anchorRef !== void 0 && anchorRef.current) {
277
- // Standard React ref.
278
- resultingReferenceRef = anchorRef.current;
279
- } else if (anchorRef) {
280
- // If `anchorRef` holds directly the element's value (no `current` key)
281
- // This is a weird scenario and should be deprecated.
282
- resultingReferenceRef = anchorRef;
283
- } else if (anchorRect) {
284
- // Create a virtual element for the ref.
285
- resultingReferenceRef = {
286
- getBoundingClientRect() {
287
- return anchorRect;
288
- }
289
-
290
- };
291
- } else if (getAnchorRect) {
292
- // Create a virtual element for the ref.
293
- resultingReferenceRef = {
294
- getBoundingClientRect() {
295
- var _rect$x, _rect$y, _rect$width, _rect$height;
296
-
297
- const rect = getAnchorRect(anchorRefFallback.current);
298
- return new window.DOMRect((_rect$x = rect.x) !== null && _rect$x !== void 0 ? _rect$x : rect.left, (_rect$y = rect.y) !== null && _rect$y !== void 0 ? _rect$y : rect.top, (_rect$width = rect.width) !== null && _rect$width !== void 0 ? _rect$width : rect.right - rect.left, (_rect$height = rect.height) !== null && _rect$height !== void 0 ? _rect$height : rect.bottom - rect.top);
299
- }
300
-
301
- };
302
- } else if (anchorRefFallback.current) {
303
- // If no explicit ref is passed via props, fall back to
304
- // anchoring to the popover's parent node.
305
- resultingReferenceRef = anchorRefFallback.current.parentNode;
306
- }
307
-
308
- if (!resultingReferenceRef) {
309
- return;
310
- }
311
-
312
- reference(resultingReferenceRef);
313
-
314
- if (!refs.floating.current) {
315
- return;
316
- }
317
-
318
- return autoUpdate(resultingReferenceRef, refs.floating.current, update, {
319
- animationFrame: true
320
- }); // 'reference' and 'refs.floating' are refs and don't need to be listed
321
- // as dependencies (see https://github.com/WordPress/gutenberg/pull/41612)
322
- // eslint-disable-next-line react-hooks/exhaustive-deps
323
- }, [anchorRef, anchorRect, getAnchorRect, update]); // If the reference element is in a different ownerDocument (e.g. iFrame),
281
+ const resultingReferenceOwnerDoc = getReferenceOwnerDocument({
282
+ anchorRef,
283
+ anchorRect,
284
+ getAnchorRect,
285
+ fallbackReferenceElement,
286
+ fallbackDocument: document
287
+ });
288
+ const resultingReferenceElement = getReferenceElement({
289
+ anchorRef,
290
+ anchorRect,
291
+ getAnchorRect,
292
+ fallbackReferenceElement
293
+ });
294
+ referenceCallbackRef(resultingReferenceElement);
295
+ setReferenceOwnerDocument(resultingReferenceOwnerDoc);
296
+ }, [anchorRef, anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.top, anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.bottom, anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.startContainer, anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current, anchorRect, getAnchorRect, fallbackReferenceElement, referenceCallbackRef]); // If the reference element is in a different ownerDocument (e.g. iFrame),
324
297
  // we need to manually update the floating's position as the reference's owner
325
298
  // document scrolls. Also update the frame offset if the view resizes.
326
299
 
327
300
  useLayoutEffect(() => {
328
- var _referenceOwnerDocume;
329
-
330
- const referenceAndFloatingHaveSameDocument = referenceOwnerDocument === document;
331
- const hasFrameElement = !!(referenceOwnerDocument !== null && referenceOwnerDocument !== void 0 && (_referenceOwnerDocume = referenceOwnerDocument.defaultView) !== null && _referenceOwnerDocume !== void 0 && _referenceOwnerDocume.frameElement);
301
+ var _refs$floating, _refs$floating$curren2, _referenceOwnerDocume;
332
302
 
333
- if (referenceAndFloatingHaveSameDocument || !hasFrameElement) {
303
+ if ( // Reference and root documents are the same.
304
+ referenceOwnerDocument === document || // Reference and floating are in the same document.
305
+ referenceOwnerDocument === (refs === null || refs === void 0 ? void 0 : (_refs$floating = refs.floating) === null || _refs$floating === void 0 ? void 0 : (_refs$floating$curren2 = _refs$floating.current) === null || _refs$floating$curren2 === void 0 ? void 0 : _refs$floating$curren2.ownerDocument) || // The reference's document has no view (i.e. window)
306
+ // or frame element (ie. it's not an iframe).
307
+ !(referenceOwnerDocument !== null && referenceOwnerDocument !== void 0 && (_referenceOwnerDocume = referenceOwnerDocument.defaultView) !== null && _referenceOwnerDocume !== void 0 && _referenceOwnerDocume.frameElement)) {
334
308
  frameOffsetRef.current = undefined;
335
309
  return;
336
310
  }
@@ -355,7 +329,7 @@ const Popover = (_ref2, forwardedRef) => {
355
329
 
356
330
  let content = // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
357
331
  // eslint-disable-next-line jsx-a11y/no-static-element-interactions
358
- createElement(MaybeAnimatedWrapper, _extends({
332
+ createElement(AnimatedWrapper, _extends({
359
333
  shouldAnimate: animate && !isExpanded,
360
334
  placement: computedPlacement,
361
335
  className: classnames('components-popover', className, {
@@ -365,11 +339,11 @@ const Popover = (_ref2, forwardedRef) => {
365
339
  }, contentProps, {
366
340
  ref: mergedFloatingRef
367
341
  }, dialogProps, {
368
- tabIndex: "-1",
342
+ tabIndex: -1,
369
343
  style: isExpanded ? undefined : {
370
344
  position: strategy,
371
- left: Number.isNaN(x) ? 0 : x,
372
- top: Number.isNaN(y) ? 0 : y
345
+ left: Number.isNaN(x) ? 0 : x !== null && x !== void 0 ? x : undefined,
346
+ top: Number.isNaN(y) ? 0 : y !== null && y !== void 0 ? y : undefined
373
347
  }
374
348
  }), isExpanded && createElement(ScrollLock, null), isExpanded && createElement("div", {
375
349
  className: "components-popover__header"
@@ -382,11 +356,11 @@ const Popover = (_ref2, forwardedRef) => {
382
356
  })), createElement("div", {
383
357
  className: "components-popover__content"
384
358
  }, children), hasArrow && createElement("div", {
385
- ref: arrowRef,
359
+ ref: arrowCallbackRef,
386
360
  className: ['components-popover__arrow', `is-${computedPlacement.split('-')[0]}`].join(' '),
387
361
  style: {
388
- left: Number.isFinite(arrowData === null || arrowData === void 0 ? void 0 : arrowData.x) ? `${arrowData.x}px` : '',
389
- top: Number.isFinite(arrowData === null || arrowData === void 0 ? void 0 : arrowData.y) ? `${arrowData.y}px` : ''
362
+ left: typeof (arrowData === null || arrowData === void 0 ? void 0 : arrowData.x) !== 'undefined' && Number.isFinite(arrowData.x) ? `${arrowData.x + ((_frameOffsetRef$curre = (_frameOffsetRef$curre2 = frameOffsetRef.current) === null || _frameOffsetRef$curre2 === void 0 ? void 0 : _frameOffsetRef$curre2.x) !== null && _frameOffsetRef$curre !== void 0 ? _frameOffsetRef$curre : 0)}px` : '',
363
+ top: typeof (arrowData === null || arrowData === void 0 ? void 0 : arrowData.y) !== 'undefined' && Number.isFinite(arrowData.y) ? `${arrowData.y + ((_frameOffsetRef$curre3 = (_frameOffsetRef$curre4 = frameOffsetRef.current) === null || _frameOffsetRef$curre4 === void 0 ? void 0 : _frameOffsetRef$curre4.y) !== null && _frameOffsetRef$curre3 !== void 0 ? _frameOffsetRef$curre3 : 0)}px` : ''
390
364
  }
391
365
  }, createElement(ArrowTriangle, null)));
392
366
 
@@ -404,22 +378,49 @@ const Popover = (_ref2, forwardedRef) => {
404
378
  ref: anchorRefFallback
405
379
  }, content);
406
380
  };
381
+ /**
382
+ * `Popover` renders its content in a floating modal. If no explicit anchor is passed via props, it anchors to its parent element by default.
383
+ *
384
+ * ```jsx
385
+ * import { Button, Popover } from '@wordpress/components';
386
+ * import { useState } from '@wordpress/element';
387
+ *
388
+ * const MyPopover = () => {
389
+ * const [ isVisible, setIsVisible ] = useState( false );
390
+ * const toggleVisible = () => {
391
+ * setIsVisible( ( state ) => ! state );
392
+ * };
393
+ *
394
+ * return (
395
+ * <Button variant="secondary" onClick={ toggleVisible }>
396
+ * Toggle Popover!
397
+ * { isVisible && <Popover>Popover is toggled!</Popover> }
398
+ * </Button>
399
+ * );
400
+ * };
401
+ * ```
402
+ *
403
+ */
407
404
 
408
- const PopoverContainer = forwardRef(Popover);
409
405
 
410
- function PopoverSlot(_ref4, ref) {
406
+ export const Popover = forwardRef(UnforwardedPopover);
407
+
408
+ function PopoverSlot(_ref3, ref) {
411
409
  let {
412
410
  name = SLOT_NAME
413
- } = _ref4;
414
- return createElement(Slot, {
411
+ } = _ref3;
412
+ return createElement(Slot // @ts-expect-error Need to type `SlotFill`
413
+ , {
415
414
  bubblesVirtually: true,
416
415
  name: name,
417
416
  className: "popover-slot",
418
417
  ref: ref
419
418
  });
420
- }
419
+ } // @ts-expect-error For Legacy Reasons
420
+
421
+
422
+ Popover.Slot = forwardRef(PopoverSlot); // @ts-expect-error For Legacy Reasons
421
423
 
422
- PopoverContainer.Slot = forwardRef(PopoverSlot);
423
- PopoverContainer.__unstableSlotNameProvider = slotNameContext.Provider;
424
- export default PopoverContainer;
424
+ Popover.__unstableSlotNameProvider = slotNameContext.Provider;
425
+ export default Popover;
425
426
  //# sourceMappingURL=index.js.map