@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":["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","inputControlActionTypes","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":["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","inputControlActionTypes","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,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
@@ -52,9 +52,7 @@ const PlaceholderIllustration = (0, _element.createElement)(_primitives.SVG, {
52
52
  * ```
53
53
  */
54
54
 
55
- function Placeholder( // ref is omitted until we have `WordPressComponentPropsWithoutRef` or add
56
- // ref forwarding to Placeholder.
57
- props) {
55
+ function Placeholder(props) {
58
56
  const {
59
57
  icon,
60
58
  children,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/placeholder/index.tsx"],"names":["PlaceholderIllustration","Placeholder","props","icon","children","label","instructions","className","notices","preview","isColumnLayout","withIllustration","additionalProps","resizeListener","width","modifierClassNames","classes","fieldsetClasses"],"mappings":";;;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAKA,MAAMA,uBAAuB,GAC5B,4BAAC,eAAD;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,4BAAC,gBAAD;AAAM,EAAA,YAAY,EAAC,oBAAnB;AAAwC,EAAA,CAAC,EAAC;AAA1C,EAPD,CADD;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,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,IAAgC,iCAAtC,CAbC,CAeD;AACA;;AACA,MAAIC,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,GAAG,yBACf,wBADe,EAEfT,SAFe,EAGfQ,kBAHe,EAIfJ,gBAAgB,GAAG,kBAAH,GAAwB,IAJzB,CAAhB;AAMA,QAAMM,eAAe,GAAG,yBAAY,kCAAZ,EAAgD;AACvE,wBAAoBP;AADmD,GAAhD,CAAxB;AAGA,SACC,8DAAUE,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,4BAAC,aAAD;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;;eAEcH,W","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":["PlaceholderIllustration","Placeholder","props","icon","children","label","instructions","className","notices","preview","isColumnLayout","withIllustration","additionalProps","resizeListener","width","modifierClassNames","classes","fieldsetClasses"],"mappings":";;;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAKA,MAAMA,uBAAuB,GAC5B,4BAAC,eAAD;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,4BAAC,gBAAD;AAAM,EAAA,YAAY,EAAC,oBAAnB;AAAwC,EAAA,CAAC,EAAC;AAA1C,EAPD,CADD;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,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,IAAgC,iCAAtC,CAbC,CAeD;AACA;;AACA,MAAIC,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,GAAG,yBACf,wBADe,EAEfT,SAFe,EAGfQ,kBAHe,EAIfJ,gBAAgB,GAAG,kBAAH,GAAwB,IAJzB,CAAhB;AAMA,QAAMM,eAAe,GAAG,yBAAY,kCAAZ,EAAgD;AACvE,wBAAoBP;AADmD,GAAhD,CAAxB;AAGA,SACC,8DAAUE,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,4BAAC,aAAD;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;;eAEcH,W","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"]}
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = void 0;
8
+ exports.default = exports.Popover = void 0;
9
9
 
10
10
  var _element = require("@wordpress/element");
11
11
 
@@ -33,8 +33,6 @@ var _slotFill = require("../slot-fill");
33
33
 
34
34
  var _utils = require("./utils");
35
35
 
36
- // @ts-nocheck
37
-
38
36
  /**
39
37
  * External dependencies
40
38
  */
@@ -58,12 +56,12 @@ const SLOT_NAME = 'Popover'; // An SVG displaying a triangle facing down, filled
58
56
  // Keeping the SVG's viewbox squared simplify the arrow positioning
59
57
  // calculations.
60
58
 
61
- const ArrowTriangle = props => (0, _element.createElement)(_primitives.SVG, (0, _extends2.default)({}, props, {
59
+ const ArrowTriangle = () => (0, _element.createElement)(_primitives.SVG, {
62
60
  xmlns: "http://www.w3.org/2000/svg",
63
61
  viewBox: `0 0 100 100`,
64
62
  className: "components-popover__triangle",
65
63
  role: "presentation"
66
- }), (0, _element.createElement)(_primitives.Path, {
64
+ }, (0, _element.createElement)(_primitives.Path, {
67
65
  className: "components-popover__triangle-bg",
68
66
  d: "M 0 0 L 50 50 L 100 0"
69
67
  }), (0, _element.createElement)(_primitives.Path, {
@@ -72,39 +70,44 @@ const ArrowTriangle = props => (0, _element.createElement)(_primitives.SVG, (0,
72
70
  vectorEffect: "non-scaling-stroke"
73
71
  }));
74
72
 
75
- const MaybeAnimatedWrapper = (0, _element.forwardRef)((_ref, forwardedRef) => {
73
+ const AnimatedWrapper = (0, _element.forwardRef)((_ref, forwardedRef) => {
76
74
  let {
77
75
  style: receivedInlineStyles,
78
76
  placement,
79
77
  shouldAnimate = false,
80
78
  ...props
81
79
  } = _ref;
80
+ // When animating, animate only once (i.e. when the popover is opened), and
81
+ // do not animate on subsequent prop changes (as it conflicts with
82
+ // floating-ui's positioning updates).
83
+ const [hasAnimatedOnce, setHasAnimatedOnce] = (0, _element.useState)(false);
82
84
  const shouldReduceMotion = (0, _framerMotion.useReducedMotion)();
83
85
  const {
84
86
  style: motionInlineStyles,
85
87
  ...otherMotionProps
86
88
  } = (0, _element.useMemo)(() => (0, _utils.placementToMotionAnimationProps)(placement), [placement]);
87
-
88
- if (shouldAnimate && !shouldReduceMotion) {
89
- return (0, _element.createElement)(_framerMotion.motion.div, (0, _extends2.default)({
90
- style: { ...motionInlineStyles,
91
- ...receivedInlineStyles
92
- }
93
- }, otherMotionProps, props, {
94
- ref: forwardedRef
95
- }));
96
- }
97
-
98
- return (0, _element.createElement)("div", (0, _extends2.default)({
89
+ const onAnimationComplete = (0, _element.useCallback)(() => setHasAnimatedOnce(true), []);
90
+ const computedAnimationProps = shouldAnimate && !shouldReduceMotion ? {
91
+ style: { ...motionInlineStyles,
92
+ ...receivedInlineStyles
93
+ },
94
+ ...otherMotionProps,
95
+ onAnimationComplete,
96
+ animate: hasAnimatedOnce ? false : otherMotionProps.animate
97
+ } : {
98
+ animate: false,
99
99
  style: receivedInlineStyles
100
- }, props, {
100
+ };
101
+ return (0, _element.createElement)(_framerMotion.motion.div, (0, _extends2.default)({}, computedAnimationProps, props, {
101
102
  ref: forwardedRef
102
103
  }));
103
104
  });
104
- const slotNameContext = (0, _element.createContext)();
105
+ const slotNameContext = (0, _element.createContext)(undefined);
105
106
 
106
- const Popover = (_ref2, forwardedRef) => {
107
- let {
107
+ const UnforwardedPopover = (props, forwardedRef) => {
108
+ var _frameOffsetRef$curre, _frameOffsetRef$curre2, _frameOffsetRef$curre3, _frameOffsetRef$curre4;
109
+
110
+ const {
108
111
  range,
109
112
  animate = true,
110
113
  headerTitle,
@@ -123,10 +126,13 @@ const Popover = (_ref2, forwardedRef) => {
123
126
  expandOnMobile,
124
127
  onFocusOutside,
125
128
  __unstableSlotName = SLOT_NAME,
126
- __unstableForcePosition = false,
127
- __unstableShift = false,
129
+ flip = true,
130
+ resize = true,
131
+ shift = false,
132
+ __unstableShift,
133
+ __unstableForcePosition,
128
134
  ...contentProps
129
- } = _ref2;
135
+ } = props;
130
136
 
131
137
  if (range) {
132
138
  (0, _deprecated.default)('range prop in Popover component', {
@@ -135,36 +141,43 @@ const Popover = (_ref2, forwardedRef) => {
135
141
  });
136
142
  }
137
143
 
144
+ let computedFlipProp = flip;
145
+ let computedResizeProp = resize;
146
+
147
+ if (__unstableForcePosition !== undefined) {
148
+ (0, _deprecated.default)('__unstableForcePosition prop in Popover component', {
149
+ since: '6.1',
150
+ version: '6.3',
151
+ alternative: '`flip={ false }` and `resize={ false }`'
152
+ }); // Back-compat, set the `flip` and `resize` props
153
+ // to `false` to replicate `__unstableForcePosition`.
154
+
155
+ computedFlipProp = !__unstableForcePosition;
156
+ computedResizeProp = !__unstableForcePosition;
157
+ }
158
+
159
+ let shouldShift = shift;
160
+
161
+ if (__unstableShift !== undefined) {
162
+ (0, _deprecated.default)('`__unstableShift` prop in Popover component', {
163
+ since: '6.1',
164
+ version: '6.3',
165
+ alternative: '`shift` prop`'
166
+ }); // Back-compat.
167
+
168
+ shouldShift = __unstableShift;
169
+ }
170
+
138
171
  const arrowRef = (0, _element.useRef)(null);
