@wordpress/components 19.14.0 → 19.17.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 (1156) hide show
  1. package/CHANGELOG.md +138 -12
  2. package/build/angle-picker-control/index.js +2 -2
  3. package/build/angle-picker-control/index.js.map +1 -1
  4. package/build/autocomplete/get-default-use-items.js +5 -1
  5. package/build/autocomplete/get-default-use-items.js.map +1 -1
  6. package/build/autocomplete/index.js +5 -1
  7. package/build/autocomplete/index.js.map +1 -1
  8. package/build/base-control/index.js +6 -3
  9. package/build/base-control/index.js.map +1 -1
  10. package/build/base-control/styles/base-control-styles.js +8 -8
  11. package/build/base-control/styles/base-control-styles.js.map +1 -1
  12. package/build/border-control/border-control/component.js +38 -25
  13. package/build/border-control/border-control/component.js.map +1 -1
  14. package/build/border-control/border-control/hook.js +4 -7
  15. package/build/border-control/border-control/hook.js.map +1 -1
  16. package/build/border-control/border-control-dropdown/component.js +13 -7
  17. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  18. package/build/border-control/border-control-dropdown/hook.js +0 -4
  19. package/build/border-control/border-control-dropdown/hook.js.map +1 -1
  20. package/build/border-control/styles.js +29 -60
  21. package/build/border-control/styles.js.map +1 -1
  22. package/build/box-control/all-input-control.js +2 -27
  23. package/build/box-control/all-input-control.js.map +1 -1
  24. package/build/box-control/axial-input-controls.js +1 -1
  25. package/build/box-control/axial-input-controls.js.map +1 -1
  26. package/build/box-control/index.js +11 -6
  27. package/build/box-control/index.js.map +1 -1
  28. package/build/box-control/styles/box-control-styles.js +17 -9
  29. package/build/box-control/styles/box-control-styles.js.map +1 -1
  30. package/build/box-control/utils.js +37 -8
  31. package/build/box-control/utils.js.map +1 -1
  32. package/build/color-palette/index.js +14 -2
  33. package/build/color-palette/index.js.map +1 -1
  34. package/build/color-picker/hex-input.js +7 -5
  35. package/build/color-picker/hex-input.js.map +1 -1
  36. package/build/color-picker/index.native.js +35 -34
  37. package/build/color-picker/index.native.js.map +1 -1
  38. package/build/color-picker/input-with-slider.js +6 -3
  39. package/build/color-picker/input-with-slider.js.map +1 -1
  40. package/build/color-picker/styles.js +33 -50
  41. package/build/color-picker/styles.js.map +1 -1
  42. package/build/color-picker/use-deprecated-props.js +22 -31
  43. package/build/color-picker/use-deprecated-props.js.map +1 -1
  44. package/build/combobox-control/index.js +33 -19
  45. package/build/combobox-control/index.js.map +1 -1
  46. package/build/combobox-control/styles.js +39 -0
  47. package/build/combobox-control/styles.js.map +1 -0
  48. package/build/custom-select-control/index.js +29 -9
  49. package/build/custom-select-control/index.js.map +1 -1
  50. package/build/date-time/time/index.js +6 -2
  51. package/build/date-time/time/index.js.map +1 -1
  52. package/build/date-time/time/styles.js +17 -24
  53. package/build/date-time/time/styles.js.map +1 -1
  54. package/build/divider/component.js +0 -1
  55. package/build/divider/component.js.map +1 -1
  56. package/build/divider/index.js.map +1 -1
  57. package/build/divider/styles.js +5 -5
  58. package/build/divider/styles.js.map +1 -1
  59. package/build/dropdown/dropdown-content-wrapper.js +60 -0
  60. package/build/dropdown/dropdown-content-wrapper.js.map +1 -0
  61. package/build/dropdown/styles.js +42 -0
  62. package/build/dropdown/styles.js.map +1 -0
  63. package/build/dropdown/types.js +6 -0
  64. package/build/dropdown/types.js.map +1 -0
  65. package/build/dropdown-menu/index.js +5 -5
  66. package/build/dropdown-menu/index.js.map +1 -1
  67. package/build/dropdown-menu/index.native.js +5 -5
  68. package/build/dropdown-menu/index.native.js.map +1 -1
  69. package/build/elevation/component.js +15 -15
  70. package/build/elevation/component.js.map +1 -1
  71. package/build/elevation/hook.js +6 -18
  72. package/build/elevation/hook.js.map +1 -1
  73. package/build/elevation/index.js.map +1 -1
  74. package/build/elevation/styles.js +1 -1
  75. package/build/elevation/styles.js.map +1 -1
  76. package/build/external-link/index.js +7 -3
  77. package/build/external-link/index.js.map +1 -1
  78. package/build/flex/flex/component.js +20 -26
  79. package/build/flex/flex/component.js.map +1 -1
  80. package/build/flex/flex/hook.js +6 -16
  81. package/build/flex/flex/hook.js.map +1 -1
  82. package/build/flex/flex/index.js.map +1 -1
  83. package/build/flex/flex-block/component.js +18 -12
  84. package/build/flex/flex-block/component.js.map +1 -1
  85. package/build/flex/flex-block/hook.js +0 -4
  86. package/build/flex/flex-block/hook.js.map +1 -1
  87. package/build/flex/flex-block/index.js.map +1 -1
  88. package/build/flex/flex-item/component.js +18 -12
  89. package/build/flex/flex-item/component.js.map +1 -1
  90. package/build/flex/flex-item/hook.js +1 -5
  91. package/build/flex/flex-item/hook.js.map +1 -1
  92. package/build/flex/flex-item/index.js.map +1 -1
  93. package/build/flex/index.js.map +1 -1
  94. package/build/flex/styles.js +5 -5
  95. package/build/flex/styles.js.map +1 -1
  96. package/build/focal-point-picker/grid.js +2 -7
  97. package/build/focal-point-picker/grid.js.map +1 -1
  98. package/build/focal-point-picker/index.native.js +8 -8
  99. package/build/focal-point-picker/index.native.js.map +1 -1
  100. package/build/focal-point-picker/styles/focal-point-picker-style.js +22 -22
  101. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  102. package/build/focal-point-picker/styles/focal-point-style.js +5 -5
  103. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  104. package/build/focal-point-picker/tooltip/index.native.js +11 -12
  105. package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
  106. package/build/font-size-picker/index.js +15 -6
  107. package/build/font-size-picker/index.js.map +1 -1
  108. package/build/form-token-field/index.js +28 -9
  109. package/build/form-token-field/index.js.map +1 -1
  110. package/build/form-token-field/styles.js +40 -0
  111. package/build/form-token-field/styles.js.map +1 -0
  112. package/build/form-token-field/suggestions-list.js +21 -13
  113. package/build/form-token-field/suggestions-list.js.map +1 -1
  114. package/build/grid/component.js +7 -8
  115. package/build/grid/component.js.map +1 -1
  116. package/build/grid/hook.js +1 -5
  117. package/build/grid/hook.js.map +1 -1
  118. package/build/grid/index.js.map +1 -1
  119. package/build/grid/utils.js +4 -7
  120. package/build/grid/utils.js.map +1 -1
  121. package/build/h-stack/component.js +5 -9
  122. package/build/h-stack/component.js.map +1 -1
  123. package/build/h-stack/hook.js +8 -10
  124. package/build/h-stack/hook.js.map +1 -1
  125. package/build/h-stack/index.js.map +1 -1
  126. package/build/h-stack/utils.js +7 -18
  127. package/build/h-stack/utils.js.map +1 -1
  128. package/build/icon/index.js.map +1 -1
  129. package/build/index.js +31 -1
  130. package/build/index.js.map +1 -1
  131. package/build/input-control/index.js +7 -0
  132. package/build/input-control/index.js.map +1 -1
  133. package/build/input-control/input-base.js +24 -3
  134. package/build/input-control/input-base.js.map +1 -1
  135. package/build/input-control/input-prefix-wrapper.js +54 -0
  136. package/build/input-control/input-prefix-wrapper.js.map +1 -0
  137. package/build/input-control/input-suffix-wrapper.js +54 -0
  138. package/build/input-control/input-suffix-wrapper.js.map +1 -0
  139. package/build/input-control/reducer/actions.js +3 -1
  140. package/build/input-control/reducer/actions.js.map +1 -1
  141. package/build/input-control/reducer/reducer.js +28 -11
  142. package/build/input-control/reducer/reducer.js.map +1 -1
  143. package/build/input-control/reducer/state.js.map +1 -1
  144. package/build/input-control/styles/input-control-styles.js +61 -42
  145. package/build/input-control/styles/input-control-styles.js.map +1 -1
  146. package/build/menu-item/index.js +1 -3
  147. package/build/menu-item/index.js.map +1 -1
  148. package/build/mobile/focal-point-settings-panel/index.native.js +1 -1
  149. package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  150. package/build/mobile/global-styles-context/utils.native.js +23 -3
  151. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  152. package/build/mobile/image/index.native.js +31 -5
  153. package/build/mobile/image/index.native.js.map +1 -1
  154. package/build/mobile/link-picker/link-picker-screen.native.js +10 -4
  155. package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  156. package/build/mobile/media-edit/index.native.js +1 -7
  157. package/build/mobile/media-edit/index.native.js.map +1 -1
  158. package/build/mobile/picker/index.ios.js +16 -3
  159. package/build/mobile/picker/index.ios.js.map +1 -1
  160. package/build/modal/index.js +17 -3
  161. package/build/modal/index.js.map +1 -1
  162. package/build/navigation/index.js +4 -1
  163. package/build/navigation/index.js.map +1 -1
  164. package/build/navigation/item/base.js +3 -0
  165. package/build/navigation/item/base.js.map +1 -1
  166. package/build/placeholder/index.js +11 -14
  167. package/build/placeholder/index.js.map +1 -1
  168. package/build/placeholder/types.js +6 -0
  169. package/build/placeholder/types.js.map +1 -0
  170. package/build/popover/index.js +129 -75
  171. package/build/popover/index.js.map +1 -1
  172. package/build/radio-control/index.js +1 -3
  173. package/build/radio-control/index.js.map +1 -1
  174. package/build/range-control/index.js +54 -40
  175. package/build/range-control/index.js.map +1 -1
  176. package/build/range-control/input-range.js +5 -7
  177. package/build/range-control/input-range.js.map +1 -1
  178. package/build/range-control/mark.js +5 -7
  179. package/build/range-control/mark.js.map +1 -1
  180. package/build/range-control/rail.js +10 -16
  181. package/build/range-control/rail.js.map +1 -1
  182. package/build/range-control/styles/range-control-styles.js +74 -74
  183. package/build/range-control/styles/range-control-styles.js.map +1 -1
  184. package/build/range-control/tooltip.js +5 -7
  185. package/build/range-control/tooltip.js.map +1 -1
  186. package/build/range-control/types.js +6 -0
  187. package/build/range-control/types.js.map +1 -0
  188. package/build/range-control/utils.js +23 -30
  189. package/build/range-control/utils.js.map +1 -1
  190. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  191. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  192. package/build/resizable-box/resize-tooltip/utils.js +2 -7
  193. package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
  194. package/build/sandbox/index.native.js +13 -2
  195. package/build/sandbox/index.native.js.map +1 -1
  196. package/build/scroll-lock/index.js +35 -6
  197. package/build/scroll-lock/index.js.map +1 -1
  198. package/build/scrollable/component.js +7 -8
  199. package/build/scrollable/component.js.map +1 -1
  200. package/build/scrollable/hook.js +0 -8
  201. package/build/scrollable/hook.js.map +1 -1
  202. package/build/scrollable/index.js.map +1 -1
  203. package/build/scrollable/styles.js +7 -7
  204. package/build/scrollable/styles.js.map +1 -1
  205. package/build/select-control/index.js +1 -3
  206. package/build/select-control/index.js.map +1 -1
  207. package/build/select-control/styles/select-control-styles.js +32 -12
  208. package/build/select-control/styles/select-control-styles.js.map +1 -1
  209. package/build/shortcut/index.js +6 -21
  210. package/build/shortcut/index.js.map +1 -1
  211. package/build/shortcut/types.js +6 -0
  212. package/build/shortcut/types.js.map +1 -0
  213. package/build/slot-fill/index.native.js +6 -8
  214. package/build/slot-fill/index.native.js.map +1 -1
  215. package/build/slot-fill/provider.js +4 -8
  216. package/build/slot-fill/provider.js.map +1 -1
  217. package/build/slot-fill/slot.js +4 -8
  218. package/build/slot-fill/slot.js.map +1 -1
  219. package/build/spacer/component.js +3 -1
  220. package/build/spacer/component.js.map +1 -1
  221. package/build/spacer/hook.js +2 -2
  222. package/build/spacer/hook.js.map +1 -1
  223. package/build/spacer/index.js.map +1 -1
  224. package/build/style-provider/index.js +10 -7
  225. package/build/style-provider/index.js.map +1 -1
  226. package/build/style-provider/types.js +6 -0
  227. package/build/style-provider/types.js.map +1 -0
  228. package/build/swatch/index.js +2 -0
  229. package/build/swatch/index.js.map +1 -1
  230. package/build/swatch/types.js +6 -0
  231. package/build/swatch/types.js.map +1 -0
  232. package/build/text/hook.js +5 -8
  233. package/build/text/hook.js.map +1 -1
  234. package/build/text-highlight/index.js +22 -5
  235. package/build/text-highlight/index.js.map +1 -1
  236. package/build/text-highlight/types.js +6 -0
  237. package/build/text-highlight/types.js.map +1 -0
  238. package/build/tip/index.js +5 -11
  239. package/build/tip/index.js.map +1 -1
  240. package/build/tip/types.js +6 -0
  241. package/build/tip/types.js.map +1 -0
  242. package/build/toggle-group-control/toggle-group-control/component.js +4 -1
  243. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  244. package/build/toggle-group-control/toggle-group-control/styles.js +20 -4
  245. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  246. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +7 -9
  247. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  248. package/build/toolbar-group/index.js +3 -3
  249. package/build/toolbar-group/index.js.map +1 -1
  250. package/build/tools-panel/styles.js +13 -10
  251. package/build/tools-panel/styles.js.map +1 -1
  252. package/build/tools-panel/tools-panel/hook.js +1 -1
  253. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  254. package/build/tooltip/index.js +51 -14
  255. package/build/tooltip/index.js.map +1 -1
  256. package/build/tree-select/index.js +4 -4
  257. package/build/tree-select/index.js.map +1 -1
  258. package/build/ui/context/use-context-system.js +7 -2
  259. package/build/ui/context/use-context-system.js.map +1 -1
  260. package/build/ui/tooltip/styles.js +4 -4
  261. package/build/ui/tooltip/styles.js.map +1 -1
  262. package/build/ui/utils/get-valid-children.js.map +1 -1
  263. package/build/ui/utils/space.js +7 -1
  264. package/build/ui/utils/space.js.map +1 -1
  265. package/build/unit-control/styles/unit-control-styles.js +38 -29
  266. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  267. package/build/utils/base-label.js +24 -0
  268. package/build/utils/base-label.js.map +1 -0
  269. package/build/utils/box-sizing.js +22 -0
  270. package/build/utils/box-sizing.js.map +1 -0
  271. package/build/utils/style-mixins.js +16 -0
  272. package/build/utils/style-mixins.js.map +1 -1
  273. package/build/visually-hidden/component.js +12 -13
  274. package/build/visually-hidden/component.js.map +1 -1
  275. package/build/visually-hidden/index.js.map +1 -1
  276. package/build/visually-hidden/styles.js +3 -1
  277. package/build/visually-hidden/styles.js.map +1 -1
  278. package/build/visually-hidden/types.js +6 -0
  279. package/build/visually-hidden/types.js.map +1 -0
  280. package/build-module/angle-picker-control/index.js +2 -2
  281. package/build-module/angle-picker-control/index.js.map +1 -1
  282. package/build-module/autocomplete/get-default-use-items.js +3 -2
  283. package/build-module/autocomplete/get-default-use-items.js.map +1 -1
  284. package/build-module/autocomplete/index.js +3 -2
  285. package/build-module/autocomplete/index.js.map +1 -1
  286. package/build-module/base-control/index.js +7 -5
  287. package/build-module/base-control/index.js.map +1 -1
  288. package/build-module/base-control/styles/base-control-styles.js +9 -9
  289. package/build-module/base-control/styles/base-control-styles.js.map +1 -1
  290. package/build-module/border-control/border-control/component.js +37 -25
  291. package/build-module/border-control/border-control/component.js.map +1 -1
  292. package/build-module/border-control/border-control/hook.js +4 -7
  293. package/build-module/border-control/border-control/hook.js.map +1 -1
  294. package/build-module/border-control/border-control-dropdown/component.js +12 -7
  295. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  296. package/build-module/border-control/border-control-dropdown/hook.js +0 -4
  297. package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
  298. package/build-module/border-control/styles.js +30 -54
  299. package/build-module/border-control/styles.js.map +1 -1
  300. package/build-module/box-control/all-input-control.js +3 -28
  301. package/build-module/box-control/all-input-control.js.map +1 -1
  302. package/build-module/box-control/axial-input-controls.js +1 -1
  303. package/build-module/box-control/axial-input-controls.js.map +1 -1
  304. package/build-module/box-control/index.js +5 -5
  305. package/build-module/box-control/index.js.map +1 -1
  306. package/build-module/box-control/styles/box-control-styles.js +18 -10
  307. package/build-module/box-control/styles/box-control-styles.js.map +1 -1
  308. package/build-module/box-control/utils.js +35 -7
  309. package/build-module/box-control/utils.js.map +1 -1
  310. package/build-module/color-palette/index.js +10 -1
  311. package/build-module/color-palette/index.js.map +1 -1
  312. package/build-module/color-picker/hex-input.js +6 -4
  313. package/build-module/color-picker/hex-input.js.map +1 -1
  314. package/build-module/color-picker/index.native.js +36 -35
  315. package/build-module/color-picker/index.native.js.map +1 -1
  316. package/build-module/color-picker/input-with-slider.js +6 -3
  317. package/build-module/color-picker/input-with-slider.js.map +1 -1
  318. package/build-module/color-picker/styles.js +25 -48
  319. package/build-module/color-picker/styles.js.map +1 -1
  320. package/build-module/color-picker/use-deprecated-props.js +22 -31
  321. package/build-module/color-picker/use-deprecated-props.js.map +1 -1
  322. package/build-module/combobox-control/index.js +32 -19
  323. package/build-module/combobox-control/index.js.map +1 -1
  324. package/build-module/combobox-control/styles.js +27 -0
  325. package/build-module/combobox-control/styles.js.map +1 -0
  326. package/build-module/custom-select-control/index.js +28 -11
  327. package/build-module/custom-select-control/index.js.map +1 -1
  328. package/build-module/date-time/time/index.js +6 -3
  329. package/build-module/date-time/time/index.js.map +1 -1
  330. package/build-module/date-time/time/styles.js +15 -21
  331. package/build-module/date-time/time/styles.js.map +1 -1
  332. package/build-module/divider/component.js +0 -1
  333. package/build-module/divider/component.js.map +1 -1
  334. package/build-module/divider/index.js.map +1 -1
  335. package/build-module/divider/styles.js +5 -5
  336. package/build-module/divider/styles.js.map +1 -1
  337. package/build-module/dropdown/dropdown-content-wrapper.js +47 -0
  338. package/build-module/dropdown/dropdown-content-wrapper.js.map +1 -0
  339. package/build-module/dropdown/styles.js +31 -0
  340. package/build-module/dropdown/styles.js.map +1 -0
  341. package/build-module/dropdown/types.js +2 -0
  342. package/build-module/dropdown/types.js.map +1 -0
  343. package/build-module/dropdown-menu/index.js +5 -4
  344. package/build-module/dropdown-menu/index.js.map +1 -1
  345. package/build-module/dropdown-menu/index.native.js +5 -4
  346. package/build-module/dropdown-menu/index.native.js.map +1 -1
  347. package/build-module/elevation/component.js +15 -15
  348. package/build-module/elevation/component.js.map +1 -1
  349. package/build-module/elevation/hook.js +6 -18
  350. package/build-module/elevation/hook.js.map +1 -1
  351. package/build-module/elevation/index.js.map +1 -1
  352. package/build-module/elevation/styles.js +1 -1
  353. package/build-module/elevation/styles.js.map +1 -1
  354. package/build-module/external-link/index.js +7 -2
  355. package/build-module/external-link/index.js.map +1 -1
  356. package/build-module/flex/flex/component.js +20 -26
  357. package/build-module/flex/flex/component.js.map +1 -1
  358. package/build-module/flex/flex/hook.js +6 -15
  359. package/build-module/flex/flex/hook.js.map +1 -1
  360. package/build-module/flex/flex/index.js.map +1 -1
  361. package/build-module/flex/flex-block/component.js +18 -12
  362. package/build-module/flex/flex-block/component.js.map +1 -1
  363. package/build-module/flex/flex-block/hook.js +0 -4
  364. package/build-module/flex/flex-block/hook.js.map +1 -1
  365. package/build-module/flex/flex-block/index.js.map +1 -1
  366. package/build-module/flex/flex-item/component.js +18 -12
  367. package/build-module/flex/flex-item/component.js.map +1 -1
  368. package/build-module/flex/flex-item/hook.js +1 -5
  369. package/build-module/flex/flex-item/hook.js.map +1 -1
  370. package/build-module/flex/flex-item/index.js.map +1 -1
  371. package/build-module/flex/index.js.map +1 -1
  372. package/build-module/flex/styles.js +5 -5
  373. package/build-module/flex/styles.js.map +1 -1
  374. package/build-module/focal-point-picker/grid.js +2 -6
  375. package/build-module/focal-point-picker/grid.js.map +1 -1
  376. package/build-module/focal-point-picker/index.native.js +8 -8
  377. package/build-module/focal-point-picker/index.native.js.map +1 -1
  378. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +22 -22
  379. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  380. package/build-module/focal-point-picker/styles/focal-point-style.js +5 -5
  381. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  382. package/build-module/focal-point-picker/tooltip/index.native.js +11 -12
  383. package/build-module/focal-point-picker/tooltip/index.native.js.map +1 -1
  384. package/build-module/font-size-picker/index.js +14 -6
  385. package/build-module/font-size-picker/index.js.map +1 -1
  386. package/build-module/form-token-field/index.js +25 -8
  387. package/build-module/form-token-field/index.js.map +1 -1
  388. package/build-module/form-token-field/styles.js +28 -0
  389. package/build-module/form-token-field/styles.js.map +1 -0
  390. package/build-module/form-token-field/suggestions-list.js +21 -13
  391. package/build-module/form-token-field/suggestions-list.js.map +1 -1
  392. package/build-module/grid/component.js +7 -8
  393. package/build-module/grid/component.js.map +1 -1
  394. package/build-module/grid/hook.js +1 -5
  395. package/build-module/grid/hook.js.map +1 -1
  396. package/build-module/grid/index.js.map +1 -1
  397. package/build-module/grid/utils.js +3 -8
  398. package/build-module/grid/utils.js.map +1 -1
  399. package/build-module/h-stack/component.js +3 -7
  400. package/build-module/h-stack/component.js.map +1 -1
  401. package/build-module/h-stack/hook.js +10 -12
  402. package/build-module/h-stack/hook.js.map +1 -1
  403. package/build-module/h-stack/index.js.map +1 -1
  404. package/build-module/h-stack/utils.js +7 -19
  405. package/build-module/h-stack/utils.js.map +1 -1
  406. package/build-module/icon/index.js.map +1 -1
  407. package/build-module/index.js +4 -1
  408. package/build-module/index.js.map +1 -1
  409. package/build-module/input-control/index.js +6 -0
  410. package/build-module/input-control/index.js.map +1 -1
  411. package/build-module/input-control/input-base.js +25 -5
  412. package/build-module/input-control/input-base.js.map +1 -1
  413. package/build-module/input-control/input-prefix-wrapper.js +41 -0
  414. package/build-module/input-control/input-prefix-wrapper.js.map +1 -0
  415. package/build-module/input-control/input-suffix-wrapper.js +41 -0
  416. package/build-module/input-control/input-suffix-wrapper.js.map +1 -0
  417. package/build-module/input-control/reducer/actions.js +1 -0
  418. package/build-module/input-control/reducer/actions.js.map +1 -1
  419. package/build-module/input-control/reducer/reducer.js +28 -11
  420. package/build-module/input-control/reducer/reducer.js.map +1 -1
  421. package/build-module/input-control/reducer/state.js.map +1 -1
  422. package/build-module/input-control/styles/input-control-styles.js +58 -42
  423. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  424. package/build-module/menu-item/index.js +1 -2
  425. package/build-module/menu-item/index.js.map +1 -1
  426. package/build-module/mobile/focal-point-settings-panel/index.native.js +2 -2
  427. package/build-module/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  428. package/build-module/mobile/global-styles-context/utils.native.js +23 -4
  429. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  430. package/build-module/mobile/image/index.native.js +33 -8
  431. package/build-module/mobile/image/index.native.js.map +1 -1
  432. package/build-module/mobile/link-picker/link-picker-screen.native.js +11 -4
  433. package/build-module/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  434. package/build-module/mobile/media-edit/index.native.js +1 -6
  435. package/build-module/mobile/media-edit/index.native.js.map +1 -1
  436. package/build-module/mobile/picker/index.ios.js +14 -3
  437. package/build-module/mobile/picker/index.ios.js.map +1 -1
  438. package/build-module/modal/index.js +19 -5
  439. package/build-module/modal/index.js.map +1 -1
  440. package/build-module/navigation/index.js +4 -1
  441. package/build-module/navigation/index.js.map +1 -1
  442. package/build-module/navigation/item/base.js +3 -0
  443. package/build-module/navigation/item/base.js.map +1 -1
  444. package/build-module/placeholder/index.js +10 -15
  445. package/build-module/placeholder/index.js.map +1 -1
  446. package/build-module/placeholder/types.js +2 -0
  447. package/build-module/placeholder/types.js.map +1 -0
  448. package/build-module/popover/index.js +128 -75
  449. package/build-module/popover/index.js.map +1 -1
  450. package/build-module/radio-control/index.js +1 -2
  451. package/build-module/radio-control/index.js.map +1 -1
  452. package/build-module/range-control/index.js +54 -40
  453. package/build-module/range-control/index.js.map +1 -1
  454. package/build-module/range-control/input-range.js +5 -6
  455. package/build-module/range-control/input-range.js.map +1 -1
  456. package/build-module/range-control/mark.js +5 -6
  457. package/build-module/range-control/mark.js.map +1 -1
  458. package/build-module/range-control/rail.js +10 -15
  459. package/build-module/range-control/rail.js.map +1 -1
  460. package/build-module/range-control/styles/range-control-styles.js +74 -76
  461. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  462. package/build-module/range-control/tooltip.js +5 -6
  463. package/build-module/range-control/tooltip.js.map +1 -1
  464. package/build-module/range-control/types.js +2 -0
  465. package/build-module/range-control/types.js.map +1 -0
  466. package/build-module/range-control/utils.js +23 -30
  467. package/build-module/range-control/utils.js.map +1 -1
  468. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  469. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  470. package/build-module/resizable-box/resize-tooltip/utils.js +2 -6
  471. package/build-module/resizable-box/resize-tooltip/utils.js.map +1 -1
  472. package/build-module/sandbox/index.native.js +13 -3
  473. package/build-module/sandbox/index.native.js.map +1 -1
  474. package/build-module/scroll-lock/index.js +32 -6
  475. package/build-module/scroll-lock/index.js.map +1 -1
  476. package/build-module/scrollable/component.js +7 -8
  477. package/build-module/scrollable/component.js.map +1 -1
  478. package/build-module/scrollable/hook.js +0 -8
  479. package/build-module/scrollable/hook.js.map +1 -1
  480. package/build-module/scrollable/index.js.map +1 -1
  481. package/build-module/scrollable/styles.js +7 -7
  482. package/build-module/scrollable/styles.js.map +1 -1
  483. package/build-module/select-control/index.js +1 -2
  484. package/build-module/select-control/index.js.map +1 -1
  485. package/build-module/select-control/styles/select-control-styles.js +32 -12
  486. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  487. package/build-module/shortcut/index.js +6 -20
  488. package/build-module/shortcut/index.js.map +1 -1
  489. package/build-module/shortcut/types.js +2 -0
  490. package/build-module/shortcut/types.js.map +1 -0
  491. package/build-module/slot-fill/index.native.js +6 -7
  492. package/build-module/slot-fill/index.native.js.map +1 -1
  493. package/build-module/slot-fill/provider.js +4 -7
  494. package/build-module/slot-fill/provider.js.map +1 -1
  495. package/build-module/slot-fill/slot.js +4 -7
  496. package/build-module/slot-fill/slot.js.map +1 -1
  497. package/build-module/spacer/component.js +3 -1
  498. package/build-module/spacer/component.js.map +1 -1
  499. package/build-module/spacer/hook.js +2 -2
  500. package/build-module/spacer/hook.js.map +1 -1
  501. package/build-module/spacer/index.js.map +1 -1
  502. package/build-module/style-provider/index.js +10 -5
  503. package/build-module/style-provider/index.js.map +1 -1
  504. package/build-module/style-provider/types.js +2 -0
  505. package/build-module/style-provider/types.js.map +1 -0
  506. package/build-module/swatch/index.js +2 -0
  507. package/build-module/swatch/index.js.map +1 -1
  508. package/build-module/swatch/types.js +2 -0
  509. package/build-module/swatch/types.js.map +1 -0
  510. package/build-module/text/hook.js +5 -7
  511. package/build-module/text/hook.js.map +1 -1
  512. package/build-module/text-highlight/index.js +23 -6
  513. package/build-module/text-highlight/index.js.map +1 -1
  514. package/build-module/text-highlight/types.js +2 -0
  515. package/build-module/text-highlight/types.js.map +1 -0
  516. package/build-module/tip/index.js +6 -10
  517. package/build-module/tip/index.js.map +1 -1
  518. package/build-module/tip/types.js +2 -0
  519. package/build-module/tip/types.js.map +1 -0
  520. package/build-module/toggle-group-control/toggle-group-control/component.js +4 -1
  521. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  522. package/build-module/toggle-group-control/toggle-group-control/styles.js +15 -3
  523. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  524. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +6 -7
  525. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  526. package/build-module/toolbar-group/index.js +3 -2
  527. package/build-module/toolbar-group/index.js.map +1 -1
  528. package/build-module/tools-panel/styles.js +12 -11
  529. package/build-module/tools-panel/styles.js.map +1 -1
  530. package/build-module/tools-panel/tools-panel/hook.js +1 -1
  531. package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
  532. package/build-module/tooltip/index.js +53 -16
  533. package/build-module/tooltip/index.js.map +1 -1
  534. package/build-module/tree-select/index.js +5 -5
  535. package/build-module/tree-select/index.js.map +1 -1
  536. package/build-module/ui/context/use-context-system.js +7 -2
  537. package/build-module/ui/context/use-context-system.js.map +1 -1
  538. package/build-module/ui/tooltip/styles.js +4 -4
  539. package/build-module/ui/tooltip/styles.js.map +1 -1
  540. package/build-module/ui/utils/get-valid-children.js.map +1 -1
  541. package/build-module/ui/utils/space.js +7 -1
  542. package/build-module/ui/utils/space.js.map +1 -1
  543. package/build-module/unit-control/styles/unit-control-styles.js +39 -30
  544. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  545. package/build-module/utils/base-label.js +18 -0
  546. package/build-module/utils/base-label.js.map +1 -0
  547. package/build-module/utils/box-sizing.js +16 -0
  548. package/build-module/utils/box-sizing.js.map +1 -0
  549. package/build-module/utils/style-mixins.js +2 -0
  550. package/build-module/utils/style-mixins.js.map +1 -1
  551. package/build-module/visually-hidden/component.js +12 -13
  552. package/build-module/visually-hidden/component.js.map +1 -1
  553. package/build-module/visually-hidden/index.js.map +1 -1
  554. package/build-module/visually-hidden/styles.js +3 -1
  555. package/build-module/visually-hidden/styles.js.map +1 -1
  556. package/build-module/visually-hidden/types.js +2 -0
  557. package/build-module/visually-hidden/types.js.map +1 -0
  558. package/build-style/style-rtl.css +75 -75
  559. package/build-style/style.css +77 -73
  560. package/build-types/base-control/index.d.ts +4 -3
  561. package/build-types/base-control/index.d.ts.map +1 -1
  562. package/build-types/base-control/stories/index.d.ts +1 -1
  563. package/build-types/base-control/stories/index.d.ts.map +1 -1
  564. package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
  565. package/build-types/base-control/types.d.ts +0 -1
  566. package/build-types/base-control/types.d.ts.map +1 -1
  567. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  568. package/build-types/border-control/border-control/hook.d.ts +2 -2
  569. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  570. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  571. package/build-types/border-control/border-control-dropdown/hook.d.ts +0 -1
  572. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  573. package/build-types/border-control/stories/index.d.ts.map +1 -1
  574. package/build-types/border-control/styles.d.ts +1 -4
  575. package/build-types/border-control/styles.d.ts.map +1 -1
  576. package/build-types/card/card-divider/hook.d.ts +1 -1
  577. package/build-types/color-palette/index.d.ts +1 -0
  578. package/build-types/color-palette/index.d.ts.map +1 -1
  579. package/build-types/color-picker/color-display.d.ts +13 -0
  580. package/build-types/color-picker/color-display.d.ts.map +1 -0
  581. package/build-types/color-picker/hex-input.d.ts.map +1 -1
  582. package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
  583. package/build-types/color-picker/styles.d.ts +30 -31
  584. package/build-types/color-picker/styles.d.ts.map +1 -1
  585. package/build-types/color-picker/use-deprecated-props.d.ts.map +1 -1
  586. package/build-types/date-time/time/index.d.ts.map +1 -1
  587. package/build-types/date-time/time/styles.d.ts +0 -4
  588. package/build-types/date-time/time/styles.d.ts.map +1 -1
  589. package/build-types/divider/component.d.ts +2 -3
  590. package/build-types/divider/component.d.ts.map +1 -1
  591. package/build-types/divider/index.d.ts +1 -1
  592. package/build-types/divider/index.d.ts.map +1 -1
  593. package/build-types/divider/styles.d.ts +6 -2
  594. package/build-types/divider/styles.d.ts.map +1 -1
  595. package/build-types/divider/test/index.d.ts +2 -0
  596. package/build-types/divider/test/index.d.ts.map +1 -0
  597. package/build-types/divider/types.d.ts +18 -10
  598. package/build-types/divider/types.d.ts.map +1 -1
  599. package/build-types/dropdown/dropdown-content-wrapper.d.ts +23 -0
  600. package/build-types/dropdown/dropdown-content-wrapper.d.ts.map +1 -0
  601. package/build-types/dropdown/styles.d.ts +7 -0
  602. package/build-types/dropdown/styles.d.ts.map +1 -0
  603. package/build-types/dropdown/types.d.ts +9 -0
  604. package/build-types/dropdown/types.d.ts.map +1 -0
  605. package/build-types/dropdown-menu/index.d.ts.map +1 -1
  606. package/build-types/elevation/component.d.ts +11 -10
  607. package/build-types/elevation/component.d.ts.map +1 -1
  608. package/build-types/elevation/hook.d.ts +6 -7
  609. package/build-types/elevation/hook.d.ts.map +1 -1
  610. package/build-types/elevation/index.d.ts +2 -2
  611. package/build-types/elevation/index.d.ts.map +1 -1
  612. package/build-types/elevation/stories/index.d.ts +22 -0
  613. package/build-types/elevation/stories/index.d.ts.map +1 -0
  614. package/build-types/elevation/styles.d.ts +1 -1
  615. package/build-types/elevation/styles.d.ts.map +1 -1
  616. package/build-types/elevation/test/index.d.ts +2 -0
  617. package/build-types/elevation/test/index.d.ts.map +1 -0
  618. package/build-types/elevation/types.d.ts +12 -19
  619. package/build-types/elevation/types.d.ts.map +1 -1
  620. package/build-types/external-link/index.d.ts.map +1 -1
  621. package/build-types/flex/flex/component.d.ts +16 -21
  622. package/build-types/flex/flex/component.d.ts.map +1 -1
  623. package/build-types/flex/flex/hook.d.ts +5 -2
  624. package/build-types/flex/flex/hook.d.ts.map +1 -1
  625. package/build-types/flex/flex/index.d.ts +2 -2
  626. package/build-types/flex/flex/index.d.ts.map +1 -1
  627. package/build-types/flex/flex-block/component.d.ts +14 -7
  628. package/build-types/flex/flex-block/component.d.ts.map +1 -1
  629. package/build-types/flex/flex-block/hook.d.ts +6 -3
  630. package/build-types/flex/flex-block/hook.d.ts.map +1 -1
  631. package/build-types/flex/flex-block/index.d.ts +2 -2
  632. package/build-types/flex/flex-block/index.d.ts.map +1 -1
  633. package/build-types/flex/flex-item/component.d.ts +14 -7
  634. package/build-types/flex/flex-item/component.d.ts.map +1 -1
  635. package/build-types/flex/flex-item/hook.d.ts +6 -3
  636. package/build-types/flex/flex-item/hook.d.ts.map +1 -1
  637. package/build-types/flex/flex-item/index.d.ts +2 -2
  638. package/build-types/flex/flex-item/index.d.ts.map +1 -1
  639. package/build-types/flex/index.d.ts +3 -3
  640. package/build-types/flex/index.d.ts.map +1 -1
  641. package/build-types/flex/stories/index.d.ts +13 -0
  642. package/build-types/flex/stories/index.d.ts.map +1 -0
  643. package/build-types/flex/styles.d.ts +5 -5
  644. package/build-types/flex/styles.d.ts.map +1 -1
  645. package/build-types/flex/test/index.d.ts +2 -0
  646. package/build-types/flex/test/index.d.ts.map +1 -0
  647. package/build-types/flex/types.d.ts +17 -10
  648. package/build-types/flex/types.d.ts.map +1 -1
  649. package/build-types/flyout/context.d.ts +6 -0
  650. package/build-types/flyout/context.d.ts.map +1 -0
  651. package/build-types/flyout/flyout/component.d.ts +21 -0
  652. package/build-types/flyout/flyout/component.d.ts.map +1 -0
  653. package/build-types/flyout/flyout/hook.d.ts +270 -0
  654. package/build-types/flyout/flyout/hook.d.ts.map +1 -0
  655. package/build-types/flyout/flyout/index.d.ts +3 -0
  656. package/build-types/flyout/flyout/index.d.ts.map +1 -0
  657. package/build-types/flyout/flyout-content/component.d.ts +3 -0
  658. package/build-types/flyout/flyout-content/component.d.ts.map +1 -0
  659. package/build-types/flyout/flyout-content/index.d.ts +2 -0
  660. package/build-types/flyout/flyout-content/index.d.ts.map +1 -0
  661. package/build-types/flyout/index.d.ts +2 -0
  662. package/build-types/flyout/index.d.ts.map +1 -0
  663. package/build-types/flyout/styles.d.ts +22 -0
  664. package/build-types/flyout/styles.d.ts.map +1 -0
  665. package/build-types/flyout/types.d.ts +80 -0
  666. package/build-types/flyout/types.d.ts.map +1 -0
  667. package/build-types/flyout/utils.d.ts +8 -0
  668. package/build-types/flyout/utils.d.ts.map +1 -0
  669. package/build-types/form-token-field/index.d.ts.map +1 -1
  670. package/build-types/form-token-field/stories/index.d.ts +6 -0
  671. package/build-types/form-token-field/stories/index.d.ts.map +1 -1
  672. package/build-types/form-token-field/styles.d.ts +14 -0
  673. package/build-types/form-token-field/styles.d.ts.map +1 -0
  674. package/build-types/form-token-field/suggestions-list.d.ts +1 -1
  675. package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
  676. package/build-types/form-token-field/types.d.ts +22 -3
  677. package/build-types/form-token-field/types.d.ts.map +1 -1
  678. package/build-types/grid/component.d.ts +3 -3
  679. package/build-types/grid/component.d.ts.map +1 -1
  680. package/build-types/grid/hook.d.ts +5 -2
  681. package/build-types/grid/hook.d.ts.map +1 -1
  682. package/build-types/grid/index.d.ts +2 -2
  683. package/build-types/grid/index.d.ts.map +1 -1
  684. package/build-types/grid/stories/index.d.ts +9 -0
  685. package/build-types/grid/stories/index.d.ts.map +1 -0
  686. package/build-types/grid/test/grid.d.ts +2 -0
  687. package/build-types/grid/test/grid.d.ts.map +1 -0
  688. package/build-types/grid/types.d.ts +16 -15
  689. package/build-types/grid/types.d.ts.map +1 -1
  690. package/build-types/grid/utils.d.ts +50 -69
  691. package/build-types/grid/utils.d.ts.map +1 -1
  692. package/build-types/h-stack/component.d.ts +3 -2
  693. package/build-types/h-stack/component.d.ts.map +1 -1
  694. package/build-types/h-stack/hook.d.ts +5 -3
  695. package/build-types/h-stack/hook.d.ts.map +1 -1
  696. package/build-types/h-stack/index.d.ts +2 -2
  697. package/build-types/h-stack/index.d.ts.map +1 -1
  698. package/build-types/h-stack/stories/index.d.ts +9 -0
  699. package/build-types/h-stack/stories/index.d.ts.map +1 -0
  700. package/build-types/h-stack/test/index.d.ts +2 -0
  701. package/build-types/h-stack/test/index.d.ts.map +1 -0
  702. package/build-types/h-stack/utils.d.ts +8 -4
  703. package/build-types/h-stack/utils.d.ts.map +1 -1
  704. package/build-types/icon/index.d.ts +1 -1
  705. package/build-types/icon/index.d.ts.map +1 -1
  706. package/build-types/input-control/index.d.ts +1 -1
  707. package/build-types/input-control/index.d.ts.map +1 -1
  708. package/build-types/input-control/input-base.d.ts +1 -1
  709. package/build-types/input-control/input-base.d.ts.map +1 -1
  710. package/build-types/input-control/input-prefix-wrapper.d.ts +19 -0
  711. package/build-types/input-control/input-prefix-wrapper.d.ts.map +1 -0
  712. package/build-types/input-control/input-suffix-wrapper.d.ts +19 -0
  713. package/build-types/input-control/input-suffix-wrapper.d.ts.map +1 -0
  714. package/build-types/input-control/reducer/actions.d.ts +3 -1
  715. package/build-types/input-control/reducer/actions.d.ts.map +1 -1
  716. package/build-types/input-control/reducer/reducer.d.ts +2 -2
  717. package/build-types/input-control/reducer/reducer.d.ts.map +1 -1
  718. package/build-types/input-control/reducer/state.d.ts +2 -2
  719. package/build-types/input-control/reducer/state.d.ts.map +1 -1
  720. package/build-types/input-control/stories/index.d.ts +10 -0
  721. package/build-types/input-control/stories/index.d.ts.map +1 -1
  722. package/build-types/input-control/styles/input-control-styles.d.ts +21 -0
  723. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  724. package/build-types/input-control/types.d.ts +45 -3
  725. package/build-types/input-control/types.d.ts.map +1 -1
  726. package/build-types/menu-item/index.d.ts.map +1 -1
  727. package/build-types/placeholder/index.d.ts +16 -0
  728. package/build-types/placeholder/index.d.ts.map +1 -0
  729. package/build-types/placeholder/stories/index.d.ts +12 -0
  730. package/build-types/placeholder/stories/index.d.ts.map +1 -0
  731. package/build-types/placeholder/types.d.ts +47 -0
  732. package/build-types/placeholder/types.d.ts.map +1 -0
  733. package/build-types/popover/index.d.ts +1 -1
  734. package/build-types/popover/index.d.ts.map +1 -1
  735. package/build-types/popover/utils.d.ts +70 -0
  736. package/build-types/popover/utils.d.ts.map +1 -0
  737. package/build-types/radio-control/index.d.ts.map +1 -1
  738. package/build-types/range-control/index.d.ts +54 -29
  739. package/build-types/range-control/index.d.ts.map +1 -1
  740. package/build-types/range-control/input-range.d.ts +7 -10
  741. package/build-types/range-control/input-range.d.ts.map +1 -1
  742. package/build-types/range-control/mark.d.ts +4 -7
  743. package/build-types/range-control/mark.d.ts.map +1 -1
  744. package/build-types/range-control/rail.d.ts +4 -9
  745. package/build-types/range-control/rail.d.ts.map +1 -1
  746. package/build-types/range-control/stories/index.d.ts +48 -0
  747. package/build-types/range-control/stories/index.d.ts.map +1 -0
  748. package/build-types/range-control/styles/range-control-styles.d.ts +32 -40
  749. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  750. package/build-types/range-control/test/index.d.ts +2 -0
  751. package/build-types/range-control/test/index.d.ts.map +1 -0
  752. package/build-types/range-control/tooltip.d.ts +4 -11
  753. package/build-types/range-control/tooltip.d.ts.map +1 -1
  754. package/build-types/range-control/types.d.ts +304 -0
  755. package/build-types/range-control/types.d.ts.map +1 -0
  756. package/build-types/range-control/utils.d.ts +15 -33
  757. package/build-types/range-control/utils.d.ts.map +1 -1
  758. package/build-types/resizable-box/resize-tooltip/utils.d.ts.map +1 -1
  759. package/build-types/scroll-lock/index.d.ts +32 -3
  760. package/build-types/scroll-lock/index.d.ts.map +1 -1
  761. package/build-types/scroll-lock/stories/index.d.ts +9 -0
  762. package/build-types/scroll-lock/stories/index.d.ts.map +1 -0
  763. package/build-types/scroll-lock/test/index.d.ts +2 -0
  764. package/build-types/scroll-lock/test/index.d.ts.map +1 -0
  765. package/build-types/scrollable/component.d.ts +3 -3
  766. package/build-types/scrollable/component.d.ts.map +1 -1
  767. package/build-types/scrollable/hook.d.ts +5 -2
  768. package/build-types/scrollable/hook.d.ts.map +1 -1
  769. package/build-types/scrollable/index.d.ts +2 -2
  770. package/build-types/scrollable/index.d.ts.map +1 -1
  771. package/build-types/scrollable/stories/index.d.ts +9 -0
  772. package/build-types/scrollable/stories/index.d.ts.map +1 -0
  773. package/build-types/scrollable/styles.d.ts +7 -7
  774. package/build-types/scrollable/styles.d.ts.map +1 -1
  775. package/build-types/scrollable/test/index.d.ts +2 -0
  776. package/build-types/scrollable/test/index.d.ts.map +1 -0
  777. package/build-types/scrollable/types.d.ts +9 -6
  778. package/build-types/scrollable/types.d.ts.map +1 -1
  779. package/build-types/select-control/index.d.ts.map +1 -1
  780. package/build-types/select-control/styles/select-control-styles.d.ts +1 -1
  781. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  782. package/build-types/select-control/types.d.ts +1 -1
  783. package/build-types/select-control/types.d.ts.map +1 -1
  784. package/build-types/shortcut/index.d.ts +5 -24
  785. package/build-types/shortcut/index.d.ts.map +1 -1
  786. package/build-types/shortcut/test/index.d.ts +2 -0
  787. package/build-types/shortcut/test/index.d.ts.map +1 -0
  788. package/build-types/shortcut/types.d.ts +14 -0
  789. package/build-types/shortcut/types.d.ts.map +1 -0
  790. package/build-types/slot-fill/provider.d.ts.map +1 -1
  791. package/build-types/slot-fill/slot.d.ts.map +1 -1
  792. package/build-types/spacer/component.d.ts +5 -3
  793. package/build-types/spacer/component.d.ts.map +1 -1
  794. package/build-types/spacer/hook.d.ts +2 -2
  795. package/build-types/spacer/hook.d.ts.map +1 -1
  796. package/build-types/spacer/index.d.ts +1 -1
  797. package/build-types/spacer/index.d.ts.map +1 -1
  798. package/build-types/spacer/test/index.d.ts +2 -0
  799. package/build-types/spacer/test/index.d.ts.map +1 -0
  800. package/build-types/spacer/types.d.ts +41 -29
  801. package/build-types/spacer/types.d.ts.map +1 -1
  802. package/build-types/style-provider/index.d.ts +7 -4
  803. package/build-types/style-provider/index.d.ts.map +1 -1
  804. package/build-types/style-provider/types.d.ts +15 -0
  805. package/build-types/style-provider/types.d.ts.map +1 -0
  806. package/build-types/swatch/index.d.ts +5 -0
  807. package/build-types/swatch/index.d.ts.map +1 -0
  808. package/build-types/swatch/types.d.ts +11 -0
  809. package/build-types/swatch/types.d.ts.map +1 -0
  810. package/build-types/text/hook.d.ts.map +1 -1
  811. package/build-types/text-highlight/index.d.ts +23 -0
  812. package/build-types/text-highlight/index.d.ts.map +1 -0
  813. package/build-types/text-highlight/stories/index.d.ts +12 -0
  814. package/build-types/text-highlight/stories/index.d.ts.map +1 -0
  815. package/build-types/text-highlight/test/index.d.ts +2 -0
  816. package/build-types/text-highlight/test/index.d.ts.map +1 -0
  817. package/build-types/text-highlight/types.d.ts +17 -0
  818. package/build-types/text-highlight/types.d.ts.map +1 -0
  819. package/build-types/tip/index.d.ts +5 -14
  820. package/build-types/tip/index.d.ts.map +1 -1
  821. package/build-types/tip/stories/index.d.ts +12 -0
  822. package/build-types/tip/stories/index.d.ts.map +1 -0
  823. package/build-types/tip/types.d.ts +11 -0
  824. package/build-types/tip/types.d.ts.map +1 -0
  825. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +5 -1
  826. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  827. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +0 -1
  828. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  829. package/build-types/toggle-group-control/types.d.ts +6 -0
  830. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  831. package/build-types/tools-panel/styles.d.ts +1 -1
  832. package/build-types/tools-panel/styles.d.ts.map +1 -1
  833. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  834. package/build-types/tooltip/index.d.ts.map +1 -1
  835. package/build-types/tree-select/index.d.ts.map +1 -1
  836. package/build-types/tree-select/types.d.ts +1 -0
  837. package/build-types/tree-select/types.d.ts.map +1 -1
  838. package/build-types/ui/context/use-context-system.d.ts.map +1 -1
  839. package/build-types/ui/form-group/form-group.d.ts +1 -1
  840. package/build-types/ui/form-group/types.d.ts +1 -1
  841. package/build-types/ui/form-group/types.d.ts.map +1 -1
  842. package/build-types/ui/form-group/use-form-group.d.ts +3 -3
  843. package/build-types/ui/tooltip/styles.d.ts.map +1 -1
  844. package/build-types/ui/utils/get-valid-children.d.ts +2 -2
  845. package/build-types/ui/utils/get-valid-children.d.ts.map +1 -1
  846. package/build-types/ui/utils/space.d.ts +7 -1
  847. package/build-types/ui/utils/space.d.ts.map +1 -1
  848. package/build-types/unit-control/index.d.ts +3 -3
  849. package/build-types/unit-control/index.d.ts.map +1 -1
  850. package/build-types/unit-control/stories/index.d.ts.map +1 -1
  851. package/build-types/unit-control/styles/unit-control-styles.d.ts +0 -1
  852. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  853. package/build-types/unit-control/types.d.ts +2 -8
  854. package/build-types/unit-control/types.d.ts.map +1 -1
  855. package/build-types/utils/base-label.d.ts +2 -0
  856. package/build-types/utils/base-label.d.ts.map +1 -0
  857. package/build-types/utils/box-sizing.d.ts +2 -0
  858. package/build-types/utils/box-sizing.d.ts.map +1 -0
  859. package/build-types/utils/hooks/use-combined-ref.d.ts +8 -0
  860. package/build-types/utils/hooks/use-combined-ref.d.ts.map +1 -0
  861. package/build-types/utils/style-mixins.d.ts +2 -0
  862. package/build-types/visually-hidden/component.d.ts +8 -10
  863. package/build-types/visually-hidden/component.d.ts.map +1 -1
  864. package/build-types/visually-hidden/index.d.ts +1 -1
  865. package/build-types/visually-hidden/index.d.ts.map +1 -1
  866. package/build-types/visually-hidden/stories/index.d.ts +14 -0
  867. package/build-types/visually-hidden/stories/index.d.ts.map +1 -0
  868. package/build-types/visually-hidden/styles.d.ts +5 -2
  869. package/build-types/visually-hidden/styles.d.ts.map +1 -1
  870. package/build-types/visually-hidden/test/index.d.ts +2 -0
  871. package/build-types/visually-hidden/test/index.d.ts.map +1 -0
  872. package/build-types/visually-hidden/types.d.ts +11 -0
  873. package/build-types/visually-hidden/types.d.ts.map +1 -0
  874. package/package.json +17 -17
  875. package/src/angle-picker-control/index.js +1 -2
  876. package/src/autocomplete/get-default-use-items.js +3 -2
  877. package/src/autocomplete/index.js +3 -2
  878. package/src/base-control/index.tsx +5 -3
  879. package/src/base-control/stories/index.tsx +1 -0
  880. package/src/base-control/styles/base-control-styles.ts +10 -1
  881. package/src/base-control/types.ts +0 -1
  882. package/src/border-control/border-control/component.tsx +41 -32
  883. package/src/border-control/border-control/hook.ts +5 -10
  884. package/src/border-control/border-control-dropdown/component.tsx +50 -45
  885. package/src/border-control/border-control-dropdown/hook.ts +0 -5
  886. package/src/border-control/stories/index.tsx +3 -0
  887. package/src/border-control/styles.ts +25 -70
  888. package/src/border-control/test/index.js +19 -8
  889. package/src/box-control/all-input-control.js +3 -27
  890. package/src/box-control/axial-input-controls.js +1 -1
  891. package/src/box-control/index.js +6 -7
  892. package/src/box-control/styles/box-control-styles.js +1 -2
  893. package/src/box-control/utils.js +38 -13
  894. package/src/button/README.md +1 -1
  895. package/src/card/test/__snapshots__/index.js.snap +8 -8
  896. package/src/color-palette/index.js +19 -8
  897. package/src/color-palette/style.scss +5 -0
  898. package/src/color-palette/test/utils.ts +19 -1
  899. package/src/color-picker/hex-input.tsx +5 -3
  900. package/src/color-picker/index.native.js +20 -27
  901. package/src/color-picker/input-with-slider.tsx +4 -1
  902. package/src/color-picker/styles.ts +3 -16
  903. package/src/color-picker/use-deprecated-props.ts +24 -43
  904. package/src/combobox-control/README.md +7 -0
  905. package/src/combobox-control/index.js +34 -17
  906. package/src/combobox-control/stories/index.js +51 -6
  907. package/src/combobox-control/style.scss +1 -1
  908. package/src/combobox-control/styles.ts +27 -0
  909. package/src/confirm-dialog/README.md +1 -1
  910. package/src/custom-gradient-picker/style.scss +0 -12
  911. package/src/custom-select-control/index.js +47 -28
  912. package/src/custom-select-control/stories/index.js +7 -2
  913. package/src/custom-select-control/style.scss +5 -34
  914. package/src/date-time/time/index.tsx +7 -5
  915. package/src/date-time/time/styles.ts +3 -6
  916. package/src/divider/README.md +12 -5
  917. package/src/divider/component.tsx +2 -3
  918. package/src/divider/index.ts +1 -1
  919. package/src/divider/stories/index.tsx +4 -4
  920. package/src/divider/styles.ts +7 -7
  921. package/src/divider/test/__snapshots__/{index.js.snap → index.tsx.snap} +7 -7
  922. package/src/divider/test/index.tsx +40 -0
  923. package/src/divider/types.ts +21 -15
  924. package/src/draggable/README.md +1 -1
  925. package/src/dropdown/dropdown-content-wrapper.tsx +59 -0
  926. package/src/dropdown/stories/index.js +60 -69
  927. package/src/dropdown/styles.ts +38 -0
  928. package/src/dropdown/types.ts +8 -0
  929. package/src/dropdown-menu/index.js +3 -4
  930. package/src/dropdown-menu/index.native.js +3 -5
  931. package/src/elevation/README.md +16 -14
  932. package/src/elevation/component.tsx +48 -0
  933. package/src/elevation/{hook.js → hook.ts} +23 -20
  934. package/src/elevation/{index.js → index.ts} +0 -0
  935. package/src/elevation/stories/index.tsx +85 -0
  936. package/src/elevation/{styles.js → styles.ts} +0 -0
  937. package/src/elevation/test/__snapshots__/{index.js.snap → index.tsx.snap} +19 -13
  938. package/src/elevation/test/index.tsx +64 -0
  939. package/src/elevation/types.ts +12 -19
  940. package/src/external-link/index.tsx +20 -4
  941. package/src/flex/flex/README.md +20 -18
  942. package/src/flex/flex/component.tsx +59 -0
  943. package/src/flex/flex/{hook.js → hook.ts} +14 -13
  944. package/src/flex/flex/{index.js → index.ts} +0 -0
  945. package/src/flex/flex-block/README.md +3 -7
  946. package/src/flex/flex-block/component.tsx +41 -0
  947. package/src/flex/flex-block/{hook.js → hook.ts} +5 -5
  948. package/src/flex/flex-block/{index.js → index.ts} +0 -0
  949. package/src/flex/flex-item/README.md +6 -9
  950. package/src/flex/flex-item/component.tsx +41 -0
  951. package/src/flex/flex-item/{hook.js → hook.ts} +10 -7
  952. package/src/flex/flex-item/{index.js → index.ts} +0 -0
  953. package/src/flex/{index.js → index.ts} +0 -0
  954. package/src/flex/stories/index.tsx +81 -0
  955. package/src/flex/{styles.js → styles.ts} +0 -0
  956. package/src/flex/test/__snapshots__/{index.js.snap → index.tsx.snap} +49 -9
  957. package/src/flex/test/index.tsx +84 -0
  958. package/src/flex/types.ts +17 -10
  959. package/src/focal-point-picker/grid.js +2 -5
  960. package/src/focal-point-picker/index.native.js +8 -8
  961. package/src/focal-point-picker/styles/focal-point-picker-style.js +0 -5
  962. package/src/focal-point-picker/styles/focal-point-style.js +0 -1
  963. package/src/focal-point-picker/tooltip/index.native.js +10 -11
  964. package/src/font-size-picker/index.js +18 -7
  965. package/src/font-size-picker/stories/index.js +6 -0
  966. package/src/form-token-field/README.md +2 -1
  967. package/src/form-token-field/index.tsx +50 -26
  968. package/src/form-token-field/stories/index.tsx +14 -0
  969. package/src/form-token-field/style.scss +2 -12
  970. package/src/form-token-field/styles.ts +32 -0
  971. package/src/form-token-field/suggestions-list.tsx +23 -16
  972. package/src/form-token-field/test/index.js +1 -1
  973. package/src/form-token-field/types.ts +23 -2
  974. package/src/grid/README.md +33 -19
  975. package/src/grid/{component.js → component.tsx} +13 -9
  976. package/src/grid/{hook.js → hook.ts} +5 -5
  977. package/src/grid/{index.js → index.ts} +0 -0
  978. package/src/grid/stories/index.tsx +72 -0
  979. package/src/grid/test/{grid.js → grid.tsx} +4 -4
  980. package/src/grid/types.ts +16 -17
  981. package/src/grid/{utils.js → utils.ts} +9 -7
  982. package/src/guide/style.scss +1 -0
  983. package/src/h-stack/{component.js → component.tsx} +8 -8
  984. package/src/h-stack/{hook.js → hook.tsx} +21 -16
  985. package/src/h-stack/{index.js → index.ts} +0 -0
  986. package/src/h-stack/stories/index.tsx +92 -0
  987. package/src/h-stack/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  988. package/src/h-stack/test/{index.js → index.tsx} +0 -0
  989. package/src/h-stack/{utils.js → utils.ts} +14 -14
  990. package/src/higher-order/navigate-regions/README.md +4 -1
  991. package/src/icon/index.tsx +1 -1
  992. package/src/index.js +7 -1
  993. package/src/input-control/index.tsx +6 -0
  994. package/src/input-control/input-base.tsx +28 -13
  995. package/src/input-control/input-prefix-wrapper.tsx +48 -0
  996. package/src/input-control/input-suffix-wrapper.tsx +48 -0
  997. package/src/input-control/reducer/actions.ts +3 -1
  998. package/src/input-control/reducer/reducer.ts +27 -10
  999. package/src/input-control/reducer/state.ts +7 -2
  1000. package/src/input-control/stories/index.tsx +15 -2
  1001. package/src/input-control/styles/input-control-styles.tsx +28 -12
  1002. package/src/input-control/test/index.js +20 -4
  1003. package/src/input-control/types.ts +52 -3
  1004. package/src/menu-item/index.js +1 -2
  1005. package/src/mobile/focal-point-settings-panel/index.native.js +2 -2
  1006. package/src/mobile/global-styles-context/utils.native.js +21 -4
  1007. package/src/mobile/image/index.native.js +38 -7
  1008. package/src/mobile/link-picker/link-picker-screen.native.js +12 -4
  1009. package/src/mobile/media-edit/index.native.js +2 -7
  1010. package/src/mobile/picker/index.ios.js +16 -0
  1011. package/src/mobile/picker/styles.native.scss +8 -0
  1012. package/src/modal/index.js +21 -2
  1013. package/src/modal/stories/index.js +17 -1
  1014. package/src/modal/style.scss +14 -19
  1015. package/src/navigation/index.js +3 -0
  1016. package/src/navigation/item/base.js +2 -1
  1017. package/src/panel/style.scss +4 -1
  1018. package/src/placeholder/README.md +49 -9
  1019. package/src/placeholder/{index.js → index.tsx} +27 -23
  1020. package/src/placeholder/stories/index.tsx +64 -0
  1021. package/src/placeholder/style.scss +0 -4
  1022. package/src/placeholder/types.ts +48 -0
  1023. package/src/popover/README.md +9 -2
  1024. package/src/popover/index.js +160 -79
  1025. package/src/popover/stories/index.js +199 -96
  1026. package/src/popover/style.scss +61 -7
  1027. package/src/popover/test/index.js +23 -1
  1028. package/src/radio-control/index.tsx +1 -2
  1029. package/src/range-control/README.md +108 -80
  1030. package/src/range-control/{index.js → index.tsx} +78 -48
  1031. package/src/range-control/{input-range.js → input-range.tsx} +11 -7
  1032. package/src/range-control/{mark.js → mark.tsx} +15 -9
  1033. package/src/range-control/{rail.js → rail.tsx} +40 -23
  1034. package/src/range-control/stories/index.tsx +244 -0
  1035. package/src/range-control/styles/{range-control-styles.js → range-control-styles.ts} +28 -36
  1036. package/src/range-control/test/index.tsx +341 -0
  1037. package/src/range-control/{tooltip.js → tooltip.tsx} +19 -14
  1038. package/src/range-control/types.ts +328 -0
  1039. package/src/range-control/utils.ts +135 -0
  1040. package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -1
  1041. package/src/resizable-box/resize-tooltip/utils.ts +2 -3
  1042. package/src/sandbox/index.native.js +14 -1
  1043. package/src/scroll-lock/README.md +1 -1
  1044. package/src/scroll-lock/{index.js → index.tsx} +34 -7
  1045. package/src/scroll-lock/stories/index.tsx +96 -0
  1046. package/src/scroll-lock/test/index.tsx +26 -0
  1047. package/src/scrollable/README.md +14 -8
  1048. package/src/scrollable/{component.js → component.tsx} +13 -10
  1049. package/src/scrollable/{hook.js → hook.ts} +5 -7
  1050. package/src/scrollable/{index.js → index.ts} +0 -0
  1051. package/src/scrollable/stories/{index.js → index.tsx} +29 -34
  1052. package/src/scrollable/{styles.js → styles.ts} +0 -0
  1053. package/src/scrollable/test/__snapshots__/{index.js.snap → index.tsx.snap} +1 -0
  1054. package/src/scrollable/test/index.tsx +34 -0
  1055. package/src/scrollable/types.ts +10 -5
  1056. package/src/select-control/index.tsx +1 -2
  1057. package/src/select-control/styles/select-control-styles.ts +33 -10
  1058. package/src/select-control/test/select-control.tsx +22 -15
  1059. package/src/select-control/types.ts +1 -0
  1060. package/src/shortcut/index.tsx +32 -0
  1061. package/src/shortcut/test/__snapshots__/index.tsx.snap +15 -0
  1062. package/src/shortcut/test/index.tsx +41 -0
  1063. package/src/shortcut/types.ts +10 -0
  1064. package/src/slot-fill/index.native.js +2 -7
  1065. package/src/slot-fill/provider.js +3 -7
  1066. package/src/slot-fill/slot.js +21 -24
  1067. package/src/spacer/README.md +43 -37
  1068. package/src/spacer/component.tsx +5 -3
  1069. package/src/spacer/hook.ts +4 -2
  1070. package/src/spacer/index.ts +1 -1
  1071. package/src/spacer/test/__snapshots__/{index.js.snap → index.tsx.snap} +1 -0
  1072. package/src/spacer/test/index.tsx +149 -0
  1073. package/src/spacer/types.ts +41 -29
  1074. package/src/style-provider/index.tsx +41 -0
  1075. package/src/style-provider/types.ts +15 -0
  1076. package/src/swatch/{index.js → index.tsx} +4 -1
  1077. package/src/swatch/types.ts +11 -0
  1078. package/src/tab-panel/README.md +1 -1
  1079. package/src/text/hook.js +5 -3
  1080. package/src/text-highlight/README.md +6 -6
  1081. package/src/text-highlight/index.tsx +49 -0
  1082. package/src/text-highlight/stories/index.tsx +33 -0
  1083. package/src/text-highlight/test/index.tsx +93 -0
  1084. package/src/text-highlight/types.ts +16 -0
  1085. package/src/tip/index.tsx +22 -0
  1086. package/src/tip/stories/index.tsx +33 -0
  1087. package/src/tip/types.ts +11 -0
  1088. package/src/toggle-group-control/stories/index.js +19 -3
  1089. package/src/toggle-group-control/test/__snapshots__/index.js.snap +28 -4
  1090. package/src/toggle-group-control/toggle-group-control/component.tsx +3 -3
  1091. package/src/toggle-group-control/toggle-group-control/styles.ts +22 -2
  1092. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +0 -4
  1093. package/src/toggle-group-control/types.ts +6 -0
  1094. package/src/toolbar-group/index.js +1 -2
  1095. package/src/tools-panel/styles.ts +7 -16
  1096. package/src/tools-panel/test/__snapshots__/index.js.snap +2 -11
  1097. package/src/tools-panel/tools-panel/README.md +94 -21
  1098. package/src/tools-panel/tools-panel/hook.ts +6 -1
  1099. package/src/tooltip/index.js +56 -10
  1100. package/src/tooltip/stories/index.js +28 -13
  1101. package/src/tooltip/style.scss +1 -1
  1102. package/src/tree-select/index.tsx +7 -6
  1103. package/src/tree-select/types.ts +4 -0
  1104. package/src/ui/context/test/context-system-provider.js +101 -1
  1105. package/src/ui/context/use-context-system.js +7 -2
  1106. package/src/ui/form-group/types.ts +1 -1
  1107. package/src/ui/tooltip/styles.js +1 -0
  1108. package/src/ui/tooltip/test/__snapshots__/index.js.snap +1 -0
  1109. package/src/ui/utils/get-valid-children.ts +4 -2
  1110. package/src/ui/utils/space.ts +7 -1
  1111. package/src/unit-control/stories/index.tsx +16 -23
  1112. package/src/unit-control/styles/unit-control-styles.ts +100 -46
  1113. package/src/unit-control/test/__snapshots__/index.tsx.snap +4 -4
  1114. package/src/unit-control/types.ts +2 -8
  1115. package/src/utils/base-label.ts +13 -0
  1116. package/src/utils/box-sizing.ts +14 -0
  1117. package/src/utils/style-mixins.js +2 -0
  1118. package/src/visually-hidden/{component.js → component.tsx} +23 -15
  1119. package/src/visually-hidden/{index.js → index.ts} +0 -0
  1120. package/src/visually-hidden/stories/index.tsx +66 -0
  1121. package/src/visually-hidden/{styles.js → styles.ts} +6 -2
  1122. package/src/visually-hidden/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  1123. package/src/visually-hidden/test/index.tsx +17 -0
  1124. package/src/visually-hidden/types.ts +11 -0
  1125. package/tsconfig.json +3 -0
  1126. package/tsconfig.tsbuildinfo +1 -1
  1127. package/src/divider/test/index.js +0 -41
  1128. package/src/elevation/component.js +0 -43
  1129. package/src/elevation/stories/index.js +0 -148
  1130. package/src/elevation/test/index.js +0 -51
  1131. package/src/flex/flex/component.js +0 -60
  1132. package/src/flex/flex-block/component.js +0 -30
  1133. package/src/flex/flex-item/component.js +0 -30
  1134. package/src/flex/stories/index.js +0 -29
  1135. package/src/flex/test/index.js +0 -77
  1136. package/src/grid/stories/index.js +0 -49
  1137. package/src/h-stack/stories/index.js +0 -22
  1138. package/src/placeholder/stories/index.js +0 -44
  1139. package/src/popover/stories/_utils.js +0 -64
  1140. package/src/range-control/stories/index.js +0 -180
  1141. package/src/range-control/test/index.js +0 -320
  1142. package/src/range-control/utils.js +0 -131
  1143. package/src/scroll-lock/stories/index.js +0 -71
  1144. package/src/scroll-lock/test/index.js +0 -53
  1145. package/src/scrollable/test/index.js +0 -31
  1146. package/src/shortcut/index.js +0 -41
  1147. package/src/shortcut/test/index.js +0 -37
  1148. package/src/spacer/test/index.js +0 -146
  1149. package/src/style-provider/index.js +0 -31
  1150. package/src/text-highlight/index.js +0 -28
  1151. package/src/text-highlight/stories/index.js +0 -28
  1152. package/src/text-highlight/test/index.js +0 -120
  1153. package/src/tip/index.js +0 -24
  1154. package/src/tip/stories/index.js +0 -26
  1155. package/src/visually-hidden/stories/index.js +0 -42
  1156. package/src/visually-hidden/test/index.js +0 -19
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel/hook.ts"],"names":["useCallback","useEffect","useMemo","useRef","useState","styles","useContextSystem","useCx","DEFAULT_COLUMNS","generateMenuItems","panelItems","shouldReset","currentMenuItems","menuItems","default","optional","forEach","hasValue","isShownByDefault","label","group","existingItemValue","value","undefined","isMenuItemTypeEmpty","obj","Object","keys","length","useToolsPanel","props","className","resetAll","panelId","hasInnerWrapper","shouldRenderPlaceholderItems","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","otherProps","isResetting","wasResetting","current","setPanelItems","registerPanelItem","item","items","newItems","existingIndex","findIndex","oldItem","splice","deregisterPanelItem","index","setMenuItems","prevState","flagItemCustomization","newState","areAllOptionalControlsHidden","setAreAllOptionalControlsHidden","allControlsHidden","entries","some","isSelected","cx","classes","wrapperStyle","ToolsPanelWithInnerWrapper","emptyStyle","ToolsPanelHiddenInnerWrapper","ToolsPanel","toggleItem","currentItem","find","menuGroup","newMenuItems","resetAllItems","filters","resetAllFilter","push","resetMenuItems","getFirstVisibleItemLabel","optionalItems","firstItem","firstDisplayedItem","lastDisplayedItem","reverse","panelContext","hasMenuItems"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport type {\n\tToolsPanelItem,\n\tToolsPanelMenuItemKey,\n\tToolsPanelMenuItems,\n\tToolsPanelMenuItemsConfig,\n\tToolsPanelProps,\n} from '../types';\n\nconst DEFAULT_COLUMNS = 2;\n\nconst generateMenuItems = ( {\n\tpanelItems,\n\tshouldReset,\n\tcurrentMenuItems,\n}: ToolsPanelMenuItemsConfig ) => {\n\tconst menuItems: ToolsPanelMenuItems = { default: {}, optional: {} };\n\n\tpanelItems.forEach( ( { hasValue, isShownByDefault, label } ) => {\n\t\tconst group = isShownByDefault ? 'default' : 'optional';\n\n\t\t// If a menu item for this label already exists, do not overwrite its value.\n\t\t// This can cause default controls that have been flagged as customized to\n\t\t// lose their value.\n\t\tconst existingItemValue = currentMenuItems?.[ group ]?.[ label ];\n\t\tconst value =\n\t\t\texistingItemValue !== undefined ? existingItemValue : hasValue();\n\n\t\tmenuItems[ group ][ label ] = shouldReset ? false : value;\n\t} );\n\n\treturn menuItems;\n};\n\nconst isMenuItemTypeEmpty = (\n\tobj?: ToolsPanelMenuItems[ ToolsPanelMenuItemKey ]\n) => obj && Object.keys( obj ).length === 0;\n\nexport function useToolsPanel(\n\tprops: WordPressComponentProps< ToolsPanelProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\tresetAll,\n\t\tpanelId,\n\t\thasInnerWrapper,\n\t\tshouldRenderPlaceholderItems,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ToolsPanel' );\n\n\tconst isResetting = useRef( false );\n\tconst wasResetting = isResetting.current;\n\n\t// `isResetting` is cleared via this hook to effectively batch together\n\t// the resetAll task. Without this, the flag is cleared after the first\n\t// control updates and forces a rerender with subsequent controls then\n\t// believing they need to reset, unfortunately using stale data.\n\tuseEffect( () => {\n\t\tif ( wasResetting ) {\n\t\t\tisResetting.current = false;\n\t\t}\n\t}, [ wasResetting ] );\n\n\t// Allow panel items to register themselves.\n\tconst [ panelItems, setPanelItems ] = useState< ToolsPanelItem[] >( [] );\n\n\tconst registerPanelItem = useCallback(\n\t\t( item: ToolsPanelItem ) => {\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\t// If an item with this label has already been registered, remove it\n\t\t\t\t// first. This can happen when an item is moved between the default\n\t\t\t\t// and optional groups.\n\t\t\t\tconst existingIndex = newItems.findIndex(\n\t\t\t\t\t( oldItem ) => oldItem.label === item.label\n\t\t\t\t);\n\t\t\t\tif ( existingIndex !== -1 ) {\n\t\t\t\t\tnewItems.splice( existingIndex, 1 );\n\t\t\t\t}\n\t\t\t\treturn [ ...newItems, item ];\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems ]\n\t);\n\n\t// Panels need to deregister on unmount to avoid orphans in menu state.\n\t// This is an issue when panel items are being injected via SlotFills.\n\tconst deregisterPanelItem = useCallback(\n\t\t( label: string ) => {\n\t\t\t// When switching selections between components injecting matching\n\t\t\t// controls, e.g. both panels have a \"padding\" control, the\n\t\t\t// deregistration of the first panel doesn't occur until after the\n\t\t\t// registration of the next.\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\tconst index = newItems.findIndex(\n\t\t\t\t\t( item ) => item.label === label\n\t\t\t\t);\n\t\t\t\tif ( index !== -1 ) {\n\t\t\t\t\tnewItems.splice( index, 1 );\n\t\t\t\t}\n\t\t\t\treturn newItems;\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems ]\n\t);\n\n\t// Manage and share display state of menu items representing child controls.\n\tconst [ menuItems, setMenuItems ] = useState< ToolsPanelMenuItems >( {\n\t\tdefault: {},\n\t\toptional: {},\n\t} );\n\n\t// Setup menuItems state as panel items register themselves.\n\tuseEffect( () => {\n\t\tsetMenuItems( ( prevState ) => {\n\t\t\tconst items = generateMenuItems( {\n\t\t\t\tpanelItems,\n\t\t\t\tshouldReset: false,\n\t\t\t\tcurrentMenuItems: prevState,\n\t\t\t} );\n\t\t\treturn items;\n\t\t} );\n\t}, [ generateMenuItems, panelItems, setMenuItems ] );\n\n\t// Force a menu item to be checked.\n\t// This is intended for use with default panel items. They are displayed\n\t// separately to optional items and have different display states,\n\t// we need to update that when their value is customized.\n\tconst flagItemCustomization = useCallback(\n\t\t( label: string, group: ToolsPanelMenuItemKey = 'default' ) => {\n\t\t\tsetMenuItems( ( items ) => {\n\t\t\t\tconst newState = {\n\t\t\t\t\t...items,\n\t\t\t\t\t[ group ]: {\n\t\t\t\t\t\t...items[ group ],\n\t\t\t\t\t\t[ label ]: true,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t\treturn newState;\n\t\t\t} );\n\t\t},\n\t\t[ setMenuItems ]\n\t);\n\n\t// Whether all optional menu items are hidden or not must be tracked\n\t// in order to later determine if the panel display is empty and handle\n\t// conditional display of a plus icon to indicate the presence of further\n\t// menu items.\n\tconst [ areAllOptionalControlsHidden, setAreAllOptionalControlsHidden ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\t! isMenuItemTypeEmpty( menuItems?.optional )\n\t\t) {\n\t\t\tconst allControlsHidden = ! Object.entries(\n\t\t\t\tmenuItems.optional\n\t\t\t).some( ( [ , isSelected ] ) => isSelected );\n\t\t\tsetAreAllOptionalControlsHidden( allControlsHidden );\n\t\t}\n\t}, [ menuItems, setAreAllOptionalControlsHidden ] );\n\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\tconst wrapperStyle =\n\t\t\thasInnerWrapper &&\n\t\t\tstyles.ToolsPanelWithInnerWrapper( DEFAULT_COLUMNS );\n\t\tconst emptyStyle =\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\tareAllOptionalControlsHidden &&\n\t\t\tstyles.ToolsPanelHiddenInnerWrapper;\n\n\t\treturn cx( styles.ToolsPanel, wrapperStyle, emptyStyle, className );\n\t}, [\n\t\tareAllOptionalControlsHidden,\n\t\tclassName,\n\t\tcx,\n\t\thasInnerWrapper,\n\t\tmenuItems,\n\t] );\n\n\t// Toggle the checked state of a menu item which is then used to determine\n\t// display of the item within the panel.\n\tconst toggleItem = useCallback(\n\t\t( label: string ) => {\n\t\t\tconst currentItem = panelItems.find(\n\t\t\t\t( item ) => item.label === label\n\t\t\t);\n\n\t\t\tif ( ! currentItem ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst menuGroup = currentItem.isShownByDefault\n\t\t\t\t? 'default'\n\t\t\t\t: 'optional';\n\n\t\t\tconst newMenuItems = {\n\t\t\t\t...menuItems,\n\t\t\t\t[ menuGroup ]: {\n\t\t\t\t\t...menuItems[ menuGroup ],\n\t\t\t\t\t[ label ]: ! menuItems[ menuGroup ][ label ],\n\t\t\t\t},\n\t\t\t};\n\n\t\t\tsetMenuItems( newMenuItems );\n\t\t},\n\t\t[ menuItems, panelItems, setMenuItems ]\n\t);\n\n\t// Resets display of children and executes resetAll callback if available.\n\tconst resetAllItems = useCallback( () => {\n\t\tif ( typeof resetAll === 'function' ) {\n\t\t\tisResetting.current = true;\n\n\t\t\t// Collect available reset filters from panel items.\n\t\t\tconst filters: Array< () => void > = [];\n\t\t\tpanelItems.forEach( ( item ) => {\n\t\t\t\tif ( item.resetAllFilter ) {\n\t\t\t\t\tfilters.push( item.resetAllFilter );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tresetAll( filters );\n\t\t}\n\n\t\t// Turn off display of all non-default items.\n\t\tconst resetMenuItems = generateMenuItems( {\n\t\t\tpanelItems,\n\t\t\tshouldReset: true,\n\t\t} );\n\t\tsetMenuItems( resetMenuItems );\n\t}, [\n\t\tgenerateMenuItems,\n\t\tisResetting.current,\n\t\tpanelItems,\n\t\tresetAll,\n\t\tsetMenuItems,\n\t] );\n\n\t// Assist ItemGroup styling when there are potentially hidden placeholder\n\t// items by identifying first & last items that are toggled on for display.\n\tconst getFirstVisibleItemLabel = ( items: ToolsPanelItem[] ) => {\n\t\tconst optionalItems = menuItems.optional || {};\n\t\tconst firstItem = items.find(\n\t\t\t( item ) => item.isShownByDefault || !! optionalItems[ item.label ]\n\t\t);\n\n\t\treturn firstItem?.label;\n\t};\n\n\tconst firstDisplayedItem = getFirstVisibleItemLabel( panelItems );\n\tconst lastDisplayedItem = getFirstVisibleItemLabel(\n\t\t[ ...panelItems ].reverse()\n\t);\n\n\tconst panelContext = useMemo(\n\t\t() => ( {\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\thasMenuItems: !! panelItems.length,\n\t\t\tisResetting: isResetting.current,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tregisterPanelItem,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t} ),\n\t\t[\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\tisResetting.current,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tpanelItems,\n\t\t\tregisterPanelItem,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t]\n\t);\n\n\treturn {\n\t\t...otherProps,\n\t\tpanelContext,\n\t\tresetAllItems,\n\t\ttoggleItem,\n\t\tclassName: classes,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel/hook.ts"],"names":["useCallback","useEffect","useMemo","useRef","useState","styles","useContextSystem","useCx","DEFAULT_COLUMNS","generateMenuItems","panelItems","shouldReset","currentMenuItems","menuItems","default","optional","forEach","hasValue","isShownByDefault","label","group","existingItemValue","value","undefined","isMenuItemTypeEmpty","obj","Object","keys","length","useToolsPanel","props","className","resetAll","panelId","hasInnerWrapper","shouldRenderPlaceholderItems","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","otherProps","isResetting","wasResetting","current","setPanelItems","registerPanelItem","item","items","newItems","existingIndex","findIndex","oldItem","splice","deregisterPanelItem","index","setMenuItems","prevState","flagItemCustomization","newState","areAllOptionalControlsHidden","setAreAllOptionalControlsHidden","allControlsHidden","entries","some","isSelected","cx","classes","wrapperStyle","ToolsPanelWithInnerWrapper","emptyStyle","ToolsPanelHiddenInnerWrapper","ToolsPanel","toggleItem","currentItem","find","menuGroup","newMenuItems","resetAllItems","filters","resetAllFilter","push","resetMenuItems","getFirstVisibleItemLabel","optionalItems","firstItem","firstDisplayedItem","lastDisplayedItem","reverse","panelContext","hasMenuItems"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport type {\n\tToolsPanelItem,\n\tToolsPanelMenuItemKey,\n\tToolsPanelMenuItems,\n\tToolsPanelMenuItemsConfig,\n\tToolsPanelProps,\n} from '../types';\n\nconst DEFAULT_COLUMNS = 2;\n\nconst generateMenuItems = ( {\n\tpanelItems,\n\tshouldReset,\n\tcurrentMenuItems,\n}: ToolsPanelMenuItemsConfig ) => {\n\tconst menuItems: ToolsPanelMenuItems = { default: {}, optional: {} };\n\n\tpanelItems.forEach( ( { hasValue, isShownByDefault, label } ) => {\n\t\tconst group = isShownByDefault ? 'default' : 'optional';\n\n\t\t// If a menu item for this label already exists, do not overwrite its value.\n\t\t// This can cause default controls that have been flagged as customized to\n\t\t// lose their value.\n\t\tconst existingItemValue = currentMenuItems?.[ group ]?.[ label ];\n\t\tconst value =\n\t\t\texistingItemValue !== undefined ? existingItemValue : hasValue();\n\n\t\tmenuItems[ group ][ label ] = shouldReset ? false : value;\n\t} );\n\n\treturn menuItems;\n};\n\nconst isMenuItemTypeEmpty = (\n\tobj?: ToolsPanelMenuItems[ ToolsPanelMenuItemKey ]\n) => obj && Object.keys( obj ).length === 0;\n\nexport function useToolsPanel(\n\tprops: WordPressComponentProps< ToolsPanelProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\tresetAll,\n\t\tpanelId,\n\t\thasInnerWrapper,\n\t\tshouldRenderPlaceholderItems,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ToolsPanel' );\n\n\tconst isResetting = useRef( false );\n\tconst wasResetting = isResetting.current;\n\n\t// `isResetting` is cleared via this hook to effectively batch together\n\t// the resetAll task. Without this, the flag is cleared after the first\n\t// control updates and forces a rerender with subsequent controls then\n\t// believing they need to reset, unfortunately using stale data.\n\tuseEffect( () => {\n\t\tif ( wasResetting ) {\n\t\t\tisResetting.current = false;\n\t\t}\n\t}, [ wasResetting ] );\n\n\t// Allow panel items to register themselves.\n\tconst [ panelItems, setPanelItems ] = useState< ToolsPanelItem[] >( [] );\n\n\tconst registerPanelItem = useCallback(\n\t\t( item: ToolsPanelItem ) => {\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\t// If an item with this label has already been registered, remove it\n\t\t\t\t// first. This can happen when an item is moved between the default\n\t\t\t\t// and optional groups.\n\t\t\t\tconst existingIndex = newItems.findIndex(\n\t\t\t\t\t( oldItem ) => oldItem.label === item.label\n\t\t\t\t);\n\t\t\t\tif ( existingIndex !== -1 ) {\n\t\t\t\t\tnewItems.splice( existingIndex, 1 );\n\t\t\t\t}\n\t\t\t\treturn [ ...newItems, item ];\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems ]\n\t);\n\n\t// Panels need to deregister on unmount to avoid orphans in menu state.\n\t// This is an issue when panel items are being injected via SlotFills.\n\tconst deregisterPanelItem = useCallback(\n\t\t( label: string ) => {\n\t\t\t// When switching selections between components injecting matching\n\t\t\t// controls, e.g. both panels have a \"padding\" control, the\n\t\t\t// deregistration of the first panel doesn't occur until after the\n\t\t\t// registration of the next.\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\tconst index = newItems.findIndex(\n\t\t\t\t\t( item ) => item.label === label\n\t\t\t\t);\n\t\t\t\tif ( index !== -1 ) {\n\t\t\t\t\tnewItems.splice( index, 1 );\n\t\t\t\t}\n\t\t\t\treturn newItems;\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems ]\n\t);\n\n\t// Manage and share display state of menu items representing child controls.\n\tconst [ menuItems, setMenuItems ] = useState< ToolsPanelMenuItems >( {\n\t\tdefault: {},\n\t\toptional: {},\n\t} );\n\n\t// Setup menuItems state as panel items register themselves.\n\tuseEffect( () => {\n\t\tsetMenuItems( ( prevState ) => {\n\t\t\tconst items = generateMenuItems( {\n\t\t\t\tpanelItems,\n\t\t\t\tshouldReset: false,\n\t\t\t\tcurrentMenuItems: prevState,\n\t\t\t} );\n\t\t\treturn items;\n\t\t} );\n\t}, [ generateMenuItems, panelItems, setMenuItems ] );\n\n\t// Force a menu item to be checked.\n\t// This is intended for use with default panel items. They are displayed\n\t// separately to optional items and have different display states,\n\t// we need to update that when their value is customized.\n\tconst flagItemCustomization = useCallback(\n\t\t( label: string, group: ToolsPanelMenuItemKey = 'default' ) => {\n\t\t\tsetMenuItems( ( items ) => {\n\t\t\t\tconst newState = {\n\t\t\t\t\t...items,\n\t\t\t\t\t[ group ]: {\n\t\t\t\t\t\t...items[ group ],\n\t\t\t\t\t\t[ label ]: true,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t\treturn newState;\n\t\t\t} );\n\t\t},\n\t\t[ setMenuItems ]\n\t);\n\n\t// Whether all optional menu items are hidden or not must be tracked\n\t// in order to later determine if the panel display is empty and handle\n\t// conditional display of a plus icon to indicate the presence of further\n\t// menu items.\n\tconst [ areAllOptionalControlsHidden, setAreAllOptionalControlsHidden ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\t! isMenuItemTypeEmpty( menuItems?.optional )\n\t\t) {\n\t\t\tconst allControlsHidden = ! Object.entries(\n\t\t\t\tmenuItems.optional\n\t\t\t).some( ( [ , isSelected ] ) => isSelected );\n\t\t\tsetAreAllOptionalControlsHidden( allControlsHidden );\n\t\t}\n\t}, [ menuItems, setAreAllOptionalControlsHidden ] );\n\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\tconst wrapperStyle =\n\t\t\thasInnerWrapper &&\n\t\t\tstyles.ToolsPanelWithInnerWrapper( DEFAULT_COLUMNS );\n\t\tconst emptyStyle =\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\tareAllOptionalControlsHidden &&\n\t\t\tstyles.ToolsPanelHiddenInnerWrapper;\n\n\t\treturn cx(\n\t\t\tstyles.ToolsPanel( DEFAULT_COLUMNS ),\n\t\t\twrapperStyle,\n\t\t\temptyStyle,\n\t\t\tclassName\n\t\t);\n\t}, [\n\t\tareAllOptionalControlsHidden,\n\t\tclassName,\n\t\tcx,\n\t\thasInnerWrapper,\n\t\tmenuItems,\n\t] );\n\n\t// Toggle the checked state of a menu item which is then used to determine\n\t// display of the item within the panel.\n\tconst toggleItem = useCallback(\n\t\t( label: string ) => {\n\t\t\tconst currentItem = panelItems.find(\n\t\t\t\t( item ) => item.label === label\n\t\t\t);\n\n\t\t\tif ( ! currentItem ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst menuGroup = currentItem.isShownByDefault\n\t\t\t\t? 'default'\n\t\t\t\t: 'optional';\n\n\t\t\tconst newMenuItems = {\n\t\t\t\t...menuItems,\n\t\t\t\t[ menuGroup ]: {\n\t\t\t\t\t...menuItems[ menuGroup ],\n\t\t\t\t\t[ label ]: ! menuItems[ menuGroup ][ label ],\n\t\t\t\t},\n\t\t\t};\n\n\t\t\tsetMenuItems( newMenuItems );\n\t\t},\n\t\t[ menuItems, panelItems, setMenuItems ]\n\t);\n\n\t// Resets display of children and executes resetAll callback if available.\n\tconst resetAllItems = useCallback( () => {\n\t\tif ( typeof resetAll === 'function' ) {\n\t\t\tisResetting.current = true;\n\n\t\t\t// Collect available reset filters from panel items.\n\t\t\tconst filters: Array< () => void > = [];\n\t\t\tpanelItems.forEach( ( item ) => {\n\t\t\t\tif ( item.resetAllFilter ) {\n\t\t\t\t\tfilters.push( item.resetAllFilter );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tresetAll( filters );\n\t\t}\n\n\t\t// Turn off display of all non-default items.\n\t\tconst resetMenuItems = generateMenuItems( {\n\t\t\tpanelItems,\n\t\t\tshouldReset: true,\n\t\t} );\n\t\tsetMenuItems( resetMenuItems );\n\t}, [\n\t\tgenerateMenuItems,\n\t\tisResetting.current,\n\t\tpanelItems,\n\t\tresetAll,\n\t\tsetMenuItems,\n\t] );\n\n\t// Assist ItemGroup styling when there are potentially hidden placeholder\n\t// items by identifying first & last items that are toggled on for display.\n\tconst getFirstVisibleItemLabel = ( items: ToolsPanelItem[] ) => {\n\t\tconst optionalItems = menuItems.optional || {};\n\t\tconst firstItem = items.find(\n\t\t\t( item ) => item.isShownByDefault || !! optionalItems[ item.label ]\n\t\t);\n\n\t\treturn firstItem?.label;\n\t};\n\n\tconst firstDisplayedItem = getFirstVisibleItemLabel( panelItems );\n\tconst lastDisplayedItem = getFirstVisibleItemLabel(\n\t\t[ ...panelItems ].reverse()\n\t);\n\n\tconst panelContext = useMemo(\n\t\t() => ( {\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\thasMenuItems: !! panelItems.length,\n\t\t\tisResetting: isResetting.current,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tregisterPanelItem,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t} ),\n\t\t[\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\tisResetting.current,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tpanelItems,\n\t\t\tregisterPanelItem,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t]\n\t);\n\n\treturn {\n\t\t...otherProps,\n\t\tpanelContext,\n\t\tresetAllItems,\n\t\ttoggleItem,\n\t\tclassName: classes,\n\t};\n}\n"]}
@@ -9,8 +9,8 @@ import { includes } from 'lodash';
9
9
  * WordPress dependencies
10
10
  */
11
11
 
12
- import { Children, cloneElement, concatChildren, useEffect, useState } from '@wordpress/element';
13
- import { useDebounce } from '@wordpress/compose';
12
+ import { Children, cloneElement, concatChildren, useEffect, useState, useRef } from '@wordpress/element';
13
+ import { useDebounce, useMergeRefs } from '@wordpress/compose';
14
14
  /**
15
15
  * Internal dependencies
16
16
  */
@@ -32,33 +32,40 @@ const getDisabledElement = _ref => {
32
32
  let {
33
33
  eventHandlers,
34
34
  child,
35
- childrenWithPopover
35
+ childrenWithPopover,
36
+ mergedRefs
36
37
  } = _ref;
37
38
  return cloneElement(createElement("span", {
38
39
  className: "disabled-element-wrapper"
39
40
  }, cloneElement(eventCatcher, eventHandlers), cloneElement(child, {
40
- children: childrenWithPopover
41
- })), eventHandlers);
41
+ children: childrenWithPopover,
42
+ ref: mergedRefs
43
+ })), { ...eventHandlers
44
+ });
42
45
  };
