@wordpress/components 19.0.1 → 19.0.5

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 (1326) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +1 -0
  3. package/build/alignment-matrix-control/cell.js +6 -5
  4. package/build/alignment-matrix-control/cell.js.map +1 -1
  5. package/build/alignment-matrix-control/icon.js +9 -8
  6. package/build/alignment-matrix-control/icon.js.map +1 -1
  7. package/build/alignment-matrix-control/index.js +11 -10
  8. package/build/alignment-matrix-control/index.js.map +1 -1
  9. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +9 -7
  10. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
  11. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -7
  12. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  13. package/build/alignment-matrix-control/utils.js +5 -4
  14. package/build/alignment-matrix-control/utils.js.map +1 -1
  15. package/build/angle-picker-control/angle-circle.js +6 -5
  16. package/build/angle-picker-control/angle-circle.js.map +1 -1
  17. package/build/angle-picker-control/index.js +8 -6
  18. package/build/angle-picker-control/index.js.map +1 -1
  19. package/build/angle-picker-control/styles/angle-picker-control-styles.js +1 -1
  20. package/build/animate/index.js +7 -6
  21. package/build/animate/index.js.map +1 -1
  22. package/build/animation/index.js +6 -6
  23. package/build/autocomplete/autocompleter-ui.js +13 -12
  24. package/build/autocomplete/autocompleter-ui.js.map +1 -1
  25. package/build/autocomplete/autocompleter-ui.native.js +15 -12
  26. package/build/autocomplete/autocompleter-ui.native.js.map +1 -1
  27. package/build/autocomplete/background-view.android.js +4 -3
  28. package/build/autocomplete/background-view.android.js.map +1 -1
  29. package/build/autocomplete/background-view.ios.js +4 -3
  30. package/build/autocomplete/background-view.ios.js.map +1 -1
  31. package/build/autocomplete/get-default-use-items.js +3 -1
  32. package/build/autocomplete/get-default-use-items.js.map +1 -1
  33. package/build/autocomplete/index.js +20 -17
  34. package/build/autocomplete/index.js.map +1 -1
  35. package/build/base-control/index.js +14 -12
  36. package/build/base-control/index.js.map +1 -1
  37. package/build/base-control/index.native.js +6 -5
  38. package/build/base-control/index.native.js.map +1 -1
  39. package/build/base-control/styles/base-control-styles.js +1 -1
  40. package/build/base-field/hook.js +4 -2
  41. package/build/base-field/hook.js.map +1 -1
  42. package/build/base-field/styles.js +1 -1
  43. package/build/box-control/all-input-control.js +12 -11
  44. package/build/box-control/all-input-control.js.map +1 -1
  45. package/build/box-control/axial-input-controls.js +13 -11
  46. package/build/box-control/axial-input-controls.js.map +1 -1
  47. package/build/box-control/icon.js +8 -6
  48. package/build/box-control/icon.js.map +1 -1
  49. package/build/box-control/index.js +22 -18
  50. package/build/box-control/index.js.map +1 -1
  51. package/build/box-control/input-controls.js +17 -14
  52. package/build/box-control/input-controls.js.map +1 -1
  53. package/build/box-control/linked-button.js +5 -4
  54. package/build/box-control/linked-button.js.map +1 -1
  55. package/build/box-control/styles/box-control-icon-styles.js +5 -4
  56. package/build/box-control/styles/box-control-icon-styles.js.map +1 -1
  57. package/build/box-control/styles/box-control-styles.js +13 -10
  58. package/build/box-control/styles/box-control-styles.js.map +1 -1
  59. package/build/box-control/styles/box-control-visualizer-styles.js +12 -8
  60. package/build/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  61. package/build/box-control/unit-control.js +22 -18
  62. package/build/box-control/unit-control.js.map +1 -1
  63. package/build/box-control/utils.js +10 -6
  64. package/build/box-control/utils.js.map +1 -1
  65. package/build/box-control/visualizer.js +32 -26
  66. package/build/box-control/visualizer.js.map +1 -1
  67. package/build/button/deprecated.js +8 -7
  68. package/build/button/deprecated.js.map +1 -1
  69. package/build/button/index.js +10 -9
  70. package/build/button/index.js.map +1 -1
  71. package/build/button-group/index.js +5 -4
  72. package/build/button-group/index.js.map +1 -1
  73. package/build/card/card/component.js +4 -2
  74. package/build/card/card/component.js.map +1 -1
  75. package/build/card/card/hook.js +11 -7
  76. package/build/card/card/hook.js.map +1 -1
  77. package/build/card/card-body/hook.js +4 -2
  78. package/build/card/card-body/hook.js.map +1 -1
  79. package/build/card/card-divider/hook.js +4 -2
  80. package/build/card/card-divider/hook.js.map +1 -1
  81. package/build/card/card-footer/hook.js +4 -2
  82. package/build/card/card-footer/hook.js.map +1 -1
  83. package/build/card/card-header/hook.js +4 -2
  84. package/build/card/card-header/hook.js.map +1 -1
  85. package/build/card/card-media/hook.js +4 -2
  86. package/build/card/card-media/hook.js.map +1 -1
  87. package/build/card/index.js +24 -22
  88. package/build/card/index.js.map +1 -1
  89. package/build/card/styles.js +1 -1
  90. package/build/card/types.js +4 -0
  91. package/build/checkbox-control/index.js +11 -9
  92. package/build/checkbox-control/index.js.map +1 -1
  93. package/build/circular-option-picker/index.js +40 -33
  94. package/build/circular-option-picker/index.js.map +1 -1
  95. package/build/clipboard-button/index.js +9 -8
  96. package/build/clipboard-button/index.js.map +1 -1
  97. package/build/color-control/index.native.js +8 -7
  98. package/build/color-control/index.native.js.map +1 -1
  99. package/build/color-edit/index.js +85 -52
  100. package/build/color-edit/index.js.map +1 -1
  101. package/build/color-edit/styles.js +1 -1
  102. package/build/color-indicator/index.js +13 -10
  103. package/build/color-indicator/index.js.map +1 -1
  104. package/build/color-indicator/index.native.js +12 -10
  105. package/build/color-indicator/index.native.js.map +1 -1
  106. package/build/color-list-picker/index.js +18 -16
  107. package/build/color-list-picker/index.js.map +1 -1
  108. package/build/color-palette/index.js +55 -47
  109. package/build/color-palette/index.js.map +1 -1
  110. package/build/color-palette/index.native.js +23 -20
  111. package/build/color-palette/index.native.js.map +1 -1
  112. package/build/color-picker/color-display.js +35 -27
  113. package/build/color-picker/color-display.js.map +1 -1
  114. package/build/color-picker/color-input.js +7 -6
  115. package/build/color-picker/color-input.js.map +1 -1
  116. package/build/color-picker/hex-input.js +7 -5
  117. package/build/color-picker/hex-input.js.map +1 -1
  118. package/build/color-picker/hsl-input.js +6 -5
  119. package/build/color-picker/hsl-input.js.map +1 -1
  120. package/build/color-picker/index.native.js +23 -20
  121. package/build/color-picker/index.native.js.map +1 -1
  122. package/build/color-picker/input-with-slider.js +9 -8
  123. package/build/color-picker/input-with-slider.js.map +1 -1
  124. package/build/color-picker/picker.js +6 -5
  125. package/build/color-picker/picker.js.map +1 -1
  126. package/build/color-picker/rgb-input.js +6 -5
  127. package/build/color-picker/rgb-input.js.map +1 -1
  128. package/build/color-picker/styles.js +1 -1
  129. package/build/color-picker/types.js +4 -0
  130. package/build/combobox-control/index.js +17 -15
  131. package/build/combobox-control/index.js.map +1 -1
  132. package/build/custom-gradient-bar/constants.js +1 -1
  133. package/build/custom-gradient-bar/control-points.js +120 -108
  134. package/build/custom-gradient-bar/control-points.js.map +1 -1
  135. package/build/custom-gradient-bar/index.js +13 -11
  136. package/build/custom-gradient-bar/index.js.map +1 -1
  137. package/build/custom-gradient-bar/utils.js +9 -7
  138. package/build/custom-gradient-bar/utils.js.map +1 -1
  139. package/build/custom-gradient-picker/constants.js +1 -1
  140. package/build/custom-gradient-picker/index.js +17 -14
  141. package/build/custom-gradient-picker/index.js.map +1 -1
  142. package/build/custom-gradient-picker/index.native.js +6 -5
  143. package/build/custom-gradient-picker/index.native.js.map +1 -1
  144. package/build/custom-gradient-picker/serializer.js +20 -16
  145. package/build/custom-gradient-picker/serializer.js.map +1 -1
  146. package/build/custom-gradient-picker/styles/custom-gradient-picker-styles.js +1 -1
  147. package/build/custom-gradient-picker/utils.js +7 -6
  148. package/build/custom-gradient-picker/utils.js.map +1 -1
  149. package/build/custom-select-control/index.js +22 -18
  150. package/build/custom-select-control/index.js.map +1 -1
  151. package/build/dashicon/index.js +6 -5
  152. package/build/dashicon/index.js.map +1 -1
  153. package/build/dashicon/index.native.js +9 -6
  154. package/build/dashicon/index.native.js.map +1 -1
  155. package/build/dashicon/types.js +4 -0
  156. package/build/date-time/date.js +5 -4
  157. package/build/date-time/date.js.map +1 -1
  158. package/build/date-time/index.js +9 -8
  159. package/build/date-time/index.js.map +1 -1
  160. package/build/date-time/time.js +14 -11
  161. package/build/date-time/time.js.map +1 -1
  162. package/build/dimension-control/index.js +14 -9
  163. package/build/dimension-control/index.js.map +1 -1
  164. package/build/dimension-control/sizes.js +1 -1
  165. package/build/disabled/index.js +8 -6
  166. package/build/disabled/index.js.map +1 -1
  167. package/build/disabled/index.native.js +4 -3
  168. package/build/disabled/index.native.js.map +1 -1
  169. package/build/divider/styles.js +7 -5
  170. package/build/divider/styles.js.map +1 -1
  171. package/build/divider/types.js +4 -0
  172. package/build/draggable/index.js +13 -11
  173. package/build/draggable/index.js.map +1 -1
  174. package/build/drop-zone/index.js +8 -7
  175. package/build/drop-zone/index.js.map +1 -1
  176. package/build/drop-zone/provider.js +4 -3
  177. package/build/drop-zone/provider.js.map +1 -1
  178. package/build/dropdown/index.js +14 -13
  179. package/build/dropdown/index.js.map +1 -1
  180. package/build/dropdown-menu/index.js +9 -5
  181. package/build/dropdown-menu/index.js.map +1 -1
  182. package/build/dropdown-menu/index.native.js +26 -19
  183. package/build/dropdown-menu/index.native.js.map +1 -1
  184. package/build/duotone-picker/custom-duotone-bar.js +5 -4
  185. package/build/duotone-picker/custom-duotone-bar.js.map +1 -1
  186. package/build/duotone-picker/duotone-picker.js +15 -13
  187. package/build/duotone-picker/duotone-picker.js.map +1 -1
  188. package/build/duotone-picker/duotone-swatch.js +4 -3
  189. package/build/duotone-picker/duotone-swatch.js.map +1 -1
  190. package/build/duotone-picker/utils.js +29 -16
  191. package/build/duotone-picker/utils.js.map +1 -1
  192. package/build/elevation/hook.js +4 -2
  193. package/build/elevation/hook.js.map +1 -1
  194. package/build/elevation/types.js +4 -0
  195. package/build/external-link/index.js +8 -7
  196. package/build/external-link/index.js.map +1 -1
  197. package/build/external-link/index.native.js +5 -4
  198. package/build/external-link/index.native.js.map +1 -1
  199. package/build/flex/flex/hook.js +10 -6
  200. package/build/flex/flex/hook.js.map +1 -1
  201. package/build/flex/flex-item/hook.js +4 -2
  202. package/build/flex/flex-item/hook.js.map +1 -1
  203. package/build/flex/index.js +12 -10
  204. package/build/flex/index.js.map +1 -1
  205. package/build/flex/styles.js +1 -1
  206. package/build/flex/types.js +4 -0
  207. package/build/flyout/styles.js +5 -3
  208. package/build/flyout/styles.js.map +1 -1
  209. package/build/flyout/types.js +4 -0
  210. package/build/flyout/utils.js +4 -3
  211. package/build/flyout/utils.js.map +1 -1
  212. package/build/focal-point-picker/controls.js +8 -7
  213. package/build/focal-point-picker/controls.js.map +1 -1
  214. package/build/focal-point-picker/focal-point.js +8 -7
  215. package/build/focal-point-picker/focal-point.js.map +1 -1
  216. package/build/focal-point-picker/focal-point.native.js +6 -5
  217. package/build/focal-point-picker/focal-point.native.js.map +1 -1
  218. package/build/focal-point-picker/grid.js +6 -5
  219. package/build/focal-point-picker/grid.js.map +1 -1
  220. package/build/focal-point-picker/index.js +2 -1
  221. package/build/focal-point-picker/index.js.map +1 -1
  222. package/build/focal-point-picker/media.js +19 -16
  223. package/build/focal-point-picker/media.js.map +1 -1
  224. package/build/focal-point-picker/styles/focal-point-picker-style.js +8 -5
  225. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  226. package/build/focal-point-picker/styles/focal-point-style.js +7 -4
  227. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  228. package/build/focal-point-picker/tooltip/index.native.js +18 -15
  229. package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
  230. package/build/focal-point-picker/utils.js +6 -4
  231. package/build/focal-point-picker/utils.js.map +1 -1
  232. package/build/focusable-iframe/index.js +5 -4
  233. package/build/focusable-iframe/index.js.map +1 -1
  234. package/build/font-size-picker/index.js +24 -17
  235. package/build/font-size-picker/index.js.map +1 -1
  236. package/build/font-size-picker/index.native.js +11 -8
  237. package/build/font-size-picker/index.native.js.map +1 -1
  238. package/build/font-size-picker/utils.js +22 -18
  239. package/build/font-size-picker/utils.js.map +1 -1
  240. package/build/footer-message-control/index.native.js +3 -2
  241. package/build/footer-message-control/index.native.js.map +1 -1
  242. package/build/form-file-upload/index.js +9 -8
  243. package/build/form-file-upload/index.js.map +1 -1
  244. package/build/form-toggle/index.js +9 -8
  245. package/build/form-toggle/index.js.map +1 -1
  246. package/build/form-token-field/index.js +8 -2
  247. package/build/form-token-field/index.js.map +1 -1
  248. package/build/form-token-field/token.js +15 -14
  249. package/build/form-token-field/token.js.map +1 -1
  250. package/build/gradient-picker/index.js +56 -49
  251. package/build/gradient-picker/index.js.map +1 -1
  252. package/build/grid/types.js +4 -0
  253. package/build/guide/icons.js +16 -13
  254. package/build/guide/icons.js.map +1 -1
  255. package/build/guide/index.js +9 -8
  256. package/build/guide/index.js.map +1 -1
  257. package/build/guide/page-control.js +6 -5
  258. package/build/guide/page-control.js.map +1 -1
  259. package/build/h-stack/types.js +4 -0
  260. package/build/h-stack/utils.js +3 -1
  261. package/build/h-stack/utils.js.map +1 -1
  262. package/build/higher-order/navigate-regions/index.js +20 -14
  263. package/build/higher-order/navigate-regions/index.js.map +1 -1
  264. package/build/higher-order/with-focus-return/index.js +18 -14
  265. package/build/higher-order/with-focus-return/index.js.map +1 -1
  266. package/build/icon/index.js +7 -5
  267. package/build/icon/index.js.map +1 -1
  268. package/build/index.js +314 -312
  269. package/build/index.js.map +1 -1
  270. package/build/index.native.js +220 -218
  271. package/build/index.native.js.map +1 -1
  272. package/build/input-control/backdrop.js +5 -4
  273. package/build/input-control/backdrop.js.map +1 -1
  274. package/build/input-control/index.js +20 -19
  275. package/build/input-control/index.js.map +1 -1
  276. package/build/input-control/input-base.js +16 -15
  277. package/build/input-control/input-base.js.map +1 -1
  278. package/build/input-control/input-field.js +24 -23
  279. package/build/input-control/input-field.js.map +1 -1
  280. package/build/input-control/label.js +7 -6
  281. package/build/input-control/label.js.map +1 -1
  282. package/build/input-control/reducer/actions.js +1 -1
  283. package/build/input-control/reducer/reducer.js +20 -7
  284. package/build/input-control/reducer/reducer.js.map +1 -1
  285. package/build/input-control/reducer/state.js +1 -1
  286. package/build/input-control/styles/input-control-styles.js +49 -37
  287. package/build/input-control/styles/input-control-styles.js.map +1 -1
  288. package/build/input-control/types.js +4 -0
  289. package/build/isolated-event-container/index.js +5 -4
  290. package/build/isolated-event-container/index.js.map +1 -1
  291. package/build/item-group/item/hook.js +4 -2
  292. package/build/item-group/item/hook.js.map +1 -1
  293. package/build/item-group/item-group/hook.js +4 -2
  294. package/build/item-group/item-group/hook.js.map +1 -1
  295. package/build/item-group/styles.js +1 -1
  296. package/build/item-group/types.js +4 -0
  297. package/build/keyboard-shortcuts/index.js +15 -13
  298. package/build/keyboard-shortcuts/index.js.map +1 -1
  299. package/build/menu-items-choice/index.js +7 -6
  300. package/build/menu-items-choice/index.js.map +1 -1
  301. package/build/mobile/audio-player/index.native.js +8 -7
  302. package/build/mobile/audio-player/index.native.js.map +1 -1
  303. package/build/mobile/badge/index.native.js +6 -5
  304. package/build/mobile/badge/index.native.js.map +1 -1
  305. package/build/mobile/bottom-sheet/bottom-sheet-context.native.js +1 -1
  306. package/build/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js +1 -1
  307. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +12 -10
  308. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
  309. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +12 -9
  310. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
  311. package/build/mobile/bottom-sheet/button.native.js +21 -18
  312. package/build/mobile/bottom-sheet/button.native.js.map +1 -1
  313. package/build/mobile/bottom-sheet/footer-message-cell.native.js +5 -4
  314. package/build/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
  315. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +5 -4
  316. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
  317. package/build/mobile/bottom-sheet/index.native.js +24 -17
  318. package/build/mobile/bottom-sheet/index.native.js.map +1 -1
  319. package/build/mobile/bottom-sheet/link-cell.native.js +7 -6
  320. package/build/mobile/bottom-sheet/link-cell.native.js.map +1 -1
  321. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js +5 -4
  322. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  323. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js +7 -6
  324. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
  325. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js +4 -3
  326. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
  327. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js +15 -12
  328. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
  329. package/build/mobile/bottom-sheet/nav-bar/heading.native.js +4 -3
  330. package/build/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
  331. package/build/mobile/bottom-sheet/nav-bar/index.native.js +4 -3
  332. package/build/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
  333. package/build/mobile/bottom-sheet/range-text-input.native.js +6 -5
  334. package/build/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
  335. package/build/mobile/bottom-sheet/ripple.native.js +11 -10
  336. package/build/mobile/bottom-sheet/ripple.native.js.map +1 -1
  337. package/build/mobile/bottom-sheet/stepper-cell/index.native.js +2 -1
  338. package/build/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
  339. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js +12 -11
  340. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
  341. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js +12 -11
  342. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
  343. package/build/mobile/bottom-sheet/sub-sheet/index.native.js +7 -6
  344. package/build/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
  345. package/build/mobile/bottom-sheet-select-control/index.native.js +8 -7
  346. package/build/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
  347. package/build/mobile/bottom-sheet-text-control/index.native.js +9 -8
  348. package/build/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
  349. package/build/mobile/clipboard/index.native.js +1 -1
  350. package/build/mobile/color-settings/index.native.js +11 -10
  351. package/build/mobile/color-settings/index.native.js.map +1 -1
  352. package/build/mobile/cycle-select-control/index.native.js +12 -11
  353. package/build/mobile/cycle-select-control/index.native.js.map +1 -1
  354. package/build/mobile/dashicons/index.native.js +1 -1
  355. package/build/mobile/focal-point-settings-panel/index.native.js +7 -6
  356. package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  357. package/build/mobile/global-styles-context/index.native.js +1 -1
  358. package/build/mobile/global-styles-context/utils.native.js +9 -7
  359. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  360. package/build/mobile/gradient/index.native.js +14 -13
  361. package/build/mobile/gradient/index.native.js.map +1 -1
  362. package/build/mobile/gridicons/index.native.js +1 -1
  363. package/build/mobile/html-text-input/container.android.js +12 -9
  364. package/build/mobile/html-text-input/container.android.js.map +1 -1
  365. package/build/mobile/image/image-editing-button.native.js +26 -22
  366. package/build/mobile/image/image-editing-button.native.js.map +1 -1
  367. package/build/mobile/image/index.native.js +23 -22
  368. package/build/mobile/image/index.native.js.map +1 -1
  369. package/build/mobile/keyboard-avoiding-view/index.ios.js +29 -22
  370. package/build/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
  371. package/build/mobile/keyboard-aware-flat-list/index.ios.js +46 -43
  372. package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  373. package/build/mobile/layout-animation/index.native.js +3 -1
  374. package/build/mobile/layout-animation/index.native.js.map +1 -1
  375. package/build/mobile/link-picker/index.native.js +13 -11
  376. package/build/mobile/link-picker/index.native.js.map +1 -1
  377. package/build/mobile/link-picker/link-picker-results.native.js +48 -34
  378. package/build/mobile/link-picker/link-picker-results.native.js.map +1 -1
  379. package/build/mobile/link-picker/link-picker-screen.native.js +9 -7
  380. package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  381. package/build/mobile/link-settings/image-link-destinations-screen.native.js +9 -8
  382. package/build/mobile/link-settings/image-link-destinations-screen.native.js.map +1 -1
  383. package/build/mobile/link-settings/index.native.js +58 -57
  384. package/build/mobile/link-settings/index.native.js.map +1 -1
  385. package/build/mobile/media-edit/index.native.js +1 -1
  386. package/build/mobile/picker/index.ios.js +6 -3
  387. package/build/mobile/picker/index.ios.js.map +1 -1
  388. package/build/mobile/readable-content-view/index.native.js +12 -9
  389. package/build/mobile/readable-content-view/index.native.js.map +1 -1
  390. package/build/mobile/segmented-control/index.native.js +16 -14
  391. package/build/mobile/segmented-control/index.native.js.map +1 -1
  392. package/build/mobile/utils/alignments.native.js +1 -1
  393. package/build/mobile/utils/index.native.js +2 -1
  394. package/build/mobile/utils/index.native.js.map +1 -1
  395. package/build/mobile/utils/use-unit-converter-to-mobile.native.js +5 -4
  396. package/build/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
  397. package/build/modal/aria-helper.js +1 -1
  398. package/build/modal/index.js +32 -29
  399. package/build/modal/index.js.map +1 -1
  400. package/build/navigable-container/menu.js +7 -5
  401. package/build/navigable-container/menu.js.map +1 -1
  402. package/build/navigable-container/tabbable.js +6 -4
  403. package/build/navigable-container/tabbable.js.map +1 -1
  404. package/build/navigation/back-button/index.js +8 -7
  405. package/build/navigation/back-button/index.js.map +1 -1
  406. package/build/navigation/group/index.js +6 -5
  407. package/build/navigation/group/index.js.map +1 -1
  408. package/build/navigation/index.js +11 -8
  409. package/build/navigation/index.js.map +1 -1
  410. package/build/navigation/menu/menu-title-search.js +8 -7
  411. package/build/navigation/menu/menu-title-search.js.map +1 -1
  412. package/build/navigation/menu/menu-title.js +8 -7
  413. package/build/navigation/menu/menu-title.js.map +1 -1
  414. package/build/navigation/menu/search-no-results-found.js +4 -3
  415. package/build/navigation/menu/search-no-results-found.js.map +1 -1
  416. package/build/navigation/styles/navigation-styles.js +1 -1
  417. package/build/navigator/types.js +4 -0
  418. package/build/notice/index.js +26 -24
  419. package/build/notice/index.js.map +1 -1
  420. package/build/notice/index.native.js +7 -6
  421. package/build/notice/index.native.js.map +1 -1
  422. package/build/notice/list.js +8 -6
  423. package/build/notice/list.js.map +1 -1
  424. package/build/number-control/index.js +22 -19
  425. package/build/number-control/index.js.map +1 -1
  426. package/build/number-control/styles/number-control-styles.js +4 -3
  427. package/build/number-control/styles/number-control-styles.js.map +1 -1
  428. package/build/panel/actions.native.js +10 -8
  429. package/build/panel/actions.native.js.map +1 -1
  430. package/build/panel/body.js +19 -17
  431. package/build/panel/body.js.map +1 -1
  432. package/build/panel/body.native.js +7 -6
  433. package/build/panel/body.native.js.map +1 -1
  434. package/build/panel/bottom-separator-cover.native.js +4 -3
  435. package/build/panel/bottom-separator-cover.native.js.map +1 -1
  436. package/build/panel/header.js +5 -4
  437. package/build/panel/header.js.map +1 -1
  438. package/build/panel/index.js +6 -5
  439. package/build/panel/index.js.map +1 -1
  440. package/build/panel/row.js +10 -7
  441. package/build/panel/row.js.map +1 -1
  442. package/build/placeholder/index.js +12 -11
  443. package/build/placeholder/index.js.map +1 -1
  444. package/build/popover/index.js +45 -37
  445. package/build/popover/index.js.map +1 -1
  446. package/build/popover/utils.js +10 -2
  447. package/build/popover/utils.js.map +1 -1
  448. package/build/query-controls/author-select.js +8 -7
  449. package/build/query-controls/author-select.js.map +1 -1
  450. package/build/query-controls/category-select.js +9 -8
  451. package/build/query-controls/category-select.js.map +1 -1
  452. package/build/query-controls/index.js +19 -18
  453. package/build/query-controls/index.js.map +1 -1
  454. package/build/query-controls/index.native.js +14 -13
  455. package/build/query-controls/index.native.js.map +1 -1
  456. package/build/radio/index.js +6 -5
  457. package/build/radio/index.js.map +1 -1
  458. package/build/radio-control/index.js +11 -10
  459. package/build/radio-control/index.js.map +1 -1
  460. package/build/radio-control/index.native.js +7 -6
  461. package/build/radio-control/index.native.js.map +1 -1
  462. package/build/radio-group/index.js +9 -8
  463. package/build/radio-group/index.js.map +1 -1
  464. package/build/range-control/index.js +33 -32
  465. package/build/range-control/index.js.map +1 -1
  466. package/build/range-control/index.native.js +20 -18
  467. package/build/range-control/index.native.js.map +1 -1
  468. package/build/range-control/input-range.js +11 -10
  469. package/build/range-control/input-range.js.map +1 -1
  470. package/build/range-control/mark.js +8 -7
  471. package/build/range-control/mark.js.map +1 -1
  472. package/build/range-control/rail.js +29 -24
  473. package/build/range-control/rail.js.map +1 -1
  474. package/build/range-control/styles/range-control-styles.js +50 -36
  475. package/build/range-control/styles/range-control-styles.js.map +1 -1
  476. package/build/range-control/tooltip.js +17 -15
  477. package/build/range-control/tooltip.js.map +1 -1
  478. package/build/range-control/utils.js +15 -13
  479. package/build/range-control/utils.js.map +1 -1
  480. package/build/resizable-box/index.js +9 -8
  481. package/build/resizable-box/index.js.map +1 -1
  482. package/build/resizable-box/resize-tooltip/index.js +13 -12
  483. package/build/resizable-box/resize-tooltip/index.js.map +1 -1
  484. package/build/resizable-box/resize-tooltip/label.js +7 -6
  485. package/build/resizable-box/resize-tooltip/label.js.map +1 -1
  486. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -1
  487. package/build/resizable-box/resize-tooltip/utils.js +20 -17
  488. package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
  489. package/build/responsive-wrapper/index.js +7 -6
  490. package/build/responsive-wrapper/index.js.map +1 -1
  491. package/build/sandbox/index.js +12 -9
  492. package/build/sandbox/index.js.map +1 -1
  493. package/build/sandbox/index.native.js +15 -13
  494. package/build/sandbox/index.native.js.map +1 -1
  495. package/build/scrollable/hook.js +4 -2
  496. package/build/scrollable/hook.js.map +1 -1
  497. package/build/scrollable/styles.js +1 -1
  498. package/build/scrollable/types.js +4 -0
  499. package/build/search-control/index.js +12 -11
  500. package/build/search-control/index.js.map +1 -1
  501. package/build/search-control/index.native.js +6 -5
  502. package/build/search-control/index.native.js.map +1 -1
  503. package/build/select-control/index.js +33 -26
  504. package/build/select-control/index.js.map +1 -1
  505. package/build/select-control/index.native.js +12 -11
  506. package/build/select-control/index.native.js.map +1 -1
  507. package/build/select-control/styles/select-control-styles.js +13 -10
  508. package/build/select-control/styles/select-control-styles.js.map +1 -1
  509. package/build/select-control/types.js +4 -0
  510. package/build/shortcut/index.js +6 -4
  511. package/build/shortcut/index.js.map +1 -1
  512. package/build/slot-fill/bubbles-virtually/fill.js +5 -4
  513. package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
  514. package/build/slot-fill/bubbles-virtually/slot-fill-provider.js +4 -3
  515. package/build/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
  516. package/build/slot-fill/bubbles-virtually/slot.js +7 -6
  517. package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
  518. package/build/slot-fill/fill.js +17 -13
  519. package/build/slot-fill/fill.js.map +1 -1
  520. package/build/slot-fill/index.js +12 -9
  521. package/build/slot-fill/index.js.map +1 -1
  522. package/build/slot-fill/index.native.js +2 -2
  523. package/build/slot-fill/slot.js +12 -9
  524. package/build/slot-fill/slot.js.map +1 -1
  525. package/build/snackbar/index.js +22 -20
  526. package/build/snackbar/index.js.map +1 -1
  527. package/build/snackbar/list.js +7 -6
  528. package/build/snackbar/list.js.map +1 -1
  529. package/build/spacer/types.js +4 -0
  530. package/build/style-provider/index.js +10 -6
  531. package/build/style-provider/index.js.map +1 -1
  532. package/build/style-provider/index.native.js +4 -3
  533. package/build/style-provider/index.native.js.map +1 -1
  534. package/build/surface/hook.js +4 -2
  535. package/build/surface/hook.js.map +1 -1
  536. package/build/surface/styles.js +9 -7
  537. package/build/surface/styles.js.map +1 -1
  538. package/build/surface/types.js +4 -0
  539. package/build/swatch/index.js +4 -3
  540. package/build/swatch/index.js.map +1 -1
  541. package/build/tab-panel/index.js +27 -23
  542. package/build/tab-panel/index.js.map +1 -1
  543. package/build/text/hook.js +4 -2
  544. package/build/text/hook.js.map +1 -1
  545. package/build/text/styles/text-mixins.native.js +3 -1
  546. package/build/text/styles/text-mixins.native.js.map +1 -1
  547. package/build/text/styles.js +1 -1
  548. package/build/text/types.js +4 -0
  549. package/build/text/utils.js +17 -16
  550. package/build/text/utils.js.map +1 -1
  551. package/build/text-control/index.js +13 -12
  552. package/build/text-control/index.js.map +1 -1
  553. package/build/text-control/index.native.js +13 -12
  554. package/build/text-control/index.native.js.map +1 -1
  555. package/build/text-highlight/index.js +5 -4
  556. package/build/text-highlight/index.js.map +1 -1
  557. package/build/textarea-control/index.js +11 -10
  558. package/build/textarea-control/index.js.map +1 -1
  559. package/build/textarea-control/index.native.js +8 -7
  560. package/build/textarea-control/index.native.js.map +1 -1
  561. package/build/toggle-control/index.js +10 -8
  562. package/build/toggle-control/index.js.map +1 -1
  563. package/build/toggle-control/index.native.js +10 -9
  564. package/build/toggle-control/index.native.js.map +1 -1
  565. package/build/toggle-group-control/context.js +1 -1
  566. package/build/toggle-group-control/toggle-group-control/component.js +4 -2
  567. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  568. package/build/toggle-group-control/toggle-group-control/styles.js +1 -1
  569. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +7 -6
  570. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
  571. package/build/toggle-group-control/toggle-group-control-option/component.js +4 -2
  572. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  573. package/build/toggle-group-control/toggle-group-control-option/styles.js +1 -1
  574. package/build/toggle-group-control/types.js +4 -0
  575. package/build/toolbar/index.js +7 -5
  576. package/build/toolbar/index.js.map +1 -1
  577. package/build/toolbar/toolbar-container.js +5 -4
  578. package/build/toolbar/toolbar-container.js.map +1 -1
  579. package/build/toolbar/toolbar-container.native.js +6 -3
  580. package/build/toolbar/toolbar-container.native.js.map +1 -1
  581. package/build/toolbar-button/index.js +11 -10
  582. package/build/toolbar-button/index.js.map +1 -1
  583. package/build/toolbar-group/index.js +9 -8
  584. package/build/toolbar-group/index.js.map +1 -1
  585. package/build/toolbar-group/toolbar-group-collapsed.js +6 -5
  586. package/build/toolbar-group/toolbar-group-collapsed.js.map +1 -1
  587. package/build/toolbar-group/toolbar-group-collapsed.native.js +7 -6
  588. package/build/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
  589. package/build/toolbar-group/toolbar-group-container.js +10 -7
  590. package/build/toolbar-group/toolbar-group-container.js.map +1 -1
  591. package/build/toolbar-group/toolbar-group-container.native.js +10 -7
  592. package/build/toolbar-group/toolbar-group-container.native.js.map +1 -1
  593. package/build/toolbar-item/index.js +6 -5
  594. package/build/toolbar-item/index.js.map +1 -1
  595. package/build/toolbar-item/index.native.js +6 -4
  596. package/build/toolbar-item/index.native.js.map +1 -1
  597. package/build/tools-panel/index.js +4 -4
  598. package/build/tools-panel/styles.js +1 -1
  599. package/build/tools-panel/tools-panel/hook.js +21 -13
  600. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  601. package/build/tools-panel/tools-panel-header/component.js +38 -29
  602. package/build/tools-panel/tools-panel-header/component.js.map +1 -1
  603. package/build/tools-panel/tools-panel-header/hook.js +4 -2
  604. package/build/tools-panel/tools-panel-header/hook.js.map +1 -1
  605. package/build/tools-panel/tools-panel-item/hook.js +4 -2
  606. package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
  607. package/build/tools-panel/types.js +4 -0
  608. package/build/tooltip/index.js +52 -41
  609. package/build/tooltip/index.js.map +1 -1
  610. package/build/tooltip/index.native.js +16 -13
  611. package/build/tooltip/index.native.js.map +1 -1
  612. package/build/tree-grid/cell.js +6 -5
  613. package/build/tree-grid/cell.js.map +1 -1
  614. package/build/tree-grid/index.js +13 -12
  615. package/build/tree-grid/index.js.map +1 -1
  616. package/build/tree-grid/item.js +5 -4
  617. package/build/tree-grid/item.js.map +1 -1
  618. package/build/tree-grid/roving-tab-index-context.js +1 -1
  619. package/build/tree-grid/roving-tab-index-item.js +6 -5
  620. package/build/tree-grid/roving-tab-index-item.js.map +1 -1
  621. package/build/tree-grid/roving-tab-index.js +4 -3
  622. package/build/tree-grid/roving-tab-index.js.map +1 -1
  623. package/build/tree-grid/row.js +9 -8
  624. package/build/tree-grid/row.js.map +1 -1
  625. package/build/tree-select/index.js +11 -9
  626. package/build/tree-select/index.js.map +1 -1
  627. package/build/truncate/hook.js +4 -2
  628. package/build/truncate/hook.js.map +1 -1
  629. package/build/truncate/types.js +4 -0
  630. package/build/truncate/utils.js +5 -3
  631. package/build/truncate/utils.js.map +1 -1
  632. package/build/ui/__storybook-utils/example-grid.js +40 -30
  633. package/build/ui/__storybook-utils/example-grid.js.map +1 -1
  634. package/build/ui/__storybook-utils/page.js +5 -4
  635. package/build/ui/__storybook-utils/page.js.map +1 -1
  636. package/build/ui/context/constants.js +1 -1
  637. package/build/ui/context/context-connect.js +3 -1
  638. package/build/ui/context/context-connect.js.map +1 -1
  639. package/build/ui/context/context-system-provider.js +10 -8
  640. package/build/ui/context/context-system-provider.js.map +1 -1
  641. package/build/ui/context/index.js +6 -6
  642. package/build/ui/context/utils.js +1 -1
  643. package/build/ui/context/wordpress-component.js +4 -0
  644. package/build/ui/control-group/hook.js +4 -2
  645. package/build/ui/control-group/hook.js.map +1 -1
  646. package/build/ui/control-group/styles.js +1 -1
  647. package/build/ui/control-group/types.js +4 -0
  648. package/build/ui/control-label/hook.js +4 -2
  649. package/build/ui/control-label/hook.js.map +1 -1
  650. package/build/ui/control-label/styles.js +1 -1
  651. package/build/ui/control-label/types.js +4 -0
  652. package/build/ui/form-group/form-group-content.js +13 -12
  653. package/build/ui/form-group/form-group-content.js.map +1 -1
  654. package/build/ui/form-group/form-group-help.js +4 -3
  655. package/build/ui/form-group/form-group-help.js.map +1 -1
  656. package/build/ui/form-group/form-group-label.js +7 -6
  657. package/build/ui/form-group/form-group-label.js.map +1 -1
  658. package/build/ui/form-group/types.js +4 -0
  659. package/build/ui/form-group/use-form-group.js +4 -2
  660. package/build/ui/form-group/use-form-group.js.map +1 -1
  661. package/build/ui/spinner/styles.js +1 -1
  662. package/build/ui/tooltip/content.js +4 -2
  663. package/build/ui/tooltip/content.js.map +1 -1
  664. package/build/ui/tooltip/styles.js +5 -3
  665. package/build/ui/tooltip/styles.js.map +1 -1
  666. package/build/ui/tooltip/types.js +4 -0
  667. package/build/ui/utils/font-size.js +7 -3
  668. package/build/ui/utils/font-size.js.map +1 -1
  669. package/build/ui/utils/get-high-dpi.js +5 -1
  670. package/build/ui/utils/get-high-dpi.js.map +1 -1
  671. package/build/ui/utils/types.js +4 -0
  672. package/build/ui/utils/use-responsive-value.js +5 -3
  673. package/build/ui/utils/use-responsive-value.js.map +1 -1
  674. package/build/unit-control/index.js +25 -22
  675. package/build/unit-control/index.js.map +1 -1
  676. package/build/unit-control/index.native.js +17 -16
  677. package/build/unit-control/index.native.js.map +1 -1
  678. package/build/unit-control/styles/unit-control-styles.js +13 -10
  679. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  680. package/build/unit-control/types.js +4 -0
  681. package/build/unit-control/unit-select-control.js +11 -9
  682. package/build/unit-control/unit-select-control.js.map +1 -1
  683. package/build/unit-control/utils.js +20 -13
  684. package/build/unit-control/utils.js.map +1 -1
  685. package/build/utils/browsers.js +10 -2
  686. package/build/utils/browsers.js.map +1 -1
  687. package/build/utils/colors-values.js +1 -1
  688. package/build/utils/colors.js +3 -1
  689. package/build/utils/colors.js.map +1 -1
  690. package/build/utils/hooks/emotion.d.js +4 -0
  691. package/build/utils/hooks/index.js +10 -10
  692. package/build/utils/hooks/use-combined-ref.js +5 -1
  693. package/build/utils/hooks/use-combined-ref.js.map +1 -1
  694. package/build/utils/hooks/use-controlled-state.js +2 -1
  695. package/build/utils/hooks/use-controlled-state.js.map +1 -1
  696. package/build/utils/hooks/use-controlled-value.js +6 -5
  697. package/build/utils/hooks/use-controlled-value.js.map +1 -1
  698. package/build/utils/hooks/use-cx.js +5 -1
  699. package/build/utils/hooks/use-cx.js.map +1 -1
  700. package/build/utils/input/base.js +1 -1
  701. package/build/utils/math.js +19 -7
  702. package/build/utils/math.js.map +1 -1
  703. package/build/utils/reduce-motion.js +2 -1
  704. package/build/utils/reduce-motion.js.map +1 -1
  705. package/build/utils/rtl.js +6 -3
  706. package/build/utils/rtl.js.map +1 -1
  707. package/build/utils/style-mixins.js +12 -12
  708. package/build/utils/types.js +4 -0
  709. package/build/utils/unit-values.js +1 -1
  710. package/build/utils/values.js +10 -6
  711. package/build/utils/values.js.map +1 -1
  712. package/build/v-stack/types.js +4 -0
  713. package/build/z-stack/styles.js +24 -15
  714. package/build/z-stack/styles.js.map +1 -1
  715. package/build-module/alignment-matrix-control/cell.js +6 -5
  716. package/build-module/alignment-matrix-control/cell.js.map +1 -1
  717. package/build-module/alignment-matrix-control/icon.js +9 -8
  718. package/build-module/alignment-matrix-control/icon.js.map +1 -1
  719. package/build-module/alignment-matrix-control/index.js +11 -10
  720. package/build-module/alignment-matrix-control/index.js.map +1 -1
  721. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +8 -6
  722. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
  723. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +8 -6
  724. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  725. package/build-module/alignment-matrix-control/utils.js +2 -1
  726. package/build-module/alignment-matrix-control/utils.js.map +1 -1
  727. package/build-module/angle-picker-control/angle-circle.js +6 -5
  728. package/build-module/angle-picker-control/angle-circle.js.map +1 -1
  729. package/build-module/angle-picker-control/index.js +8 -6
  730. package/build-module/angle-picker-control/index.js.map +1 -1
  731. package/build-module/animate/index.js +6 -5
  732. package/build-module/animate/index.js.map +1 -1
  733. package/build-module/autocomplete/autocompleter-ui.js +13 -12
  734. package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
  735. package/build-module/autocomplete/autocompleter-ui.native.js +14 -11
  736. package/build-module/autocomplete/autocompleter-ui.native.js.map +1 -1
  737. package/build-module/autocomplete/background-view.android.js +4 -3
  738. package/build-module/autocomplete/background-view.android.js.map +1 -1
  739. package/build-module/autocomplete/background-view.ios.js +4 -3
  740. package/build-module/autocomplete/background-view.ios.js.map +1 -1
  741. package/build-module/autocomplete/get-default-use-items.js +3 -1
  742. package/build-module/autocomplete/get-default-use-items.js.map +1 -1
  743. package/build-module/autocomplete/index.js +19 -16
  744. package/build-module/autocomplete/index.js.map +1 -1
  745. package/build-module/base-control/index.js +14 -12
  746. package/build-module/base-control/index.js.map +1 -1
  747. package/build-module/base-control/index.native.js +6 -5
  748. package/build-module/base-control/index.native.js.map +1 -1
  749. package/build-module/box-control/all-input-control.js +12 -11
  750. package/build-module/box-control/all-input-control.js.map +1 -1
  751. package/build-module/box-control/axial-input-controls.js +13 -11
  752. package/build-module/box-control/axial-input-controls.js.map +1 -1
  753. package/build-module/box-control/icon.js +8 -6
  754. package/build-module/box-control/icon.js.map +1 -1
  755. package/build-module/box-control/index.js +22 -18
  756. package/build-module/box-control/index.js.map +1 -1
  757. package/build-module/box-control/input-controls.js +17 -14
  758. package/build-module/box-control/input-controls.js.map +1 -1
  759. package/build-module/box-control/linked-button.js +5 -4
  760. package/build-module/box-control/linked-button.js.map +1 -1
  761. package/build-module/box-control/styles/box-control-icon-styles.js +4 -3
  762. package/build-module/box-control/styles/box-control-icon-styles.js.map +1 -1
  763. package/build-module/box-control/styles/box-control-styles.js +12 -9
  764. package/build-module/box-control/styles/box-control-styles.js.map +1 -1
  765. package/build-module/box-control/styles/box-control-visualizer-styles.js +11 -7
  766. package/build-module/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  767. package/build-module/box-control/unit-control.js +22 -18
  768. package/build-module/box-control/unit-control.js.map +1 -1
  769. package/build-module/box-control/utils.js +6 -2
  770. package/build-module/box-control/utils.js.map +1 -1
  771. package/build-module/box-control/visualizer.js +32 -26
  772. package/build-module/box-control/visualizer.js.map +1 -1
  773. package/build-module/button/deprecated.js +8 -7
  774. package/build-module/button/deprecated.js.map +1 -1
  775. package/build-module/button/index.js +10 -9
  776. package/build-module/button/index.js.map +1 -1
  777. package/build-module/button-group/index.js +5 -4
  778. package/build-module/button-group/index.js.map +1 -1
  779. package/build-module/card/card/hook.js +7 -5
  780. package/build-module/card/card/hook.js.map +1 -1
  781. package/build-module/card/types.js +1 -1
  782. package/build-module/checkbox-control/index.js +11 -9
  783. package/build-module/checkbox-control/index.js.map +1 -1
  784. package/build-module/circular-option-picker/index.js +40 -33
  785. package/build-module/circular-option-picker/index.js.map +1 -1
  786. package/build-module/clipboard-button/index.js +9 -8
  787. package/build-module/clipboard-button/index.js.map +1 -1
  788. package/build-module/color-control/index.native.js +8 -7
  789. package/build-module/color-control/index.native.js.map +1 -1
  790. package/build-module/color-edit/index.js +85 -52
  791. package/build-module/color-edit/index.js.map +1 -1
  792. package/build-module/color-indicator/index.js +13 -10
  793. package/build-module/color-indicator/index.js.map +1 -1
  794. package/build-module/color-indicator/index.native.js +12 -10
  795. package/build-module/color-indicator/index.native.js.map +1 -1
  796. package/build-module/color-list-picker/index.js +18 -16
  797. package/build-module/color-list-picker/index.js.map +1 -1
  798. package/build-module/color-palette/index.js +55 -47
  799. package/build-module/color-palette/index.js.map +1 -1
  800. package/build-module/color-palette/index.native.js +23 -20
  801. package/build-module/color-palette/index.native.js.map +1 -1
  802. package/build-module/color-picker/color-display.js +35 -27
  803. package/build-module/color-picker/color-display.js.map +1 -1
  804. package/build-module/color-picker/color-input.js +7 -6
  805. package/build-module/color-picker/color-input.js.map +1 -1
  806. package/build-module/color-picker/hex-input.js +7 -5
  807. package/build-module/color-picker/hex-input.js.map +1 -1
  808. package/build-module/color-picker/hsl-input.js +6 -5
  809. package/build-module/color-picker/hsl-input.js.map +1 -1
  810. package/build-module/color-picker/index.native.js +23 -20
  811. package/build-module/color-picker/index.native.js.map +1 -1
  812. package/build-module/color-picker/input-with-slider.js +9 -8
  813. package/build-module/color-picker/input-with-slider.js.map +1 -1
  814. package/build-module/color-picker/picker.js +6 -5
  815. package/build-module/color-picker/picker.js.map +1 -1
  816. package/build-module/color-picker/rgb-input.js +6 -5
  817. package/build-module/color-picker/rgb-input.js.map +1 -1
  818. package/build-module/color-picker/types.js +1 -1
  819. package/build-module/combobox-control/index.js +17 -15
  820. package/build-module/combobox-control/index.js.map +1 -1
  821. package/build-module/custom-gradient-bar/control-points.js +118 -106
  822. package/build-module/custom-gradient-bar/control-points.js.map +1 -1
  823. package/build-module/custom-gradient-bar/index.js +13 -11
  824. package/build-module/custom-gradient-bar/index.js.map +1 -1
  825. package/build-module/custom-gradient-bar/utils.js +6 -4
  826. package/build-module/custom-gradient-bar/utils.js.map +1 -1
  827. package/build-module/custom-gradient-picker/index.js +17 -14
  828. package/build-module/custom-gradient-picker/index.js.map +1 -1
  829. package/build-module/custom-gradient-picker/index.native.js +6 -5
  830. package/build-module/custom-gradient-picker/index.native.js.map +1 -1
  831. package/build-module/custom-gradient-picker/serializer.js +18 -14
  832. package/build-module/custom-gradient-picker/serializer.js.map +1 -1
  833. package/build-module/custom-gradient-picker/utils.js +5 -4
  834. package/build-module/custom-gradient-picker/utils.js.map +1 -1
  835. package/build-module/custom-select-control/index.js +22 -18
  836. package/build-module/custom-select-control/index.js.map +1 -1
  837. package/build-module/dashicon/index.js +6 -5
  838. package/build-module/dashicon/index.js.map +1 -1
  839. package/build-module/dashicon/index.native.js +5 -4
  840. package/build-module/dashicon/index.native.js.map +1 -1
  841. package/build-module/dashicon/types.js +1 -1
  842. package/build-module/date-time/date.js +5 -4
  843. package/build-module/date-time/date.js.map +1 -1
  844. package/build-module/date-time/index.js +9 -8
  845. package/build-module/date-time/index.js.map +1 -1
  846. package/build-module/date-time/time.js +14 -11
  847. package/build-module/date-time/time.js.map +1 -1
  848. package/build-module/dimension-control/index.js +10 -7
  849. package/build-module/dimension-control/index.js.map +1 -1
  850. package/build-module/disabled/index.js +8 -6
  851. package/build-module/disabled/index.js.map +1 -1
  852. package/build-module/disabled/index.native.js +4 -3
  853. package/build-module/disabled/index.native.js.map +1 -1
  854. package/build-module/divider/styles.js +7 -5
  855. package/build-module/divider/styles.js.map +1 -1
  856. package/build-module/divider/types.js +1 -1
  857. package/build-module/draggable/index.js +13 -11
  858. package/build-module/draggable/index.js.map +1 -1
  859. package/build-module/drop-zone/index.js +8 -7
  860. package/build-module/drop-zone/index.js.map +1 -1
  861. package/build-module/drop-zone/provider.js +4 -3
  862. package/build-module/drop-zone/provider.js.map +1 -1
  863. package/build-module/dropdown/index.js +14 -13
  864. package/build-module/dropdown/index.js.map +1 -1
  865. package/build-module/dropdown-menu/index.js +9 -5
  866. package/build-module/dropdown-menu/index.js.map +1 -1
  867. package/build-module/dropdown-menu/index.native.js +26 -19
  868. package/build-module/dropdown-menu/index.native.js.map +1 -1
  869. package/build-module/duotone-picker/custom-duotone-bar.js +5 -4
  870. package/build-module/duotone-picker/custom-duotone-bar.js.map +1 -1
  871. package/build-module/duotone-picker/duotone-picker.js +15 -13
  872. package/build-module/duotone-picker/duotone-picker.js.map +1 -1
  873. package/build-module/duotone-picker/duotone-swatch.js +4 -3
  874. package/build-module/duotone-picker/duotone-swatch.js.map +1 -1
  875. package/build-module/duotone-picker/utils.js +27 -14
  876. package/build-module/duotone-picker/utils.js.map +1 -1
  877. package/build-module/elevation/types.js +1 -1
  878. package/build-module/external-link/index.js +8 -7
  879. package/build-module/external-link/index.js.map +1 -1
  880. package/build-module/external-link/index.native.js +5 -4
  881. package/build-module/external-link/index.native.js.map +1 -1
  882. package/build-module/flex/flex/hook.js +6 -4
  883. package/build-module/flex/flex/hook.js.map +1 -1
  884. package/build-module/flex/types.js +1 -1
  885. package/build-module/flyout/types.js +1 -1
  886. package/build-module/flyout/utils.js +4 -3
  887. package/build-module/flyout/utils.js.map +1 -1
  888. package/build-module/focal-point-picker/controls.js +8 -7
  889. package/build-module/focal-point-picker/controls.js.map +1 -1
  890. package/build-module/focal-point-picker/focal-point.js +8 -7
  891. package/build-module/focal-point-picker/focal-point.js.map +1 -1
  892. package/build-module/focal-point-picker/focal-point.native.js +6 -5
  893. package/build-module/focal-point-picker/focal-point.native.js.map +1 -1
  894. package/build-module/focal-point-picker/grid.js +6 -5
  895. package/build-module/focal-point-picker/grid.js.map +1 -1
  896. package/build-module/focal-point-picker/index.js +2 -1
  897. package/build-module/focal-point-picker/index.js.map +1 -1
  898. package/build-module/focal-point-picker/media.js +19 -16
  899. package/build-module/focal-point-picker/media.js.map +1 -1
  900. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +7 -4
  901. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  902. package/build-module/focal-point-picker/styles/focal-point-style.js +6 -3
  903. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  904. package/build-module/focal-point-picker/tooltip/index.native.js +18 -15
  905. package/build-module/focal-point-picker/tooltip/index.native.js.map +1 -1
  906. package/build-module/focal-point-picker/utils.js +4 -2
  907. package/build-module/focal-point-picker/utils.js.map +1 -1
  908. package/build-module/focusable-iframe/index.js +5 -4
  909. package/build-module/focusable-iframe/index.js.map +1 -1
  910. package/build-module/font-size-picker/index.js +20 -15
  911. package/build-module/font-size-picker/index.js.map +1 -1
  912. package/build-module/font-size-picker/index.native.js +7 -6
  913. package/build-module/font-size-picker/index.native.js.map +1 -1
  914. package/build-module/font-size-picker/utils.js +19 -15
  915. package/build-module/font-size-picker/utils.js.map +1 -1
  916. package/build-module/footer-message-control/index.native.js +3 -2
  917. package/build-module/footer-message-control/index.native.js.map +1 -1
  918. package/build-module/form-file-upload/index.js +9 -8
  919. package/build-module/form-file-upload/index.js.map +1 -1
  920. package/build-module/form-toggle/index.js +9 -8
  921. package/build-module/form-toggle/index.js.map +1 -1
  922. package/build-module/form-token-field/index.js +8 -2
  923. package/build-module/form-token-field/index.js.map +1 -1
  924. package/build-module/form-token-field/token.js +15 -14
  925. package/build-module/form-token-field/token.js.map +1 -1
  926. package/build-module/gradient-picker/index.js +56 -49
  927. package/build-module/gradient-picker/index.js.map +1 -1
  928. package/build-module/grid/types.js +1 -1
  929. package/build-module/guide/icons.js +16 -13
  930. package/build-module/guide/icons.js.map +1 -1
  931. package/build-module/guide/index.js +9 -8
  932. package/build-module/guide/index.js.map +1 -1
  933. package/build-module/guide/page-control.js +6 -5
  934. package/build-module/guide/page-control.js.map +1 -1
  935. package/build-module/h-stack/types.js +1 -1
  936. package/build-module/h-stack/utils.js +3 -1
  937. package/build-module/h-stack/utils.js.map +1 -1
  938. package/build-module/higher-order/navigate-regions/index.js +19 -13
  939. package/build-module/higher-order/navigate-regions/index.js.map +1 -1
  940. package/build-module/higher-order/with-focus-return/index.js +17 -13
  941. package/build-module/higher-order/with-focus-return/index.js.map +1 -1
  942. package/build-module/icon/index.js +7 -5
  943. package/build-module/icon/index.js.map +1 -1
  944. package/build-module/input-control/backdrop.js +5 -4
  945. package/build-module/input-control/backdrop.js.map +1 -1
  946. package/build-module/input-control/index.js +20 -19
  947. package/build-module/input-control/index.js.map +1 -1
  948. package/build-module/input-control/input-base.js +16 -15
  949. package/build-module/input-control/input-base.js.map +1 -1
  950. package/build-module/input-control/input-field.js +24 -23
  951. package/build-module/input-control/input-field.js.map +1 -1
  952. package/build-module/input-control/label.js +7 -6
  953. package/build-module/input-control/label.js.map +1 -1
  954. package/build-module/input-control/reducer/reducer.js +15 -4
  955. package/build-module/input-control/reducer/reducer.js.map +1 -1
  956. package/build-module/input-control/styles/input-control-styles.js +48 -36
  957. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  958. package/build-module/input-control/types.js +1 -1
  959. package/build-module/isolated-event-container/index.js +5 -4
  960. package/build-module/isolated-event-container/index.js.map +1 -1
  961. package/build-module/item-group/types.js +1 -1
  962. package/build-module/keyboard-shortcuts/index.js +15 -13
  963. package/build-module/keyboard-shortcuts/index.js.map +1 -1
  964. package/build-module/menu-items-choice/index.js +7 -6
  965. package/build-module/menu-items-choice/index.js.map +1 -1
  966. package/build-module/mobile/audio-player/index.native.js +8 -7
  967. package/build-module/mobile/audio-player/index.native.js.map +1 -1
  968. package/build-module/mobile/badge/index.native.js +6 -5
  969. package/build-module/mobile/badge/index.native.js.map +1 -1
  970. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +12 -10
  971. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
  972. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +12 -9
  973. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
  974. package/build-module/mobile/bottom-sheet/button.native.js +21 -18
  975. package/build-module/mobile/bottom-sheet/button.native.js.map +1 -1
  976. package/build-module/mobile/bottom-sheet/footer-message-cell.native.js +5 -4
  977. package/build-module/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
  978. package/build-module/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +5 -4
  979. package/build-module/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
  980. package/build-module/mobile/bottom-sheet/index.native.js +24 -17
  981. package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
  982. package/build-module/mobile/bottom-sheet/link-cell.native.js +7 -6
  983. package/build-module/mobile/bottom-sheet/link-cell.native.js.map +1 -1
  984. package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js +5 -4
  985. package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  986. package/build-module/mobile/bottom-sheet/nav-bar/action-button.native.js +7 -6
  987. package/build-module/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
  988. package/build-module/mobile/bottom-sheet/nav-bar/apply-button.native.js +4 -3
  989. package/build-module/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
  990. package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js +15 -12
  991. package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
  992. package/build-module/mobile/bottom-sheet/nav-bar/heading.native.js +4 -3
  993. package/build-module/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
  994. package/build-module/mobile/bottom-sheet/nav-bar/index.native.js +4 -3
  995. package/build-module/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
  996. package/build-module/mobile/bottom-sheet/range-text-input.native.js +6 -5
  997. package/build-module/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
  998. package/build-module/mobile/bottom-sheet/ripple.native.js +11 -10
  999. package/build-module/mobile/bottom-sheet/ripple.native.js.map +1 -1
  1000. package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js +2 -1
  1001. package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
  1002. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js +12 -11
  1003. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
  1004. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js +12 -11
  1005. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
  1006. package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js +7 -6
  1007. package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
  1008. package/build-module/mobile/bottom-sheet-select-control/index.native.js +8 -7
  1009. package/build-module/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
  1010. package/build-module/mobile/bottom-sheet-text-control/index.native.js +9 -8
  1011. package/build-module/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
  1012. package/build-module/mobile/color-settings/index.native.js +11 -10
  1013. package/build-module/mobile/color-settings/index.native.js.map +1 -1
  1014. package/build-module/mobile/cycle-select-control/index.native.js +12 -11
  1015. package/build-module/mobile/cycle-select-control/index.native.js.map +1 -1
  1016. package/build-module/mobile/focal-point-settings-panel/index.native.js +7 -6
  1017. package/build-module/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  1018. package/build-module/mobile/global-styles-context/utils.native.js +5 -3
  1019. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  1020. package/build-module/mobile/gradient/index.native.js +11 -10
  1021. package/build-module/mobile/gradient/index.native.js.map +1 -1
  1022. package/build-module/mobile/html-text-input/container.android.js +12 -9
  1023. package/build-module/mobile/html-text-input/container.android.js.map +1 -1
  1024. package/build-module/mobile/image/image-editing-button.native.js +26 -22
  1025. package/build-module/mobile/image/image-editing-button.native.js.map +1 -1
  1026. package/build-module/mobile/image/index.native.js +23 -22
  1027. package/build-module/mobile/image/index.native.js.map +1 -1
  1028. package/build-module/mobile/keyboard-avoiding-view/index.ios.js +29 -22
  1029. package/build-module/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
  1030. package/build-module/mobile/keyboard-aware-flat-list/index.ios.js +46 -43
  1031. package/build-module/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  1032. package/build-module/mobile/layout-animation/index.native.js +2 -1
  1033. package/build-module/mobile/layout-animation/index.native.js.map +1 -1
  1034. package/build-module/mobile/link-picker/index.native.js +12 -10
  1035. package/build-module/mobile/link-picker/index.native.js.map +1 -1
  1036. package/build-module/mobile/link-picker/link-picker-results.native.js +48 -34
  1037. package/build-module/mobile/link-picker/link-picker-results.native.js.map +1 -1
  1038. package/build-module/mobile/link-picker/link-picker-screen.native.js +9 -7
  1039. package/build-module/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  1040. package/build-module/mobile/link-settings/image-link-destinations-screen.native.js +9 -8
  1041. package/build-module/mobile/link-settings/image-link-destinations-screen.native.js.map +1 -1
  1042. package/build-module/mobile/link-settings/index.native.js +58 -57
  1043. package/build-module/mobile/link-settings/index.native.js.map +1 -1
  1044. package/build-module/mobile/picker/index.ios.js +6 -3
  1045. package/build-module/mobile/picker/index.ios.js.map +1 -1
  1046. package/build-module/mobile/readable-content-view/index.native.js +11 -9
  1047. package/build-module/mobile/readable-content-view/index.native.js.map +1 -1
  1048. package/build-module/mobile/segmented-control/index.native.js +16 -14
  1049. package/build-module/mobile/segmented-control/index.native.js.map +1 -1
  1050. package/build-module/mobile/utils/index.native.js +2 -1
  1051. package/build-module/mobile/utils/index.native.js.map +1 -1
  1052. package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js +4 -3
  1053. package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
  1054. package/build-module/modal/index.js +27 -26
  1055. package/build-module/modal/index.js.map +1 -1
  1056. package/build-module/navigable-container/menu.js +7 -5
  1057. package/build-module/navigable-container/menu.js.map +1 -1
  1058. package/build-module/navigable-container/tabbable.js +6 -4
  1059. package/build-module/navigable-container/tabbable.js.map +1 -1
  1060. package/build-module/navigation/back-button/index.js +8 -7
  1061. package/build-module/navigation/back-button/index.js.map +1 -1
  1062. package/build-module/navigation/group/index.js +6 -5
  1063. package/build-module/navigation/group/index.js.map +1 -1
  1064. package/build-module/navigation/index.js +11 -8
  1065. package/build-module/navigation/index.js.map +1 -1
  1066. package/build-module/navigation/menu/menu-title-search.js +8 -7
  1067. package/build-module/navigation/menu/menu-title-search.js.map +1 -1
  1068. package/build-module/navigation/menu/menu-title.js +8 -7
  1069. package/build-module/navigation/menu/menu-title.js.map +1 -1
  1070. package/build-module/navigation/menu/search-no-results-found.js +4 -3
  1071. package/build-module/navigation/menu/search-no-results-found.js.map +1 -1
  1072. package/build-module/navigator/types.js +1 -1
  1073. package/build-module/notice/index.js +26 -24
  1074. package/build-module/notice/index.js.map +1 -1
  1075. package/build-module/notice/index.native.js +7 -6
  1076. package/build-module/notice/index.native.js.map +1 -1
  1077. package/build-module/notice/list.js +8 -6
  1078. package/build-module/notice/list.js.map +1 -1
  1079. package/build-module/number-control/index.js +18 -17
  1080. package/build-module/number-control/index.js.map +1 -1
  1081. package/build-module/number-control/styles/number-control-styles.js +4 -3
  1082. package/build-module/number-control/styles/number-control-styles.js.map +1 -1
  1083. package/build-module/panel/actions.native.js +10 -8
  1084. package/build-module/panel/actions.native.js.map +1 -1
  1085. package/build-module/panel/body.js +19 -17
  1086. package/build-module/panel/body.js.map +1 -1
  1087. package/build-module/panel/body.native.js +7 -6
  1088. package/build-module/panel/body.native.js.map +1 -1
  1089. package/build-module/panel/bottom-separator-cover.native.js +4 -3
  1090. package/build-module/panel/bottom-separator-cover.native.js.map +1 -1
  1091. package/build-module/panel/header.js +5 -4
  1092. package/build-module/panel/header.js.map +1 -1
  1093. package/build-module/panel/index.js +6 -5
  1094. package/build-module/panel/index.js.map +1 -1
  1095. package/build-module/panel/row.js +10 -7
  1096. package/build-module/panel/row.js.map +1 -1
  1097. package/build-module/placeholder/index.js +12 -11
  1098. package/build-module/placeholder/index.js.map +1 -1
  1099. package/build-module/popover/index.js +45 -37
  1100. package/build-module/popover/index.js.map +1 -1
  1101. package/build-module/popover/utils.js +9 -1
  1102. package/build-module/popover/utils.js.map +1 -1
  1103. package/build-module/query-controls/author-select.js +8 -7
  1104. package/build-module/query-controls/author-select.js.map +1 -1
  1105. package/build-module/query-controls/category-select.js +9 -8
  1106. package/build-module/query-controls/category-select.js.map +1 -1
  1107. package/build-module/query-controls/index.js +19 -18
  1108. package/build-module/query-controls/index.js.map +1 -1
  1109. package/build-module/query-controls/index.native.js +14 -13
  1110. package/build-module/query-controls/index.native.js.map +1 -1
  1111. package/build-module/radio/index.js +6 -5
  1112. package/build-module/radio/index.js.map +1 -1
  1113. package/build-module/radio-control/index.js +11 -10
  1114. package/build-module/radio-control/index.js.map +1 -1
  1115. package/build-module/radio-control/index.native.js +7 -6
  1116. package/build-module/radio-control/index.native.js.map +1 -1
  1117. package/build-module/radio-group/index.js +9 -8
  1118. package/build-module/radio-group/index.js.map +1 -1
  1119. package/build-module/range-control/index.js +33 -32
  1120. package/build-module/range-control/index.js.map +1 -1
  1121. package/build-module/range-control/index.native.js +20 -18
  1122. package/build-module/range-control/index.native.js.map +1 -1
  1123. package/build-module/range-control/input-range.js +11 -10
  1124. package/build-module/range-control/input-range.js.map +1 -1
  1125. package/build-module/range-control/mark.js +8 -7
  1126. package/build-module/range-control/mark.js.map +1 -1
  1127. package/build-module/range-control/rail.js +29 -24
  1128. package/build-module/range-control/rail.js.map +1 -1
  1129. package/build-module/range-control/styles/range-control-styles.js +49 -35
  1130. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  1131. package/build-module/range-control/tooltip.js +17 -15
  1132. package/build-module/range-control/tooltip.js.map +1 -1
  1133. package/build-module/range-control/utils.js +15 -13
  1134. package/build-module/range-control/utils.js.map +1 -1
  1135. package/build-module/resizable-box/index.js +9 -8
  1136. package/build-module/resizable-box/index.js.map +1 -1
  1137. package/build-module/resizable-box/resize-tooltip/index.js +13 -12
  1138. package/build-module/resizable-box/resize-tooltip/index.js.map +1 -1
  1139. package/build-module/resizable-box/resize-tooltip/label.js +7 -6
  1140. package/build-module/resizable-box/resize-tooltip/label.js.map +1 -1
  1141. package/build-module/resizable-box/resize-tooltip/utils.js +19 -16
  1142. package/build-module/resizable-box/resize-tooltip/utils.js.map +1 -1
  1143. package/build-module/responsive-wrapper/index.js +7 -6
  1144. package/build-module/responsive-wrapper/index.js.map +1 -1
  1145. package/build-module/sandbox/index.js +12 -9
  1146. package/build-module/sandbox/index.js.map +1 -1
  1147. package/build-module/sandbox/index.native.js +15 -13
  1148. package/build-module/sandbox/index.native.js.map +1 -1
  1149. package/build-module/scrollable/types.js +1 -1
  1150. package/build-module/search-control/index.js +12 -11
  1151. package/build-module/search-control/index.js.map +1 -1
  1152. package/build-module/search-control/index.native.js +6 -5
  1153. package/build-module/search-control/index.native.js.map +1 -1
  1154. package/build-module/select-control/index.js +33 -26
  1155. package/build-module/select-control/index.js.map +1 -1
  1156. package/build-module/select-control/index.native.js +12 -11
  1157. package/build-module/select-control/index.native.js.map +1 -1
  1158. package/build-module/select-control/styles/select-control-styles.js +12 -9
  1159. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  1160. package/build-module/select-control/types.js +1 -1
  1161. package/build-module/shortcut/index.js +6 -4
  1162. package/build-module/shortcut/index.js.map +1 -1
  1163. package/build-module/slot-fill/bubbles-virtually/fill.js +5 -4
  1164. package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
  1165. package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js +4 -3
  1166. package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
  1167. package/build-module/slot-fill/bubbles-virtually/slot.js +7 -6
  1168. package/build-module/slot-fill/bubbles-virtually/slot.js.map +1 -1
  1169. package/build-module/slot-fill/fill.js +17 -13
  1170. package/build-module/slot-fill/fill.js.map +1 -1
  1171. package/build-module/slot-fill/index.js +11 -8
  1172. package/build-module/slot-fill/index.js.map +1 -1
  1173. package/build-module/slot-fill/slot.js +12 -9
  1174. package/build-module/slot-fill/slot.js.map +1 -1
  1175. package/build-module/snackbar/index.js +22 -20
  1176. package/build-module/snackbar/index.js.map +1 -1
  1177. package/build-module/snackbar/list.js +7 -6
  1178. package/build-module/snackbar/list.js.map +1 -1
  1179. package/build-module/spacer/types.js +1 -1
  1180. package/build-module/style-provider/index.js +6 -4
  1181. package/build-module/style-provider/index.js.map +1 -1
  1182. package/build-module/style-provider/index.native.js +4 -3
  1183. package/build-module/style-provider/index.native.js.map +1 -1
  1184. package/build-module/surface/styles.js +7 -6
  1185. package/build-module/surface/styles.js.map +1 -1
  1186. package/build-module/surface/types.js +1 -1
  1187. package/build-module/swatch/index.js +4 -3
  1188. package/build-module/swatch/index.js.map +1 -1
  1189. package/build-module/tab-panel/index.js +26 -22
  1190. package/build-module/tab-panel/index.js.map +1 -1
  1191. package/build-module/text/styles/text-mixins.native.js +3 -1
  1192. package/build-module/text/styles/text-mixins.native.js.map +1 -1
  1193. package/build-module/text/types.js +1 -1
  1194. package/build-module/text/utils.js +17 -16
  1195. package/build-module/text/utils.js.map +1 -1
  1196. package/build-module/text-control/index.js +13 -12
  1197. package/build-module/text-control/index.js.map +1 -1
  1198. package/build-module/text-control/index.native.js +13 -12
  1199. package/build-module/text-control/index.native.js.map +1 -1
  1200. package/build-module/text-highlight/index.js +5 -4
  1201. package/build-module/text-highlight/index.js.map +1 -1
  1202. package/build-module/textarea-control/index.js +11 -10
  1203. package/build-module/textarea-control/index.js.map +1 -1
  1204. package/build-module/textarea-control/index.native.js +8 -7
  1205. package/build-module/textarea-control/index.native.js.map +1 -1
  1206. package/build-module/toggle-control/index.js +10 -8
  1207. package/build-module/toggle-control/index.js.map +1 -1
  1208. package/build-module/toggle-control/index.native.js +10 -9
  1209. package/build-module/toggle-control/index.native.js.map +1 -1
  1210. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +7 -6
  1211. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
  1212. package/build-module/toggle-group-control/types.js +1 -1
  1213. package/build-module/toolbar/index.js +7 -5
  1214. package/build-module/toolbar/index.js.map +1 -1
  1215. package/build-module/toolbar/toolbar-container.js +5 -4
  1216. package/build-module/toolbar/toolbar-container.js.map +1 -1
  1217. package/build-module/toolbar/toolbar-container.native.js +6 -3
  1218. package/build-module/toolbar/toolbar-container.native.js.map +1 -1
  1219. package/build-module/toolbar-button/index.js +11 -10
  1220. package/build-module/toolbar-button/index.js.map +1 -1
  1221. package/build-module/toolbar-group/index.js +9 -8
  1222. package/build-module/toolbar-group/index.js.map +1 -1
  1223. package/build-module/toolbar-group/toolbar-group-collapsed.js +6 -5
  1224. package/build-module/toolbar-group/toolbar-group-collapsed.js.map +1 -1
  1225. package/build-module/toolbar-group/toolbar-group-collapsed.native.js +7 -6
  1226. package/build-module/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
  1227. package/build-module/toolbar-group/toolbar-group-container.js +10 -7
  1228. package/build-module/toolbar-group/toolbar-group-container.js.map +1 -1
  1229. package/build-module/toolbar-group/toolbar-group-container.native.js +10 -7
  1230. package/build-module/toolbar-group/toolbar-group-container.native.js.map +1 -1
  1231. package/build-module/toolbar-item/index.js +6 -5
  1232. package/build-module/toolbar-item/index.js.map +1 -1
  1233. package/build-module/toolbar-item/index.native.js +6 -4
  1234. package/build-module/toolbar-item/index.native.js.map +1 -1
  1235. package/build-module/tools-panel/tools-panel/hook.js +17 -11
  1236. package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
  1237. package/build-module/tools-panel/tools-panel-header/component.js +38 -29
  1238. package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
  1239. package/build-module/tools-panel/types.js +1 -1
  1240. package/build-module/tooltip/index.js +52 -41
  1241. package/build-module/tooltip/index.js.map +1 -1
  1242. package/build-module/tooltip/index.native.js +16 -13
  1243. package/build-module/tooltip/index.native.js.map +1 -1
  1244. package/build-module/tree-grid/cell.js +6 -5
  1245. package/build-module/tree-grid/cell.js.map +1 -1
  1246. package/build-module/tree-grid/index.js +7 -6
  1247. package/build-module/tree-grid/index.js.map +1 -1
  1248. package/build-module/tree-grid/item.js +5 -4
  1249. package/build-module/tree-grid/item.js.map +1 -1
  1250. package/build-module/tree-grid/roving-tab-index-item.js +6 -5
  1251. package/build-module/tree-grid/roving-tab-index-item.js.map +1 -1
  1252. package/build-module/tree-grid/roving-tab-index.js +4 -3
  1253. package/build-module/tree-grid/roving-tab-index.js.map +1 -1
  1254. package/build-module/tree-grid/row.js +9 -8
  1255. package/build-module/tree-grid/row.js.map +1 -1
  1256. package/build-module/tree-select/index.js +11 -9
  1257. package/build-module/tree-select/index.js.map +1 -1
  1258. package/build-module/truncate/types.js +1 -1
  1259. package/build-module/truncate/utils.js +3 -1
  1260. package/build-module/truncate/utils.js.map +1 -1
  1261. package/build-module/ui/__storybook-utils/example-grid.js +40 -30
  1262. package/build-module/ui/__storybook-utils/example-grid.js.map +1 -1
  1263. package/build-module/ui/__storybook-utils/page.js +5 -4
  1264. package/build-module/ui/__storybook-utils/page.js.map +1 -1
  1265. package/build-module/ui/context/context-connect.js +3 -1
  1266. package/build-module/ui/context/context-connect.js.map +1 -1
  1267. package/build-module/ui/context/context-system-provider.js +9 -7
  1268. package/build-module/ui/context/context-system-provider.js.map +1 -1
  1269. package/build-module/ui/context/wordpress-component.js +1 -1
  1270. package/build-module/ui/control-group/types.js +1 -1
  1271. package/build-module/ui/control-label/types.js +1 -1
  1272. package/build-module/ui/form-group/form-group-content.js +13 -12
  1273. package/build-module/ui/form-group/form-group-content.js.map +1 -1
  1274. package/build-module/ui/form-group/form-group-help.js +4 -3
  1275. package/build-module/ui/form-group/form-group-help.js.map +1 -1
  1276. package/build-module/ui/form-group/form-group-label.js +7 -6
  1277. package/build-module/ui/form-group/form-group-label.js.map +1 -1
  1278. package/build-module/ui/form-group/types.js +1 -1
  1279. package/build-module/ui/tooltip/types.js +1 -1
  1280. package/build-module/ui/utils/font-size.js +6 -2
  1281. package/build-module/ui/utils/font-size.js.map +1 -1
  1282. package/build-module/ui/utils/get-high-dpi.js +5 -1
  1283. package/build-module/ui/utils/get-high-dpi.js.map +1 -1
  1284. package/build-module/ui/utils/types.js +1 -1
  1285. package/build-module/ui/utils/use-responsive-value.js +4 -2
  1286. package/build-module/ui/utils/use-responsive-value.js.map +1 -1
  1287. package/build-module/unit-control/index.js +20 -19
  1288. package/build-module/unit-control/index.js.map +1 -1
  1289. package/build-module/unit-control/index.native.js +16 -15
  1290. package/build-module/unit-control/index.native.js.map +1 -1
  1291. package/build-module/unit-control/styles/unit-control-styles.js +12 -9
  1292. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  1293. package/build-module/unit-control/types.js +1 -1
  1294. package/build-module/unit-control/unit-select-control.js +11 -9
  1295. package/build-module/unit-control/unit-select-control.js.map +1 -1
  1296. package/build-module/unit-control/utils.js +14 -8
  1297. package/build-module/unit-control/utils.js.map +1 -1
  1298. package/build-module/utils/browsers.js +10 -2
  1299. package/build-module/utils/browsers.js.map +1 -1
  1300. package/build-module/utils/colors.js +3 -1
  1301. package/build-module/utils/colors.js.map +1 -1
  1302. package/build-module/utils/hooks/emotion.d.js +1 -1
  1303. package/build-module/utils/hooks/use-combined-ref.js +5 -1
  1304. package/build-module/utils/hooks/use-combined-ref.js.map +1 -1
  1305. package/build-module/utils/hooks/use-controlled-state.js +2 -1
  1306. package/build-module/utils/hooks/use-controlled-state.js.map +1 -1
  1307. package/build-module/utils/hooks/use-controlled-value.js +6 -5
  1308. package/build-module/utils/hooks/use-controlled-value.js.map +1 -1
  1309. package/build-module/utils/hooks/use-cx.js +5 -1
  1310. package/build-module/utils/hooks/use-cx.js.map +1 -1
  1311. package/build-module/utils/math.js +17 -5
  1312. package/build-module/utils/math.js.map +1 -1
  1313. package/build-module/utils/reduce-motion.js +2 -1
  1314. package/build-module/utils/reduce-motion.js.map +1 -1
  1315. package/build-module/utils/rtl.js +5 -2
  1316. package/build-module/utils/rtl.js.map +1 -1
  1317. package/build-module/utils/types.js +1 -1
  1318. package/build-module/utils/values.js +9 -5
  1319. package/build-module/utils/values.js.map +1 -1
  1320. package/build-module/v-stack/types.js +1 -1
  1321. package/build-module/z-stack/styles.js +23 -14
  1322. package/build-module/z-stack/styles.js.map +1 -1
  1323. package/package.json +16 -16
  1324. package/src/color-edit/index.js +70 -41
  1325. package/src/mobile/global-styles-context/test/fixtures/theme.native.js +4 -4
  1326. package/src/mobile/global-styles-context/utils.native.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/range-control/utils.js"],"names":["floatClamp","value","min","max","parseFloat","useControlledRangeValue","valueProp","initial","state","setInternalState","fallback","setState","nextValue","useDebouncedHoverInteraction","onHide","noop","onMouseLeave","onMouseMove","onShow","timeout","show","setShow","timeoutRef","setDebouncedTimeout","callback","window","clearTimeout","current","setTimeout","handleOnMouseMove","event","handleOnMouseLeave"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { clamp, noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useRef, useEffect, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useControlledState } from '../utils/hooks';\n\n/**\n * A float supported clamp function for a specific value.\n *\n * @param {number|null} value The value to clamp.\n * @param {number} min The minimum value.\n * @param {number} max The maximum value.\n *\n * @return {number} A (float) number\n */\nexport function floatClamp( value, min, max ) {\n\tif ( typeof value !== 'number' ) {\n\t\treturn null;\n\t}\n\n\treturn parseFloat( clamp( value, min, max ) );\n}\n\n/**\n * Hook to store a clamped value, derived from props.\n *\n * @param {Object} settings Hook settings.\n * @param {number} settings.min The minimum value.\n * @param {number} settings.max The maximum value.\n * @param {number} settings.value The current value.\n * @param {any} settings.initial The initial value.\n *\n * @return {[*, Function]} The controlled value and the value setter.\n */\nexport function useControlledRangeValue( {\n\tmin,\n\tmax,\n\tvalue: valueProp,\n\tinitial,\n} ) {\n\tconst [ state, setInternalState ] = useControlledState(\n\t\tfloatClamp( valueProp, min, max ),\n\t\t{ initial, fallback: null }\n\t);\n\n\tconst setState = useCallback(\n\t\t( nextValue ) => {\n\t\t\tif ( nextValue === null ) {\n\t\t\t\tsetInternalState( null );\n\t\t\t} else {\n\t\t\t\tsetInternalState( floatClamp( nextValue, min, max ) );\n\t\t\t}\n\t\t},\n\t\t[ min, max ]\n\t);\n\n\treturn [ state, setState ];\n}\n\n/**\n * Hook to encapsulate the debouncing \"hover\" to better handle the showing\n * and hiding of the Tooltip.\n *\n * @param {Object} settings Hook settings.\n * @param {Function} [settings.onShow=noop] A callback function invoked when the element is shown.\n * @param {Function} [settings.onHide=noop] A callback function invoked when the element is hidden.\n * @param {Function} [settings.onMouseMove=noop] A callback function invoked when the mouse is moved.\n * @param {Function} [settings.onMouseLeave=noop] A callback function invoked when the mouse is moved out of the element.\n * @param {number} [settings.timeout=300] Timeout before the element is shown or hidden.\n *\n * @return {Object} Bound properties for use on a React.Node.\n */\nexport function useDebouncedHoverInteraction( {\n\tonHide = noop,\n\tonMouseLeave = noop,\n\tonMouseMove = noop,\n\tonShow = noop,\n\ttimeout = 300,\n} ) {\n\tconst [ show, setShow ] = useState( false );\n\tconst timeoutRef = useRef();\n\n\tconst setDebouncedTimeout = useCallback(\n\t\t( callback ) => {\n\t\t\twindow.clearTimeout( timeoutRef.current );\n\n\t\t\ttimeoutRef.current = setTimeout( callback, timeout );\n\t\t},\n\t\t[ timeout ]\n\t);\n\n\tconst handleOnMouseMove = useCallback( ( event ) => {\n\t\tonMouseMove( event );\n\n\t\tsetDebouncedTimeout( () => {\n\t\t\tif ( ! show ) {\n\t\t\t\tsetShow( true );\n\t\t\t\tonShow();\n\t\t\t}\n\t\t} );\n\t}, [] );\n\n\tconst handleOnMouseLeave = useCallback( ( event ) => {\n\t\tonMouseLeave( event );\n\n\t\tsetDebouncedTimeout( () => {\n\t\t\tsetShow( false );\n\t\t\tonHide();\n\t\t} );\n\t}, [] );\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\twindow.clearTimeout( timeoutRef.current );\n\t\t};\n\t} );\n\n\treturn {\n\t\tonMouseMove: handleOnMouseMove,\n\t\tonMouseLeave: handleOnMouseLeave,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/range-control/utils.js"],"names":["floatClamp","value","min","max","parseFloat","useControlledRangeValue","valueProp","initial","state","setInternalState","fallback","setState","nextValue","useDebouncedHoverInteraction","onHide","noop","onMouseLeave","onMouseMove","onShow","timeout","show","setShow","timeoutRef","setDebouncedTimeout","callback","window","clearTimeout","current","setTimeout","handleOnMouseMove","event","handleOnMouseLeave"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { clamp, noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useRef, useEffect, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useControlledState } from '../utils/hooks';\n\n/**\n * A float supported clamp function for a specific value.\n *\n * @param {number|null} value The value to clamp.\n * @param {number} min The minimum value.\n * @param {number} max The maximum value.\n *\n * @return {number} A (float) number\n */\nexport function floatClamp( value, min, max ) {\n\tif ( typeof value !== 'number' ) {\n\t\treturn null;\n\t}\n\n\treturn parseFloat( clamp( value, min, max ) );\n}\n\n/**\n * Hook to store a clamped value, derived from props.\n *\n * @param {Object} settings Hook settings.\n * @param {number} settings.min The minimum value.\n * @param {number} settings.max The maximum value.\n * @param {number} settings.value The current value.\n * @param {any} settings.initial The initial value.\n *\n * @return {[*, Function]} The controlled value and the value setter.\n */\nexport function useControlledRangeValue( {\n\tmin,\n\tmax,\n\tvalue: valueProp,\n\tinitial,\n} ) {\n\tconst [ state, setInternalState ] = useControlledState(\n\t\tfloatClamp( valueProp, min, max ),\n\t\t{ initial, fallback: null }\n\t);\n\n\tconst setState = useCallback(\n\t\t( nextValue ) => {\n\t\t\tif ( nextValue === null ) {\n\t\t\t\tsetInternalState( null );\n\t\t\t} else {\n\t\t\t\tsetInternalState( floatClamp( nextValue, min, max ) );\n\t\t\t}\n\t\t},\n\t\t[ min, max ]\n\t);\n\n\treturn [ state, setState ];\n}\n\n/**\n * Hook to encapsulate the debouncing \"hover\" to better handle the showing\n * and hiding of the Tooltip.\n *\n * @param {Object} settings Hook settings.\n * @param {Function} [settings.onShow=noop] A callback function invoked when the element is shown.\n * @param {Function} [settings.onHide=noop] A callback function invoked when the element is hidden.\n * @param {Function} [settings.onMouseMove=noop] A callback function invoked when the mouse is moved.\n * @param {Function} [settings.onMouseLeave=noop] A callback function invoked when the mouse is moved out of the element.\n * @param {number} [settings.timeout=300] Timeout before the element is shown or hidden.\n *\n * @return {Object} Bound properties for use on a React.Node.\n */\nexport function useDebouncedHoverInteraction( {\n\tonHide = noop,\n\tonMouseLeave = noop,\n\tonMouseMove = noop,\n\tonShow = noop,\n\ttimeout = 300,\n} ) {\n\tconst [ show, setShow ] = useState( false );\n\tconst timeoutRef = useRef();\n\n\tconst setDebouncedTimeout = useCallback(\n\t\t( callback ) => {\n\t\t\twindow.clearTimeout( timeoutRef.current );\n\n\t\t\ttimeoutRef.current = setTimeout( callback, timeout );\n\t\t},\n\t\t[ timeout ]\n\t);\n\n\tconst handleOnMouseMove = useCallback( ( event ) => {\n\t\tonMouseMove( event );\n\n\t\tsetDebouncedTimeout( () => {\n\t\t\tif ( ! show ) {\n\t\t\t\tsetShow( true );\n\t\t\t\tonShow();\n\t\t\t}\n\t\t} );\n\t}, [] );\n\n\tconst handleOnMouseLeave = useCallback( ( event ) => {\n\t\tonMouseLeave( event );\n\n\t\tsetDebouncedTimeout( () => {\n\t\t\tsetShow( false );\n\t\t\tonHide();\n\t\t} );\n\t}, [] );\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\twindow.clearTimeout( timeoutRef.current );\n\t\t};\n\t} );\n\n\treturn {\n\t\tonMouseMove: handleOnMouseMove,\n\t\tonMouseLeave: handleOnMouseLeave,\n\t};\n}\n"]}