139
- const anchorRefFallback = (0, _element.useRef)(null);
172
+ const [fallbackReferenceElement, setFallbackReferenceElement] = (0, _element.useState)(null);
173
+ const [referenceOwnerDocument, setReferenceOwnerDocument] = (0, _element.useState)();
174
+ const anchorRefFallback = (0, _element.useCallback)(node => {
175
+ setFallbackReferenceElement(node);
176
+ }, []);
140
177
  const isMobileViewport = (0, _compose.useViewportMatch)('medium', '<');
141
178
  const isExpanded = expandOnMobile && isMobileViewport;
142
179
  const hasArrow = !isExpanded && !noArrow;
143
180
  const normalizedPlacementFromProps = position ? (0, _utils.positionToPlacement)(position) : placementProp;
144
- const referenceOwnerDocument = (0, _element.useMemo)(() => {
145
- var _documentToReturn;
146
-
147
- let documentToReturn;
148
-
149
- if (anchorRef !== null && anchorRef !== void 0 && anchorRef.top) {
150
- documentToReturn = anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.top.ownerDocument;
151
- } else if (anchorRef !== null && anchorRef !== void 0 && anchorRef.startContainer) {
152
- documentToReturn = anchorRef.startContainer.ownerDocument;
153
- } else if (anchorRef !== null && anchorRef !== void 0 && anchorRef.current) {
154
- documentToReturn = anchorRef.current.ownerDocument;
155
- } else if (anchorRef) {
156
- // This one should be deprecated.
157
- documentToReturn = anchorRef.ownerDocument;
158
- } else if (anchorRect && anchorRect !== null && anchorRect !== void 0 && anchorRect.ownerDocument) {
159
- documentToReturn = anchorRect.ownerDocument;
160
- } else if (getAnchorRect) {
161
- var _getAnchorRect;
162
-
163
- documentToReturn = (_getAnchorRect = getAnchorRect(anchorRefFallback.current)) === null || _getAnchorRect === void 0 ? void 0 : _getAnchorRect.ownerDocument;
164
- }
165
-
166
- return (_documentToReturn = documentToReturn) !== null && _documentToReturn !== void 0 ? _documentToReturn : document;
167
- }, [anchorRef, anchorRect, getAnchorRect]);
168
181
  /**
169
182
  * Offsets the position of the popover when the anchor is inside an iframe.
170
183
  *
@@ -179,10 +192,10 @@ const Popover = (_ref2, forwardedRef) => {
179
192
  */
