@wordpress/block-editor 12.0.0 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +1 -1
  3. package/build/components/block-controls/slot.js +12 -4
  4. package/build/components/block-controls/slot.js.map +1 -1
  5. package/build/components/block-controls/slot.native.js +10 -1
  6. package/build/components/block-controls/slot.native.js.map +1 -1
  7. package/build/components/block-draggable/index.js +11 -7
  8. package/build/components/block-draggable/index.js.map +1 -1
  9. package/build/components/block-draggable/use-scroll-when-dragging.js +2 -2
  10. package/build/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  11. package/build/components/block-list/block-invalid-warning.native.js +15 -7
  12. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  13. package/build/components/block-list/block-list-item-cell.native.js +15 -2
  14. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  15. package/build/components/block-list/block-list-item.native.js +158 -195
  16. package/build/components/block-list/block-list-item.native.js.map +1 -1
  17. package/build/components/block-list/block-outline.native.js +57 -0
  18. package/build/components/block-list/block-outline.native.js.map +1 -0
  19. package/build/components/block-list/block.native.js +343 -299
  20. package/build/components/block-list/block.native.js.map +1 -1
  21. package/build/components/block-list/index.native.js +202 -298
  22. package/build/components/block-list/index.native.js.map +1 -1
  23. package/build/components/block-list/insertion-point.native.js +4 -2
  24. package/build/components/block-list/insertion-point.native.js.map +1 -1
  25. package/build/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
  26. package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  27. package/build/components/block-settings-menu/block-settings-dropdown.js +8 -10
  28. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  29. package/build/components/block-settings-menu-controls/index.js +15 -4
  30. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  31. package/build/components/block-tools/block-contextual-toolbar.js +17 -62
  32. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  33. package/build/components/block-tools/selected-block-popover.js +3 -8
  34. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  35. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +3 -2
  36. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  37. package/build/components/global-styles/advanced-panel.js +86 -0
  38. package/build/components/global-styles/advanced-panel.js.map +1 -0
  39. package/build/components/global-styles/color-panel.js +4 -1
  40. package/build/components/global-styles/color-panel.js.map +1 -1
  41. package/build/components/global-styles/dimensions-panel.js +6 -6
  42. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  43. package/build/components/global-styles/hooks.js +1 -2
  44. package/build/components/global-styles/hooks.js.map +1 -1
  45. package/build/components/global-styles/index.js +24 -0
  46. package/build/components/global-styles/index.js.map +1 -1
  47. package/build/components/global-styles/typography-panel.js +1 -1
  48. package/build/components/global-styles/typography-panel.js.map +1 -1
  49. package/build/components/global-styles/use-global-styles-output.js +27 -4
  50. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  51. package/build/components/global-styles/utils.js +30 -0
  52. package/build/components/global-styles/utils.js.map +1 -1
  53. package/build/components/image-editor/use-save-image.js +24 -8
  54. package/build/components/image-editor/use-save-image.js.map +1 -1
  55. package/build/components/inserter-draggable-blocks/index.js +5 -0
  56. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  57. package/build/components/inspector-controls/fill.js +1 -1
  58. package/build/components/inspector-controls/fill.js.map +1 -1
  59. package/build/components/inspector-controls/fill.native.js +1 -1
  60. package/build/components/inspector-controls/fill.native.js.map +1 -1
  61. package/build/components/inspector-controls/slot.js +3 -6
  62. package/build/components/inspector-controls/slot.js.map +1 -1
  63. package/build/components/inspector-controls/slot.native.js +1 -1
  64. package/build/components/inspector-controls/slot.native.js.map +1 -1
  65. package/build/components/line-height-control/index.js +7 -2
  66. package/build/components/line-height-control/index.js.map +1 -1
  67. package/build/components/link-control/use-internal-input-value.js +9 -8
  68. package/build/components/link-control/use-internal-input-value.js.map +1 -1
  69. package/build/components/list-view/block-contents.js +7 -2
  70. package/build/components/list-view/block-contents.js.map +1 -1
  71. package/build/components/list-view/block-select-button.js +2 -1
  72. package/build/components/list-view/block-select-button.js.map +1 -1
  73. package/build/components/list-view/block.js +4 -4
  74. package/build/components/list-view/block.js.map +1 -1
  75. package/build/components/list-view/index.js +32 -18
  76. package/build/components/list-view/index.js.map +1 -1
  77. package/build/components/list-view/use-list-view-drop-zone.js +163 -11
  78. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  79. package/build/components/media-placeholder/index.js +68 -7
  80. package/build/components/media-placeholder/index.js.map +1 -1
  81. package/build/components/multi-selection-inspector/index.js +2 -2
  82. package/build/components/multi-selection-inspector/index.js.map +1 -1
  83. package/build/components/off-canvas-editor/leaf-more-menu.js +3 -1
  84. package/build/components/off-canvas-editor/leaf-more-menu.js.map +1 -1
  85. package/build/components/preview-options/index.js +6 -1
  86. package/build/components/preview-options/index.js.map +1 -1
  87. package/build/components/spacing-sizes-control/spacing-input-control.js +1 -1
  88. package/build/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  89. package/build/components/url-input/index.js +1 -2
  90. package/build/components/url-input/index.js.map +1 -1
  91. package/build/hooks/align.js +1 -1
  92. package/build/hooks/align.js.map +1 -1
  93. package/build/hooks/border.js +1 -1
  94. package/build/hooks/border.js.map +1 -1
  95. package/build/hooks/color.js +1 -1
  96. package/build/hooks/color.js.map +1 -1
  97. package/build/hooks/content-lock-ui.js +8 -12
  98. package/build/hooks/content-lock-ui.js.map +1 -1
  99. package/build/hooks/duotone.js +1 -1
  100. package/build/hooks/duotone.js.map +1 -1
  101. package/build/hooks/index.native.js +8 -0
  102. package/build/hooks/index.native.js.map +1 -1
  103. package/build/hooks/layout.js +2 -2
  104. package/build/hooks/layout.js.map +1 -1
  105. package/build/hooks/position.js +1 -1
  106. package/build/hooks/position.js.map +1 -1
  107. package/build/hooks/style.js +1 -1
  108. package/build/hooks/style.js.map +1 -1
  109. package/build/hooks/use-editor-wrapper-styles.native.js +255 -0
  110. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -0
  111. package/build/hooks/use-typography-props.js +14 -10
  112. package/build/hooks/use-typography-props.js.map +1 -1
  113. package/build/index.native.js +31 -0
  114. package/build/index.native.js.map +1 -0
  115. package/build/utils/use-should-contextual-toolbar-show.js +16 -12
  116. package/build/utils/use-should-contextual-toolbar-show.js.map +1 -1
  117. package/build-module/components/block-controls/slot.js +11 -4
  118. package/build-module/components/block-controls/slot.js.map +1 -1
  119. package/build-module/components/block-controls/slot.native.js +9 -1
  120. package/build-module/components/block-controls/slot.native.js.map +1 -1
  121. package/build-module/components/block-draggable/index.js +10 -6
  122. package/build-module/components/block-draggable/index.js.map +1 -1
  123. package/build-module/components/block-draggable/use-scroll-when-dragging.js +2 -2
  124. package/build-module/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  125. package/build-module/components/block-list/block-invalid-warning.native.js +16 -8
  126. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  127. package/build-module/components/block-list/block-list-item-cell.native.js +13 -2
  128. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  129. package/build-module/components/block-list/block-list-item.native.js +160 -190
  130. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  131. package/build-module/components/block-list/block-outline.native.js +44 -0
  132. package/build-module/components/block-list/block-outline.native.js.map +1 -0
  133. package/build-module/components/block-list/block.native.js +341 -298
  134. package/build-module/components/block-list/block.native.js.map +1 -1
  135. package/build-module/components/block-list/index.native.js +203 -293
  136. package/build-module/components/block-list/index.native.js.map +1 -1
  137. package/build-module/components/block-list/insertion-point.native.js +4 -2
  138. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  139. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
  140. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  141. package/build-module/components/block-settings-menu/block-settings-dropdown.js +8 -9
  142. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  143. package/build-module/components/block-settings-menu-controls/index.js +13 -5
  144. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  145. package/build-module/components/block-tools/block-contextual-toolbar.js +18 -62
  146. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  147. package/build-module/components/block-tools/selected-block-popover.js +3 -7
  148. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  149. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +3 -2
  150. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  151. package/build-module/components/global-styles/advanced-panel.js +74 -0
  152. package/build-module/components/global-styles/advanced-panel.js.map +1 -0
  153. package/build-module/components/global-styles/color-panel.js +5 -2
  154. package/build-module/components/global-styles/color-panel.js.map +1 -1
  155. package/build-module/components/global-styles/dimensions-panel.js +6 -6
  156. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  157. package/build-module/components/global-styles/hooks.js +1 -2
  158. package/build-module/components/global-styles/hooks.js.map +1 -1
  159. package/build-module/components/global-styles/index.js +3 -1
  160. package/build-module/components/global-styles/index.js.map +1 -1
  161. package/build-module/components/global-styles/typography-panel.js +1 -1
  162. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  163. package/build-module/components/global-styles/use-global-styles-output.js +25 -4
  164. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  165. package/build-module/components/global-styles/utils.js +25 -0
  166. package/build-module/components/global-styles/utils.js.map +1 -1
  167. package/build-module/components/image-editor/use-save-image.js +24 -8
  168. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  169. package/build-module/components/inserter-draggable-blocks/index.js +4 -0
  170. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  171. package/build-module/components/inspector-controls/fill.js +1 -1
  172. package/build-module/components/inspector-controls/fill.js.map +1 -1
  173. package/build-module/components/inspector-controls/fill.native.js +1 -1
  174. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  175. package/build-module/components/inspector-controls/slot.js +4 -7
  176. package/build-module/components/inspector-controls/slot.js.map +1 -1
  177. package/build-module/components/inspector-controls/slot.native.js +1 -1
  178. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  179. package/build-module/components/line-height-control/index.js +7 -2
  180. package/build-module/components/line-height-control/index.js.map +1 -1
  181. package/build-module/components/link-control/use-internal-input-value.js +9 -8
  182. package/build-module/components/link-control/use-internal-input-value.js.map +1 -1
  183. package/build-module/components/list-view/block-contents.js +7 -3
  184. package/build-module/components/list-view/block-contents.js.map +1 -1
  185. package/build-module/components/list-view/block-select-button.js +2 -1
  186. package/build-module/components/list-view/block-select-button.js.map +1 -1
  187. package/build-module/components/list-view/block.js +4 -4
  188. package/build-module/components/list-view/block.js.map +1 -1
  189. package/build-module/components/list-view/index.js +32 -18
  190. package/build-module/components/list-view/index.js.map +1 -1
  191. package/build-module/components/list-view/use-list-view-drop-zone.js +160 -11
  192. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  193. package/build-module/components/media-placeholder/index.js +66 -7
  194. package/build-module/components/media-placeholder/index.js.map +1 -1
  195. package/build-module/components/multi-selection-inspector/index.js +2 -2
  196. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  197. package/build-module/components/off-canvas-editor/leaf-more-menu.js +3 -1
  198. package/build-module/components/off-canvas-editor/leaf-more-menu.js.map +1 -1
  199. package/build-module/components/preview-options/index.js +7 -2
  200. package/build-module/components/preview-options/index.js.map +1 -1
  201. package/build-module/components/spacing-sizes-control/spacing-input-control.js +1 -1
  202. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  203. package/build-module/components/url-input/index.js +1 -2
  204. package/build-module/components/url-input/index.js.map +1 -1
  205. package/build-module/hooks/align.js +1 -1
  206. package/build-module/hooks/align.js.map +1 -1
  207. package/build-module/hooks/border.js +1 -1
  208. package/build-module/hooks/border.js.map +1 -1
  209. package/build-module/hooks/color.js +1 -1
  210. package/build-module/hooks/color.js.map +1 -1
  211. package/build-module/hooks/content-lock-ui.js +8 -11
  212. package/build-module/hooks/content-lock-ui.js.map +1 -1
  213. package/build-module/hooks/duotone.js +1 -1
  214. package/build-module/hooks/duotone.js.map +1 -1
  215. package/build-module/hooks/index.native.js +1 -0
  216. package/build-module/hooks/index.native.js.map +1 -1
  217. package/build-module/hooks/layout.js +2 -2
  218. package/build-module/hooks/layout.js.map +1 -1
  219. package/build-module/hooks/position.js +1 -1
  220. package/build-module/hooks/position.js.map +1 -1
  221. package/build-module/hooks/style.js +1 -1
  222. package/build-module/hooks/style.js.map +1 -1
  223. package/build-module/hooks/use-editor-wrapper-styles.native.js +242 -0
  224. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -0
  225. package/build-module/hooks/use-typography-props.js +14 -10
  226. package/build-module/hooks/use-typography-props.js.map +1 -1
  227. package/build-module/index.native.js +6 -0
  228. package/build-module/index.native.js.map +1 -0
  229. package/build-module/utils/use-should-contextual-toolbar-show.js +16 -12
  230. package/build-module/utils/use-should-contextual-toolbar-show.js.map +1 -1
  231. package/build-style/content-rtl.css +0 -1
  232. package/build-style/content.css +0 -1
  233. package/build-style/style-rtl.css +37 -13
  234. package/build-style/style.css +37 -13
  235. package/package.json +31 -31
  236. package/src/components/block-breadcrumb/style.scss +2 -1
  237. package/src/components/block-controls/slot.js +8 -4
  238. package/src/components/block-controls/slot.native.js +6 -1
  239. package/src/components/block-draggable/index.js +10 -6
  240. package/src/components/block-draggable/use-scroll-when-dragging.js +8 -2
  241. package/src/components/block-list/block-invalid-warning.native.js +17 -9
  242. package/src/components/block-list/block-list-item-cell.native.js +10 -1
  243. package/src/components/block-list/block-list-item.native.js +180 -208
  244. package/src/components/block-list/block-outline.native.js +58 -0
  245. package/src/components/block-list/block.native.js +564 -523
  246. package/src/components/block-list/content.scss +0 -1
  247. package/src/components/block-list/index.native.js +229 -298
  248. package/src/components/block-list/insertion-point.native.js +2 -2
  249. package/src/components/block-list/test/block-invalid-warning.native.js +48 -0
  250. package/src/components/block-list/test/index.native.js +205 -0
  251. package/src/components/block-mobile-toolbar/block-actions-menu.native.js +3 -1
  252. package/src/components/block-pattern-setup/style.scss +1 -4
  253. package/src/components/block-patterns-list/style.scss +1 -4
  254. package/src/components/block-settings-menu/block-settings-dropdown.js +10 -17
  255. package/src/components/block-settings-menu-controls/index.js +24 -4
  256. package/src/components/block-styles/style.scss +4 -4
  257. package/src/components/block-tools/block-contextual-toolbar.js +28 -62
  258. package/src/components/block-tools/selected-block-popover.js +3 -5
  259. package/src/components/block-tools/style.scss +8 -0
  260. package/src/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +16 -2
  261. package/src/components/global-styles/advanced-panel.js +82 -0
  262. package/src/components/global-styles/color-panel.js +6 -1
  263. package/src/components/global-styles/dimensions-panel.js +6 -6
  264. package/src/components/global-styles/hooks.js +1 -5
  265. package/src/components/global-styles/index.js +6 -1
  266. package/src/components/global-styles/style.scss +14 -0
  267. package/src/components/global-styles/test/utils.js +57 -1
  268. package/src/components/global-styles/typography-panel.js +1 -1
  269. package/src/components/global-styles/use-global-styles-output.js +21 -3
  270. package/src/components/global-styles/utils.js +27 -0
  271. package/src/components/image-editor/use-save-image.js +20 -9
  272. package/src/components/inserter-draggable-blocks/index.js +4 -0
  273. package/src/components/inspector-controls/fill.js +1 -1
  274. package/src/components/inspector-controls/fill.native.js +1 -1
  275. package/src/components/inspector-controls/slot.js +4 -9
  276. package/src/components/inspector-controls/slot.native.js +1 -1
  277. package/src/components/line-height-control/index.js +7 -2
  278. package/src/components/line-height-control/stories/index.js +1 -1
  279. package/src/components/link-control/test/index.js +42 -0
  280. package/src/components/link-control/use-internal-input-value.js +8 -7
  281. package/src/components/list-view/block-contents.js +26 -20
  282. package/src/components/list-view/block-select-button.js +5 -1
  283. package/src/components/list-view/block.js +5 -2
  284. package/src/components/list-view/index.js +26 -14
  285. package/src/components/list-view/style.scss +5 -2
  286. package/src/components/list-view/test/use-list-view-drop-zone.js +88 -12
  287. package/src/components/list-view/use-list-view-drop-zone.js +194 -11
  288. package/src/components/media-placeholder/index.js +74 -1
  289. package/src/components/multi-selection-inspector/index.js +2 -2
  290. package/src/components/off-canvas-editor/leaf-more-menu.js +2 -1
  291. package/src/components/preview-options/index.js +9 -2
  292. package/src/components/spacing-sizes-control/spacing-input-control.js +1 -0
  293. package/src/components/url-input/index.js +1 -2
  294. package/src/hooks/align.js +2 -1
  295. package/src/hooks/border.js +2 -1
  296. package/src/hooks/color.js +2 -1
  297. package/src/hooks/content-lock-ui.js +3 -15
  298. package/src/hooks/duotone.js +1 -0
  299. package/src/hooks/index.native.js +1 -0
  300. package/src/hooks/layout.js +4 -2
  301. package/src/hooks/position.js +2 -1
  302. package/src/hooks/style.js +2 -1
  303. package/src/hooks/test/use-editor-wrapper-styles.native.js +282 -0
  304. package/src/hooks/test/use-typography-props.js +47 -2
  305. package/src/hooks/use-editor-wrapper-styles.native.js +250 -0
  306. package/src/hooks/use-editor-wrapper-styles.native.scss +11 -0
  307. package/src/hooks/use-typography-props.js +10 -11
  308. package/src/index.native.js +6 -0
  309. package/src/utils/use-should-contextual-toolbar-show.js +19 -9
  310. package/tsconfig.json +1 -0
  311. package/tsconfig.tsbuildinfo +1 -1