43
46
 
44
47
  const getRegularElement = _ref2 => {
45
48
  let {
46
49
  child,
47
50
  eventHandlers,
48
- childrenWithPopover
51
+ childrenWithPopover,
52
+ mergedRefs
49
53
  } = _ref2;
50
54
  return cloneElement(child, { ...eventHandlers,
51
- children: childrenWithPopover
55
+ children: childrenWithPopover,
56
+ ref: mergedRefs
52
57
  });
53
58
  };
54
59
 
55
60
  const addPopoverToGrandchildren = _ref3 => {
56
61
  let {
62
+ anchorRef,
57
63
  grandchildren,
58
64
  isOver,
65
+ offset,
59
66
  position,
60
- text,
61
- shortcut
67
+ shortcut,
68
+ text
62
69
  } = _ref3;
63
70
  return concatChildren(grandchildren, isOver && createElement(Popover, {
64
71
  focusOnMount: false,
@@ -66,7 +73,8 @@ const addPopoverToGrandchildren = _ref3 => {
66
73
  className: "components-tooltip",
67
74
  "aria-hidden": "true",
68
75
  animate: false,
69
- offset: 12,
76
+ offset: offset,
77
+ anchorRef: anchorRef,
70
78
  __unstableShift: true
71
79
  }, text, createElement(Shortcut, {
72
80
  className: "components-tooltip__shortcut",
@@ -91,6 +99,8 @@ const emitToChild = (children, eventName, event) => {
91
99
  };
92
100
 
93
101
  function Tooltip(props) {
102
+ var _Children$toArray$;
103
+
94
104
  const {
95
105
  children,
96
106
  position = 'bottom middle',
@@ -107,10 +117,25 @@ function Tooltip(props) {
107
117
 
108
118
  const [isMouseDown, setIsMouseDown] = useState(false);
109
119
  const [isOver, setIsOver] = useState(false);
110
- const delayedSetIsOver = useDebounce(setIsOver, delay);
120
+ const delayedSetIsOver = useDebounce(setIsOver, delay); // Create a reference to the Tooltip's child, to be passed to the Popover
121
+ // so that the Tooltip can be correctly positioned. Also, merge with the
122
+ // existing ref for the first child, so that its ref is preserved.
123
+
124
+ const childRef = useRef(null);
125
+ const existingChildRef = (_Children$toArray$ = Children.toArray(children)[0]) === null || _Children$toArray$ === void 0 ? void 0 : _Children$toArray$.ref;
126
+ const mergedChildRefs = useMergeRefs([childRef, existingChildRef]);
111
127
 
112
128
  const createMouseDown = event => {
113
- // Preserve original child callback behavior.
129
+ // In firefox, the mouse down event is also fired when the select
130
+ // list is chosen.
131
+ // Cancel further processing because re-rendering of child components
132
+ // causes onChange to be triggered with the old value.
133
+ // See https://github.com/WordPress/gutenberg/pull/42483
134
+ if (event.target.tagName === 'OPTION') {
135
+ return;
136
+ } // Preserve original child callback behavior.
137
+
138
+
114
139
  emitToChild(children, 'onMouseDown', event); // On mouse down, the next `mouseup` should revert the value of the
115
140
  // instance property and remove its own event handler. The bind is
116
141
  // made on the document since the `mouseup` might not occur within
@@ -121,6 +146,15 @@ function Tooltip(props) {
121
146
  };
122
147
 
123
148
  const createMouseUp = event => {
149
+ // In firefox, the mouse up event is also fired when the select
150
+ // list is chosen.
151
+ // Cancel further processing because re-rendering of child components
152
+ // causes onChange to be triggered with the old value.
153
+ // See https://github.com/WordPress/gutenberg/pull/42483
154
+ if (event.target.tagName === 'OPTION') {
155
+ return;
156
+ }
157
+
124
158
  emitToChild(children, 'onMouseUp', event);
125
159
  document.removeEventListener('mouseup', cancelIsMouseDown);
126
160
  setIsMouseDown(false);
@@ -146,7 +180,7 @@ function Tooltip(props) {
146
180
  emitToChild(children, eventName, event); // Mouse events behave unreliably in React for disabled elements,
147
181
  // firing on mouseenter but not mouseleave. Further, the default
148
182
  // behavior for disabled elements in some browsers is to ignore
149
- // mouse events. Don't bother trying to to handle them.
183
+ // mouse events. Don't bother trying to handle them.
150
184
  //
151
185
  // See: https://github.com/facebook/react/issues/4251
152
186
 
@@ -210,10 +244,12 @@ function Tooltip(props) {
210
244
  } = child.props;
211
245
  const getElementWithPopover = disabled ? getDisabledElement : getRegularElement;
212
246
  const popoverData = {
247
+ anchorRef: childRef,
213
248
  isOver,
249
+ offset: 4,
214
250
  position,
215
- text,
216
- shortcut
251
+ shortcut,
252
+ text
217
253
  };
218
254
  const childrenWithPopover = addPopoverToGrandchildren({
219
255
  grandchildren,
@@ -222,7 +258,8 @@ function Tooltip(props) {
222
258
  return getElementWithPopover({
223
259
  child,
224
260
  eventHandlers,
225
- childrenWithPopover
261
+ childrenWithPopover,
262
+ mergedRefs: mergedChildRefs
226
263
  });
227
264
  }
228
265
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/tooltip/index.js"],"names":["includes","Children","cloneElement","concatChildren","useEffect","useState","useDebounce","Popover","Shortcut","TOOLTIP_DELAY","eventCatcher","getDisabledElement","eventHandlers","child","childrenWithPopover","children","getRegularElement","addPopoverToGrandchildren","grandchildren","isOver","position","text","shortcut","emitToChild","eventName","event","count","only","props","disabled","Tooltip","delay","isMouseDown","setIsMouseDown","setIsOver","delayedSetIsOver","createMouseDown","document","addEventListener","cancelIsMouseDown","createMouseUp","removeEventListener","createMouseEvent","type","createToggleIsOver","isDelayed","currentTarget","cancel","_isOver","clearOnUnmount","process","env","NODE_ENV","console","error","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","onMouseDown","getElementWithPopover","popoverData"],"mappings":";AAAA;;AACA;AACA;AACA;AACA,SAASA,QAAT,QAAyB,QAAzB;AAEA;AACA;AACA;;AACA,SACCC,QADD,EAECC,YAFD,EAGCC,cAHD,EAICC,SAJD,EAKCC,QALD,QAMO,oBANP;AAOA,SAASC,WAAT,QAA4B,oBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,QAAP,MAAqB,aAArB;AAEA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMC,aAAa,GAAG,GAAtB;AAEP,MAAMC,YAAY,GAAG;AAAK,EAAA,SAAS,EAAC;AAAf,EAArB;;AAEA,MAAMC,kBAAkB,GAAG;AAAA,MAAE;AAAEC,IAAAA,aAAF;AAAiBC,IAAAA,KAAjB;AAAwBC,IAAAA;AAAxB,GAAF;AAAA,SAC1BZ,YAAY,CACX;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGA,YAAY,CAAEQ,YAAF,EAAgBE,aAAhB,CADf,EAEGV,YAAY,CAAEW,KAAF,EAAS;AACtBE,IAAAA,QAAQ,EAAED;AADY,GAAT,CAFf,CADW,EAOXF,aAPW,CADc;AAAA,CAA3B;;AAWA,MAAMI,iBAAiB,GAAG;AAAA,MAAE;AAAEH,IAAAA,KAAF;AAASD,IAAAA,aAAT;AAAwBE,IAAAA;AAAxB,GAAF;AAAA,SACzBZ,YAAY,CAAEW,KAAF,EAAS,EACpB,GAAGD,aADiB;AAEpBG,IAAAA,QAAQ,EAAED;AAFU,GAAT,CADa;AAAA,CAA1B;;AAMA,MAAMG,yBAAyB,GAAG;AAAA,MAAE;AACnCC,IAAAA,aADmC;AAEnCC,IAAAA,MAFmC;AAGnCC,IAAAA,QAHmC;AAInCC,IAAAA,IAJmC;AAKnCC,IAAAA;AALmC,GAAF;AAAA,SAOjCnB,cAAc,CACbe,aADa,EAEbC,MAAM,IACL,cAAC,OAAD;AACC,IAAA,YAAY,EAAG,KADhB;AAEC,IAAA,QAAQ,EAAGC,QAFZ;AAGC,IAAA,SAAS,EAAC,oBAHX;AAIC,mBAAY,MAJb;AAKC,IAAA,OAAO,EAAG,KALX;AAMC,IAAA,MAAM,EAAG,EANV;AAOC,IAAA,eAAe;AAPhB,KASGC,IATH,EAUC,cAAC,QAAD;AACC,IAAA,SAAS,EAAC,8BADX;AAEC,IAAA,QAAQ,EAAGC;AAFZ,IAVD,CAHY,CAPmB;AAAA,CAAlC;;AA4BA,MAAMC,WAAW,GAAG,CAAER,QAAF,EAAYS,SAAZ,EAAuBC,KAAvB,KAAkC;AACrD,MAAKxB,QAAQ,CAACyB,KAAT,CAAgBX,QAAhB,MAA+B,CAApC,EAAwC;AACvC;AACA;;AAED,QAAMF,KAAK,GAAGZ,QAAQ,CAAC0B,IAAT,CAAeZ,QAAf,CAAd,CALqD,CAOrD;;AACA,MAAKF,KAAK,CAACe,KAAN,CAAYC,QAAjB,EAA4B;AAC3B;AACA;;AAED,MAAK,OAAOhB,KAAK,CAACe,KAAN,CAAaJ,SAAb,CAAP,KAAoC,UAAzC,EAAsD;AACrDX,IAAAA,KAAK,CAACe,KAAN,CAAaJ,SAAb,EAA0BC,KAA1B;AACA;AACD,CAfD;;AAiBA,SAASK,OAAT,CAAkBF,KAAlB,EAA0B;AACzB,QAAM;AACLb,IAAAA,QADK;AAELK,IAAAA,QAAQ,GAAG,eAFN;AAGLC,IAAAA,IAHK;AAILC,IAAAA,QAJK;AAKLS,IAAAA,KAAK,GAAGtB;AALH,MAMFmB,KANJ;AAOA;AACD;AACA;AACA;AACA;AACA;;AACC,QAAM,CAAEI,WAAF,EAAeC,cAAf,IAAkC5B,QAAQ,CAAE,KAAF,CAAhD;AACA,QAAM,CAAEc,MAAF,EAAUe,SAAV,IAAwB7B,QAAQ,CAAE,KAAF,CAAtC;AACA,QAAM8B,gBAAgB,GAAG7B,WAAW,CAAE4B,SAAF,EAAaH,KAAb,CAApC;;AAEA,QAAMK,eAAe,GAAKX,KAAF,IAAa;AACpC;AACAF,IAAAA,WAAW,CAAER,QAAF,EAAY,aAAZ,EAA2BU,KAA3B,CAAX,CAFoC,CAIpC;AACA;AACA;AACA;;AACAY,IAAAA,QAAQ,CAACC,gBAAT,CAA2B,SAA3B,EAAsCC,iBAAtC;AACAN,IAAAA,cAAc,CAAE,IAAF,CAAd;AACA,GAVD;;AAYA,QAAMO,aAAa,GAAKf,KAAF,IAAa;AAClCF,IAAAA,WAAW,CAAER,QAAF,EAAY,WAAZ,EAAyBU,KAAzB,CAAX;AACAY,IAAAA,QAAQ,CAACI,mBAAT,CAA8B,SAA9B,EAAyCF,iBAAzC;AACAN,IAAAA,cAAc,CAAE,KAAF,CAAd;AACA,GAJD;;AAMA,QAAMS,gBAAgB,GAAKC,IAAF,IAAY;AACpC,QAAKA,IAAI,KAAK,SAAd,EAA0B,OAAOH,aAAP;AAC1B,QAAKG,IAAI,KAAK,WAAd,EAA4B,OAAOP,eAAP;AAC5B,GAHD;AAKA;AACD;AACA;AACA;AACA;AACA;;;AACC,QAAMG,iBAAiB,GAAGG,gBAAgB,CAAE,SAAF,CAA1C;;AAEA,QAAME,kBAAkB,GAAG,CAAEpB,SAAF,EAAaqB,SAAb,KAA4B;AACtD,WAASpB,KAAF,IAAa;AACnB;AACAF,MAAAA,WAAW,CAAER,QAAF,EAAYS,SAAZ,EAAuBC,KAAvB,CAAX,CAFmB,CAInB;AACA;AACA;AACA;AACA;AACA;;AACA,UAAKA,KAAK,CAACqB,aAAN,CAAoBjB,QAAzB,EAAoC;AACnC;AACA,OAZkB,CAcnB;AACA;AACA;;;AACA,UAAK,YAAYJ,KAAK,CAACkB,IAAlB,IAA0BX,WAA/B,EAA6C;AAC5C;AACA,OAnBkB,CAqBnB;AACA;;;AACAG,MAAAA,gBAAgB,CAACY,MAAjB;;AAEA,YAAMC,OAAO,GAAGhD,QAAQ,CAAE,CAAE,OAAF,EAAW,YAAX,CAAF,EAA6ByB,KAAK,CAACkB,IAAnC,CAAxB;;AACA,UAAKK,OAAO,KAAK7B,MAAjB,EAA0B;AACzB;AACA;;AAED,UAAK0B,SAAL,EAAiB;AAChBV,QAAAA,gBAAgB,CAAEa,OAAF,CAAhB;AACA,OAFD,MAEO;AACNd,QAAAA,SAAS,CAAEc,OAAF,CAAT;AACA;AACD,KAnCD;AAoCA,GArCD;;AAsCA,QAAMC,cAAc,GAAG,MAAM;AAC5Bd,IAAAA,gBAAgB,CAACY,MAAjB;AACAV,IAAAA,QAAQ,CAACI,mBAAT,CAA8B,SAA9B,EAAyCF,iBAAzC;AACA,GAHD;;AAKAnC,EAAAA,SAAS,CAAE,MAAM6C,cAAR,EAAwB,EAAxB,CAAT;;AAEA,MAAKhD,QAAQ,CAACyB,KAAT,CAAgBX,QAAhB,MAA+B,CAApC,EAAwC;AACvC,QAAK,kBAAkBmC,OAAO,CAACC,GAAR,CAAYC,QAAnC,EAA8C;AAC7C;AACAC,MAAAA,OAAO,CAACC,KAAR,CACC,4DADD;AAGA;;AAED,WAAOvC,QAAP;AACA;;AAED,QAAMH,aAAa,GAAG;AACrB2C,IAAAA,YAAY,EAAEX,kBAAkB,CAAE,cAAF,EAAkB,IAAlB,CADX;AAErBY,IAAAA,YAAY,EAAEZ,kBAAkB,CAAE,cAAF,CAFX;AAGrBa,IAAAA,OAAO,EAAEb,kBAAkB,CAAE,SAAF,CAHN;AAIrBc,IAAAA,OAAO,EAAEd,kBAAkB,CAAE,SAAF,CAJN;AAKrBe,IAAAA,MAAM,EAAEf,kBAAkB,CAAE,QAAF,CALL;AAMrBgB,IAAAA,WAAW,EAAElB,gBAAgB,CAAE,WAAF;AANR,GAAtB;AASA,QAAM7B,KAAK,GAAGZ,QAAQ,CAAC0B,IAAT,CAAeZ,QAAf,CAAd;AACA,QAAM;AAAEA,IAAAA,QAAQ,EAAEG,aAAZ;AAA2BW,IAAAA;AAA3B,MAAwChB,KAAK,CAACe,KAApD;AACA,QAAMiC,qBAAqB,GAAGhC,QAAQ,GACnClB,kBADmC,GAEnCK,iBAFH;AAIA,QAAM8C,WAAW,GAAG;AACnB3C,IAAAA,MADmB;AAEnBC,IAAAA,QAFmB;AAGnBC,IAAAA,IAHmB;AAInBC,IAAAA;AAJmB,GAApB;AAMA,QAAMR,mBAAmB,GAAGG,yBAAyB,CAAE;AACtDC,IAAAA,aADsD;AAEtD,OAAG4C;AAFmD,GAAF,CAArD;AAKA,SAAOD,qBAAqB,CAAE;AAC7BhD,IAAAA,KAD6B;AAE7BD,IAAAA,aAF6B;AAG7BE,IAAAA;AAH6B,GAAF,CAA5B;AAKA;;AAED,eAAegB,OAAf","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tChildren,\n\tcloneElement,\n\tconcatChildren,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Popover from '../popover';\nimport Shortcut from '../shortcut';\n\n/**\n * Time over children to wait before showing tooltip\n *\n * @type {number}\n */\nexport const TOOLTIP_DELAY = 700;\n\nconst eventCatcher = <div className=\"event-catcher\" />;\n\nconst getDisabledElement = ( { eventHandlers, child, childrenWithPopover } ) =>\n\tcloneElement(\n\t\t<span className=\"disabled-element-wrapper\">\n\t\t\t{ cloneElement( eventCatcher, eventHandlers ) }\n\t\t\t{ cloneElement( child, {\n\t\t\t\tchildren: childrenWithPopover,\n\t\t\t} ) }\n\t\t</span>,\n\t\teventHandlers\n\t);\n\nconst getRegularElement = ( { child, eventHandlers, childrenWithPopover } ) =>\n\tcloneElement( child, {\n\t\t...eventHandlers,\n\t\tchildren: childrenWithPopover,\n\t} );\n\nconst addPopoverToGrandchildren = ( {\n\tgrandchildren,\n\tisOver,\n\tposition,\n\ttext,\n\tshortcut,\n} ) =>\n\tconcatChildren(\n\t\tgrandchildren,\n\t\tisOver && (\n\t\t\t<Popover\n\t\t\t\tfocusOnMount={ false }\n\t\t\t\tposition={ position }\n\t\t\t\tclassName=\"components-tooltip\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tanimate={ false }\n\t\t\t\toffset={ 12 }\n\t\t\t\t__unstableShift\n\t\t\t>\n\t\t\t\t{ text }\n\t\t\t\t<Shortcut\n\t\t\t\t\tclassName=\"components-tooltip__shortcut\"\n\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t/>\n\t\t\t</Popover>\n\t\t)\n\t);\n\nconst emitToChild = ( children, eventName, event ) => {\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn;\n\t}\n\n\tconst child = Children.only( children );\n\n\t// If the underlying element is disabled, do not emit the event.\n\tif ( child.props.disabled ) {\n\t\treturn;\n\t}\n\n\tif ( typeof child.props[ eventName ] === 'function' ) {\n\t\tchild.props[ eventName ]( event );\n\t}\n};\n\nfunction Tooltip( props ) {\n\tconst {\n\t\tchildren,\n\t\tposition = 'bottom middle',\n\t\ttext,\n\t\tshortcut,\n\t\tdelay = TOOLTIP_DELAY,\n\t} = props;\n\t/**\n\t * Whether a mouse is currently pressed, used in determining whether\n\t * to handle a focus event as displaying the tooltip immediately.\n\t *\n\t * @type {boolean}\n\t */\n\tconst [ isMouseDown, setIsMouseDown ] = useState( false );\n\tconst [ isOver, setIsOver ] = useState( false );\n\tconst delayedSetIsOver = useDebounce( setIsOver, delay );\n\n\tconst createMouseDown = ( event ) => {\n\t\t// Preserve original child callback behavior.\n\t\temitToChild( children, 'onMouseDown', event );\n\n\t\t// On mouse down, the next `mouseup` should revert the value of the\n\t\t// instance property and remove its own event handler. The bind is\n\t\t// made on the document since the `mouseup` might not occur within\n\t\t// the bounds of the element.\n\t\tdocument.addEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( true );\n\t};\n\n\tconst createMouseUp = ( event ) => {\n\t\temitToChild( children, 'onMouseUp', event );\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( false );\n\t};\n\n\tconst createMouseEvent = ( type ) => {\n\t\tif ( type === 'mouseUp' ) return createMouseUp;\n\t\tif ( type === 'mouseDown' ) return createMouseDown;\n\t};\n\n\t/**\n\t * Prebound `isInMouseDown` handler, created as a constant reference to\n\t * assure ability to remove in component unmount.\n\t *\n\t * @type {Function}\n\t */\n\tconst cancelIsMouseDown = createMouseEvent( 'mouseUp' );\n\n\tconst createToggleIsOver = ( eventName, isDelayed ) => {\n\t\treturn ( event ) => {\n\t\t\t// Preserve original child callback behavior.\n\t\t\temitToChild( children, eventName, event );\n\n\t\t\t// Mouse events behave unreliably in React for disabled elements,\n\t\t\t// firing on mouseenter but not mouseleave. Further, the default\n\t\t\t// behavior for disabled elements in some browsers is to ignore\n\t\t\t// mouse events. Don't bother trying to to handle them.\n\t\t\t//\n\t\t\t// See: https://github.com/facebook/react/issues/4251\n\t\t\tif ( event.currentTarget.disabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// A focus event will occur as a result of a mouse click, but it\n\t\t\t// should be disambiguated between interacting with the button and\n\t\t\t// using an explicit focus shift as a cue to display the tooltip.\n\t\t\tif ( 'focus' === event.type && isMouseDown ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Needed in case unsetting is over while delayed set pending, i.e.\n\t\t\t// quickly blur/mouseleave before delayedSetIsOver is called.\n\t\t\tdelayedSetIsOver.cancel();\n\n\t\t\tconst _isOver = includes( [ 'focus', 'mouseenter' ], event.type );\n\t\t\tif ( _isOver === isOver ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isDelayed ) {\n\t\t\t\tdelayedSetIsOver( _isOver );\n\t\t\t} else {\n\t\t\t\tsetIsOver( _isOver );\n\t\t\t}\n\t\t};\n\t};\n\tconst clearOnUnmount = () => {\n\t\tdelayedSetIsOver.cancel();\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t};\n\n\tuseEffect( () => clearOnUnmount, [] );\n\n\tif ( Children.count( children ) !== 1 ) {\n\t\tif ( 'development' === process.env.NODE_ENV ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t'Tooltip should be called with only a single child element.'\n\t\t\t);\n\t\t}\n\n\t\treturn children;\n\t}\n\n\tconst eventHandlers = {\n\t\tonMouseEnter: createToggleIsOver( 'onMouseEnter', true ),\n\t\tonMouseLeave: createToggleIsOver( 'onMouseLeave' ),\n\t\tonClick: createToggleIsOver( 'onClick' ),\n\t\tonFocus: createToggleIsOver( 'onFocus' ),\n\t\tonBlur: createToggleIsOver( 'onBlur' ),\n\t\tonMouseDown: createMouseEvent( 'mouseDown' ),\n\t};\n\n\tconst child = Children.only( children );\n\tconst { children: grandchildren, disabled } = child.props;\n\tconst getElementWithPopover = disabled\n\t\t? getDisabledElement\n\t\t: getRegularElement;\n\n\tconst popoverData = {\n\t\tisOver,\n\t\tposition,\n\t\ttext,\n\t\tshortcut,\n\t};\n\tconst childrenWithPopover = addPopoverToGrandchildren( {\n\t\tgrandchildren,\n\t\t...popoverData,\n\t} );\n\n\treturn getElementWithPopover( {\n\t\tchild,\n\t\teventHandlers,\n\t\tchildrenWithPopover,\n\t} );\n}\n\nexport default Tooltip;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/tooltip/index.js"],"names":["includes","Children","cloneElement","concatChildren","useEffect","useState","useRef","useDebounce","useMergeRefs","Popover","Shortcut","TOOLTIP_DELAY","eventCatcher","getDisabledElement","eventHandlers","child","childrenWithPopover","mergedRefs","children","ref","getRegularElement","addPopoverToGrandchildren","anchorRef","grandchildren","isOver","offset","position","shortcut","text","emitToChild","eventName","event","count","only","props","disabled","Tooltip","delay","isMouseDown","setIsMouseDown","setIsOver","delayedSetIsOver","childRef","existingChildRef","toArray","mergedChildRefs","createMouseDown","target","tagName","document","addEventListener","cancelIsMouseDown","createMouseUp","removeEventListener","createMouseEvent","type","createToggleIsOver","isDelayed","currentTarget","cancel","_isOver","clearOnUnmount","process","env","NODE_ENV","console","error","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","onMouseDown","getElementWithPopover","popoverData"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tChildren,\n\tcloneElement,\n\tconcatChildren,\n\tuseEffect,\n\tuseState,\n\tuseRef,\n} from '@wordpress/element';\nimport { useDebounce, useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Popover from '../popover';\nimport Shortcut from '../shortcut';\n\n/**\n * Time over children to wait before showing tooltip\n *\n * @type {number}\n */\nexport const TOOLTIP_DELAY = 700;\n\nconst eventCatcher = <div className=\"event-catcher\" />;\n\nconst getDisabledElement = ( {\n\teventHandlers,\n\tchild,\n\tchildrenWithPopover,\n\tmergedRefs,\n} ) => {\n\treturn cloneElement(\n\t\t<span className=\"disabled-element-wrapper\">\n\t\t\t{ cloneElement( eventCatcher, eventHandlers ) }\n\t\t\t{ cloneElement( child, {\n\t\t\t\tchildren: childrenWithPopover,\n\t\t\t\tref: mergedRefs,\n\t\t\t} ) }\n\t\t</span>,\n\t\t{ ...eventHandlers }\n\t);\n};\n\nconst getRegularElement = ( {\n\tchild,\n\teventHandlers,\n\tchildrenWithPopover,\n\tmergedRefs,\n} ) => {\n\treturn cloneElement( child, {\n\t\t...eventHandlers,\n\t\tchildren: childrenWithPopover,\n\t\tref: mergedRefs,\n\t} );\n};\n\nconst addPopoverToGrandchildren = ( {\n\tanchorRef,\n\tgrandchildren,\n\tisOver,\n\toffset,\n\tposition,\n\tshortcut,\n\ttext,\n} ) =>\n\tconcatChildren(\n\t\tgrandchildren,\n\t\tisOver && (\n\t\t\t<Popover\n\t\t\t\tfocusOnMount={ false }\n\t\t\t\tposition={ position }\n\t\t\t\tclassName=\"components-tooltip\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tanimate={ false }\n\t\t\t\toffset={ offset }\n\t\t\t\tanchorRef={ anchorRef }\n\t\t\t\t__unstableShift\n\t\t\t>\n\t\t\t\t{ text }\n\t\t\t\t<Shortcut\n\t\t\t\t\tclassName=\"components-tooltip__shortcut\"\n\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t/>\n\t\t\t</Popover>\n\t\t)\n\t);\n\nconst emitToChild = ( children, eventName, event ) => {\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn;\n\t}\n\n\tconst child = Children.only( children );\n\n\t// If the underlying element is disabled, do not emit the event.\n\tif ( child.props.disabled ) {\n\t\treturn;\n\t}\n\n\tif ( typeof child.props[ eventName ] === 'function' ) {\n\t\tchild.props[ eventName ]( event );\n\t}\n};\n\nfunction Tooltip( props ) {\n\tconst {\n\t\tchildren,\n\t\tposition = 'bottom middle',\n\t\ttext,\n\t\tshortcut,\n\t\tdelay = TOOLTIP_DELAY,\n\t} = props;\n\t/**\n\t * Whether a mouse is currently pressed, used in determining whether\n\t * to handle a focus event as displaying the tooltip immediately.\n\t *\n\t * @type {boolean}\n\t */\n\tconst [ isMouseDown, setIsMouseDown ] = useState( false );\n\tconst [ isOver, setIsOver ] = useState( false );\n\tconst delayedSetIsOver = useDebounce( setIsOver, delay );\n\n\t// Create a reference to the Tooltip's child, to be passed to the Popover\n\t// so that the Tooltip can be correctly positioned. Also, merge with the\n\t// existing ref for the first child, so that its ref is preserved.\n\tconst childRef = useRef( null );\n\tconst existingChildRef = Children.toArray( children )[ 0 ]?.ref;\n\tconst mergedChildRefs = useMergeRefs( [ childRef, existingChildRef ] );\n\n\tconst createMouseDown = ( event ) => {\n\t\t// In firefox, the mouse down event is also fired when the select\n\t\t// list is chosen.\n\t\t// Cancel further processing because re-rendering of child components\n\t\t// causes onChange to be triggered with the old value.\n\t\t// See https://github.com/WordPress/gutenberg/pull/42483\n\t\tif ( event.target.tagName === 'OPTION' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Preserve original child callback behavior.\n\t\temitToChild( children, 'onMouseDown', event );\n\n\t\t// On mouse down, the next `mouseup` should revert the value of the\n\t\t// instance property and remove its own event handler. The bind is\n\t\t// made on the document since the `mouseup` might not occur within\n\t\t// the bounds of the element.\n\t\tdocument.addEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( true );\n\t};\n\n\tconst createMouseUp = ( event ) => {\n\t\t// In firefox, the mouse up event is also fired when the select\n\t\t// list is chosen.\n\t\t// Cancel further processing because re-rendering of child components\n\t\t// causes onChange to be triggered with the old value.\n\t\t// See https://github.com/WordPress/gutenberg/pull/42483\n\t\tif ( event.target.tagName === 'OPTION' ) {\n\t\t\treturn;\n\t\t}\n\n\t\temitToChild( children, 'onMouseUp', event );\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( false );\n\t};\n\n\tconst createMouseEvent = ( type ) => {\n\t\tif ( type === 'mouseUp' ) return createMouseUp;\n\t\tif ( type === 'mouseDown' ) return createMouseDown;\n\t};\n\n\t/**\n\t * Prebound `isInMouseDown` handler, created as a constant reference to\n\t * assure ability to remove in component unmount.\n\t *\n\t * @type {Function}\n\t */\n\tconst cancelIsMouseDown = createMouseEvent( 'mouseUp' );\n\n\tconst createToggleIsOver = ( eventName, isDelayed ) => {\n\t\treturn ( event ) => {\n\t\t\t// Preserve original child callback behavior.\n\t\t\temitToChild( children, eventName, event );\n\n\t\t\t// Mouse events behave unreliably in React for disabled elements,\n\t\t\t// firing on mouseenter but not mouseleave. Further, the default\n\t\t\t// behavior for disabled elements in some browsers is to ignore\n\t\t\t// mouse events. Don't bother trying to handle them.\n\t\t\t//\n\t\t\t// See: https://github.com/facebook/react/issues/4251\n\t\t\tif ( event.currentTarget.disabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// A focus event will occur as a result of a mouse click, but it\n\t\t\t// should be disambiguated between interacting with the button and\n\t\t\t// using an explicit focus shift as a cue to display the tooltip.\n\t\t\tif ( 'focus' === event.type && isMouseDown ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Needed in case unsetting is over while delayed set pending, i.e.\n\t\t\t// quickly blur/mouseleave before delayedSetIsOver is called.\n\t\t\tdelayedSetIsOver.cancel();\n\n\t\t\tconst _isOver = includes( [ 'focus', 'mouseenter' ], event.type );\n\t\t\tif ( _isOver === isOver ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isDelayed ) {\n\t\t\t\tdelayedSetIsOver( _isOver );\n\t\t\t} else {\n\t\t\t\tsetIsOver( _isOver );\n\t\t\t}\n\t\t};\n\t};\n\tconst clearOnUnmount = () => {\n\t\tdelayedSetIsOver.cancel();\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t};\n\n\tuseEffect( () => clearOnUnmount, [] );\n\n\tif ( Children.count( children ) !== 1 ) {\n\t\tif ( 'development' === process.env.NODE_ENV ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t'Tooltip should be called with only a single child element.'\n\t\t\t);\n\t\t}\n\n\t\treturn children;\n\t}\n\n\tconst eventHandlers = {\n\t\tonMouseEnter: createToggleIsOver( 'onMouseEnter', true ),\n\t\tonMouseLeave: createToggleIsOver( 'onMouseLeave' ),\n\t\tonClick: createToggleIsOver( 'onClick' ),\n\t\tonFocus: createToggleIsOver( 'onFocus' ),\n\t\tonBlur: createToggleIsOver( 'onBlur' ),\n\t\tonMouseDown: createMouseEvent( 'mouseDown' ),\n\t};\n\n\tconst child = Children.only( children );\n\tconst { children: grandchildren, disabled } = child.props;\n\tconst getElementWithPopover = disabled\n\t\t? getDisabledElement\n\t\t: getRegularElement;\n\n\tconst popoverData = {\n\t\tanchorRef: childRef,\n\t\tisOver,\n\t\toffset: 4,\n\t\tposition,\n\t\tshortcut,\n\t\ttext,\n\t};\n\tconst childrenWithPopover = addPopoverToGrandchildren( {\n\t\tgrandchildren,\n\t\t...popoverData,\n\t} );\n\n\treturn getElementWithPopover( {\n\t\tchild,\n\t\teventHandlers,\n\t\tchildrenWithPopover,\n\t\tmergedRefs: mergedChildRefs,\n\t} );\n}\n\nexport default Tooltip;\n"]}
@@ -4,7 +4,7 @@ import { createElement } from "@wordpress/element";
4
4
  /**
5
5
  * External dependencies
6
6
  */
7
- import { unescape as unescapeString, repeat, flatMap, compact } from 'lodash';
7
+ import { unescape as unescapeString } from 'lodash';
8
8
  /**
9
9
  * WordPress dependencies
10
10
  */
@@ -18,9 +18,9 @@ import { SelectControl } from '../select-control';
18
18
 
19
19
  function getSelectOptions(tree) {
20
20
  let level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
21
- return flatMap(tree, treeNode => [{
21
+ return tree.flatMap(treeNode => [{
22
22
  value: treeNode.id,
23
- label: repeat('\u00A0', level * 3) + unescapeString(treeNode.name)
23
+ label: '\u00A0'.repeat(level * 3) + unescapeString(treeNode.name)
24
24
  }, ...getSelectOptions(treeNode.children || [], level + 1)]);
25
25
  }
26
26
  /**
@@ -83,10 +83,10 @@ export function TreeSelect(_ref) {
83
83
  ...props
84
84
  } = _ref;
85
85
  const options = useMemo(() => {
86
- return compact([noOptionLabel && {
86
+ return [noOptionLabel && {
87
87
  value: '',
88
88
  label: noOptionLabel
89
- }, ...getSelectOptions(tree)]);
89
+ }, ...getSelectOptions(tree)].filter(option => !!option);
90
90
  }, [noOptionLabel, tree]);
91
91
  return createElement(SelectControl, _extends({
92
92
  label,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/tree-select/index.tsx"],"names":["unescape","unescapeString","repeat","flatMap","compact","useMemo","SelectControl","getSelectOptions","tree","level","treeNode","value","id","label","name","children","TreeSelect","noOptionLabel","onChange","selectedId","props","options"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,QAAQ,IAAIC,cAArB,EAAqCC,MAArC,EAA6CC,OAA7C,EAAsDC,OAAtD,QAAqE,QAArE;AAEA;AACA;AACA;;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA;AACA;AACA;;AACA,SAASC,aAAT,QAA8B,mBAA9B;;AAGA,SAASC,gBAAT,CAA2BC,IAA3B,EAAoE;AAAA,MAA3BC,KAA2B,uEAAnB,CAAmB;AACnE,SAAON,OAAO,CAAEK,IAAF,EAAUE,QAAF,IAAgB,CACrC;AACCC,IAAAA,KAAK,EAAED,QAAQ,CAACE,EADjB;AAECC,IAAAA,KAAK,EACJX,MAAM,CAAE,QAAF,EAAYO,KAAK,GAAG,CAApB,CAAN,GAAgCR,cAAc,CAAES,QAAQ,CAACI,IAAX;AAHhD,GADqC,EAMrC,GAAGP,gBAAgB,CAAEG,QAAQ,CAACK,QAAT,IAAqB,EAAvB,EAA2BN,KAAK,GAAG,CAAnC,CANkB,CAAxB,CAAd;AAQA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,SAASO,UAAT,OAOc;AAAA,MAPO;AAC3BH,IAAAA,KAD2B;AAE3BI,IAAAA,aAF2B;AAG3BC,IAAAA,QAH2B;AAI3BC,IAAAA,UAJ2B;AAK3BX,IAAAA,IAAI,GAAG,EALoB;AAM3B,OAAGY;AANwB,GAOP;AACpB,QAAMC,OAAO,GAAGhB,OAAO,CAAE,MAAM;AAC9B,WAAOD,OAAO,CAAE,CACfa,aAAa,IAAI;AAAEN,MAAAA,KAAK,EAAE,EAAT;AAAaE,MAAAA,KAAK,EAAEI;AAApB,KADF,EAEf,GAAGV,gBAAgB,CAAEC,IAAF,CAFJ,CAAF,CAAd;AAIA,GALsB,EAKpB,CAAES,aAAF,EAAiBT,IAAjB,CALoB,CAAvB;AAOA,SACC,cAAC,aAAD;AACQK,IAAAA,KADR;AACeQ,IAAAA,OADf;AACwBH,IAAAA,QADxB;AAEC,IAAA,KAAK,EAAGC;AAFT,KAGMC,KAHN,EADD;AAOA;AAED,eAAeJ,UAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { unescape as unescapeString, repeat, flatMap, compact } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n/**\n * Internal dependencies\n */\nimport { SelectControl } from '../select-control';\nimport type { TreeSelectProps, Tree, SelectOptions } from './types';\n\nfunction getSelectOptions( tree: Tree[], level = 0 ): SelectOptions {\n\treturn flatMap( tree, ( treeNode ) => [\n\t\t{\n\t\t\tvalue: treeNode.id,\n\t\t\tlabel:\n\t\t\t\trepeat( '\\u00A0', level * 3 ) + unescapeString( treeNode.name ),\n\t\t},\n\t\t...getSelectOptions( treeNode.children || [], level + 1 ),\n\t] );\n}\n\n/**\n * TreeSelect component is used to generate select input fields.\n *\n * @example\n * ```jsx\n * import { TreeSelect } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyTreeSelect = () => {\n * \tconst [ page, setPage ] = useState( 'p21' );\n *\n * \treturn (\n * \t\t<TreeSelect\n * \t\t\tlabel=\"Parent page\"\n * \t\t\tnoOptionLabel=\"No parent page\"\n * \t\t\tonChange={ ( newPage ) => setPage( newPage ) }\n * \t\t\tselectedId={ page }\n * \t\t\ttree={ [\n * \t\t\t\t{\n * \t\t\t\t\tname: 'Page 1',\n * \t\t\t\t\tid: 'p1',\n * \t\t\t\t\tchildren: [\n * \t\t\t\t\t\t{ name: 'Descend 1 of page 1', id: 'p11' },\n * \t\t\t\t\t\t{ name: 'Descend 2 of page 1', id: 'p12' },\n * \t\t\t\t\t],\n * \t\t\t\t},\n * \t\t\t\t{\n * \t\t\t\t\tname: 'Page 2',\n * \t\t\t\t\tid: 'p2',\n * \t\t\t\t\tchildren: [\n * \t\t\t\t\t\t{\n * \t\t\t\t\t\t\tname: 'Descend 1 of page 2',\n * \t\t\t\t\t\t\tid: 'p21',\n * \t\t\t\t\t\t\tchildren: [\n * \t\t\t\t\t\t\t\t{\n * \t\t\t\t\t\t\t\t\tname: 'Descend 1 of Descend 1 of page 2',\n * \t\t\t\t\t\t\t\t\tid: 'p211',\n * \t\t\t\t\t\t\t\t},\n * \t\t\t\t\t\t\t],\n * \t\t\t\t\t\t},\n * \t\t\t\t\t],\n * \t\t\t\t},\n * \t\t\t] }\n * \t\t/>\n * \t);\n * }\n * ```\n */\nexport function TreeSelect( {\n\tlabel,\n\tnoOptionLabel,\n\tonChange,\n\tselectedId,\n\ttree = [],\n\t...props\n}: TreeSelectProps ) {\n\tconst options = useMemo( () => {\n\t\treturn compact( [\n\t\t\tnoOptionLabel && { value: '', label: noOptionLabel },\n\t\t\t...getSelectOptions( tree ),\n\t\t] );\n\t}, [ noOptionLabel, tree ] );\n\n\treturn (\n\t\t<SelectControl\n\t\t\t{ ...{ label, options, onChange } }\n\t\t\tvalue={ selectedId }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nexport default TreeSelect;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/tree-select/index.tsx"],"names":["unescape","unescapeString","useMemo","SelectControl","getSelectOptions","tree","level","flatMap","treeNode","value","id","label","repeat","name","children","TreeSelect","noOptionLabel","onChange","selectedId","props","options","filter","option"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,QAAQ,IAAIC,cAArB,QAA2C,QAA3C;AAEA;AACA;AACA;;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA;AACA;AACA;;AACA,SAASC,aAAT,QAA8B,mBAA9B;;AAGA,SAASC,gBAAT,CAA2BC,IAA3B,EAAoE;AAAA,MAA3BC,KAA2B,uEAAnB,CAAmB;AACnE,SAAOD,IAAI,CAACE,OAAL,CAAgBC,QAAF,IAAgB,CACpC;AACCC,IAAAA,KAAK,EAAED,QAAQ,CAACE,EADjB;AAECC,IAAAA,KAAK,EACJ,SAASC,MAAT,CAAiBN,KAAK,GAAG,CAAzB,IAA+BL,cAAc,CAAEO,QAAQ,CAACK,IAAX;AAH/C,GADoC,EAMpC,GAAGT,gBAAgB,CAAEI,QAAQ,CAACM,QAAT,IAAqB,EAAvB,EAA2BR,KAAK,GAAG,CAAnC,CANiB,CAA9B,CAAP;AAQA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA,OAAO,SAASS,UAAT,OAOc;AAAA,MAPO;AAC3BJ,IAAAA,KAD2B;AAE3BK,IAAAA,aAF2B;AAG3BC,IAAAA,QAH2B;AAI3BC,IAAAA,UAJ2B;AAK3Bb,IAAAA,IAAI,GAAG,EALoB;AAM3B,OAAGc;AANwB,GAOP;AACpB,QAAMC,OAAO,GAAGlB,OAAO,CAAE,MAAM;AAC9B,WAAO,CACNc,aAAa,IAAI;AAAEP,MAAAA,KAAK,EAAE,EAAT;AAAaE,MAAAA,KAAK,EAAEK;AAApB,KADX,EAEN,GAAGZ,gBAAgB,CAAEC,IAAF,CAFb,EAGLgB,MAHK,CAGWC,MAAR,IAA8C,CAAC,CAAEA,MAHpD,CAAP;AAIA,GALsB,EAKpB,CAAEN,aAAF,EAAiBX,IAAjB,CALoB,CAAvB;AAOA,SACC,cAAC,aAAD;AACQM,IAAAA,KADR;AACeS,IAAAA,OADf;AACwBH,IAAAA,QADxB;AAEC,IAAA,KAAK,EAAGC;AAFT,KAGMC,KAHN,EADD;AAOA;AAED,eAAeJ,UAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { unescape as unescapeString } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n/**\n * Internal dependencies\n */\nimport { SelectControl } from '../select-control';\nimport type { TreeSelectProps, Tree, SelectOptions, Truthy } from './types';\n\nfunction getSelectOptions( tree: Tree[], level = 0 ): SelectOptions {\n\treturn tree.flatMap( ( treeNode ) => [\n\t\t{\n\t\t\tvalue: treeNode.id,\n\t\t\tlabel:\n\t\t\t\t'\\u00A0'.repeat( level * 3 ) + unescapeString( treeNode.name ),\n\t\t},\n\t\t...getSelectOptions( treeNode.children || [], level + 1 ),\n\t] );\n}\n\n/**\n * TreeSelect component is used to generate select input fields.\n *\n * @example\n * ```jsx\n * import { TreeSelect } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyTreeSelect = () => {\n * \tconst [ page, setPage ] = useState( 'p21' );\n *\n * \treturn (\n * \t\t<TreeSelect\n * \t\t\tlabel=\"Parent page\"\n * \t\t\tnoOptionLabel=\"No parent page\"\n * \t\t\tonChange={ ( newPage ) => setPage( newPage ) }\n * \t\t\tselectedId={ page }\n * \t\t\ttree={ [\n * \t\t\t\t{\n * \t\t\t\t\tname: 'Page 1',\n * \t\t\t\t\tid: 'p1',\n * \t\t\t\t\tchildren: [\n * \t\t\t\t\t\t{ name: 'Descend 1 of page 1', id: 'p11' },\n * \t\t\t\t\t\t{ name: 'Descend 2 of page 1', id: 'p12' },\n * \t\t\t\t\t],\n * \t\t\t\t},\n * \t\t\t\t{\n * \t\t\t\t\tname: 'Page 2',\n * \t\t\t\t\tid: 'p2',\n * \t\t\t\t\tchildren: [\n * \t\t\t\t\t\t{\n * \t\t\t\t\t\t\tname: 'Descend 1 of page 2',\n * \t\t\t\t\t\t\tid: 'p21',\n * \t\t\t\t\t\t\tchildren: [\n * \t\t\t\t\t\t\t\t{\n * \t\t\t\t\t\t\t\t\tname: 'Descend 1 of Descend 1 of page 2',\n * \t\t\t\t\t\t\t\t\tid: 'p211',\n * \t\t\t\t\t\t\t\t},\n * \t\t\t\t\t\t\t],\n * \t\t\t\t\t\t},\n * \t\t\t\t\t],\n * \t\t\t\t},\n * \t\t\t] }\n * \t\t/>\n * \t);\n * }\n * ```\n */\n\nexport function TreeSelect( {\n\tlabel,\n\tnoOptionLabel,\n\tonChange,\n\tselectedId,\n\ttree = [],\n\t...props\n}: TreeSelectProps ) {\n\tconst options = useMemo( () => {\n\t\treturn [\n\t\t\tnoOptionLabel && { value: '', label: noOptionLabel },\n\t\t\t...getSelectOptions( tree ),\n\t\t].filter( < T, >( option: T ): option is Truthy< T > => !! option );\n\t}, [ noOptionLabel, tree ] );\n\n\treturn (\n\t\t<SelectControl\n\t\t\t{ ...{ label, options, onChange } }\n\t\t\tvalue={ selectedId }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nexport default TreeSelect;\n"]}
@@ -61,10 +61,15 @@ export function useContextSystem(props, namespace) {
61
61
  for (const key in overrideProps) {
62
62
  // @ts-ignore filling in missing props
63
63
  finalComponentProps[key] = overrideProps[key];
64
- } // @ts-ignore
64
+ } // Setting an `undefined` explicitly can cause unintended overwrites
65
+ // when a `cloneElement()` is involved.
65
66
 
66
67
 
67
- finalComponentProps.children = rendered;
68
+ if (rendered !== undefined) {
69
+ // @ts-ignore
70
+ finalComponentProps.children = rendered;
71
+ }
72
+
68
73
  finalComponentProps.className = classes;
69
74
  return finalComponentProps;
70
75
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/ui/context/use-context-system.js"],"names":["warn","useComponentsContext","getNamespace","getConnectedNamespace","getStyledClassNameFromKey","useCx","useContextSystem","props","namespace","contextSystemProps","contextProps","finalComponentProps","_overrides","overrideProps","otherContextProps","initialMergedProps","Object","entries","length","assign","cx","classes","className","rendered","renderChildren","children","key"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAP,MAAiB,oBAAjB;AAEA;AACA;AACA;;AACA,SAASC,oBAAT,QAAqC,2BAArC;AACA,SAASC,YAAT,EAAuBC,qBAAvB,QAAoD,SAApD;AACA,SAASC,yBAAT,QAA0C,kCAA1C;AACA,SAASC,KAAT,QAAsB,0BAAtB;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,gBAAT,CAA2BC,KAA3B,EAAkCC,SAAlC,EAA8C;AACpD,QAAMC,kBAAkB,GAAGR,oBAAoB,EAA/C;;AACA,MAAK,OAAOO,SAAP,KAAqB,WAA1B,EAAwC;AACvC,6FAAAR,IAAI,CAAE,8CAAF,CAAJ;AACA;;AAED,QAAMU,YAAY,GAAG,CAAAD,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,YAAAA,kBAAkB,CAAID,SAAJ,CAAlB,KAAqC,EAA1D;AAEA;;AACA;AACA;;AACA,QAAMG,mBAAmB,GAAG,EAC3B,GAAGR,qBAAqB,EADG;AAE3B,OAAGD,YAAY,CAAEM,SAAF;AAFY,GAA5B;AAIA;;AAEA,QAAM;AAAEI,IAAAA,UAAU,EAAEC,aAAd;AAA6B,OAAGC;AAAhC,MAAsDJ,YAA5D;AAEA,QAAMK,kBAAkB,GAAGC,MAAM,CAACC,OAAP,CAAgBH,iBAAhB,EAAoCI,MAApC,GACxBF,MAAM,CAACG,MAAP,CAAe,EAAf,EAAmBL,iBAAnB,EAAsCP,KAAtC,CADwB,GAExBA,KAFH;AAIA,QAAMa,EAAE,GAAGf,KAAK,EAAhB;AAEA,QAAMgB,OAAO,GAAGD,EAAE,CACjBhB,yBAAyB,CAAEI,SAAF,CADR,EAEjBD,KAAK,CAACe,SAFW,CAAlB,CAzBoD,CA8BpD;;AACA,QAAMC,QAAQ,GACb,OAAOR,kBAAkB,CAACS,cAA1B,KAA6C,UAA7C,GACGT,kBAAkB,CAACS,cAAnB,CAAmCT,kBAAnC,CADH,GAEGA,kBAAkB,CAACU,QAHvB;;AAKA,OAAM,MAAMC,GAAZ,IAAmBX,kBAAnB,EAAwC;AACvC;AACAJ,IAAAA,mBAAmB,CAAEe,GAAF,CAAnB,GAA6BX,kBAAkB,CAAEW,GAAF,CAA/C;AACA;;AAED,OAAM,MAAMA,GAAZ,IAAmBb,aAAnB,EAAmC;AAClC;AACAF,IAAAA,mBAAmB,CAAEe,GAAF,CAAnB,GAA6Bb,aAAa,CAAEa,GAAF,CAA1C;AACA,GA5CmD,CA8CpD;;;AACAf,EAAAA,mBAAmB,CAACc,QAApB,GAA+BF,QAA/B;AACAZ,EAAAA,mBAAmB,CAACW,SAApB,GAAgCD,OAAhC;AAEA,SAAOV,mBAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport warn from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport { useComponentsContext } from './context-system-provider';\nimport { getNamespace, getConnectedNamespace } from './utils';\nimport { getStyledClassNameFromKey } from './get-styled-class-name-from-key';\nimport { useCx } from '../../utils/hooks/use-cx';\n\n/**\n * @template TProps\n * @typedef {TProps & { className: string }} ConnectedProps\n */\n\n/**\n * Custom hook that derives registered props from the Context system.\n * These derived props are then consolidated with incoming component props.\n *\n * @template {{ className?: string }} P\n * @param {P} props Incoming props from the component.\n * @param {string} namespace The namespace to register and to derive context props from.\n * @return {ConnectedProps<P>} The connected props.\n */\nexport function useContextSystem( props, namespace ) {\n\tconst contextSystemProps = useComponentsContext();\n\tif ( typeof namespace === 'undefined' ) {\n\t\twarn( 'useContextSystem: Please provide a namespace' );\n\t}\n\n\tconst contextProps = contextSystemProps?.[ namespace ] || {};\n\n\t/* eslint-disable jsdoc/no-undefined-types */\n\t/** @type {ConnectedProps<P>} */\n\t// @ts-ignore We fill in the missing properties below\n\tconst finalComponentProps = {\n\t\t...getConnectedNamespace(),\n\t\t...getNamespace( namespace ),\n\t};\n\t/* eslint-enable jsdoc/no-undefined-types */\n\n\tconst { _overrides: overrideProps, ...otherContextProps } = contextProps;\n\n\tconst initialMergedProps = Object.entries( otherContextProps ).length\n\t\t? Object.assign( {}, otherContextProps, props )\n\t\t: props;\n\n\tconst cx = useCx();\n\n\tconst classes = cx(\n\t\tgetStyledClassNameFromKey( namespace ),\n\t\tprops.className\n\t);\n\n\t// Provides the ability to customize the render of the component.\n\tconst rendered =\n\t\ttypeof initialMergedProps.renderChildren === 'function'\n\t\t\t? initialMergedProps.renderChildren( initialMergedProps )\n\t\t\t: initialMergedProps.children;\n\n\tfor ( const key in initialMergedProps ) {\n\t\t// @ts-ignore filling in missing props\n\t\tfinalComponentProps[ key ] = initialMergedProps[ key ];\n\t}\n\n\tfor ( const key in overrideProps ) {\n\t\t// @ts-ignore filling in missing props\n\t\tfinalComponentProps[ key ] = overrideProps[ key ];\n\t}\n\n\t// @ts-ignore\n\tfinalComponentProps.children = rendered;\n\tfinalComponentProps.className = classes;\n\n\treturn finalComponentProps;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/ui/context/use-context-system.js"],"names":["warn","useComponentsContext","getNamespace","getConnectedNamespace","getStyledClassNameFromKey","useCx","useContextSystem","props","namespace","contextSystemProps","contextProps","finalComponentProps","_overrides","overrideProps","otherContextProps","initialMergedProps","Object","entries","length","assign","cx","classes","className","rendered","renderChildren","children","key","undefined"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAP,MAAiB,oBAAjB;AAEA;AACA;AACA;;AACA,SAASC,oBAAT,QAAqC,2BAArC;AACA,SAASC,YAAT,EAAuBC,qBAAvB,QAAoD,SAApD;AACA,SAASC,yBAAT,QAA0C,kCAA1C;AACA,SAASC,KAAT,QAAsB,0BAAtB;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,gBAAT,CAA2BC,KAA3B,EAAkCC,SAAlC,EAA8C;AACpD,QAAMC,kBAAkB,GAAGR,oBAAoB,EAA/C;;AACA,MAAK,OAAOO,SAAP,KAAqB,WAA1B,EAAwC;AACvC,6FAAAR,IAAI,CAAE,8CAAF,CAAJ;AACA;;AAED,QAAMU,YAAY,GAAG,CAAAD,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,YAAAA,kBAAkB,CAAID,SAAJ,CAAlB,KAAqC,EAA1D;AAEA;;AACA;AACA;;AACA,QAAMG,mBAAmB,GAAG,EAC3B,GAAGR,qBAAqB,EADG;AAE3B,OAAGD,YAAY,CAAEM,SAAF;AAFY,GAA5B;AAIA;;AAEA,QAAM;AAAEI,IAAAA,UAAU,EAAEC,aAAd;AAA6B,OAAGC;AAAhC,MAAsDJ,YAA5D;AAEA,QAAMK,kBAAkB,GAAGC,MAAM,CAACC,OAAP,CAAgBH,iBAAhB,EAAoCI,MAApC,GACxBF,MAAM,CAACG,MAAP,CAAe,EAAf,EAAmBL,iBAAnB,EAAsCP,KAAtC,CADwB,GAExBA,KAFH;AAIA,QAAMa,EAAE,GAAGf,KAAK,EAAhB;AAEA,QAAMgB,OAAO,GAAGD,EAAE,CACjBhB,yBAAyB,CAAEI,SAAF,CADR,EAEjBD,KAAK,CAACe,SAFW,CAAlB,CAzBoD,CA8BpD;;AACA,QAAMC,QAAQ,GACb,OAAOR,kBAAkB,CAACS,cAA1B,KAA6C,UAA7C,GACGT,kBAAkB,CAACS,cAAnB,CAAmCT,kBAAnC,CADH,GAEGA,kBAAkB,CAACU,QAHvB;;AAKA,OAAM,MAAMC,GAAZ,IAAmBX,kBAAnB,EAAwC;AACvC;AACAJ,IAAAA,mBAAmB,CAAEe,GAAF,CAAnB,GAA6BX,kBAAkB,CAAEW,GAAF,CAA/C;AACA;;AAED,OAAM,MAAMA,GAAZ,IAAmBb,aAAnB,EAAmC;AAClC;AACAF,IAAAA,mBAAmB,CAAEe,GAAF,CAAnB,GAA6Bb,aAAa,CAAEa,GAAF,CAA1C;AACA,GA5CmD,CA8CpD;AACA;;;AACA,MAAKH,QAAQ,KAAKI,SAAlB,EAA8B;AAC7B;AACAhB,IAAAA,mBAAmB,CAACc,QAApB,GAA+BF,QAA/B;AACA;;AAEDZ,EAAAA,mBAAmB,CAACW,SAApB,GAAgCD,OAAhC;AAEA,SAAOV,mBAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport warn from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport { useComponentsContext } from './context-system-provider';\nimport { getNamespace, getConnectedNamespace } from './utils';\nimport { getStyledClassNameFromKey } from './get-styled-class-name-from-key';\nimport { useCx } from '../../utils/hooks/use-cx';\n\n/**\n * @template TProps\n * @typedef {TProps & { className: string }} ConnectedProps\n */\n\n/**\n * Custom hook that derives registered props from the Context system.\n * These derived props are then consolidated with incoming component props.\n *\n * @template {{ className?: string }} P\n * @param {P} props Incoming props from the component.\n * @param {string} namespace The namespace to register and to derive context props from.\n * @return {ConnectedProps<P>} The connected props.\n */\nexport function useContextSystem( props, namespace ) {\n\tconst contextSystemProps = useComponentsContext();\n\tif ( typeof namespace === 'undefined' ) {\n\t\twarn( 'useContextSystem: Please provide a namespace' );\n\t}\n\n\tconst contextProps = contextSystemProps?.[ namespace ] || {};\n\n\t/* eslint-disable jsdoc/no-undefined-types */\n\t/** @type {ConnectedProps<P>} */\n\t// @ts-ignore We fill in the missing properties below\n\tconst finalComponentProps = {\n\t\t...getConnectedNamespace(),\n\t\t...getNamespace( namespace ),\n\t};\n\t/* eslint-enable jsdoc/no-undefined-types */\n\n\tconst { _overrides: overrideProps, ...otherContextProps } = contextProps;\n\n\tconst initialMergedProps = Object.entries( otherContextProps ).length\n\t\t? Object.assign( {}, otherContextProps, props )\n\t\t: props;\n\n\tconst cx = useCx();\n\n\tconst classes = cx(\n\t\tgetStyledClassNameFromKey( namespace ),\n\t\tprops.className\n\t);\n\n\t// Provides the ability to customize the render of the component.\n\tconst rendered =\n\t\ttypeof initialMergedProps.renderChildren === 'function'\n\t\t\t? initialMergedProps.renderChildren( initialMergedProps )\n\t\t\t: initialMergedProps.children;\n\n\tfor ( const key in initialMergedProps ) {\n\t\t// @ts-ignore filling in missing props\n\t\tfinalComponentProps[ key ] = initialMergedProps[ key ];\n\t}\n\n\tfor ( const key in overrideProps ) {\n\t\t// @ts-ignore filling in missing props\n\t\tfinalComponentProps[ key ] = overrideProps[ key ];\n\t}\n\n\t// Setting an `undefined` explicitly can cause unintended overwrites\n\t// when a `cloneElement()` is involved.\n\tif ( rendered !== undefined ) {\n\t\t// @ts-ignore\n\t\tfinalComponentProps.children = rendered;\n\t}\n\n\tfinalComponentProps.className = classes;\n\n\treturn finalComponentProps;\n}\n"]}
@@ -15,20 +15,20 @@ import * as ZIndex from '../../utils/z-index';
15
15
  import CONFIG from '../../utils/config-values';
16
16
  import { space } from '../utils/space';
17
17
  import { COLORS } from '../../utils/colors-values';
18
- export const TooltipContent = /*#__PURE__*/css("z-index:", ZIndex.Tooltip, ";box-sizing:border-box;opacity:0;outline:none;transform-origin:top center;transition:opacity ", CONFIG.transitionDurationFastest, " ease;&[data-enter]{opacity:1;}" + (process.env.NODE_ENV === "production" ? "" : ";label:TooltipContent;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZWlDIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFNob3J0Y3V0IH0gZnJvbSAnLi4vc2hvcnRjdXQnO1xuaW1wb3J0ICogYXMgWkluZGV4IGZyb20gJy4uLy4uL3V0aWxzL3otaW5kZXgnO1xuaW1wb3J0IENPTkZJRyBmcm9tICcuLi8uLi91dGlscy9jb25maWctdmFsdWVzJztcbmltcG9ydCB7IHNwYWNlIH0gZnJvbSAnLi4vdXRpbHMvc3BhY2UnO1xuaW1wb3J0IHsgQ09MT1JTIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29sb3JzLXZhbHVlcyc7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwQ29udGVudCA9IGNzc2Bcblx0ei1pbmRleDogJHsgWkluZGV4LlRvb2x0aXAgfTtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0b3BhY2l0eTogMDtcblx0b3V0bGluZTogbm9uZTtcblx0dHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAkeyBDT05GSUcudHJhbnNpdGlvbkR1cmF0aW9uRmFzdGVzdCB9IGVhc2U7XG5cblx0JltkYXRhLWVudGVyXSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBQb3BvdmVyVmlldyA9IHN0eWxlZC5kaXZgXG5cdGJhY2tncm91bmQ6IHJnYmEoIDAsIDAsIDAsIDAuOCApO1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCAyNTUsIDI1NSwgMjU1LCAwLjA0ICk7XG5cdGNvbG9yOiAkeyBDT0xPUlMud2hpdGUgfTtcblx0cGFkZGluZzogNHB4IDhweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBub091dGxpbmUgPSBjc3NgXG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFNob3J0Y3V0ID0gc3R5bGVkKCBTaG9ydGN1dCApYFxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiAkeyBzcGFjZSggMSApIH07XG5gO1xuIl19 */");
18
+ export const TooltipContent = /*#__PURE__*/css("z-index:", ZIndex.Tooltip, ";box-sizing:border-box;opacity:0;outline:none;transform-origin:top center;transition:opacity ", CONFIG.transitionDurationFastest, " ease;font-size:", CONFIG.fontSize, ";&[data-enter]{opacity:1;}" + (process.env.NODE_ENV === "production" ? "" : ";label:TooltipContent;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZWlDIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IFNob3J0Y3V0IH0gZnJvbSAnLi4vc2hvcnRjdXQnO1xuaW1wb3J0ICogYXMgWkluZGV4IGZyb20gJy4uLy4uL3V0aWxzL3otaW5kZXgnO1xuaW1wb3J0IENPTkZJRyBmcm9tICcuLi8uLi91dGlscy9jb25maWctdmFsdWVzJztcbmltcG9ydCB7IHNwYWNlIH0gZnJvbSAnLi4vdXRpbHMvc3BhY2UnO1xuaW1wb3J0IHsgQ09MT1JTIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29sb3JzLXZhbHVlcyc7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwQ29udGVudCA9IGNzc2Bcblx0ei1pbmRleDogJHsgWkluZGV4LlRvb2x0aXAgfTtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0b3BhY2l0eTogMDtcblx0b3V0bGluZTogbm9uZTtcblx0dHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAkeyBDT05GSUcudHJhbnNpdGlvbkR1cmF0aW9uRmFzdGVzdCB9IGVhc2U7XG5cdGZvbnQtc2l6ZTogJHsgQ09ORklHLmZvbnRTaXplIH07XG5cblx0JltkYXRhLWVudGVyXSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBQb3BvdmVyVmlldyA9IHN0eWxlZC5kaXZgXG5cdGJhY2tncm91bmQ6IHJnYmEoIDAsIDAsIDAsIDAuOCApO1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCAyNTUsIDI1NSwgMjU1LCAwLjA0ICk7XG5cdGNvbG9yOiAkeyBDT0xPUlMud2hpdGUgfTtcblx0cGFkZGluZzogNHB4IDhweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBub091dGxpbmUgPSBjc3NgXG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcFNob3J0Y3V0ID0gc3R5bGVkKCBTaG9ydGN1dCApYFxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiAkeyBzcGFjZSggMSApIH07XG5gO1xuIl19 */");
19
19
  export const TooltipPopoverView = _styled("div", process.env.NODE_ENV === "production" ? {
20
20
  target: "e7tfjmw1"
21
21
  } : {
22
22
  target: "e7tfjmw1",
23
23
  label: "TooltipPopoverView"
24
- })("background:rgba( 0, 0, 0, 0.8 );border-radius:2px;box-shadow:0 0 0 1px rgba( 255, 255, 255, 0.04 );color:", COLORS.white, ";padding:4px 8px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEI0QyIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3VpL3Rvb2x0aXAvc3R5bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBTaG9ydGN1dCB9IGZyb20gJy4uL3Nob3J0Y3V0JztcbmltcG9ydCAqIGFzIFpJbmRleCBmcm9tICcuLi8uLi91dGlscy96LWluZGV4JztcbmltcG9ydCBDT05GSUcgZnJvbSAnLi4vLi4vdXRpbHMvY29uZmlnLXZhbHVlcyc7XG5pbXBvcnQgeyBzcGFjZSB9IGZyb20gJy4uL3V0aWxzL3NwYWNlJztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9ycy12YWx1ZXMnO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcENvbnRlbnQgPSBjc3NgXG5cdHotaW5kZXg6ICR7IFpJbmRleC5Ub29sdGlwIH07XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG9wYWNpdHk6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgJHsgQ09ORklHLnRyYW5zaXRpb25EdXJhdGlvbkZhc3Rlc3QgfSBlYXNlO1xuXG5cdCZbZGF0YS1lbnRlcl0ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwUG9wb3ZlclZpZXcgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiByZ2JhKCAwLCAwLCAwLCAwLjggKTtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSggMjU1LCAyNTUsIDI1NSwgMC4wNCApO1xuXHRjb2xvcjogJHsgQ09MT1JTLndoaXRlIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5gO1xuXG5leHBvcnQgY29uc3Qgbm9PdXRsaW5lID0gY3NzYFxuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBTaG9ydGN1dCA9IHN0eWxlZCggU2hvcnRjdXQgKWBcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tbGVmdDogJHsgc3BhY2UoIDEgKSB9O1xuYDtcbiJdfQ== */"));
24
+ })("background:rgba( 0, 0, 0, 0.8 );border-radius:2px;box-shadow:0 0 0 1px rgba( 255, 255, 255, 0.04 );color:", COLORS.white, ";padding:4px 8px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkI0QyIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3VpL3Rvb2x0aXAvc3R5bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBTaG9ydGN1dCB9IGZyb20gJy4uL3Nob3J0Y3V0JztcbmltcG9ydCAqIGFzIFpJbmRleCBmcm9tICcuLi8uLi91dGlscy96LWluZGV4JztcbmltcG9ydCBDT05GSUcgZnJvbSAnLi4vLi4vdXRpbHMvY29uZmlnLXZhbHVlcyc7XG5pbXBvcnQgeyBzcGFjZSB9IGZyb20gJy4uL3V0aWxzL3NwYWNlJztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9ycy12YWx1ZXMnO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcENvbnRlbnQgPSBjc3NgXG5cdHotaW5kZXg6ICR7IFpJbmRleC5Ub29sdGlwIH07XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG9wYWNpdHk6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgJHsgQ09ORklHLnRyYW5zaXRpb25EdXJhdGlvbkZhc3Rlc3QgfSBlYXNlO1xuXHRmb250LXNpemU6ICR7IENPTkZJRy5mb250U2l6ZSB9O1xuXG5cdCZbZGF0YS1lbnRlcl0ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwUG9wb3ZlclZpZXcgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiByZ2JhKCAwLCAwLCAwLCAwLjggKTtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSggMjU1LCAyNTUsIDI1NSwgMC4wNCApO1xuXHRjb2xvcjogJHsgQ09MT1JTLndoaXRlIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5gO1xuXG5leHBvcnQgY29uc3Qgbm9PdXRsaW5lID0gY3NzYFxuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBTaG9ydGN1dCA9IHN0eWxlZCggU2hvcnRjdXQgKWBcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tbGVmdDogJHsgc3BhY2UoIDEgKSB9O1xuYDtcbiJdfQ== */"));
25
25
  export const noOutline = process.env.NODE_ENV === "production" ? {
26
26
  name: "12mkfdx",
27
27
  styles: "outline:none"
28
28
  } : {
29
29
  name: "160q0w1-noOutline",
30
30
  styles: "outline:none;label:noOutline;",
31
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0M0QiIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3VpL3Rvb2x0aXAvc3R5bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBTaG9ydGN1dCB9IGZyb20gJy4uL3Nob3J0Y3V0JztcbmltcG9ydCAqIGFzIFpJbmRleCBmcm9tICcuLi8uLi91dGlscy96LWluZGV4JztcbmltcG9ydCBDT05GSUcgZnJvbSAnLi4vLi4vdXRpbHMvY29uZmlnLXZhbHVlcyc7XG5pbXBvcnQgeyBzcGFjZSB9IGZyb20gJy4uL3V0aWxzL3NwYWNlJztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9ycy12YWx1ZXMnO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcENvbnRlbnQgPSBjc3NgXG5cdHotaW5kZXg6ICR7IFpJbmRleC5Ub29sdGlwIH07XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG9wYWNpdHk6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgJHsgQ09ORklHLnRyYW5zaXRpb25EdXJhdGlvbkZhc3Rlc3QgfSBlYXNlO1xuXG5cdCZbZGF0YS1lbnRlcl0ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwUG9wb3ZlclZpZXcgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiByZ2JhKCAwLCAwLCAwLCAwLjggKTtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSggMjU1LCAyNTUsIDI1NSwgMC4wNCApO1xuXHRjb2xvcjogJHsgQ09MT1JTLndoaXRlIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5gO1xuXG5leHBvcnQgY29uc3Qgbm9PdXRsaW5lID0gY3NzYFxuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBTaG9ydGN1dCA9IHN0eWxlZCggU2hvcnRjdXQgKWBcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tbGVmdDogJHsgc3BhY2UoIDEgKSB9O1xuYDtcbiJdfQ== */",
31
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUM0QiIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3VpL3Rvb2x0aXAvc3R5bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBTaG9ydGN1dCB9IGZyb20gJy4uL3Nob3J0Y3V0JztcbmltcG9ydCAqIGFzIFpJbmRleCBmcm9tICcuLi8uLi91dGlscy96LWluZGV4JztcbmltcG9ydCBDT05GSUcgZnJvbSAnLi4vLi4vdXRpbHMvY29uZmlnLXZhbHVlcyc7XG5pbXBvcnQgeyBzcGFjZSB9IGZyb20gJy4uL3V0aWxzL3NwYWNlJztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9ycy12YWx1ZXMnO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcENvbnRlbnQgPSBjc3NgXG5cdHotaW5kZXg6ICR7IFpJbmRleC5Ub29sdGlwIH07XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG9wYWNpdHk6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgJHsgQ09ORklHLnRyYW5zaXRpb25EdXJhdGlvbkZhc3Rlc3QgfSBlYXNlO1xuXHRmb250LXNpemU6ICR7IENPTkZJRy5mb250U2l6ZSB9O1xuXG5cdCZbZGF0YS1lbnRlcl0ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwUG9wb3ZlclZpZXcgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiByZ2JhKCAwLCAwLCAwLCAwLjggKTtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSggMjU1LCAyNTUsIDI1NSwgMC4wNCApO1xuXHRjb2xvcjogJHsgQ09MT1JTLndoaXRlIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5gO1xuXG5leHBvcnQgY29uc3Qgbm9PdXRsaW5lID0gY3NzYFxuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBTaG9ydGN1dCA9IHN0eWxlZCggU2hvcnRjdXQgKWBcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tbGVmdDogJHsgc3BhY2UoIDEgKSB9O1xuYDtcbiJdfQ== */",
32
32
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
33
33
  };
34
34
  export const TooltipShortcut = /*#__PURE__*/_styled(Shortcut, process.env.NODE_ENV === "production" ? {
@@ -36,5 +36,5 @@ export const TooltipShortcut = /*#__PURE__*/_styled(Shortcut, process.env.NODE_E
36
36
  } : {
37
37
  target: "e7tfjmw0",
38
38
  label: "TooltipShortcut"
39
- })("display:inline-block;margin-left:", space(1), ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0NpRCIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3VpL3Rvb2x0aXAvc3R5bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBTaG9ydGN1dCB9IGZyb20gJy4uL3Nob3J0Y3V0JztcbmltcG9ydCAqIGFzIFpJbmRleCBmcm9tICcuLi8uLi91dGlscy96LWluZGV4JztcbmltcG9ydCBDT05GSUcgZnJvbSAnLi4vLi4vdXRpbHMvY29uZmlnLXZhbHVlcyc7XG5pbXBvcnQgeyBzcGFjZSB9IGZyb20gJy4uL3V0aWxzL3NwYWNlJztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9ycy12YWx1ZXMnO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcENvbnRlbnQgPSBjc3NgXG5cdHotaW5kZXg6ICR7IFpJbmRleC5Ub29sdGlwIH07XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG9wYWNpdHk6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgJHsgQ09ORklHLnRyYW5zaXRpb25EdXJhdGlvbkZhc3Rlc3QgfSBlYXNlO1xuXG5cdCZbZGF0YS1lbnRlcl0ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwUG9wb3ZlclZpZXcgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiByZ2JhKCAwLCAwLCAwLCAwLjggKTtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSggMjU1LCAyNTUsIDI1NSwgMC4wNCApO1xuXHRjb2xvcjogJHsgQ09MT1JTLndoaXRlIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5gO1xuXG5leHBvcnQgY29uc3Qgbm9PdXRsaW5lID0gY3NzYFxuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBTaG9ydGN1dCA9IHN0eWxlZCggU2hvcnRjdXQgKWBcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tbGVmdDogJHsgc3BhY2UoIDEgKSB9O1xuYDtcbiJdfQ== */"));
39
+ })("display:inline-block;margin-left:", space(1), ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdWkvdG9vbHRpcC9zdHlsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUNpRCIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL3VpL3Rvb2x0aXAvc3R5bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBTaG9ydGN1dCB9IGZyb20gJy4uL3Nob3J0Y3V0JztcbmltcG9ydCAqIGFzIFpJbmRleCBmcm9tICcuLi8uLi91dGlscy96LWluZGV4JztcbmltcG9ydCBDT05GSUcgZnJvbSAnLi4vLi4vdXRpbHMvY29uZmlnLXZhbHVlcyc7XG5pbXBvcnQgeyBzcGFjZSB9IGZyb20gJy4uL3V0aWxzL3NwYWNlJztcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9ycy12YWx1ZXMnO1xuXG5leHBvcnQgY29uc3QgVG9vbHRpcENvbnRlbnQgPSBjc3NgXG5cdHotaW5kZXg6ICR7IFpJbmRleC5Ub29sdGlwIH07XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG9wYWNpdHk6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgJHsgQ09ORklHLnRyYW5zaXRpb25EdXJhdGlvbkZhc3Rlc3QgfSBlYXNlO1xuXHRmb250LXNpemU6ICR7IENPTkZJRy5mb250U2l6ZSB9O1xuXG5cdCZbZGF0YS1lbnRlcl0ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwUG9wb3ZlclZpZXcgPSBzdHlsZWQuZGl2YFxuXHRiYWNrZ3JvdW5kOiByZ2JhKCAwLCAwLCAwLCAwLjggKTtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSggMjU1LCAyNTUsIDI1NSwgMC4wNCApO1xuXHRjb2xvcjogJHsgQ09MT1JTLndoaXRlIH07XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5gO1xuXG5leHBvcnQgY29uc3Qgbm9PdXRsaW5lID0gY3NzYFxuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvb2x0aXBTaG9ydGN1dCA9IHN0eWxlZCggU2hvcnRjdXQgKWBcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tbGVmdDogJHsgc3BhY2UoIDEgKSB9O1xuYDtcbiJdfQ== */"));
40
40
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/ui/tooltip/styles.js"],"names":["css","Shortcut","ZIndex","CONFIG","space","COLORS","TooltipContent","Tooltip","transitionDurationFastest","TooltipPopoverView","white","noOutline","TooltipShortcut"],"mappings":";;;;AAAA;AACA;AACA;AACA,SAASA,GAAT,QAAoB,gBAApB;;AAGA;AACA;AACA;AACA,SAASC,QAAT,QAAyB,aAAzB;AACA,OAAO,KAAKC,MAAZ,MAAwB,qBAAxB;AACA,OAAOC,MAAP,MAAmB,2BAAnB;AACA,SAASC,KAAT,QAAsB,gBAAtB;AACA,SAASC,MAAT,QAAuB,2BAAvB;AAEA,OAAO,MAAMC,cAAc,gBAAGN,GAAH,aACdE,MAAM,CAACK,OADO,mGAMHJ,MAAM,CAACK,yBANJ,80DAApB;AAaP,OAAO,MAAMC,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA,gHAIpBJ,MAAM,CAACK,KAJa,6vDAAxB;AAQP,OAAO,MAAMC,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAf;AAIP,OAAO,MAAMC,eAAe,GAAG,qBAAQX,QAAR;AAAA;AAAA;AAAA;AAAA;AAAA,EAAH,sCAEXG,KAAK,CAAE,CAAF,CAFM,6uDAArB","sourcesContent":["/**\n * External dependencies\n */\nimport { css } from '@emotion/react';\nimport styled from '@emotion/styled';\n\n/**\n * Internal dependencies\n */\nimport { Shortcut } from '../shortcut';\nimport * as ZIndex from '../../utils/z-index';\nimport CONFIG from '../../utils/config-values';\nimport { space } from '../utils/space';\nimport { COLORS } from '../../utils/colors-values';\n\nexport const TooltipContent = css`\n\tz-index: ${ ZIndex.Tooltip };\n\tbox-sizing: border-box;\n\topacity: 0;\n\toutline: none;\n\ttransform-origin: top center;\n\ttransition: opacity ${ CONFIG.transitionDurationFastest } ease;\n\n\t&[data-enter] {\n\t\topacity: 1;\n\t}\n`;\n\nexport const TooltipPopoverView = styled.div`\n\tbackground: rgba( 0, 0, 0, 0.8 );\n\tborder-radius: 2px;\n\tbox-shadow: 0 0 0 1px rgba( 255, 255, 255, 0.04 );\n\tcolor: ${ COLORS.white };\n\tpadding: 4px 8px;\n`;\n\nexport const noOutline = css`\n\toutline: none;\n`;\n\nexport const TooltipShortcut = styled( Shortcut )`\n\tdisplay: inline-block;\n\tmargin-left: ${ space( 1 ) };\n`;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/ui/tooltip/styles.js"],"names":["css","Shortcut","ZIndex","CONFIG","space","COLORS","TooltipContent","Tooltip","transitionDurationFastest","fontSize","TooltipPopoverView","white","noOutline","TooltipShortcut"],"mappings":";;;;AAAA;AACA;AACA;AACA,SAASA,GAAT,QAAoB,gBAApB;;AAGA;AACA;AACA;AACA,SAASC,QAAT,QAAyB,aAAzB;AACA,OAAO,KAAKC,MAAZ,MAAwB,qBAAxB;AACA,OAAOC,MAAP,MAAmB,2BAAnB;AACA,SAASC,KAAT,QAAsB,gBAAtB;AACA,SAASC,MAAT,QAAuB,2BAAvB;AAEA,OAAO,MAAMC,cAAc,gBAAGN,GAAH,aACdE,MAAM,CAACK,OADO,mGAMHJ,MAAM,CAACK,yBANJ,sBAOZL,MAAM,CAACM,QAPK,y3DAApB;AAcP,OAAO,MAAMC,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA,gHAIpBL,MAAM,CAACM,KAJa,6yDAAxB;AAQP,OAAO,MAAMC,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAf;AAIP,OAAO,MAAMC,eAAe,GAAG,qBAAQZ,QAAR;AAAA;AAAA;AAAA;AAAA;AAAA,EAAH,sCAEXG,KAAK,CAAE,CAAF,CAFM,6xDAArB","sourcesContent":["/**\n * External dependencies\n */\nimport { css } from '@emotion/react';\nimport styled from '@emotion/styled';\n\n/**\n * Internal dependencies\n */\nimport { Shortcut } from '../shortcut';\nimport * as ZIndex from '../../utils/z-index';\nimport CONFIG from '../../utils/config-values';\nimport { space } from '../utils/space';\nimport { COLORS } from '../../utils/colors-values';\n\nexport const TooltipContent = css`\n\tz-index: ${ ZIndex.Tooltip };\n\tbox-sizing: border-box;\n\topacity: 0;\n\toutline: none;\n\ttransform-origin: top center;\n\ttransition: opacity ${ CONFIG.transitionDurationFastest } ease;\n\tfont-size: ${ CONFIG.fontSize };\n\n\t&[data-enter] {\n\t\topacity: 1;\n\t}\n`;\n\nexport const TooltipPopoverView = styled.div`\n\tbackground: rgba( 0, 0, 0, 0.8 );\n\tborder-radius: 2px;\n\tbox-shadow: 0 0 0 1px rgba( 255, 255, 255, 0.04 );\n\tcolor: ${ COLORS.white };\n\tpadding: 4px 8px;\n`;\n\nexport const noOutline = css`\n\toutline: none;\n`;\n\nexport const TooltipShortcut = styled( Shortcut )`\n\tdisplay: inline-block;\n\tmargin-left: ${ space( 1 ) };\n`;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/ui/utils/get-valid-children.ts"],"names":["Children","isValidElement","getValidChildren","children","toArray","filter","child"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AACA,SAASA,QAAT,EAAmBC,cAAnB,QAAyC,oBAAzC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,gBAAT,CAA2BC,QAA3B,EAAiE;AACvE,MAAK,OAAOA,QAAP,KAAoB,QAAzB,EAAoC,OAAO,CAAEA,QAAF,CAAP;AAEpC,SAAOH,QAAQ,CAACI,OAAT,CAAkBD,QAAlB,EAA6BE,MAA7B,CAAuCC,KAAF,IAC3CL,cAAc,CAAEK,KAAF,CADR,CAAP;AAGA","sourcesContent":["/**\n * External dependencies\n */\nimport type { ReactNode, ReactNodeArray } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { Children, isValidElement } from '@wordpress/element';\n\n/**\n * Gets a collection of available children elements from a React component's children prop.\n *\n * @param children\n *\n * @return An array of available children.\n */\nexport function getValidChildren( children: ReactNode ): ReactNodeArray {\n\tif ( typeof children === 'string' ) return [ children ];\n\n\treturn Children.toArray( children ).filter( ( child ) =>\n\t\tisValidElement( child )\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/ui/utils/get-valid-children.ts"],"names":["Children","isValidElement","getValidChildren","children","toArray","filter","child"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AACA,SAASA,QAAT,EAAmBC,cAAnB,QAAyC,oBAAzC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,gBAAT,CACNC,QADM,EAE8C;AACpD,MAAK,OAAOA,QAAP,KAAoB,QAAzB,EAAoC,OAAO,CAAEA,QAAF,CAAP;AAEpC,SAAOH,QAAQ,CAACI,OAAT,CAAkBD,QAAlB,EAA6BE,MAA7B,CAAuCC,KAAF,IAC3CL,cAAc,CAAEK,KAAF,CADR,CAAP;AAGA","sourcesContent":["/**\n * External dependencies\n */\nimport type { ReactNode, ReactChild, ReactFragment, ReactPortal } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { Children, isValidElement } from '@wordpress/element';\n\n/**\n * Gets a collection of available children elements from a React component's children prop.\n *\n * @param children\n *\n * @return An array of available children.\n */\nexport function getValidChildren(\n\tchildren: ReactNode\n): Array< ReactChild | ReactFragment | ReactPortal > {\n\tif ( typeof children === 'string' ) return [ children ];\n\n\treturn Children.toArray( children ).filter( ( child ) =>\n\t\tisValidElement( child )\n\t);\n}\n"]}
@@ -1,5 +1,11 @@
1
1
  /**
2
- * A real number or something parsable as a number
2
+ * The argument value for the `space()` utility function.
3
+ *
4
+ * When this is a number or a numeric string, it will be interpreted as a
5
+ * multiplier for the grid base value (4px). For example, `space( 2 )` will be 8px.
6
+ *
7
+ * Otherwise, it will be interpreted as a literal CSS length value. For example,
8
+ * `space( 'auto' )` will be 'auto', and `space( '2px' )` will be 2px.
3
9
  */
4
10
  const GRID_BASE = '4px';
5
11
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/ui/utils/space.ts"],"names":["GRID_BASE","space","value","undefined","asInt","Number","window","CSS","supports","toString","isNaN"],"mappings":"AAAA;AACA;AACA;AAGA,MAAMA,SAAS,GAAG,KAAlB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,KAAT,CAAgBC,KAAhB,EAAyD;AAAA;;AAC/D,MAAK,OAAOA,KAAP,KAAiB,WAAtB,EAAoC;AACnC,WAAOC,SAAP;AACA,GAH8D,CAK/D;;;AACA,MAAK,CAAED,KAAP,EAAe;AACd,WAAO,GAAP;AACA;;AAED,QAAME,KAAK,GAAG,OAAOF,KAAP,KAAiB,QAAjB,GAA4BA,KAA5B,GAAoCG,MAAM,CAAEH,KAAF,CAAxD,CAV+D,CAY/D;;AACA,MACG,OAAOI,MAAP,KAAkB,WAAlB,mBACDA,MAAM,CAACC,GADN,gEACD,YAAYC,QADX,iDACD,uCAAwB,QAAxB,EAAkCN,KAAK,CAACO,QAAN,EAAlC,CADD,IAEAJ,MAAM,CAACK,KAAP,CAAcN,KAAd,CAHD,EAIE;AACD,WAAOF,KAAK,CAACO,QAAN,EAAP;AACA;;AAED,SAAQ,QAAQT,SAAW,MAAME,KAAO,GAAxC;AACA","sourcesContent":["/**\n * A real number or something parsable as a number\n */\nexport type SpaceInput = number | string;\n\nconst GRID_BASE = '4px';\n\n/**\n * A function that handles numbers, numeric strings, and unit values.\n *\n * When given a number or a numeric string, it will return the grid-based\n * value as a factor of GRID_BASE, defined above.\n *\n * When given a unit value or one of the named CSS values like `auto`,\n * it will simply return the value back.\n *\n * @param value A number, numeric string, or a unit value.\n */\nexport function space( value?: SpaceInput ): string | undefined {\n\tif ( typeof value === 'undefined' ) {\n\t\treturn undefined;\n\t}\n\n\t// Handle empty strings, if it's the number 0 this still works.\n\tif ( ! value ) {\n\t\treturn '0';\n\t}\n\n\tconst asInt = typeof value === 'number' ? value : Number( value );\n\n\t// Test if the input has a unit, was NaN, or was one of the named CSS values (like `auto`), in which case just use that value.\n\tif (\n\t\t( typeof window !== 'undefined' &&\n\t\t\twindow.CSS?.supports?.( 'margin', value.toString() ) ) ||\n\t\tNumber.isNaN( asInt )\n\t) {\n\t\treturn value.toString();\n\t}\n\n\treturn `calc(${ GRID_BASE } * ${ value })`;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/ui/utils/space.ts"],"names":["GRID_BASE","space","value","undefined","asInt","Number","window","CSS","supports","toString","isNaN"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,MAAMA,SAAS,GAAG,KAAlB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,KAAT,CAAgBC,KAAhB,EAAyD;AAAA;;AAC/D,MAAK,OAAOA,KAAP,KAAiB,WAAtB,EAAoC;AACnC,WAAOC,SAAP;AACA,GAH8D,CAK/D;;;AACA,MAAK,CAAED,KAAP,EAAe;AACd,WAAO,GAAP;AACA;;AAED,QAAME,KAAK,GAAG,OAAOF,KAAP,KAAiB,QAAjB,GAA4BA,KAA5B,GAAoCG,MAAM,CAAEH,KAAF,CAAxD,CAV+D,CAY/D;;AACA,MACG,OAAOI,MAAP,KAAkB,WAAlB,mBACDA,MAAM,CAACC,GADN,gEACD,YAAYC,QADX,iDACD,uCAAwB,QAAxB,EAAkCN,KAAK,CAACO,QAAN,EAAlC,CADD,IAEAJ,MAAM,CAACK,KAAP,CAAcN,KAAd,CAHD,EAIE;AACD,WAAOF,KAAK,CAACO,QAAN,EAAP;AACA;;AAED,SAAQ,QAAQT,SAAW,MAAME,KAAO,GAAxC;AACA","sourcesContent":["/**\n * The argument value for the `space()` utility function.\n *\n * When this is a number or a numeric string, it will be interpreted as a\n * multiplier for the grid base value (4px). For example, `space( 2 )` will be 8px.\n *\n * Otherwise, it will be interpreted as a literal CSS length value. For example,\n * `space( 'auto' )` will be 'auto', and `space( '2px' )` will be 2px.\n */\nexport type SpaceInput = number | string;\n\nconst GRID_BASE = '4px';\n\n/**\n * A function that handles numbers, numeric strings, and unit values.\n *\n * When given a number or a numeric string, it will return the grid-based\n * value as a factor of GRID_BASE, defined above.\n *\n * When given a unit value or one of the named CSS values like `auto`,\n * it will simply return the value back.\n *\n * @param value A number, numeric string, or a unit value.\n */\nexport function space( value?: SpaceInput ): string | undefined {\n\tif ( typeof value === 'undefined' ) {\n\t\treturn undefined;\n\t}\n\n\t// Handle empty strings, if it's the number 0 this still works.\n\tif ( ! value ) {\n\t\treturn '0';\n\t}\n\n\tconst asInt = typeof value === 'number' ? value : Number( value );\n\n\t// Test if the input has a unit, was NaN, or was one of the named CSS values (like `auto`), in which case just use that value.\n\tif (\n\t\t( typeof window !== 'undefined' &&\n\t\t\twindow.CSS?.supports?.( 'margin', value.toString() ) ) ||\n\t\tNumber.isNaN( asInt )\n\t) {\n\t\treturn value.toString();\n\t}\n\n\treturn `calc(${ GRID_BASE } * ${ value })`;\n}\n"]}