180
193
 
181
194
  const offsetRef = (0, _element.useRef)(offsetProp);
182
- const middleware = [(0, _reactDom.offset)(_ref3 => {
195
+ const middleware = [(0, _reactDom.offset)(_ref2 => {
183
196
  let {
184
197
  placement: currentPlacement
185
- } = _ref3;
198
+ } = _ref2;
186
199
 
187
200
  if (!frameOffsetRef.current) {
188
201
  return offsetRef.current;
@@ -202,27 +215,30 @@ const Popover = (_ref2, forwardedRef) => {
202
215
  mainAxis: offsetRef.current + frameOffsetRef.current[mainAxis] * mainAxisModifier,
203
216
  crossAxis: frameOffsetRef.current[crossAxis]
204
217
  };
205
- }), __unstableForcePosition ? undefined : (0, _reactDom.flip)(), __unstableForcePosition ? undefined : (0, _reactDom.size)({
218
+ }), computedFlipProp ? (0, _reactDom.flip)() : undefined, computedResizeProp ? (0, _reactDom.size)({
206
219
  apply(sizeProps) {
220
+ var _refs$floating$curren;
221
+
207
222
  const {
208
- availableHeight
209
- } = sizeProps;
210
- if (!refs.floating.current) return; // Reduce the height of the popover to the available space.
223
+ firstElementChild
224
+ } = (_refs$floating$curren = refs.floating.current) !== null && _refs$floating$curren !== void 0 ? _refs$floating$curren : {}; // Only HTMLElement instances have the `style` property.
225
+
226
+ if (!(firstElementChild instanceof HTMLElement)) return; // Reduce the height of the popover to the available space.
211
227
 
212
- Object.assign(refs.floating.current.firstChild.style, {
213
- maxHeight: `${availableHeight}px`,
228
+ Object.assign(firstElementChild.style, {
229
+ maxHeight: `${sizeProps.availableHeight}px`,
214
230
  overflow: 'auto'
215
231
  });
216
232
  }
217
233
 
218
- }), __unstableShift ? (0, _reactDom.shift)({
234
+ }) : undefined, shouldShift ? (0, _reactDom.shift)({
219
235
  crossAxis: true,
220
236
  limiter: (0, _reactDom.limitShift)(),
221
237
  padding: 1 // Necessary to avoid flickering at the edge of the viewport.
222
238
 
223
- }) : undefined, hasArrow ? (0, _reactDom.arrow)({
239
+ }) : undefined, (0, _reactDom.arrow)({
224
240
  element: arrowRef
225
- }) : undefined].filter(m => !!m);
241
+ })].filter(m => m !== undefined);
226
242
 
227
243
  const slotName = (0, _element.useContext)(slotNameContext) || __unstableSlotName;
228
244
 
@@ -244,6 +260,7 @@ const Popover = (_ref2, forwardedRef) => {
244
260
  const [dialogRef, dialogProps] = (0, _compose.__experimentalUseDialog)({
245
261
  focusOnMount,
246
262
  __unstableOnClose: onDialogClose,
263
+ // @ts-expect-error The __unstableOnClose property needs to be deprecated first (see https://github.com/WordPress/gutenberg/pull/27675)
247
264
  onClose: onDialogClose
248
265
  });
249
266
  const {
@@ -252,7 +269,7 @@ const Popover = (_ref2, forwardedRef) => {
252
269
  y,
253
270
  // Callback refs (not regular refs). This allows the position to be updated.
254
271
  // when either elements change.
255
- reference,
272
+ reference: referenceCallbackRef,
256
273
  floating,
257
274
  // Object with "regular" refs to both "reference" and "floating"
258
275
  refs,
@@ -261,97 +278,53 @@ const Popover = (_ref2, forwardedRef) => {
261
278
  update,
262
279
  placement: computedPlacement,
263
280
  middlewareData: {
264
- arrow: arrowData = {}
281
+ arrow: arrowData
265
282
  }
266
283
  } = (0, _reactDom.useFloating)({
267
284
  placement: normalizedPlacementFromProps,
268
- middleware
285
+ middleware,
286
+ whileElementsMounted: (referenceParam, floatingParam, updateParam) => (0, _reactDom.autoUpdate)(referenceParam, floatingParam, updateParam, {
287
+ animationFrame: true
288
+ })
269
289
  });
270
290
  (0, _element.useEffect)(() => {
271
291
  offsetRef.current = offsetProp;
272
292
  update();
273
- }, [offsetProp, update]); // Update the `reference`'s ref.
274
- //
275
- // In floating-ui's terms:
276
- // - "reference" refers to the popover's anchor element.
277
- // - "floating" refers the floating popover's element.
278
- // A floating element can also be positioned relative to a virtual element,
279
- // instead of a real one. A virtual element is represented by an object
280
- // with the `getBoundingClientRect()` function (like real elements).
281
- // See https://floating-ui.com/docs/virtual-elements for more info.
293
+ }, [offsetProp, update]);
294
+ const arrowCallbackRef = (0, _element.useCallback)(node => {
295
+ arrowRef.current = node;
296
+ update();
297
+ }, [update]); // When any of the possible anchor "sources" change,
298
+ // recompute the reference element (real or virtual) and its owner document.
282
299
 
283
300
  (0, _element.useLayoutEffect)(() => {
284
- let resultingReferenceRef;
285
-
286
- if (anchorRef !== null && anchorRef !== void 0 && anchorRef.top) {
287
- // Create a virtual element for the ref. The expectation is that
288
- // if anchorRef.top is defined, then anchorRef.bottom is defined too.
289
- resultingReferenceRef = {
290
- getBoundingClientRect() {
291
- const topRect = anchorRef.top.getBoundingClientRect();
292
- const bottomRect = anchorRef.bottom.getBoundingClientRect();
293
- return new window.DOMRect(topRect.x, topRect.y, topRect.width, bottomRect.bottom - topRect.top);
294
- }
295
-
296
- };
297
- } else if (anchorRef !== null && anchorRef !== void 0 && anchorRef.current) {
298
- // Standard React ref.
299
- resultingReferenceRef = anchorRef.current;
300
- } else if (anchorRef) {
301
- // If `anchorRef` holds directly the element's value (no `current` key)
302
- // This is a weird scenario and should be deprecated.
303
- resultingReferenceRef = anchorRef;
304
- } else if (anchorRect) {
305
- // Create a virtual element for the ref.
306
- resultingReferenceRef = {
307
- getBoundingClientRect() {
308
- return anchorRect;
309
- }
310
-
311
- };
312
- } else if (getAnchorRect) {
313
- // Create a virtual element for the ref.
314
- resultingReferenceRef = {
315
- getBoundingClientRect() {
316
- var _rect$x, _rect$y, _rect$width, _rect$height;
317
-
318
- const rect = getAnchorRect(anchorRefFallback.current);
319
- 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);
320
- }
321
-
322
- };
323
- } else if (anchorRefFallback.current) {
324
- // If no explicit ref is passed via props, fall back to
325
- // anchoring to the popover's parent node.
326
- resultingReferenceRef = anchorRefFallback.current.parentNode;
327
- }
328
-
329
- if (!resultingReferenceRef) {
330
- return;
331
- }
332
-
333
- reference(resultingReferenceRef);
334
-
335
- if (!refs.floating.current) {
336
- return;
337
- }
338
-
339
- return (0, _reactDom.autoUpdate)(resultingReferenceRef, refs.floating.current, update, {
340
- animationFrame: true
341
- }); // 'reference' and 'refs.floating' are refs and don't need to be listed
342
- // as dependencies (see https://github.com/WordPress/gutenberg/pull/41612)
343
- // eslint-disable-next-line react-hooks/exhaustive-deps
344
- }, [anchorRef, anchorRect, getAnchorRect, update]); // If the reference element is in a different ownerDocument (e.g. iFrame),
301
+ const resultingReferenceOwnerDoc = (0, _utils.getReferenceOwnerDocument)({
302
+ anchorRef,
303
+ anchorRect,
304
+ getAnchorRect,
305
+ fallbackReferenceElement,
306
+ fallbackDocument: document
307
+ });
308
+ const resultingReferenceElement = (0, _utils.getReferenceElement)({
309
+ anchorRef,
310
+ anchorRect,
311
+ getAnchorRect,
312
+ fallbackReferenceElement
313
+ });
314
+ referenceCallbackRef(resultingReferenceElement);
315
+ setReferenceOwnerDocument(resultingReferenceOwnerDoc);
316
+ }, [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),
345
317
  // we need to manually update the floating's position as the reference's owner