@@ -2,6 +2,7 @@
2
2
  * External dependencies
3
3
  */
4
4
  import { get } from 'lodash';
5
+ import fastDeepEqual from 'fast-deep-equal/es6';
5
6
  /**
6
7
  * Internal dependencies
7
8
  */
@@ -321,4 +322,28 @@ export function scopeSelector(scope, selector) {
321
322
  });
322
323
  return selectorsScoped.join(', ');
323
324
  }
325
+ /**
326
+ * Compares global style variations according to their styles and settings properties.
327
+ *
328
+ * @example
329
+ * ```js
330
+ * const globalStyles = { styles: { typography: { fontSize: '10px' } }, settings: {} };
331
+ * const variation = { styles: { typography: { fontSize: '10000px' } }, settings: {} };
332
+ * const isEqual = areGlobalStyleConfigsEqual( globalStyles, variation );
333
+ * // false
334
+ * ```
335
+ *
336
+ * @param {Object} original A global styles object.
337
+ * @param {Object} variation A global styles object.
338
+ *
339
+ * @return {boolean} Whether `original` and `variation` match.
340
+ */
341
+
342
+ export function areGlobalStyleConfigsEqual(original, variation) {
343
+ if (typeof original !== 'object' || typeof variation !== 'object') {
344
+ return original === variation;
345
+ }
346
+
347
+ return fastDeepEqual(original === null || original === void 0 ? void 0 : original.styles, variation === null || variation === void 0 ? void 0 : variation.styles) && fastDeepEqual(original === null || original === void 0 ? void 0 : original.settings, variation === null || variation === void 0 ? void 0 : variation.settings);
348
+ }
324
349
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/global-styles/utils.js"],"names":["get","getTypographyFontSizeValue","ROOT_BLOCK_NAME","ROOT_BLOCK_SELECTOR","ROOT_BLOCK_SUPPORTS","PRESET_METADATA","path","valueKey","cssVarInfix","classes","classSuffix","propertyName","valueFunc","slug","preset","typography","typographySettings","size","STYLE_PATH_TO_CSS_VAR_INFIX","shadow","STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE","findInPresetsBy","features","blockName","presetPath","presetProperty","presetValueValue","orderedPresetsByOrigin","presetByOrigin","origins","origin","presets","presetObject","find","highestPresetObjectWithSameSlug","undefined","getPresetVariableFromValue","variableStylePath","presetPropertyValue","metadata","data","getValueFromPresetVariable","variable","presetType","settings","result","getValueFromVariable","getValueFromCustomVariable","ref","refPath","split","USER_VALUE_PREFIX","THEME_VALUE_PREFIX","THEME_VALUE_SUFFIX","parsedVar","startsWith","slice","length","endsWith","type","scopeSelector","scope","selector","scopes","selectors","selectorsScoped","forEach","outer","inner","push","trim","join"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * Internal dependencies\n */\nimport { getTypographyFontSizeValue } from './typography-utils';\n\n/* Supporting data. */\nexport const ROOT_BLOCK_NAME = 'root';\nexport const ROOT_BLOCK_SELECTOR = 'body';\nexport const ROOT_BLOCK_SUPPORTS = [\n\t'background',\n\t'backgroundColor',\n\t'color',\n\t'linkColor',\n\t'captionColor',\n\t'buttonColor',\n\t'headingColor',\n\t'fontFamily',\n\t'fontSize',\n\t'fontStyle',\n\t'fontWeight',\n\t'lineHeight',\n\t'textDecoration',\n\t'textTransform',\n\t'padding',\n];\n\nexport const PRESET_METADATA = [\n\t{\n\t\tpath: [ 'color', 'palette' ],\n\t\tvalueKey: 'color',\n\t\tcssVarInfix: 'color',\n\t\tclasses: [\n\t\t\t{ classSuffix: 'color', propertyName: 'color' },\n\t\t\t{\n\t\t\t\tclassSuffix: 'background-color',\n\t\t\t\tpropertyName: 'background-color',\n\t\t\t},\n\t\t\t{\n\t\t\t\tclassSuffix: 'border-color',\n\t\t\t\tpropertyName: 'border-color',\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tpath: [ 'color', 'gradients' ],\n\t\tvalueKey: 'gradient',\n\t\tcssVarInfix: 'gradient',\n\t\tclasses: [\n\t\t\t{\n\t\t\t\tclassSuffix: 'gradient-background',\n\t\t\t\tpropertyName: 'background',\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tpath: [ 'color', 'duotone' ],\n\t\tvalueKey: 'colors',\n\t\tcssVarInfix: 'duotone',\n\t\tvalueFunc: ( { slug } ) => `url( '#wp-duotone-${ slug }' )`,\n\t\tclasses: [],\n\t},\n\t{\n\t\tpath: [ 'shadow', 'presets' ],\n\t\tvalueKey: 'shadow',\n\t\tcssVarInfix: 'shadow',\n\t\tclasses: [],\n\t},\n\t{\n\t\tpath: [ 'typography', 'fontSizes' ],\n\t\tvalueFunc: ( preset, { typography: typographySettings } ) =>\n\t\t\tgetTypographyFontSizeValue( preset, typographySettings ),\n\t\tvalueKey: 'size',\n\t\tcssVarInfix: 'font-size',\n\t\tclasses: [ { classSuffix: 'font-size', propertyName: 'font-size' } ],\n\t},\n\t{\n\t\tpath: [ 'typography', 'fontFamilies' ],\n\t\tvalueKey: 'fontFamily',\n\t\tcssVarInfix: 'font-family',\n\t\tclasses: [\n\t\t\t{ classSuffix: 'font-family', propertyName: 'font-family' },\n\t\t],\n\t},\n\t{\n\t\tpath: [ 'spacing', 'spacingSizes' ],\n\t\tvalueKey: 'size',\n\t\tcssVarInfix: 'spacing',\n\t\tvalueFunc: ( { size } ) => size,\n\t\tclasses: [],\n\t},\n];\n\nexport const STYLE_PATH_TO_CSS_VAR_INFIX = {\n\t'color.background': 'color',\n\t'color.text': 'color',\n\t'filter.duotone': 'duotone',\n\t'elements.link.color.text': 'color',\n\t'elements.link.:hover.color.text': 'color',\n\t'elements.link.typography.fontFamily': 'font-family',\n\t'elements.link.typography.fontSize': 'font-size',\n\t'elements.button.color.text': 'color',\n\t'elements.button.color.background': 'color',\n\t'elements.caption.color.text': 'color',\n\t'elements.button.typography.fontFamily': 'font-family',\n\t'elements.button.typography.fontSize': 'font-size',\n\t'elements.heading.color': 'color',\n\t'elements.heading.color.background': 'color',\n\t'elements.heading.typography.fontFamily': 'font-family',\n\t'elements.heading.gradient': 'gradient',\n\t'elements.heading.color.gradient': 'gradient',\n\t'elements.h1.color': 'color',\n\t'elements.h1.color.background': 'color',\n\t'elements.h1.typography.fontFamily': 'font-family',\n\t'elements.h1.color.gradient': 'gradient',\n\t'elements.h2.color': 'color',\n\t'elements.h2.color.background': 'color',\n\t'elements.h2.typography.fontFamily': 'font-family',\n\t'elements.h2.color.gradient': 'gradient',\n\t'elements.h3.color': 'color',\n\t'elements.h3.color.background': 'color',\n\t'elements.h3.typography.fontFamily': 'font-family',\n\t'elements.h3.color.gradient': 'gradient',\n\t'elements.h4.color': 'color',\n\t'elements.h4.color.background': 'color',\n\t'elements.h4.typography.fontFamily': 'font-family',\n\t'elements.h4.color.gradient': 'gradient',\n\t'elements.h5.color': 'color',\n\t'elements.h5.color.background': 'color',\n\t'elements.h5.typography.fontFamily': 'font-family',\n\t'elements.h5.color.gradient': 'gradient',\n\t'elements.h6.color': 'color',\n\t'elements.h6.color.background': 'color',\n\t'elements.h6.typography.fontFamily': 'font-family',\n\t'elements.h6.color.gradient': 'gradient',\n\t'color.gradient': 'gradient',\n\tshadow: 'shadow',\n\t'typography.fontSize': 'font-size',\n\t'typography.fontFamily': 'font-family',\n};\n\n// A static list of block attributes that store global style preset slugs.\nexport const STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {\n\t'color.background': 'backgroundColor',\n\t'color.text': 'textColor',\n\t'color.gradient': 'gradient',\n\t'typography.fontSize': 'fontSize',\n\t'typography.fontFamily': 'fontFamily',\n};\n\nfunction findInPresetsBy(\n\tfeatures,\n\tblockName,\n\tpresetPath,\n\tpresetProperty,\n\tpresetValueValue\n) {\n\t// Block presets take priority above root level presets.\n\tconst orderedPresetsByOrigin = [\n\t\tget( features, [ 'blocks', blockName, ...presetPath ] ),\n\t\tget( features, presetPath ),\n\t];\n\n\tfor ( const presetByOrigin of orderedPresetsByOrigin ) {\n\t\tif ( presetByOrigin ) {\n\t\t\t// Preset origins ordered by priority.\n\t\t\tconst origins = [ 'custom', 'theme', 'default' ];\n\t\t\tfor ( const origin of origins ) {\n\t\t\t\tconst presets = presetByOrigin[ origin ];\n\t\t\t\tif ( presets ) {\n\t\t\t\t\tconst presetObject = presets.find(\n\t\t\t\t\t\t( preset ) =>\n\t\t\t\t\t\t\tpreset[ presetProperty ] === presetValueValue\n\t\t\t\t\t);\n\t\t\t\t\tif ( presetObject ) {\n\t\t\t\t\t\tif ( presetProperty === 'slug' ) {\n\t\t\t\t\t\t\treturn presetObject;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// If there is a highest priority preset with the same slug but different value the preset we found was overwritten and should be ignored.\n\t\t\t\t\t\tconst highestPresetObjectWithSameSlug = findInPresetsBy(\n\t\t\t\t\t\t\tfeatures,\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\tpresetPath,\n\t\t\t\t\t\t\t'slug',\n\t\t\t\t\t\t\tpresetObject.slug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\thighestPresetObjectWithSameSlug[\n\t\t\t\t\t\t\t\tpresetProperty\n\t\t\t\t\t\t\t] === presetObject[ presetProperty ]\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn presetObject;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport function getPresetVariableFromValue(\n\tfeatures,\n\tblockName,\n\tvariableStylePath,\n\tpresetPropertyValue\n) {\n\tif ( ! presetPropertyValue ) {\n\t\treturn presetPropertyValue;\n\t}\n\n\tconst cssVarInfix = STYLE_PATH_TO_CSS_VAR_INFIX[ variableStylePath ];\n\n\tconst metadata = PRESET_METADATA.find(\n\t\t( data ) => data.cssVarInfix === cssVarInfix\n\t);\n\n\tif ( ! metadata ) {\n\t\t// The property doesn't have preset data\n\t\t// so the value should be returned as it is.\n\t\treturn presetPropertyValue;\n\t}\n\tconst { valueKey, path } = metadata;\n\n\tconst presetObject = findInPresetsBy(\n\t\tfeatures,\n\t\tblockName,\n\t\tpath,\n\t\tvalueKey,\n\t\tpresetPropertyValue\n\t);\n\n\tif ( ! presetObject ) {\n\t\t// Value wasn't found in the presets,\n\t\t// so it must be a custom value.\n\t\treturn presetPropertyValue;\n\t}\n\n\treturn `var:preset|${ cssVarInfix }|${ presetObject.slug }`;\n}\n\nfunction getValueFromPresetVariable(\n\tfeatures,\n\tblockName,\n\tvariable,\n\t[ presetType, slug ]\n) {\n\tconst metadata = PRESET_METADATA.find(\n\t\t( data ) => data.cssVarInfix === presetType\n\t);\n\tif ( ! metadata ) {\n\t\treturn variable;\n\t}\n\n\tconst presetObject = findInPresetsBy(\n\t\tfeatures.settings,\n\t\tblockName,\n\t\tmetadata.path,\n\t\t'slug',\n\t\tslug\n\t);\n\n\tif ( presetObject ) {\n\t\tconst { valueKey } = metadata;\n\t\tconst result = presetObject[ valueKey ];\n\t\treturn getValueFromVariable( features, blockName, result );\n\t}\n\n\treturn variable;\n}\n\nfunction getValueFromCustomVariable( features, blockName, variable, path ) {\n\tconst result =\n\t\tget( features.settings, [ 'blocks', blockName, 'custom', ...path ] ) ??\n\t\tget( features.settings, [ 'custom', ...path ] );\n\tif ( ! result ) {\n\t\treturn variable;\n\t}\n\t// A variable may reference another variable so we need recursion until we find the value.\n\treturn getValueFromVariable( features, blockName, result );\n}\n\n/**\n * Attempts to fetch the value of a theme.json CSS variable.\n *\n * @param {Object} features GlobalStylesContext config, e.g., user, base or merged. Represents the theme.json tree.\n * @param {string} blockName The name of a block as represented in the styles property. E.g., 'root' for root-level, and 'core/${blockName}' for blocks.\n * @param {string|*} variable An incoming style value. A CSS var value is expected, but it could be any value.\n * @return {string|*|{ref}} The value of the CSS var, if found. If not found, the passed variable argument.\n */\nexport function getValueFromVariable( features, blockName, variable ) {\n\tif ( ! variable || typeof variable !== 'string' ) {\n\t\tif ( variable?.ref && typeof variable?.ref === 'string' ) {\n\t\t\tconst refPath = variable.ref.split( '.' );\n\t\t\tvariable = get( features, refPath );\n\t\t\t// Presence of another ref indicates a reference to another dynamic value.\n\t\t\t// Pointing to another dynamic value is not supported.\n\t\t\tif ( ! variable || !! variable?.ref ) {\n\t\t\t\treturn variable;\n\t\t\t}\n\t\t} else {\n\t\t\treturn variable;\n\t\t}\n\t}\n\tconst USER_VALUE_PREFIX = 'var:';\n\tconst THEME_VALUE_PREFIX = 'var(--wp--';\n\tconst THEME_VALUE_SUFFIX = ')';\n\n\tlet parsedVar;\n\n\tif ( variable.startsWith( USER_VALUE_PREFIX ) ) {\n\t\tparsedVar = variable.slice( USER_VALUE_PREFIX.length ).split( '|' );\n\t} else if (\n\t\tvariable.startsWith( THEME_VALUE_PREFIX ) &&\n\t\tvariable.endsWith( THEME_VALUE_SUFFIX )\n\t) {\n\t\tparsedVar = variable\n\t\t\t.slice( THEME_VALUE_PREFIX.length, -THEME_VALUE_SUFFIX.length )\n\t\t\t.split( '--' );\n\t} else {\n\t\t// We don't know how to parse the value: either is raw of uses complex CSS such as `calc(1px * var(--wp--variable) )`\n\t\treturn variable;\n\t}\n\n\tconst [ type, ...path ] = parsedVar;\n\tif ( type === 'preset' ) {\n\t\treturn getValueFromPresetVariable(\n\t\t\tfeatures,\n\t\t\tblockName,\n\t\t\tvariable,\n\t\t\tpath\n\t\t);\n\t}\n\tif ( type === 'custom' ) {\n\t\treturn getValueFromCustomVariable(\n\t\t\tfeatures,\n\t\t\tblockName,\n\t\t\tvariable,\n\t\t\tpath\n\t\t);\n\t}\n\treturn variable;\n}\n\n/**\n * Function that scopes a selector with another one. This works a bit like\n * SCSS nesting except the `&` operator isn't supported.\n *\n * @example\n * ```js\n * const scope = '.a, .b .c';\n * const selector = '> .x, .y';\n * const merged = scopeSelector( scope, selector );\n * // merged is '.a > .x, .a .y, .b .c > .x, .b .c .y'\n * ```\n *\n * @param {string} scope Selector to scope to.\n * @param {string} selector Original selector.\n *\n * @return {string} Scoped selector.\n */\nexport function scopeSelector( scope, selector ) {\n\tconst scopes = scope.split( ',' );\n\tconst selectors = selector.split( ',' );\n\n\tconst selectorsScoped = [];\n\tscopes.forEach( ( outer ) => {\n\t\tselectors.forEach( ( inner ) => {\n\t\t\tselectorsScoped.push( `${ outer.trim() } ${ inner.trim() }` );\n\t\t} );\n\t} );\n\n\treturn selectorsScoped.join( ', ' );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/global-styles/utils.js"],"names":["get","fastDeepEqual","getTypographyFontSizeValue","ROOT_BLOCK_NAME","ROOT_BLOCK_SELECTOR","ROOT_BLOCK_SUPPORTS","PRESET_METADATA","path","valueKey","cssVarInfix","classes","classSuffix","propertyName","valueFunc","slug","preset","typography","typographySettings","size","STYLE_PATH_TO_CSS_VAR_INFIX","shadow","STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE","findInPresetsBy","features","blockName","presetPath","presetProperty","presetValueValue","orderedPresetsByOrigin","presetByOrigin","origins","origin","presets","presetObject","find","highestPresetObjectWithSameSlug","undefined","getPresetVariableFromValue","variableStylePath","presetPropertyValue","metadata","data","getValueFromPresetVariable","variable","presetType","settings","result","getValueFromVariable","getValueFromCustomVariable","ref","refPath","split","USER_VALUE_PREFIX","THEME_VALUE_PREFIX","THEME_VALUE_SUFFIX","parsedVar","startsWith","slice","length","endsWith","type","scopeSelector","scope","selector","scopes","selectors","selectorsScoped","forEach","outer","inner","push","trim","join","areGlobalStyleConfigsEqual","original","variation","styles"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get } from 'lodash';\nimport fastDeepEqual from 'fast-deep-equal/es6';\n\n/**\n * Internal dependencies\n */\nimport { getTypographyFontSizeValue } from './typography-utils';\n\n/* Supporting data. */\nexport const ROOT_BLOCK_NAME = 'root';\nexport const ROOT_BLOCK_SELECTOR = 'body';\nexport const ROOT_BLOCK_SUPPORTS = [\n\t'background',\n\t'backgroundColor',\n\t'color',\n\t'linkColor',\n\t'captionColor',\n\t'buttonColor',\n\t'headingColor',\n\t'fontFamily',\n\t'fontSize',\n\t'fontStyle',\n\t'fontWeight',\n\t'lineHeight',\n\t'textDecoration',\n\t'textTransform',\n\t'padding',\n];\n\nexport const PRESET_METADATA = [\n\t{\n\t\tpath: [ 'color', 'palette' ],\n\t\tvalueKey: 'color',\n\t\tcssVarInfix: 'color',\n\t\tclasses: [\n\t\t\t{ classSuffix: 'color', propertyName: 'color' },\n\t\t\t{\n\t\t\t\tclassSuffix: 'background-color',\n\t\t\t\tpropertyName: 'background-color',\n\t\t\t},\n\t\t\t{\n\t\t\t\tclassSuffix: 'border-color',\n\t\t\t\tpropertyName: 'border-color',\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tpath: [ 'color', 'gradients' ],\n\t\tvalueKey: 'gradient',\n\t\tcssVarInfix: 'gradient',\n\t\tclasses: [\n\t\t\t{\n\t\t\t\tclassSuffix: 'gradient-background',\n\t\t\t\tpropertyName: 'background',\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tpath: [ 'color', 'duotone' ],\n\t\tvalueKey: 'colors',\n\t\tcssVarInfix: 'duotone',\n\t\tvalueFunc: ( { slug } ) => `url( '#wp-duotone-${ slug }' )`,\n\t\tclasses: [],\n\t},\n\t{\n\t\tpath: [ 'shadow', 'presets' ],\n\t\tvalueKey: 'shadow',\n\t\tcssVarInfix: 'shadow',\n\t\tclasses: [],\n\t},\n\t{\n\t\tpath: [ 'typography', 'fontSizes' ],\n\t\tvalueFunc: ( preset, { typography: typographySettings } ) =>\n\t\t\tgetTypographyFontSizeValue( preset, typographySettings ),\n\t\tvalueKey: 'size',\n\t\tcssVarInfix: 'font-size',\n\t\tclasses: [ { classSuffix: 'font-size', propertyName: 'font-size' } ],\n\t},\n\t{\n\t\tpath: [ 'typography', 'fontFamilies' ],\n\t\tvalueKey: 'fontFamily',\n\t\tcssVarInfix: 'font-family',\n\t\tclasses: [\n\t\t\t{ classSuffix: 'font-family', propertyName: 'font-family' },\n\t\t],\n\t},\n\t{\n\t\tpath: [ 'spacing', 'spacingSizes' ],\n\t\tvalueKey: 'size',\n\t\tcssVarInfix: 'spacing',\n\t\tvalueFunc: ( { size } ) => size,\n\t\tclasses: [],\n\t},\n];\n\nexport const STYLE_PATH_TO_CSS_VAR_INFIX = {\n\t'color.background': 'color',\n\t'color.text': 'color',\n\t'filter.duotone': 'duotone',\n\t'elements.link.color.text': 'color',\n\t'elements.link.:hover.color.text': 'color',\n\t'elements.link.typography.fontFamily': 'font-family',\n\t'elements.link.typography.fontSize': 'font-size',\n\t'elements.button.color.text': 'color',\n\t'elements.button.color.background': 'color',\n\t'elements.caption.color.text': 'color',\n\t'elements.button.typography.fontFamily': 'font-family',\n\t'elements.button.typography.fontSize': 'font-size',\n\t'elements.heading.color': 'color',\n\t'elements.heading.color.background': 'color',\n\t'elements.heading.typography.fontFamily': 'font-family',\n\t'elements.heading.gradient': 'gradient',\n\t'elements.heading.color.gradient': 'gradient',\n\t'elements.h1.color': 'color',\n\t'elements.h1.color.background': 'color',\n\t'elements.h1.typography.fontFamily': 'font-family',\n\t'elements.h1.color.gradient': 'gradient',\n\t'elements.h2.color': 'color',\n\t'elements.h2.color.background': 'color',\n\t'elements.h2.typography.fontFamily': 'font-family',\n\t'elements.h2.color.gradient': 'gradient',\n\t'elements.h3.color': 'color',\n\t'elements.h3.color.background': 'color',\n\t'elements.h3.typography.fontFamily': 'font-family',\n\t'elements.h3.color.gradient': 'gradient',\n\t'elements.h4.color': 'color',\n\t'elements.h4.color.background': 'color',\n\t'elements.h4.typography.fontFamily': 'font-family',\n\t'elements.h4.color.gradient': 'gradient',\n\t'elements.h5.color': 'color',\n\t'elements.h5.color.background': 'color',\n\t'elements.h5.typography.fontFamily': 'font-family',\n\t'elements.h5.color.gradient': 'gradient',\n\t'elements.h6.color': 'color',\n\t'elements.h6.color.background': 'color',\n\t'elements.h6.typography.fontFamily': 'font-family',\n\t'elements.h6.color.gradient': 'gradient',\n\t'color.gradient': 'gradient',\n\tshadow: 'shadow',\n\t'typography.fontSize': 'font-size',\n\t'typography.fontFamily': 'font-family',\n};\n\n// A static list of block attributes that store global style preset slugs.\nexport const STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {\n\t'color.background': 'backgroundColor',\n\t'color.text': 'textColor',\n\t'color.gradient': 'gradient',\n\t'typography.fontSize': 'fontSize',\n\t'typography.fontFamily': 'fontFamily',\n};\n\nfunction findInPresetsBy(\n\tfeatures,\n\tblockName,\n\tpresetPath,\n\tpresetProperty,\n\tpresetValueValue\n) {\n\t// Block presets take priority above root level presets.\n\tconst orderedPresetsByOrigin = [\n\t\tget( features, [ 'blocks', blockName, ...presetPath ] ),\n\t\tget( features, presetPath ),\n\t];\n\n\tfor ( const presetByOrigin of orderedPresetsByOrigin ) {\n\t\tif ( presetByOrigin ) {\n\t\t\t// Preset origins ordered by priority.\n\t\t\tconst origins = [ 'custom', 'theme', 'default' ];\n\t\t\tfor ( const origin of origins ) {\n\t\t\t\tconst presets = presetByOrigin[ origin ];\n\t\t\t\tif ( presets ) {\n\t\t\t\t\tconst presetObject = presets.find(\n\t\t\t\t\t\t( preset ) =>\n\t\t\t\t\t\t\tpreset[ presetProperty ] === presetValueValue\n\t\t\t\t\t);\n\t\t\t\t\tif ( presetObject ) {\n\t\t\t\t\t\tif ( presetProperty === 'slug' ) {\n\t\t\t\t\t\t\treturn presetObject;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// If there is a highest priority preset with the same slug but different value the preset we found was overwritten and should be ignored.\n\t\t\t\t\t\tconst highestPresetObjectWithSameSlug = findInPresetsBy(\n\t\t\t\t\t\t\tfeatures,\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\tpresetPath,\n\t\t\t\t\t\t\t'slug',\n\t\t\t\t\t\t\tpresetObject.slug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\thighestPresetObjectWithSameSlug[\n\t\t\t\t\t\t\t\tpresetProperty\n\t\t\t\t\t\t\t] === presetObject[ presetProperty ]\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn presetObject;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport function getPresetVariableFromValue(\n\tfeatures,\n\tblockName,\n\tvariableStylePath,\n\tpresetPropertyValue\n) {\n\tif ( ! presetPropertyValue ) {\n\t\treturn presetPropertyValue;\n\t}\n\n\tconst cssVarInfix = STYLE_PATH_TO_CSS_VAR_INFIX[ variableStylePath ];\n\n\tconst metadata = PRESET_METADATA.find(\n\t\t( data ) => data.cssVarInfix === cssVarInfix\n\t);\n\n\tif ( ! metadata ) {\n\t\t// The property doesn't have preset data\n\t\t// so the value should be returned as it is.\n\t\treturn presetPropertyValue;\n\t}\n\tconst { valueKey, path } = metadata;\n\n\tconst presetObject = findInPresetsBy(\n\t\tfeatures,\n\t\tblockName,\n\t\tpath,\n\t\tvalueKey,\n\t\tpresetPropertyValue\n\t);\n\n\tif ( ! presetObject ) {\n\t\t// Value wasn't found in the presets,\n\t\t// so it must be a custom value.\n\t\treturn presetPropertyValue;\n\t}\n\n\treturn `var:preset|${ cssVarInfix }|${ presetObject.slug }`;\n}\n\nfunction getValueFromPresetVariable(\n\tfeatures,\n\tblockName,\n\tvariable,\n\t[ presetType, slug ]\n) {\n\tconst metadata = PRESET_METADATA.find(\n\t\t( data ) => data.cssVarInfix === presetType\n\t);\n\tif ( ! metadata ) {\n\t\treturn variable;\n\t}\n\n\tconst presetObject = findInPresetsBy(\n\t\tfeatures.settings,\n\t\tblockName,\n\t\tmetadata.path,\n\t\t'slug',\n\t\tslug\n\t);\n\n\tif ( presetObject ) {\n\t\tconst { valueKey } = metadata;\n\t\tconst result = presetObject[ valueKey ];\n\t\treturn getValueFromVariable( features, blockName, result );\n\t}\n\n\treturn variable;\n}\n\nfunction getValueFromCustomVariable( features, blockName, variable, path ) {\n\tconst result =\n\t\tget( features.settings, [ 'blocks', blockName, 'custom', ...path ] ) ??\n\t\tget( features.settings, [ 'custom', ...path ] );\n\tif ( ! result ) {\n\t\treturn variable;\n\t}\n\t// A variable may reference another variable so we need recursion until we find the value.\n\treturn getValueFromVariable( features, blockName, result );\n}\n\n/**\n * Attempts to fetch the value of a theme.json CSS variable.\n *\n * @param {Object} features GlobalStylesContext config, e.g., user, base or merged. Represents the theme.json tree.\n * @param {string} blockName The name of a block as represented in the styles property. E.g., 'root' for root-level, and 'core/${blockName}' for blocks.\n * @param {string|*} variable An incoming style value. A CSS var value is expected, but it could be any value.\n * @return {string|*|{ref}} The value of the CSS var, if found. If not found, the passed variable argument.\n */\nexport function getValueFromVariable( features, blockName, variable ) {\n\tif ( ! variable || typeof variable !== 'string' ) {\n\t\tif ( variable?.ref && typeof variable?.ref === 'string' ) {\n\t\t\tconst refPath = variable.ref.split( '.' );\n\t\t\tvariable = get( features, refPath );\n\t\t\t// Presence of another ref indicates a reference to another dynamic value.\n\t\t\t// Pointing to another dynamic value is not supported.\n\t\t\tif ( ! variable || !! variable?.ref ) {\n\t\t\t\treturn variable;\n\t\t\t}\n\t\t} else {\n\t\t\treturn variable;\n\t\t}\n\t}\n\tconst USER_VALUE_PREFIX = 'var:';\n\tconst THEME_VALUE_PREFIX = 'var(--wp--';\n\tconst THEME_VALUE_SUFFIX = ')';\n\n\tlet parsedVar;\n\n\tif ( variable.startsWith( USER_VALUE_PREFIX ) ) {\n\t\tparsedVar = variable.slice( USER_VALUE_PREFIX.length ).split( '|' );\n\t} else if (\n\t\tvariable.startsWith( THEME_VALUE_PREFIX ) &&\n\t\tvariable.endsWith( THEME_VALUE_SUFFIX )\n\t) {\n\t\tparsedVar = variable\n\t\t\t.slice( THEME_VALUE_PREFIX.length, -THEME_VALUE_SUFFIX.length )\n\t\t\t.split( '--' );\n\t} else {\n\t\t// We don't know how to parse the value: either is raw of uses complex CSS such as `calc(1px * var(--wp--variable) )`\n\t\treturn variable;\n\t}\n\n\tconst [ type, ...path ] = parsedVar;\n\tif ( type === 'preset' ) {\n\t\treturn getValueFromPresetVariable(\n\t\t\tfeatures,\n\t\t\tblockName,\n\t\t\tvariable,\n\t\t\tpath\n\t\t);\n\t}\n\tif ( type === 'custom' ) {\n\t\treturn getValueFromCustomVariable(\n\t\t\tfeatures,\n\t\t\tblockName,\n\t\t\tvariable,\n\t\t\tpath\n\t\t);\n\t}\n\treturn variable;\n}\n\n/**\n * Function that scopes a selector with another one. This works a bit like\n * SCSS nesting except the `&` operator isn't supported.\n *\n * @example\n * ```js\n * const scope = '.a, .b .c';\n * const selector = '> .x, .y';\n * const merged = scopeSelector( scope, selector );\n * // merged is '.a > .x, .a .y, .b .c > .x, .b .c .y'\n * ```\n *\n * @param {string} scope Selector to scope to.\n * @param {string} selector Original selector.\n *\n * @return {string} Scoped selector.\n */\nexport function scopeSelector( scope, selector ) {\n\tconst scopes = scope.split( ',' );\n\tconst selectors = selector.split( ',' );\n\n\tconst selectorsScoped = [];\n\tscopes.forEach( ( outer ) => {\n\t\tselectors.forEach( ( inner ) => {\n\t\t\tselectorsScoped.push( `${ outer.trim() } ${ inner.trim() }` );\n\t\t} );\n\t} );\n\n\treturn selectorsScoped.join( ', ' );\n}\n\n/**\n * Compares global style variations according to their styles and settings properties.\n *\n * @example\n * ```js\n * const globalStyles = { styles: { typography: { fontSize: '10px' } }, settings: {} };\n * const variation = { styles: { typography: { fontSize: '10000px' } }, settings: {} };\n * const isEqual = areGlobalStyleConfigsEqual( globalStyles, variation );\n * // false\n * ```\n *\n * @param {Object} original A global styles object.\n * @param {Object} variation A global styles object.\n *\n * @return {boolean} Whether `original` and `variation` match.\n */\nexport function areGlobalStyleConfigsEqual( original, variation ) {\n\tif ( typeof original !== 'object' || typeof variation !== 'object' ) {\n\t\treturn original === variation;\n\t}\n\treturn (\n\t\tfastDeepEqual( original?.styles, variation?.styles ) &&\n\t\tfastDeepEqual( original?.settings, variation?.settings )\n\t);\n}\n"]}
@@ -31,22 +31,38 @@ export default function useSaveImage(_ref) {
31
31
  }, [setIsInProgress, onFinishEditing]);
32
32
  const apply = useCallback(() => {
33
33
  setIsInProgress(true);
34
- let attrs = {}; // The crop script may return some very small, sub-pixel values when the image was not cropped.
34
+ const modifiers = [];
35
+
36
+ if (rotation > 0) {
37
+ modifiers.push({
38
+ type: 'rotate',
39
+ args: {
40
+ angle: rotation
41
+ }
42
+ });
43
+ } // The crop script may return some very small, sub-pixel values when the image was not cropped.
35
44
  // Crop only when the new size has changed by more than 0.1%.
36
45
 
37
- if (crop.width < 99.9 || crop.height < 99.9) {
38
- attrs = crop;
39
- }
40
46
 
41
- if (rotation > 0) {
42
- attrs.rotation = rotation;
47
+ if (crop.width < 99.9 || crop.height < 99.9) {
48
+ modifiers.push({
49
+ type: 'crop',
50
+ args: {
51
+ left: crop.x,
52
+ top: crop.y,
53
+ width: crop.width,
54
+ height: crop.height
55
+ }
56
+ });
43
57
  }
44
58
 
45
- attrs.src = url;
46
59
  apiFetch({
47
60
  path: `/wp/v2/media/${id}/edit`,
48
61
  method: 'POST',
49
- data: attrs
62
+ data: {
63
+ src: url,
64
+ modifiers
65
+ }
50
66
  }).then(response => {
51
67
  onSaveImage({
52
68
  id: response.id,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/image-editor/use-save-image.js"],"names":["apiFetch","useDispatch","useCallback","useMemo","useState","__","sprintf","store","noticesStore","__unstableStripHTML","stripHTML","useSaveImage","crop","rotation","height","width","aspect","url","id","onSaveImage","onFinishEditing","createErrorNotice","isInProgress","setIsInProgress","cancel","apply","attrs","src","path","method","data","then","response","source_url","undefined","catch","error","message","type","finally"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n// Disable Reason: Needs to be refactored.\n// eslint-disable-next-line no-restricted-imports\nimport apiFetch from '@wordpress/api-fetch';\nimport { useDispatch } from '@wordpress/data';\nimport { useCallback, useMemo, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\nexport default function useSaveImage( {\n\tcrop,\n\trotation,\n\theight,\n\twidth,\n\taspect,\n\turl,\n\tid,\n\tonSaveImage,\n\tonFinishEditing,\n} ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst [ isInProgress, setIsInProgress ] = useState( false );\n\n\tconst cancel = useCallback( () => {\n\t\tsetIsInProgress( false );\n\t\tonFinishEditing();\n\t}, [ setIsInProgress, onFinishEditing ] );\n\n\tconst apply = useCallback( () => {\n\t\tsetIsInProgress( true );\n\n\t\tlet attrs = {};\n\n\t\t// The crop script may return some very small, sub-pixel values when the image was not cropped.\n\t\t// Crop only when the new size has changed by more than 0.1%.\n\t\tif ( crop.width < 99.9 || crop.height < 99.9 ) {\n\t\t\tattrs = crop;\n\t\t}\n\n\t\tif ( rotation > 0 ) {\n\t\t\tattrs.rotation = rotation;\n\t\t}\n\n\t\tattrs.src = url;\n\n\t\tapiFetch( {\n\t\t\tpath: `/wp/v2/media/${ id }/edit`,\n\t\t\tmethod: 'POST',\n\t\t\tdata: attrs,\n\t\t} )\n\t\t\t.then( ( response ) => {\n\t\t\t\tonSaveImage( {\n\t\t\t\t\tid: response.id,\n\t\t\t\t\turl: response.source_url,\n\t\t\t\t\theight: height && width ? width / aspect : undefined,\n\t\t\t\t} );\n\t\t\t} )\n\t\t\t.catch( ( error ) => {\n\t\t\t\tcreateErrorNotice(\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t/* translators: 1. Error message */\n\t\t\t\t\t\t__( 'Could not edit image. %s' ),\n\t\t\t\t\t\tstripHTML( error.message )\n\t\t\t\t\t),\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'image-editing-error',\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t} )\n\t\t\t.finally( () => {\n\t\t\t\tsetIsInProgress( false );\n\t\t\t\tonFinishEditing();\n\t\t\t} );\n\t}, [\n\t\tsetIsInProgress,\n\t\tcrop,\n\t\trotation,\n\t\theight,\n\t\twidth,\n\t\taspect,\n\t\turl,\n\t\tonSaveImage,\n\t\tcreateErrorNotice,\n\t\tsetIsInProgress,\n\t\tonFinishEditing,\n\t] );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tisInProgress,\n\t\t\tapply,\n\t\t\tcancel,\n\t\t} ),\n\t\t[ isInProgress, apply, cancel ]\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/image-editor/use-save-image.js"],"names":["apiFetch","useDispatch","useCallback","useMemo","useState","__","sprintf","store","noticesStore","__unstableStripHTML","stripHTML","useSaveImage","crop","rotation","height","width","aspect","url","id","onSaveImage","onFinishEditing","createErrorNotice","isInProgress","setIsInProgress","cancel","apply","modifiers","push","type","args","angle","left","x","top","y","path","method","data","src","then","response","source_url","undefined","catch","error","message","finally"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n// Disable Reason: Needs to be refactored.\n// eslint-disable-next-line no-restricted-imports\nimport apiFetch from '@wordpress/api-fetch';\nimport { useDispatch } from '@wordpress/data';\nimport { useCallback, useMemo, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\nexport default function useSaveImage( {\n\tcrop,\n\trotation,\n\theight,\n\twidth,\n\taspect,\n\turl,\n\tid,\n\tonSaveImage,\n\tonFinishEditing,\n} ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst [ isInProgress, setIsInProgress ] = useState( false );\n\n\tconst cancel = useCallback( () => {\n\t\tsetIsInProgress( false );\n\t\tonFinishEditing();\n\t}, [ setIsInProgress, onFinishEditing ] );\n\n\tconst apply = useCallback( () => {\n\t\tsetIsInProgress( true );\n\n\t\tconst modifiers = [];\n\n\t\tif ( rotation > 0 ) {\n\t\t\tmodifiers.push( {\n\t\t\t\ttype: 'rotate',\n\t\t\t\targs: {\n\t\t\t\t\tangle: rotation,\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\t// The crop script may return some very small, sub-pixel values when the image was not cropped.\n\t\t// Crop only when the new size has changed by more than 0.1%.\n\t\tif ( crop.width < 99.9 || crop.height < 99.9 ) {\n\t\t\tmodifiers.push( {\n\t\t\t\ttype: 'crop',\n\t\t\t\targs: {\n\t\t\t\t\tleft: crop.x,\n\t\t\t\t\ttop: crop.y,\n\t\t\t\t\twidth: crop.width,\n\t\t\t\t\theight: crop.height,\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tapiFetch( {\n\t\t\tpath: `/wp/v2/media/${ id }/edit`,\n\t\t\tmethod: 'POST',\n\t\t\tdata: { src: url, modifiers },\n\t\t} )\n\t\t\t.then( ( response ) => {\n\t\t\t\tonSaveImage( {\n\t\t\t\t\tid: response.id,\n\t\t\t\t\turl: response.source_url,\n\t\t\t\t\theight: height && width ? width / aspect : undefined,\n\t\t\t\t} );\n\t\t\t} )\n\t\t\t.catch( ( error ) => {\n\t\t\t\tcreateErrorNotice(\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t/* translators: 1. Error message */\n\t\t\t\t\t\t__( 'Could not edit image. %s' ),\n\t\t\t\t\t\tstripHTML( error.message )\n\t\t\t\t\t),\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'image-editing-error',\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t} )\n\t\t\t.finally( () => {\n\t\t\t\tsetIsInProgress( false );\n\t\t\t\tonFinishEditing();\n\t\t\t} );\n\t}, [\n\t\tsetIsInProgress,\n\t\tcrop,\n\t\trotation,\n\t\theight,\n\t\twidth,\n\t\taspect,\n\t\turl,\n\t\tonSaveImage,\n\t\tcreateErrorNotice,\n\t\tsetIsInProgress,\n\t\tonFinishEditing,\n\t] );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tisInProgress,\n\t\t\tapply,\n\t\t\tcancel,\n\t\t} ),\n\t\t[ isInProgress, apply, cancel ]\n\t);\n}\n"]}
@@ -4,6 +4,7 @@ import { createElement } from "@wordpress/element";
4
4
  * WordPress dependencies
5
5
  */
6
6
  import { Draggable } from '@wordpress/components';
7
+ import { serialize } from '@wordpress/blocks';
7
8
  /**
8
9
  * Internal dependencies
9
10
  */
@@ -25,6 +26,9 @@ const InserterDraggableBlocks = _ref => {
25
26
  return createElement(Draggable, {
26
27
  __experimentalTransferDataType: "wp-blocks",
27
28
  transferData: transferData,
29
+ onDragStart: event => {
30
+ event.dataTransfer.setData('text/html', serialize(blocks));
31
+ },
28
32
  __experimentalDragComponent: createElement(BlockDraggableChip, {
29
33
  count: blocks.length,
30
34
  icon: icon,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/inserter-draggable-blocks/index.js"],"names":["Draggable","BlockDraggableChip","InserterDraggableBlocks","isEnabled","blocks","icon","children","isPattern","transferData","type","length","onDraggableStart","onDraggableEnd","draggable","onDragStart","undefined","onDragEnd"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,uBAA1B;AACA;AACA;AACA;;AACA,OAAOC,kBAAP,MAA+B,mCAA/B;;AAEA,MAAMC,uBAAuB,GAAG,QAMzB;AAAA,MAN2B;AACjCC,IAAAA,SADiC;AAEjCC,IAAAA,MAFiC;AAGjCC,IAAAA,IAHiC;AAIjCC,IAAAA,QAJiC;AAKjCC,IAAAA;AALiC,GAM3B;AACN,QAAMC,YAAY,GAAG;AACpBC,IAAAA,IAAI,EAAE,UADc;AAEpBL,IAAAA;AAFoB,GAArB;AAKA,SACC,cAAC,SAAD;AACC,IAAA,8BAA8B,EAAC,WADhC;AAEC,IAAA,YAAY,EAAGI,YAFhB;AAGC,IAAA,2BAA2B,EAC1B,cAAC,kBAAD;AACC,MAAA,KAAK,EAAGJ,MAAM,CAACM,MADhB;AAEC,MAAA,IAAI,EAAGL,IAFR;AAGC,MAAA,SAAS,EAAGE;AAHb;AAJF,KAWG,SAA4C;AAAA,QAA1C;AAAEI,MAAAA,gBAAF;AAAoBC,MAAAA;AAApB,KAA0C;AAC7C,WAAON,QAAQ,CAAE;AAChBO,MAAAA,SAAS,EAAEV,SADK;AAEhBW,MAAAA,WAAW,EAAEX,SAAS,GAAGQ,gBAAH,GAAsBI,SAF5B;AAGhBC,MAAAA,SAAS,EAAEb,SAAS,GAAGS,cAAH,GAAoBG;AAHxB,KAAF,CAAf;AAKA,GAjBF,CADD;AAqBA,CAjCD;;AAmCA,eAAeb,uBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Draggable } from '@wordpress/components';\n/**\n * Internal dependencies\n */\nimport BlockDraggableChip from '../block-draggable/draggable-chip';\n\nconst InserterDraggableBlocks = ( {\n\tisEnabled,\n\tblocks,\n\ticon,\n\tchildren,\n\tisPattern,\n} ) => {\n\tconst transferData = {\n\t\ttype: 'inserter',\n\t\tblocks,\n\t};\n\n\treturn (\n\t\t<Draggable\n\t\t\t__experimentalTransferDataType=\"wp-blocks\"\n\t\t\ttransferData={ transferData }\n\t\t\t__experimentalDragComponent={\n\t\t\t\t<BlockDraggableChip\n\t\t\t\t\tcount={ blocks.length }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisPattern={ isPattern }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ ( { onDraggableStart, onDraggableEnd } ) => {\n\t\t\t\treturn children( {\n\t\t\t\t\tdraggable: isEnabled,\n\t\t\t\t\tonDragStart: isEnabled ? onDraggableStart : undefined,\n\t\t\t\t\tonDragEnd: isEnabled ? onDraggableEnd : undefined,\n\t\t\t\t} );\n\t\t\t} }\n\t\t</Draggable>\n\t);\n};\n\nexport default InserterDraggableBlocks;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/inserter-draggable-blocks/index.js"],"names":["Draggable","serialize","BlockDraggableChip","InserterDraggableBlocks","isEnabled","blocks","icon","children","isPattern","transferData","type","event","dataTransfer","setData","length","onDraggableStart","onDraggableEnd","draggable","onDragStart","undefined","onDragEnd"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,uBAA1B;AACA,SAASC,SAAT,QAA0B,mBAA1B;AACA;AACA;AACA;;AACA,OAAOC,kBAAP,MAA+B,mCAA/B;;AAEA,MAAMC,uBAAuB,GAAG,QAMzB;AAAA,MAN2B;AACjCC,IAAAA,SADiC;AAEjCC,IAAAA,MAFiC;AAGjCC,IAAAA,IAHiC;AAIjCC,IAAAA,QAJiC;AAKjCC,IAAAA;AALiC,GAM3B;AACN,QAAMC,YAAY,GAAG;AACpBC,IAAAA,IAAI,EAAE,UADc;AAEpBL,IAAAA;AAFoB,GAArB;AAKA,SACC,cAAC,SAAD;AACC,IAAA,8BAA8B,EAAC,WADhC;AAEC,IAAA,YAAY,EAAGI,YAFhB;AAGC,IAAA,WAAW,EAAKE,KAAF,IAAa;AAC1BA,MAAAA,KAAK,CAACC,YAAN,CAAmBC,OAAnB,CAA4B,WAA5B,EAAyCZ,SAAS,CAAEI,MAAF,CAAlD;AACA,KALF;AAMC,IAAA,2BAA2B,EAC1B,cAAC,kBAAD;AACC,MAAA,KAAK,EAAGA,MAAM,CAACS,MADhB;AAEC,MAAA,IAAI,EAAGR,IAFR;AAGC,MAAA,SAAS,EAAGE;AAHb;AAPF,KAcG,SAA4C;AAAA,QAA1C;AAAEO,MAAAA,gBAAF;AAAoBC,MAAAA;AAApB,KAA0C;AAC7C,WAAOT,QAAQ,CAAE;AAChBU,MAAAA,SAAS,EAAEb,SADK;AAEhBc,MAAAA,WAAW,EAAEd,SAAS,GAAGW,gBAAH,GAAsBI,SAF5B;AAGhBC,MAAAA,SAAS,EAAEhB,SAAS,GAAGY,cAAH,GAAoBG;AAHxB,KAAF,CAAf;AAKA,GApBF,CADD;AAwBA,CApCD;;AAsCA,eAAehB,uBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Draggable } from '@wordpress/components';\nimport { serialize } from '@wordpress/blocks';\n/**\n * Internal dependencies\n */\nimport BlockDraggableChip from '../block-draggable/draggable-chip';\n\nconst InserterDraggableBlocks = ( {\n\tisEnabled,\n\tblocks,\n\ticon,\n\tchildren,\n\tisPattern,\n} ) => {\n\tconst transferData = {\n\t\ttype: 'inserter',\n\t\tblocks,\n\t};\n\n\treturn (\n\t\t<Draggable\n\t\t\t__experimentalTransferDataType=\"wp-blocks\"\n\t\t\ttransferData={ transferData }\n\t\t\tonDragStart={ ( event ) => {\n\t\t\t\tevent.dataTransfer.setData( 'text/html', serialize( blocks ) );\n\t\t\t} }\n\t\t\t__experimentalDragComponent={\n\t\t\t\t<BlockDraggableChip\n\t\t\t\t\tcount={ blocks.length }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisPattern={ isPattern }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ ( { onDraggableStart, onDraggableEnd } ) => {\n\t\t\t\treturn children( {\n\t\t\t\t\tdraggable: isEnabled,\n\t\t\t\t\tonDragStart: isEnabled ? onDraggableStart : undefined,\n\t\t\t\t\tonDragEnd: isEnabled ? onDraggableEnd : undefined,\n\t\t\t\t} );\n\t\t\t} }\n\t\t</Draggable>\n\t);\n};\n\nexport default InserterDraggableBlocks;\n"]}
@@ -41,7 +41,7 @@ export default function InspectorControlsFill(_ref) {
41
41
  const Fill = (_groups$group = groups[group]) === null || _groups$group === void 0 ? void 0 : _groups$group.Fill;
42
42
 
43
43
  if (!Fill) {
44
- typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControl group "${group}" provided.`) : void 0;
44
+ typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControls group "${group}" provided.`) : void 0;
45
45
  return null;
46
46
  }
47
47
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/fill.js"],"names":["isEmpty","__experimentalStyleProvider","StyleProvider","__experimentalToolsPanelContext","ToolsPanelContext","warning","deprecated","useEffect","useDisplayBlockControls","groups","InspectorControlsFill","children","group","__experimentalGroup","resetAllFilter","since","version","alternative","isDisplayed","Fill","document","fillProps","ToolsPanelInspectorControl","registerResetAllFilter","deregisterResetAllFilter","value"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SACCC,2BAA2B,IAAIC,aADhC,EAECC,+BAA+B,IAAIC,iBAFpC,QAGO,uBAHP;AAIA,OAAOC,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AACA,SAASC,SAAT,QAA0B,oBAA1B;AAEA;AACA;AACA;;AACA,OAAOC,uBAAP,MAAoC,+BAApC;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,qBAAT,OAKX;AAAA;;AAAA,MAL2C;AAC9CC,IAAAA,QAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9CC,IAAAA,mBAH8C;AAI9CC,IAAAA;AAJ8C,GAK3C;;AACH,MAAKD,mBAAL,EAA2B;AAC1BP,IAAAA,UAAU,CACT,2DADS,EAET;AACCS,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAL,IAAAA,KAAK,GAAGC,mBAAR;AACA;;AAED,QAAMK,WAAW,GAAGV,uBAAuB,EAA3C;AACA,QAAMW,IAAI,oBAAGV,MAAM,CAAEG,KAAF,CAAT,kDAAG,cAAiBO,IAA9B;;AACA,MAAK,CAAEA,IAAP,EAAc;AACb,6FAAAd,OAAO,CAAG,mCAAmCO,KAAO,aAA7C,CAAP;AACA,WAAO,IAAP;AACA;;AACD,MAAK,CAAEM,WAAP,EAAqB;AACpB,WAAO,IAAP;AACA;;AAED,SACC,cAAC,aAAD;AAAe,IAAA,QAAQ,EAAGE;AAA1B,KACC,cAAC,IAAD,QACKC,SAAF,IAAiB;AAClB,WACC,cAAC,0BAAD;AACC,MAAA,SAAS,EAAGA,SADb;AAEC,MAAA,QAAQ,EAAGV,QAFZ;AAGC,MAAA,cAAc,EAAGG;AAHlB,MADD;AAOA,GATF,CADD,CADD;AAeA;;AAED,SAASQ,0BAAT,QAA+E;AAAA,MAA1C;AAAEX,IAAAA,QAAF;AAAYG,IAAAA,cAAZ;AAA4BO,IAAAA;AAA5B,GAA0C;AAC9E,QAAM;AAAEE,IAAAA,sBAAF;AAA0BC,IAAAA;AAA1B,MAAuDH,SAA7D;AACAd,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKO,cAAc,IAAIS,sBAAvB,EAAgD;AAC/CA,MAAAA,sBAAsB,CAAET,cAAF,CAAtB;AACA;;AACD,WAAO,MAAM;AACZ,UAAKA,cAAc,IAAIU,wBAAvB,EAAkD;AACjDA,QAAAA,wBAAwB,CAAEV,cAAF,CAAxB;AACA;AACD,KAJD;AAKA,GATQ,EASN,CAAEA,cAAF,EAAkBS,sBAAlB,EAA0CC,wBAA1C,CATM,CAAT,CAF8E,CAa9E;AACA;AACA;AACA;;AACA,QAAMC,KAAK,GAAG,CAAEzB,OAAO,CAAEqB,SAAF,CAAT,GAAyBA,SAAzB,GAAqC,IAAnD;AACA,SACC,cAAC,iBAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAGI;AAApC,KACGd,QADH,CADD;AAKA","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalStyleProvider as StyleProvider,\n\t__experimentalToolsPanelContext as ToolsPanelContext,\n} from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useDisplayBlockControls from '../use-display-block-controls';\nimport groups from './groups';\n\nexport default function InspectorControlsFill( {\n\tchildren,\n\tgroup = 'default',\n\t__experimentalGroup,\n\tresetAllFilter,\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsFill`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\n\tconst isDisplayed = useDisplayBlockControls();\n\tconst Fill = groups[ group ]?.Fill;\n\tif ( ! Fill ) {\n\t\twarning( `Unknown InspectorControl group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StyleProvider document={ document }>\n\t\t\t<Fill>\n\t\t\t\t{ ( fillProps ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ToolsPanelInspectorControl\n\t\t\t\t\t\t\tfillProps={ fillProps }\n\t\t\t\t\t\t\tchildren={ children }\n\t\t\t\t\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t</Fill>\n\t\t</StyleProvider>\n\t);\n}\n\nfunction ToolsPanelInspectorControl( { children, resetAllFilter, fillProps } ) {\n\tconst { registerResetAllFilter, deregisterResetAllFilter } = fillProps;\n\tuseEffect( () => {\n\t\tif ( resetAllFilter && registerResetAllFilter ) {\n\t\t\tregisterResetAllFilter( resetAllFilter );\n\t\t}\n\t\treturn () => {\n\t\t\tif ( resetAllFilter && deregisterResetAllFilter ) {\n\t\t\t\tderegisterResetAllFilter( resetAllFilter );\n\t\t\t}\n\t\t};\n\t}, [ resetAllFilter, registerResetAllFilter, deregisterResetAllFilter ] );\n\n\t// Children passed to InspectorControlsFill will not have\n\t// access to any React Context whose Provider is part of\n\t// the InspectorControlsSlot tree. So we re-create the\n\t// Provider in this subtree.\n\tconst value = ! isEmpty( fillProps ) ? fillProps : null;\n\treturn (\n\t\t<ToolsPanelContext.Provider value={ value }>\n\t\t\t{ children }\n\t\t</ToolsPanelContext.Provider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/fill.js"],"names":["isEmpty","__experimentalStyleProvider","StyleProvider","__experimentalToolsPanelContext","ToolsPanelContext","warning","deprecated","useEffect","useDisplayBlockControls","groups","InspectorControlsFill","children","group","__experimentalGroup","resetAllFilter","since","version","alternative","isDisplayed","Fill","document","fillProps","ToolsPanelInspectorControl","registerResetAllFilter","deregisterResetAllFilter","value"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SACCC,2BAA2B,IAAIC,aADhC,EAECC,+BAA+B,IAAIC,iBAFpC,QAGO,uBAHP;AAIA,OAAOC,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AACA,SAASC,SAAT,QAA0B,oBAA1B;AAEA;AACA;AACA;;AACA,OAAOC,uBAAP,MAAoC,+BAApC;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,qBAAT,OAKX;AAAA;;AAAA,MAL2C;AAC9CC,IAAAA,QAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9CC,IAAAA,mBAH8C;AAI9CC,IAAAA;AAJ8C,GAK3C;;AACH,MAAKD,mBAAL,EAA2B;AAC1BP,IAAAA,UAAU,CACT,2DADS,EAET;AACCS,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAL,IAAAA,KAAK,GAAGC,mBAAR;AACA;;AAED,QAAMK,WAAW,GAAGV,uBAAuB,EAA3C;AACA,QAAMW,IAAI,oBAAGV,MAAM,CAAEG,KAAF,CAAT,kDAAG,cAAiBO,IAA9B;;AACA,MAAK,CAAEA,IAAP,EAAc;AACb,6FAAAd,OAAO,CAAG,oCAAoCO,KAAO,aAA9C,CAAP;AACA,WAAO,IAAP;AACA;;AACD,MAAK,CAAEM,WAAP,EAAqB;AACpB,WAAO,IAAP;AACA;;AAED,SACC,cAAC,aAAD;AAAe,IAAA,QAAQ,EAAGE;AAA1B,KACC,cAAC,IAAD,QACKC,SAAF,IAAiB;AAClB,WACC,cAAC,0BAAD;AACC,MAAA,SAAS,EAAGA,SADb;AAEC,MAAA,QAAQ,EAAGV,QAFZ;AAGC,MAAA,cAAc,EAAGG;AAHlB,MADD;AAOA,GATF,CADD,CADD;AAeA;;AAED,SAASQ,0BAAT,QAA+E;AAAA,MAA1C;AAAEX,IAAAA,QAAF;AAAYG,IAAAA,cAAZ;AAA4BO,IAAAA;AAA5B,GAA0C;AAC9E,QAAM;AAAEE,IAAAA,sBAAF;AAA0BC,IAAAA;AAA1B,MAAuDH,SAA7D;AACAd,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKO,cAAc,IAAIS,sBAAvB,EAAgD;AAC/CA,MAAAA,sBAAsB,CAAET,cAAF,CAAtB;AACA;;AACD,WAAO,MAAM;AACZ,UAAKA,cAAc,IAAIU,wBAAvB,EAAkD;AACjDA,QAAAA,wBAAwB,CAAEV,cAAF,CAAxB;AACA;AACD,KAJD;AAKA,GATQ,EASN,CAAEA,cAAF,EAAkBS,sBAAlB,EAA0CC,wBAA1C,CATM,CAAT,CAF8E,CAa9E;AACA;AACA;AACA;;AACA,QAAMC,KAAK,GAAG,CAAEzB,OAAO,CAAEqB,SAAF,CAAT,GAAyBA,SAAzB,GAAqC,IAAnD;AACA,SACC,cAAC,iBAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAGI;AAApC,KACGd,QADH,CADD;AAKA","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalStyleProvider as StyleProvider,\n\t__experimentalToolsPanelContext as ToolsPanelContext,\n} from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useDisplayBlockControls from '../use-display-block-controls';\nimport groups from './groups';\n\nexport default function InspectorControlsFill( {\n\tchildren,\n\tgroup = 'default',\n\t__experimentalGroup,\n\tresetAllFilter,\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsFill`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\n\tconst isDisplayed = useDisplayBlockControls();\n\tconst Fill = groups[ group ]?.Fill;\n\tif ( ! Fill ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StyleProvider document={ document }>\n\t\t\t<Fill>\n\t\t\t\t{ ( fillProps ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ToolsPanelInspectorControl\n\t\t\t\t\t\t\tfillProps={ fillProps }\n\t\t\t\t\t\t\tchildren={ children }\n\t\t\t\t\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t</Fill>\n\t\t</StyleProvider>\n\t);\n}\n\nfunction ToolsPanelInspectorControl( { children, resetAllFilter, fillProps } ) {\n\tconst { registerResetAllFilter, deregisterResetAllFilter } = fillProps;\n\tuseEffect( () => {\n\t\tif ( resetAllFilter && registerResetAllFilter ) {\n\t\t\tregisterResetAllFilter( resetAllFilter );\n\t\t}\n\t\treturn () => {\n\t\t\tif ( resetAllFilter && deregisterResetAllFilter ) {\n\t\t\t\tderegisterResetAllFilter( resetAllFilter );\n\t\t\t}\n\t\t};\n\t}, [ resetAllFilter, registerResetAllFilter, deregisterResetAllFilter ] );\n\n\t// Children passed to InspectorControlsFill will not have\n\t// access to any React Context whose Provider is part of\n\t// the InspectorControlsSlot tree. So we re-create the\n\t// Provider in this subtree.\n\tconst value = ! isEmpty( fillProps ) ? fillProps : null;\n\treturn (\n\t\t<ToolsPanelContext.Provider value={ value }>\n\t\t\t{ children }\n\t\t</ToolsPanelContext.Provider>\n\t);\n}\n"]}
@@ -42,7 +42,7 @@ export default function InspectorControlsFill(_ref) {
42
42
  const Fill = (_groups$group = groups[group]) === null || _groups$group === void 0 ? void 0 : _groups$group.Fill;
43
43
 
44
44
  if (!Fill) {
45
- typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControl group "${group}" provided.`) : void 0;
45
+ typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControls group "${group}" provided.`) : void 0;
46
46
  return null;
47
47
  }
48
48
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/fill.native.js"],"names":["View","Children","BottomSheetConsumer","warning","deprecated","groups","useDisplayBlockControls","BlockSettingsButton","InspectorControlsFill","children","group","__experimentalGroup","props","since","version","alternative","isDisplayed","Fill","count"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,cAArB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAASC,mBAAT,QAAoC,uBAApC;AACA,OAAOC,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,UAAnB;AACA,OAAOC,uBAAP,MAAoC,+BAApC;AACA,SAASC,mBAAT,QAAoC,mBAApC;AAEA,eAAe,SAASC,qBAAT,OAKX;AAAA;;AAAA,MAL2C;AAC9CC,IAAAA,QAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9CC,IAAAA,mBAH8C;AAI9C,OAAGC;AAJ2C,GAK3C;;AACH,MAAKD,mBAAL,EAA2B;AAC1BP,IAAAA,UAAU,CACT,2DADS,EAET;AACCS,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAL,IAAAA,KAAK,GAAGC,mBAAR;AACA;;AACD,QAAMK,WAAW,GAAGV,uBAAuB,EAA3C;AAEA,QAAMW,IAAI,oBAAGZ,MAAM,CAAEK,KAAF,CAAT,kDAAG,cAAiBO,IAA9B;;AACA,MAAK,CAAEA,IAAP,EAAc;AACb,6FAAAd,OAAO,CAAG,mCAAmCO,KAAO,aAA7C,CAAP;AACA,WAAO,IAAP;AACA;;AACD,MAAK,CAAEM,WAAP,EAAqB;AACpB,WAAO,IAAP;AACA;;AAED,SACC,8BACC,cAAC,IAAD,EAAWJ,KAAX,EAEE,cAAC,mBAAD,QACG,MAAM,cAAC,IAAD,QAAQH,QAAR,CADT,CAFF,CADD,EAQGR,QAAQ,CAACiB,KAAT,CAAgBT,QAAhB,IAA6B,CAA7B,IAAkC,cAAC,mBAAD,OARrC,CADD;AAYA","sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Children } from '@wordpress/element';\nimport { BottomSheetConsumer } from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport groups from './groups';\nimport useDisplayBlockControls from '../use-display-block-controls';\nimport { BlockSettingsButton } from '../block-settings';\n\nexport default function InspectorControlsFill( {\n\tchildren,\n\tgroup = 'default',\n\t__experimentalGroup,\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsFill`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst isDisplayed = useDisplayBlockControls();\n\n\tconst Fill = groups[ group ]?.Fill;\n\tif ( ! Fill ) {\n\t\twarning( `Unknown InspectorControl group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Fill { ...props }>\n\t\t\t\t{\n\t\t\t\t\t<BottomSheetConsumer>\n\t\t\t\t\t\t{ () => <View>{ children }</View> }\n\t\t\t\t\t</BottomSheetConsumer>\n\t\t\t\t}\n\t\t\t</Fill>\n\t\t\t{ Children.count( children ) > 0 && <BlockSettingsButton /> }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/fill.native.js"],"names":["View","Children","BottomSheetConsumer","warning","deprecated","groups","useDisplayBlockControls","BlockSettingsButton","InspectorControlsFill","children","group","__experimentalGroup","props","since","version","alternative","isDisplayed","Fill","count"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,cAArB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAASC,mBAAT,QAAoC,uBAApC;AACA,OAAOC,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,UAAnB;AACA,OAAOC,uBAAP,MAAoC,+BAApC;AACA,SAASC,mBAAT,QAAoC,mBAApC;AAEA,eAAe,SAASC,qBAAT,OAKX;AAAA;;AAAA,MAL2C;AAC9CC,IAAAA,QAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9CC,IAAAA,mBAH8C;AAI9C,OAAGC;AAJ2C,GAK3C;;AACH,MAAKD,mBAAL,EAA2B;AAC1BP,IAAAA,UAAU,CACT,2DADS,EAET;AACCS,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAL,IAAAA,KAAK,GAAGC,mBAAR;AACA;;AACD,QAAMK,WAAW,GAAGV,uBAAuB,EAA3C;AAEA,QAAMW,IAAI,oBAAGZ,MAAM,CAAEK,KAAF,CAAT,kDAAG,cAAiBO,IAA9B;;AACA,MAAK,CAAEA,IAAP,EAAc;AACb,6FAAAd,OAAO,CAAG,oCAAoCO,KAAO,aAA9C,CAAP;AACA,WAAO,IAAP;AACA;;AACD,MAAK,CAAEM,WAAP,EAAqB;AACpB,WAAO,IAAP;AACA;;AAED,SACC,8BACC,cAAC,IAAD,EAAWJ,KAAX,EAEE,cAAC,mBAAD,QACG,MAAM,cAAC,IAAD,QAAQH,QAAR,CADT,CAFF,CADD,EAQGR,QAAQ,CAACiB,KAAT,CAAgBT,QAAhB,IAA6B,CAA7B,IAAkC,cAAC,mBAAD,OARrC,CADD;AAYA","sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Children } from '@wordpress/element';\nimport { BottomSheetConsumer } from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport groups from './groups';\nimport useDisplayBlockControls from '../use-display-block-controls';\nimport { BlockSettingsButton } from '../block-settings';\n\nexport default function InspectorControlsFill( {\n\tchildren,\n\tgroup = 'default',\n\t__experimentalGroup,\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsFill`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst isDisplayed = useDisplayBlockControls();\n\n\tconst Fill = groups[ group ]?.Fill;\n\tif ( ! Fill ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Fill { ...props }>\n\t\t\t\t{\n\t\t\t\t\t<BottomSheetConsumer>\n\t\t\t\t\t\t{ () => <View>{ children }</View> }\n\t\t\t\t\t</BottomSheetConsumer>\n\t\t\t\t}\n\t\t\t</Fill>\n\t\t\t{ Children.count( children ) > 0 && <BlockSettingsButton /> }\n\t\t</>\n\t);\n}\n"]}
@@ -4,7 +4,7 @@ import { createElement } from "@wordpress/element";
4
4
  /**
5
5
  * WordPress dependencies
6
6
  */
7
- import { __experimentalUseSlot as useSlot, __experimentalUseSlotFills as useSlotFills } from '@wordpress/components';
7
+ import { __experimentalUseSlotFills as useSlotFills } from '@wordpress/components';
8
8
  import warning from '@wordpress/warning';
9
9
  import deprecated from '@wordpress/deprecated';
10
10
  /**
@@ -34,17 +34,14 @@ export default function InspectorControlsSlot(_ref) {
34
34
  }
35
35
 
36
36
  const Slot = (_groups$group = groups[group]) === null || _groups$group === void 0 ? void 0 : _groups$group.Slot;
37
- const slot = useSlot(Slot === null || Slot === void 0 ? void 0 : Slot.__unstableName);
38
37
  const fills = useSlotFills(Slot === null || Slot === void 0 ? void 0 : Slot.__unstableName);
39
38
 
40
- if (!Slot || !slot) {
41
- typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControl group "${group}" provided.`) : void 0;
39
+ if (!Slot) {
40
+ typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControls group "${group}" provided.`) : void 0;
42
41
  return null;
43
42
  }
44
43
 
45
- const hasFills = Boolean(fills && fills.length);
46
-
47
- if (!hasFills) {
44
+ if (!(fills !== null && fills !== void 0 && fills.length)) {
48
45
  return null;
49
46
  }
50
47
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/slot.js"],"names":["__experimentalUseSlot","useSlot","__experimentalUseSlotFills","useSlotFills","warning","deprecated","BlockSupportToolsPanel","BlockSupportSlotContainer","groups","InspectorControlsSlot","__experimentalGroup","group","label","props","since","version","alternative","Slot","slot","__unstableName","fills","hasFills","Boolean","length"],"mappings":";;;AAAA;AACA;AACA;AACA,SACCA,qBAAqB,IAAIC,OAD1B,EAECC,0BAA0B,IAAIC,YAF/B,QAGO,uBAHP;AAIA,OAAOC,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,sBAAP,MAAmC,6BAAnC;AACA,OAAOC,yBAAP,MAAsC,gCAAtC;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,qBAAT,OAKX;AAAA;;AAAA,MAL2C;AAC9CC,IAAAA,mBAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9CC,IAAAA,KAH8C;AAI9C,OAAGC;AAJ2C,GAK3C;;AACH,MAAKH,mBAAL,EAA2B;AAC1BL,IAAAA,UAAU,CACT,2DADS,EAET;AACCS,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAL,IAAAA,KAAK,GAAGD,mBAAR;AACA;;AACD,QAAMO,IAAI,oBAAGT,MAAM,CAAEG,KAAF,CAAT,kDAAG,cAAiBM,IAA9B;AACA,QAAMC,IAAI,GAAGjB,OAAO,CAAEgB,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEE,cAAR,CAApB;AACA,QAAMC,KAAK,GAAGjB,YAAY,CAAEc,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEE,cAAR,CAA1B;;AACA,MAAK,CAAEF,IAAF,IAAU,CAAEC,IAAjB,EAAwB;AACvB,6FAAAd,OAAO,CAAG,mCAAmCO,KAAO,aAA7C,CAAP;AACA,WAAO,IAAP;AACA;;AAED,QAAMU,QAAQ,GAAGC,OAAO,CAAEF,KAAK,IAAIA,KAAK,CAACG,MAAjB,CAAxB;;AACA,MAAK,CAAEF,QAAP,EAAkB;AACjB,WAAO,IAAP;AACA;;AAED,MAAKT,KAAL,EAAa;AACZ,WACC,cAAC,sBAAD;AAAwB,MAAA,KAAK,EAAGD,KAAhC;AAAwC,MAAA,KAAK,EAAGC;AAAhD,OACC,cAAC,yBAAD,eAAgCC,KAAhC;AAAwC,MAAA,IAAI,EAAGI;AAA/C,OADD,CADD;AAKA;;AAED,SAAO,cAAC,IAAD,eAAWJ,KAAX;AAAmB,IAAA,gBAAgB;AAAnC,KAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseSlot as useSlot,\n\t__experimentalUseSlotFills as useSlotFills,\n} from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport BlockSupportToolsPanel from './block-support-tools-panel';\nimport BlockSupportSlotContainer from './block-support-slot-container';\nimport groups from './groups';\n\nexport default function InspectorControlsSlot( {\n\t__experimentalGroup,\n\tgroup = 'default',\n\tlabel,\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsSlot`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst Slot = groups[ group ]?.Slot;\n\tconst slot = useSlot( Slot?.__unstableName );\n\tconst fills = useSlotFills( Slot?.__unstableName );\n\tif ( ! Slot || ! slot ) {\n\t\twarning( `Unknown InspectorControl group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\n\tconst hasFills = Boolean( fills && fills.length );\n\tif ( ! hasFills ) {\n\t\treturn null;\n\t}\n\n\tif ( label ) {\n\t\treturn (\n\t\t\t<BlockSupportToolsPanel group={ group } label={ label }>\n\t\t\t\t<BlockSupportSlotContainer { ...props } Slot={ Slot } />\n\t\t\t</BlockSupportToolsPanel>\n\t\t);\n\t}\n\n\treturn <Slot { ...props } bubblesVirtually />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/slot.js"],"names":["__experimentalUseSlotFills","useSlotFills","warning","deprecated","BlockSupportToolsPanel","BlockSupportSlotContainer","groups","InspectorControlsSlot","__experimentalGroup","group","label","props","since","version","alternative","Slot","fills","__unstableName","length"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,0BAA0B,IAAIC,YAAvC,QAA2D,uBAA3D;AACA,OAAOC,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,sBAAP,MAAmC,6BAAnC;AACA,OAAOC,yBAAP,MAAsC,gCAAtC;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,qBAAT,OAKX;AAAA;;AAAA,MAL2C;AAC9CC,IAAAA,mBAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9CC,IAAAA,KAH8C;AAI9C,OAAGC;AAJ2C,GAK3C;;AACH,MAAKH,mBAAL,EAA2B;AAC1BL,IAAAA,UAAU,CACT,2DADS,EAET;AACCS,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAL,IAAAA,KAAK,GAAGD,mBAAR;AACA;;AACD,QAAMO,IAAI,oBAAGT,MAAM,CAAEG,KAAF,CAAT,kDAAG,cAAiBM,IAA9B;AACA,QAAMC,KAAK,GAAGf,YAAY,CAAEc,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEE,cAAR,CAA1B;;AACA,MAAK,CAAEF,IAAP,EAAc;AACb,6FAAAb,OAAO,CAAG,oCAAoCO,KAAO,aAA9C,CAAP;AACA,WAAO,IAAP;AACA;;AAED,MAAK,EAAEO,KAAF,aAAEA,KAAF,eAAEA,KAAK,CAAEE,MAAT,CAAL,EAAuB;AACtB,WAAO,IAAP;AACA;;AAED,MAAKR,KAAL,EAAa;AACZ,WACC,cAAC,sBAAD;AAAwB,MAAA,KAAK,EAAGD,KAAhC;AAAwC,MAAA,KAAK,EAAGC;AAAhD,OACC,cAAC,yBAAD,eAAgCC,KAAhC;AAAwC,MAAA,IAAI,EAAGI;AAA/C,OADD,CADD;AAKA;;AAED,SAAO,cAAC,IAAD,eAAWJ,KAAX;AAAmB,IAAA,gBAAgB;AAAnC,KAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalUseSlotFills as useSlotFills } from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport BlockSupportToolsPanel from './block-support-tools-panel';\nimport BlockSupportSlotContainer from './block-support-slot-container';\nimport groups from './groups';\n\nexport default function InspectorControlsSlot( {\n\t__experimentalGroup,\n\tgroup = 'default',\n\tlabel,\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsSlot`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst Slot = groups[ group ]?.Slot;\n\tconst fills = useSlotFills( Slot?.__unstableName );\n\tif ( ! Slot ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\n\tif ( ! fills?.length ) {\n\t\treturn null;\n\t}\n\n\tif ( label ) {\n\t\treturn (\n\t\t\t<BlockSupportToolsPanel group={ group } label={ label }>\n\t\t\t\t<BlockSupportSlotContainer { ...props } Slot={ Slot } />\n\t\t\t</BlockSupportToolsPanel>\n\t\t);\n\t}\n\n\treturn <Slot { ...props } bubblesVirtually />;\n}\n"]}
@@ -31,7 +31,7 @@ export default function InspectorControlsSlot(_ref) {
31
31
  const Slot = (_groups$group = groups[group]) === null || _groups$group === void 0 ? void 0 : _groups$group.Slot;
32
32
 
33
33
  if (!Slot) {
34
- typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControl group "${group}" provided.`) : void 0;
34
+ typeof process !== "undefined" && process.env && process.env.NODE_ENV !== "production" ? warning(`Unknown InspectorControls group "${group}" provided.`) : void 0;
35
35
  return null;
36
36
  }
37
37
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/slot.native.js"],"names":["warning","deprecated","groups","InspectorControlsSlot","__experimentalGroup","group","props","since","version","alternative","Slot"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,qBAAT,OAIX;AAAA;;AAAA,MAJ2C;AAC9CC,IAAAA,mBAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9C,OAAGC;AAH2C,GAI3C;;AACH,MAAKF,mBAAL,EAA2B;AAC1BH,IAAAA,UAAU,CACT,2DADS,EAET;AACCM,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAJ,IAAAA,KAAK,GAAGD,mBAAR;AACA;;AACD,QAAMM,IAAI,oBAAGR,MAAM,CAAEG,KAAF,CAAT,kDAAG,cAAiBK,IAA9B;;AACA,MAAK,CAAEA,IAAP,EAAc;AACb,6FAAAV,OAAO,CAAG,mCAAmCK,KAAO,aAA7C,CAAP;AACA,WAAO,IAAP;AACA;;AAED,SAAO,cAAC,IAAD,EAAWC,KAAX,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport groups from './groups';\n\nexport default function InspectorControlsSlot( {\n\t__experimentalGroup,\n\tgroup = 'default',\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsSlot`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst Slot = groups[ group ]?.Slot;\n\tif ( ! Slot ) {\n\t\twarning( `Unknown InspectorControl group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\n\treturn <Slot { ...props } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/inspector-controls/slot.native.js"],"names":["warning","deprecated","groups","InspectorControlsSlot","__experimentalGroup","group","props","since","version","alternative","Slot"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,OAAP,MAAoB,oBAApB;AACA,OAAOC,UAAP,MAAuB,uBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,qBAAT,OAIX;AAAA;;AAAA,MAJ2C;AAC9CC,IAAAA,mBAD8C;AAE9CC,IAAAA,KAAK,GAAG,SAFsC;AAG9C,OAAGC;AAH2C,GAI3C;;AACH,MAAKF,mBAAL,EAA2B;AAC1BH,IAAAA,UAAU,CACT,2DADS,EAET;AACCM,MAAAA,KAAK,EAAE,KADR;AAECC,MAAAA,OAAO,EAAE,KAFV;AAGCC,MAAAA,WAAW,EAAE;AAHd,KAFS,CAAV;AAQAJ,IAAAA,KAAK,GAAGD,mBAAR;AACA;;AACD,QAAMM,IAAI,oBAAGR,MAAM,CAAEG,KAAF,CAAT,kDAAG,cAAiBK,IAA9B;;AACA,MAAK,CAAEA,IAAP,EAAc;AACb,6FAAAV,OAAO,CAAG,oCAAoCK,KAAO,aAA9C,CAAP;AACA,WAAO,IAAP;AACA;;AAED,SAAO,cAAC,IAAD,EAAWC,KAAX,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport groups from './groups';\n\nexport default function InspectorControlsSlot( {\n\t__experimentalGroup,\n\tgroup = 'default',\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsSlot`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst Slot = groups[ group ]?.Slot;\n\tif ( ! Slot ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\n\treturn <Slot { ...props } />;\n}\n"]}
@@ -93,12 +93,17 @@ const LineHeightControl = _ref => {
93
93
  event
94
94
  } = _ref2;
95
95
 
96
+ if (nextValue === '') {
97
+ onChange();
98
+ return;
99
+ }
100
+
96
101
  if (event.type === 'click') {
97
- onChange(adjustNextValue(nextValue, false));
102
+ onChange(adjustNextValue(`${nextValue}`, false));
98
103
  return;
99
104
  }
100
105
 
101
- onChange(nextValue);
106
+ onChange(`${nextValue}`);
102
107
  };
103
108
 
104
109
  return createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/line-height-control/index.js"],"names":["deprecated","__","__experimentalNumberControl","NumberControl","BASE_DEFAULT_VALUE","RESET_VALUE","STEP","isLineHeightDefined","LineHeightControl","value","lineHeight","onChange","__nextHasNoMarginBottom","__unstableInputWidth","otherProps","isDefined","adjustNextValue","nextValue","wasTypedOrPasted","stateReducer","state","action","includes","payload","event","nativeEvent","inputType","since","version","hint","deprecatedStyles","undefined","marginBottom","handleOnChange","type"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalNumberControl as NumberControl } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport {\n\tBASE_DEFAULT_VALUE,\n\tRESET_VALUE,\n\tSTEP,\n\tisLineHeightDefined,\n} from './utils';\n\nconst LineHeightControl = ( {\n\tvalue: lineHeight,\n\tonChange,\n\t/** Start opting into the new margin-free styles that will become the default in a future version. */\n\t__nextHasNoMarginBottom = false,\n\t__unstableInputWidth = '60px',\n\t...otherProps\n} ) => {\n\tconst isDefined = isLineHeightDefined( lineHeight );\n\n\tconst adjustNextValue = ( nextValue, wasTypedOrPasted ) => {\n\t\t// Set the next value without modification if lineHeight has been defined.\n\t\tif ( isDefined ) return nextValue;\n\n\t\t/**\n\t\t * The following logic handles the initial step up/down action\n\t\t * (from an undefined value state) so that the next values are better suited for\n\t\t * line-height rendering. For example, the first step up should immediately\n\t\t * go to 1.6, rather than the normally expected 0.1.\n\t\t *\n\t\t * Step up/down actions can be triggered by keydowns of the up/down arrow keys,\n\t\t * or by clicking the spin buttons.\n\t\t */\n\t\tswitch ( `${ nextValue }` ) {\n\t\t\tcase `${ STEP }`:\n\t\t\t\t// Increment by step value.\n\t\t\t\treturn BASE_DEFAULT_VALUE + STEP;\n\t\t\tcase '0': {\n\t\t\t\t// This means the user explicitly input '0', rather than stepped down\n\t\t\t\t// from an undefined value state.\n\t\t\t\tif ( wasTypedOrPasted ) return nextValue;\n\t\t\t\t// Decrement by step value.\n\t\t\t\treturn BASE_DEFAULT_VALUE - STEP;\n\t\t\t}\n\t\t\tcase '':\n\t\t\t\treturn BASE_DEFAULT_VALUE;\n\t\t\tdefault:\n\t\t\t\treturn nextValue;\n\t\t}\n\t};\n\n\tconst stateReducer = ( state, action ) => {\n\t\t// Be careful when changing this — cross-browser behavior of the\n\t\t// `inputType` field in `input` events are inconsistent.\n\t\t// For example, Firefox emits an input event with inputType=\"insertReplacementText\"\n\t\t// on spin button clicks, while other browsers do not even emit an input event.\n\t\tconst wasTypedOrPasted = [ 'insertText', 'insertFromPaste' ].includes(\n\t\t\taction.payload.event.nativeEvent?.inputType\n\t\t);\n\t\tconst value = adjustNextValue( state.value, wasTypedOrPasted );\n\t\treturn { ...state, value };\n\t};\n\n\tconst value = isDefined ? lineHeight : RESET_VALUE;\n\n\tif ( ! __nextHasNoMarginBottom ) {\n\t\tdeprecated(\n\t\t\t'Bottom margin styles for wp.blockEditor.LineHeightControl',\n\t\t\t{\n\t\t\t\tsince: '6.0',\n\t\t\t\tversion: '6.4',\n\t\t\t\thint: 'Set the `__nextHasNoMarginBottom` prop to true to start opting into the new styles, which will become the default in a future version',\n\t\t\t}\n\t\t);\n\t}\n\tconst deprecatedStyles = __nextHasNoMarginBottom\n\t\t? undefined\n\t\t: { marginBottom: 24 };\n\n\tconst handleOnChange = ( nextValue, { event } ) => {\n\t\tif ( event.type === 'click' ) {\n\t\t\tonChange( adjustNextValue( nextValue, false ) );\n\t\t\treturn;\n\t\t}\n\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"block-editor-line-height-control\"\n\t\t\tstyle={ deprecatedStyles }\n\t\t>\n\t\t\t<NumberControl\n\t\t\t\t{ ...otherProps }\n\t\t\t\t__unstableInputWidth={ __unstableInputWidth }\n\t\t\t\t__unstableStateReducer={ stateReducer }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tlabel={ __( 'Line height' ) }\n\t\t\t\tplaceholder={ BASE_DEFAULT_VALUE }\n\t\t\t\tstep={ STEP }\n\t\t\t\tvalue={ value }\n\t\t\t\tmin={ 0 }\n\t\t\t\tspinControls=\"custom\"\n\t\t\t/>\n\t\t</div>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/line-height-control/README.md\n */\nexport default LineHeightControl;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/line-height-control/index.js"],"names":["deprecated","__","__experimentalNumberControl","NumberControl","BASE_DEFAULT_VALUE","RESET_VALUE","STEP","isLineHeightDefined","LineHeightControl","value","lineHeight","onChange","__nextHasNoMarginBottom","__unstableInputWidth","otherProps","isDefined","adjustNextValue","nextValue","wasTypedOrPasted","stateReducer","state","action","includes","payload","event","nativeEvent","inputType","since","version","hint","deprecatedStyles","undefined","marginBottom","handleOnChange","type"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalNumberControl as NumberControl } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport {\n\tBASE_DEFAULT_VALUE,\n\tRESET_VALUE,\n\tSTEP,\n\tisLineHeightDefined,\n} from './utils';\n\nconst LineHeightControl = ( {\n\tvalue: lineHeight,\n\tonChange,\n\t/** Start opting into the new margin-free styles that will become the default in a future version. */\n\t__nextHasNoMarginBottom = false,\n\t__unstableInputWidth = '60px',\n\t...otherProps\n} ) => {\n\tconst isDefined = isLineHeightDefined( lineHeight );\n\n\tconst adjustNextValue = ( nextValue, wasTypedOrPasted ) => {\n\t\t// Set the next value without modification if lineHeight has been defined.\n\t\tif ( isDefined ) return nextValue;\n\n\t\t/**\n\t\t * The following logic handles the initial step up/down action\n\t\t * (from an undefined value state) so that the next values are better suited for\n\t\t * line-height rendering. For example, the first step up should immediately\n\t\t * go to 1.6, rather than the normally expected 0.1.\n\t\t *\n\t\t * Step up/down actions can be triggered by keydowns of the up/down arrow keys,\n\t\t * or by clicking the spin buttons.\n\t\t */\n\t\tswitch ( `${ nextValue }` ) {\n\t\t\tcase `${ STEP }`:\n\t\t\t\t// Increment by step value.\n\t\t\t\treturn BASE_DEFAULT_VALUE + STEP;\n\t\t\tcase '0': {\n\t\t\t\t// This means the user explicitly input '0', rather than stepped down\n\t\t\t\t// from an undefined value state.\n\t\t\t\tif ( wasTypedOrPasted ) return nextValue;\n\t\t\t\t// Decrement by step value.\n\t\t\t\treturn BASE_DEFAULT_VALUE - STEP;\n\t\t\t}\n\t\t\tcase '':\n\t\t\t\treturn BASE_DEFAULT_VALUE;\n\t\t\tdefault:\n\t\t\t\treturn nextValue;\n\t\t}\n\t};\n\n\tconst stateReducer = ( state, action ) => {\n\t\t// Be careful when changing this — cross-browser behavior of the\n\t\t// `inputType` field in `input` events are inconsistent.\n\t\t// For example, Firefox emits an input event with inputType=\"insertReplacementText\"\n\t\t// on spin button clicks, while other browsers do not even emit an input event.\n\t\tconst wasTypedOrPasted = [ 'insertText', 'insertFromPaste' ].includes(\n\t\t\taction.payload.event.nativeEvent?.inputType\n\t\t);\n\t\tconst value = adjustNextValue( state.value, wasTypedOrPasted );\n\t\treturn { ...state, value };\n\t};\n\n\tconst value = isDefined ? lineHeight : RESET_VALUE;\n\n\tif ( ! __nextHasNoMarginBottom ) {\n\t\tdeprecated(\n\t\t\t'Bottom margin styles for wp.blockEditor.LineHeightControl',\n\t\t\t{\n\t\t\t\tsince: '6.0',\n\t\t\t\tversion: '6.4',\n\t\t\t\thint: 'Set the `__nextHasNoMarginBottom` prop to true to start opting into the new styles, which will become the default in a future version',\n\t\t\t}\n\t\t);\n\t}\n\tconst deprecatedStyles = __nextHasNoMarginBottom\n\t\t? undefined\n\t\t: { marginBottom: 24 };\n\n\tconst handleOnChange = ( nextValue, { event } ) => {\n\t\tif ( nextValue === '' ) {\n\t\t\tonChange();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( event.type === 'click' ) {\n\t\t\tonChange( adjustNextValue( `${ nextValue }`, false ) );\n\t\t\treturn;\n\t\t}\n\n\t\tonChange( `${ nextValue }` );\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"block-editor-line-height-control\"\n\t\t\tstyle={ deprecatedStyles }\n\t\t>\n\t\t\t<NumberControl\n\t\t\t\t{ ...otherProps }\n\t\t\t\t__unstableInputWidth={ __unstableInputWidth }\n\t\t\t\t__unstableStateReducer={ stateReducer }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tlabel={ __( 'Line height' ) }\n\t\t\t\tplaceholder={ BASE_DEFAULT_VALUE }\n\t\t\t\tstep={ STEP }\n\t\t\t\tvalue={ value }\n\t\t\t\tmin={ 0 }\n\t\t\t\tspinControls=\"custom\"\n\t\t\t/>\n\t\t</div>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/line-height-control/README.md\n */\nexport default LineHeightControl;\n"]}
@@ -3,15 +3,16 @@
3
3
  */
4
4
  import { useState, useEffect } from '@wordpress/element';
5
5
  export default function useInternalInputValue(value) {
6
- const [internalInputValue, setInternalInputValue] = useState(value || '');
6
+ const [internalInputValue, setInternalInputValue] = useState(value || ''); // If the value prop changes, update the internal state.
7
+
7
8
  useEffect(() => {
8
- /**
9
- * If the value changes then sync this
10
- * back up with state.
11
- */
12
- if (value && value !== internalInputValue) {
13
- setInternalInputValue(value);
14
- }
9
+ setInternalInputValue(prevValue => {
10
+ if (value && value !== prevValue) {
11
+ return value;
12
+ }
13
+
14
+ return prevValue;
15
+ });
15
16
  }, [value]);
16
17
  return [internalInputValue, setInternalInputValue];
17
18
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/use-internal-input-value.js"],"names":["useState","useEffect","useInternalInputValue","value","internalInputValue","setInternalInputValue"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAT,EAAmBC,SAAnB,QAAoC,oBAApC;AAEA,eAAe,SAASC,qBAAT,CAAgCC,KAAhC,EAAwC;AACtD,QAAM,CAAEC,kBAAF,EAAsBC,qBAAtB,IAAgDL,QAAQ,CAC7DG,KAAK,IAAI,EADoD,CAA9D;AAIAF,EAAAA,SAAS,CAAE,MAAM;AAChB;AACF;AACA;AACA;AACE,QAAKE,KAAK,IAAIA,KAAK,KAAKC,kBAAxB,EAA6C;AAC5CC,MAAAA,qBAAqB,CAAEF,KAAF,CAArB;AACA;AACD,GARQ,EAQN,CAAEA,KAAF,CARM,CAAT;AAUA,SAAO,CAAEC,kBAAF,EAAsBC,qBAAtB,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useEffect } from '@wordpress/element';\n\nexport default function useInternalInputValue( value ) {\n\tconst [ internalInputValue, setInternalInputValue ] = useState(\n\t\tvalue || ''\n\t);\n\n\tuseEffect( () => {\n\t\t/**\n\t\t * If the value changes then sync this\n\t\t * back up with state.\n\t\t */\n\t\tif ( value && value !== internalInputValue ) {\n\t\t\tsetInternalInputValue( value );\n\t\t}\n\t}, [ value ] );\n\n\treturn [ internalInputValue, setInternalInputValue ];\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/link-control/use-internal-input-value.js"],"names":["useState","useEffect","useInternalInputValue","value","internalInputValue","setInternalInputValue","prevValue"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAT,EAAmBC,SAAnB,QAAoC,oBAApC;AAEA,eAAe,SAASC,qBAAT,CAAgCC,KAAhC,EAAwC;AACtD,QAAM,CAAEC,kBAAF,EAAsBC,qBAAtB,IAAgDL,QAAQ,CAC7DG,KAAK,IAAI,EADoD,CAA9D,CADsD,CAKtD;;AACAF,EAAAA,SAAS,CAAE,MAAM;AAChBI,IAAAA,qBAAqB,CAAIC,SAAF,IAAiB;AACvC,UAAKH,KAAK,IAAIA,KAAK,KAAKG,SAAxB,EAAoC;AACnC,eAAOH,KAAP;AACA;;AAED,aAAOG,SAAP;AACA,KANoB,CAArB;AAOA,GARQ,EAQN,CAAEH,KAAF,CARM,CAAT;AAUA,SAAO,CAAEC,kBAAF,EAAsBC,qBAAtB,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useEffect } from '@wordpress/element';\n\nexport default function useInternalInputValue( value ) {\n\tconst [ internalInputValue, setInternalInputValue ] = useState(\n\t\tvalue || ''\n\t);\n\n\t// If the value prop changes, update the internal state.\n\tuseEffect( () => {\n\t\tsetInternalInputValue( ( prevValue ) => {\n\t\t\tif ( value && value !== prevValue ) {\n\t\t\t\treturn value;\n\t\t\t}\n\n\t\t\treturn prevValue;\n\t\t} );\n\t}, [ value ] );\n\n\treturn [ internalInputValue, setInternalInputValue ];\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
- import { createElement } from "@wordpress/element";
2
+ import { createElement, Fragment } from "@wordpress/element";
3
3
 
4
4
  /**
5
5
  * External dependencies
@@ -18,6 +18,7 @@ import { forwardRef } from '@wordpress/element';
18
18
  import ListViewBlockSelectButton from './block-select-button';
19
19
  import BlockDraggable from '../block-draggable';
20
20
  import { store as blockEditorStore } from '../../store';
21
+ import { useListViewContext } from './context';
21
22
  const ListViewBlockContents = forwardRef((_ref, ref) => {
22
23
  let {
23
24
  onClick,
@@ -47,6 +48,9 @@ const ListViewBlockContents = forwardRef((_ref, ref) => {
47
48
  selectedBlockInBlockEditor: getSelectedBlockClientId()
48
49
  };
49
50
  }, [clientId]);
51
+ const {
52
+ renderAdditionalBlockUI
53
+ } = useListViewContext();
50
54
  const isBlockMoveTarget = blockMovingClientId && selectedBlockInBlockEditor === clientId;
51
55
  const className = classnames('block-editor-list-view-block-contents', {
52
56
  'is-dropping-before': isBlockMoveTarget
@@ -56,7 +60,7 @@ const ListViewBlockContents = forwardRef((_ref, ref) => {
56
60
  // to drag it and rearrange its position.
57
61
 
58
62
  const draggableClientIds = selectedClientIds.includes(clientId) ? selectedClientIds : [clientId];
59
- return createElement(BlockDraggable, {
63
+ return createElement(Fragment, null, renderAdditionalBlockUI && renderAdditionalBlockUI(block), createElement(BlockDraggable, {
60
64
  clientIds: draggableClientIds
61
65
  }, _ref2 => {
62
66
  let {
@@ -79,7 +83,7 @@ const ListViewBlockContents = forwardRef((_ref, ref) => {
79
83
  onDragEnd: onDragEnd,
80
84
  isExpanded: isExpanded
81
85
  }, props));
82
- });
86
+ }));
83
87
  });
84
88
  export default ListViewBlockContents;
85
89
  //# sourceMappingURL=block-contents.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/list-view/block-contents.js"],"names":["classnames","useSelect","forwardRef","ListViewBlockSelectButton","BlockDraggable","store","blockEditorStore","ListViewBlockContents","ref","onClick","onToggleExpanded","block","isSelected","position","siblingBlockCount","level","isExpanded","selectedClientIds","props","clientId","blockMovingClientId","selectedBlockInBlockEditor","select","hasBlockMovingClientId","getSelectedBlockClientId","isBlockMoveTarget","className","draggableClientIds","includes","draggable","onDragStart","onDragEnd"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,UAAT,QAA2B,oBAA3B;AAEA;AACA;AACA;;AACA,OAAOC,yBAAP,MAAsC,uBAAtC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,aAA1C;AAEA,MAAMC,qBAAqB,GAAGL,UAAU,CACvC,OAaCM,GAbD,KAcK;AAAA,MAbJ;AACCC,IAAAA,OADD;AAECC,IAAAA,gBAFD;AAGCC,IAAAA,KAHD;AAICC,IAAAA,UAJD;AAKCC,IAAAA,QALD;AAMCC,IAAAA,iBAND;AAOCC,IAAAA,KAPD;AAQCC,IAAAA,UARD;AASCC,IAAAA,iBATD;AAUC,OAAGC;AAVJ,GAaI;AACJ,QAAM;AAAEC,IAAAA;AAAF,MAAeR,KAArB;AAEA,QAAM;AAAES,IAAAA,mBAAF;AAAuBC,IAAAA;AAAvB,MAAsDpB,SAAS,CAClEqB,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,sBAAF;AAA0BC,MAAAA;AAA1B,QACLF,MAAM,CAAEhB,gBAAF,CADP;AAEA,WAAO;AACNc,MAAAA,mBAAmB,EAAEG,sBAAsB,EADrC;AAENF,MAAAA,0BAA0B,EAAEG,wBAAwB;AAF9C,KAAP;AAIA,GARmE,EASpE,CAAEL,QAAF,CAToE,CAArE;AAYA,QAAMM,iBAAiB,GACtBL,mBAAmB,IAAIC,0BAA0B,KAAKF,QADvD;AAGA,QAAMO,SAAS,GAAG1B,UAAU,CAAE,uCAAF,EAA2C;AACtE,0BAAsByB;AADgD,GAA3C,CAA5B,CAlBI,CAsBJ;AACA;AACA;AACA;;AACA,QAAME,kBAAkB,GAAGV,iBAAiB,CAACW,QAAlB,CAA4BT,QAA5B,IACxBF,iBADwB,GAExB,CAAEE,QAAF,CAFH;AAIA,SACC,cAAC,cAAD;AAAgB,IAAA,SAAS,EAAGQ;AAA5B,KACG;AAAA,QAAE;AAAEE,MAAAA,SAAF;AAAaC,MAAAA,WAAb;AAA0BC,MAAAA;AAA1B,KAAF;AAAA,WACD,cAAC,yBAAD;AACC,MAAA,GAAG,EAAGvB,GADP;AAEC,MAAA,SAAS,EAAGkB,SAFb;AAGC,MAAA,KAAK,EAAGf,KAHT;AAIC,MAAA,OAAO,EAAGF,OAJX;AAKC,MAAA,gBAAgB,EAAGC,gBALpB;AAMC,MAAA,UAAU,EAAGE,UANd;AAOC,MAAA,QAAQ,EAAGC,QAPZ;AAQC,MAAA,iBAAiB,EAAGC,iBARrB;AASC,MAAA,KAAK,EAAGC,KATT;AAUC,MAAA,SAAS,EAAGc,SAVb;AAWC,MAAA,WAAW,EAAGC,WAXf;AAYC,MAAA,SAAS,EAAGC,SAZb;AAaC,MAAA,UAAU,EAAGf;AAbd,OAcME,KAdN,EADC;AAAA,GADH,CADD;AAsBA,CAnEsC,CAAxC;AAsEA,eAAeX,qBAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ListViewBlockSelectButton from './block-select-button';\nimport BlockDraggable from '../block-draggable';\nimport { store as blockEditorStore } from '../../store';\n\nconst ListViewBlockContents = forwardRef(\n\t(\n\t\t{\n\t\t\tonClick,\n\t\t\tonToggleExpanded,\n\t\t\tblock,\n\t\t\tisSelected,\n\t\t\tposition,\n\t\t\tsiblingBlockCount,\n\t\t\tlevel,\n\t\t\tisExpanded,\n\t\t\tselectedClientIds,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst { clientId } = block;\n\n\t\tconst { blockMovingClientId, selectedBlockInBlockEditor } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { hasBlockMovingClientId, getSelectedBlockClientId } =\n\t\t\t\t\tselect( blockEditorStore );\n\t\t\t\treturn {\n\t\t\t\t\tblockMovingClientId: hasBlockMovingClientId(),\n\t\t\t\t\tselectedBlockInBlockEditor: getSelectedBlockClientId(),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ clientId ]\n\t\t);\n\n\t\tconst isBlockMoveTarget =\n\t\t\tblockMovingClientId && selectedBlockInBlockEditor === clientId;\n\n\t\tconst className = classnames( 'block-editor-list-view-block-contents', {\n\t\t\t'is-dropping-before': isBlockMoveTarget,\n\t\t} );\n\n\t\t// Only include all selected blocks if the currently clicked on block\n\t\t// is one of the selected blocks. This ensures that if a user attempts\n\t\t// to drag a block that isn't part of the selection, they're still able\n\t\t// to drag it and rearrange its position.\n\t\tconst draggableClientIds = selectedClientIds.includes( clientId )\n\t\t\t? selectedClientIds\n\t\t\t: [ clientId ];\n\n\t\treturn (\n\t\t\t<BlockDraggable clientIds={ draggableClientIds }>\n\t\t\t\t{ ( { draggable, onDragStart, onDragEnd } ) => (\n\t\t\t\t\t<ListViewBlockSelectButton\n\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\tonToggleExpanded={ onToggleExpanded }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tposition={ position }\n\t\t\t\t\t\tsiblingBlockCount={ siblingBlockCount }\n\t\t\t\t\t\tlevel={ level }\n\t\t\t\t\t\tdraggable={ draggable }\n\t\t\t\t\t\tonDragStart={ onDragStart }\n\t\t\t\t\t\tonDragEnd={ onDragEnd }\n\t\t\t\t\t\tisExpanded={ isExpanded }\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockDraggable>\n\t\t);\n\t}\n);\n\nexport default ListViewBlockContents;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/list-view/block-contents.js"],"names":["classnames","useSelect","forwardRef","ListViewBlockSelectButton","BlockDraggable","store","blockEditorStore","useListViewContext","ListViewBlockContents","ref","onClick","onToggleExpanded","block","isSelected","position","siblingBlockCount","level","isExpanded","selectedClientIds","props","clientId","blockMovingClientId","selectedBlockInBlockEditor","select","hasBlockMovingClientId","getSelectedBlockClientId","renderAdditionalBlockUI","isBlockMoveTarget","className","draggableClientIds","includes","draggable","onDragStart","onDragEnd"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,UAAT,QAA2B,oBAA3B;AAEA;AACA;AACA;;AACA,OAAOC,yBAAP,MAAsC,uBAAtC;AACA,OAAOC,cAAP,MAA2B,oBAA3B;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,aAA1C;AACA,SAASC,kBAAT,QAAmC,WAAnC;AAEA,MAAMC,qBAAqB,GAAGN,UAAU,CACvC,OAaCO,GAbD,KAcK;AAAA,MAbJ;AACCC,IAAAA,OADD;AAECC,IAAAA,gBAFD;AAGCC,IAAAA,KAHD;AAICC,IAAAA,UAJD;AAKCC,IAAAA,QALD;AAMCC,IAAAA,iBAND;AAOCC,IAAAA,KAPD;AAQCC,IAAAA,UARD;AASCC,IAAAA,iBATD;AAUC,OAAGC;AAVJ,GAaI;AACJ,QAAM;AAAEC,IAAAA;AAAF,MAAeR,KAArB;AAEA,QAAM;AAAES,IAAAA,mBAAF;AAAuBC,IAAAA;AAAvB,MAAsDrB,SAAS,CAClEsB,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,sBAAF;AAA0BC,MAAAA;AAA1B,QACLF,MAAM,CAAEjB,gBAAF,CADP;AAEA,WAAO;AACNe,MAAAA,mBAAmB,EAAEG,sBAAsB,EADrC;AAENF,MAAAA,0BAA0B,EAAEG,wBAAwB;AAF9C,KAAP;AAIA,GARmE,EASpE,CAAEL,QAAF,CAToE,CAArE;AAYA,QAAM;AAAEM,IAAAA;AAAF,MAA8BnB,kBAAkB,EAAtD;AAEA,QAAMoB,iBAAiB,GACtBN,mBAAmB,IAAIC,0BAA0B,KAAKF,QADvD;AAGA,QAAMQ,SAAS,GAAG5B,UAAU,CAAE,uCAAF,EAA2C;AACtE,0BAAsB2B;AADgD,GAA3C,CAA5B,CApBI,CAwBJ;AACA;AACA;AACA;;AACA,QAAME,kBAAkB,GAAGX,iBAAiB,CAACY,QAAlB,CAA4BV,QAA5B,IACxBF,iBADwB,GAExB,CAAEE,QAAF,CAFH;AAIA,SACC,8BACGM,uBAAuB,IAAIA,uBAAuB,CAAEd,KAAF,CADrD,EAEC,cAAC,cAAD;AAAgB,IAAA,SAAS,EAAGiB;AAA5B,KACG;AAAA,QAAE;AAAEE,MAAAA,SAAF;AAAaC,MAAAA,WAAb;AAA0BC,MAAAA;AAA1B,KAAF;AAAA,WACD,cAAC,yBAAD;AACC,MAAA,GAAG,EAAGxB,GADP;AAEC,MAAA,SAAS,EAAGmB,SAFb;AAGC,MAAA,KAAK,EAAGhB,KAHT;AAIC,MAAA,OAAO,EAAGF,OAJX;AAKC,MAAA,gBAAgB,EAAGC,gBALpB;AAMC,MAAA,UAAU,EAAGE,UANd;AAOC,MAAA,QAAQ,EAAGC,QAPZ;AAQC,MAAA,iBAAiB,EAAGC,iBARrB;AASC,MAAA,KAAK,EAAGC,KATT;AAUC,MAAA,SAAS,EAAGe,SAVb;AAWC,MAAA,WAAW,EAAGC,WAXf;AAYC,MAAA,SAAS,EAAGC,SAZb;AAaC,MAAA,UAAU,EAAGhB;AAbd,OAcME,KAdN,EADC;AAAA,GADH,CAFD,CADD;AAyBA,CAxEsC,CAAxC;AA2EA,eAAeX,qBAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ListViewBlockSelectButton from './block-select-button';\nimport BlockDraggable from '../block-draggable';\nimport { store as blockEditorStore } from '../../store';\nimport { useListViewContext } from './context';\n\nconst ListViewBlockContents = forwardRef(\n\t(\n\t\t{\n\t\t\tonClick,\n\t\t\tonToggleExpanded,\n\t\t\tblock,\n\t\t\tisSelected,\n\t\t\tposition,\n\t\t\tsiblingBlockCount,\n\t\t\tlevel,\n\t\t\tisExpanded,\n\t\t\tselectedClientIds,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst { clientId } = block;\n\n\t\tconst { blockMovingClientId, selectedBlockInBlockEditor } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { hasBlockMovingClientId, getSelectedBlockClientId } =\n\t\t\t\t\tselect( blockEditorStore );\n\t\t\t\treturn {\n\t\t\t\t\tblockMovingClientId: hasBlockMovingClientId(),\n\t\t\t\t\tselectedBlockInBlockEditor: getSelectedBlockClientId(),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ clientId ]\n\t\t);\n\n\t\tconst { renderAdditionalBlockUI } = useListViewContext();\n\n\t\tconst isBlockMoveTarget =\n\t\t\tblockMovingClientId && selectedBlockInBlockEditor === clientId;\n\n\t\tconst className = classnames( 'block-editor-list-view-block-contents', {\n\t\t\t'is-dropping-before': isBlockMoveTarget,\n\t\t} );\n\n\t\t// Only include all selected blocks if the currently clicked on block\n\t\t// is one of the selected blocks. This ensures that if a user attempts\n\t\t// to drag a block that isn't part of the selection, they're still able\n\t\t// to drag it and rearrange its position.\n\t\tconst draggableClientIds = selectedClientIds.includes( clientId )\n\t\t\t? selectedClientIds\n\t\t\t: [ clientId ];\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ renderAdditionalBlockUI && renderAdditionalBlockUI( block ) }\n\t\t\t\t<BlockDraggable clientIds={ draggableClientIds }>\n\t\t\t\t\t{ ( { draggable, onDragStart, onDragEnd } ) => (\n\t\t\t\t\t\t<ListViewBlockSelectButton\n\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t\tonToggleExpanded={ onToggleExpanded }\n\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\tposition={ position }\n\t\t\t\t\t\t\tsiblingBlockCount={ siblingBlockCount }\n\t\t\t\t\t\t\tlevel={ level }\n\t\t\t\t\t\t\tdraggable={ draggable }\n\t\t\t\t\t\t\tonDragStart={ onDragStart }\n\t\t\t\t\t\t\tonDragEnd={ onDragEnd }\n\t\t\t\t\t\t\tisExpanded={ isExpanded }\n\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockDraggable>\n\t\t\t</>\n\t\t);\n\t}\n);\n\nexport default ListViewBlockContents;\n"]}
@@ -80,7 +80,8 @@ function ListViewBlockSelectButton(_ref, ref) {
80
80
  onClick: onToggleExpanded
81
81
  }), createElement(BlockIcon, {
82
82
  icon: blockInformation === null || blockInformation === void 0 ? void 0 : blockInformation.icon,
83
- showColors: true
83
+ showColors: true,
84
+ context: "list-view"
84
85
  }), createElement(HStack, {
85
86
  alignment: "center",
86
87
  className: "block-editor-list-view-block-select-button__label-wrapper",