@@ -61,14 +61,15 @@ const HANDLE_STYLES = {
61
61
  bottomLeft: HANDLE_STYLES_OVERRIDES
62
62
  };
63
63
 
64
- function ResizableBox({
65
- className,
66
- children,
67
- showHandle = true,
68
- __experimentalShowTooltip: showTooltip = false,
69
- __experimentalTooltipProps: tooltipProps = {},
70
- ...props
71
- }, ref) {
64
+ function ResizableBox(_ref, ref) {
65
+ let {
66
+ className,
67
+ children,
68
+ showHandle = true,
69
+ __experimentalShowTooltip: showTooltip = false,
70
+ __experimentalTooltipProps: tooltipProps = {},
71
+ ...props
72
+ } = _ref;
72
73
  return (0, _element.createElement)(_reResizable.Resizable, (0, _extends2.default)({
73
74
  className: (0, _classnames.default)('components-resizable-box__container', showHandle && 'has-show-handle', className),
74
75
  handleClasses: HANDLE_CLASSES,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/resizable-box/index.tsx"],"names":["HANDLE_CLASS_NAME","SIDE_HANDLE_CLASS_NAME","CORNER_HANDLE_CLASS_NAME","HANDLE_CLASSES","top","right","bottom","left","topLeft","topRight","bottomRight","bottomLeft","HANDLE_STYLES_OVERRIDES","width","undefined","height","HANDLE_STYLES","ResizableBox","className","children","showHandle","__experimentalShowTooltip","showTooltip","__experimentalTooltipProps","tooltipProps","props","ref"],"mappings":";;;;;;;;;AAGA;;;;AAKA;;AACA;;AAQA;;AAjBA;AACA;AACA;;AAGA;AACA;AACA;;AAOA;AACA;AACA;AAGA,MAAMA,iBAAiB,GAAG,kCAA1B;AACA,MAAMC,sBAAsB,GAAG,uCAA/B;AACA,MAAMC,wBAAwB,GAAG,yCAAjC;AAEA,MAAMC,cAAc,GAAG;AACtBC,EAAAA,GAAG,EAAE,yBACJJ,iBADI,EAEJC,sBAFI,EAGJ,sCAHI,CADiB;AAMtBI,EAAAA,KAAK,EAAE,yBACNL,iBADM,EAENC,sBAFM,EAGN,wCAHM,CANe;AAWtBK,EAAAA,MAAM,EAAE,yBACPN,iBADO,EAEPC,sBAFO,EAGP,yCAHO,CAXc;AAgBtBM,EAAAA,IAAI,EAAE,yBACLP,iBADK,EAELC,sBAFK,EAGL,uCAHK,CAhBgB;AAqBtBO,EAAAA,OAAO,EAAE,yBACRR,iBADQ,EAERE,wBAFQ,EAGR,sCAHQ,EAIR,uCAJQ,CArBa;AA2BtBO,EAAAA,QAAQ,EAAE,yBACTT,iBADS,EAETE,wBAFS,EAGT,sCAHS,EAIT,wCAJS,CA3BY;AAiCtBQ,EAAAA,WAAW,EAAE,yBACZV,iBADY,EAEZE,wBAFY,EAGZ,yCAHY,EAIZ,wCAJY,CAjCS;AAuCtBS,EAAAA,UAAU,EAAE,yBACXX,iBADW,EAEXE,wBAFW,EAGX,yCAHW,EAIX,uCAJW;AAvCU,CAAvB,C,CA+CA;;AACA,MAAMU,uBAAuB,GAAG;AAC/BC,EAAAA,KAAK,EAAEC,SADwB;AAE/BC,EAAAA,MAAM,EAAED,SAFuB;AAG/BV,EAAAA,GAAG,EAAEU,SAH0B;AAI/BT,EAAAA,KAAK,EAAES,SAJwB;AAK/BR,EAAAA,MAAM,EAAEQ,SALuB;AAM/BP,EAAAA,IAAI,EAAEO;AANyB,CAAhC;AAQA,MAAME,aAAa,GAAG;AACrBZ,EAAAA,GAAG,EAAEQ,uBADgB;AAErBP,EAAAA,KAAK,EAAEO,uBAFc;AAGrBN,EAAAA,MAAM,EAAEM,uBAHa;AAIrBL,EAAAA,IAAI,EAAEK,uBAJe;AAKrBJ,EAAAA,OAAO,EAAEI,uBALY;AAMrBH,EAAAA,QAAQ,EAAEG,uBANW;AAOrBF,EAAAA,WAAW,EAAEE,uBAPQ;AAQrBD,EAAAA,UAAU,EAAEC;AARS,CAAtB;;AAmBA,SAASK,YAAT,CACC;AACCC,EAAAA,SADD;AAECC,EAAAA,QAFD;AAGCC,EAAAA,UAAU,GAAG,IAHd;AAICC,EAAAA,yBAAyB,EAAEC,WAAW,GAAG,KAJ1C;AAKCC,EAAAA,0BAA0B,EAAEC,YAAY,GAAG,EAL5C;AAMC,KAAGC;AANJ,CADD,EASCC,GATD,EAUe;AACd,SACC,4BAAC,sBAAD;AACC,IAAA,SAAS,EAAG,yBACX,qCADW,EAEXN,UAAU,IAAI,iBAFH,EAGXF,SAHW,CADb;AAMC,IAAA,aAAa,EAAGf,cANjB;AAOC,IAAA,YAAY,EAAGa,aAPhB;AAQC,IAAA,GAAG,EAAGU;AARP,KASMD,KATN,GAWGN,QAXH,EAYGG,WAAW,IAAI,4BAAC,sBAAD,EAAoBE,YAApB,CAZlB,CADD;AAgBA;;eAEc,yBAAYP,YAAZ,C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { Resizable } from 're-resizable';\nimport type { ResizableProps } from 're-resizable';\n// eslint-disable-next-line no-restricted-imports\nimport type { ReactNode, Ref } from 'react';\n\n/**\n * Internal dependencies\n */\nimport ResizeTooltip from './resize-tooltip';\n\nconst HANDLE_CLASS_NAME = 'components-resizable-box__handle';\nconst SIDE_HANDLE_CLASS_NAME = 'components-resizable-box__side-handle';\nconst CORNER_HANDLE_CLASS_NAME = 'components-resizable-box__corner-handle';\n\nconst HANDLE_CLASSES = {\n\ttop: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-top'\n\t),\n\tright: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-right'\n\t),\n\tbottom: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-bottom'\n\t),\n\tleft: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-left'\n\t),\n\ttopLeft: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-top',\n\t\t'components-resizable-box__handle-left'\n\t),\n\ttopRight: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-top',\n\t\t'components-resizable-box__handle-right'\n\t),\n\tbottomRight: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-bottom',\n\t\t'components-resizable-box__handle-right'\n\t),\n\tbottomLeft: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-bottom',\n\t\t'components-resizable-box__handle-left'\n\t),\n};\n\n// Removes the inline styles in the drag handles.\nconst HANDLE_STYLES_OVERRIDES = {\n\twidth: undefined,\n\theight: undefined,\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\nconst HANDLE_STYLES = {\n\ttop: HANDLE_STYLES_OVERRIDES,\n\tright: HANDLE_STYLES_OVERRIDES,\n\tbottom: HANDLE_STYLES_OVERRIDES,\n\tleft: HANDLE_STYLES_OVERRIDES,\n\ttopLeft: HANDLE_STYLES_OVERRIDES,\n\ttopRight: HANDLE_STYLES_OVERRIDES,\n\tbottomRight: HANDLE_STYLES_OVERRIDES,\n\tbottomLeft: HANDLE_STYLES_OVERRIDES,\n};\n\ntype ResizableBoxProps = ResizableProps & {\n\tclassName: string;\n\tchildren: ReactNode;\n\tshowHandle: boolean;\n\t__experimentalShowTooltip: boolean;\n\t__experimentalTooltipProps: Parameters< typeof ResizeTooltip >[ 0 ];\n};\n\nfunction ResizableBox(\n\t{\n\t\tclassName,\n\t\tchildren,\n\t\tshowHandle = true,\n\t\t__experimentalShowTooltip: showTooltip = false,\n\t\t__experimentalTooltipProps: tooltipProps = {},\n\t\t...props\n\t}: ResizableBoxProps,\n\tref: Ref< Resizable >\n): JSX.Element {\n\treturn (\n\t\t<Resizable\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-resizable-box__container',\n\t\t\t\tshowHandle && 'has-show-handle',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\thandleClasses={ HANDLE_CLASSES }\n\t\t\thandleStyles={ HANDLE_STYLES }\n\t\t\tref={ ref }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ children }\n\t\t\t{ showTooltip && <ResizeTooltip { ...tooltipProps } /> }\n\t\t</Resizable>\n\t);\n}\n\nexport default forwardRef( ResizableBox );\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/resizable-box/index.tsx"],"names":["HANDLE_CLASS_NAME","SIDE_HANDLE_CLASS_NAME","CORNER_HANDLE_CLASS_NAME","HANDLE_CLASSES","top","right","bottom","left","topLeft","topRight","bottomRight","bottomLeft","HANDLE_STYLES_OVERRIDES","width","undefined","height","HANDLE_STYLES","ResizableBox","ref","className","children","showHandle","__experimentalShowTooltip","showTooltip","__experimentalTooltipProps","tooltipProps","props"],"mappings":";;;;;;;;;AAGA;;;;AAKA;;AACA;;AAQA;;AAjBA;AACA;AACA;;AAGA;AACA;AACA;;AAOA;AACA;AACA;AAGA,MAAMA,iBAAiB,GAAG,kCAA1B;AACA,MAAMC,sBAAsB,GAAG,uCAA/B;AACA,MAAMC,wBAAwB,GAAG,yCAAjC;AAEA,MAAMC,cAAc,GAAG;AACtBC,EAAAA,GAAG,EAAE,yBACJJ,iBADI,EAEJC,sBAFI,EAGJ,sCAHI,CADiB;AAMtBI,EAAAA,KAAK,EAAE,yBACNL,iBADM,EAENC,sBAFM,EAGN,wCAHM,CANe;AAWtBK,EAAAA,MAAM,EAAE,yBACPN,iBADO,EAEPC,sBAFO,EAGP,yCAHO,CAXc;AAgBtBM,EAAAA,IAAI,EAAE,yBACLP,iBADK,EAELC,sBAFK,EAGL,uCAHK,CAhBgB;AAqBtBO,EAAAA,OAAO,EAAE,yBACRR,iBADQ,EAERE,wBAFQ,EAGR,sCAHQ,EAIR,uCAJQ,CArBa;AA2BtBO,EAAAA,QAAQ,EAAE,yBACTT,iBADS,EAETE,wBAFS,EAGT,sCAHS,EAIT,wCAJS,CA3BY;AAiCtBQ,EAAAA,WAAW,EAAE,yBACZV,iBADY,EAEZE,wBAFY,EAGZ,yCAHY,EAIZ,wCAJY,CAjCS;AAuCtBS,EAAAA,UAAU,EAAE,yBACXX,iBADW,EAEXE,wBAFW,EAGX,yCAHW,EAIX,uCAJW;AAvCU,CAAvB,C,CA+CA;;AACA,MAAMU,uBAAuB,GAAG;AAC/BC,EAAAA,KAAK,EAAEC,SADwB;AAE/BC,EAAAA,MAAM,EAAED,SAFuB;AAG/BV,EAAAA,GAAG,EAAEU,SAH0B;AAI/BT,EAAAA,KAAK,EAAES,SAJwB;AAK/BR,EAAAA,MAAM,EAAEQ,SALuB;AAM/BP,EAAAA,IAAI,EAAEO;AANyB,CAAhC;AAQA,MAAME,aAAa,GAAG;AACrBZ,EAAAA,GAAG,EAAEQ,uBADgB;AAErBP,EAAAA,KAAK,EAAEO,uBAFc;AAGrBN,EAAAA,MAAM,EAAEM,uBAHa;AAIrBL,EAAAA,IAAI,EAAEK,uBAJe;AAKrBJ,EAAAA,OAAO,EAAEI,uBALY;AAMrBH,EAAAA,QAAQ,EAAEG,uBANW;AAOrBF,EAAAA,WAAW,EAAEE,uBAPQ;AAQrBD,EAAAA,UAAU,EAAEC;AARS,CAAtB;;AAmBA,SAASK,YAAT,OASCC,GATD,EAUe;AAAA,MATd;AACCC,IAAAA,SADD;AAECC,IAAAA,QAFD;AAGCC,IAAAA,UAAU,GAAG,IAHd;AAICC,IAAAA,yBAAyB,EAAEC,WAAW,GAAG,KAJ1C;AAKCC,IAAAA,0BAA0B,EAAEC,YAAY,GAAG,EAL5C;AAMC,OAAGC;AANJ,GASc;AACd,SACC,4BAAC,sBAAD;AACC,IAAA,SAAS,EAAG,yBACX,qCADW,EAEXL,UAAU,IAAI,iBAFH,EAGXF,SAHW,CADb;AAMC,IAAA,aAAa,EAAGhB,cANjB;AAOC,IAAA,YAAY,EAAGa,aAPhB;AAQC,IAAA,GAAG,EAAGE;AARP,KASMQ,KATN,GAWGN,QAXH,EAYGG,WAAW,IAAI,4BAAC,sBAAD,EAAoBE,YAApB,CAZlB,CADD;AAgBA;;eAEc,yBAAYR,YAAZ,C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { Resizable } from 're-resizable';\nimport type { ResizableProps } from 're-resizable';\n// eslint-disable-next-line no-restricted-imports\nimport type { ReactNode, Ref } from 'react';\n\n/**\n * Internal dependencies\n */\nimport ResizeTooltip from './resize-tooltip';\n\nconst HANDLE_CLASS_NAME = 'components-resizable-box__handle';\nconst SIDE_HANDLE_CLASS_NAME = 'components-resizable-box__side-handle';\nconst CORNER_HANDLE_CLASS_NAME = 'components-resizable-box__corner-handle';\n\nconst HANDLE_CLASSES = {\n\ttop: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-top'\n\t),\n\tright: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-right'\n\t),\n\tbottom: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-bottom'\n\t),\n\tleft: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tSIDE_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-left'\n\t),\n\ttopLeft: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-top',\n\t\t'components-resizable-box__handle-left'\n\t),\n\ttopRight: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-top',\n\t\t'components-resizable-box__handle-right'\n\t),\n\tbottomRight: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-bottom',\n\t\t'components-resizable-box__handle-right'\n\t),\n\tbottomLeft: classnames(\n\t\tHANDLE_CLASS_NAME,\n\t\tCORNER_HANDLE_CLASS_NAME,\n\t\t'components-resizable-box__handle-bottom',\n\t\t'components-resizable-box__handle-left'\n\t),\n};\n\n// Removes the inline styles in the drag handles.\nconst HANDLE_STYLES_OVERRIDES = {\n\twidth: undefined,\n\theight: undefined,\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\nconst HANDLE_STYLES = {\n\ttop: HANDLE_STYLES_OVERRIDES,\n\tright: HANDLE_STYLES_OVERRIDES,\n\tbottom: HANDLE_STYLES_OVERRIDES,\n\tleft: HANDLE_STYLES_OVERRIDES,\n\ttopLeft: HANDLE_STYLES_OVERRIDES,\n\ttopRight: HANDLE_STYLES_OVERRIDES,\n\tbottomRight: HANDLE_STYLES_OVERRIDES,\n\tbottomLeft: HANDLE_STYLES_OVERRIDES,\n};\n\ntype ResizableBoxProps = ResizableProps & {\n\tclassName: string;\n\tchildren: ReactNode;\n\tshowHandle: boolean;\n\t__experimentalShowTooltip: boolean;\n\t__experimentalTooltipProps: Parameters< typeof ResizeTooltip >[ 0 ];\n};\n\nfunction ResizableBox(\n\t{\n\t\tclassName,\n\t\tchildren,\n\t\tshowHandle = true,\n\t\t__experimentalShowTooltip: showTooltip = false,\n\t\t__experimentalTooltipProps: tooltipProps = {},\n\t\t...props\n\t}: ResizableBoxProps,\n\tref: Ref< Resizable >\n): JSX.Element {\n\treturn (\n\t\t<Resizable\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-resizable-box__container',\n\t\t\t\tshowHandle && 'has-show-handle',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\thandleClasses={ HANDLE_CLASSES }\n\t\t\thandleStyles={ HANDLE_STYLES }\n\t\t\tref={ ref }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ children }\n\t\t\t{ showTooltip && <ResizeTooltip { ...tooltipProps } /> }\n\t\t</Resizable>\n\t);\n}\n\nexport default forwardRef( ResizableBox );\n"]}
@@ -32,18 +32,19 @@ var _resizeTooltip = require("./styles/resize-tooltip.styles");
32
32
  /**
33
33
  * Internal dependencies
34
34
  */
35
- function ResizeTooltip({
36
- axis,
37
- className,
38
- fadeTimeout = 180,
39
- isVisible = true,
40
- labelRef,
41
- onResize = _lodash.noop,
42
- position = _utils.POSITIONS.bottom,
43
- showPx = true,
44
- zIndex = 1000,
45
- ...props
46
- }, ref) {
35
+ function ResizeTooltip(_ref, ref) {
36
+ let {
37
+ axis,
38
+ className,
39
+ fadeTimeout = 180,
40
+ isVisible = true,
41
+ labelRef,
42
+ onResize = _lodash.noop,
43
+ position = _utils.POSITIONS.bottom,
44
+ showPx = true,
45
+ zIndex = 1000,
46
+ ...props
47
+ } = _ref;
47
48
  const {
48
49
  label,
49
50
  resizeListener
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/resizable-box/resize-tooltip/index.tsx"],"names":["ResizeTooltip","axis","className","fadeTimeout","isVisible","labelRef","onResize","noop","position","POSITIONS","bottom","showPx","zIndex","props","ref","label","resizeListener","classes","ForwardedComponent"],"mappings":";;;;;;;;;AASA;;;;AANA;;AACA;;AAYA;;AACA;;AACA;;AAlBA;AACA;AACA;;AAIA;AACA;AACA;;AAKA;AACA;AACA;AAkBA,SAASA,aAAT,CACC;AACCC,EAAAA,IADD;AAECC,EAAAA,SAFD;AAGCC,EAAAA,WAAW,GAAG,GAHf;AAICC,EAAAA,SAAS,GAAG,IAJb;AAKCC,EAAAA,QALD;AAMCC,EAAAA,QAAQ,GAAGC,YANZ;AAOCC,EAAAA,QAAQ,GAAGC,iBAAUC,MAPtB;AAQCC,EAAAA,MAAM,GAAG,IARV;AASCC,EAAAA,MAAM,GAAG,IATV;AAUC,KAAGC;AAVJ,CADD,EAaCC,GAbD,EAcsB;AACrB,QAAM;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,MAA4B,2BAAgB;AACjDf,IAAAA,IADiD;AAEjDE,IAAAA,WAFiD;AAGjDG,IAAAA,QAHiD;AAIjDK,IAAAA,MAJiD;AAKjDH,IAAAA;AALiD,GAAhB,CAAlC;AAQA,MAAK,CAAEJ,SAAP,EAAmB,OAAO,IAAP;AAEnB,QAAMa,OAAO,GAAG,yBAAY,2BAAZ,EAAyCf,SAAzC,CAAhB;AAEA,SACC,4BAAC,mBAAD;AAAM,mBAAY,MAAlB;AAAyB,IAAA,SAAS,EAAGe,OAArC;AAA+C,IAAA,GAAG,EAAGH;AAArD,KAAgED,KAAhE,GACGG,cADH,EAEC,4BAAC,cAAD;AACC,mBAAcH,KAAK,CAAE,aAAF,CADpB;AAEC,IAAA,KAAK,EAAGE,KAFT;AAGC,IAAA,QAAQ,EAAGP,QAHZ;AAIC,IAAA,GAAG,EAAGH,QAJP;AAKC,IAAA,MAAM,EAAGO;AALV,IAFD,CADD;AAYA;;AAED,MAAMM,kBAAkB,GAAG,yBAAYlB,aAAZ,CAA3B;eAEekB,kB","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n// eslint-disable-next-line no-restricted-imports\nimport type { Ref } from 'react';\n\n/**\n * Internal dependencies\n */\nimport Label from './label';\nimport { useResizeLabel, Axis, Position, POSITIONS } from './utils';\nimport { Root } from './styles/resize-tooltip.styles';\n\ntype ResizeTooltipProps = React.ComponentProps< typeof Root > & {\n\t'aria-hidden'?: boolean;\n\taxis?: Axis;\n\tclassName?: string;\n\tfadeTimeout?: number;\n\tisVisible?: boolean;\n\tlabelRef?: Ref< HTMLDivElement >;\n\tonResize?: Parameters< typeof useResizeLabel >[ 0 ][ 'onResize' ];\n\tposition?: Position;\n\tshowPx?: boolean;\n\tzIndex?: number;\n};\n\nfunction ResizeTooltip(\n\t{\n\t\taxis,\n\t\tclassName,\n\t\tfadeTimeout = 180,\n\t\tisVisible = true,\n\t\tlabelRef,\n\t\tonResize = noop,\n\t\tposition = POSITIONS.bottom,\n\t\tshowPx = true,\n\t\tzIndex = 1000,\n\t\t...props\n\t}: ResizeTooltipProps,\n\tref: Ref< HTMLDivElement >\n): JSX.Element | null {\n\tconst { label, resizeListener } = useResizeLabel( {\n\t\taxis,\n\t\tfadeTimeout,\n\t\tonResize,\n\t\tshowPx,\n\t\tposition,\n\t} );\n\n\tif ( ! isVisible ) return null;\n\n\tconst classes = classnames( 'components-resize-tooltip', className );\n\n\treturn (\n\t\t<Root aria-hidden=\"true\" className={ classes } ref={ ref } { ...props }>\n\t\t\t{ resizeListener }\n\t\t\t<Label\n\t\t\t\taria-hidden={ props[ 'aria-hidden' ] }\n\t\t\t\tlabel={ label }\n\t\t\t\tposition={ position }\n\t\t\t\tref={ labelRef }\n\t\t\t\tzIndex={ zIndex }\n\t\t\t/>\n\t\t</Root>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( ResizeTooltip );\n\nexport default ForwardedComponent;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/resizable-box/resize-tooltip/index.tsx"],"names":["ResizeTooltip","ref","axis","className","fadeTimeout","isVisible","labelRef","onResize","noop","position","POSITIONS","bottom","showPx","zIndex","props","label","resizeListener","classes","ForwardedComponent"],"mappings":";;;;;;;;;AASA;;;;AANA;;AACA;;AAYA;;AACA;;AACA;;AAlBA;AACA;AACA;;AAIA;AACA;AACA;;AAKA;AACA;AACA;AAkBA,SAASA,aAAT,OAaCC,GAbD,EAcsB;AAAA,MAbrB;AACCC,IAAAA,IADD;AAECC,IAAAA,SAFD;AAGCC,IAAAA,WAAW,GAAG,GAHf;AAICC,IAAAA,SAAS,GAAG,IAJb;AAKCC,IAAAA,QALD;AAMCC,IAAAA,QAAQ,GAAGC,YANZ;AAOCC,IAAAA,QAAQ,GAAGC,iBAAUC,MAPtB;AAQCC,IAAAA,MAAM,GAAG,IARV;AASCC,IAAAA,MAAM,GAAG,IATV;AAUC,OAAGC;AAVJ,GAaqB;AACrB,QAAM;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,MAA4B,2BAAgB;AACjDd,IAAAA,IADiD;AAEjDE,IAAAA,WAFiD;AAGjDG,IAAAA,QAHiD;AAIjDK,IAAAA,MAJiD;AAKjDH,IAAAA;AALiD,GAAhB,CAAlC;AAQA,MAAK,CAAEJ,SAAP,EAAmB,OAAO,IAAP;AAEnB,QAAMY,OAAO,GAAG,yBAAY,2BAAZ,EAAyCd,SAAzC,CAAhB;AAEA,SACC,4BAAC,mBAAD;AAAM,mBAAY,MAAlB;AAAyB,IAAA,SAAS,EAAGc,OAArC;AAA+C,IAAA,GAAG,EAAGhB;AAArD,KAAgEa,KAAhE,GACGE,cADH,EAEC,4BAAC,cAAD;AACC,mBAAcF,KAAK,CAAE,aAAF,CADpB;AAEC,IAAA,KAAK,EAAGC,KAFT;AAGC,IAAA,QAAQ,EAAGN,QAHZ;AAIC,IAAA,GAAG,EAAGH,QAJP;AAKC,IAAA,MAAM,EAAGO;AALV,IAFD,CADD;AAYA;;AAED,MAAMK,kBAAkB,GAAG,yBAAYlB,aAAZ,CAA3B;eAEekB,kB","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n// eslint-disable-next-line no-restricted-imports\nimport type { Ref } from 'react';\n\n/**\n * Internal dependencies\n */\nimport Label from './label';\nimport { useResizeLabel, Axis, Position, POSITIONS } from './utils';\nimport { Root } from './styles/resize-tooltip.styles';\n\ntype ResizeTooltipProps = React.ComponentProps< typeof Root > & {\n\t'aria-hidden'?: boolean;\n\taxis?: Axis;\n\tclassName?: string;\n\tfadeTimeout?: number;\n\tisVisible?: boolean;\n\tlabelRef?: Ref< HTMLDivElement >;\n\tonResize?: Parameters< typeof useResizeLabel >[ 0 ][ 'onResize' ];\n\tposition?: Position;\n\tshowPx?: boolean;\n\tzIndex?: number;\n};\n\nfunction ResizeTooltip(\n\t{\n\t\taxis,\n\t\tclassName,\n\t\tfadeTimeout = 180,\n\t\tisVisible = true,\n\t\tlabelRef,\n\t\tonResize = noop,\n\t\tposition = POSITIONS.bottom,\n\t\tshowPx = true,\n\t\tzIndex = 1000,\n\t\t...props\n\t}: ResizeTooltipProps,\n\tref: Ref< HTMLDivElement >\n): JSX.Element | null {\n\tconst { label, resizeListener } = useResizeLabel( {\n\t\taxis,\n\t\tfadeTimeout,\n\t\tonResize,\n\t\tshowPx,\n\t\tposition,\n\t} );\n\n\tif ( ! isVisible ) return null;\n\n\tconst classes = classnames( 'components-resize-tooltip', className );\n\n\treturn (\n\t\t<Root aria-hidden=\"true\" className={ classes } ref={ ref } { ...props }>\n\t\t\t{ resizeListener }\n\t\t\t<Label\n\t\t\t\taria-hidden={ props[ 'aria-hidden' ] }\n\t\t\t\tlabel={ label }\n\t\t\t\tposition={ position }\n\t\t\t\tref={ labelRef }\n\t\t\t\tzIndex={ zIndex }\n\t\t\t/>\n\t\t</Root>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( ResizeTooltip );\n\nexport default ForwardedComponent;\n"]}
@@ -32,12 +32,13 @@ var _resizeTooltip = require("./styles/resize-tooltip.styles");
32
32
  const CORNER_OFFSET = 4;
33
33
  const CURSOR_OFFSET_TOP = CORNER_OFFSET * 2.5;
34
34
 
35
- function Label({
36
- label,
37
- position = _utils.POSITIONS.corner,
38
- zIndex = 1000,
39
- ...props
40
- }, ref) {
35
+ function Label(_ref, ref) {
36
+ let {
37
+ label,
38
+ position = _utils.POSITIONS.corner,
39
+ zIndex = 1000,
40
+ ...props
41
+ } = _ref;
41
42
  const showLabel = !!label;
42
43
  const isBottom = position === _utils.POSITIONS.bottom;
43
44
  const isCorner = position === _utils.POSITIONS.corner;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/resizable-box/resize-tooltip/label.tsx"],"names":["CORNER_OFFSET","CURSOR_OFFSET_TOP","Label","label","position","POSITIONS","corner","zIndex","props","ref","showLabel","isBottom","bottom","isCorner","style","opacity","undefined","labelStyle","left","transform","top","right","ForwardedComponent"],"mappings":";;;;;;;;;AASA;;;;AACA;;AAKA;;AACA;;AAhBA;AACA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAQA,MAAMA,aAAa,GAAG,CAAtB;AACA,MAAMC,iBAAiB,GAAGD,aAAa,GAAG,GAA1C;;AAWA,SAASE,KAAT,CACC;AAAEC,EAAAA,KAAF;AAASC,EAAAA,QAAQ,GAAGC,iBAAUC,MAA9B;AAAsCC,EAAAA,MAAM,GAAG,IAA/C;AAAqD,KAAGC;AAAxD,CADD,EAECC,GAFD,EAGsB;AACrB,QAAMC,SAAS,GAAG,CAAC,CAAEP,KAArB;AAEA,QAAMQ,QAAQ,GAAGP,QAAQ,KAAKC,iBAAUO,MAAxC;AACA,QAAMC,QAAQ,GAAGT,QAAQ,KAAKC,iBAAUC,MAAxC;AAEA,MAAK,CAAEI,SAAP,EAAmB,OAAO,IAAP;AAEnB,MAAII,KAA0B,GAAG;AAChCC,IAAAA,OAAO,EAAEL,SAAS,GAAG,CAAH,GAAOM,SADO;AAEhCT,IAAAA;AAFgC,GAAjC;AAKA,MAAIU,UAAU,GAAG,EAAjB;;AAEA,MAAKN,QAAL,EAAgB;AACfG,IAAAA,KAAK,GAAG,EACP,GAAGA,KADI;AAEPV,MAAAA,QAAQ,EAAE,UAFH;AAGPQ,MAAAA,MAAM,EAAEX,iBAAiB,GAAG,CAAC,CAHtB;AAIPiB,MAAAA,IAAI,EAAE,KAJC;AAKPC,MAAAA,SAAS,EAAE;AALJ,KAAR;AAQAF,IAAAA,UAAU,GAAG;AACZE,MAAAA,SAAS,EAAG;AADA,KAAb;AAGA;;AAED,MAAKN,QAAL,EAAgB;AACfC,IAAAA,KAAK,GAAG,EACP,GAAGA,KADI;AAEPV,MAAAA,QAAQ,EAAE,UAFH;AAGPgB,MAAAA,GAAG,EAAEpB,aAHE;AAIPqB,MAAAA,KAAK,EAAE,qBAAUL,SAAV,GAAsBhB,aAJtB;AAKPkB,MAAAA,IAAI,EAAE,qBAAUlB,aAAV,GAA0BgB;AALzB,KAAR;AAOA;;AAED,SACC,4BAAC,6BAAD;AACC,mBAAY,MADb;AAEC,IAAA,SAAS,EAAC,+CAFX;AAGC,IAAA,GAAG,EAAGP,GAHP;AAIC,IAAA,KAAK,EAAGK;AAJT,KAKMN,KALN,GAOC,4BAAC,sBAAD;AACC,IAAA,SAAS,EAAC,uCADX;AAEC,IAAA,KAAK,EAAGS;AAFT,KAIC,4BAAC,wBAAD;AAAW,IAAA,EAAE,EAAC;AAAd,KAAuBd,KAAvB,CAJD,CAPD,CADD;AAgBA;;AAED,MAAMmB,kBAAkB,GAAG,yBAAYpB,KAAZ,CAA3B;eAEeoB,kB","sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport type { Ref } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { Position, POSITIONS } from './utils';\nimport {\n\tTooltipWrapper,\n\tTooltip,\n\tLabelText,\n} from './styles/resize-tooltip.styles';\n\nconst CORNER_OFFSET = 4;\nconst CURSOR_OFFSET_TOP = CORNER_OFFSET * 2.5;\n\ntype LabelProps = React.DetailedHTMLProps<\n\tReact.HTMLAttributes< HTMLDivElement >,\n\tHTMLDivElement\n> & {\n\tlabel?: string;\n\tposition: Position;\n\tzIndex: number;\n};\n\nfunction Label(\n\t{ label, position = POSITIONS.corner, zIndex = 1000, ...props }: LabelProps,\n\tref: Ref< HTMLDivElement >\n): JSX.Element | null {\n\tconst showLabel = !! label;\n\n\tconst isBottom = position === POSITIONS.bottom;\n\tconst isCorner = position === POSITIONS.corner;\n\n\tif ( ! showLabel ) return null;\n\n\tlet style: React.CSSProperties = {\n\t\topacity: showLabel ? 1 : undefined,\n\t\tzIndex,\n\t};\n\n\tlet labelStyle = {};\n\n\tif ( isBottom ) {\n\t\tstyle = {\n\t\t\t...style,\n\t\t\tposition: 'absolute',\n\t\t\tbottom: CURSOR_OFFSET_TOP * -1,\n\t\t\tleft: '50%',\n\t\t\ttransform: 'translate(-50%, 0)',\n\t\t};\n\n\t\tlabelStyle = {\n\t\t\ttransform: `translate(0, 100%)`,\n\t\t};\n\t}\n\n\tif ( isCorner ) {\n\t\tstyle = {\n\t\t\t...style,\n\t\t\tposition: 'absolute',\n\t\t\ttop: CORNER_OFFSET,\n\t\t\tright: isRTL() ? undefined : CORNER_OFFSET,\n\t\t\tleft: isRTL() ? CORNER_OFFSET : undefined,\n\t\t};\n\t}\n\n\treturn (\n\t\t<TooltipWrapper\n\t\t\taria-hidden=\"true\"\n\t\t\tclassName=\"components-resizable-tooltip__tooltip-wrapper\"\n\t\t\tref={ ref }\n\t\t\tstyle={ style }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t<Tooltip\n\t\t\t\tclassName=\"components-resizable-tooltip__tooltip\"\n\t\t\t\tstyle={ labelStyle }\n\t\t\t>\n\t\t\t\t<LabelText as=\"span\">{ label }</LabelText>\n\t\t\t</Tooltip>\n\t\t</TooltipWrapper>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( Label );\n\nexport default ForwardedComponent;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/resizable-box/resize-tooltip/label.tsx"],"names":["CORNER_OFFSET","CURSOR_OFFSET_TOP","Label","ref","label","position","POSITIONS","corner","zIndex","props","showLabel","isBottom","bottom","isCorner","style","opacity","undefined","labelStyle","left","transform","top","right","ForwardedComponent"],"mappings":";;;;;;;;;AASA;;;;AACA;;AAKA;;AACA;;AAhBA;AACA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAQA,MAAMA,aAAa,GAAG,CAAtB;AACA,MAAMC,iBAAiB,GAAGD,aAAa,GAAG,GAA1C;;AAWA,SAASE,KAAT,OAECC,GAFD,EAGsB;AAAA,MAFrB;AAAEC,IAAAA,KAAF;AAASC,IAAAA,QAAQ,GAAGC,iBAAUC,MAA9B;AAAsCC,IAAAA,MAAM,GAAG,IAA/C;AAAqD,OAAGC;AAAxD,GAEqB;AACrB,QAAMC,SAAS,GAAG,CAAC,CAAEN,KAArB;AAEA,QAAMO,QAAQ,GAAGN,QAAQ,KAAKC,iBAAUM,MAAxC;AACA,QAAMC,QAAQ,GAAGR,QAAQ,KAAKC,iBAAUC,MAAxC;AAEA,MAAK,CAAEG,SAAP,EAAmB,OAAO,IAAP;AAEnB,MAAII,KAA0B,GAAG;AAChCC,IAAAA,OAAO,EAAEL,SAAS,GAAG,CAAH,GAAOM,SADO;AAEhCR,IAAAA;AAFgC,GAAjC;AAKA,MAAIS,UAAU,GAAG,EAAjB;;AAEA,MAAKN,QAAL,EAAgB;AACfG,IAAAA,KAAK,GAAG,EACP,GAAGA,KADI;AAEPT,MAAAA,QAAQ,EAAE,UAFH;AAGPO,MAAAA,MAAM,EAAEX,iBAAiB,GAAG,CAAC,CAHtB;AAIPiB,MAAAA,IAAI,EAAE,KAJC;AAKPC,MAAAA,SAAS,EAAE;AALJ,KAAR;AAQAF,IAAAA,UAAU,GAAG;AACZE,MAAAA,SAAS,EAAG;AADA,KAAb;AAGA;;AAED,MAAKN,QAAL,EAAgB;AACfC,IAAAA,KAAK,GAAG,EACP,GAAGA,KADI;AAEPT,MAAAA,QAAQ,EAAE,UAFH;AAGPe,MAAAA,GAAG,EAAEpB,aAHE;AAIPqB,MAAAA,KAAK,EAAE,qBAAUL,SAAV,GAAsBhB,aAJtB;AAKPkB,MAAAA,IAAI,EAAE,qBAAUlB,aAAV,GAA0BgB;AALzB,KAAR;AAOA;;AAED,SACC,4BAAC,6BAAD;AACC,mBAAY,MADb;AAEC,IAAA,SAAS,EAAC,+CAFX;AAGC,IAAA,GAAG,EAAGb,GAHP;AAIC,IAAA,KAAK,EAAGW;AAJT,KAKML,KALN,GAOC,4BAAC,sBAAD;AACC,IAAA,SAAS,EAAC,uCADX;AAEC,IAAA,KAAK,EAAGQ;AAFT,KAIC,4BAAC,wBAAD;AAAW,IAAA,EAAE,EAAC;AAAd,KAAuBb,KAAvB,CAJD,CAPD,CADD;AAgBA;;AAED,MAAMkB,kBAAkB,GAAG,yBAAYpB,KAAZ,CAA3B;eAEeoB,kB","sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport type { Ref } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { Position, POSITIONS } from './utils';\nimport {\n\tTooltipWrapper,\n\tTooltip,\n\tLabelText,\n} from './styles/resize-tooltip.styles';\n\nconst CORNER_OFFSET = 4;\nconst CURSOR_OFFSET_TOP = CORNER_OFFSET * 2.5;\n\ntype LabelProps = React.DetailedHTMLProps<\n\tReact.HTMLAttributes< HTMLDivElement >,\n\tHTMLDivElement\n> & {\n\tlabel?: string;\n\tposition: Position;\n\tzIndex: number;\n};\n\nfunction Label(\n\t{ label, position = POSITIONS.corner, zIndex = 1000, ...props }: LabelProps,\n\tref: Ref< HTMLDivElement >\n): JSX.Element | null {\n\tconst showLabel = !! label;\n\n\tconst isBottom = position === POSITIONS.bottom;\n\tconst isCorner = position === POSITIONS.corner;\n\n\tif ( ! showLabel ) return null;\n\n\tlet style: React.CSSProperties = {\n\t\topacity: showLabel ? 1 : undefined,\n\t\tzIndex,\n\t};\n\n\tlet labelStyle = {};\n\n\tif ( isBottom ) {\n\t\tstyle = {\n\t\t\t...style,\n\t\t\tposition: 'absolute',\n\t\t\tbottom: CURSOR_OFFSET_TOP * -1,\n\t\t\tleft: '50%',\n\t\t\ttransform: 'translate(-50%, 0)',\n\t\t};\n\n\t\tlabelStyle = {\n\t\t\ttransform: `translate(0, 100%)`,\n\t\t};\n\t}\n\n\tif ( isCorner ) {\n\t\tstyle = {\n\t\t\t...style,\n\t\t\tposition: 'absolute',\n\t\t\ttop: CORNER_OFFSET,\n\t\t\tright: isRTL() ? undefined : CORNER_OFFSET,\n\t\t\tleft: isRTL() ? CORNER_OFFSET : undefined,\n\t\t};\n\t}\n\n\treturn (\n\t\t<TooltipWrapper\n\t\t\taria-hidden=\"true\"\n\t\t\tclassName=\"components-resizable-tooltip__tooltip-wrapper\"\n\t\t\tref={ ref }\n\t\t\tstyle={ style }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t<Tooltip\n\t\t\t\tclassName=\"components-resizable-tooltip__tooltip\"\n\t\t\t\tstyle={ labelStyle }\n\t\t\t>\n\t\t\t\t<LabelText as=\"span\">{ label }</LabelText>\n\t\t\t</Tooltip>\n\t\t</TooltipWrapper>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( Label );\n\nexport default ForwardedComponent;\n"]}
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.LabelText = exports.Tooltip = exports.TooltipWrapper = exports.Root = void 0;
8
+ exports.TooltipWrapper = exports.Tooltip = exports.Root = exports.LabelText = void 0;
9
9
 
10
10
  var _base = _interopRequireDefault(require("@emotion/styled/base"));
11
11
 
@@ -5,8 +5,8 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.useResizeLabel = useResizeLabel;
9
8
  exports.POSITIONS = void 0;
9
+ exports.useResizeLabel = useResizeLabel;
10
10
 
11
11
  var _lodash = require("lodash");
12
12
 
@@ -44,13 +44,15 @@ exports.POSITIONS = POSITIONS;
44
44
  *
45
45
  * @return Properties for hook.
46
46
  */
47
- function useResizeLabel({
48
- axis,
49
- fadeTimeout = 180,
50
- onResize = _lodash.noop,
51
- position = POSITIONS.bottom,
52
- showPx = false
53
- }) {
47
+ function useResizeLabel(_ref) {
48
+ let {
49
+ axis,
50
+ fadeTimeout = 180,
51
+ onResize = _lodash.noop,
52
+ position = POSITIONS.bottom,
53
+ showPx = false
54
+ } = _ref;
55
+
54
56
  /*
55
57
  * The width/height values derive from this special useResizeAware hook.
56
58
  * This custom hook uses injects an iFrame into the element, allowing it
@@ -179,15 +181,16 @@ function useResizeLabel({
179
181
  *
180
182
  * @return The rendered label.
181
183
  */
182
- function getSizeLabel({
183
- axis,
184
- height,
185
- moveX = false,
186
- moveY = false,
187
- position = POSITIONS.bottom,
188
- showPx = false,
189
- width
190
- }) {
184
+ function getSizeLabel(_ref2) {
185
+ let {
186
+ axis,
187
+ height,
188
+ moveX = false,
189
+ moveY = false,
190
+ position = POSITIONS.bottom,
191
+ showPx = false,
192
+ width
193
+ } = _ref2;
191
194
  if (!moveX && !moveY) return undefined;
192
195
  /*
193
196
  * Corner position...
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/resizable-box/resize-tooltip/utils.ts"],"names":["clearTimeout","setTimeout","window","POSITIONS","bottom","corner","useResizeLabel","axis","fadeTimeout","onResize","noop","position","showPx","resizeListener","sizes","isAxisControlled","moveX","setMoveX","moveY","setMoveY","width","height","heightRef","widthRef","moveTimeoutRef","unsetMoveXY","debounceUnsetMoveXY","current","isRendered","didWidthChange","didHeightChange","label","getSizeLabel","undefined","labelUnit"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport useResizeAware from 'react-resize-aware';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef, useState } from '@wordpress/element';\n\nconst { clearTimeout, setTimeout } = window;\n\nexport type Axis = 'x' | 'y';\n\nexport const POSITIONS = {\n\tbottom: 'bottom',\n\tcorner: 'corner',\n} as const;\n\nexport type Position = typeof POSITIONS[ keyof typeof POSITIONS ];\n\ninterface UseResizeLabelProps {\n\t/** The label value. */\n\tlabel?: string;\n\t/** Element to be rendered for resize listening events. */\n\tresizeListener: JSX.Element;\n}\n\ninterface UseResizeLabelArgs {\n\taxis?: Axis;\n\tfadeTimeout: number;\n\tonResize( data: { width: number | null; height: number | null } ): void;\n\tposition: Position;\n\tshowPx: boolean;\n}\n\n/**\n * Custom hook that manages resize listener events. It also provides a label\n * based on current resize width x height values.\n *\n * @param props\n * @param props.axis Only shows the label corresponding to the axis.\n * @param props.fadeTimeout Duration (ms) before deactivating the resize label.\n * @param props.onResize Callback when a resize occurs. Provides { width, height } callback.\n * @param props.position Adjusts label value.\n * @param props.showPx Whether to add `PX` to the label.\n *\n * @return Properties for hook.\n */\nexport function useResizeLabel( {\n\taxis,\n\tfadeTimeout = 180,\n\tonResize = noop,\n\tposition = POSITIONS.bottom,\n\tshowPx = false,\n}: UseResizeLabelArgs ): UseResizeLabelProps {\n\t/*\n\t * The width/height values derive from this special useResizeAware hook.\n\t * This custom hook uses injects an iFrame into the element, allowing it\n\t * to tap into the onResize (window) callback events.\n\t */\n\tconst [ resizeListener, sizes ] = useResizeAware();\n\n\t/*\n\t * Indicates if the x/y axis is preferred.\n\t * If set, we will avoid resetting the moveX and moveY values.\n\t * This will allow for the preferred axis values to persist in the label.\n\t */\n\tconst isAxisControlled = !! axis;\n\n\t/*\n\t * The moveX and moveY values are used to track whether the label should\n\t * display width, height, or width x height.\n\t */\n\tconst [ moveX, setMoveX ] = useState( false );\n\tconst [ moveY, setMoveY ] = useState( false );\n\n\t/*\n\t * Cached dimension values to check for width/height updates from the\n\t * sizes property from useResizeAware()\n\t */\n\tconst { width, height } = sizes;\n\tconst heightRef = useRef( height );\n\tconst widthRef = useRef( width );\n\n\t/*\n\t * This timeout is used with setMoveX and setMoveY to determine of\n\t * both width and height values have changed at (roughly) the same time.\n\t */\n\tconst moveTimeoutRef = useRef< number >();\n\n\tconst unsetMoveXY = () => {\n\t\t/*\n\t\t * If axis is controlled, we will avoid resetting the moveX and moveY values.\n\t\t * This will allow for the preferred axis values to persist in the label.\n\t\t */\n\t\tif ( isAxisControlled ) return;\n\t\tsetMoveX( false );\n\t\tsetMoveY( false );\n\t};\n\n\tconst debounceUnsetMoveXY = () => {\n\t\tif ( moveTimeoutRef.current ) {\n\t\t\tclearTimeout( moveTimeoutRef.current );\n\t\t}\n\n\t\tmoveTimeoutRef.current = setTimeout( unsetMoveXY, fadeTimeout );\n\t};\n\n\tuseEffect( () => {\n\t\t/*\n\t\t * On the initial render of useResizeAware, the height and width values are\n\t\t * null. They are calculated then set using via an internal useEffect hook.\n\t\t */\n\t\tconst isRendered = width !== null || height !== null;\n\n\t\tif ( ! isRendered ) return;\n\n\t\tconst didWidthChange = width !== widthRef.current;\n\t\tconst didHeightChange = height !== heightRef.current;\n\n\t\tif ( ! didWidthChange && ! didHeightChange ) return;\n\n\t\t/*\n\t\t * After the initial render, the useResizeAware will set the first\n\t\t * width and height values. We'll sync those values with our\n\t\t * width and height refs. However, we shouldn't render our Tooltip\n\t\t * label on this first cycle.\n\t\t */\n\t\tif ( width && ! widthRef.current && height && ! heightRef.current ) {\n\t\t\twidthRef.current = width;\n\t\t\theightRef.current = height;\n\t\t\treturn;\n\t\t}\n\n\t\t/*\n\t\t * After the first cycle, we can track width and height changes.\n\t\t */\n\t\tif ( didWidthChange ) {\n\t\t\tsetMoveX( true );\n\t\t\twidthRef.current = width;\n\t\t}\n\n\t\tif ( didHeightChange ) {\n\t\t\tsetMoveY( true );\n\t\t\theightRef.current = height;\n\t\t}\n\n\t\tonResize( { width, height } );\n\t\tdebounceUnsetMoveXY();\n\t}, [ width, height ] );\n\n\tconst label = getSizeLabel( {\n\t\taxis,\n\t\theight,\n\t\tmoveX,\n\t\tmoveY,\n\t\tposition,\n\t\tshowPx,\n\t\twidth,\n\t} );\n\n\treturn {\n\t\tlabel,\n\t\tresizeListener,\n\t};\n}\n\ninterface GetSizeLabelArgs {\n\taxis?: Axis;\n\theight: number | null;\n\tmoveX: boolean;\n\tmoveY: boolean;\n\tposition: Position;\n\tshowPx: boolean;\n\twidth: number | null;\n}\n\n/**\n * Gets the resize label based on width and height values (as well as recent changes).\n *\n * @param props\n * @param props.axis Only shows the label corresponding to the axis.\n * @param props.height Height value.\n * @param props.moveX Recent width (x axis) changes.\n * @param props.moveY Recent width (y axis) changes.\n * @param props.position Adjusts label value.\n * @param props.showPx Whether to add `PX` to the label.\n * @param props.width Width value.\n *\n * @return The rendered label.\n */\nfunction getSizeLabel( {\n\taxis,\n\theight,\n\tmoveX = false,\n\tmoveY = false,\n\tposition = POSITIONS.bottom,\n\tshowPx = false,\n\twidth,\n}: GetSizeLabelArgs ): string | undefined {\n\tif ( ! moveX && ! moveY ) return undefined;\n\n\t/*\n\t * Corner position...\n\t * We want the label to appear like width x height.\n\t */\n\tif ( position === POSITIONS.corner ) {\n\t\treturn `${ width } x ${ height }`;\n\t}\n\n\t/*\n\t * Other POSITIONS...\n\t * The label will combine both width x height values if both\n\t * values have recently been changed.\n\t *\n\t * Otherwise, only width or height will be displayed.\n\t * The `PX` unit will be added, if specified by the `showPx` prop.\n\t */\n\tconst labelUnit = showPx ? ' px' : '';\n\n\tif ( axis ) {\n\t\tif ( axis === 'x' && moveX ) {\n\t\t\treturn `${ width }${ labelUnit }`;\n\t\t}\n\t\tif ( axis === 'y' && moveY ) {\n\t\t\treturn `${ height }${ labelUnit }`;\n\t\t}\n\t}\n\n\tif ( moveX && moveY ) {\n\t\treturn `${ width } x ${ height }`;\n\t}\n\tif ( moveX ) {\n\t\treturn `${ width }${ labelUnit }`;\n\t}\n\tif ( moveY ) {\n\t\treturn `${ height }${ labelUnit }`;\n\t}\n\n\treturn undefined;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/resizable-box/resize-tooltip/utils.ts"],"names":["clearTimeout","setTimeout","window","POSITIONS","bottom","corner","useResizeLabel","axis","fadeTimeout","onResize","noop","position","showPx","resizeListener","sizes","isAxisControlled","moveX","setMoveX","moveY","setMoveY","width","height","heightRef","widthRef","moveTimeoutRef","unsetMoveXY","debounceUnsetMoveXY","current","isRendered","didWidthChange","didHeightChange","label","getSizeLabel","undefined","labelUnit"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport useResizeAware from 'react-resize-aware';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef, useState } from '@wordpress/element';\n\nconst { clearTimeout, setTimeout } = window;\n\nexport type Axis = 'x' | 'y';\n\nexport const POSITIONS = {\n\tbottom: 'bottom',\n\tcorner: 'corner',\n} as const;\n\nexport type Position = typeof POSITIONS[ keyof typeof POSITIONS ];\n\ninterface UseResizeLabelProps {\n\t/** The label value. */\n\tlabel?: string;\n\t/** Element to be rendered for resize listening events. */\n\tresizeListener: JSX.Element;\n}\n\ninterface UseResizeLabelArgs {\n\taxis?: Axis;\n\tfadeTimeout: number;\n\tonResize( data: { width: number | null; height: number | null } ): void;\n\tposition: Position;\n\tshowPx: boolean;\n}\n\n/**\n * Custom hook that manages resize listener events. It also provides a label\n * based on current resize width x height values.\n *\n * @param props\n * @param props.axis Only shows the label corresponding to the axis.\n * @param props.fadeTimeout Duration (ms) before deactivating the resize label.\n * @param props.onResize Callback when a resize occurs. Provides { width, height } callback.\n * @param props.position Adjusts label value.\n * @param props.showPx Whether to add `PX` to the label.\n *\n * @return Properties for hook.\n */\nexport function useResizeLabel( {\n\taxis,\n\tfadeTimeout = 180,\n\tonResize = noop,\n\tposition = POSITIONS.bottom,\n\tshowPx = false,\n}: UseResizeLabelArgs ): UseResizeLabelProps {\n\t/*\n\t * The width/height values derive from this special useResizeAware hook.\n\t * This custom hook uses injects an iFrame into the element, allowing it\n\t * to tap into the onResize (window) callback events.\n\t */\n\tconst [ resizeListener, sizes ] = useResizeAware();\n\n\t/*\n\t * Indicates if the x/y axis is preferred.\n\t * If set, we will avoid resetting the moveX and moveY values.\n\t * This will allow for the preferred axis values to persist in the label.\n\t */\n\tconst isAxisControlled = !! axis;\n\n\t/*\n\t * The moveX and moveY values are used to track whether the label should\n\t * display width, height, or width x height.\n\t */\n\tconst [ moveX, setMoveX ] = useState( false );\n\tconst [ moveY, setMoveY ] = useState( false );\n\n\t/*\n\t * Cached dimension values to check for width/height updates from the\n\t * sizes property from useResizeAware()\n\t */\n\tconst { width, height } = sizes;\n\tconst heightRef = useRef( height );\n\tconst widthRef = useRef( width );\n\n\t/*\n\t * This timeout is used with setMoveX and setMoveY to determine of\n\t * both width and height values have changed at (roughly) the same time.\n\t */\n\tconst moveTimeoutRef = useRef< number >();\n\n\tconst unsetMoveXY = () => {\n\t\t/*\n\t\t * If axis is controlled, we will avoid resetting the moveX and moveY values.\n\t\t * This will allow for the preferred axis values to persist in the label.\n\t\t */\n\t\tif ( isAxisControlled ) return;\n\t\tsetMoveX( false );\n\t\tsetMoveY( false );\n\t};\n\n\tconst debounceUnsetMoveXY = () => {\n\t\tif ( moveTimeoutRef.current ) {\n\t\t\tclearTimeout( moveTimeoutRef.current );\n\t\t}\n\n\t\tmoveTimeoutRef.current = setTimeout( unsetMoveXY, fadeTimeout );\n\t};\n\n\tuseEffect( () => {\n\t\t/*\n\t\t * On the initial render of useResizeAware, the height and width values are\n\t\t * null. They are calculated then set using via an internal useEffect hook.\n\t\t */\n\t\tconst isRendered = width !== null || height !== null;\n\n\t\tif ( ! isRendered ) return;\n\n\t\tconst didWidthChange = width !== widthRef.current;\n\t\tconst didHeightChange = height !== heightRef.current;\n\n\t\tif ( ! didWidthChange && ! didHeightChange ) return;\n\n\t\t/*\n\t\t * After the initial render, the useResizeAware will set the first\n\t\t * width and height values. We'll sync those values with our\n\t\t * width and height refs. However, we shouldn't render our Tooltip\n\t\t * label on this first cycle.\n\t\t */\n\t\tif ( width && ! widthRef.current && height && ! heightRef.current ) {\n\t\t\twidthRef.current = width;\n\t\t\theightRef.current = height;\n\t\t\treturn;\n\t\t}\n\n\t\t/*\n\t\t * After the first cycle, we can track width and height changes.\n\t\t */\n\t\tif ( didWidthChange ) {\n\t\t\tsetMoveX( true );\n\t\t\twidthRef.current = width;\n\t\t}\n\n\t\tif ( didHeightChange ) {\n\t\t\tsetMoveY( true );\n\t\t\theightRef.current = height;\n\t\t}\n\n\t\tonResize( { width, height } );\n\t\tdebounceUnsetMoveXY();\n\t}, [ width, height ] );\n\n\tconst label = getSizeLabel( {\n\t\taxis,\n\t\theight,\n\t\tmoveX,\n\t\tmoveY,\n\t\tposition,\n\t\tshowPx,\n\t\twidth,\n\t} );\n\n\treturn {\n\t\tlabel,\n\t\tresizeListener,\n\t};\n}\n\ninterface GetSizeLabelArgs {\n\taxis?: Axis;\n\theight: number | null;\n\tmoveX: boolean;\n\tmoveY: boolean;\n\tposition: Position;\n\tshowPx: boolean;\n\twidth: number | null;\n}\n\n/**\n * Gets the resize label based on width and height values (as well as recent changes).\n *\n * @param props\n * @param props.axis Only shows the label corresponding to the axis.\n * @param props.height Height value.\n * @param props.moveX Recent width (x axis) changes.\n * @param props.moveY Recent width (y axis) changes.\n * @param props.position Adjusts label value.\n * @param props.showPx Whether to add `PX` to the label.\n * @param props.width Width value.\n *\n * @return The rendered label.\n */\nfunction getSizeLabel( {\n\taxis,\n\theight,\n\tmoveX = false,\n\tmoveY = false,\n\tposition = POSITIONS.bottom,\n\tshowPx = false,\n\twidth,\n}: GetSizeLabelArgs ): string | undefined {\n\tif ( ! moveX && ! moveY ) return undefined;\n\n\t/*\n\t * Corner position...\n\t * We want the label to appear like width x height.\n\t */\n\tif ( position === POSITIONS.corner ) {\n\t\treturn `${ width } x ${ height }`;\n\t}\n\n\t/*\n\t * Other POSITIONS...\n\t * The label will combine both width x height values if both\n\t * values have recently been changed.\n\t *\n\t * Otherwise, only width or height will be displayed.\n\t * The `PX` unit will be added, if specified by the `showPx` prop.\n\t */\n\tconst labelUnit = showPx ? ' px' : '';\n\n\tif ( axis ) {\n\t\tif ( axis === 'x' && moveX ) {\n\t\t\treturn `${ width }${ labelUnit }`;\n\t\t}\n\t\tif ( axis === 'y' && moveY ) {\n\t\t\treturn `${ height }${ labelUnit }`;\n\t\t}\n\t}\n\n\tif ( moveX && moveY ) {\n\t\treturn `${ width } x ${ height }`;\n\t}\n\tif ( moveX ) {\n\t\treturn `${ width }${ labelUnit }`;\n\t}\n\tif ( moveY ) {\n\t\treturn `${ height }${ labelUnit }`;\n\t}\n\n\treturn undefined;\n}\n"]}
@@ -20,12 +20,13 @@ var _compose = require("@wordpress/compose");
20
20
  /**
21
21
  * WordPress dependencies
22
22
  */
23
- function ResponsiveWrapper({
24
- naturalWidth,
25
- naturalHeight,
26
- children,
27
- isInline = false
28
- }) {
23
+ function ResponsiveWrapper(_ref) {
24
+ let {
25
+ naturalWidth,
26
+ naturalHeight,
27
+ children,
28
+ isInline = false
29
+ } = _ref;
29
30
  const [containerResizeListener, {
30
31
  width: containerWidth
31
32
  }] = (0, _compose.useResizeObserver)();
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/responsive-wrapper/index.js"],"names":["ResponsiveWrapper","naturalWidth","naturalHeight","children","isInline","containerResizeListener","width","containerWidth","Children","count","imageStyle","paddingBottom","TagName","className","props"],"mappings":";;;;;;;;;AAQA;;AALA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,SAASA,iBAAT,CAA4B;AAC3BC,EAAAA,YAD2B;AAE3BC,EAAAA,aAF2B;AAG3BC,EAAAA,QAH2B;AAI3BC,EAAAA,QAAQ,GAAG;AAJgB,CAA5B,EAKI;AACH,QAAM,CACLC,uBADK,EAEL;AAAEC,IAAAA,KAAK,EAAEC;AAAT,GAFK,IAGF,iCAHJ;;AAIA,MAAKC,kBAASC,KAAT,CAAgBN,QAAhB,MAA+B,CAApC,EAAwC;AACvC,WAAO,IAAP;AACA;;AACD,QAAMO,UAAU,GAAG;AAClBC,IAAAA,aAAa,EACZV,YAAY,GAAGM,cAAf,GACGL,aADH,GAEKA,aAAa,GAAGD,YAAlB,GAAmC,GAAnC,GAAyC;AAJ3B,GAAnB;AAMA,QAAMW,OAAO,GAAGR,QAAQ,GAAG,MAAH,GAAY,KAApC;AACA,SACC,4BAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KACGC,uBADH,EAEC,4BAAC,OAAD;AAAS,IAAA,KAAK,EAAGK;AAAjB,IAFD,EAGG,2BAAcP,QAAd,EAAwB;AACzBU,IAAAA,SAAS,EAAE,yBACV,wCADU,EAEVV,QAAQ,CAACW,KAAT,CAAeD,SAFL;AADc,GAAxB,CAHH,CADD;AAYA;;eAEcb,iB","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { cloneElement, Children } from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\n\nfunction ResponsiveWrapper( {\n\tnaturalWidth,\n\tnaturalHeight,\n\tchildren,\n\tisInline = false,\n} ) {\n\tconst [\n\t\tcontainerResizeListener,\n\t\t{ width: containerWidth },\n\t] = useResizeObserver();\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn null;\n\t}\n\tconst imageStyle = {\n\t\tpaddingBottom:\n\t\t\tnaturalWidth < containerWidth\n\t\t\t\t? naturalHeight\n\t\t\t\t: ( naturalHeight / naturalWidth ) * 100 + '%',\n\t};\n\tconst TagName = isInline ? 'span' : 'div';\n\treturn (\n\t\t<TagName className=\"components-responsive-wrapper\">\n\t\t\t{ containerResizeListener }\n\t\t\t<TagName style={ imageStyle } />\n\t\t\t{ cloneElement( children, {\n\t\t\t\tclassName: classnames(\n\t\t\t\t\t'components-responsive-wrapper__content',\n\t\t\t\t\tchildren.props.className\n\t\t\t\t),\n\t\t\t} ) }\n\t\t</TagName>\n\t);\n}\n\nexport default ResponsiveWrapper;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/responsive-wrapper/index.js"],"names":["ResponsiveWrapper","naturalWidth","naturalHeight","children","isInline","containerResizeListener","width","containerWidth","Children","count","imageStyle","paddingBottom","TagName","className","props"],"mappings":";;;;;;;;;AAQA;;AALA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,SAASA,iBAAT,OAKI;AAAA,MALwB;AAC3BC,IAAAA,YAD2B;AAE3BC,IAAAA,aAF2B;AAG3BC,IAAAA,QAH2B;AAI3BC,IAAAA,QAAQ,GAAG;AAJgB,GAKxB;AACH,QAAM,CACLC,uBADK,EAEL;AAAEC,IAAAA,KAAK,EAAEC;AAAT,GAFK,IAGF,iCAHJ;;AAIA,MAAKC,kBAASC,KAAT,CAAgBN,QAAhB,MAA+B,CAApC,EAAwC;AACvC,WAAO,IAAP;AACA;;AACD,QAAMO,UAAU,GAAG;AAClBC,IAAAA,aAAa,EACZV,YAAY,GAAGM,cAAf,GACGL,aADH,GAEKA,aAAa,GAAGD,YAAlB,GAAmC,GAAnC,GAAyC;AAJ3B,GAAnB;AAMA,QAAMW,OAAO,GAAGR,QAAQ,GAAG,MAAH,GAAY,KAApC;AACA,SACC,4BAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KACGC,uBADH,EAEC,4BAAC,OAAD;AAAS,IAAA,KAAK,EAAGK;AAAjB,IAFD,EAGG,2BAAcP,QAAd,EAAwB;AACzBU,IAAAA,SAAS,EAAE,yBACV,wCADU,EAEVV,QAAQ,CAACW,KAAT,CAAeD,SAFL;AADc,GAAxB,CAHH,CADD;AAYA;;eAEcb,iB","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { cloneElement, Children } from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\n\nfunction ResponsiveWrapper( {\n\tnaturalWidth,\n\tnaturalHeight,\n\tchildren,\n\tisInline = false,\n} ) {\n\tconst [\n\t\tcontainerResizeListener,\n\t\t{ width: containerWidth },\n\t] = useResizeObserver();\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn null;\n\t}\n\tconst imageStyle = {\n\t\tpaddingBottom:\n\t\t\tnaturalWidth < containerWidth\n\t\t\t\t? naturalHeight\n\t\t\t\t: ( naturalHeight / naturalWidth ) * 100 + '%',\n\t};\n\tconst TagName = isInline ? 'span' : 'div';\n\treturn (\n\t\t<TagName className=\"components-responsive-wrapper\">\n\t\t\t{ containerResizeListener }\n\t\t\t<TagName style={ imageStyle } />\n\t\t\t{ cloneElement( children, {\n\t\t\t\tclassName: classnames(\n\t\t\t\t\t'components-responsive-wrapper__content',\n\t\t\t\t\tchildren.props.className\n\t\t\t\t),\n\t\t\t} ) }\n\t\t</TagName>\n\t);\n}\n\nexport default ResponsiveWrapper;\n"]}
@@ -93,14 +93,15 @@ const style = `
93
93
  }
94
94
  `;
95
95
 
96
- function Sandbox({
97
- html = '',
98
- title = '',
99
- type,
100
- styles = [],
101
- scripts = [],
102
- onFocus
103
- }) {
96
+ function Sandbox(_ref) {
97
+ let {
98
+ html = '',
99
+ title = '',
100
+ type,
101
+ styles = [],
102
+ scripts = [],
103
+ onFocus
104
+ } = _ref;
104
105
  const ref = (0, _element.useRef)();
105
106
  const [width, setWidth] = (0, _element.useState)(0);
106
107
  const [height, setHeight] = (0, _element.useState)(0);
@@ -113,7 +114,9 @@ function Sandbox({
113
114
  }
114
115
  }
115
116
 
116
- function trySandbox(forceRerender = false) {
117
+ function trySandbox() {
118
+ let forceRerender = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
119
+
117
120
  if (!isFrameAccessible()) {
118
121
  return;
119
122
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/sandbox/index.js"],"names":["observeAndResizeJS","style","Sandbox","html","title","type","styles","scripts","onFocus","ref","width","setWidth","height","setHeight","isFrameAccessible","current","contentDocument","body","e","trySandbox","forceRerender","ownerDocument","getAttribute","htmlDoc","documentElement","lang","__html","map","rules","i","src","open","write","close","tryNoForceSandbox","checkMessageForResize","event","iframe","contentWindow","source","data","JSON","parse","action","defaultView","addEventListener","removeEventListener","Math","ceil"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\trenderToString,\n\tuseRef,\n\tuseState,\n\tuseEffect,\n} from '@wordpress/element';\nimport { useFocusableIframe, useMergeRefs } from '@wordpress/compose';\n\nconst observeAndResizeJS = `\n\t( function() {\n\t\tvar observer;\n\n\t\tif ( ! window.MutationObserver || ! document.body || ! window.parent ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfunction sendResize() {\n\t\t\tvar clientBoundingRect = document.body.getBoundingClientRect();\n\n\t\t\twindow.parent.postMessage( {\n\t\t\t\taction: 'resize',\n\t\t\t\twidth: clientBoundingRect.width,\n\t\t\t\theight: clientBoundingRect.height,\n\t\t\t}, '*' );\n\t\t}\n\n\t\tobserver = new MutationObserver( sendResize );\n\t\tobserver.observe( document.body, {\n\t\t\tattributes: true,\n\t\t\tattributeOldValue: false,\n\t\t\tcharacterData: true,\n\t\t\tcharacterDataOldValue: false,\n\t\t\tchildList: true,\n\t\t\tsubtree: true\n\t\t} );\n\n\t\twindow.addEventListener( 'load', sendResize, true );\n\n\t\t// Hack: Remove viewport unit styles, as these are relative\n\t\t// the iframe root and interfere with our mechanism for\n\t\t// determining the unconstrained page bounds.\n\t\tfunction removeViewportStyles( ruleOrNode ) {\n\t\t\tif( ruleOrNode.style ) {\n\t\t\t\t[ 'width', 'height', 'minHeight', 'maxHeight' ].forEach( function( style ) {\n\t\t\t\t\tif ( /^\\\\d+(vmin|vmax|vh|vw)$/.test( ruleOrNode.style[ style ] ) ) {\n\t\t\t\t\t\truleOrNode.style[ style ] = '';\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\tArray.prototype.forEach.call( document.querySelectorAll( '[style]' ), removeViewportStyles );\n\t\tArray.prototype.forEach.call( document.styleSheets, function( stylesheet ) {\n\t\t\tArray.prototype.forEach.call( stylesheet.cssRules || stylesheet.rules, removeViewportStyles );\n\t\t} );\n\n\t\tdocument.body.style.position = 'absolute';\n\t\tdocument.body.style.width = '100%';\n\t\tdocument.body.setAttribute( 'data-resizable-iframe-connected', '' );\n\n\t\tsendResize();\n\n\t\t// Resize events can change the width of elements with 100% width, but we don't\n\t\t// get an DOM mutations for that, so do the resize when the window is resized, too.\n\t\twindow.addEventListener( 'resize', sendResize, true );\n} )();`;\n\nconst style = `\n\tbody {\n\t\tmargin: 0;\n\t}\n\thtml,\n\tbody,\n\tbody > div,\n\tbody > div iframe {\n\t\twidth: 100%;\n\t}\n\thtml.wp-has-aspect-ratio,\n\tbody.wp-has-aspect-ratio,\n\tbody.wp-has-aspect-ratio > div,\n\tbody.wp-has-aspect-ratio > div iframe {\n\t\theight: 100%;\n\t\toverflow: hidden; /* If it has an aspect ratio, it shouldn't scroll. */\n\t}\n\tbody > div > * {\n\t\tmargin-top: 0 !important; /* Has to have !important to override inline styles. */\n\t\tmargin-bottom: 0 !important;\n\t}\n`;\n\nexport default function Sandbox( {\n\thtml = '',\n\ttitle = '',\n\ttype,\n\tstyles = [],\n\tscripts = [],\n\tonFocus,\n} ) {\n\tconst ref = useRef();\n\tconst [ width, setWidth ] = useState( 0 );\n\tconst [ height, setHeight ] = useState( 0 );\n\n\tfunction isFrameAccessible() {\n\t\ttry {\n\t\t\treturn !! ref.current.contentDocument.body;\n\t\t} catch ( e ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tfunction trySandbox( forceRerender = false ) {\n\t\tif ( ! isFrameAccessible() ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { contentDocument, ownerDocument } = ref.current;\n\t\tconst { body } = contentDocument;\n\n\t\tif (\n\t\t\t! forceRerender &&\n\t\t\tnull !== body.getAttribute( 'data-resizable-iframe-connected' )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// put the html snippet into a html document, and then write it to the iframe's document\n\t\t// we can use this in the future to inject custom styles or scripts.\n\t\t// Scripts go into the body rather than the head, to support embedded content such as Instagram\n\t\t// that expect the scripts to be part of the body.\n\t\tconst htmlDoc = (\n\t\t\t<html\n\t\t\t\tlang={ ownerDocument.documentElement.lang }\n\t\t\t\tclassName={ type }\n\t\t\t>\n\t\t\t\t<head>\n\t\t\t\t\t<title>{ title }</title>\n\t\t\t\t\t<style dangerouslySetInnerHTML={ { __html: style } } />\n\t\t\t\t\t{ styles.map( ( rules, i ) => (\n\t\t\t\t\t\t<style\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tdangerouslySetInnerHTML={ { __html: rules } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</head>\n\t\t\t\t<body\n\t\t\t\t\tdata-resizable-iframe-connected=\"data-resizable-iframe-connected\"\n\t\t\t\t\tclassName={ type }\n\t\t\t\t>\n\t\t\t\t\t<div dangerouslySetInnerHTML={ { __html: html } } />\n\t\t\t\t\t<script\n\t\t\t\t\t\ttype=\"text/javascript\"\n\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t__html: observeAndResizeJS,\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ scripts.map( ( src ) => (\n\t\t\t\t\t\t<script key={ src } src={ src } />\n\t\t\t\t\t) ) }\n\t\t\t\t</body>\n\t\t\t</html>\n\t\t);\n\n\t\t// writing the document like this makes it act in the same way as if it was\n\t\t// loaded over the network, so DOM creation and mutation, script execution, etc.\n\t\t// all work as expected\n\t\tcontentDocument.open();\n\t\tcontentDocument.write( '<!DOCTYPE html>' + renderToString( htmlDoc ) );\n\t\tcontentDocument.close();\n\t}\n\n\tuseEffect( () => {\n\t\ttrySandbox();\n\n\t\tfunction tryNoForceSandbox() {\n\t\t\ttrySandbox( false );\n\t\t}\n\n\t\tfunction checkMessageForResize( event ) {\n\t\t\tconst iframe = ref.current;\n\n\t\t\t// Verify that the mounted element is the source of the message\n\t\t\tif ( ! iframe || iframe.contentWindow !== event.source ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Attempt to parse the message data as JSON if passed as string\n\t\t\tlet data = event.data || {};\n\n\t\t\tif ( 'string' === typeof data ) {\n\t\t\t\ttry {\n\t\t\t\t\tdata = JSON.parse( data );\n\t\t\t\t} catch ( e ) {}\n\t\t\t}\n\n\t\t\t// Update the state only if the message is formatted as we expect,\n\t\t\t// i.e. as an object with a 'resize' action.\n\t\t\tif ( 'resize' !== data.action ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetWidth( data.width );\n\t\t\tsetHeight( data.height );\n\t\t}\n\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\n\t\t// This used to be registered using <iframe onLoad={} />, but it made the iframe blank\n\t\t// after reordering the containing block. See these two issues for more details:\n\t\t// https://github.com/WordPress/gutenberg/issues/6146\n\t\t// https://github.com/facebook/react/issues/18752\n\t\tref.current.addEventListener( 'load', tryNoForceSandbox, false );\n\t\tdefaultView.addEventListener( 'message', checkMessageForResize );\n\n\t\treturn () => {\n\t\t\tref.current?.removeEventListener(\n\t\t\t\t'load',\n\t\t\t\ttryNoForceSandbox,\n\t\t\t\tfalse\n\t\t\t);\n\t\t\tdefaultView.addEventListener( 'message', checkMessageForResize );\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\ttrySandbox();\n\t}, [ title, type, styles, scripts ] );\n\n\tuseEffect( () => {\n\t\ttrySandbox( true );\n\t}, [ html ] );\n\n\treturn (\n\t\t<iframe\n\t\t\tref={ useMergeRefs( [ ref, useFocusableIframe() ] ) }\n\t\t\ttitle={ title }\n\t\t\tclassName=\"components-sandbox\"\n\t\t\tsandbox=\"allow-scripts allow-same-origin allow-presentation\"\n\t\t\tonFocus={ onFocus }\n\t\t\twidth={ Math.ceil( width ) }\n\t\t\theight={ Math.ceil( height ) }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/sandbox/index.js"],"names":["observeAndResizeJS","style","Sandbox","html","title","type","styles","scripts","onFocus","ref","width","setWidth","height","setHeight","isFrameAccessible","current","contentDocument","body","e","trySandbox","forceRerender","ownerDocument","getAttribute","htmlDoc","documentElement","lang","__html","map","rules","i","src","open","write","close","tryNoForceSandbox","checkMessageForResize","event","iframe","contentWindow","source","data","JSON","parse","action","defaultView","addEventListener","removeEventListener","Math","ceil"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\trenderToString,\n\tuseRef,\n\tuseState,\n\tuseEffect,\n} from '@wordpress/element';\nimport { useFocusableIframe, useMergeRefs } from '@wordpress/compose';\n\nconst observeAndResizeJS = `\n\t( function() {\n\t\tvar observer;\n\n\t\tif ( ! window.MutationObserver || ! document.body || ! window.parent ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfunction sendResize() {\n\t\t\tvar clientBoundingRect = document.body.getBoundingClientRect();\n\n\t\t\twindow.parent.postMessage( {\n\t\t\t\taction: 'resize',\n\t\t\t\twidth: clientBoundingRect.width,\n\t\t\t\theight: clientBoundingRect.height,\n\t\t\t}, '*' );\n\t\t}\n\n\t\tobserver = new MutationObserver( sendResize );\n\t\tobserver.observe( document.body, {\n\t\t\tattributes: true,\n\t\t\tattributeOldValue: false,\n\t\t\tcharacterData: true,\n\t\t\tcharacterDataOldValue: false,\n\t\t\tchildList: true,\n\t\t\tsubtree: true\n\t\t} );\n\n\t\twindow.addEventListener( 'load', sendResize, true );\n\n\t\t// Hack: Remove viewport unit styles, as these are relative\n\t\t// the iframe root and interfere with our mechanism for\n\t\t// determining the unconstrained page bounds.\n\t\tfunction removeViewportStyles( ruleOrNode ) {\n\t\t\tif( ruleOrNode.style ) {\n\t\t\t\t[ 'width', 'height', 'minHeight', 'maxHeight' ].forEach( function( style ) {\n\t\t\t\t\tif ( /^\\\\d+(vmin|vmax|vh|vw)$/.test( ruleOrNode.style[ style ] ) ) {\n\t\t\t\t\t\truleOrNode.style[ style ] = '';\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\tArray.prototype.forEach.call( document.querySelectorAll( '[style]' ), removeViewportStyles );\n\t\tArray.prototype.forEach.call( document.styleSheets, function( stylesheet ) {\n\t\t\tArray.prototype.forEach.call( stylesheet.cssRules || stylesheet.rules, removeViewportStyles );\n\t\t} );\n\n\t\tdocument.body.style.position = 'absolute';\n\t\tdocument.body.style.width = '100%';\n\t\tdocument.body.setAttribute( 'data-resizable-iframe-connected', '' );\n\n\t\tsendResize();\n\n\t\t// Resize events can change the width of elements with 100% width, but we don't\n\t\t// get an DOM mutations for that, so do the resize when the window is resized, too.\n\t\twindow.addEventListener( 'resize', sendResize, true );\n} )();`;\n\nconst style = `\n\tbody {\n\t\tmargin: 0;\n\t}\n\thtml,\n\tbody,\n\tbody > div,\n\tbody > div iframe {\n\t\twidth: 100%;\n\t}\n\thtml.wp-has-aspect-ratio,\n\tbody.wp-has-aspect-ratio,\n\tbody.wp-has-aspect-ratio > div,\n\tbody.wp-has-aspect-ratio > div iframe {\n\t\theight: 100%;\n\t\toverflow: hidden; /* If it has an aspect ratio, it shouldn't scroll. */\n\t}\n\tbody > div > * {\n\t\tmargin-top: 0 !important; /* Has to have !important to override inline styles. */\n\t\tmargin-bottom: 0 !important;\n\t}\n`;\n\nexport default function Sandbox( {\n\thtml = '',\n\ttitle = '',\n\ttype,\n\tstyles = [],\n\tscripts = [],\n\tonFocus,\n} ) {\n\tconst ref = useRef();\n\tconst [ width, setWidth ] = useState( 0 );\n\tconst [ height, setHeight ] = useState( 0 );\n\n\tfunction isFrameAccessible() {\n\t\ttry {\n\t\t\treturn !! ref.current.contentDocument.body;\n\t\t} catch ( e ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tfunction trySandbox( forceRerender = false ) {\n\t\tif ( ! isFrameAccessible() ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { contentDocument, ownerDocument } = ref.current;\n\t\tconst { body } = contentDocument;\n\n\t\tif (\n\t\t\t! forceRerender &&\n\t\t\tnull !== body.getAttribute( 'data-resizable-iframe-connected' )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// put the html snippet into a html document, and then write it to the iframe's document\n\t\t// we can use this in the future to inject custom styles or scripts.\n\t\t// Scripts go into the body rather than the head, to support embedded content such as Instagram\n\t\t// that expect the scripts to be part of the body.\n\t\tconst htmlDoc = (\n\t\t\t<html\n\t\t\t\tlang={ ownerDocument.documentElement.lang }\n\t\t\t\tclassName={ type }\n\t\t\t>\n\t\t\t\t<head>\n\t\t\t\t\t<title>{ title }</title>\n\t\t\t\t\t<style dangerouslySetInnerHTML={ { __html: style } } />\n\t\t\t\t\t{ styles.map( ( rules, i ) => (\n\t\t\t\t\t\t<style\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tdangerouslySetInnerHTML={ { __html: rules } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</head>\n\t\t\t\t<body\n\t\t\t\t\tdata-resizable-iframe-connected=\"data-resizable-iframe-connected\"\n\t\t\t\t\tclassName={ type }\n\t\t\t\t>\n\t\t\t\t\t<div dangerouslySetInnerHTML={ { __html: html } } />\n\t\t\t\t\t<script\n\t\t\t\t\t\ttype=\"text/javascript\"\n\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t__html: observeAndResizeJS,\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ scripts.map( ( src ) => (\n\t\t\t\t\t\t<script key={ src } src={ src } />\n\t\t\t\t\t) ) }\n\t\t\t\t</body>\n\t\t\t</html>\n\t\t);\n\n\t\t// writing the document like this makes it act in the same way as if it was\n\t\t// loaded over the network, so DOM creation and mutation, script execution, etc.\n\t\t// all work as expected\n\t\tcontentDocument.open();\n\t\tcontentDocument.write( '<!DOCTYPE html>' + renderToString( htmlDoc ) );\n\t\tcontentDocument.close();\n\t}\n\n\tuseEffect( () => {\n\t\ttrySandbox();\n\n\t\tfunction tryNoForceSandbox() {\n\t\t\ttrySandbox( false );\n\t\t}\n\n\t\tfunction checkMessageForResize( event ) {\n\t\t\tconst iframe = ref.current;\n\n\t\t\t// Verify that the mounted element is the source of the message\n\t\t\tif ( ! iframe || iframe.contentWindow !== event.source ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Attempt to parse the message data as JSON if passed as string\n\t\t\tlet data = event.data || {};\n\n\t\t\tif ( 'string' === typeof data ) {\n\t\t\t\ttry {\n\t\t\t\t\tdata = JSON.parse( data );\n\t\t\t\t} catch ( e ) {}\n\t\t\t}\n\n\t\t\t// Update the state only if the message is formatted as we expect,\n\t\t\t// i.e. as an object with a 'resize' action.\n\t\t\tif ( 'resize' !== data.action ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetWidth( data.width );\n\t\t\tsetHeight( data.height );\n\t\t}\n\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\n\t\t// This used to be registered using <iframe onLoad={} />, but it made the iframe blank\n\t\t// after reordering the containing block. See these two issues for more details:\n\t\t// https://github.com/WordPress/gutenberg/issues/6146\n\t\t// https://github.com/facebook/react/issues/18752\n\t\tref.current.addEventListener( 'load', tryNoForceSandbox, false );\n\t\tdefaultView.addEventListener( 'message', checkMessageForResize );\n\n\t\treturn () => {\n\t\t\tref.current?.removeEventListener(\n\t\t\t\t'load',\n\t\t\t\ttryNoForceSandbox,\n\t\t\t\tfalse\n\t\t\t);\n\t\t\tdefaultView.addEventListener( 'message', checkMessageForResize );\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\ttrySandbox();\n\t}, [ title, type, styles, scripts ] );\n\n\tuseEffect( () => {\n\t\ttrySandbox( true );\n\t}, [ html ] );\n\n\treturn (\n\t\t<iframe\n\t\t\tref={ useMergeRefs( [ ref, useFocusableIframe() ] ) }\n\t\t\ttitle={ title }\n\t\t\tclassName=\"components-sandbox\"\n\t\t\tsandbox=\"allow-scripts allow-same-origin allow-presentation\"\n\t\t\tonFocus={ onFocus }\n\t\t\twidth={ Math.ceil( width ) }\n\t\t\theight={ Math.ceil( height ) }\n\t\t/>\n\t);\n}\n"]}
@@ -157,18 +157,19 @@ const style = `
157
157
  `;
158
158
  const EMPTY_ARRAY = [];
159
159
 
160
- function Sandbox({
161
- containerStyle,
162
- customJS,
163
- html = '',
164
- lang = 'en',
165
- providerUrl = '',
166
- scripts = EMPTY_ARRAY,
167
- styles = EMPTY_ARRAY,
168
- title = '',
169
- type,
170
- url
171
- }) {
160
+ function Sandbox(_ref) {
161
+ let {
162
+ containerStyle,
163
+ customJS,
164
+ html = '',
165
+ lang = 'en',
166
+ providerUrl = '',
167
+ scripts = EMPTY_ARRAY,
168
+ styles = EMPTY_ARRAY,
169
+ title = '',
170
+ type,
171
+ url
172
+ } = _ref;
172
173
  const colorScheme = (0, _compose.usePreferredColorScheme)();
173
174
  const ref = (0, _element.useRef)();
174
175
  const [height, setHeight] = (0, _element.useState)(0);
@@ -225,7 +226,8 @@ function Sandbox({
225
226
  return '<!DOCTYPE html>' + (0, _element.renderToString)(htmlDoc);
226
227
  }
227
228
 
228
- function updateContentHtml(forceRerender = false) {
229
+ function updateContentHtml() {
230
+ let forceRerender = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
229
231
  const newContentHtml = getHtmlDoc();
230
232
 
231
233
  if (forceRerender && contentHtml === newContentHtml) {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/sandbox/index.native.js"],"names":["observeAndResizeJS","style","EMPTY_ARRAY","Sandbox","containerStyle","customJS","html","lang","providerUrl","scripts","styles","title","type","url","colorScheme","ref","height","setHeight","contentHtml","setContentHtml","getHtmlDoc","windowSize","Dimensions","get","isLandscape","setIsLandscape","width","wasLandscape","key","Platform","select","android","ios","htmlDoc","__html","map","rules","i","src","updateContentHtml","forceRerender","newContentHtml","setImmediate","checkMessageForResize","event","data","nativeEvent","JSON","parse","e","action","getSizeStyle","contentHeight","Math","ceil","aspectRatio","onChangeDimensions","dimensions","window","addEventListener","removeEventListener","current","sandboxStyles","baseUrl"],"mappings":";;;;;;;;;AASA;;AANA;;AACA;;AAYA;;AAKA;;AArBA;AACA;AACA;;AAIA;AACA;AACA;;AAUA;AACA;AACA;AAGA,MAAMA,kBAAkB,GAAI;AAC5B;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OA5DA;AA8DA,MAAMC,KAAK,GAAI;AACf;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAjEA;AAmEA,MAAMC,WAAW,GAAG,EAApB;;AAEA,SAASC,OAAT,CAAkB;AACjBC,EAAAA,cADiB;AAEjBC,EAAAA,QAFiB;AAGjBC,EAAAA,IAAI,GAAG,EAHU;AAIjBC,EAAAA,IAAI,GAAG,IAJU;AAKjBC,EAAAA,WAAW,GAAG,EALG;AAMjBC,EAAAA,OAAO,GAAGP,WANO;AAOjBQ,EAAAA,MAAM,GAAGR,WAPQ;AAQjBS,EAAAA,KAAK,GAAG,EARS;AASjBC,EAAAA,IATiB;AAUjBC,EAAAA;AAViB,CAAlB,EAWI;AACH,QAAMC,WAAW,GAAG,uCAApB;AACA,QAAMC,GAAG,GAAG,sBAAZ;AACA,QAAM,CAAEC,MAAF,EAAUC,SAAV,IAAwB,uBAAU,CAAV,CAA9B;AACA,QAAM,CA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","sourcesContent":["/**\n * External dependencies\n */\nimport { Dimensions, Platform } from 'react-native';\nimport { WebView } from 'react-native-webview';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trenderToString,\n\tmemo,\n\tuseRef,\n\tuseState,\n\tuseEffect,\n} from '@wordpress/element';\nimport { usePreferredColorScheme } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport sandboxStyles from './style.scss';\n\nconst observeAndResizeJS = `\n\t( function() {\n\t\tvar observer;\n\n\t\tif ( ! window.MutationObserver || ! document.body || ! window.parent ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfunction sendResize() {\n\t\t\tvar clientBoundingRect = document.body.getBoundingClientRect();\n\n\t\t\t// The function postMessage is exposed by the react-native-webview library \n\t\t\t// to communicate between React Native and the WebView, in this case, \n\t\t\t// we use it for notifying resize changes.\n window.ReactNativeWebView.postMessage(JSON.stringify( {\n action: 'resize',\n\t\t\t\twidth: clientBoundingRect.width,\n\t\t\t\theight: clientBoundingRect.height,\n }));\n\t\t}\n\n\t\tobserver = new MutationObserver( sendResize );\n\t\tobserver.observe( document.body, {\n\t\t\tattributes: true,\n\t\t\tattributeOldValue: false,\n\t\t\tcharacterData: true,\n\t\t\tcharacterDataOldValue: false,\n\t\t\tchildList: true,\n\t\t\tsubtree: true\n\t\t} );\n\n\t\twindow.addEventListener( 'load', sendResize, true );\n\n\t\t// Hack: Remove viewport unit styles, as these are relative\n\t\t// the iframe root and interfere with our mechanism for\n\t\t// determining the unconstrained page bounds.\n\t\tfunction removeViewportStyles( ruleOrNode ) {\n\t\t\tif( ruleOrNode.style ) {\n\t\t\t\t[ 'width', 'height', 'minHeight', 'maxHeight' ].forEach( function( style ) {\n\t\t\t\t\tif ( /^\\\\d+(vmin|vmax|vh|vw)$/.test( ruleOrNode.style[ style ] ) ) {\n\t\t\t\t\t\truleOrNode.style[ style ] = '';\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\tArray.prototype.forEach.call( document.querySelectorAll( '[style]' ), removeViewportStyles );\n\t\tArray.prototype.forEach.call( document.styleSheets, function( stylesheet ) {\n\t\t\tArray.prototype.forEach.call( stylesheet.cssRules || stylesheet.rules, removeViewportStyles );\n\t\t} );\n\n\t\tdocument.body.style.position = 'absolute';\n\t\tdocument.body.style.width = '100%';\n\t\tdocument.body.setAttribute( 'data-resizable-iframe-connected', '' );\n\n\t\tsendResize();\n\n\t\t// Resize events can change the width of elements with 100% width, but we don't\n\t\t// get an DOM mutations for that, so do the resize when the window is resized, too.\n\t\twindow.addEventListener( 'resize', sendResize, true );\n} )();`;\n\nconst style = `\n\tbody {\n\t\tmargin: 0;\n\t}\n\thtml,\n\tbody,\n\tbody > div,\n\tbody > div iframe {\n\t\twidth: 100%;\n\t}\n\tbody > div > * {\n\t\tmargin-top: 0 !important; /* Has to have !important to override inline styles. */\n\t\tmargin-bottom: 0 !important;\n\t}\n\n\t.wp-block-embed__wrapper {\n\t\tposition: relative;\n\t}\n\n\tbody.wp-has-aspect-ratio > div iframe {\n\t\theight: 100%;\n\t\toverflow: hidden; /* If it has an aspect ratio, it shouldn't scroll. */\n\t}\n\n\t/**\n\t * Add responsiveness to embeds with aspect ratios.\n\t * \n\t * These styles have been copied from the web version (https://git.io/JEFcX) and\n\t * adapted for the native version.\n\t */\n\t.wp-has-aspect-ratio.wp-block-embed__wrapper::before {\n\t\tcontent: \"\";\n\t\tdisplay: block;\n\t\tpadding-top: 50%; // Default to 2:1 aspect ratio.\n\t}\n\t.wp-has-aspect-ratio iframe {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\tleft: 0;\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t.wp-embed-aspect-21-9.wp-block-embed__wrapper::before {\n\t\tpadding-top: 42.85%; // 9 / 21 * 100\n\t}\n\t.wp-embed-aspect-18-9.wp-block-embed__wrapper::before {\n\t\tpadding-top: 50%; // 9 / 18 * 100\n\t}\n\t.wp-embed-aspect-16-9.wp-block-embed__wrapper::before {\n\t\tpadding-top: 56.25%; // 9 / 16 * 100\n\t}\n\t.wp-embed-aspect-4-3.wp-block-embed__wrapper::before {\n\t\tpadding-top: 75%; // 3 / 4 * 100\n\t}\n\t.wp-embed-aspect-1-1.wp-block-embed__wrapper::before {\n\t\tpadding-top: 100%; // 1 / 1 * 100\n\t}\n\t.wp-embed-aspect-9-16.wp-block-embed__wrapper::before {\n\t\tpadding-top: 177.77%; // 16 / 9 * 100\n\t}\n\t.wp-embed-aspect-1-2.wp-block-embed__wrapper::before {\n\t\tpadding-top: 200%; // 2 / 1 * 100\n\t}\n`;\n\nconst EMPTY_ARRAY = [];\n\nfunction Sandbox( {\n\tcontainerStyle,\n\tcustomJS,\n\thtml = '',\n\tlang = 'en',\n\tproviderUrl = '',\n\tscripts = EMPTY_ARRAY,\n\tstyles = EMPTY_ARRAY,\n\ttitle = '',\n\ttype,\n\turl,\n} ) {\n\tconst colorScheme = usePreferredColorScheme();\n\tconst ref = useRef();\n\tconst [ height, setHeight ] = useState( 0 );\n\tconst [ contentHtml, setContentHtml ] = useState( getHtmlDoc() );\n\n\tconst windowSize = Dimensions.get( 'window' );\n\tconst [ isLandscape, setIsLandscape ] = useState(\n\t\twindowSize.width >= windowSize.height\n\t);\n\tconst wasLandscape = useRef( isLandscape );\n\t// On Android, we need to recreate the WebView on any of the following actions, otherwise it disappears:\n\t// - Device rotation\n\t// - Light/dark mode changes\n\t// For this purpose, the key prop used in the WebView will be updated with the value of the actions.\n\tconst key = Platform.select( {\n\t\tandroid: `${ url }-${\n\t\t\tisLandscape ? 'landscape' : 'portrait'\n\t\t}-${ colorScheme }`,\n\t\tios: url,\n\t} );\n\n\tfunction getHtmlDoc() {\n\t\t// Put the html snippet into a html document, and update the state to refresh the WebView,\n\t\t// we can use this in the future to inject custom styles or scripts.\n\t\t// Scripts go into the body rather than the head, to support embedded content such as Instagram\n\t\t// that expect the scripts to be part of the body.\n\t\tconst htmlDoc = (\n\t\t\t<html lang={ lang }>\n\t\t\t\t<head>\n\t\t\t\t\t<title>{ title }</title>\n\t\t\t\t\t<meta\n\t\t\t\t\t\tname=\"viewport\"\n\t\t\t\t\t\tcontent=\"width=device-width, initial-scale=1\"\n\t\t\t\t\t></meta>\n\t\t\t\t\t<style dangerouslySetInnerHTML={ { __html: style } } />\n\t\t\t\t\t{ styles.map( ( rules, i ) => (\n\t\t\t\t\t\t<style\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tdangerouslySetInnerHTML={ { __html: rules } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</head>\n\t\t\t\t<body\n\t\t\t\t\tdata-resizable-iframe-connected=\"data-resizable-iframe-connected\"\n\t\t\t\t\tclassName={ type }\n\t\t\t\t>\n\t\t\t\t\t<div dangerouslySetInnerHTML={ { __html: html } } />\n\t\t\t\t\t<script\n\t\t\t\t\t\ttype=\"text/javascript\"\n\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t__html: customJS || observeAndResizeJS,\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ scripts.map( ( src ) => (\n\t\t\t\t\t\t<script key={ src } src={ src } />\n\t\t\t\t\t) ) }\n\t\t\t\t</body>\n\t\t\t</html>\n\t\t);\n\t\treturn '<!DOCTYPE html>' + renderToString( htmlDoc );\n\t}\n\n\tfunction updateContentHtml( forceRerender = false ) {\n\t\tconst newContentHtml = getHtmlDoc();\n\n\t\tif ( forceRerender && contentHtml === newContentHtml ) {\n\t\t\t// The re-render is forced by updating the state with empty HTML,\n\t\t\t// waiting for the JS code to be executed with \"setImmediate\" and then\n\t\t\t// setting the content HTML again.\n\t\t\tsetContentHtml( '' );\n\t\t\tsetImmediate( () => setContentHtml( newContentHtml ) );\n\t\t} else {\n\t\t\tsetContentHtml( newContentHtml );\n\t\t}\n\t}\n\n\tfunction checkMessageForResize( event ) {\n\t\t// Attempt to parse the message data as JSON if passed as string\n\t\tlet data = event.nativeEvent.data || {};\n\n\t\tif ( 'string' === typeof data ) {\n\t\t\ttry {\n\t\t\t\tdata = JSON.parse( data );\n\t\t\t} catch ( e ) {}\n\t\t}\n\n\t\t// Update the state only if the message is formatted as we expect,\n\t\t// i.e. as an object with a 'resize' action.\n\t\tif ( 'resize' !== data.action ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetHeight( data.height );\n\t}\n\n\tfunction getSizeStyle() {\n\t\tconst contentHeight = Math.ceil( height );\n\n\t\treturn contentHeight ? { height: contentHeight } : { aspectRatio: 1 };\n\t}\n\n\tfunction onChangeDimensions( dimensions ) {\n\t\tsetIsLandscape( dimensions.window.width >= dimensions.window.height );\n\t}\n\n\tuseEffect( () => {\n\t\tDimensions.addEventListener( 'change', onChangeDimensions );\n\t\treturn () => {\n\t\t\tDimensions.removeEventListener( 'change', onChangeDimensions );\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tupdateContentHtml();\n\t}, [ html, title, type, styles, scripts ] );\n\n\tuseEffect( () => {\n\t\t// When device orientation changes we have to recalculate the size,\n\t\t// for this purpose we reset the current size value.\n\t\tif ( wasLandscape.current !== isLandscape ) {\n\t\t\tsetHeight( 0 );\n\t\t}\n\t\twasLandscape.current = isLandscape;\n\t}, [ isLandscape ] );\n\n\treturn (\n\t\t<WebView\n\t\t\tcontainerStyle={ [\n\t\t\t\tsandboxStyles[ 'sandbox-webview__container' ],\n\t\t\t\tcontainerStyle,\n\t\t\t] }\n\t\t\tkey={ key }\n\t\t\tref={ ref }\n\t\t\tsource={ { baseUrl: providerUrl, html: contentHtml } }\n\t\t\t// Wildcard value is required for static HTML\n\t\t\t// Reference: https://github.com/react-native-webview/react-native-webview/blob/master/docs/Reference.md#source\n\t\t\toriginWhitelist={ [ '*' ] }\n\t\t\tstyle={ [\n\t\t\t\tsandboxStyles[ 'sandbox-webview__content' ],\n\t\t\t\tgetSizeStyle(),\n\t\t\t] }\n\t\t\tonMessage={ checkMessageForResize }\n\t\t\tscrollEnabled={ false }\n\t\t\tsetBuiltInZoomControls={ false }\n\t\t\tshowsHorizontalScrollIndicator={ false }\n\t\t\tshowsVerticalScrollIndicator={ false }\n\t\t/>\n\t);\n}\n\nexport default memo( Sandbox );\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/sandbox/index.native.js"],"names":["observeAndResizeJS","style","EMPTY_ARRAY","Sandbox","containerStyle","customJS","html","lang","providerUrl","scripts","styles","title","type","url","colorScheme","ref","height","setHeight","contentHtml","setContentHtml","getHtmlDoc","windowSize","Dimensions","get","isLandscape","setIsLandscape","width","wasLandscape","key","Platform","select","android","ios","htmlDoc","__html","map","rules","i","src","updateContentHtml","forceRerender","newContentHtml","setImmediate","checkMessageForResize","event","data","nativeEvent","JSON","parse","e","action","getSizeStyle","contentHeight","Math","ceil","aspectRatio","onChangeDimensions","dimensions","window","addEventListener","removeEventListener","current","sandboxStyles","baseUrl"],"mappings":";;;;;;;;;AASA;;AANA;;AACA;;AAYA;;AAKA;;AArBA;AACA;AACA;;AAIA;AACA;AACA;;AAUA;AACA;AACA;AAGA,MAAMA,kBAAkB,GAAI;AAC5B;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OA5DA;AA8DA,MAAMC,KAAK,GAAI;AACf;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAjEA;AAmEA,MAAMC,WAAW,GAAG,EAApB;;AAEA,SAASC,OAAT,OAWI;AAAA,MAXc;AACjBC,IAAAA,cADiB;AAEjBC,IAAAA,QAFiB;AAGjBC,IAAAA,IAAI,GAAG,EAHU;AAIjBC,IAAAA,IAAI,GAAG,IAJU;AAKjBC,IAAAA,WAAW,GAAG,EALG;AAMjBC,IAAAA,OAAO,GAAGP,WANO;AAOjBQ,IAAAA,MAAM,GAAGR,WAPQ;AAQjBS,IAAAA,KAAK,GAAG,EARS;AASjBC,IAAAA,IATiB;AAUjBC,IAAAA;AAViB,GAWd;AACH,QAAMC,WAAW,GAAG,uCAApB;AACA,QAAMC,GAAG,GAAG,sBAAZ;AACA,QAAM,CAAEC,MAAF,EAAUC,SAAV,IAAwB,uBAAU,CAAV,CAA9B;AACA,QAAM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","sourcesContent":["/**\n * External dependencies\n */\nimport { Dimensions, Platform } from 'react-native';\nimport { WebView } from 'react-native-webview';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trenderToString,\n\tmemo,\n\tuseRef,\n\tuseState,\n\tuseEffect,\n} from '@wordpress/element';\nimport { usePreferredColorScheme } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport sandboxStyles from './style.scss';\n\nconst observeAndResizeJS = `\n\t( function() {\n\t\tvar observer;\n\n\t\tif ( ! window.MutationObserver || ! document.body || ! window.parent ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfunction sendResize() {\n\t\t\tvar clientBoundingRect = document.body.getBoundingClientRect();\n\n\t\t\t// The function postMessage is exposed by the react-native-webview library \n\t\t\t// to communicate between React Native and the WebView, in this case, \n\t\t\t// we use it for notifying resize changes.\n window.ReactNativeWebView.postMessage(JSON.stringify( {\n action: 'resize',\n\t\t\t\twidth: clientBoundingRect.width,\n\t\t\t\theight: clientBoundingRect.height,\n }));\n\t\t}\n\n\t\tobserver = new MutationObserver( sendResize );\n\t\tobserver.observe( document.body, {\n\t\t\tattributes: true,\n\t\t\tattributeOldValue: false,\n\t\t\tcharacterData: true,\n\t\t\tcharacterDataOldValue: false,\n\t\t\tchildList: true,\n\t\t\tsubtree: true\n\t\t} );\n\n\t\twindow.addEventListener( 'load', sendResize, true );\n\n\t\t// Hack: Remove viewport unit styles, as these are relative\n\t\t// the iframe root and interfere with our mechanism for\n\t\t// determining the unconstrained page bounds.\n\t\tfunction removeViewportStyles( ruleOrNode ) {\n\t\t\tif( ruleOrNode.style ) {\n\t\t\t\t[ 'width', 'height', 'minHeight', 'maxHeight' ].forEach( function( style ) {\n\t\t\t\t\tif ( /^\\\\d+(vmin|vmax|vh|vw)$/.test( ruleOrNode.style[ style ] ) ) {\n\t\t\t\t\t\truleOrNode.style[ style ] = '';\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\tArray.prototype.forEach.call( document.querySelectorAll( '[style]' ), removeViewportStyles );\n\t\tArray.prototype.forEach.call( document.styleSheets, function( stylesheet ) {\n\t\t\tArray.prototype.forEach.call( stylesheet.cssRules || stylesheet.rules, removeViewportStyles );\n\t\t} );\n\n\t\tdocument.body.style.position = 'absolute';\n\t\tdocument.body.style.width = '100%';\n\t\tdocument.body.setAttribute( 'data-resizable-iframe-connected', '' );\n\n\t\tsendResize();\n\n\t\t// Resize events can change the width of elements with 100% width, but we don't\n\t\t// get an DOM mutations for that, so do the resize when the window is resized, too.\n\t\twindow.addEventListener( 'resize', sendResize, true );\n} )();`;\n\nconst style = `\n\tbody {\n\t\tmargin: 0;\n\t}\n\thtml,\n\tbody,\n\tbody > div,\n\tbody > div iframe {\n\t\twidth: 100%;\n\t}\n\tbody > div > * {\n\t\tmargin-top: 0 !important; /* Has to have !important to override inline styles. */\n\t\tmargin-bottom: 0 !important;\n\t}\n\n\t.wp-block-embed__wrapper {\n\t\tposition: relative;\n\t}\n\n\tbody.wp-has-aspect-ratio > div iframe {\n\t\theight: 100%;\n\t\toverflow: hidden; /* If it has an aspect ratio, it shouldn't scroll. */\n\t}\n\n\t/**\n\t * Add responsiveness to embeds with aspect ratios.\n\t * \n\t * These styles have been copied from the web version (https://git.io/JEFcX) and\n\t * adapted for the native version.\n\t */\n\t.wp-has-aspect-ratio.wp-block-embed__wrapper::before {\n\t\tcontent: \"\";\n\t\tdisplay: block;\n\t\tpadding-top: 50%; // Default to 2:1 aspect ratio.\n\t}\n\t.wp-has-aspect-ratio iframe {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\tleft: 0;\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t.wp-embed-aspect-21-9.wp-block-embed__wrapper::before {\n\t\tpadding-top: 42.85%; // 9 / 21 * 100\n\t}\n\t.wp-embed-aspect-18-9.wp-block-embed__wrapper::before {\n\t\tpadding-top: 50%; // 9 / 18 * 100\n\t}\n\t.wp-embed-aspect-16-9.wp-block-embed__wrapper::before {\n\t\tpadding-top: 56.25%; // 9 / 16 * 100\n\t}\n\t.wp-embed-aspect-4-3.wp-block-embed__wrapper::before {\n\t\tpadding-top: 75%; // 3 / 4 * 100\n\t}\n\t.wp-embed-aspect-1-1.wp-block-embed__wrapper::before {\n\t\tpadding-top: 100%; // 1 / 1 * 100\n\t}\n\t.wp-embed-aspect-9-16.wp-block-embed__wrapper::before {\n\t\tpadding-top: 177.77%; // 16 / 9 * 100\n\t}\n\t.wp-embed-aspect-1-2.wp-block-embed__wrapper::before {\n\t\tpadding-top: 200%; // 2 / 1 * 100\n\t}\n`;\n\nconst EMPTY_ARRAY = [];\n\nfunction Sandbox( {\n\tcontainerStyle,\n\tcustomJS,\n\thtml = '',\n\tlang = 'en',\n\tproviderUrl = '',\n\tscripts = EMPTY_ARRAY,\n\tstyles = EMPTY_ARRAY,\n\ttitle = '',\n\ttype,\n\turl,\n} ) {\n\tconst colorScheme = usePreferredColorScheme();\n\tconst ref = useRef();\n\tconst [ height, setHeight ] = useState( 0 );\n\tconst [ contentHtml, setContentHtml ] = useState( getHtmlDoc() );\n\n\tconst windowSize = Dimensions.get( 'window' );\n\tconst [ isLandscape, setIsLandscape ] = useState(\n\t\twindowSize.width >= windowSize.height\n\t);\n\tconst wasLandscape = useRef( isLandscape );\n\t// On Android, we need to recreate the WebView on any of the following actions, otherwise it disappears:\n\t// - Device rotation\n\t// - Light/dark mode changes\n\t// For this purpose, the key prop used in the WebView will be updated with the value of the actions.\n\tconst key = Platform.select( {\n\t\tandroid: `${ url }-${\n\t\t\tisLandscape ? 'landscape' : 'portrait'\n\t\t}-${ colorScheme }`,\n\t\tios: url,\n\t} );\n\n\tfunction getHtmlDoc() {\n\t\t// Put the html snippet into a html document, and update the state to refresh the WebView,\n\t\t// we can use this in the future to inject custom styles or scripts.\n\t\t// Scripts go into the body rather than the head, to support embedded content such as Instagram\n\t\t// that expect the scripts to be part of the body.\n\t\tconst htmlDoc = (\n\t\t\t<html lang={ lang }>\n\t\t\t\t<head>\n\t\t\t\t\t<title>{ title }</title>\n\t\t\t\t\t<meta\n\t\t\t\t\t\tname=\"viewport\"\n\t\t\t\t\t\tcontent=\"width=device-width, initial-scale=1\"\n\t\t\t\t\t></meta>\n\t\t\t\t\t<style dangerouslySetInnerHTML={ { __html: style } } />\n\t\t\t\t\t{ styles.map( ( rules, i ) => (\n\t\t\t\t\t\t<style\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tdangerouslySetInnerHTML={ { __html: rules } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</head>\n\t\t\t\t<body\n\t\t\t\t\tdata-resizable-iframe-connected=\"data-resizable-iframe-connected\"\n\t\t\t\t\tclassName={ type }\n\t\t\t\t>\n\t\t\t\t\t<div dangerouslySetInnerHTML={ { __html: html } } />\n\t\t\t\t\t<script\n\t\t\t\t\t\ttype=\"text/javascript\"\n\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t__html: customJS || observeAndResizeJS,\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ scripts.map( ( src ) => (\n\t\t\t\t\t\t<script key={ src } src={ src } />\n\t\t\t\t\t) ) }\n\t\t\t\t</body>\n\t\t\t</html>\n\t\t);\n\t\treturn '<!DOCTYPE html>' + renderToString( htmlDoc );\n\t}\n\n\tfunction updateContentHtml( forceRerender = false ) {\n\t\tconst newContentHtml = getHtmlDoc();\n\n\t\tif ( forceRerender && contentHtml === newContentHtml ) {\n\t\t\t// The re-render is forced by updating the state with empty HTML,\n\t\t\t// waiting for the JS code to be executed with \"setImmediate\" and then\n\t\t\t// setting the content HTML again.\n\t\t\tsetContentHtml( '' );\n\t\t\tsetImmediate( () => setContentHtml( newContentHtml ) );\n\t\t} else {\n\t\t\tsetContentHtml( newContentHtml );\n\t\t}\n\t}\n\n\tfunction checkMessageForResize( event ) {\n\t\t// Attempt to parse the message data as JSON if passed as string\n\t\tlet data = event.nativeEvent.data || {};\n\n\t\tif ( 'string' === typeof data ) {\n\t\t\ttry {\n\t\t\t\tdata = JSON.parse( data );\n\t\t\t} catch ( e ) {}\n\t\t}\n\n\t\t// Update the state only if the message is formatted as we expect,\n\t\t// i.e. as an object with a 'resize' action.\n\t\tif ( 'resize' !== data.action ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetHeight( data.height );\n\t}\n\n\tfunction getSizeStyle() {\n\t\tconst contentHeight = Math.ceil( height );\n\n\t\treturn contentHeight ? { height: contentHeight } : { aspectRatio: 1 };\n\t}\n\n\tfunction onChangeDimensions( dimensions ) {\n\t\tsetIsLandscape( dimensions.window.width >= dimensions.window.height );\n\t}\n\n\tuseEffect( () => {\n\t\tDimensions.addEventListener( 'change', onChangeDimensions );\n\t\treturn () => {\n\t\t\tDimensions.removeEventListener( 'change', onChangeDimensions );\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tupdateContentHtml();\n\t}, [ html, title, type, styles, scripts ] );\n\n\tuseEffect( () => {\n\t\t// When device orientation changes we have to recalculate the size,\n\t\t// for this purpose we reset the current size value.\n\t\tif ( wasLandscape.current !== isLandscape ) {\n\t\t\tsetHeight( 0 );\n\t\t}\n\t\twasLandscape.current = isLandscape;\n\t}, [ isLandscape ] );\n\n\treturn (\n\t\t<WebView\n\t\t\tcontainerStyle={ [\n\t\t\t\tsandboxStyles[ 'sandbox-webview__container' ],\n\t\t\t\tcontainerStyle,\n\t\t\t] }\n\t\t\tkey={ key }\n\t\t\tref={ ref }\n\t\t\tsource={ { baseUrl: providerUrl, html: contentHtml } }\n\t\t\t// Wildcard value is required for static HTML\n\t\t\t// Reference: https://github.com/react-native-webview/react-native-webview/blob/master/docs/Reference.md#source\n\t\t\toriginWhitelist={ [ '*' ] }\n\t\t\tstyle={ [\n\t\t\t\tsandboxStyles[ 'sandbox-webview__content' ],\n\t\t\t\tgetSizeStyle(),\n\t\t\t] }\n\t\t\tonMessage={ checkMessageForResize }\n\t\t\tscrollEnabled={ false }\n\t\t\tsetBuiltInZoomControls={ false }\n\t\t\tshowsHorizontalScrollIndicator={ false }\n\t\t\tshowsVerticalScrollIndicator={ false }\n\t\t/>\n\t);\n}\n\nexport default memo( Sandbox );\n"]}
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -15,6 +13,10 @@ var styles = _interopRequireWildcard(require("./styles"));
15
13
 
16
14
  var _useCx = require("../utils/hooks/use-cx");
17
15
 
16
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
+
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+
18
20
  /**
19
21
  * WordPress dependencies
20
22
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/scrollable/hook.js"],"names":["useScrollable","props","className","scrollDirection","smoothScroll","otherProps","cx","classes","styles","Scrollable","scrollableScrollbar","scrollX","scrollY","scrollAuto"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AAVA;AACA;AACA;;AAGA;AACA;AACA;;AAKA;;AACA;AACA;AACA;;AACA;AACO,SAASA,aAAT,CAAwBC,KAAxB,EAAgC;AACtC,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,eAAe,GAAG,GAFb;AAGLC,IAAAA,YAAY,GAAG,KAHV;AAIL,OAAGC;AAJE,MAKF,+BAAkBJ,KAAlB,EAAyB,YAAzB,CALJ;AAOA,QAAMK,EAAE,GAAG,mBAAX;AAEA,QAAMC,OAAO,GAAG,sBACf,MACCD,EAAE,CACDE,MAAM,CAACC,UADN,EAEDD,MAAM,CAACE,mBAFN,EAGDN,YAAY,IAAII,MAAM,CAACJ,YAHtB,EAIDD,eAAe,KAAK,GAApB,IAA2BK,MAAM,CAACG,OAJjC,EAKDR,eAAe,KAAK,GAApB,IAA2BK,MAAM,CAACI,OALjC,EAMDT,eAAe,KAAK,MAApB,IAA8BK,MAAM,CAACK,UANpC,EAODX,SAPC,CAFY,EAWf,CAAEA,SAAF,EAAaC,eAAb,EAA8BC,YAA9B,CAXe,CAAhB;AAcA,SAAO,EAAE,GAAGC,UAAL;AAAiBH,IAAAA,SAAS,EAAEK;AAA5B,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useContextSystem } from '../ui/context';\nimport * as styles from './styles';\nimport { useCx } from '../utils/hooks/use-cx';\n\n/* eslint-disable jsdoc/valid-types */\n/**\n * @param {import('../ui/context').WordPressComponentProps<import('./types').Props, 'div'>} props\n */\n/* eslint-enable jsdoc/valid-types */\nexport function useScrollable( props ) {\n\tconst {\n\t\tclassName,\n\t\tscrollDirection = 'y',\n\t\tsmoothScroll = false,\n\t\t...otherProps\n\t} = useContextSystem( props, 'Scrollable' );\n\n\tconst cx = useCx();\n\n\tconst classes = useMemo(\n\t\t() =>\n\t\t\tcx(\n\t\t\t\tstyles.Scrollable,\n\t\t\t\tstyles.scrollableScrollbar,\n\t\t\t\tsmoothScroll && styles.smoothScroll,\n\t\t\t\tscrollDirection === 'x' && styles.scrollX,\n\t\t\t\tscrollDirection === 'y' && styles.scrollY,\n\t\t\t\tscrollDirection === 'auto' && styles.scrollAuto,\n\t\t\t\tclassName\n\t\t\t),\n\t\t[ className, scrollDirection, smoothScroll ]\n\t);\n\n\treturn { ...otherProps, className: classes };\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/scrollable/hook.js"],"names":["useScrollable","props","className","scrollDirection","smoothScroll","otherProps","cx","classes","styles","Scrollable","scrollableScrollbar","scrollX","scrollY","scrollAuto"],"mappings":";;;;;;;AAGA;;AAKA;;AACA;;AACA;;;;;;AAVA;AACA;AACA;;AAGA;AACA;AACA;;AAKA;;AACA;AACA;AACA;;AACA;AACO,SAASA,aAAT,CAAwBC,KAAxB,EAAgC;AACtC,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,eAAe,GAAG,GAFb;AAGLC,IAAAA,YAAY,GAAG,KAHV;AAIL,OAAGC;AAJE,MAKF,+BAAkBJ,KAAlB,EAAyB,YAAzB,CALJ;AAOA,QAAMK,EAAE,GAAG,mBAAX;AAEA,QAAMC,OAAO,GAAG,sBACf,MACCD,EAAE,CACDE,MAAM,CAACC,UADN,EAEDD,MAAM,CAACE,mBAFN,EAGDN,YAAY,IAAII,MAAM,CAACJ,YAHtB,EAIDD,eAAe,KAAK,GAApB,IAA2BK,MAAM,CAACG,OAJjC,EAKDR,eAAe,KAAK,GAApB,IAA2BK,MAAM,CAACI,OALjC,EAMDT,eAAe,KAAK,MAApB,IAA8BK,MAAM,CAACK,UANpC,EAODX,SAPC,CAFY,EAWf,CAAEA,SAAF,EAAaC,eAAb,EAA8BC,YAA9B,CAXe,CAAhB;AAcA,SAAO,EAAE,GAAGC,UAAL;AAAiBH,IAAAA,SAAS,EAAEK;AAA5B,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useContextSystem } from '../ui/context';\nimport * as styles from './styles';\nimport { useCx } from '../utils/hooks/use-cx';\n\n/* eslint-disable jsdoc/valid-types */\n/**\n * @param {import('../ui/context').WordPressComponentProps<import('./types').Props, 'div'>} props\n */\n/* eslint-enable jsdoc/valid-types */\nexport function useScrollable( props ) {\n\tconst {\n\t\tclassName,\n\t\tscrollDirection = 'y',\n\t\tsmoothScroll = false,\n\t\t...otherProps\n\t} = useContextSystem( props, 'Scrollable' );\n\n\tconst cx = useCx();\n\n\tconst classes = useMemo(\n\t\t() =>\n\t\t\tcx(\n\t\t\t\tstyles.Scrollable,\n\t\t\t\tstyles.scrollableScrollbar,\n\t\t\t\tsmoothScroll && styles.smoothScroll,\n\t\t\t\tscrollDirection === 'x' && styles.scrollX,\n\t\t\t\tscrollDirection === 'y' && styles.scrollY,\n\t\t\t\tscrollDirection === 'auto' && styles.scrollAuto,\n\t\t\t\tclassName\n\t\t\t),\n\t\t[ className, scrollDirection, smoothScroll ]\n\t);\n\n\treturn { ...otherProps, className: classes };\n}\n"]}