346
318
  // document scrolls. Also update the frame offset if the view resizes.
347
319
 
348
320
  (0, _element.useLayoutEffect)(() => {
349
- var _referenceOwnerDocume;
350
-
351
- const referenceAndFloatingHaveSameDocument = referenceOwnerDocument === document;
352
- const hasFrameElement = !!(referenceOwnerDocument !== null && referenceOwnerDocument !== void 0 && (_referenceOwnerDocume = referenceOwnerDocument.defaultView) !== null && _referenceOwnerDocume !== void 0 && _referenceOwnerDocume.frameElement);
321
+ var _refs$floating, _refs$floating$curren2, _referenceOwnerDocume;
353
322
 
354
- if (referenceAndFloatingHaveSameDocument || !hasFrameElement) {
323
+ if ( // Reference and root documents are the same.
324
+ referenceOwnerDocument === document || // Reference and floating are in the same document.
325
+ 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)
326
+ // or frame element (ie. it's not an iframe).
327
+ !(referenceOwnerDocument !== null && referenceOwnerDocument !== void 0 && (_referenceOwnerDocume = referenceOwnerDocument.defaultView) !== null && _referenceOwnerDocume !== void 0 && _referenceOwnerDocume.frameElement)) {
355
328
  frameOffsetRef.current = undefined;
356
329
  return;
357
330
  }
@@ -376,7 +349,7 @@ const Popover = (_ref2, forwardedRef) => {
376
349
 
377
350
  let content = // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
378
351
  // eslint-disable-next-line jsx-a11y/no-static-element-interactions
379
- (0, _element.createElement)(MaybeAnimatedWrapper, (0, _extends2.default)({
352
+ (0, _element.createElement)(AnimatedWrapper, (0, _extends2.default)({
380
353
  shouldAnimate: animate && !isExpanded,
381
354
  placement: computedPlacement,
382
355
  className: (0, _classnames.default)('components-popover', className, {
@@ -386,11 +359,11 @@ const Popover = (_ref2, forwardedRef) => {
386
359
  }, contentProps, {
387
360
  ref: mergedFloatingRef
388
361
  }, dialogProps, {
389
- tabIndex: "-1",
362
+ tabIndex: -1,
390
363
  style: isExpanded ? undefined : {
391
364
  position: strategy,
392
- left: Number.isNaN(x) ? 0 : x,
393
- top: Number.isNaN(y) ? 0 : y
365
+ left: Number.isNaN(x) ? 0 : x !== null && x !== void 0 ? x : undefined,
366
+ top: Number.isNaN(y) ? 0 : y !== null && y !== void 0 ? y : undefined
394
367
  }
395
368
  }), isExpanded && (0, _element.createElement)(_scrollLock.default, null), isExpanded && (0, _element.createElement)("div", {
396
369
  className: "components-popover__header"
@@ -403,11 +376,11 @@ const Popover = (_ref2, forwardedRef) => {
403
376
  })), (0, _element.createElement)("div", {
404
377
  className: "components-popover__content"
405
378
  }, children), hasArrow && (0, _element.createElement)("div", {
406
- ref: arrowRef,
379
+ ref: arrowCallbackRef,
407
380
  className: ['components-popover__arrow', `is-${computedPlacement.split('-')[0]}`].join(' '),
408
381
  style: {
409
- left: Number.isFinite(arrowData === null || arrowData === void 0 ? void 0 : arrowData.x) ? `${arrowData.x}px` : '',
410
- top: Number.isFinite(arrowData === null || arrowData === void 0 ? void 0 : arrowData.y) ? `${arrowData.y}px` : ''
382
+ 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` : '',
383
+ 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` : ''
411
384
  }
412
385
  }, (0, _element.createElement)(ArrowTriangle, null)));
413
386
 
@@ -425,23 +398,51 @@ const Popover = (_ref2, forwardedRef) => {
425
398
  ref: anchorRefFallback
426
399
  }, content);
427
400
  };
401
+ /**
402
+ * `Popover` renders its content in a floating modal. If no explicit anchor is passed via props, it anchors to its parent element by default.
403
+ *
404
+ * ```jsx
405
+ * import { Button, Popover } from '@wordpress/components';
406
+ * import { useState } from '@wordpress/element';
407
+ *
408
+ * const MyPopover = () => {
409
+ * const [ isVisible, setIsVisible ] = useState( false );
410
+ * const toggleVisible = () => {
411
+ * setIsVisible( ( state ) => ! state );
412
+ * };
413
+ *
414
+ * return (
415
+ * <Button variant="secondary" onClick={ toggleVisible }>
416
+ * Toggle Popover!
417
+ * { isVisible && <Popover>Popover is toggled!</Popover> }
418
+ * </Button>
419
+ * );
420
+ * };
421
+ * ```
422
+ *
423
+ */
428
424
 
429
- const PopoverContainer = (0, _element.forwardRef)(Popover);
430
425
 
431
- function PopoverSlot(_ref4, ref) {
426
+ const Popover = (0, _element.forwardRef)(UnforwardedPopover);
427
+ exports.Popover = Popover;
428
+
429
+ function PopoverSlot(_ref3, ref) {
432
430
  let {
433
431
  name = SLOT_NAME
434
- } = _ref4;
435
- return (0, _element.createElement)(_slotFill.Slot, {
432
+ } = _ref3;
433
+ return (0, _element.createElement)(_slotFill.Slot // @ts-expect-error Need to type `SlotFill`
434
+ , {
436
435
  bubblesVirtually: true,
437
436
  name: name,
438
437
  className: "popover-slot",
439
438
  ref: ref
440
439
  });
441
- }
440
+ } // @ts-expect-error For Legacy Reasons
441
+
442
+
443
+ Popover.Slot = (0, _element.forwardRef)(PopoverSlot); // @ts-expect-error For Legacy Reasons
442
444
 
443
- PopoverContainer.Slot = (0, _element.forwardRef)(PopoverSlot);
444
- PopoverContainer.__unstableSlotNameProvider = slotNameContext.Provider;
445
- var _default = PopoverContainer;
445
+ Popover.__unstableSlotNameProvider = slotNameContext.Provider;
446
+ var _default = Popover;
446
447
  exports.default = _default;
447
448
  //# sourceMappingURL=index.js.map