@wordpress/block-editor 8.0.0 → 8.0.4

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 (1139) hide show
  1. package/build/components/alignment-control/ui.js +11 -9
  2. package/build/components/alignment-control/ui.js.map +1 -1
  3. package/build/components/autocomplete/index.js +5 -4
  4. package/build/components/autocomplete/index.js.map +1 -1
  5. package/build/components/block-actions/index.js +12 -8
  6. package/build/components/block-actions/index.js.map +1 -1
  7. package/build/components/block-alignment-control/ui.js +21 -17
  8. package/build/components/block-alignment-control/ui.js.map +1 -1
  9. package/build/components/block-alignment-control/use-available-alignments.js +9 -4
  10. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  11. package/build/components/block-alignment-matrix-control/index.js +6 -4
  12. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  13. package/build/components/block-breadcrumb/index.js +4 -3
  14. package/build/components/block-breadcrumb/index.js.map +1 -1
  15. package/build/components/block-caption/index.native.js +34 -29
  16. package/build/components/block-caption/index.native.js.map +1 -1
  17. package/build/components/block-card/index.js +8 -6
  18. package/build/components/block-card/index.js.map +1 -1
  19. package/build/components/block-compare/block-view.js +9 -8
  20. package/build/components/block-compare/block-view.js.map +1 -1
  21. package/build/components/block-compare/index.js +9 -7
  22. package/build/components/block-compare/index.js.map +1 -1
  23. package/build/components/block-content-overlay/index.js +7 -6
  24. package/build/components/block-content-overlay/index.js.map +1 -1
  25. package/build/components/block-context/index.js +5 -4
  26. package/build/components/block-context/index.js.map +1 -1
  27. package/build/components/block-controls/fill.js +7 -6
  28. package/build/components/block-controls/fill.js.map +1 -1
  29. package/build/components/block-controls/slot.js +5 -4
  30. package/build/components/block-controls/slot.js.map +1 -1
  31. package/build/components/block-controls/slot.native.js +5 -4
  32. package/build/components/block-controls/slot.native.js.map +1 -1
  33. package/build/components/block-draggable/draggable-chip.js +5 -4
  34. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  35. package/build/components/block-draggable/index.js +13 -11
  36. package/build/components/block-draggable/index.js.map +1 -1
  37. package/build/components/block-edit/context.js +1 -1
  38. package/build/components/block-full-height-alignment-control/index.js +7 -6
  39. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  40. package/build/components/block-icon/index.js +7 -5
  41. package/build/components/block-icon/index.js.map +1 -1
  42. package/build/components/block-icon/index.native.js +8 -6
  43. package/build/components/block-icon/index.native.js.map +1 -1
  44. package/build/components/block-inspector/index.js +20 -15
  45. package/build/components/block-inspector/index.js.map +1 -1
  46. package/build/components/block-list/block-html.js +4 -3
  47. package/build/components/block-list/block-html.js.map +1 -1
  48. package/build/components/block-list/block-invalid-warning.js +28 -20
  49. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  50. package/build/components/block-list/block-invalid-warning.native.js +5 -4
  51. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  52. package/build/components/block-list/block-list-item.native.js +6 -5
  53. package/build/components/block-list/block-list-item.native.js.map +1 -1
  54. package/build/components/block-list/block-selection-button.native.js +11 -9
  55. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  56. package/build/components/block-list/block.js +40 -33
  57. package/build/components/block-list/block.js.map +1 -1
  58. package/build/components/block-list/block.native.js +35 -29
  59. package/build/components/block-list/block.native.js.map +1 -1
  60. package/build/components/block-list/index.js +14 -12
  61. package/build/components/block-list/index.js.map +1 -1
  62. package/build/components/block-list/index.native.js +22 -17
  63. package/build/components/block-list/index.native.js.map +1 -1
  64. package/build/components/block-list/insertion-point.native.js +4 -3
  65. package/build/components/block-list/insertion-point.native.js.map +1 -1
  66. package/build/components/block-list/layout.js +8 -6
  67. package/build/components/block-list/layout.js.map +1 -1
  68. package/build/components/block-list/subdirectory-icon.js +13 -10
  69. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  70. package/build/components/block-list/use-block-props/index.js +5 -3
  71. package/build/components/block-list/use-block-props/index.js.map +1 -1
  72. package/build/components/block-list/use-block-props/index.native.js +2 -1
  73. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  74. package/build/components/block-list/use-block-props/use-block-refs.js +2 -2
  75. package/build/components/block-list/use-block-props/use-multi-selection.js +9 -6
  76. package/build/components/block-list/use-block-props/use-multi-selection.js.map +1 -1
  77. package/build/components/block-list-appender/index.js +16 -13
  78. package/build/components/block-list-appender/index.js.map +1 -1
  79. package/build/components/block-list-appender/index.native.js +14 -11
  80. package/build/components/block-list-appender/index.native.js.map +1 -1
  81. package/build/components/block-media-update-progress/index.native.js +1 -1
  82. package/build/components/block-mobile-toolbar/block-actions-menu.native.js +46 -42
  83. package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  84. package/build/components/block-mobile-toolbar/index.js +4 -3
  85. package/build/components/block-mobile-toolbar/index.js.map +1 -1
  86. package/build/components/block-mobile-toolbar/index.native.js +33 -25
  87. package/build/components/block-mobile-toolbar/index.native.js.map +1 -1
  88. package/build/components/block-mover/button.js +8 -7
  89. package/build/components/block-mover/button.js.map +1 -1
  90. package/build/components/block-mover/index.js +15 -13
  91. package/build/components/block-mover/index.js.map +1 -1
  92. package/build/components/block-mover/index.native.js +23 -20
  93. package/build/components/block-mover/index.native.js.map +1 -1
  94. package/build/components/block-mover/mover-description.native.js +10 -7
  95. package/build/components/block-mover/mover-description.native.js.map +1 -1
  96. package/build/components/block-navigation/dropdown.js +26 -21
  97. package/build/components/block-navigation/dropdown.js.map +1 -1
  98. package/build/components/block-pattern-setup/index.js +26 -22
  99. package/build/components/block-pattern-setup/index.js.map +1 -1
  100. package/build/components/block-pattern-setup/setup-toolbar.js +46 -39
  101. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  102. package/build/components/block-patterns-list/index.js +44 -39
  103. package/build/components/block-patterns-list/index.js.map +1 -1
  104. package/build/components/block-preview/auto.js +5 -4
  105. package/build/components/block-preview/auto.js.map +1 -1
  106. package/build/components/block-preview/index.js +8 -7
  107. package/build/components/block-preview/index.js.map +1 -1
  108. package/build/components/block-preview/live.js +4 -3
  109. package/build/components/block-preview/live.js.map +1 -1
  110. package/build/components/block-selection-clearer/index.js +1 -1
  111. package/build/components/block-settings/button.native.js +10 -7
  112. package/build/components/block-settings/button.native.js.map +1 -1
  113. package/build/components/block-settings/container.native.js +7 -6
  114. package/build/components/block-settings/container.native.js.map +1 -1
  115. package/build/components/block-settings/index.native.js +4 -2
  116. package/build/components/block-settings/index.native.js.map +1 -1
  117. package/build/components/block-settings-menu/block-convert-button.js +7 -5
  118. package/build/components/block-settings-menu/block-convert-button.js.map +1 -1
  119. package/build/components/block-settings-menu/block-html-convert-button.js +14 -10
  120. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  121. package/build/components/block-settings-menu/block-mode-toggle.js +25 -19
  122. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  123. package/build/components/block-settings-menu/block-settings-dropdown.js +74 -66
  124. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  125. package/build/components/block-settings-menu/index.js +5 -4
  126. package/build/components/block-settings-menu/index.js.map +1 -1
  127. package/build/components/block-settings-menu-controls/index.js +8 -6
  128. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  129. package/build/components/block-styles/index.js +20 -17
  130. package/build/components/block-styles/index.js.map +1 -1
  131. package/build/components/block-styles/index.native.js +6 -4
  132. package/build/components/block-styles/index.native.js.map +1 -1
  133. package/build/components/block-styles/preview.native.js +7 -6
  134. package/build/components/block-styles/preview.native.js.map +1 -1
  135. package/build/components/block-switcher/block-styles-menu.js +5 -4
  136. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  137. package/build/components/block-switcher/block-transformations-menu.js +7 -6
  138. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  139. package/build/components/block-switcher/block-transformations-menu.native.js +9 -8
  140. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  141. package/build/components/block-switcher/index.js +42 -34
  142. package/build/components/block-switcher/index.js.map +1 -1
  143. package/build/components/block-switcher/pattern-transformations-menu.js +22 -18
  144. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  145. package/build/components/block-switcher/preview-block-popover.js +4 -3
  146. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  147. package/build/components/block-switcher/use-transformed-patterns.js +1 -1
  148. package/build/components/block-switcher/utils.js +2 -1
  149. package/build/components/block-switcher/utils.js.map +1 -1
  150. package/build/components/block-title/index.js +4 -3
  151. package/build/components/block-title/index.js.map +1 -1
  152. package/build/components/block-toolbar/index.js +4 -3
  153. package/build/components/block-toolbar/index.js.map +1 -1
  154. package/build/components/block-toolbar/utils.js +13 -11
  155. package/build/components/block-toolbar/utils.js.map +1 -1
  156. package/build/components/block-tools/back-compat.js +8 -5
  157. package/build/components/block-tools/back-compat.js.map +1 -1
  158. package/build/components/block-tools/block-contextual-toolbar.js +6 -5
  159. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  160. package/build/components/block-tools/block-popover.js +15 -13
  161. package/build/components/block-tools/block-popover.js.map +1 -1
  162. package/build/components/block-tools/block-selection-button.js +6 -5
  163. package/build/components/block-tools/block-selection-button.js.map +1 -1
  164. package/build/components/block-tools/index.js +6 -5
  165. package/build/components/block-tools/index.js.map +1 -1
  166. package/build/components/block-tools/insertion-point.js +12 -10
  167. package/build/components/block-tools/insertion-point.js.map +1 -1
  168. package/build/components/block-types-list/index.js +9 -8
  169. package/build/components/block-types-list/index.js.map +1 -1
  170. package/build/components/block-types-list/index.native.js +19 -15
  171. package/build/components/block-types-list/index.native.js.map +1 -1
  172. package/build/components/block-variation-picker/index.js +9 -8
  173. package/build/components/block-variation-picker/index.js.map +1 -1
  174. package/build/components/block-variation-picker/index.native.js +9 -7
  175. package/build/components/block-variation-picker/index.native.js.map +1 -1
  176. package/build/components/block-variation-transforms/index.js +22 -15
  177. package/build/components/block-variation-transforms/index.js.map +1 -1
  178. package/build/components/block-vertical-alignment-control/ui.js +9 -7
  179. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  180. package/build/components/border-radius-control/all-input-control.js +6 -5
  181. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  182. package/build/components/border-radius-control/index.js +5 -4
  183. package/build/components/border-radius-control/index.js.map +1 -1
  184. package/build/components/border-radius-control/input-controls.js +16 -11
  185. package/build/components/border-radius-control/input-controls.js.map +1 -1
  186. package/build/components/border-radius-control/linked-button.js +5 -4
  187. package/build/components/border-radius-control/linked-button.js.map +1 -1
  188. package/build/components/border-radius-control/utils.js +10 -5
  189. package/build/components/border-radius-control/utils.js.map +1 -1
  190. package/build/components/border-style-control/index.js +5 -4
  191. package/build/components/border-style-control/index.js.map +1 -1
  192. package/build/components/button-block-appender/index.js +15 -13
  193. package/build/components/button-block-appender/index.js.map +1 -1
  194. package/build/components/button-block-appender/index.native.js +28 -24
  195. package/build/components/button-block-appender/index.native.js.map +1 -1
  196. package/build/components/caption/index.native.js +44 -41
  197. package/build/components/caption/index.native.js.map +1 -1
  198. package/build/components/color-palette/control.js +6 -5
  199. package/build/components/color-palette/control.js.map +1 -1
  200. package/build/components/color-style-selector/index.js +43 -34
  201. package/build/components/color-style-selector/index.js.map +1 -1
  202. package/build/components/colors/color-panel.js +21 -18
  203. package/build/components/colors/color-panel.js.map +1 -1
  204. package/build/components/colors/index.js +10 -8
  205. package/build/components/colors/index.js.map +1 -1
  206. package/build/components/colors/utils.js +7 -4
  207. package/build/components/colors/utils.js.map +1 -1
  208. package/build/components/colors/with-colors.js +17 -6
  209. package/build/components/colors/with-colors.js.map +1 -1
  210. package/build/components/colors-gradients/control.js +16 -15
  211. package/build/components/colors-gradients/control.js.map +1 -1
  212. package/build/components/colors-gradients/panel-color-gradient-settings.js +56 -49
  213. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  214. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +28 -24
  215. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  216. package/build/components/contrast-checker/index.js +18 -15
  217. package/build/components/contrast-checker/index.js.map +1 -1
  218. package/build/components/convert-to-group-buttons/index.js +9 -8
  219. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  220. package/build/components/copy-handler/index.js +6 -5
  221. package/build/components/copy-handler/index.js.map +1 -1
  222. package/build/components/default-block-appender/index.js +10 -8
  223. package/build/components/default-block-appender/index.js.map +1 -1
  224. package/build/components/default-block-appender/index.native.js +10 -8
  225. package/build/components/default-block-appender/index.native.js.map +1 -1
  226. package/build/components/default-style-picker/index.js +14 -10
  227. package/build/components/default-style-picker/index.js.map +1 -1
  228. package/build/components/duotone-control/index.js +15 -12
  229. package/build/components/duotone-control/index.js.map +1 -1
  230. package/build/components/editable-text/index.js +6 -5
  231. package/build/components/editable-text/index.js.map +1 -1
  232. package/build/components/editor-styles/index.js +4 -3
  233. package/build/components/editor-styles/index.js.map +1 -1
  234. package/build/components/floating-toolbar/index.native.js +8 -7
  235. package/build/components/floating-toolbar/index.native.js.map +1 -1
  236. package/build/components/font-appearance-control/index.js +26 -19
  237. package/build/components/font-appearance-control/index.js.map +1 -1
  238. package/build/components/font-family/index.js +12 -10
  239. package/build/components/font-family/index.js.map +1 -1
  240. package/build/components/font-sizes/index.js +6 -6
  241. package/build/components/font-sizes/index.native.js +6 -6
  242. package/build/components/font-sizes/utils.js +2 -2
  243. package/build/components/font-sizes/with-font-sizes.js +11 -5
  244. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  245. package/build/components/gradients/use-gradient.js +7 -6
  246. package/build/components/gradients/use-gradient.js.map +1 -1
  247. package/build/components/iframe/index.js +28 -22
  248. package/build/components/iframe/index.js.map +1 -1
  249. package/build/components/image-editor/aspect-ratio-dropdown.js +90 -82
  250. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  251. package/build/components/image-editor/constants.js +1 -1
  252. package/build/components/image-editor/context.js +11 -10
  253. package/build/components/image-editor/context.js.map +1 -1
  254. package/build/components/image-editor/cropper.js +9 -8
  255. package/build/components/image-editor/cropper.js.map +1 -1
  256. package/build/components/image-editor/index.js +10 -9
  257. package/build/components/image-editor/index.js.map +1 -1
  258. package/build/components/image-editor/use-save-image.js +12 -11
  259. package/build/components/image-editor/use-save-image.js.map +1 -1
  260. package/build/components/image-editor/use-transform-image.js +6 -5
  261. package/build/components/image-editor/use-transform-image.js.map +1 -1
  262. package/build/components/image-editor/zoom-dropdown.js +13 -10
  263. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  264. package/build/components/image-size-control/index.js +12 -11
  265. package/build/components/image-size-control/index.js.map +1 -1
  266. package/build/components/index.js +210 -208
  267. package/build/components/index.js.map +1 -1
  268. package/build/components/index.native.js +112 -110
  269. package/build/components/index.native.js.map +1 -1
  270. package/build/components/inner-blocks/button-block-appender.js +8 -7
  271. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  272. package/build/components/inner-blocks/default-block-appender.js +9 -7
  273. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  274. package/build/components/inner-blocks/index.js +4 -2
  275. package/build/components/inner-blocks/index.js.map +1 -1
  276. package/build/components/inner-blocks/index.native.js +4 -2
  277. package/build/components/inner-blocks/index.native.js.map +1 -1
  278. package/build/components/inserter/block-patterns-explorer/explorer.js +10 -8
  279. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  280. package/build/components/inserter/block-patterns-explorer/patterns-list.js +12 -9
  281. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  282. package/build/components/inserter/block-patterns-explorer/sidebar.js +24 -20
  283. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  284. package/build/components/inserter/block-patterns-tab.js +26 -20
  285. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  286. package/build/components/inserter/block-types-tab.js +9 -7
  287. package/build/components/inserter/block-types-tab.js.map +1 -1
  288. package/build/components/inserter/block-types-tab.native.js +9 -8
  289. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  290. package/build/components/inserter/hooks/use-block-type-impressions.native.js +5 -3
  291. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  292. package/build/components/inserter/hooks/use-block-types-state.js +6 -5
  293. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  294. package/build/components/inserter/hooks/use-insertion-point.js +11 -9
  295. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  296. package/build/components/inserter/index.js +36 -28
  297. package/build/components/inserter/index.js.map +1 -1
  298. package/build/components/inserter/index.native.js +46 -37
  299. package/build/components/inserter/index.native.js.map +1 -1
  300. package/build/components/inserter/library.js +12 -11
  301. package/build/components/inserter/library.js.map +1 -1
  302. package/build/components/inserter/menu.js +12 -11
  303. package/build/components/inserter/menu.js.map +1 -1
  304. package/build/components/inserter/menu.native.js +31 -27
  305. package/build/components/inserter/menu.native.js.map +1 -1
  306. package/build/components/inserter/panel.js +6 -5
  307. package/build/components/inserter/panel.js.map +1 -1
  308. package/build/components/inserter/pattern-panel.js +7 -6
  309. package/build/components/inserter/pattern-panel.js.map +1 -1
  310. package/build/components/inserter/preview-panel.js +4 -3
  311. package/build/components/inserter/preview-panel.js.map +1 -1
  312. package/build/components/inserter/quick-inserter.js +7 -6
  313. package/build/components/inserter/quick-inserter.js.map +1 -1
  314. package/build/components/inserter/reusable-blocks-tab.js +18 -13
  315. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  316. package/build/components/inserter/reusable-blocks-tab.native.js +6 -5
  317. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  318. package/build/components/inserter/search-items.js +23 -7
  319. package/build/components/inserter/search-items.js.map +1 -1
  320. package/build/components/inserter/search-results.js +15 -14
  321. package/build/components/inserter/search-results.js.map +1 -1
  322. package/build/components/inserter/search-results.native.js +11 -10
  323. package/build/components/inserter/search-results.native.js.map +1 -1
  324. package/build/components/inserter/tabs.js +7 -6
  325. package/build/components/inserter/tabs.js.map +1 -1
  326. package/build/components/inserter/tabs.native.js +55 -37
  327. package/build/components/inserter/tabs.native.js.map +1 -1
  328. package/build/components/inserter/utils.native.js +10 -8
  329. package/build/components/inserter/utils.native.js.map +1 -1
  330. package/build/components/inserter-draggable-blocks/index.js +12 -10
  331. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  332. package/build/components/inserter-list-item/index.js +79 -73
  333. package/build/components/inserter-list-item/index.js.map +1 -1
  334. package/build/components/inserter-listbox/index.js +8 -7
  335. package/build/components/inserter-listbox/index.js.map +1 -1
  336. package/build/components/inserter-listbox/item.js +7 -6
  337. package/build/components/inserter-listbox/item.js.map +1 -1
  338. package/build/components/inspector-controls/block-support-slot-container.js +5 -4
  339. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  340. package/build/components/inspector-controls/block-support-tools-panel.js +8 -6
  341. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  342. package/build/components/inspector-controls/fill.js +5 -4
  343. package/build/components/inspector-controls/fill.js.map +1 -1
  344. package/build/components/inspector-controls/fill.native.js +6 -5
  345. package/build/components/inspector-controls/fill.native.js.map +1 -1
  346. package/build/components/inspector-controls/slot.js +7 -6
  347. package/build/components/inspector-controls/slot.js.map +1 -1
  348. package/build/components/inspector-controls/slot.native.js +5 -4
  349. package/build/components/inspector-controls/slot.native.js.map +1 -1
  350. package/build/components/justify-content-control/ui.js +10 -8
  351. package/build/components/justify-content-control/ui.js.map +1 -1
  352. package/build/components/letter-spacing-control/index.js +6 -5
  353. package/build/components/letter-spacing-control/index.js.map +1 -1
  354. package/build/components/line-height-control/index.js +5 -4
  355. package/build/components/line-height-control/index.js.map +1 -1
  356. package/build/components/line-height-control/index.native.js +5 -4
  357. package/build/components/line-height-control/index.native.js.map +1 -1
  358. package/build/components/line-height-control/utils.js +1 -1
  359. package/build/components/link-control/index.js +25 -23
  360. package/build/components/link-control/index.js.map +1 -1
  361. package/build/components/link-control/link-preview.js +8 -7
  362. package/build/components/link-control/link-preview.js.map +1 -1
  363. package/build/components/link-control/search-create-button.js +9 -7
  364. package/build/components/link-control/search-create-button.js.map +1 -1
  365. package/build/components/link-control/search-input.js +21 -20
  366. package/build/components/link-control/search-input.js.map +1 -1
  367. package/build/components/link-control/search-item.js +10 -9
  368. package/build/components/link-control/search-item.js.map +1 -1
  369. package/build/components/link-control/search-results.js +15 -14
  370. package/build/components/link-control/search-results.js.map +1 -1
  371. package/build/components/link-control/settings-drawer.js +7 -5
  372. package/build/components/link-control/settings-drawer.js.map +1 -1
  373. package/build/components/link-control/use-search-handler.js +5 -4
  374. package/build/components/link-control/use-search-handler.js.map +1 -1
  375. package/build/components/link-control/viewer-slot.js +1 -1
  376. package/build/components/list-view/appender.js +27 -23
  377. package/build/components/list-view/appender.js.map +1 -1
  378. package/build/components/list-view/block-contents.js +32 -28
  379. package/build/components/list-view/block-contents.js.map +1 -1
  380. package/build/components/list-view/block-select-button.js +18 -17
  381. package/build/components/list-view/block-select-button.js.map +1 -1
  382. package/build/components/list-view/block.js +79 -66
  383. package/build/components/list-view/block.js.map +1 -1
  384. package/build/components/list-view/drop-indicator.js +5 -4
  385. package/build/components/list-view/drop-indicator.js.map +1 -1
  386. package/build/components/list-view/expander.js +4 -3
  387. package/build/components/list-view/expander.js.map +1 -1
  388. package/build/components/list-view/index.js +11 -10
  389. package/build/components/list-view/index.js.map +1 -1
  390. package/build/components/list-view/leaf.js +11 -10
  391. package/build/components/list-view/leaf.js.map +1 -1
  392. package/build/components/list-view/list-item.js +8 -7
  393. package/build/components/list-view/list-item.js.map +1 -1
  394. package/build/components/media-placeholder/index.js +86 -68
  395. package/build/components/media-placeholder/index.js.map +1 -1
  396. package/build/components/media-placeholder/index.native.js +5 -4
  397. package/build/components/media-placeholder/index.native.js.map +1 -1
  398. package/build/components/media-replace-flow/index.js +85 -72
  399. package/build/components/media-replace-flow/index.js.map +1 -1
  400. package/build/components/media-upload/check.js +5 -4
  401. package/build/components/media-upload/check.js.map +1 -1
  402. package/build/components/media-upload/index.native.js +1 -1
  403. package/build/components/media-upload-progress/index.native.js +1 -1
  404. package/build/components/multi-selection-inspector/index.js +4 -3
  405. package/build/components/multi-selection-inspector/index.js.map +1 -1
  406. package/build/components/navigable-toolbar/index.js +8 -7
  407. package/build/components/navigable-toolbar/index.js.map +1 -1
  408. package/build/components/observe-typing/index.js +5 -4
  409. package/build/components/observe-typing/index.js.map +1 -1
  410. package/build/components/panel-color-settings/index.js +16 -12
  411. package/build/components/panel-color-settings/index.js.map +1 -1
  412. package/build/components/plain-text/index.js +6 -4
  413. package/build/components/plain-text/index.js.map +1 -1
  414. package/build/components/preview-options/index.js +8 -7
  415. package/build/components/preview-options/index.js.map +1 -1
  416. package/build/components/provider/block-refs-provider.js +5 -4
  417. package/build/components/provider/block-refs-provider.js.map +1 -1
  418. package/build/components/provider/use-block-sync.js +8 -7
  419. package/build/components/provider/use-block-sync.js.map +1 -1
  420. package/build/components/provider/with-registry-provider.js +7 -5
  421. package/build/components/provider/with-registry-provider.js.map +1 -1
  422. package/build/components/responsive-block-control/label.js +6 -5
  423. package/build/components/responsive-block-control/label.js.map +1 -1
  424. package/build/components/rich-text/embed-handler-picker.native.js +7 -5
  425. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  426. package/build/components/rich-text/file-paste-handler.js +6 -3
  427. package/build/components/rich-text/file-paste-handler.js.map +1 -1
  428. package/build/components/rich-text/format-edit.js +8 -7
  429. package/build/components/rich-text/format-edit.js.map +1 -1
  430. package/build/components/rich-text/format-toolbar/index.js +18 -9
  431. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  432. package/build/components/rich-text/format-toolbar-container.js +6 -4
  433. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  434. package/build/components/rich-text/index.js +45 -41
  435. package/build/components/rich-text/index.js.map +1 -1
  436. package/build/components/rich-text/index.native.js +145 -122
  437. package/build/components/rich-text/index.native.js.map +1 -1
  438. package/build/components/rich-text/input-event.js +5 -4
  439. package/build/components/rich-text/input-event.js.map +1 -1
  440. package/build/components/rich-text/shortcut.js +6 -5
  441. package/build/components/rich-text/shortcut.js.map +1 -1
  442. package/build/components/rich-text/split-value.js +10 -8
  443. package/build/components/rich-text/split-value.js.map +1 -1
  444. package/build/components/rich-text/toolbar-button.js +7 -6
  445. package/build/components/rich-text/toolbar-button.js.map +1 -1
  446. package/build/components/rich-text/use-caret-in-format.js +4 -3
  447. package/build/components/rich-text/use-caret-in-format.js.map +1 -1
  448. package/build/components/rich-text/use-enter.js +6 -3
  449. package/build/components/rich-text/use-enter.js.map +1 -1
  450. package/build/components/rich-text/use-format-types.js +13 -10
  451. package/build/components/rich-text/use-format-types.js.map +1 -1
  452. package/build/components/rich-text/use-input-rules.js +15 -9
  453. package/build/components/rich-text/use-input-rules.js.map +1 -1
  454. package/build/components/rich-text/use-mark-persistent.js +5 -4
  455. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  456. package/build/components/rich-text/use-paste-handler.js +28 -4
  457. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  458. package/build/components/rich-text/utils.js +9 -7
  459. package/build/components/rich-text/utils.js.map +1 -1
  460. package/build/components/skip-to-selected-block/index.js +4 -3
  461. package/build/components/skip-to-selected-block/index.js.map +1 -1
  462. package/build/components/text-decoration-control/index.js +5 -4
  463. package/build/components/text-decoration-control/index.js.map +1 -1
  464. package/build/components/text-transform-control/index.js +5 -4
  465. package/build/components/text-transform-control/index.js.map +1 -1
  466. package/build/components/tool-selector/index.js +16 -13
  467. package/build/components/tool-selector/index.js.map +1 -1
  468. package/build/components/typewriter/index.js +10 -7
  469. package/build/components/typewriter/index.js.map +1 -1
  470. package/build/components/ungroup-button/index.native.js +12 -9
  471. package/build/components/ungroup-button/index.native.js.map +1 -1
  472. package/build/components/unit-control/index.js +5 -4
  473. package/build/components/unit-control/index.js.map +1 -1
  474. package/build/components/url-input/index.js +12 -9
  475. package/build/components/url-input/index.js.map +1 -1
  476. package/build/components/url-input/index.native.js +8 -6
  477. package/build/components/url-input/index.native.js.map +1 -1
  478. package/build/components/url-popover/image-url-input-ui.js +12 -11
  479. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  480. package/build/components/url-popover/index.js +9 -8
  481. package/build/components/url-popover/index.js.map +1 -1
  482. package/build/components/url-popover/link-editor.js +8 -7
  483. package/build/components/url-popover/link-editor.js.map +1 -1
  484. package/build/components/url-popover/link-viewer-url.js +6 -5
  485. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  486. package/build/components/url-popover/link-viewer.js +9 -8
  487. package/build/components/url-popover/link-viewer.js.map +1 -1
  488. package/build/components/use-block-drop-zone/index.js +9 -8
  489. package/build/components/use-block-drop-zone/index.js.map +1 -1
  490. package/build/components/use-moving-animation/index.js +17 -13
  491. package/build/components/use-moving-animation/index.js.map +1 -1
  492. package/build/components/use-no-recursive-renders/index.js +10 -6
  493. package/build/components/use-no-recursive-renders/index.js.map +1 -1
  494. package/build/components/use-on-block-drop/index.js +2 -2
  495. package/build/components/use-setting/index.js +1 -1
  496. package/build/components/use-setting/index.js.map +1 -1
  497. package/build/components/warning/index.js +7 -6
  498. package/build/components/warning/index.js.map +1 -1
  499. package/build/components/warning/index.native.js +10 -9
  500. package/build/components/warning/index.native.js.map +1 -1
  501. package/build/components/writing-flow/index.js +6 -5
  502. package/build/components/writing-flow/index.js.map +1 -1
  503. package/build/components/writing-flow/use-arrow-nav.js +2 -2
  504. package/build/hooks/align.js +12 -7
  505. package/build/hooks/align.js.map +1 -1
  506. package/build/hooks/border.js +4 -2
  507. package/build/hooks/border.js.map +1 -1
  508. package/build/hooks/color-panel.js +7 -6
  509. package/build/hooks/color-panel.js.map +1 -1
  510. package/build/hooks/color.js +4 -3
  511. package/build/hooks/color.js.map +1 -1
  512. package/build/hooks/dimensions.js +4 -2
  513. package/build/hooks/dimensions.js.map +1 -1
  514. package/build/hooks/duotone.js +13 -10
  515. package/build/hooks/duotone.js.map +1 -1
  516. package/build/hooks/font-appearance.js +17 -14
  517. package/build/hooks/font-appearance.js.map +1 -1
  518. package/build/hooks/font-family.js +29 -20
  519. package/build/hooks/font-family.js.map +1 -1
  520. package/build/hooks/font-size.js +10 -8
  521. package/build/hooks/font-size.js.map +1 -1
  522. package/build/hooks/gap.js +10 -8
  523. package/build/hooks/gap.js.map +1 -1
  524. package/build/hooks/index.js +14 -14
  525. package/build/hooks/index.native.js +10 -10
  526. package/build/hooks/layout.js +16 -13
  527. package/build/hooks/layout.js.map +1 -1
  528. package/build/hooks/letter-spacing.js +11 -9
  529. package/build/hooks/letter-spacing.js.map +1 -1
  530. package/build/hooks/line-height.js +11 -9
  531. package/build/hooks/line-height.js.map +1 -1
  532. package/build/hooks/margin.js +10 -8
  533. package/build/hooks/margin.js.map +1 -1
  534. package/build/hooks/padding.js +10 -8
  535. package/build/hooks/padding.js.map +1 -1
  536. package/build/hooks/style.js +9 -5
  537. package/build/hooks/style.js.map +1 -1
  538. package/build/hooks/text-decoration.js +11 -9
  539. package/build/hooks/text-decoration.js.map +1 -1
  540. package/build/hooks/text-transform.js +11 -9
  541. package/build/hooks/text-transform.js.map +1 -1
  542. package/build/hooks/typography.js +3 -2
  543. package/build/hooks/typography.js.map +1 -1
  544. package/build/hooks/typography.native.js +3 -2
  545. package/build/hooks/typography.native.js.map +1 -1
  546. package/build/hooks/use-border-props.js +5 -4
  547. package/build/hooks/use-border-props.js.map +1 -1
  548. package/build/index.js +18 -18
  549. package/build/layouts/flex.js +67 -39
  550. package/build/layouts/flex.js.map +1 -1
  551. package/build/layouts/flow.js +10 -8
  552. package/build/layouts/flow.js.map +1 -1
  553. package/build/layouts/index.js +2 -1
  554. package/build/layouts/index.js.map +1 -1
  555. package/build/layouts/utils.js +2 -1
  556. package/build/layouts/utils.js.map +1 -1
  557. package/build/store/actions.js +311 -232
  558. package/build/store/actions.js.map +1 -1
  559. package/build/store/array.js +2 -1
  560. package/build/store/array.js.map +1 -1
  561. package/build/store/index.js +5 -3
  562. package/build/store/index.js.map +1 -1
  563. package/build/store/reducer.js +124 -49
  564. package/build/store/reducer.js.map +1 -1
  565. package/build/store/selectors.js +219 -141
  566. package/build/store/selectors.js.map +1 -1
  567. package/build/utils/block-variation-transforms.js +4 -3
  568. package/build/utils/block-variation-transforms.js.map +1 -1
  569. package/build/utils/dom.js +1 -1
  570. package/build/utils/get-paste-event-data.js +10 -6
  571. package/build/utils/get-paste-event-data.js.map +1 -1
  572. package/build/utils/index.js +4 -4
  573. package/build/utils/math.js +2 -1
  574. package/build/utils/math.js.map +1 -1
  575. package/build/utils/parse-css-unit-to-px.js +6 -3
  576. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  577. package/build/utils/transform-styles/index.js +8 -6
  578. package/build/utils/transform-styles/index.js.map +1 -1
  579. package/build/utils/transform-styles/transforms/wrap.js +31 -28
  580. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  581. package/build-module/components/alignment-control/ui.js +11 -9
  582. package/build-module/components/alignment-control/ui.js.map +1 -1
  583. package/build-module/components/autocomplete/index.js +4 -3
  584. package/build-module/components/autocomplete/index.js.map +1 -1
  585. package/build-module/components/block-actions/index.js +12 -8
  586. package/build-module/components/block-actions/index.js.map +1 -1
  587. package/build-module/components/block-alignment-control/ui.js +21 -17
  588. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  589. package/build-module/components/block-alignment-control/use-available-alignments.js +9 -4
  590. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  591. package/build-module/components/block-alignment-matrix-control/index.js +6 -4
  592. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  593. package/build-module/components/block-breadcrumb/index.js +4 -3
  594. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  595. package/build-module/components/block-caption/index.native.js +34 -29
  596. package/build-module/components/block-caption/index.native.js.map +1 -1
  597. package/build-module/components/block-card/index.js +8 -6
  598. package/build-module/components/block-card/index.js.map +1 -1
  599. package/build-module/components/block-compare/block-view.js +9 -8
  600. package/build-module/components/block-compare/block-view.js.map +1 -1
  601. package/build-module/components/block-compare/index.js +9 -7
  602. package/build-module/components/block-compare/index.js.map +1 -1
  603. package/build-module/components/block-content-overlay/index.js +7 -6
  604. package/build-module/components/block-content-overlay/index.js.map +1 -1
  605. package/build-module/components/block-context/index.js +5 -4
  606. package/build-module/components/block-context/index.js.map +1 -1
  607. package/build-module/components/block-controls/fill.js +7 -6
  608. package/build-module/components/block-controls/fill.js.map +1 -1
  609. package/build-module/components/block-controls/slot.js +5 -4
  610. package/build-module/components/block-controls/slot.js.map +1 -1
  611. package/build-module/components/block-controls/slot.native.js +5 -4
  612. package/build-module/components/block-controls/slot.native.js.map +1 -1
  613. package/build-module/components/block-draggable/draggable-chip.js +5 -4
  614. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  615. package/build-module/components/block-draggable/index.js +13 -11
  616. package/build-module/components/block-draggable/index.js.map +1 -1
  617. package/build-module/components/block-full-height-alignment-control/index.js +7 -6
  618. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  619. package/build-module/components/block-icon/index.js +7 -5
  620. package/build-module/components/block-icon/index.js.map +1 -1
  621. package/build-module/components/block-icon/index.native.js +8 -6
  622. package/build-module/components/block-icon/index.native.js.map +1 -1
  623. package/build-module/components/block-inspector/index.js +16 -13
  624. package/build-module/components/block-inspector/index.js.map +1 -1
  625. package/build-module/components/block-list/block-html.js +4 -3
  626. package/build-module/components/block-list/block-html.js.map +1 -1
  627. package/build-module/components/block-list/block-invalid-warning.js +27 -19
  628. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  629. package/build-module/components/block-list/block-invalid-warning.native.js +5 -4
  630. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  631. package/build-module/components/block-list/block-list-item.native.js +6 -5
  632. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  633. package/build-module/components/block-list/block-selection-button.native.js +11 -9
  634. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  635. package/build-module/components/block-list/block.js +40 -33
  636. package/build-module/components/block-list/block.js.map +1 -1
  637. package/build-module/components/block-list/block.native.js +35 -29
  638. package/build-module/components/block-list/block.native.js.map +1 -1
  639. package/build-module/components/block-list/index.js +13 -11
  640. package/build-module/components/block-list/index.js.map +1 -1
  641. package/build-module/components/block-list/index.native.js +21 -16
  642. package/build-module/components/block-list/index.native.js.map +1 -1
  643. package/build-module/components/block-list/insertion-point.native.js +4 -3
  644. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  645. package/build-module/components/block-list/layout.js +5 -4
  646. package/build-module/components/block-list/layout.js.map +1 -1
  647. package/build-module/components/block-list/subdirectory-icon.js +13 -10
  648. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  649. package/build-module/components/block-list/use-block-props/index.js +5 -3
  650. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  651. package/build-module/components/block-list/use-block-props/index.native.js +2 -1
  652. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  653. package/build-module/components/block-list/use-block-props/use-multi-selection.js +9 -6
  654. package/build-module/components/block-list/use-block-props/use-multi-selection.js.map +1 -1
  655. package/build-module/components/block-list-appender/index.js +16 -13
  656. package/build-module/components/block-list-appender/index.js.map +1 -1
  657. package/build-module/components/block-list-appender/index.native.js +14 -11
  658. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  659. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +46 -42
  660. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  661. package/build-module/components/block-mobile-toolbar/index.js +4 -3
  662. package/build-module/components/block-mobile-toolbar/index.js.map +1 -1
  663. package/build-module/components/block-mobile-toolbar/index.native.js +33 -25
  664. package/build-module/components/block-mobile-toolbar/index.native.js.map +1 -1
  665. package/build-module/components/block-mover/button.js +7 -6
  666. package/build-module/components/block-mover/button.js.map +1 -1
  667. package/build-module/components/block-mover/index.js +15 -13
  668. package/build-module/components/block-mover/index.js.map +1 -1
  669. package/build-module/components/block-mover/index.native.js +22 -19
  670. package/build-module/components/block-mover/index.native.js.map +1 -1
  671. package/build-module/components/block-mover/mover-description.native.js +10 -7
  672. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  673. package/build-module/components/block-navigation/dropdown.js +26 -21
  674. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  675. package/build-module/components/block-pattern-setup/index.js +26 -22
  676. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  677. package/build-module/components/block-pattern-setup/setup-toolbar.js +46 -39
  678. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  679. package/build-module/components/block-patterns-list/index.js +44 -39
  680. package/build-module/components/block-patterns-list/index.js.map +1 -1
  681. package/build-module/components/block-preview/auto.js +5 -4
  682. package/build-module/components/block-preview/auto.js.map +1 -1
  683. package/build-module/components/block-preview/index.js +8 -7
  684. package/build-module/components/block-preview/index.js.map +1 -1
  685. package/build-module/components/block-preview/live.js +4 -3
  686. package/build-module/components/block-preview/live.js.map +1 -1
  687. package/build-module/components/block-settings/button.native.js +10 -7
  688. package/build-module/components/block-settings/button.native.js.map +1 -1
  689. package/build-module/components/block-settings/container.native.js +7 -6
  690. package/build-module/components/block-settings/container.native.js.map +1 -1
  691. package/build-module/components/block-settings-menu/block-convert-button.js +7 -5
  692. package/build-module/components/block-settings-menu/block-convert-button.js.map +1 -1
  693. package/build-module/components/block-settings-menu/block-html-convert-button.js +14 -10
  694. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  695. package/build-module/components/block-settings-menu/block-mode-toggle.js +25 -19
  696. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  697. package/build-module/components/block-settings-menu/block-settings-dropdown.js +74 -66
  698. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  699. package/build-module/components/block-settings-menu/index.js +5 -4
  700. package/build-module/components/block-settings-menu/index.js.map +1 -1
  701. package/build-module/components/block-settings-menu-controls/index.js +8 -6
  702. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  703. package/build-module/components/block-styles/index.js +20 -17
  704. package/build-module/components/block-styles/index.js.map +1 -1
  705. package/build-module/components/block-styles/index.native.js +6 -4
  706. package/build-module/components/block-styles/index.native.js.map +1 -1
  707. package/build-module/components/block-styles/preview.native.js +7 -6
  708. package/build-module/components/block-styles/preview.native.js.map +1 -1
  709. package/build-module/components/block-switcher/block-styles-menu.js +5 -4
  710. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  711. package/build-module/components/block-switcher/block-transformations-menu.js +7 -6
  712. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  713. package/build-module/components/block-switcher/block-transformations-menu.native.js +9 -8
  714. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  715. package/build-module/components/block-switcher/index.js +41 -33
  716. package/build-module/components/block-switcher/index.js.map +1 -1
  717. package/build-module/components/block-switcher/pattern-transformations-menu.js +22 -18
  718. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  719. package/build-module/components/block-switcher/preview-block-popover.js +4 -3
  720. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  721. package/build-module/components/block-switcher/utils.js +2 -1
  722. package/build-module/components/block-switcher/utils.js.map +1 -1
  723. package/build-module/components/block-title/index.js +4 -3
  724. package/build-module/components/block-title/index.js.map +1 -1
  725. package/build-module/components/block-toolbar/index.js +4 -3
  726. package/build-module/components/block-toolbar/index.js.map +1 -1
  727. package/build-module/components/block-toolbar/utils.js +13 -11
  728. package/build-module/components/block-toolbar/utils.js.map +1 -1
  729. package/build-module/components/block-tools/back-compat.js +4 -3
  730. package/build-module/components/block-tools/back-compat.js.map +1 -1
  731. package/build-module/components/block-tools/block-contextual-toolbar.js +6 -5
  732. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  733. package/build-module/components/block-tools/block-popover.js +15 -13
  734. package/build-module/components/block-tools/block-popover.js.map +1 -1
  735. package/build-module/components/block-tools/block-selection-button.js +6 -5
  736. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  737. package/build-module/components/block-tools/index.js +6 -5
  738. package/build-module/components/block-tools/index.js.map +1 -1
  739. package/build-module/components/block-tools/insertion-point.js +11 -9
  740. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  741. package/build-module/components/block-types-list/index.js +9 -8
  742. package/build-module/components/block-types-list/index.js.map +1 -1
  743. package/build-module/components/block-types-list/index.native.js +19 -15
  744. package/build-module/components/block-types-list/index.native.js.map +1 -1
  745. package/build-module/components/block-variation-picker/index.js +9 -8
  746. package/build-module/components/block-variation-picker/index.js.map +1 -1
  747. package/build-module/components/block-variation-picker/index.native.js +9 -7
  748. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  749. package/build-module/components/block-variation-transforms/index.js +22 -15
  750. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  751. package/build-module/components/block-vertical-alignment-control/ui.js +9 -7
  752. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  753. package/build-module/components/border-radius-control/all-input-control.js +6 -5
  754. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  755. package/build-module/components/border-radius-control/index.js +5 -4
  756. package/build-module/components/border-radius-control/index.js.map +1 -1
  757. package/build-module/components/border-radius-control/input-controls.js +16 -11
  758. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  759. package/build-module/components/border-radius-control/linked-button.js +5 -4
  760. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  761. package/build-module/components/border-radius-control/utils.js +8 -3
  762. package/build-module/components/border-radius-control/utils.js.map +1 -1
  763. package/build-module/components/border-style-control/index.js +5 -4
  764. package/build-module/components/border-style-control/index.js.map +1 -1
  765. package/build-module/components/button-block-appender/index.js +15 -13
  766. package/build-module/components/button-block-appender/index.js.map +1 -1
  767. package/build-module/components/button-block-appender/index.native.js +28 -24
  768. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  769. package/build-module/components/caption/index.native.js +44 -41
  770. package/build-module/components/caption/index.native.js.map +1 -1
  771. package/build-module/components/color-palette/control.js +6 -5
  772. package/build-module/components/color-palette/control.js.map +1 -1
  773. package/build-module/components/color-style-selector/index.js +43 -34
  774. package/build-module/components/color-style-selector/index.js.map +1 -1
  775. package/build-module/components/colors/color-panel.js +21 -18
  776. package/build-module/components/colors/color-panel.js.map +1 -1
  777. package/build-module/components/colors/utils.js +6 -3
  778. package/build-module/components/colors/utils.js.map +1 -1
  779. package/build-module/components/colors/with-colors.js +17 -6
  780. package/build-module/components/colors/with-colors.js.map +1 -1
  781. package/build-module/components/colors-gradients/control.js +16 -15
  782. package/build-module/components/colors-gradients/control.js.map +1 -1
  783. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +57 -50
  784. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  785. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +28 -24
  786. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  787. package/build-module/components/contrast-checker/index.js +18 -15
  788. package/build-module/components/contrast-checker/index.js.map +1 -1
  789. package/build-module/components/convert-to-group-buttons/index.js +9 -8
  790. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  791. package/build-module/components/copy-handler/index.js +4 -3
  792. package/build-module/components/copy-handler/index.js.map +1 -1
  793. package/build-module/components/default-block-appender/index.js +10 -8
  794. package/build-module/components/default-block-appender/index.js.map +1 -1
  795. package/build-module/components/default-block-appender/index.native.js +10 -8
  796. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  797. package/build-module/components/default-style-picker/index.js +14 -10
  798. package/build-module/components/default-style-picker/index.js.map +1 -1
  799. package/build-module/components/duotone-control/index.js +15 -12
  800. package/build-module/components/duotone-control/index.js.map +1 -1
  801. package/build-module/components/editable-text/index.js +6 -5
  802. package/build-module/components/editable-text/index.js.map +1 -1
  803. package/build-module/components/editor-styles/index.js +4 -3
  804. package/build-module/components/editor-styles/index.js.map +1 -1
  805. package/build-module/components/floating-toolbar/index.native.js +8 -7
  806. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  807. package/build-module/components/font-appearance-control/index.js +26 -19
  808. package/build-module/components/font-appearance-control/index.js.map +1 -1
  809. package/build-module/components/font-family/index.js +12 -10
  810. package/build-module/components/font-family/index.js.map +1 -1
  811. package/build-module/components/font-sizes/with-font-sizes.js +11 -5
  812. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  813. package/build-module/components/gradients/use-gradient.js +5 -4
  814. package/build-module/components/gradients/use-gradient.js.map +1 -1
  815. package/build-module/components/iframe/index.js +28 -22
  816. package/build-module/components/iframe/index.js.map +1 -1
  817. package/build-module/components/image-editor/aspect-ratio-dropdown.js +90 -82
  818. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  819. package/build-module/components/image-editor/context.js +11 -10
  820. package/build-module/components/image-editor/context.js.map +1 -1
  821. package/build-module/components/image-editor/cropper.js +9 -8
  822. package/build-module/components/image-editor/cropper.js.map +1 -1
  823. package/build-module/components/image-editor/index.js +9 -8
  824. package/build-module/components/image-editor/index.js.map +1 -1
  825. package/build-module/components/image-editor/use-save-image.js +12 -11
  826. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  827. package/build-module/components/image-editor/use-transform-image.js +6 -5
  828. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  829. package/build-module/components/image-editor/zoom-dropdown.js +13 -10
  830. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  831. package/build-module/components/image-size-control/index.js +12 -11
  832. package/build-module/components/image-size-control/index.js.map +1 -1
  833. package/build-module/components/inner-blocks/button-block-appender.js +8 -7
  834. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  835. package/build-module/components/inner-blocks/default-block-appender.js +9 -7
  836. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  837. package/build-module/components/inner-blocks/index.js +3 -1
  838. package/build-module/components/inner-blocks/index.js.map +1 -1
  839. package/build-module/components/inner-blocks/index.native.js +3 -1
  840. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  841. package/build-module/components/inserter/block-patterns-explorer/explorer.js +10 -8
  842. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  843. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +12 -9
  844. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  845. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +24 -20
  846. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  847. package/build-module/components/inserter/block-patterns-tab.js +26 -20
  848. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  849. package/build-module/components/inserter/block-types-tab.js +9 -7
  850. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  851. package/build-module/components/inserter/block-types-tab.native.js +9 -8
  852. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  853. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +5 -3
  854. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  855. package/build-module/components/inserter/hooks/use-block-types-state.js +6 -5
  856. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  857. package/build-module/components/inserter/hooks/use-insertion-point.js +11 -9
  858. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  859. package/build-module/components/inserter/index.js +36 -28
  860. package/build-module/components/inserter/index.js.map +1 -1
  861. package/build-module/components/inserter/index.native.js +46 -37
  862. package/build-module/components/inserter/index.native.js.map +1 -1
  863. package/build-module/components/inserter/library.js +12 -11
  864. package/build-module/components/inserter/library.js.map +1 -1
  865. package/build-module/components/inserter/menu.js +12 -11
  866. package/build-module/components/inserter/menu.js.map +1 -1
  867. package/build-module/components/inserter/menu.native.js +31 -27
  868. package/build-module/components/inserter/menu.native.js.map +1 -1
  869. package/build-module/components/inserter/panel.js +6 -5
  870. package/build-module/components/inserter/panel.js.map +1 -1
  871. package/build-module/components/inserter/pattern-panel.js +7 -6
  872. package/build-module/components/inserter/pattern-panel.js.map +1 -1
  873. package/build-module/components/inserter/preview-panel.js +4 -3
  874. package/build-module/components/inserter/preview-panel.js.map +1 -1
  875. package/build-module/components/inserter/quick-inserter.js +7 -6
  876. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  877. package/build-module/components/inserter/reusable-blocks-tab.js +18 -13
  878. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  879. package/build-module/components/inserter/reusable-blocks-tab.native.js +6 -5
  880. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  881. package/build-module/components/inserter/search-items.js +23 -7
  882. package/build-module/components/inserter/search-items.js.map +1 -1
  883. package/build-module/components/inserter/search-results.js +15 -14
  884. package/build-module/components/inserter/search-results.js.map +1 -1
  885. package/build-module/components/inserter/search-results.native.js +11 -10
  886. package/build-module/components/inserter/search-results.native.js.map +1 -1
  887. package/build-module/components/inserter/tabs.js +7 -6
  888. package/build-module/components/inserter/tabs.js.map +1 -1
  889. package/build-module/components/inserter/tabs.native.js +55 -37
  890. package/build-module/components/inserter/tabs.native.js.map +1 -1
  891. package/build-module/components/inserter/utils.native.js +10 -8
  892. package/build-module/components/inserter/utils.native.js.map +1 -1
  893. package/build-module/components/inserter-draggable-blocks/index.js +12 -10
  894. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  895. package/build-module/components/inserter-list-item/index.js +75 -69
  896. package/build-module/components/inserter-list-item/index.js.map +1 -1
  897. package/build-module/components/inserter-listbox/index.js +4 -3
  898. package/build-module/components/inserter-listbox/index.js.map +1 -1
  899. package/build-module/components/inserter-listbox/item.js +7 -6
  900. package/build-module/components/inserter-listbox/item.js.map +1 -1
  901. package/build-module/components/inspector-controls/block-support-slot-container.js +5 -4
  902. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  903. package/build-module/components/inspector-controls/block-support-tools-panel.js +8 -6
  904. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  905. package/build-module/components/inspector-controls/fill.js +5 -4
  906. package/build-module/components/inspector-controls/fill.js.map +1 -1
  907. package/build-module/components/inspector-controls/fill.native.js +6 -5
  908. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  909. package/build-module/components/inspector-controls/slot.js +7 -6
  910. package/build-module/components/inspector-controls/slot.js.map +1 -1
  911. package/build-module/components/inspector-controls/slot.native.js +5 -4
  912. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  913. package/build-module/components/justify-content-control/ui.js +10 -8
  914. package/build-module/components/justify-content-control/ui.js.map +1 -1
  915. package/build-module/components/letter-spacing-control/index.js +6 -5
  916. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  917. package/build-module/components/line-height-control/index.js +5 -4
  918. package/build-module/components/line-height-control/index.js.map +1 -1
  919. package/build-module/components/line-height-control/index.native.js +5 -4
  920. package/build-module/components/line-height-control/index.native.js.map +1 -1
  921. package/build-module/components/link-control/index.js +25 -23
  922. package/build-module/components/link-control/index.js.map +1 -1
  923. package/build-module/components/link-control/link-preview.js +8 -7
  924. package/build-module/components/link-control/link-preview.js.map +1 -1
  925. package/build-module/components/link-control/search-create-button.js +9 -7
  926. package/build-module/components/link-control/search-create-button.js.map +1 -1
  927. package/build-module/components/link-control/search-input.js +21 -20
  928. package/build-module/components/link-control/search-input.js.map +1 -1
  929. package/build-module/components/link-control/search-item.js +10 -9
  930. package/build-module/components/link-control/search-item.js.map +1 -1
  931. package/build-module/components/link-control/search-results.js +15 -14
  932. package/build-module/components/link-control/search-results.js.map +1 -1
  933. package/build-module/components/link-control/settings-drawer.js +7 -5
  934. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  935. package/build-module/components/link-control/use-search-handler.js +4 -3
  936. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  937. package/build-module/components/list-view/appender.js +27 -23
  938. package/build-module/components/list-view/appender.js.map +1 -1
  939. package/build-module/components/list-view/block-contents.js +32 -28
  940. package/build-module/components/list-view/block-contents.js.map +1 -1
  941. package/build-module/components/list-view/block-select-button.js +18 -17
  942. package/build-module/components/list-view/block-select-button.js.map +1 -1
  943. package/build-module/components/list-view/block.js +79 -66
  944. package/build-module/components/list-view/block.js.map +1 -1
  945. package/build-module/components/list-view/drop-indicator.js +5 -4
  946. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  947. package/build-module/components/list-view/expander.js +4 -3
  948. package/build-module/components/list-view/expander.js.map +1 -1
  949. package/build-module/components/list-view/index.js +11 -10
  950. package/build-module/components/list-view/index.js.map +1 -1
  951. package/build-module/components/list-view/leaf.js +11 -10
  952. package/build-module/components/list-view/leaf.js.map +1 -1
  953. package/build-module/components/list-view/list-item.js +8 -7
  954. package/build-module/components/list-view/list-item.js.map +1 -1
  955. package/build-module/components/media-placeholder/index.js +86 -68
  956. package/build-module/components/media-placeholder/index.js.map +1 -1
  957. package/build-module/components/media-placeholder/index.native.js +5 -4
  958. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  959. package/build-module/components/media-replace-flow/index.js +85 -72
  960. package/build-module/components/media-replace-flow/index.js.map +1 -1
  961. package/build-module/components/media-upload/check.js +5 -4
  962. package/build-module/components/media-upload/check.js.map +1 -1
  963. package/build-module/components/multi-selection-inspector/index.js +4 -3
  964. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  965. package/build-module/components/navigable-toolbar/index.js +8 -7
  966. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  967. package/build-module/components/observe-typing/index.js +4 -3
  968. package/build-module/components/observe-typing/index.js.map +1 -1
  969. package/build-module/components/panel-color-settings/index.js +16 -12
  970. package/build-module/components/panel-color-settings/index.js.map +1 -1
  971. package/build-module/components/plain-text/index.js +6 -4
  972. package/build-module/components/plain-text/index.js.map +1 -1
  973. package/build-module/components/preview-options/index.js +8 -7
  974. package/build-module/components/preview-options/index.js.map +1 -1
  975. package/build-module/components/provider/block-refs-provider.js +4 -3
  976. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  977. package/build-module/components/provider/use-block-sync.js +8 -7
  978. package/build-module/components/provider/use-block-sync.js.map +1 -1
  979. package/build-module/components/provider/with-registry-provider.js +7 -5
  980. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  981. package/build-module/components/responsive-block-control/label.js +6 -5
  982. package/build-module/components/responsive-block-control/label.js.map +1 -1
  983. package/build-module/components/rich-text/embed-handler-picker.native.js +7 -5
  984. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  985. package/build-module/components/rich-text/file-paste-handler.js +6 -3
  986. package/build-module/components/rich-text/file-paste-handler.js.map +1 -1
  987. package/build-module/components/rich-text/format-edit.js +8 -7
  988. package/build-module/components/rich-text/format-edit.js.map +1 -1
  989. package/build-module/components/rich-text/format-toolbar/index.js +18 -9
  990. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  991. package/build-module/components/rich-text/format-toolbar-container.js +6 -4
  992. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  993. package/build-module/components/rich-text/index.js +44 -40
  994. package/build-module/components/rich-text/index.js.map +1 -1
  995. package/build-module/components/rich-text/index.native.js +145 -122
  996. package/build-module/components/rich-text/index.native.js.map +1 -1
  997. package/build-module/components/rich-text/input-event.js +5 -4
  998. package/build-module/components/rich-text/input-event.js.map +1 -1
  999. package/build-module/components/rich-text/shortcut.js +6 -5
  1000. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1001. package/build-module/components/rich-text/split-value.js +10 -8
  1002. package/build-module/components/rich-text/split-value.js.map +1 -1
  1003. package/build-module/components/rich-text/toolbar-button.js +7 -6
  1004. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1005. package/build-module/components/rich-text/use-caret-in-format.js +4 -3
  1006. package/build-module/components/rich-text/use-caret-in-format.js.map +1 -1
  1007. package/build-module/components/rich-text/use-enter.js +6 -3
  1008. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1009. package/build-module/components/rich-text/use-format-types.js +13 -10
  1010. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1011. package/build-module/components/rich-text/use-input-rules.js +15 -9
  1012. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1013. package/build-module/components/rich-text/use-mark-persistent.js +5 -4
  1014. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1015. package/build-module/components/rich-text/use-paste-handler.js +28 -4
  1016. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1017. package/build-module/components/rich-text/utils.js +7 -5
  1018. package/build-module/components/rich-text/utils.js.map +1 -1
  1019. package/build-module/components/skip-to-selected-block/index.js +4 -3
  1020. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1021. package/build-module/components/text-decoration-control/index.js +5 -4
  1022. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1023. package/build-module/components/text-transform-control/index.js +5 -4
  1024. package/build-module/components/text-transform-control/index.js.map +1 -1
  1025. package/build-module/components/tool-selector/index.js +16 -13
  1026. package/build-module/components/tool-selector/index.js.map +1 -1
  1027. package/build-module/components/typewriter/index.js +9 -6
  1028. package/build-module/components/typewriter/index.js.map +1 -1
  1029. package/build-module/components/ungroup-button/index.native.js +12 -9
  1030. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1031. package/build-module/components/unit-control/index.js +5 -4
  1032. package/build-module/components/unit-control/index.js.map +1 -1
  1033. package/build-module/components/url-input/index.js +12 -9
  1034. package/build-module/components/url-input/index.js.map +1 -1
  1035. package/build-module/components/url-input/index.native.js +8 -6
  1036. package/build-module/components/url-input/index.native.js.map +1 -1
  1037. package/build-module/components/url-popover/image-url-input-ui.js +12 -11
  1038. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1039. package/build-module/components/url-popover/index.js +9 -8
  1040. package/build-module/components/url-popover/index.js.map +1 -1
  1041. package/build-module/components/url-popover/link-editor.js +8 -7
  1042. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1043. package/build-module/components/url-popover/link-viewer-url.js +6 -5
  1044. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1045. package/build-module/components/url-popover/link-viewer.js +9 -8
  1046. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1047. package/build-module/components/use-block-drop-zone/index.js +8 -7
  1048. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1049. package/build-module/components/use-moving-animation/index.js +17 -13
  1050. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1051. package/build-module/components/use-no-recursive-renders/index.js +10 -6
  1052. package/build-module/components/use-no-recursive-renders/index.js.map +1 -1
  1053. package/build-module/components/use-setting/index.js +1 -1
  1054. package/build-module/components/use-setting/index.js.map +1 -1
  1055. package/build-module/components/warning/index.js +7 -6
  1056. package/build-module/components/warning/index.js.map +1 -1
  1057. package/build-module/components/warning/index.native.js +10 -9
  1058. package/build-module/components/warning/index.native.js.map +1 -1
  1059. package/build-module/components/writing-flow/index.js +5 -4
  1060. package/build-module/components/writing-flow/index.js.map +1 -1
  1061. package/build-module/hooks/align.js +9 -4
  1062. package/build-module/hooks/align.js.map +1 -1
  1063. package/build-module/hooks/border.js +3 -1
  1064. package/build-module/hooks/border.js.map +1 -1
  1065. package/build-module/hooks/color-panel.js +7 -6
  1066. package/build-module/hooks/color-panel.js.map +1 -1
  1067. package/build-module/hooks/dimensions.js +2 -1
  1068. package/build-module/hooks/dimensions.js.map +1 -1
  1069. package/build-module/hooks/duotone.js +13 -10
  1070. package/build-module/hooks/duotone.js.map +1 -1
  1071. package/build-module/hooks/font-appearance.js +13 -10
  1072. package/build-module/hooks/font-appearance.js.map +1 -1
  1073. package/build-module/hooks/font-family.js +27 -18
  1074. package/build-module/hooks/font-family.js.map +1 -1
  1075. package/build-module/hooks/font-size.js +9 -7
  1076. package/build-module/hooks/font-size.js.map +1 -1
  1077. package/build-module/hooks/gap.js +9 -7
  1078. package/build-module/hooks/gap.js.map +1 -1
  1079. package/build-module/hooks/layout.js +16 -13
  1080. package/build-module/hooks/layout.js.map +1 -1
  1081. package/build-module/hooks/letter-spacing.js +9 -7
  1082. package/build-module/hooks/letter-spacing.js.map +1 -1
  1083. package/build-module/hooks/line-height.js +9 -7
  1084. package/build-module/hooks/line-height.js.map +1 -1
  1085. package/build-module/hooks/margin.js +9 -7
  1086. package/build-module/hooks/margin.js.map +1 -1
  1087. package/build-module/hooks/padding.js +9 -7
  1088. package/build-module/hooks/padding.js.map +1 -1
  1089. package/build-module/hooks/style.js +7 -3
  1090. package/build-module/hooks/style.js.map +1 -1
  1091. package/build-module/hooks/text-decoration.js +9 -7
  1092. package/build-module/hooks/text-decoration.js.map +1 -1
  1093. package/build-module/hooks/text-transform.js +9 -7
  1094. package/build-module/hooks/text-transform.js.map +1 -1
  1095. package/build-module/hooks/typography.js +2 -1
  1096. package/build-module/hooks/typography.js.map +1 -1
  1097. package/build-module/hooks/typography.native.js +2 -1
  1098. package/build-module/hooks/typography.native.js.map +1 -1
  1099. package/build-module/hooks/use-border-props.js +5 -4
  1100. package/build-module/hooks/use-border-props.js.map +1 -1
  1101. package/build-module/layouts/flex.js +67 -39
  1102. package/build-module/layouts/flex.js.map +1 -1
  1103. package/build-module/layouts/flow.js +10 -8
  1104. package/build-module/layouts/flow.js.map +1 -1
  1105. package/build-module/layouts/index.js +2 -1
  1106. package/build-module/layouts/index.js.map +1 -1
  1107. package/build-module/layouts/utils.js +2 -1
  1108. package/build-module/layouts/utils.js.map +1 -1
  1109. package/build-module/store/actions.js +271 -206
  1110. package/build-module/store/actions.js.map +1 -1
  1111. package/build-module/store/array.js +2 -1
  1112. package/build-module/store/array.js.map +1 -1
  1113. package/build-module/store/reducer.js +108 -34
  1114. package/build-module/store/reducer.js.map +1 -1
  1115. package/build-module/store/selectors.js +158 -90
  1116. package/build-module/store/selectors.js.map +1 -1
  1117. package/build-module/utils/block-variation-transforms.js +4 -3
  1118. package/build-module/utils/block-variation-transforms.js.map +1 -1
  1119. package/build-module/utils/get-paste-event-data.js +10 -6
  1120. package/build-module/utils/get-paste-event-data.js.map +1 -1
  1121. package/build-module/utils/math.js +2 -1
  1122. package/build-module/utils/math.js.map +1 -1
  1123. package/build-module/utils/parse-css-unit-to-px.js +5 -2
  1124. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  1125. package/build-module/utils/transform-styles/index.js +8 -6
  1126. package/build-module/utils/transform-styles/index.js.map +1 -1
  1127. package/build-module/utils/transform-styles/transforms/wrap.js +28 -25
  1128. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  1129. package/build-style/style-rtl.css +68 -68
  1130. package/build-style/style.css +68 -68
  1131. package/package.json +27 -27
  1132. package/src/components/block-list-appender/style.scss +0 -42
  1133. package/src/components/button-block-appender/style.scss +0 -17
  1134. package/src/components/colors-gradients/panel-color-gradient-settings.js +56 -25
  1135. package/src/components/default-block-appender/style.scss +90 -16
  1136. package/src/components/inner-blocks/style.scss +4 -10
  1137. package/src/components/rich-text/use-paste-handler.js +22 -0
  1138. package/src/components/use-setting/index.js +1 -1
  1139. package/src/layouts/flex.js +25 -7
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/floating-toolbar/index.native.js"],"names":["EASE_IN_DURATION","EASE_OUT_DURATION","TRANSLATION_RANGE","FloatingToolbar","selectedClientId","parentId","showFloatingToolbar","onNavigateUp","isRTL","opacity","Animated","Value","current","previousSelection","setPreviousSelection","timing","toValue","duration","easing","Easing","ease","useNativeDriver","start","clientId","translationRange","Platform","OS","translation","interpolate","inputRange","outputRange","animationStyle","transform","translateY","previousSelectedClientId","previousSelectedParentId","showPrevious","blockSelectionButtonClientId","showNavUpButton","styles","floatingToolbar","toolbar","pipe","select","getSelectedBlockClientId","getBlockHierarchyRootClientId","getBlockRootClientId","getBlockCount","getSettings","blockEditorStore","rootBlockId","dispatch","selectBlock","initialPosition"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Animated, Easing, View, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\nimport NavigateUpSVG from './nav-up-icon';\nimport BlockSelectionButton from '../block-list/block-selection-button.native';\nimport { store as blockEditorStore } from '../../store';\n\nconst EASE_IN_DURATION = 250;\nconst EASE_OUT_DURATION = 80;\nconst TRANSLATION_RANGE = 8;\n\nconst FloatingToolbar = ( {\n\tselectedClientId,\n\tparentId,\n\tshowFloatingToolbar,\n\tonNavigateUp,\n\tisRTL,\n} ) => {\n\tconst opacity = useRef( new Animated.Value( 0 ) ).current;\n\t// Sustain old selection for proper block selection button rendering when exit animation is ongoing.\n\tconst [ previousSelection, setPreviousSelection ] = useState( {} );\n\n\tuseEffect( () => {\n\t\tAnimated.timing( opacity, {\n\t\t\ttoValue: showFloatingToolbar ? 1 : 0,\n\t\t\tduration: showFloatingToolbar\n\t\t\t\t? EASE_IN_DURATION\n\t\t\t\t: EASE_OUT_DURATION,\n\t\t\teasing: Easing.ease,\n\t\t\tuseNativeDriver: true,\n\t\t} ).start();\n\t}, [ showFloatingToolbar ] );\n\n\tuseEffect( () => {\n\t\tif ( showFloatingToolbar )\n\t\t\tsetPreviousSelection( { clientId: selectedClientId, parentId } );\n\t}, [ selectedClientId ] );\n\n\tconst translationRange =\n\t\t( Platform.OS === 'android' ? -1 : 1 ) * TRANSLATION_RANGE;\n\n\tconst translation = opacity.interpolate( {\n\t\tinputRange: [ 0, 1 ],\n\t\toutputRange: [ translationRange, 0 ],\n\t} );\n\n\tconst animationStyle = {\n\t\topacity,\n\t\ttransform: [ { translateY: translation } ],\n\t};\n\n\tconst {\n\t\tclientId: previousSelectedClientId,\n\t\tparentId: previousSelectedParentId,\n\t} = previousSelection;\n\n\tconst showPrevious = previousSelectedClientId && ! showFloatingToolbar;\n\tconst blockSelectionButtonClientId = showPrevious\n\t\t? previousSelectedClientId\n\t\t: selectedClientId;\n\tconst showNavUpButton =\n\t\t!! parentId || ( showPrevious && !! previousSelectedParentId );\n\n\treturn (\n\t\t!! opacity && (\n\t\t\t<Animated.View\n\t\t\t\tstyle={ [ styles.floatingToolbar, animationStyle ] }\n\t\t\t\tpointerEvents={ showFloatingToolbar ? 'auto' : 'none' }\n\t\t\t>\n\t\t\t\t{ showNavUpButton && (\n\t\t\t\t\t<ToolbarGroup passedStyle={ styles.toolbar }>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Navigate Up' ) }\n\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t! showPrevious &&\n\t\t\t\t\t\t\t\t( () => onNavigateUp( parentId ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ <NavigateUpSVG isRTL={ isRTL } /> }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<View style={ styles.pipe } />\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t) }\n\t\t\t\t<BlockSelectionButton\n\t\t\t\t\tclientId={ blockSelectionButtonClientId }\n\t\t\t\t/>\n\t\t\t</Animated.View>\n\t\t)\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetBlockHierarchyRootClientId,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockCount,\n\t\t\tgetSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectedClientId = getSelectedBlockClientId();\n\n\t\tif ( ! selectedClientId ) return;\n\n\t\tconst rootBlockId = getBlockHierarchyRootClientId( selectedClientId );\n\n\t\treturn {\n\t\t\tselectedClientId,\n\t\t\tshowFloatingToolbar: !! getBlockCount( rootBlockId ),\n\t\t\tparentId: getBlockRootClientId( selectedClientId ),\n\t\t\tisRTL: getSettings().isRTL,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\tonNavigateUp( clientId, initialPosition ) {\n\t\t\t\tselectBlock( clientId, initialPosition );\n\t\t\t},\n\t\t};\n\t} ),\n] )( FloatingToolbar );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/floating-toolbar/index.native.js"],"names":["EASE_IN_DURATION","EASE_OUT_DURATION","TRANSLATION_RANGE","FloatingToolbar","selectedClientId","parentId","showFloatingToolbar","onNavigateUp","isRTL","opacity","Animated","Value","current","previousSelection","setPreviousSelection","timing","toValue","duration","easing","Easing","ease","useNativeDriver","start","clientId","translationRange","Platform","OS","translation","interpolate","inputRange","outputRange","animationStyle","transform","translateY","previousSelectedClientId","previousSelectedParentId","showPrevious","blockSelectionButtonClientId","showNavUpButton","styles","floatingToolbar","toolbar","pipe","select","getSelectedBlockClientId","getBlockHierarchyRootClientId","getBlockRootClientId","getBlockCount","getSettings","blockEditorStore","rootBlockId","dispatch","selectBlock","initialPosition"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Animated, Easing, View, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\nimport NavigateUpSVG from './nav-up-icon';\nimport BlockSelectionButton from '../block-list/block-selection-button.native';\nimport { store as blockEditorStore } from '../../store';\n\nconst EASE_IN_DURATION = 250;\nconst EASE_OUT_DURATION = 80;\nconst TRANSLATION_RANGE = 8;\n\nconst FloatingToolbar = ( {\n\tselectedClientId,\n\tparentId,\n\tshowFloatingToolbar,\n\tonNavigateUp,\n\tisRTL,\n} ) => {\n\tconst opacity = useRef( new Animated.Value( 0 ) ).current;\n\t// Sustain old selection for proper block selection button rendering when exit animation is ongoing.\n\tconst [ previousSelection, setPreviousSelection ] = useState( {} );\n\n\tuseEffect( () => {\n\t\tAnimated.timing( opacity, {\n\t\t\ttoValue: showFloatingToolbar ? 1 : 0,\n\t\t\tduration: showFloatingToolbar\n\t\t\t\t? EASE_IN_DURATION\n\t\t\t\t: EASE_OUT_DURATION,\n\t\t\teasing: Easing.ease,\n\t\t\tuseNativeDriver: true,\n\t\t} ).start();\n\t}, [ showFloatingToolbar ] );\n\n\tuseEffect( () => {\n\t\tif ( showFloatingToolbar )\n\t\t\tsetPreviousSelection( { clientId: selectedClientId, parentId } );\n\t}, [ selectedClientId ] );\n\n\tconst translationRange =\n\t\t( Platform.OS === 'android' ? -1 : 1 ) * TRANSLATION_RANGE;\n\n\tconst translation = opacity.interpolate( {\n\t\tinputRange: [ 0, 1 ],\n\t\toutputRange: [ translationRange, 0 ],\n\t} );\n\n\tconst animationStyle = {\n\t\topacity,\n\t\ttransform: [ { translateY: translation } ],\n\t};\n\n\tconst {\n\t\tclientId: previousSelectedClientId,\n\t\tparentId: previousSelectedParentId,\n\t} = previousSelection;\n\n\tconst showPrevious = previousSelectedClientId && ! showFloatingToolbar;\n\tconst blockSelectionButtonClientId = showPrevious\n\t\t? previousSelectedClientId\n\t\t: selectedClientId;\n\tconst showNavUpButton =\n\t\t!! parentId || ( showPrevious && !! previousSelectedParentId );\n\n\treturn (\n\t\t!! opacity && (\n\t\t\t<Animated.View\n\t\t\t\tstyle={ [ styles.floatingToolbar, animationStyle ] }\n\t\t\t\tpointerEvents={ showFloatingToolbar ? 'auto' : 'none' }\n\t\t\t>\n\t\t\t\t{ showNavUpButton && (\n\t\t\t\t\t<ToolbarGroup passedStyle={ styles.toolbar }>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Navigate Up' ) }\n\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t! showPrevious &&\n\t\t\t\t\t\t\t\t( () => onNavigateUp( parentId ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ <NavigateUpSVG isRTL={ isRTL } /> }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<View style={ styles.pipe } />\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t) }\n\t\t\t\t<BlockSelectionButton\n\t\t\t\t\tclientId={ blockSelectionButtonClientId }\n\t\t\t\t/>\n\t\t\t</Animated.View>\n\t\t)\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetBlockHierarchyRootClientId,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockCount,\n\t\t\tgetSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectedClientId = getSelectedBlockClientId();\n\n\t\tif ( ! selectedClientId ) return;\n\n\t\tconst rootBlockId = getBlockHierarchyRootClientId( selectedClientId );\n\n\t\treturn {\n\t\t\tselectedClientId,\n\t\t\tshowFloatingToolbar: !! getBlockCount( rootBlockId ),\n\t\t\tparentId: getBlockRootClientId( selectedClientId ),\n\t\t\tisRTL: getSettings().isRTL,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\tonNavigateUp( clientId, initialPosition ) {\n\t\t\t\tselectBlock( clientId, initialPosition );\n\t\t\t},\n\t\t};\n\t} ),\n] )( FloatingToolbar );\n"]}
@@ -104,14 +104,16 @@ function FontAppearanceControl(props) {
104
104
 
105
105
  const combineOptions = () => {
106
106
  const combinedOptions = [defaultOption];
107
- FONT_STYLES.forEach(({
108
- name: styleName,
109
- value: styleValue
110
- }) => {
111
- FONT_WEIGHTS.forEach(({
112
- name: weightName,
113
- value: weightValue
114
- }) => {
107
+ FONT_STYLES.forEach(_ref => {
108
+ let {
109
+ name: styleName,
110
+ value: styleValue
111
+ } = _ref;
112
+ FONT_WEIGHTS.forEach(_ref2 => {
113
+ let {
114
+ name: weightName,
115
+ value: weightValue
116
+ } = _ref2;
115
117
  const optionName = styleValue === 'normal' ? weightName : (0, _i18n.sprintf)(
116
118
  /* translators: 1: Font weight name. 2: Font style name. */
117
119
  (0, _i18n.__)('%1$s %2$s'), weightName, styleName);
@@ -131,10 +133,11 @@ function FontAppearanceControl(props) {
131
133
 
132
134
  const styleOptions = () => {
133
135
  const combinedOptions = [defaultOption];
134
- FONT_STYLES.forEach(({
135
- name,
136
- value
137
- }) => {
136
+ FONT_STYLES.forEach(_ref3 => {
137
+ let {
138
+ name,
139
+ value
140
+ } = _ref3;
138
141
  combinedOptions.push({
139
142
  key: value,
140
143
  name,
@@ -150,10 +153,11 @@ function FontAppearanceControl(props) {
150
153
 
151
154
  const weightOptions = () => {
152
155
  const combinedOptions = [defaultOption];
153
- FONT_WEIGHTS.forEach(({
154
- name,
155
- value
156
- }) => {
156
+ FONT_WEIGHTS.forEach(_ref4 => {
157
+ let {
158
+ name,
159
+ value
160
+ } = _ref4;
157
161
  combinedOptions.push({
158
162
  key: value,
159
163
  name,
@@ -203,9 +207,12 @@ function FontAppearanceControl(props) {
203
207
  describedBy: getDescribedBy(),
204
208
  options: selectOptions,
205
209
  value: currentSelection,
206
- onChange: ({
207
- selectedItem
208
- }) => onChange(selectedItem.style)
210
+ onChange: _ref5 => {
211
+ let {
212
+ selectedItem
213
+ } = _ref5;
214
+ return onChange(selectedItem.style);
215
+ }
209
216
  });
210
217
  }
211
218
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/font-appearance-control/index.js"],"names":["FONT_STYLES","name","value","FONT_WEIGHTS","getFontAppearanceLabel","hasFontStyles","hasFontWeights","FontAppearanceControl","props","onChange","fontStyle","fontWeight","hasStylesOrWeights","label","defaultOption","key","style","undefined","combineOptions","combinedOptions","forEach","styleName","styleValue","weightName","weightValue","optionName","push","styleOptions","weightOptions","selectOptions","options","currentSelection","find","option","getDescribedBy","selectedItem"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { CustomSelectControl } from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\nconst FONT_STYLES = [\n\t{\n\t\tname: __( 'Regular' ),\n\t\tvalue: 'normal',\n\t},\n\t{\n\t\tname: __( 'Italic' ),\n\t\tvalue: 'italic',\n\t},\n];\n\nconst FONT_WEIGHTS = [\n\t{\n\t\tname: __( 'Thin' ),\n\t\tvalue: '100',\n\t},\n\t{\n\t\tname: __( 'Extra Light' ),\n\t\tvalue: '200',\n\t},\n\t{\n\t\tname: __( 'Light' ),\n\t\tvalue: '300',\n\t},\n\t{\n\t\tname: __( 'Regular' ),\n\t\tvalue: '400',\n\t},\n\t{\n\t\tname: __( 'Medium' ),\n\t\tvalue: '500',\n\t},\n\t{\n\t\tname: __( 'Semi Bold' ),\n\t\tvalue: '600',\n\t},\n\t{\n\t\tname: __( 'Bold' ),\n\t\tvalue: '700',\n\t},\n\t{\n\t\tname: __( 'Extra Bold' ),\n\t\tvalue: '800',\n\t},\n\t{\n\t\tname: __( 'Black' ),\n\t\tvalue: '900',\n\t},\n];\n\n/**\n * Adjusts font appearance field label in case either font styles or weights\n * are disabled.\n *\n * @param {boolean} hasFontStyles Whether font styles are enabled and present.\n * @param {boolean} hasFontWeights Whether font weights are enabled and present.\n * @return {string} A label representing what font appearance is being edited.\n */\nexport const getFontAppearanceLabel = ( hasFontStyles, hasFontWeights ) => {\n\tif ( ! hasFontStyles ) {\n\t\treturn __( 'Font weight' );\n\t}\n\n\tif ( ! hasFontWeights ) {\n\t\treturn __( 'Font style' );\n\t}\n\n\treturn __( 'Appearance' );\n};\n\n/**\n * Control to display unified font style and weight options.\n *\n * @param {Object} props Component props.\n *\n * @return {WPElement} Font appearance control.\n */\nexport default function FontAppearanceControl( props ) {\n\tconst {\n\t\tonChange,\n\t\thasFontStyles = true,\n\t\thasFontWeights = true,\n\t\tvalue: { fontStyle, fontWeight },\n\t} = props;\n\tconst hasStylesOrWeights = hasFontStyles || hasFontWeights;\n\tconst label = getFontAppearanceLabel( hasFontStyles, hasFontWeights );\n\tconst defaultOption = {\n\t\tkey: 'default',\n\t\tname: __( 'Default' ),\n\t\tstyle: { fontStyle: undefined, fontWeight: undefined },\n\t};\n\n\t// Combines both font style and weight options into a single dropdown.\n\tconst combineOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\n\t\tFONT_STYLES.forEach( ( { name: styleName, value: styleValue } ) => {\n\t\t\tFONT_WEIGHTS.forEach(\n\t\t\t\t( { name: weightName, value: weightValue } ) => {\n\t\t\t\t\tconst optionName =\n\t\t\t\t\t\tstyleValue === 'normal'\n\t\t\t\t\t\t\t? weightName\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: Font weight name. 2: Font style name. */\n\t\t\t\t\t\t\t\t\t__( '%1$s %2$s' ),\n\t\t\t\t\t\t\t\t\tweightName,\n\t\t\t\t\t\t\t\t\tstyleName\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcombinedOptions.push( {\n\t\t\t\t\t\tkey: `${ styleValue }-${ weightValue }`,\n\t\t\t\t\t\tname: optionName,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tfontStyle: styleValue,\n\t\t\t\t\t\t\tfontWeight: weightValue,\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font styles only.\n\tconst styleOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_STYLES.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: value, fontWeight: undefined },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font weights only.\n\tconst weightOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_WEIGHTS.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: undefined, fontWeight: value },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Map font styles and weights to select options.\n\tconst selectOptions = useMemo( () => {\n\t\tif ( hasFontStyles && hasFontWeights ) {\n\t\t\treturn combineOptions();\n\t\t}\n\n\t\treturn hasFontStyles ? styleOptions() : weightOptions();\n\t}, [ props.options ] );\n\n\t// Find current selection by comparing font style & weight against options,\n\t// and fall back to the Default option if there is no matching option.\n\tconst currentSelection =\n\t\tselectOptions.find(\n\t\t\t( option ) =>\n\t\t\t\toption.style.fontStyle === fontStyle &&\n\t\t\t\toption.style.fontWeight === fontWeight\n\t\t) || selectOptions[ 0 ];\n\n\t// Adjusts screen reader description based on styles or weights.\n\tconst getDescribedBy = () => {\n\t\tif ( ! currentSelection ) {\n\t\t\treturn __( 'No selected font appearance' );\n\t\t}\n\n\t\tif ( ! hasFontStyles ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font weight.\n\t\t\t\t__( 'Currently selected font weight: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\tif ( ! hasFontWeights ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font style.\n\t\t\t\t__( 'Currently selected font style: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\treturn sprintf(\n\t\t\t// translators: %s: Currently selected font appearance.\n\t\t\t__( 'Currently selected font appearance: %s' ),\n\t\t\tcurrentSelection.name\n\t\t);\n\t};\n\n\treturn (\n\t\thasStylesOrWeights && (\n\t\t\t<CustomSelectControl\n\t\t\t\tclassName=\"components-font-appearance-control\"\n\t\t\t\tlabel={ label }\n\t\t\t\tdescribedBy={ getDescribedBy() }\n\t\t\t\toptions={ selectOptions }\n\t\t\t\tvalue={ currentSelection }\n\t\t\t\tonChange={ ( { selectedItem } ) =>\n\t\t\t\t\tonChange( selectedItem.style )\n\t\t\t\t}\n\t\t\t/>\n\t\t)\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/font-appearance-control/index.js"],"names":["FONT_STYLES","name","value","FONT_WEIGHTS","getFontAppearanceLabel","hasFontStyles","hasFontWeights","FontAppearanceControl","props","onChange","fontStyle","fontWeight","hasStylesOrWeights","label","defaultOption","key","style","undefined","combineOptions","combinedOptions","forEach","styleName","styleValue","weightName","weightValue","optionName","push","styleOptions","weightOptions","selectOptions","options","currentSelection","find","option","getDescribedBy","selectedItem"],"mappings":";;;;;;;;AAIA;;AADA;;AAEA;;AALA;AACA;AACA;AAKA,MAAMA,WAAW,GAAG,CACnB;AACCC,EAAAA,IAAI,EAAE,cAAI,SAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CADmB,EAKnB;AACCD,EAAAA,IAAI,EAAE,cAAI,QAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CALmB,CAApB;AAWA,MAAMC,YAAY,GAAG,CACpB;AACCF,EAAAA,IAAI,EAAE,cAAI,MAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CADoB,EAKpB;AACCD,EAAAA,IAAI,EAAE,cAAI,aAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CALoB,EASpB;AACCD,EAAAA,IAAI,EAAE,cAAI,OAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CAToB,EAapB;AACCD,EAAAA,IAAI,EAAE,cAAI,SAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CAboB,EAiBpB;AACCD,EAAAA,IAAI,EAAE,cAAI,QAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CAjBoB,EAqBpB;AACCD,EAAAA,IAAI,EAAE,cAAI,WAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CArBoB,EAyBpB;AACCD,EAAAA,IAAI,EAAE,cAAI,MAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CAzBoB,EA6BpB;AACCD,EAAAA,IAAI,EAAE,cAAI,YAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CA7BoB,EAiCpB;AACCD,EAAAA,IAAI,EAAE,cAAI,OAAJ,CADP;AAECC,EAAAA,KAAK,EAAE;AAFR,CAjCoB,CAArB;AAuCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,MAAME,sBAAsB,GAAG,CAAEC,aAAF,EAAiBC,cAAjB,KAAqC;AAC1E,MAAK,CAAED,aAAP,EAAuB;AACtB,WAAO,cAAI,aAAJ,CAAP;AACA;;AAED,MAAK,CAAEC,cAAP,EAAwB;AACvB,WAAO,cAAI,YAAJ,CAAP;AACA;;AAED,SAAO,cAAI,YAAJ,CAAP;AACA,CAVM;AAYP;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AACe,SAASC,qBAAT,CAAgCC,KAAhC,EAAwC;AACtD,QAAM;AACLC,IAAAA,QADK;AAELJ,IAAAA,aAAa,GAAG,IAFX;AAGLC,IAAAA,cAAc,GAAG,IAHZ;AAILJ,IAAAA,KAAK,EAAE;AAAEQ,MAAAA,SAAF;AAAaC,MAAAA;AAAb;AAJF,MAKFH,KALJ;AAMA,QAAMI,kBAAkB,GAAGP,aAAa,IAAIC,cAA5C;AACA,QAAMO,KAAK,GAAGT,sBAAsB,CAAEC,aAAF,EAAiBC,cAAjB,CAApC;AACA,QAAMQ,aAAa,GAAG;AACrBC,IAAAA,GAAG,EAAE,SADgB;AAErBd,IAAAA,IAAI,EAAE,cAAI,SAAJ,CAFe;AAGrBe,IAAAA,KAAK,EAAE;AAAEN,MAAAA,SAAS,EAAEO,SAAb;AAAwBN,MAAAA,UAAU,EAAEM;AAApC;AAHc,GAAtB,CATsD,CAetD;;AACA,QAAMC,cAAc,GAAG,MAAM;AAC5B,UAAMC,eAAe,GAAG,CAAEL,aAAF,CAAxB;AAEAd,IAAAA,WAAW,CAACoB,OAAZ,CAAqB,QAA8C;AAAA,UAA5C;AAAEnB,QAAAA,IAAI,EAAEoB,SAAR;AAAmBnB,QAAAA,KAAK,EAAEoB;AAA1B,OAA4C;AAClEnB,MAAAA,YAAY,CAACiB,OAAb,CACC,SAAgD;AAAA,YAA9C;AAAEnB,UAAAA,IAAI,EAAEsB,UAAR;AAAoBrB,UAAAA,KAAK,EAAEsB;AAA3B,SAA8C;AAC/C,cAAMC,UAAU,GACfH,UAAU,KAAK,QAAf,GACGC,UADH,GAEG;AACA;AACA,sBAAI,WAAJ,CAFA,EAGAA,UAHA,EAIAF,SAJA,CAHJ;AAUAF,QAAAA,eAAe,CAACO,IAAhB,CAAsB;AACrBX,UAAAA,GAAG,EAAG,GAAGO,UAAY,IAAIE,WAAa,EADjB;AAErBvB,UAAAA,IAAI,EAAEwB,UAFe;AAGrBT,UAAAA,KAAK,EAAE;AACNN,YAAAA,SAAS,EAAEY,UADL;AAENX,YAAAA,UAAU,EAAEa;AAFN;AAHc,SAAtB;AAQA,OApBF;AAsBA,KAvBD;AAyBA,WAAOL,eAAP;AACA,GA7BD,CAhBsD,CA+CtD;;;AACA,QAAMQ,YAAY,GAAG,MAAM;AAC1B,UAAMR,eAAe,GAAG,CAAEL,aAAF,CAAxB;AACAd,IAAAA,WAAW,CAACoB,OAAZ,CAAqB,SAAuB;AAAA,UAArB;AAAEnB,QAAAA,IAAF;AAAQC,QAAAA;AAAR,OAAqB;AAC3CiB,MAAAA,eAAe,CAACO,IAAhB,CAAsB;AACrBX,QAAAA,GAAG,EAAEb,KADgB;AAErBD,QAAAA,IAFqB;AAGrBe,QAAAA,KAAK,EAAE;AAAEN,UAAAA,SAAS,EAAER,KAAb;AAAoBS,UAAAA,UAAU,EAAEM;AAAhC;AAHc,OAAtB;AAKA,KAND;AAOA,WAAOE,eAAP;AACA,GAVD,CAhDsD,CA4DtD;;;AACA,QAAMS,aAAa,GAAG,MAAM;AAC3B,UAAMT,eAAe,GAAG,CAAEL,aAAF,CAAxB;AACAX,IAAAA,YAAY,CAACiB,OAAb,CAAsB,SAAuB;AAAA,UAArB;AAAEnB,QAAAA,IAAF;AAAQC,QAAAA;AAAR,OAAqB;AAC5CiB,MAAAA,eAAe,CAACO,IAAhB,CAAsB;AACrBX,QAAAA,GAAG,EAAEb,KADgB;AAErBD,QAAAA,IAFqB;AAGrBe,QAAAA,KAAK,EAAE;AAAEN,UAAAA,SAAS,EAAEO,SAAb;AAAwBN,UAAAA,UAAU,EAAET;AAApC;AAHc,OAAtB;AAKA,KAND;AAOA,WAAOiB,eAAP;AACA,GAVD,CA7DsD,CAyEtD;;;AACA,QAAMU,aAAa,GAAG,sBAAS,MAAM;AACpC,QAAKxB,aAAa,IAAIC,cAAtB,EAAuC;AACtC,aAAOY,cAAc,EAArB;AACA;;AAED,WAAOb,aAAa,GAAGsB,YAAY,EAAf,GAAoBC,aAAa,EAArD;AACA,GANqB,EAMnB,CAAEpB,KAAK,CAACsB,OAAR,CANmB,CAAtB,CA1EsD,CAkFtD;AACA;;AACA,QAAMC,gBAAgB,GACrBF,aAAa,CAACG,IAAd,CACGC,MAAF,IACCA,MAAM,CAACjB,KAAP,CAAaN,SAAb,KAA2BA,SAA3B,IACAuB,MAAM,CAACjB,KAAP,CAAaL,UAAb,KAA4BA,UAH9B,KAIKkB,aAAa,CAAE,CAAF,CALnB,CApFsD,CA2FtD;;AACA,QAAMK,cAAc,GAAG,MAAM;AAC5B,QAAK,CAAEH,gBAAP,EAA0B;AACzB,aAAO,cAAI,6BAAJ,CAAP;AACA;;AAED,QAAK,CAAE1B,aAAP,EAAuB;AACtB,aAAO,oBACN;AACA,oBAAI,oCAAJ,CAFM,EAGN0B,gBAAgB,CAAC9B,IAHX,CAAP;AAKA;;AAED,QAAK,CAAEK,cAAP,EAAwB;AACvB,aAAO,oBACN;AACA,oBAAI,mCAAJ,CAFM,EAGNyB,gBAAgB,CAAC9B,IAHX,CAAP;AAKA;;AAED,WAAO,oBACN;AACA,kBAAI,wCAAJ,CAFM,EAGN8B,gBAAgB,CAAC9B,IAHX,CAAP;AAKA,GA1BD;;AA4BA,SACCW,kBAAkB,IACjB,4BAAC,+BAAD;AACC,IAAA,SAAS,EAAC,oCADX;AAEC,IAAA,KAAK,EAAGC,KAFT;AAGC,IAAA,WAAW,EAAGqB,cAAc,EAH7B;AAIC,IAAA,OAAO,EAAGL,aAJX;AAKC,IAAA,KAAK,EAAGE,gBALT;AAMC,IAAA,QAAQ,EAAG;AAAA,UAAE;AAAEI,QAAAA;AAAF,OAAF;AAAA,aACV1B,QAAQ,CAAE0B,YAAY,CAACnB,KAAf,CADE;AAAA;AANZ,IAFF;AAcA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { CustomSelectControl } from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\nconst FONT_STYLES = [\n\t{\n\t\tname: __( 'Regular' ),\n\t\tvalue: 'normal',\n\t},\n\t{\n\t\tname: __( 'Italic' ),\n\t\tvalue: 'italic',\n\t},\n];\n\nconst FONT_WEIGHTS = [\n\t{\n\t\tname: __( 'Thin' ),\n\t\tvalue: '100',\n\t},\n\t{\n\t\tname: __( 'Extra Light' ),\n\t\tvalue: '200',\n\t},\n\t{\n\t\tname: __( 'Light' ),\n\t\tvalue: '300',\n\t},\n\t{\n\t\tname: __( 'Regular' ),\n\t\tvalue: '400',\n\t},\n\t{\n\t\tname: __( 'Medium' ),\n\t\tvalue: '500',\n\t},\n\t{\n\t\tname: __( 'Semi Bold' ),\n\t\tvalue: '600',\n\t},\n\t{\n\t\tname: __( 'Bold' ),\n\t\tvalue: '700',\n\t},\n\t{\n\t\tname: __( 'Extra Bold' ),\n\t\tvalue: '800',\n\t},\n\t{\n\t\tname: __( 'Black' ),\n\t\tvalue: '900',\n\t},\n];\n\n/**\n * Adjusts font appearance field label in case either font styles or weights\n * are disabled.\n *\n * @param {boolean} hasFontStyles Whether font styles are enabled and present.\n * @param {boolean} hasFontWeights Whether font weights are enabled and present.\n * @return {string} A label representing what font appearance is being edited.\n */\nexport const getFontAppearanceLabel = ( hasFontStyles, hasFontWeights ) => {\n\tif ( ! hasFontStyles ) {\n\t\treturn __( 'Font weight' );\n\t}\n\n\tif ( ! hasFontWeights ) {\n\t\treturn __( 'Font style' );\n\t}\n\n\treturn __( 'Appearance' );\n};\n\n/**\n * Control to display unified font style and weight options.\n *\n * @param {Object} props Component props.\n *\n * @return {WPElement} Font appearance control.\n */\nexport default function FontAppearanceControl( props ) {\n\tconst {\n\t\tonChange,\n\t\thasFontStyles = true,\n\t\thasFontWeights = true,\n\t\tvalue: { fontStyle, fontWeight },\n\t} = props;\n\tconst hasStylesOrWeights = hasFontStyles || hasFontWeights;\n\tconst label = getFontAppearanceLabel( hasFontStyles, hasFontWeights );\n\tconst defaultOption = {\n\t\tkey: 'default',\n\t\tname: __( 'Default' ),\n\t\tstyle: { fontStyle: undefined, fontWeight: undefined },\n\t};\n\n\t// Combines both font style and weight options into a single dropdown.\n\tconst combineOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\n\t\tFONT_STYLES.forEach( ( { name: styleName, value: styleValue } ) => {\n\t\t\tFONT_WEIGHTS.forEach(\n\t\t\t\t( { name: weightName, value: weightValue } ) => {\n\t\t\t\t\tconst optionName =\n\t\t\t\t\t\tstyleValue === 'normal'\n\t\t\t\t\t\t\t? weightName\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: Font weight name. 2: Font style name. */\n\t\t\t\t\t\t\t\t\t__( '%1$s %2$s' ),\n\t\t\t\t\t\t\t\t\tweightName,\n\t\t\t\t\t\t\t\t\tstyleName\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcombinedOptions.push( {\n\t\t\t\t\t\tkey: `${ styleValue }-${ weightValue }`,\n\t\t\t\t\t\tname: optionName,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tfontStyle: styleValue,\n\t\t\t\t\t\t\tfontWeight: weightValue,\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font styles only.\n\tconst styleOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_STYLES.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: value, fontWeight: undefined },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font weights only.\n\tconst weightOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_WEIGHTS.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: undefined, fontWeight: value },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Map font styles and weights to select options.\n\tconst selectOptions = useMemo( () => {\n\t\tif ( hasFontStyles && hasFontWeights ) {\n\t\t\treturn combineOptions();\n\t\t}\n\n\t\treturn hasFontStyles ? styleOptions() : weightOptions();\n\t}, [ props.options ] );\n\n\t// Find current selection by comparing font style & weight against options,\n\t// and fall back to the Default option if there is no matching option.\n\tconst currentSelection =\n\t\tselectOptions.find(\n\t\t\t( option ) =>\n\t\t\t\toption.style.fontStyle === fontStyle &&\n\t\t\t\toption.style.fontWeight === fontWeight\n\t\t) || selectOptions[ 0 ];\n\n\t// Adjusts screen reader description based on styles or weights.\n\tconst getDescribedBy = () => {\n\t\tif ( ! currentSelection ) {\n\t\t\treturn __( 'No selected font appearance' );\n\t\t}\n\n\t\tif ( ! hasFontStyles ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font weight.\n\t\t\t\t__( 'Currently selected font weight: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\tif ( ! hasFontWeights ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font style.\n\t\t\t\t__( 'Currently selected font style: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\treturn sprintf(\n\t\t\t// translators: %s: Currently selected font appearance.\n\t\t\t__( 'Currently selected font appearance: %s' ),\n\t\t\tcurrentSelection.name\n\t\t);\n\t};\n\n\treturn (\n\t\thasStylesOrWeights && (\n\t\t\t<CustomSelectControl\n\t\t\t\tclassName=\"components-font-appearance-control\"\n\t\t\t\tlabel={ label }\n\t\t\t\tdescribedBy={ getDescribedBy() }\n\t\t\t\toptions={ selectOptions }\n\t\t\t\tvalue={ currentSelection }\n\t\t\t\tonChange={ ( { selectedItem } ) =>\n\t\t\t\t\tonChange( selectedItem.style )\n\t\t\t\t}\n\t\t\t/>\n\t\t)\n\t);\n}\n"]}
@@ -30,12 +30,13 @@ var _useSetting = _interopRequireDefault(require("../use-setting"));
30
30
  /**
31
31
  * Internal dependencies
32
32
  */
33
- function FontFamilyControl({
34
- value = '',
35
- onChange,
36
- fontFamilies,
37
- ...props
38
- }) {
33
+ function FontFamilyControl(_ref) {
34
+ let {
35
+ value = '',
36
+ onChange,
37
+ fontFamilies,
38
+ ...props
39
+ } = _ref;
39
40
  const blockLevelFontFamilies = (0, _useSetting.default)('typography.fontFamilies');
40
41
 
41
42
  if (!fontFamilies) {
@@ -49,10 +50,11 @@ function FontFamilyControl({
49
50
  const options = [{
50
51
  value: '',
51
52
  label: (0, _i18n.__)('Default')
52
- }, ...fontFamilies.map(({
53
- fontFamily,
54
- name
55
- }) => {
53
+ }, ...fontFamilies.map(_ref2 => {
54
+ let {
55
+ fontFamily,
56
+ name
57
+ } = _ref2;
56
58
  return {
57
59
  value: fontFamily,
58
60
  label: name || fontFamily
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/font-family/index.js"],"names":["FontFamilyControl","value","onChange","fontFamilies","props","blockLevelFontFamilies","options","label","map","fontFamily","name"],"mappings":";;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAGe,SAASA,iBAAT,CAA4B;AAC1CC,EAAAA,KAAK,GAAG,EADkC;AAE1CC,EAAAA,QAF0C;AAG1CC,EAAAA,YAH0C;AAI1C,KAAGC;AAJuC,CAA5B,EAKX;AACH,QAAMC,sBAAsB,GAAG,yBAAY,yBAAZ,CAA/B;;AACA,MAAK,CAAEF,YAAP,EAAsB;AACrBA,IAAAA,YAAY,GAAGE,sBAAf;AACA;;AAED,MAAK,qBAASF,YAAT,CAAL,EAA+B;AAC9B,WAAO,IAAP;AACA;;AAED,QAAMG,OAAO,GAAG,CACf;AAAEL,IAAAA,KAAK,EAAE,EAAT;AAAaM,IAAAA,KAAK,EAAE,cAAI,SAAJ;AAApB,GADe,EAEf,GAAGJ,YAAY,CAACK,GAAb,CAAkB,CAAE;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAF,KAA4B;AAChD,WAAO;AACNT,MAAAA,KAAK,EAAEQ,UADD;AAENF,MAAAA,KAAK,EAAEG,IAAI,IAAID;AAFT,KAAP;AAIA,GALE,CAFY,CAAhB;AASA,SACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,aAAJ,CADT;AAEC,IAAA,OAAO,EAAGH,OAFX;AAGC,IAAA,KAAK,EAAGL,KAHT;AAIC,IAAA,QAAQ,EAAGC,QAJZ;AAKC,IAAA,aAAa,EAAC;AALf,KAMME,KANN,EADD;AAUA","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useSetting from '../use-setting';\n\nexport default function FontFamilyControl( {\n\tvalue = '',\n\tonChange,\n\tfontFamilies,\n\t...props\n} ) {\n\tconst blockLevelFontFamilies = useSetting( 'typography.fontFamilies' );\n\tif ( ! fontFamilies ) {\n\t\tfontFamilies = blockLevelFontFamilies;\n\t}\n\n\tif ( isEmpty( fontFamilies ) ) {\n\t\treturn null;\n\t}\n\n\tconst options = [\n\t\t{ value: '', label: __( 'Default' ) },\n\t\t...fontFamilies.map( ( { fontFamily, name } ) => {\n\t\t\treturn {\n\t\t\t\tvalue: fontFamily,\n\t\t\t\tlabel: name || fontFamily,\n\t\t\t};\n\t\t} ),\n\t];\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Font family' ) }\n\t\t\toptions={ options }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tlabelPosition=\"top\"\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/font-family/index.js"],"names":["FontFamilyControl","value","onChange","fontFamilies","props","blockLevelFontFamilies","options","label","map","fontFamily","name"],"mappings":";;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAGe,SAASA,iBAAT,OAKX;AAAA,MALuC;AAC1CC,IAAAA,KAAK,GAAG,EADkC;AAE1CC,IAAAA,QAF0C;AAG1CC,IAAAA,YAH0C;AAI1C,OAAGC;AAJuC,GAKvC;AACH,QAAMC,sBAAsB,GAAG,yBAAY,yBAAZ,CAA/B;;AACA,MAAK,CAAEF,YAAP,EAAsB;AACrBA,IAAAA,YAAY,GAAGE,sBAAf;AACA;;AAED,MAAK,qBAASF,YAAT,CAAL,EAA+B;AAC9B,WAAO,IAAP;AACA;;AAED,QAAMG,OAAO,GAAG,CACf;AAAEL,IAAAA,KAAK,EAAE,EAAT;AAAaM,IAAAA,KAAK,EAAE,cAAI,SAAJ;AAApB,GADe,EAEf,GAAGJ,YAAY,CAACK,GAAb,CAAkB,SAA4B;AAAA,QAA1B;AAAEC,MAAAA,UAAF;AAAcC,MAAAA;AAAd,KAA0B;AAChD,WAAO;AACNT,MAAAA,KAAK,EAAEQ,UADD;AAENF,MAAAA,KAAK,EAAEG,IAAI,IAAID;AAFT,KAAP;AAIA,GALE,CAFY,CAAhB;AASA,SACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,aAAJ,CADT;AAEC,IAAA,OAAO,EAAGH,OAFX;AAGC,IAAA,KAAK,EAAGL,KAHT;AAIC,IAAA,QAAQ,EAAGC,QAJZ;AAKC,IAAA,aAAa,EAAC;AALf,KAMME,KANN,EADD;AAUA","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useSetting from '../use-setting';\n\nexport default function FontFamilyControl( {\n\tvalue = '',\n\tonChange,\n\tfontFamilies,\n\t...props\n} ) {\n\tconst blockLevelFontFamilies = useSetting( 'typography.fontFamilies' );\n\tif ( ! fontFamilies ) {\n\t\tfontFamilies = blockLevelFontFamilies;\n\t}\n\n\tif ( isEmpty( fontFamilies ) ) {\n\t\treturn null;\n\t}\n\n\tconst options = [\n\t\t{ value: '', label: __( 'Default' ) },\n\t\t...fontFamilies.map( ( { fontFamily, name } ) => {\n\t\t\treturn {\n\t\t\t\tvalue: fontFamily,\n\t\t\t\tlabel: name || fontFamily,\n\t\t\t};\n\t\t} ),\n\t];\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Font family' ) }\n\t\t\toptions={ options }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tlabelPosition=\"top\"\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"]}
@@ -5,6 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
+ Object.defineProperty(exports, "FontSizePicker", {
9
+ enumerable: true,
10
+ get: function () {
11
+ return _fontSizePicker.default;
12
+ }
13
+ });
8
14
  Object.defineProperty(exports, "getFontSize", {
9
15
  enumerable: true,
10
16
  get: function () {
@@ -23,12 +29,6 @@ Object.defineProperty(exports, "getFontSizeObjectByValue", {
23
29
  return _utils.getFontSizeObjectByValue;
24
30
  }
25
31
  });
26
- Object.defineProperty(exports, "FontSizePicker", {
27
- enumerable: true,
28
- get: function () {
29
- return _fontSizePicker.default;
30
- }
31
- });
32
32
  Object.defineProperty(exports, "withFontSizes", {
33
33
  enumerable: true,
34
34
  get: function () {
@@ -5,6 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
+ Object.defineProperty(exports, "FontSizePicker", {
9
+ enumerable: true,
10
+ get: function () {
11
+ return _fontSizePicker.default;
12
+ }
13
+ });
8
14
  Object.defineProperty(exports, "getFontSize", {
9
15
  enumerable: true,
10
16
  get: function () {
@@ -23,12 +29,6 @@ Object.defineProperty(exports, "getFontSizeObjectByValue", {
23
29
  return _utils.getFontSizeObjectByValue;
24
30
  }
25
31
  });
26
- Object.defineProperty(exports, "FontSizePicker", {
27
- enumerable: true,
28
- get: function () {
29
- return _fontSizePicker.default;
30
- }
31
- });
32
32
  Object.defineProperty(exports, "withFontSizes", {
33
33
  enumerable: true,
34
34
  get: function () {
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getFontSizeObjectByValue = getFontSizeObjectByValue;
7
- exports.getFontSizeClass = getFontSizeClass;
8
6
  exports.getFontSize = void 0;
7
+ exports.getFontSizeClass = getFontSizeClass;
8
+ exports.getFontSizeObjectByValue = getFontSizeObjectByValue;
9
9
 
10
10
  var _lodash = require("lodash");
11
11
 
@@ -42,7 +42,11 @@ const DEFAULT_FONT_SIZES = [];
42
42
  * @return {Function} Higher-order component.
43
43
  */
44
44
 
45
- var _default = (...fontSizeNames) => {
45
+ var _default = function _default() {
46
+ for (var _len = arguments.length, fontSizeNames = new Array(_len), _key = 0; _key < _len; _key++) {
47
+ fontSizeNames[_key] = arguments[_key];
48
+ }
49
+
46
50
  /*
47
51
  * Computes an object whose key is the font size attribute name as passed in the array,
48
52
  * and the value is the custom font size attribute name.
@@ -85,10 +89,12 @@ var _default = (...fontSizeNames) => {
85
89
  };
86
90
  }
87
91
 
88
- static getDerivedStateFromProps({
89
- attributes,
90
- fontSizes
91
- }, previousState) {
92
+ static getDerivedStateFromProps(_ref, previousState) {
93
+ let {
94
+ attributes,
95
+ fontSizes
96
+ } = _ref;
97
+
92
98
  const didAttributesChange = (customFontSizeAttributeName, fontSizeAttributeName) => {
93
99
  if (previousState[fontSizeAttributeName]) {
94
100
  // if new font size is name compare with the previous slug
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/font-sizes/with-font-sizes.js"],"names":["DEFAULT_FONT_SIZES","fontSizeNames","fontSizeAttributeNames","fontSizeAttributeNamesAccumulator","fontSizeAttributeName","WrappedComponent","props","fontSizes","Component","constructor","setters","createSetters","state","settersAccumulator","customFontSizeAttributeName","upperFirstFontSizeAttributeName","createSetFontSize","fontSizeValue","fontSizeObject","size","Number","setAttributes","slug","undefined","getDerivedStateFromProps","attributes","previousState","didAttributesChange","newState","newStateAccumulator","fontSizeAttributeValue","class","render"],"mappings":";;;;;;;;;AASA;;;;AANA;;AAKA;;AAMA;;AACA;;AAfA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAIA,MAAMA,kBAAkB,GAAG,EAA3B;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;eACe,CAAE,GAAGC,aAAL,KAAwB;AACtC;AACD;AACA;AACA;AACA;AACC,QAAMC,sBAAsB,GAAG,oBAC9BD,aAD8B,EAE9B,CAAEE,iCAAF,EAAqCC,qBAArC,KAAgE;AAC/DD,IAAAA,iCAAiC,CAChCC,qBADgC,CAAjC,GAEK,SAAS,wBAAYA,qBAAZ,CAAqC,EAFnD;AAGA,WAAOD,iCAAP;AACA,GAP6B,EAQ9B,EAR8B,CAA/B;AAWA,SAAO,yCACN,sBAAS,CACR,yCACGE,gBAAF,IAA0BC,KAAF,IAAa;AACpC,UAAMC,SAAS,GACd,yBAAY,sBAAZ,KACAP,kBAFD;AAGA,WACC,4BAAC,gBAAD,6BACMM,KADN;AAEC,MAAA,SAAS,EAAGC;AAFb,OADD;AAMA,GAXF,EAYC,eAZD,CADQ,EAeNF,gBAAF,IAAwB;AACvB,WAAO,cAAcG,kBAAd,CAAwB;AAC9BC,MAAAA,WAAW,CAAEH,KAAF,EAAU;AACpB,cAAOA,KAAP;AAEA,aAAKI,OAAL,GAAe,KAAKC,aAAL,EAAf;AAEA,aAAKC,KAAL,GAAa,EAAb;AACA;;AAEDD,MAAAA,aAAa,GAAG;AACf,eAAO,oBACNT,sBADM,EAEN,CACCW,kBADD,EAECC,2BAFD,EAGCV,qBAHD,KAIK;AACJ,gBAAMW,+BAA+B,GAAG,wBACvCX,qBADuC,CAAxC;AAGAS,UAAAA,kBAAkB,CAChB,MAAME,+BAAiC,EADvB,CAAlB,GAEI,KAAKC,iBAAL,CACHZ,qBADG,EAEHU,2BAFG,CAFJ;AAMA,iBAAOD,kBAAP;AACA,SAjBK,EAkBN,EAlBM,CAAP;AAoBA;;AAEDG,MAAAA,iBAAiB,CAChBZ,qBADgB,EAEhBU,2BAFgB,EAGf;AACD,eAASG,aAAF,IAAqB;AAC3B,gBAAMC,cAAc,GAAG,kBAAM,KAAKZ,KAAL,CAAWC,SAAjB,EAA4B;AAClDY,YAAAA,IAAI,EAAEC,MAAM,CAAEH,aAAF;AADsC,WAA5B,CAAvB;AAGA,eAAKX,KAAL,CAAWe,aAAX,CAA0B;AACzB,aAAEjB,qBAAF,GACCc,cAAc,IAAIA,cAAc,CAACI,IAAjC,GACGJ,cAAc,CAACI,IADlB,GAEGC,SAJqB;AAKzB,aAAET,2BAAF,GACCI,cAAc,IAAIA,cAAc,CAACI,IAAjC,GACGC,SADH,GAEGN;AARqB,WAA1B;AAUA,SAdD;AAeA;;AAE8B,aAAxBO,wBAAwB,CAC9B;AAAEC,QAAAA,UAAF;AAAclB,QAAAA;AAAd,OAD8B,EAE9BmB,aAF8B,EAG7B;AACD,cAAMC,mBAAmB,GAAG,CAC3Bb,2BAD2B,EAE3BV,qBAF2B,KAGvB;AACJ,cAAKsB,aAAa,CAAEtB,qBAAF,CAAlB,EAA8C;AAC7C;AACA,gBAAKqB,UAAU,CAAErB,qBAAF,CAAf,EAA2C;AAC1C,qBACCqB,UAAU,CAAErB,qBAAF,CAAV,KACAsB,aAAa,CAAEtB,qBAAF,CAAb,CACEkB,IAHH;AAKA,aAR4C,CAS7C;;;AACA,mBACCI,aAAa,CAAEtB,qBAAF,CAAb,CACEe,IADF,KAEAM,UAAU,CAAEX,2BAAF,CAHX;AAKA,WAhBG,CAiBJ;;;AACA,iBAAO,IAAP;AACA,SAtBD;;AAwBA,YACC,CAAE,kBACDZ,sBADC,EAEDyB,mBAFC,CADH,EAKE;AACD,iBAAO,IAAP;AACA;;AAED,cAAMC,QAAQ,GAAG,oBAChB,oBACC1B,sBADD,EAECyB,mBAFD,CADgB,EAKhB,CACCE,mBADD,EAECf,2BAFD,EAGCV,qBAHD,KAIK;AACJ,gBAAM0B,sBAAsB,GAC3BL,UAAU,CAAErB,qBAAF,CADX;AAEA,gBAAMc,cAAc,GAAG,wBACtBX,SADsB,EAEtBuB,sBAFsB,EAGtBL,UAAU,CAAEX,2BAAF,CAHY,CAAvB;AAKAe,UAAAA,mBAAmB,CAAEzB,qBAAF,CAAnB,GAA+C,EAC9C,GAAGc,cAD2C;AAE9Ca,YAAAA,KAAK,EAAE,6BACND,sBADM;AAFuC,WAA/C;AAMA,iBAAOD,mBAAP;AACA,SAxBe,EAyBhB,EAzBgB,CAAjB;AA4BA,eAAO,EACN,GAAGH,aADG;AAEN,aAAGE;AAFG,SAAP;AAIA;;AAEDI,MAAAA,MAAM,GAAG;AACR,eACC,4BAAC,gBAAD,6BAEK,KAAK1B,KAFV;AAGEC,UAAAA,SAAS,EAAEgB;AAHb,WAIK,KAAKX,KAJV,EAKK,KAAKF,OALV,EADD;AAUA;;AAvI6B,KAA/B;AAyIA,GAzJO,CAAT,CADM,EA4JN,eA5JM,CAAP;AA8JA,C","sourcesContent":["/**\n * External dependencies\n */\nimport { find, pickBy, reduce, some, upperFirst } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createHigherOrderComponent, compose } from '@wordpress/compose';\nimport { Component } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getFontSize, getFontSizeClass } from './utils';\nimport useSetting from '../use-setting';\n\nconst DEFAULT_FONT_SIZES = [];\n\n/**\n * Higher-order component, which handles font size logic for class generation,\n * font size value retrieval, and font size change handling.\n *\n * @param {...(Object|string)} fontSizeNames The arguments should all be strings.\n * Each string contains the font size\n * attribute name e.g: 'fontSize'.\n *\n * @return {Function} Higher-order component.\n */\nexport default ( ...fontSizeNames ) => {\n\t/*\n\t * Computes an object whose key is the font size attribute name as passed in the array,\n\t * and the value is the custom font size attribute name.\n\t * Custom font size is automatically compted by appending custom followed by the font size attribute name in with the first letter capitalized.\n\t */\n\tconst fontSizeAttributeNames = reduce(\n\t\tfontSizeNames,\n\t\t( fontSizeAttributeNamesAccumulator, fontSizeAttributeName ) => {\n\t\t\tfontSizeAttributeNamesAccumulator[\n\t\t\t\tfontSizeAttributeName\n\t\t\t] = `custom${ upperFirst( fontSizeAttributeName ) }`;\n\t\t\treturn fontSizeAttributeNamesAccumulator;\n\t\t},\n\t\t{}\n\t);\n\n\treturn createHigherOrderComponent(\n\t\tcompose( [\n\t\t\tcreateHigherOrderComponent(\n\t\t\t\t( WrappedComponent ) => ( props ) => {\n\t\t\t\t\tconst fontSizes =\n\t\t\t\t\t\tuseSetting( 'typography.fontSizes' ) ||\n\t\t\t\t\t\tDEFAULT_FONT_SIZES;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<WrappedComponent\n\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t\tfontSizes={ fontSizes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\t'withFontSizes'\n\t\t\t),\n\t\t\t( WrappedComponent ) => {\n\t\t\t\treturn class extends Component {\n\t\t\t\t\tconstructor( props ) {\n\t\t\t\t\t\tsuper( props );\n\n\t\t\t\t\t\tthis.setters = this.createSetters();\n\n\t\t\t\t\t\tthis.state = {};\n\t\t\t\t\t}\n\n\t\t\t\t\tcreateSetters() {\n\t\t\t\t\t\treturn reduce(\n\t\t\t\t\t\t\tfontSizeAttributeNames,\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\tsettersAccumulator,\n\t\t\t\t\t\t\t\tcustomFontSizeAttributeName,\n\t\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tconst upperFirstFontSizeAttributeName = upperFirst(\n\t\t\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tsettersAccumulator[\n\t\t\t\t\t\t\t\t\t`set${ upperFirstFontSizeAttributeName }`\n\t\t\t\t\t\t\t\t] = this.createSetFontSize(\n\t\t\t\t\t\t\t\t\tfontSizeAttributeName,\n\t\t\t\t\t\t\t\t\tcustomFontSizeAttributeName\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn settersAccumulator;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tcreateSetFontSize(\n\t\t\t\t\t\tfontSizeAttributeName,\n\t\t\t\t\t\tcustomFontSizeAttributeName\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn ( fontSizeValue ) => {\n\t\t\t\t\t\t\tconst fontSizeObject = find( this.props.fontSizes, {\n\t\t\t\t\t\t\t\tsize: Number( fontSizeValue ),\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\tthis.props.setAttributes( {\n\t\t\t\t\t\t\t\t[ fontSizeAttributeName ]:\n\t\t\t\t\t\t\t\t\tfontSizeObject && fontSizeObject.slug\n\t\t\t\t\t\t\t\t\t\t? fontSizeObject.slug\n\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t[ customFontSizeAttributeName ]:\n\t\t\t\t\t\t\t\t\tfontSizeObject && fontSizeObject.slug\n\t\t\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t\t\t: fontSizeValue,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\tstatic getDerivedStateFromProps(\n\t\t\t\t\t\t{ attributes, fontSizes },\n\t\t\t\t\t\tpreviousState\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst didAttributesChange = (\n\t\t\t\t\t\t\tcustomFontSizeAttributeName,\n\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\tif ( previousState[ fontSizeAttributeName ] ) {\n\t\t\t\t\t\t\t\t// if new font size is name compare with the previous slug\n\t\t\t\t\t\t\t\tif ( attributes[ fontSizeAttributeName ] ) {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\tattributes[ fontSizeAttributeName ] !==\n\t\t\t\t\t\t\t\t\t\tpreviousState[ fontSizeAttributeName ]\n\t\t\t\t\t\t\t\t\t\t\t.slug\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// if font size is not named, update when the font size value changes.\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\tpreviousState[ fontSizeAttributeName ]\n\t\t\t\t\t\t\t\t\t\t.size !==\n\t\t\t\t\t\t\t\t\tattributes[ customFontSizeAttributeName ]\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// in this case we need to build the font size object\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! some(\n\t\t\t\t\t\t\t\tfontSizeAttributeNames,\n\t\t\t\t\t\t\t\tdidAttributesChange\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst newState = reduce(\n\t\t\t\t\t\t\tpickBy(\n\t\t\t\t\t\t\t\tfontSizeAttributeNames,\n\t\t\t\t\t\t\t\tdidAttributesChange\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\tnewStateAccumulator,\n\t\t\t\t\t\t\t\tcustomFontSizeAttributeName,\n\t\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tconst fontSizeAttributeValue =\n\t\t\t\t\t\t\t\t\tattributes[ fontSizeAttributeName ];\n\t\t\t\t\t\t\t\tconst fontSizeObject = getFontSize(\n\t\t\t\t\t\t\t\t\tfontSizes,\n\t\t\t\t\t\t\t\t\tfontSizeAttributeValue,\n\t\t\t\t\t\t\t\t\tattributes[ customFontSizeAttributeName ]\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tnewStateAccumulator[ fontSizeAttributeName ] = {\n\t\t\t\t\t\t\t\t\t...fontSizeObject,\n\t\t\t\t\t\t\t\t\tclass: getFontSizeClass(\n\t\t\t\t\t\t\t\t\t\tfontSizeAttributeValue\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\treturn newStateAccumulator;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...previousState,\n\t\t\t\t\t\t\t...newState,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\trender() {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<WrappedComponent\n\t\t\t\t\t\t\t\t{ ...{\n\t\t\t\t\t\t\t\t\t...this.props,\n\t\t\t\t\t\t\t\t\tfontSizes: undefined,\n\t\t\t\t\t\t\t\t\t...this.state,\n\t\t\t\t\t\t\t\t\t...this.setters,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t},\n\t\t] ),\n\t\t'withFontSizes'\n\t);\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/font-sizes/with-font-sizes.js"],"names":["DEFAULT_FONT_SIZES","fontSizeNames","fontSizeAttributeNames","fontSizeAttributeNamesAccumulator","fontSizeAttributeName","WrappedComponent","props","fontSizes","Component","constructor","setters","createSetters","state","settersAccumulator","customFontSizeAttributeName","upperFirstFontSizeAttributeName","createSetFontSize","fontSizeValue","fontSizeObject","size","Number","setAttributes","slug","undefined","getDerivedStateFromProps","previousState","attributes","didAttributesChange","newState","newStateAccumulator","fontSizeAttributeValue","class","render"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { find, pickBy, reduce, some, upperFirst } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createHigherOrderComponent, compose } from '@wordpress/compose';\nimport { Component } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getFontSize, getFontSizeClass } from './utils';\nimport useSetting from '../use-setting';\n\nconst DEFAULT_FONT_SIZES = [];\n\n/**\n * Higher-order component, which handles font size logic for class generation,\n * font size value retrieval, and font size change handling.\n *\n * @param {...(Object|string)} fontSizeNames The arguments should all be strings.\n * Each string contains the font size\n * attribute name e.g: 'fontSize'.\n *\n * @return {Function} Higher-order component.\n */\nexport default ( ...fontSizeNames ) => {\n\t/*\n\t * Computes an object whose key is the font size attribute name as passed in the array,\n\t * and the value is the custom font size attribute name.\n\t * Custom font size is automatically compted by appending custom followed by the font size attribute name in with the first letter capitalized.\n\t */\n\tconst fontSizeAttributeNames = reduce(\n\t\tfontSizeNames,\n\t\t( fontSizeAttributeNamesAccumulator, fontSizeAttributeName ) => {\n\t\t\tfontSizeAttributeNamesAccumulator[\n\t\t\t\tfontSizeAttributeName\n\t\t\t] = `custom${ upperFirst( fontSizeAttributeName ) }`;\n\t\t\treturn fontSizeAttributeNamesAccumulator;\n\t\t},\n\t\t{}\n\t);\n\n\treturn createHigherOrderComponent(\n\t\tcompose( [\n\t\t\tcreateHigherOrderComponent(\n\t\t\t\t( WrappedComponent ) => ( props ) => {\n\t\t\t\t\tconst fontSizes =\n\t\t\t\t\t\tuseSetting( 'typography.fontSizes' ) ||\n\t\t\t\t\t\tDEFAULT_FONT_SIZES;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<WrappedComponent\n\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t\tfontSizes={ fontSizes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\t'withFontSizes'\n\t\t\t),\n\t\t\t( WrappedComponent ) => {\n\t\t\t\treturn class extends Component {\n\t\t\t\t\tconstructor( props ) {\n\t\t\t\t\t\tsuper( props );\n\n\t\t\t\t\t\tthis.setters = this.createSetters();\n\n\t\t\t\t\t\tthis.state = {};\n\t\t\t\t\t}\n\n\t\t\t\t\tcreateSetters() {\n\t\t\t\t\t\treturn reduce(\n\t\t\t\t\t\t\tfontSizeAttributeNames,\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\tsettersAccumulator,\n\t\t\t\t\t\t\t\tcustomFontSizeAttributeName,\n\t\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tconst upperFirstFontSizeAttributeName = upperFirst(\n\t\t\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tsettersAccumulator[\n\t\t\t\t\t\t\t\t\t`set${ upperFirstFontSizeAttributeName }`\n\t\t\t\t\t\t\t\t] = this.createSetFontSize(\n\t\t\t\t\t\t\t\t\tfontSizeAttributeName,\n\t\t\t\t\t\t\t\t\tcustomFontSizeAttributeName\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn settersAccumulator;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tcreateSetFontSize(\n\t\t\t\t\t\tfontSizeAttributeName,\n\t\t\t\t\t\tcustomFontSizeAttributeName\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn ( fontSizeValue ) => {\n\t\t\t\t\t\t\tconst fontSizeObject = find( this.props.fontSizes, {\n\t\t\t\t\t\t\t\tsize: Number( fontSizeValue ),\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\tthis.props.setAttributes( {\n\t\t\t\t\t\t\t\t[ fontSizeAttributeName ]:\n\t\t\t\t\t\t\t\t\tfontSizeObject && fontSizeObject.slug\n\t\t\t\t\t\t\t\t\t\t? fontSizeObject.slug\n\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t[ customFontSizeAttributeName ]:\n\t\t\t\t\t\t\t\t\tfontSizeObject && fontSizeObject.slug\n\t\t\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t\t\t: fontSizeValue,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\tstatic getDerivedStateFromProps(\n\t\t\t\t\t\t{ attributes, fontSizes },\n\t\t\t\t\t\tpreviousState\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst didAttributesChange = (\n\t\t\t\t\t\t\tcustomFontSizeAttributeName,\n\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\tif ( previousState[ fontSizeAttributeName ] ) {\n\t\t\t\t\t\t\t\t// if new font size is name compare with the previous slug\n\t\t\t\t\t\t\t\tif ( attributes[ fontSizeAttributeName ] ) {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\tattributes[ fontSizeAttributeName ] !==\n\t\t\t\t\t\t\t\t\t\tpreviousState[ fontSizeAttributeName ]\n\t\t\t\t\t\t\t\t\t\t\t.slug\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// if font size is not named, update when the font size value changes.\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\tpreviousState[ fontSizeAttributeName ]\n\t\t\t\t\t\t\t\t\t\t.size !==\n\t\t\t\t\t\t\t\t\tattributes[ customFontSizeAttributeName ]\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// in this case we need to build the font size object\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! some(\n\t\t\t\t\t\t\t\tfontSizeAttributeNames,\n\t\t\t\t\t\t\t\tdidAttributesChange\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst newState = reduce(\n\t\t\t\t\t\t\tpickBy(\n\t\t\t\t\t\t\t\tfontSizeAttributeNames,\n\t\t\t\t\t\t\t\tdidAttributesChange\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\tnewStateAccumulator,\n\t\t\t\t\t\t\t\tcustomFontSizeAttributeName,\n\t\t\t\t\t\t\t\tfontSizeAttributeName\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tconst fontSizeAttributeValue =\n\t\t\t\t\t\t\t\t\tattributes[ fontSizeAttributeName ];\n\t\t\t\t\t\t\t\tconst fontSizeObject = getFontSize(\n\t\t\t\t\t\t\t\t\tfontSizes,\n\t\t\t\t\t\t\t\t\tfontSizeAttributeValue,\n\t\t\t\t\t\t\t\t\tattributes[ customFontSizeAttributeName ]\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tnewStateAccumulator[ fontSizeAttributeName ] = {\n\t\t\t\t\t\t\t\t\t...fontSizeObject,\n\t\t\t\t\t\t\t\t\tclass: getFontSizeClass(\n\t\t\t\t\t\t\t\t\t\tfontSizeAttributeValue\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\treturn newStateAccumulator;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...previousState,\n\t\t\t\t\t\t\t...newState,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\trender() {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<WrappedComponent\n\t\t\t\t\t\t\t\t{ ...{\n\t\t\t\t\t\t\t\t\t...this.props,\n\t\t\t\t\t\t\t\t\tfontSizes: undefined,\n\t\t\t\t\t\t\t\t\t...this.state,\n\t\t\t\t\t\t\t\t\t...this.setters,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t},\n\t\t] ),\n\t\t'withFontSizes'\n\t);\n};\n"]}
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.__experimentalGetGradientClass = __experimentalGetGradientClass;
9
- exports.getGradientValueBySlug = getGradientValueBySlug;
10
9
  exports.__experimentalGetGradientObjectByGradientValue = __experimentalGetGradientObjectByGradientValue;
11
- exports.getGradientSlugByValue = getGradientSlugByValue;
12
10
  exports.__experimentalUseGradient = __experimentalUseGradient;
11
+ exports.getGradientSlugByValue = getGradientSlugByValue;
12
+ exports.getGradientValueBySlug = getGradientValueBySlug;
13
13
 
14
14
  var _lodash = require("lodash");
15
15
 
@@ -77,10 +77,11 @@ function getGradientSlugByValue(gradients, value) {
77
77
  return gradient && gradient.slug;
78
78
  }
79
79
 
80
- function __experimentalUseGradient({
81
- gradientAttribute = 'gradient',
82
- customGradientAttribute = 'customGradient'
83
- } = {}) {
80
+ function __experimentalUseGradient() {
81
+ let {
82
+ gradientAttribute = 'gradient',
83
+ customGradientAttribute = 'customGradient'
84
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
84
85
  const {
85
86
  clientId
86
87
  } = (0, _blockEdit.useBlockEditContext)();
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/gradients/use-gradient.js"],"names":["EMPTY_ARRAY","__experimentalGetGradientClass","gradientSlug","undefined","getGradientValueBySlug","gradients","slug","gradient","__experimentalGetGradientObjectByGradientValue","value","getGradientSlugByValue","__experimentalUseGradient","gradientAttribute","customGradientAttribute","clientId","customGradient","select","getBlockAttributes","blockEditorStore","attributes","updateBlockAttributes","setGradient","newGradientValue","gradientClass","gradientValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { find } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useBlockEditContext } from '../block-edit';\nimport useSetting from '../use-setting';\nimport { store as blockEditorStore } from '../../store';\n\nconst EMPTY_ARRAY = [];\n\nexport function __experimentalGetGradientClass( gradientSlug ) {\n\tif ( ! gradientSlug ) {\n\t\treturn undefined;\n\t}\n\treturn `has-${ gradientSlug }-gradient-background`;\n}\n\n/**\n * Retrieves the gradient value per slug.\n *\n * @param {Array} gradients Gradient Palette\n * @param {string} slug Gradient slug\n *\n * @return {string} Gradient value.\n */\nexport function getGradientValueBySlug( gradients, slug ) {\n\tconst gradient = find( gradients, [ 'slug', slug ] );\n\treturn gradient && gradient.gradient;\n}\n\nexport function __experimentalGetGradientObjectByGradientValue(\n\tgradients,\n\tvalue\n) {\n\tconst gradient = find( gradients, [ 'gradient', value ] );\n\treturn gradient;\n}\n\n/**\n * Retrieves the gradient slug per slug.\n *\n * @param {Array} gradients Gradient Palette\n * @param {string} value Gradient value\n * @return {string} Gradient slug.\n */\nexport function getGradientSlugByValue( gradients, value ) {\n\tconst gradient = __experimentalGetGradientObjectByGradientValue(\n\t\tgradients,\n\t\tvalue\n\t);\n\treturn gradient && gradient.slug;\n}\n\nexport function __experimentalUseGradient( {\n\tgradientAttribute = 'gradient',\n\tcustomGradientAttribute = 'customGradient',\n} = {} ) {\n\tconst { clientId } = useBlockEditContext();\n\n\tconst gradients = useSetting( 'color.gradients' ) || EMPTY_ARRAY;\n\tconst { gradient, customGradient } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockAttributes } = select( blockEditorStore );\n\t\t\tconst attributes = getBlockAttributes( clientId ) || {};\n\t\t\treturn {\n\t\t\t\tcustomGradient: attributes[ customGradientAttribute ],\n\t\t\t\tgradient: attributes[ gradientAttribute ],\n\t\t\t};\n\t\t},\n\t\t[ clientId, gradientAttribute, customGradientAttribute ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst setGradient = useCallback(\n\t\t( newGradientValue ) => {\n\t\t\tconst slug = getGradientSlugByValue( gradients, newGradientValue );\n\t\t\tif ( slug ) {\n\t\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t\t[ gradientAttribute ]: slug,\n\t\t\t\t\t[ customGradientAttribute ]: undefined,\n\t\t\t\t} );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t[ gradientAttribute ]: undefined,\n\t\t\t\t[ customGradientAttribute ]: newGradientValue,\n\t\t\t} );\n\t\t},\n\t\t[ gradients, clientId, updateBlockAttributes ]\n\t);\n\n\tconst gradientClass = __experimentalGetGradientClass( gradient );\n\tlet gradientValue;\n\tif ( gradient ) {\n\t\tgradientValue = getGradientValueBySlug( gradients, gradient );\n\t} else {\n\t\tgradientValue = customGradient;\n\t}\n\treturn { gradientClass, gradientValue, setGradient };\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/gradients/use-gradient.js"],"names":["EMPTY_ARRAY","__experimentalGetGradientClass","gradientSlug","undefined","getGradientValueBySlug","gradients","slug","gradient","__experimentalGetGradientObjectByGradientValue","value","getGradientSlugByValue","__experimentalUseGradient","gradientAttribute","customGradientAttribute","clientId","customGradient","select","getBlockAttributes","blockEditorStore","attributes","updateBlockAttributes","setGradient","newGradientValue","gradientClass","gradientValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { find } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useBlockEditContext } from '../block-edit';\nimport useSetting from '../use-setting';\nimport { store as blockEditorStore } from '../../store';\n\nconst EMPTY_ARRAY = [];\n\nexport function __experimentalGetGradientClass( gradientSlug ) {\n\tif ( ! gradientSlug ) {\n\t\treturn undefined;\n\t}\n\treturn `has-${ gradientSlug }-gradient-background`;\n}\n\n/**\n * Retrieves the gradient value per slug.\n *\n * @param {Array} gradients Gradient Palette\n * @param {string} slug Gradient slug\n *\n * @return {string} Gradient value.\n */\nexport function getGradientValueBySlug( gradients, slug ) {\n\tconst gradient = find( gradients, [ 'slug', slug ] );\n\treturn gradient && gradient.gradient;\n}\n\nexport function __experimentalGetGradientObjectByGradientValue(\n\tgradients,\n\tvalue\n) {\n\tconst gradient = find( gradients, [ 'gradient', value ] );\n\treturn gradient;\n}\n\n/**\n * Retrieves the gradient slug per slug.\n *\n * @param {Array} gradients Gradient Palette\n * @param {string} value Gradient value\n * @return {string} Gradient slug.\n */\nexport function getGradientSlugByValue( gradients, value ) {\n\tconst gradient = __experimentalGetGradientObjectByGradientValue(\n\t\tgradients,\n\t\tvalue\n\t);\n\treturn gradient && gradient.slug;\n}\n\nexport function __experimentalUseGradient( {\n\tgradientAttribute = 'gradient',\n\tcustomGradientAttribute = 'customGradient',\n} = {} ) {\n\tconst { clientId } = useBlockEditContext();\n\n\tconst gradients = useSetting( 'color.gradients' ) || EMPTY_ARRAY;\n\tconst { gradient, customGradient } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockAttributes } = select( blockEditorStore );\n\t\t\tconst attributes = getBlockAttributes( clientId ) || {};\n\t\t\treturn {\n\t\t\t\tcustomGradient: attributes[ customGradientAttribute ],\n\t\t\t\tgradient: attributes[ gradientAttribute ],\n\t\t\t};\n\t\t},\n\t\t[ clientId, gradientAttribute, customGradientAttribute ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst setGradient = useCallback(\n\t\t( newGradientValue ) => {\n\t\t\tconst slug = getGradientSlugByValue( gradients, newGradientValue );\n\t\t\tif ( slug ) {\n\t\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t\t[ gradientAttribute ]: slug,\n\t\t\t\t\t[ customGradientAttribute ]: undefined,\n\t\t\t\t} );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t[ gradientAttribute ]: undefined,\n\t\t\t\t[ customGradientAttribute ]: newGradientValue,\n\t\t\t} );\n\t\t},\n\t\t[ gradients, clientId, updateBlockAttributes ]\n\t);\n\n\tconst gradientClass = __experimentalGetGradientClass( gradient );\n\tlet gradientValue;\n\tif ( gradient ) {\n\t\tgradientValue = getGradientValueBySlug( gradients, gradient );\n\t} else {\n\t\tgradientValue = customGradient;\n\t}\n\treturn { gradientClass, gradientValue, setGradient };\n}\n"]}
@@ -80,9 +80,12 @@ function styleSheetsCompat(doc) {
80
80
  return;
81
81
  }
82
82
 
83
- const isMatch = Array.from(cssRules).find(({
84
- selectorText
85
- }) => selectorText && (selectorText.includes(`.${BODY_CLASS_NAME}`) || selectorText.includes(`.${BLOCK_PREFIX}`)));
83
+ const isMatch = Array.from(cssRules).find(_ref => {
84
+ let {
85
+ selectorText
86
+ } = _ref;
87
+ return selectorText && (selectorText.includes(`.${BODY_CLASS_NAME}`) || selectorText.includes(`.${BLOCK_PREFIX}`));
88
+ });
86
89
 
87
90
  if (isMatch && !doc.getElementById(ownerNode.id)) {
88
91
  // eslint-disable-next-line no-console
@@ -159,10 +162,11 @@ function useParsedAssets(html) {
159
162
  }, [html]);
160
163
  }
161
164
 
162
- async function loadScript(head, {
163
- id,
164
- src
165
- }) {
165
+ async function loadScript(head, _ref2) {
166
+ let {
167
+ id,
168
+ src
169
+ } = _ref2;
166
170
  return new Promise((resolve, reject) => {
167
171
  const script = head.ownerDocument.createElement('script');
168
172
  script.id = id;
@@ -181,15 +185,16 @@ async function loadScript(head, {
181
185
  });
182
186
  }
183
187
 
184
- function Iframe({
185
- contentRef,
186
- children,
187
- head,
188
- tabIndex = 0,
189
- ...props
190
- }, ref) {
188
+ function Iframe(_ref3, ref) {
191
189
  var _window$__editorAsset, _window$__editorAsset2;
192
190
 
191
+ let {
192
+ contentRef,
193
+ children,
194
+ head,
195
+ tabIndex = 0,
196
+ ...props
197
+ } = _ref3;
193
198
  const [, forceRender] = (0, _element.useReducer)(() => ({}));
194
199
  const [iframeDocument, setIframeDocument] = (0, _element.useState)();
195
200
  const [bodyClasses, setBodyClasses] = (0, _element.useState)([]);
@@ -247,14 +252,15 @@ function Iframe({
247
252
  styleSheetsCompat(iframeDocument);
248
253
  }
249
254
  }, [iframeDocument]);
250
- head = (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("style", null, 'body{margin:0}'), styles.map(({
251
- tagName,
252
- href,
253
- id,
254
- rel,
255
- media,
256
- textContent
257
- }) => {
255
+ head = (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("style", null, 'body{margin:0}'), styles.map(_ref4 => {
256
+ let {
257
+ tagName,
258
+ href,
259
+ id,
260
+ rel,
261
+ media,
262
+ textContent
263
+ } = _ref4;
258
264
  const TagName = tagName.toLowerCase();
259
265
 
260
266
  if (TagName === 'style') {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/iframe/index.js"],"names":["BODY_CLASS_NAME","BLOCK_PREFIX","styleSheetsCompat","doc","Array","from","document","styleSheets","forEach","styleSheet","cssRules","e","ownerNode","tagName","id","isMatch","find","selectorText","includes","getElementById","console","warn","outerHTML","head","appendChild","cloneNode","inlineCssId","replace","inlineCssElement","bubbleEvents","defaultView","frameElement","bubbleEvent","event","prototype","Object","getPrototypeOf","constructorName","constructor","name","Constructor","window","init","key","MouseEvent","rect","getBoundingClientRect","clientX","left","clientY","top","newEvent","type","cancelled","dispatchEvent","preventDefault","eventTypes","addEventListener","useParsedAssets","html","implementation","createHTMLDocument","body","innerHTML","children","loadScript","src","Promise","resolve","reject","script","ownerDocument","createElement","onload","onerror","Iframe","contentRef","tabIndex","props","ref","forceRender","iframeDocument","setIframeDocument","bodyClasses","setBodyClasses","styles","__editorAssets","scripts","clearerRef","before","writingFlowRef","after","setRef","node","setDocumentIfReady","contentDocument","readyState","documentElement","classList","filter","startsWith","dir","removeChild","headRef","element","reduce","promise","then","finally","bodyRef","map","href","rel","media","textContent","TagName","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tcreatePortal,\n\tforwardRef,\n\tuseEffect,\n\tuseMemo,\n\tuseReducer,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { __experimentalStyleProvider as StyleProvider } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useBlockSelectionClearer } from '../block-selection-clearer';\nimport { useWritingFlow } from '../writing-flow';\n\nconst BODY_CLASS_NAME = 'editor-styles-wrapper';\nconst BLOCK_PREFIX = 'wp-block';\n\n/**\n * Clones stylesheets targetting the editor canvas to the given document. A\n * stylesheet is considered targetting the editor a canvas if it contains the\n * `editor-styles-wrapper`, `wp-block`, or `wp-block-*` class selectors.\n *\n * Ideally, this hook should be removed in the future and styles should be added\n * explicitly as editor styles.\n *\n * @param {Document} doc The document to append cloned stylesheets to.\n */\nfunction styleSheetsCompat( doc ) {\n\t// Search the document for stylesheets targetting the editor canvas.\n\tArray.from( document.styleSheets ).forEach( ( styleSheet ) => {\n\t\ttry {\n\t\t\t// May fail for external styles.\n\t\t\t// eslint-disable-next-line no-unused-expressions\n\t\t\tstyleSheet.cssRules;\n\t\t} catch ( e ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerNode, cssRules } = styleSheet;\n\n\t\tif ( ! cssRules ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Generally, ignore inline styles. We add inline styles belonging to a\n\t\t// stylesheet later, which may or may not match the selectors.\n\t\tif ( ownerNode.tagName !== 'LINK' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Don't try to add the reset styles, which were removed as a dependency\n\t\t// from `edit-blocks` for the iframe since we don't need to reset admin\n\t\t// styles.\n\t\tif ( ownerNode.id === 'wp-reset-editor-styles-css' ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isMatch = Array.from( cssRules ).find(\n\t\t\t( { selectorText } ) =>\n\t\t\t\tselectorText &&\n\t\t\t\t( selectorText.includes( `.${ BODY_CLASS_NAME }` ) ||\n\t\t\t\t\tselectorText.includes( `.${ BLOCK_PREFIX }` ) )\n\t\t);\n\n\t\tif ( isMatch && ! doc.getElementById( ownerNode.id ) ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn(\n\t\t\t\t`Stylesheet ${ ownerNode.id } was not properly added.\nFor blocks, use the block API's style (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#style) or editorStyle (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#editor-style).\nFor themes, use add_editor_style (https://developer.wordpress.org/block-editor/how-to-guides/themes/theme-support/#editor-styles).`,\n\t\t\t\townerNode.outerHTML\n\t\t\t);\n\t\t\tdoc.head.appendChild( ownerNode.cloneNode( true ) );\n\n\t\t\t// Add inline styles belonging to the stylesheet.\n\t\t\tconst inlineCssId = ownerNode.id.replace( '-css', '-inline-css' );\n\t\t\tconst inlineCssElement = document.getElementById( inlineCssId );\n\n\t\t\tif ( inlineCssElement ) {\n\t\t\t\tdoc.head.appendChild( inlineCssElement.cloneNode( true ) );\n\t\t\t}\n\t\t}\n\t} );\n}\n\n/**\n * Bubbles some event types (keydown, keypress, and dragover) to parent document\n * document to ensure that the keyboard shortcuts and drag and drop work.\n *\n * Ideally, we should remove event bubbling in the future. Keyboard shortcuts\n * should be context dependent, e.g. actions on blocks like Cmd+A should not\n * work globally outside the block editor.\n *\n * @param {Document} doc Document to attach listeners to.\n */\nfunction bubbleEvents( doc ) {\n\tconst { defaultView } = doc;\n\tconst { frameElement } = defaultView;\n\n\tfunction bubbleEvent( event ) {\n\t\tconst prototype = Object.getPrototypeOf( event );\n\t\tconst constructorName = prototype.constructor.name;\n\t\tconst Constructor = window[ constructorName ];\n\n\t\tconst init = {};\n\n\t\tfor ( const key in event ) {\n\t\t\tinit[ key ] = event[ key ];\n\t\t}\n\n\t\tif ( event instanceof defaultView.MouseEvent ) {\n\t\t\tconst rect = frameElement.getBoundingClientRect();\n\t\t\tinit.clientX += rect.left;\n\t\t\tinit.clientY += rect.top;\n\t\t}\n\n\t\tconst newEvent = new Constructor( event.type, init );\n\t\tconst cancelled = ! frameElement.dispatchEvent( newEvent );\n\n\t\tif ( cancelled ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tconst eventTypes = [ 'dragover' ];\n\n\tfor ( const name of eventTypes ) {\n\t\tdoc.addEventListener( name, bubbleEvent );\n\t}\n}\n\nfunction useParsedAssets( html ) {\n\treturn useMemo( () => {\n\t\tconst doc = document.implementation.createHTMLDocument( '' );\n\t\tdoc.body.innerHTML = html;\n\t\treturn Array.from( doc.body.children );\n\t}, [ html ] );\n}\n\nasync function loadScript( head, { id, src } ) {\n\treturn new Promise( ( resolve, reject ) => {\n\t\tconst script = head.ownerDocument.createElement( 'script' );\n\t\tscript.id = id;\n\t\tif ( src ) {\n\t\t\tscript.src = src;\n\t\t\tscript.onload = () => resolve();\n\t\t\tscript.onerror = () => reject();\n\t\t} else {\n\t\t\tresolve();\n\t\t}\n\t\thead.appendChild( script );\n\t} );\n}\n\nfunction Iframe( { contentRef, children, head, tabIndex = 0, ...props }, ref ) {\n\tconst [ , forceRender ] = useReducer( () => ( {} ) );\n\tconst [ iframeDocument, setIframeDocument ] = useState();\n\tconst [ bodyClasses, setBodyClasses ] = useState( [] );\n\tconst styles = useParsedAssets( window.__editorAssets?.styles );\n\tconst scripts = useParsedAssets( window.__editorAssets?.scripts );\n\tconst clearerRef = useBlockSelectionClearer();\n\tconst [ before, writingFlowRef, after ] = useWritingFlow();\n\tconst setRef = useRefEffect( ( node ) => {\n\t\tfunction setDocumentIfReady() {\n\t\t\tconst { contentDocument, ownerDocument } = node;\n\t\t\tconst { readyState, documentElement } = contentDocument;\n\n\t\t\tif ( readyState !== 'interactive' && readyState !== 'complete' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tbubbleEvents( contentDocument );\n\t\t\tsetIframeDocument( contentDocument );\n\t\t\tclearerRef( documentElement );\n\n\t\t\t// Ideally ALL classes that are added through get_body_class should\n\t\t\t// be added in the editor too, which we'll somehow have to get from\n\t\t\t// the server in the future (which will run the PHP filters).\n\t\t\tsetBodyClasses(\n\t\t\t\tArray.from( ownerDocument.body.classList ).filter(\n\t\t\t\t\t( name ) =>\n\t\t\t\t\t\tname.startsWith( 'admin-color-' ) ||\n\t\t\t\t\t\tname === 'wp-embed-responsive'\n\t\t\t\t)\n\t\t\t);\n\n\t\t\tcontentDocument.dir = ownerDocument.dir;\n\t\t\tdocumentElement.removeChild( contentDocument.head );\n\t\t\tdocumentElement.removeChild( contentDocument.body );\n\n\t\t\treturn true;\n\t\t}\n\n\t\tif ( setDocumentIfReady() ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Document is not immediately loaded in Firefox.\n\t\tnode.addEventListener( 'load', () => {\n\t\t\tsetDocumentIfReady();\n\t\t} );\n\t}, [] );\n\tconst headRef = useRefEffect( ( element ) => {\n\t\tscripts\n\t\t\t.reduce(\n\t\t\t\t( promise, script ) =>\n\t\t\t\t\tpromise.then( () => loadScript( element, script ) ),\n\t\t\t\tPromise.resolve()\n\t\t\t)\n\t\t\t.finally( () => {\n\t\t\t\t// When script are loaded, re-render blocks to allow them\n\t\t\t\t// to initialise.\n\t\t\t\tforceRender();\n\t\t\t} );\n\t}, [] );\n\tconst bodyRef = useMergeRefs( [ contentRef, clearerRef, writingFlowRef ] );\n\n\tuseEffect( () => {\n\t\tif ( iframeDocument ) {\n\t\t\tstyleSheetsCompat( iframeDocument );\n\t\t}\n\t}, [ iframeDocument ] );\n\n\thead = (\n\t\t<>\n\t\t\t<style>{ 'body{margin:0}' }</style>\n\t\t\t{ styles.map(\n\t\t\t\t( { tagName, href, id, rel, media, textContent } ) => {\n\t\t\t\t\tconst TagName = tagName.toLowerCase();\n\n\t\t\t\t\tif ( TagName === 'style' ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TagName { ...{ id } } key={ id }>\n\t\t\t\t\t\t\t\t{ textContent }\n\t\t\t\t\t\t\t</TagName>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<TagName { ...{ href, id, rel, media } } key={ id } />\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t) }\n\t\t\t{ head }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ tabIndex >= 0 && before }\n\t\t\t<iframe\n\t\t\t\t{ ...props }\n\t\t\t\tref={ useMergeRefs( [ ref, setRef ] ) }\n\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\ttitle={ __( 'Editor canvas' ) }\n\t\t\t>\n\t\t\t\t{ iframeDocument &&\n\t\t\t\t\tcreatePortal(\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<head ref={ headRef }>{ head }</head>\n\t\t\t\t\t\t\t<body\n\t\t\t\t\t\t\t\tref={ bodyRef }\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\tBODY_CLASS_NAME,\n\t\t\t\t\t\t\t\t\t...bodyClasses\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<StyleProvider document={ iframeDocument }>\n\t\t\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t\t\t</StyleProvider>\n\t\t\t\t\t\t\t</body>\n\t\t\t\t\t\t</>,\n\t\t\t\t\t\tiframeDocument.documentElement\n\t\t\t\t\t) }\n\t\t\t</iframe>\n\t\t\t{ tabIndex >= 0 && after }\n\t\t</>\n\t);\n}\n\nexport default forwardRef( Iframe );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/iframe/index.js"],"names":["BODY_CLASS_NAME","BLOCK_PREFIX","styleSheetsCompat","doc","Array","from","document","styleSheets","forEach","styleSheet","cssRules","e","ownerNode","tagName","id","isMatch","find","selectorText","includes","getElementById","console","warn","outerHTML","head","appendChild","cloneNode","inlineCssId","replace","inlineCssElement","bubbleEvents","defaultView","frameElement","bubbleEvent","event","prototype","Object","getPrototypeOf","constructorName","constructor","name","Constructor","window","init","key","MouseEvent","rect","getBoundingClientRect","clientX","left","clientY","top","newEvent","type","cancelled","dispatchEvent","preventDefault","eventTypes","addEventListener","useParsedAssets","html","implementation","createHTMLDocument","body","innerHTML","children","loadScript","src","Promise","resolve","reject","script","ownerDocument","createElement","onload","onerror","Iframe","ref","contentRef","tabIndex","props","forceRender","iframeDocument","setIframeDocument","bodyClasses","setBodyClasses","styles","__editorAssets","scripts","clearerRef","before","writingFlowRef","after","setRef","node","setDocumentIfReady","contentDocument","readyState","documentElement","classList","filter","startsWith","dir","removeChild","headRef","element","reduce","promise","then","finally","bodyRef","map","href","rel","media","textContent","TagName","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tcreatePortal,\n\tforwardRef,\n\tuseEffect,\n\tuseMemo,\n\tuseReducer,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { __experimentalStyleProvider as StyleProvider } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useBlockSelectionClearer } from '../block-selection-clearer';\nimport { useWritingFlow } from '../writing-flow';\n\nconst BODY_CLASS_NAME = 'editor-styles-wrapper';\nconst BLOCK_PREFIX = 'wp-block';\n\n/**\n * Clones stylesheets targetting the editor canvas to the given document. A\n * stylesheet is considered targetting the editor a canvas if it contains the\n * `editor-styles-wrapper`, `wp-block`, or `wp-block-*` class selectors.\n *\n * Ideally, this hook should be removed in the future and styles should be added\n * explicitly as editor styles.\n *\n * @param {Document} doc The document to append cloned stylesheets to.\n */\nfunction styleSheetsCompat( doc ) {\n\t// Search the document for stylesheets targetting the editor canvas.\n\tArray.from( document.styleSheets ).forEach( ( styleSheet ) => {\n\t\ttry {\n\t\t\t// May fail for external styles.\n\t\t\t// eslint-disable-next-line no-unused-expressions\n\t\t\tstyleSheet.cssRules;\n\t\t} catch ( e ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerNode, cssRules } = styleSheet;\n\n\t\tif ( ! cssRules ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Generally, ignore inline styles. We add inline styles belonging to a\n\t\t// stylesheet later, which may or may not match the selectors.\n\t\tif ( ownerNode.tagName !== 'LINK' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Don't try to add the reset styles, which were removed as a dependency\n\t\t// from `edit-blocks` for the iframe since we don't need to reset admin\n\t\t// styles.\n\t\tif ( ownerNode.id === 'wp-reset-editor-styles-css' ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isMatch = Array.from( cssRules ).find(\n\t\t\t( { selectorText } ) =>\n\t\t\t\tselectorText &&\n\t\t\t\t( selectorText.includes( `.${ BODY_CLASS_NAME }` ) ||\n\t\t\t\t\tselectorText.includes( `.${ BLOCK_PREFIX }` ) )\n\t\t);\n\n\t\tif ( isMatch && ! doc.getElementById( ownerNode.id ) ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn(\n\t\t\t\t`Stylesheet ${ ownerNode.id } was not properly added.\nFor blocks, use the block API's style (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#style) or editorStyle (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#editor-style).\nFor themes, use add_editor_style (https://developer.wordpress.org/block-editor/how-to-guides/themes/theme-support/#editor-styles).`,\n\t\t\t\townerNode.outerHTML\n\t\t\t);\n\t\t\tdoc.head.appendChild( ownerNode.cloneNode( true ) );\n\n\t\t\t// Add inline styles belonging to the stylesheet.\n\t\t\tconst inlineCssId = ownerNode.id.replace( '-css', '-inline-css' );\n\t\t\tconst inlineCssElement = document.getElementById( inlineCssId );\n\n\t\t\tif ( inlineCssElement ) {\n\t\t\t\tdoc.head.appendChild( inlineCssElement.cloneNode( true ) );\n\t\t\t}\n\t\t}\n\t} );\n}\n\n/**\n * Bubbles some event types (keydown, keypress, and dragover) to parent document\n * document to ensure that the keyboard shortcuts and drag and drop work.\n *\n * Ideally, we should remove event bubbling in the future. Keyboard shortcuts\n * should be context dependent, e.g. actions on blocks like Cmd+A should not\n * work globally outside the block editor.\n *\n * @param {Document} doc Document to attach listeners to.\n */\nfunction bubbleEvents( doc ) {\n\tconst { defaultView } = doc;\n\tconst { frameElement } = defaultView;\n\n\tfunction bubbleEvent( event ) {\n\t\tconst prototype = Object.getPrototypeOf( event );\n\t\tconst constructorName = prototype.constructor.name;\n\t\tconst Constructor = window[ constructorName ];\n\n\t\tconst init = {};\n\n\t\tfor ( const key in event ) {\n\t\t\tinit[ key ] = event[ key ];\n\t\t}\n\n\t\tif ( event instanceof defaultView.MouseEvent ) {\n\t\t\tconst rect = frameElement.getBoundingClientRect();\n\t\t\tinit.clientX += rect.left;\n\t\t\tinit.clientY += rect.top;\n\t\t}\n\n\t\tconst newEvent = new Constructor( event.type, init );\n\t\tconst cancelled = ! frameElement.dispatchEvent( newEvent );\n\n\t\tif ( cancelled ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tconst eventTypes = [ 'dragover' ];\n\n\tfor ( const name of eventTypes ) {\n\t\tdoc.addEventListener( name, bubbleEvent );\n\t}\n}\n\nfunction useParsedAssets( html ) {\n\treturn useMemo( () => {\n\t\tconst doc = document.implementation.createHTMLDocument( '' );\n\t\tdoc.body.innerHTML = html;\n\t\treturn Array.from( doc.body.children );\n\t}, [ html ] );\n}\n\nasync function loadScript( head, { id, src } ) {\n\treturn new Promise( ( resolve, reject ) => {\n\t\tconst script = head.ownerDocument.createElement( 'script' );\n\t\tscript.id = id;\n\t\tif ( src ) {\n\t\t\tscript.src = src;\n\t\t\tscript.onload = () => resolve();\n\t\t\tscript.onerror = () => reject();\n\t\t} else {\n\t\t\tresolve();\n\t\t}\n\t\thead.appendChild( script );\n\t} );\n}\n\nfunction Iframe( { contentRef, children, head, tabIndex = 0, ...props }, ref ) {\n\tconst [ , forceRender ] = useReducer( () => ( {} ) );\n\tconst [ iframeDocument, setIframeDocument ] = useState();\n\tconst [ bodyClasses, setBodyClasses ] = useState( [] );\n\tconst styles = useParsedAssets( window.__editorAssets?.styles );\n\tconst scripts = useParsedAssets( window.__editorAssets?.scripts );\n\tconst clearerRef = useBlockSelectionClearer();\n\tconst [ before, writingFlowRef, after ] = useWritingFlow();\n\tconst setRef = useRefEffect( ( node ) => {\n\t\tfunction setDocumentIfReady() {\n\t\t\tconst { contentDocument, ownerDocument } = node;\n\t\t\tconst { readyState, documentElement } = contentDocument;\n\n\t\t\tif ( readyState !== 'interactive' && readyState !== 'complete' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tbubbleEvents( contentDocument );\n\t\t\tsetIframeDocument( contentDocument );\n\t\t\tclearerRef( documentElement );\n\n\t\t\t// Ideally ALL classes that are added through get_body_class should\n\t\t\t// be added in the editor too, which we'll somehow have to get from\n\t\t\t// the server in the future (which will run the PHP filters).\n\t\t\tsetBodyClasses(\n\t\t\t\tArray.from( ownerDocument.body.classList ).filter(\n\t\t\t\t\t( name ) =>\n\t\t\t\t\t\tname.startsWith( 'admin-color-' ) ||\n\t\t\t\t\t\tname === 'wp-embed-responsive'\n\t\t\t\t)\n\t\t\t);\n\n\t\t\tcontentDocument.dir = ownerDocument.dir;\n\t\t\tdocumentElement.removeChild( contentDocument.head );\n\t\t\tdocumentElement.removeChild( contentDocument.body );\n\n\t\t\treturn true;\n\t\t}\n\n\t\tif ( setDocumentIfReady() ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Document is not immediately loaded in Firefox.\n\t\tnode.addEventListener( 'load', () => {\n\t\t\tsetDocumentIfReady();\n\t\t} );\n\t}, [] );\n\tconst headRef = useRefEffect( ( element ) => {\n\t\tscripts\n\t\t\t.reduce(\n\t\t\t\t( promise, script ) =>\n\t\t\t\t\tpromise.then( () => loadScript( element, script ) ),\n\t\t\t\tPromise.resolve()\n\t\t\t)\n\t\t\t.finally( () => {\n\t\t\t\t// When script are loaded, re-render blocks to allow them\n\t\t\t\t// to initialise.\n\t\t\t\tforceRender();\n\t\t\t} );\n\t}, [] );\n\tconst bodyRef = useMergeRefs( [ contentRef, clearerRef, writingFlowRef ] );\n\n\tuseEffect( () => {\n\t\tif ( iframeDocument ) {\n\t\t\tstyleSheetsCompat( iframeDocument );\n\t\t}\n\t}, [ iframeDocument ] );\n\n\thead = (\n\t\t<>\n\t\t\t<style>{ 'body{margin:0}' }</style>\n\t\t\t{ styles.map(\n\t\t\t\t( { tagName, href, id, rel, media, textContent } ) => {\n\t\t\t\t\tconst TagName = tagName.toLowerCase();\n\n\t\t\t\t\tif ( TagName === 'style' ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TagName { ...{ id } } key={ id }>\n\t\t\t\t\t\t\t\t{ textContent }\n\t\t\t\t\t\t\t</TagName>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<TagName { ...{ href, id, rel, media } } key={ id } />\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t) }\n\t\t\t{ head }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ tabIndex >= 0 && before }\n\t\t\t<iframe\n\t\t\t\t{ ...props }\n\t\t\t\tref={ useMergeRefs( [ ref, setRef ] ) }\n\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\ttitle={ __( 'Editor canvas' ) }\n\t\t\t>\n\t\t\t\t{ iframeDocument &&\n\t\t\t\t\tcreatePortal(\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<head ref={ headRef }>{ head }</head>\n\t\t\t\t\t\t\t<body\n\t\t\t\t\t\t\t\tref={ bodyRef }\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\tBODY_CLASS_NAME,\n\t\t\t\t\t\t\t\t\t...bodyClasses\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<StyleProvider document={ iframeDocument }>\n\t\t\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t\t\t</StyleProvider>\n\t\t\t\t\t\t\t</body>\n\t\t\t\t\t\t</>,\n\t\t\t\t\t\tiframeDocument.documentElement\n\t\t\t\t\t) }\n\t\t\t</iframe>\n\t\t\t{ tabIndex >= 0 && after }\n\t\t</>\n\t);\n}\n\nexport default forwardRef( Iframe );\n"]}