@wordpress/block-editor 8.2.0 → 8.2.1-next.a55ed9455a.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. package/README.md +6 -2
  2. package/build/autocompleters/link.js +78 -0
  3. package/build/autocompleters/link.js.map +1 -0
  4. package/build/components/autocomplete/index.js +3 -1
  5. package/build/components/autocomplete/index.js.map +1 -1
  6. package/build/components/block-actions/index.js +1 -1
  7. package/build/components/block-actions/index.js.map +1 -1
  8. package/build/components/block-breadcrumb/index.js +4 -2
  9. package/build/components/block-breadcrumb/index.js.map +1 -1
  10. package/build/components/block-compare/index.js +2 -2
  11. package/build/components/block-compare/index.js.map +1 -1
  12. package/build/components/block-controls/index.js +1 -1
  13. package/build/components/block-controls/index.js.map +1 -1
  14. package/build/components/block-draggable/index.js +1 -1
  15. package/build/components/block-draggable/index.js.map +1 -1
  16. package/build/components/block-edit/edit.js +1 -1
  17. package/build/components/block-edit/edit.js.map +1 -1
  18. package/build/components/block-list/block-html.js +1 -1
  19. package/build/components/block-list/block-html.js.map +1 -1
  20. package/build/components/block-list/block-invalid-warning.js +1 -1
  21. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  22. package/build/components/block-list/block-list-item.native.js +4 -4
  23. package/build/components/block-list/block-list-item.native.js.map +1 -1
  24. package/build/components/block-list/block-selection-button.native.js +4 -3
  25. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  26. package/build/components/block-list/block.js +1 -1
  27. package/build/components/block-list/block.js.map +1 -1
  28. package/build/components/block-list/block.native.js +5 -5
  29. package/build/components/block-list/block.native.js.map +1 -1
  30. package/build/components/block-list/index.native.js +5 -5
  31. package/build/components/block-list/index.native.js.map +1 -1
  32. package/build/components/block-list/use-block-props/use-block-class-names.js +1 -1
  33. package/build/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
  34. package/build/components/block-media-update-progress/index.native.js +4 -4
  35. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  36. package/build/components/block-mobile-toolbar/block-actions-menu.native.js +3 -3
  37. package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  38. package/build/components/block-mobile-toolbar/index.native.js +1 -1
  39. package/build/components/block-mobile-toolbar/index.native.js.map +1 -1
  40. package/build/components/block-mover/mover-description.js +4 -4
  41. package/build/components/block-mover/mover-description.js.map +1 -1
  42. package/build/components/block-mover/mover-description.native.js +5 -5
  43. package/build/components/block-mover/mover-description.native.js.map +1 -1
  44. package/build/components/block-settings-menu/block-settings-dropdown.js +7 -12
  45. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  46. package/build/components/block-styles/preview.native.js +1 -1
  47. package/build/components/block-styles/preview.native.js.map +1 -1
  48. package/build/components/block-switcher/index.js +2 -1
  49. package/build/components/block-switcher/index.js.map +1 -1
  50. package/build/components/block-switcher/use-transformed-patterns.js +0 -1
  51. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  52. package/build/components/block-title/index.js +7 -62
  53. package/build/components/block-title/index.js.map +1 -1
  54. package/build/components/block-title/use-block-display-title.js +94 -0
  55. package/build/components/block-title/use-block-display-title.js.map +1 -0
  56. package/build/components/block-toolbar/utils.js +9 -1
  57. package/build/components/block-toolbar/utils.js.map +1 -1
  58. package/build/components/block-tools/block-popover.js +1 -1
  59. package/build/components/block-tools/block-popover.js.map +1 -1
  60. package/build/components/block-tools/block-selection-button.js +2 -1
  61. package/build/components/block-tools/block-selection-button.js.map +1 -1
  62. package/build/components/block-types-list/index.native.js +1 -1
  63. package/build/components/block-types-list/index.native.js.map +1 -1
  64. package/build/components/border-radius-control/index.js +2 -2
  65. package/build/components/border-radius-control/index.js.map +1 -1
  66. package/build/components/border-radius-control/utils.js +10 -6
  67. package/build/components/border-radius-control/utils.js.map +1 -1
  68. package/build/components/contrast-checker/index.js +3 -3
  69. package/build/components/contrast-checker/index.js.map +1 -1
  70. package/build/components/convert-to-group-buttons/index.js +1 -1
  71. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  72. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +1 -3
  73. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  74. package/build/components/copy-handler/index.js +3 -3
  75. package/build/components/copy-handler/index.js.map +1 -1
  76. package/build/components/font-sizes/with-font-sizes.js +3 -3
  77. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  78. package/build/components/index.native.js +29 -1
  79. package/build/components/index.native.js.map +1 -1
  80. package/build/components/inserter/block-patterns-tab.js +1 -1
  81. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  82. package/build/components/inserter/block-types-tab.js +1 -1
  83. package/build/components/inserter/block-types-tab.js.map +1 -1
  84. package/build/components/inserter/hooks/use-block-type-impressions.native.js +2 -2
  85. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  86. package/build/components/inserter/index.js +3 -3
  87. package/build/components/inserter/index.js.map +1 -1
  88. package/build/components/inserter/index.native.js +7 -7
  89. package/build/components/inserter/index.native.js.map +1 -1
  90. package/build/components/inserter/menu.js.map +1 -1
  91. package/build/components/inserter/menu.native.js +3 -3
  92. package/build/components/inserter/menu.native.js.map +1 -1
  93. package/build/components/inserter/quick-inserter.js +1 -1
  94. package/build/components/inserter/quick-inserter.js.map +1 -1
  95. package/build/components/inserter/search-items.js +1 -1
  96. package/build/components/inserter/search-items.js.map +1 -1
  97. package/build/components/inserter/search-results.js +1 -1
  98. package/build/components/inserter/search-results.js.map +1 -1
  99. package/build/components/keyboard-shortcuts/index.js +1 -1
  100. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  101. package/build/components/letter-spacing-control/index.js +3 -3
  102. package/build/components/letter-spacing-control/index.js.map +1 -1
  103. package/build/components/line-height-control/index.js +4 -4
  104. package/build/components/line-height-control/index.js.map +1 -1
  105. package/build/components/line-height-control/index.native.js +3 -1
  106. package/build/components/line-height-control/index.native.js.map +1 -1
  107. package/build/components/link-control/index.js +2 -2
  108. package/build/components/link-control/index.js.map +1 -1
  109. package/build/components/link-control/search-input.js +1 -1
  110. package/build/components/link-control/search-input.js.map +1 -1
  111. package/build/components/link-control/search-results.js +2 -2
  112. package/build/components/link-control/search-results.js.map +1 -1
  113. package/build/components/link-control/use-rich-url-data.js +1 -1
  114. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  115. package/build/components/link-control/use-search-handler.js +2 -2
  116. package/build/components/link-control/use-search-handler.js.map +1 -1
  117. package/build/components/list-view/block-select-button.js +2 -1
  118. package/build/components/list-view/block-select-button.js.map +1 -1
  119. package/build/components/list-view/block.js +1 -1
  120. package/build/components/list-view/block.js.map +1 -1
  121. package/build/components/media-placeholder/index.native.js +7 -5
  122. package/build/components/media-placeholder/index.native.js.map +1 -1
  123. package/build/components/media-replace-flow/index.js +20 -24
  124. package/build/components/media-replace-flow/index.js.map +1 -1
  125. package/build/components/media-upload/index.native.js +4 -3
  126. package/build/components/media-upload/index.native.js.map +1 -1
  127. package/build/components/media-upload-progress/index.native.js +1 -1
  128. package/build/components/media-upload-progress/index.native.js.map +1 -1
  129. package/build/components/navigable-toolbar/index.js +3 -3
  130. package/build/components/navigable-toolbar/index.js.map +1 -1
  131. package/build/components/plain-text/index.native.js +3 -3
  132. package/build/components/plain-text/index.native.js.map +1 -1
  133. package/build/components/rich-text/format-toolbar-container.js +2 -2
  134. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  135. package/build/components/rich-text/format-toolbar-container.native.js +1 -1
  136. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  137. package/build/components/rich-text/index.native.js +3 -3
  138. package/build/components/rich-text/index.native.js.map +1 -1
  139. package/build/components/rich-text/use-paste-handler.js +7 -11
  140. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  141. package/build/components/url-input/index.js +11 -11
  142. package/build/components/url-input/index.js.map +1 -1
  143. package/build/components/use-moving-animation/index.js +1 -1
  144. package/build/components/use-moving-animation/index.js.map +1 -1
  145. package/build/components/use-on-block-drop/index.js +2 -2
  146. package/build/components/use-on-block-drop/index.js.map +1 -1
  147. package/build/components/writing-flow/use-tab-nav.js +4 -3
  148. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  149. package/build/hooks/align.js +1 -1
  150. package/build/hooks/align.js.map +1 -1
  151. package/build/hooks/anchor.js +1 -1
  152. package/build/hooks/anchor.js.map +1 -1
  153. package/build/hooks/border.js +2 -14
  154. package/build/hooks/border.js.map +1 -1
  155. package/build/hooks/color.js +2 -2
  156. package/build/hooks/color.js.map +1 -1
  157. package/build/hooks/generated-class-name.js +3 -3
  158. package/build/hooks/generated-class-name.js.map +1 -1
  159. package/build/hooks/lock.js +1 -1
  160. package/build/hooks/lock.js.map +1 -1
  161. package/build/hooks/style.js +5 -2
  162. package/build/hooks/style.js.map +1 -1
  163. package/build/store/actions.js +4 -4
  164. package/build/store/actions.js.map +1 -1
  165. package/build/store/defaults.js +1 -1
  166. package/build/store/defaults.js.map +1 -1
  167. package/build/store/reducer.js +11 -11
  168. package/build/store/reducer.js.map +1 -1
  169. package/build/store/selectors.js +6 -6
  170. package/build/store/selectors.js.map +1 -1
  171. package/build/utils/parse-css-unit-to-px.js +3 -3
  172. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  173. package/build/utils/pasting.js +91 -0
  174. package/build/utils/pasting.js.map +1 -0
  175. package/build/utils/transform-styles/ast/parse.js +5 -5
  176. package/build/utils/transform-styles/ast/parse.js.map +1 -1
  177. package/build/utils/transform-styles/transforms/url-rewrite.js +2 -2
  178. package/build/utils/transform-styles/transforms/url-rewrite.js.map +1 -1
  179. package/build-module/autocompleters/link.js +64 -0
  180. package/build-module/autocompleters/link.js.map +1 -0
  181. package/build-module/components/autocomplete/index.js +2 -1
  182. package/build-module/components/autocomplete/index.js.map +1 -1
  183. package/build-module/components/block-actions/index.js +1 -1
  184. package/build-module/components/block-actions/index.js.map +1 -1
  185. package/build-module/components/block-breadcrumb/index.js +4 -2
  186. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  187. package/build-module/components/block-compare/index.js +2 -2
  188. package/build-module/components/block-compare/index.js.map +1 -1
  189. package/build-module/components/block-controls/index.js +1 -1
  190. package/build-module/components/block-controls/index.js.map +1 -1
  191. package/build-module/components/block-draggable/index.js +1 -1
  192. package/build-module/components/block-draggable/index.js.map +1 -1
  193. package/build-module/components/block-edit/edit.js +1 -1
  194. package/build-module/components/block-edit/edit.js.map +1 -1
  195. package/build-module/components/block-list/block-html.js +1 -1
  196. package/build-module/components/block-list/block-html.js.map +1 -1
  197. package/build-module/components/block-list/block-invalid-warning.js +1 -1
  198. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  199. package/build-module/components/block-list/block-list-item.native.js +4 -4
  200. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  201. package/build-module/components/block-list/block-selection-button.native.js +4 -3
  202. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  203. package/build-module/components/block-list/block.js +1 -1
  204. package/build-module/components/block-list/block.js.map +1 -1
  205. package/build-module/components/block-list/block.native.js +5 -5
  206. package/build-module/components/block-list/block.native.js.map +1 -1
  207. package/build-module/components/block-list/index.native.js +5 -5
  208. package/build-module/components/block-list/index.native.js.map +1 -1
  209. package/build-module/components/block-list/use-block-props/use-block-class-names.js +1 -1
  210. package/build-module/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
  211. package/build-module/components/block-media-update-progress/index.native.js +4 -4
  212. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  213. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +3 -3
  214. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  215. package/build-module/components/block-mobile-toolbar/index.native.js +1 -1
  216. package/build-module/components/block-mobile-toolbar/index.native.js.map +1 -1
  217. package/build-module/components/block-mover/mover-description.js +4 -4
  218. package/build-module/components/block-mover/mover-description.js.map +1 -1
  219. package/build-module/components/block-mover/mover-description.native.js +5 -5
  220. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  221. package/build-module/components/block-settings-menu/block-settings-dropdown.js +7 -13
  222. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  223. package/build-module/components/block-styles/preview.native.js +1 -1
  224. package/build-module/components/block-styles/preview.native.js.map +1 -1
  225. package/build-module/components/block-switcher/index.js +2 -1
  226. package/build-module/components/block-switcher/index.js.map +1 -1
  227. package/build-module/components/block-switcher/use-transformed-patterns.js +0 -1
  228. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  229. package/build-module/components/block-title/index.js +7 -58
  230. package/build-module/components/block-title/index.js.map +1 -1
  231. package/build-module/components/block-title/use-block-display-title.js +80 -0
  232. package/build-module/components/block-title/use-block-display-title.js.map +1 -0
  233. package/build-module/components/block-toolbar/utils.js +9 -1
  234. package/build-module/components/block-toolbar/utils.js.map +1 -1
  235. package/build-module/components/block-tools/block-popover.js +1 -1
  236. package/build-module/components/block-tools/block-popover.js.map +1 -1
  237. package/build-module/components/block-tools/block-selection-button.js +2 -1
  238. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  239. package/build-module/components/block-types-list/index.native.js +1 -1
  240. package/build-module/components/block-types-list/index.native.js.map +1 -1
  241. package/build-module/components/border-radius-control/index.js +3 -3
  242. package/build-module/components/border-radius-control/index.js.map +1 -1
  243. package/build-module/components/border-radius-control/utils.js +11 -7
  244. package/build-module/components/border-radius-control/utils.js.map +1 -1
  245. package/build-module/components/contrast-checker/index.js +3 -3
  246. package/build-module/components/contrast-checker/index.js.map +1 -1
  247. package/build-module/components/convert-to-group-buttons/index.js +1 -1
  248. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  249. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +1 -3
  250. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  251. package/build-module/components/copy-handler/index.js +2 -2
  252. package/build-module/components/copy-handler/index.js.map +1 -1
  253. package/build-module/components/font-sizes/with-font-sizes.js +3 -3
  254. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  255. package/build-module/components/index.native.js +4 -4
  256. package/build-module/components/index.native.js.map +1 -1
  257. package/build-module/components/inserter/block-patterns-tab.js +1 -1
  258. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  259. package/build-module/components/inserter/block-types-tab.js +1 -1
  260. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  261. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +2 -2
  262. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  263. package/build-module/components/inserter/index.js +3 -3
  264. package/build-module/components/inserter/index.js.map +1 -1
  265. package/build-module/components/inserter/index.native.js +7 -7
  266. package/build-module/components/inserter/index.native.js.map +1 -1
  267. package/build-module/components/inserter/menu.js.map +1 -1
  268. package/build-module/components/inserter/menu.native.js +3 -3
  269. package/build-module/components/inserter/menu.native.js.map +1 -1
  270. package/build-module/components/inserter/quick-inserter.js +1 -1
  271. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  272. package/build-module/components/inserter/search-items.js +1 -1
  273. package/build-module/components/inserter/search-items.js.map +1 -1
  274. package/build-module/components/inserter/search-results.js +1 -1
  275. package/build-module/components/inserter/search-results.js.map +1 -1
  276. package/build-module/components/keyboard-shortcuts/index.js +1 -1
  277. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  278. package/build-module/components/letter-spacing-control/index.js +3 -3
  279. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  280. package/build-module/components/line-height-control/index.js +4 -4
  281. package/build-module/components/line-height-control/index.js.map +1 -1
  282. package/build-module/components/line-height-control/index.native.js +3 -1
  283. package/build-module/components/line-height-control/index.native.js.map +1 -1
  284. package/build-module/components/link-control/index.js +2 -2
  285. package/build-module/components/link-control/index.js.map +1 -1
  286. package/build-module/components/link-control/search-input.js +1 -1
  287. package/build-module/components/link-control/search-input.js.map +1 -1
  288. package/build-module/components/link-control/search-results.js +2 -2
  289. package/build-module/components/link-control/search-results.js.map +1 -1
  290. package/build-module/components/link-control/use-rich-url-data.js +1 -1
  291. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  292. package/build-module/components/link-control/use-search-handler.js +2 -2
  293. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  294. package/build-module/components/list-view/block-select-button.js +2 -1
  295. package/build-module/components/list-view/block-select-button.js.map +1 -1
  296. package/build-module/components/list-view/block.js +1 -1
  297. package/build-module/components/list-view/block.js.map +1 -1
  298. package/build-module/components/media-placeholder/index.native.js +7 -5
  299. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  300. package/build-module/components/media-replace-flow/index.js +22 -27
  301. package/build-module/components/media-replace-flow/index.js.map +1 -1
  302. package/build-module/components/media-upload/index.native.js +4 -3
  303. package/build-module/components/media-upload/index.native.js.map +1 -1
  304. package/build-module/components/media-upload-progress/index.native.js +1 -1
  305. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  306. package/build-module/components/navigable-toolbar/index.js +3 -3
  307. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  308. package/build-module/components/plain-text/index.native.js +3 -3
  309. package/build-module/components/plain-text/index.native.js.map +1 -1
  310. package/build-module/components/rich-text/format-toolbar-container.js +2 -2
  311. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  312. package/build-module/components/rich-text/format-toolbar-container.native.js +1 -1
  313. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  314. package/build-module/components/rich-text/index.native.js +3 -3
  315. package/build-module/components/rich-text/index.native.js.map +1 -1
  316. package/build-module/components/rich-text/use-paste-handler.js +6 -11
  317. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  318. package/build-module/components/url-input/index.js +11 -11
  319. package/build-module/components/url-input/index.js.map +1 -1
  320. package/build-module/components/use-moving-animation/index.js +1 -1
  321. package/build-module/components/use-moving-animation/index.js.map +1 -1
  322. package/build-module/components/use-on-block-drop/index.js +2 -2
  323. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  324. package/build-module/components/writing-flow/use-tab-nav.js +4 -3
  325. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  326. package/build-module/hooks/align.js +1 -1
  327. package/build-module/hooks/align.js.map +1 -1
  328. package/build-module/hooks/anchor.js +1 -1
  329. package/build-module/hooks/anchor.js.map +1 -1
  330. package/build-module/hooks/border.js +2 -14
  331. package/build-module/hooks/border.js.map +1 -1
  332. package/build-module/hooks/color.js +2 -2
  333. package/build-module/hooks/color.js.map +1 -1
  334. package/build-module/hooks/generated-class-name.js +3 -3
  335. package/build-module/hooks/generated-class-name.js.map +1 -1
  336. package/build-module/hooks/lock.js +1 -1
  337. package/build-module/hooks/lock.js.map +1 -1
  338. package/build-module/hooks/style.js +5 -2
  339. package/build-module/hooks/style.js.map +1 -1
  340. package/build-module/store/actions.js +4 -4
  341. package/build-module/store/actions.js.map +1 -1
  342. package/build-module/store/defaults.js +1 -1
  343. package/build-module/store/defaults.js.map +1 -1
  344. package/build-module/store/reducer.js +11 -11
  345. package/build-module/store/reducer.js.map +1 -1
  346. package/build-module/store/selectors.js +6 -6
  347. package/build-module/store/selectors.js.map +1 -1
  348. package/build-module/utils/parse-css-unit-to-px.js +3 -3
  349. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  350. package/build-module/utils/pasting.js +80 -0
  351. package/build-module/utils/pasting.js.map +1 -0
  352. package/build-module/utils/transform-styles/ast/parse.js +5 -5
  353. package/build-module/utils/transform-styles/ast/parse.js.map +1 -1
  354. package/build-module/utils/transform-styles/transforms/url-rewrite.js +2 -2
  355. package/build-module/utils/transform-styles/transforms/url-rewrite.js.map +1 -1
  356. package/build-style/style-rtl.css +7 -0
  357. package/build-style/style.css +7 -0
  358. package/package.json +27 -27
  359. package/src/autocompleters/link.js +62 -0
  360. package/src/autocompleters/style.scss +8 -0
  361. package/src/components/alignment-control/test/index.js +2 -2
  362. package/src/components/autocomplete/index.js +2 -0
  363. package/src/components/block-actions/index.js +1 -1
  364. package/src/components/block-alignment-control/test/index.js +1 -1
  365. package/src/components/block-breadcrumb/index.js +5 -2
  366. package/src/components/block-compare/index.js +2 -2
  367. package/src/components/block-controls/index.js +1 -1
  368. package/src/components/block-draggable/index.js +1 -1
  369. package/src/components/block-draggable/stories/index.js +1 -1
  370. package/src/components/block-edit/edit.js +1 -1
  371. package/src/components/block-list/block-html.js +1 -1
  372. package/src/components/block-list/block-invalid-warning.js +1 -1
  373. package/src/components/block-list/block-list-item.native.js +4 -4
  374. package/src/components/block-list/block-selection-button.native.js +3 -3
  375. package/src/components/block-list/block.js +1 -1
  376. package/src/components/block-list/block.native.js +5 -5
  377. package/src/components/block-list/index.native.js +5 -5
  378. package/src/components/block-list/use-block-props/use-block-class-names.js +1 -1
  379. package/src/components/block-media-update-progress/index.native.js +4 -4
  380. package/src/components/block-media-update-progress/test/index.native.js +2 -2
  381. package/src/components/block-mobile-toolbar/block-actions-menu.native.js +3 -3
  382. package/src/components/block-mobile-toolbar/index.native.js +2 -2
  383. package/src/components/block-mover/mover-description.js +4 -4
  384. package/src/components/block-mover/mover-description.native.js +5 -5
  385. package/src/components/block-settings-menu/block-settings-dropdown.js +7 -8
  386. package/src/components/block-styles/preview.native.js +1 -1
  387. package/src/components/block-switcher/index.js +4 -1
  388. package/src/components/block-switcher/use-transformed-patterns.js +0 -1
  389. package/src/components/block-title/README.md +17 -1
  390. package/src/components/block-title/index.js +7 -62
  391. package/src/components/block-title/test/index.js +21 -3
  392. package/src/components/block-title/use-block-display-title.js +83 -0
  393. package/src/components/block-toolbar/utils.js +12 -2
  394. package/src/components/block-tools/block-popover.js +1 -1
  395. package/src/components/block-tools/block-selection-button.js +4 -1
  396. package/src/components/block-types-list/index.native.js +1 -1
  397. package/src/components/border-radius-control/index.js +5 -3
  398. package/src/components/border-radius-control/test/utils.js +10 -10
  399. package/src/components/border-radius-control/utils.js +10 -8
  400. package/src/components/contrast-checker/index.js +3 -3
  401. package/src/components/convert-to-group-buttons/index.js +1 -1
  402. package/src/components/convert-to-group-buttons/use-convert-to-group-button-props.js +1 -6
  403. package/src/components/copy-handler/index.js +2 -2
  404. package/src/components/font-sizes/with-font-sizes.js +3 -3
  405. package/src/components/image-size-control/test/index.js +1 -1
  406. package/src/components/index.native.js +10 -4
  407. package/src/components/inserter/block-patterns-tab.js +1 -1
  408. package/src/components/inserter/block-types-tab.js +1 -1
  409. package/src/components/inserter/hooks/use-block-type-impressions.native.js +2 -2
  410. package/src/components/inserter/index.js +3 -3
  411. package/src/components/inserter/index.native.js +7 -7
  412. package/src/components/inserter/menu.js +1 -1
  413. package/src/components/inserter/menu.native.js +3 -3
  414. package/src/components/inserter/quick-inserter.js +1 -1
  415. package/src/components/inserter/search-items.js +1 -1
  416. package/src/components/inserter/search-results.js +1 -1
  417. package/src/components/inserter/test/fixtures/index.native.js +1 -1
  418. package/src/components/inserter/test/reusable-blocks-tab.js +2 -2
  419. package/src/components/justify-content-control/README.md +1 -1
  420. package/src/components/keyboard-shortcuts/index.js +1 -1
  421. package/src/components/letter-spacing-control/index.js +1 -1
  422. package/src/components/line-height-control/index.js +4 -4
  423. package/src/components/line-height-control/index.native.js +2 -0
  424. package/src/components/link-control/index.js +2 -2
  425. package/src/components/link-control/search-input.js +1 -1
  426. package/src/components/link-control/search-results.js +2 -2
  427. package/src/components/link-control/test/index.js +142 -144
  428. package/src/components/link-control/use-rich-url-data.js +1 -1
  429. package/src/components/link-control/use-search-handler.js +2 -2
  430. package/src/components/list-view/block-select-button.js +1 -1
  431. package/src/components/list-view/block.js +1 -1
  432. package/src/components/media-placeholder/index.native.js +11 -9
  433. package/src/components/media-replace-flow/README.md +7 -0
  434. package/src/components/media-replace-flow/index.js +20 -26
  435. package/src/components/media-replace-flow/test/index.js +100 -0
  436. package/src/components/media-upload/index.native.js +3 -2
  437. package/src/components/media-upload-progress/index.native.js +1 -1
  438. package/src/components/navigable-toolbar/index.js +3 -3
  439. package/src/components/plain-text/index.native.js +3 -3
  440. package/src/components/responsive-block-control/test/index.js +6 -6
  441. package/src/components/rich-text/format-toolbar-container.js +2 -2
  442. package/src/components/rich-text/format-toolbar-container.native.js +1 -1
  443. package/src/components/rich-text/index.native.js +3 -3
  444. package/src/components/rich-text/use-paste-handler.js +7 -13
  445. package/src/components/url-input/index.js +11 -11
  446. package/src/components/use-block-drop-zone/test/index.js +1 -1
  447. package/src/components/use-moving-animation/index.js +1 -1
  448. package/src/components/use-on-block-drop/index.js +2 -2
  449. package/src/components/writing-flow/use-tab-nav.js +6 -3
  450. package/src/hooks/align.js +1 -1
  451. package/src/hooks/anchor.js +1 -1
  452. package/src/hooks/border.js +8 -19
  453. package/src/hooks/color.js +2 -2
  454. package/src/hooks/generated-class-name.js +3 -3
  455. package/src/hooks/lock.js +1 -1
  456. package/src/hooks/style.js +5 -2
  457. package/src/hooks/test/align.js +1 -1
  458. package/src/store/actions.js +4 -4
  459. package/src/store/defaults.js +1 -2
  460. package/src/store/reducer.js +11 -11
  461. package/src/store/selectors.js +6 -6
  462. package/src/store/test/actions.js +1 -1
  463. package/src/store/test/reducer.js +1 -1
  464. package/src/store/test/selectors.js +1 -1
  465. package/src/utils/parse-css-unit-to-px.js +3 -3
  466. package/src/utils/pasting.js +77 -0
  467. package/src/utils/test/parse-css-unit-to-px.js +5 -5
  468. package/src/utils/test/pasting.js +84 -0
  469. package/src/utils/transform-styles/ast/parse.js +5 -5
  470. package/src/utils/transform-styles/transforms/url-rewrite.js +2 -2
  471. package/build/utils/get-paste-event-data.js +0 -56
  472. package/build/utils/get-paste-event-data.js.map +0 -1
  473. package/build-module/utils/get-paste-event-data.js +0 -47
  474. package/build-module/utils/get-paste-event-data.js.map +0 -1
  475. package/src/utils/get-paste-event-data.js +0 -42
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/block-selection-button.native.js"],"names":["BlockSelectionButton","clientId","rootClientId","rootBlockIcon","isRTL","blockInformation","styles","selectionButtonContainer","densedPaddingLeft","button","src","icon","color","arrow","selectionButtonTitle","select","getBlockRootClientId","getBlockName","getSettings","blockEditorStore","rootBlockName","rootBlockType"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AArBA;AACA;AACA;;AAOA;AACA;AACA;;AAGA;AACA;AACA;AAOA,MAAMA,oBAAoB,GAAG,QAKtB;AAAA,MALwB;AAC9BC,IAAAA,QAD8B;AAE9BC,IAAAA,YAF8B;AAG9BC,IAAAA,aAH8B;AAI9BC,IAAAA;AAJ8B,GAKxB;AACN,QAAMC,gBAAgB,GAAG,yCAA4BJ,QAA5B,CAAzB;AACA,SACC,4BAAC,iBAAD;AACC,IAAA,KAAK,EAAG,CACPK,8BAAOC,wBADA,EAEPL,YAAY,IAAII,8BAAOE,iBAFhB;AADT,KAMC,4BAAC,6BAAD;AACC,IAAA,KAAK,EAAGF,8BAAOG,MADhB;AAEC,IAAA,OAAO,EAAG,MAAM;AACf;AACA,KAJF;AAKC,IAAA,QAAQ,EACP;AACC;;AAPH,KASGP,YAAY,IACbC,aADC,IACgB,CAChB,4BAAC,gBAAD;AACC,IAAA,GAAG,EAAC,aADL;AAEC,IAAA,IAAI,EAAG,EAFR;AAGC,IAAA,IAAI,EAAGA,aAAa,CAACO,GAHtB;AAIC,IAAA,IAAI,EAAGJ,8BAAOK,IAAP,CAAYC;AAJpB,IADgB,EAOhB,4BAAC,iBAAD;AAAM,IAAA,GAAG,EAAC,mBAAV;AAA8B,IAAA,KAAK,EAAGN,8BAAOO;AAA7C,KACC,4BAAC,yBAAD;AACC,IAAA,IAAI,EAAGP,8BAAOO,KAAP,CAAaD,KADrB;AAEC,IAAA,KAAK,EAAGR;AAFT,IADD,CAPgB,CAVnB,EAwBG,CAAAC,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,YAAAA,gBAAgB,CAAEM,IAAlB,KACD,4BAAC,sBAAD;AACC,IAAA,IAAI,EAAG,EADR;AAEC,IAAA,IAAI,EAAGN,gBAAgB,CAACM,IAFzB;AAGC,IAAA,IAAI,EAAGL,8BAAOK,IAAP,CAAYC;AAHpB,IAzBF,EA+BC,4BAAC,iBAAD;AACC,IAAA,qBAAqB,EAAG,IADzB;AAEC,IAAA,aAAa,EAAC,MAFf;AAGC,IAAA,aAAa,EAAG,CAHjB;AAIC,IAAA,KAAK,EAAGN,8BAAOQ;AAJhB,KAMC,4BAAC,mBAAD;AAAY,IAAA,QAAQ,EAAGb;AAAvB,IAND,CA/BD,CAND,CADD;AAiDA,CAxDD;;eA0De,sBAAS,CACvB,sBAAY,CAAEc,MAAF,YAA4B;AAAA,MAAlB;AAAEd,IAAAA;AAAF,GAAkB;AACvC,QAAM;AAAEe,IAAAA,oBAAF;AAAwBC,IAAAA,YAAxB;AAAsCC,IAAAA;AAAtC,MAAsDH,MAAM,CACjEI,YADiE,CAAlE;AAGA,QAAMjB,YAAY,GAAGc,oBAAoB,CAAEf,QAAF,CAAzC;;AAEA,MAAK,CAAEC,YAAP,EAAsB;AACrB,WAAO;AAAED,MAAAA;AAAF,KAAP;AACA;;AACD,QAAMmB,aAAa,GAAGH,YAAY,CAAEf,YAAF,CAAlC;AACA,QAAMmB,aAAa,GAAG,0BAAcD,aAAd,CAAtB;AACA,QAAMjB,aAAa,GAAGkB,aAAa,GAAGA,aAAa,CAACV,IAAjB,GAAwB,EAA3D;AAEA,SAAO;AACNV,IAAAA,QADM;AAENC,IAAAA,YAFM;AAGNC,IAAAA,aAHM;AAINC,IAAAA,KAAK,EAAEc,WAAW,GAAGd;AAJf,GAAP;AAMA,CAnBD,CADuB,CAAT,EAqBVJ,oBArBU,C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Icon } from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { getBlockType } from '@wordpress/blocks';\nimport { BlockIcon } from '@wordpress/block-editor';\n\n/**\n * External dependencies\n */\nimport { View, Text, TouchableOpacity } from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport BlockTitle from '../block-title';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport SubdirectorSVG from './subdirectory-icon';\nimport { store as blockEditorStore } from '../../store';\nimport styles from './block-selection-button.scss';\n\nconst BlockSelectionButton = ( {\n\tclientId,\n\trootClientId,\n\trootBlockIcon,\n\tisRTL,\n} ) => {\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tstyles.selectionButtonContainer,\n\t\t\t\trootClientId && styles.densedPaddingLeft,\n\t\t\t] }\n\t\t>\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={ styles.button }\n\t\t\t\tonPress={ () => {\n\t\t\t\t\t/* Open BottomSheet with markup */\n\t\t\t\t} }\n\t\t\t\tdisabled={\n\t\t\t\t\ttrue\n\t\t\t\t} /* Disable temporarily since onPress function is empty */\n\t\t\t>\n\t\t\t\t{ rootClientId &&\n\t\t\t\t\trootBlockIcon && [\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tkey=\"parent-icon\"\n\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\ticon={ rootBlockIcon.src }\n\t\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t\t/>,\n\t\t\t\t\t\t<View key=\"subdirectory-icon\" style={ styles.arrow }>\n\t\t\t\t\t\t\t<SubdirectorSVG\n\t\t\t\t\t\t\t\tfill={ styles.arrow.color }\n\t\t\t\t\t\t\t\tisRTL={ isRTL }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>,\n\t\t\t\t\t] }\n\t\t\t\t{ blockInformation?.icon && (\n\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\ticon={ blockInformation.icon }\n\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Text\n\t\t\t\t\tmaxFontSizeMultiplier={ 1.25 }\n\t\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\tstyle={ styles.selectionButtonTitle }\n\t\t\t\t>\n\t\t\t\t\t<BlockTitle clientId={ clientId } />\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlockRootClientId, getBlockName, getSettings } = select(\n\t\t\tblockEditorStore\n\t\t);\n\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\tif ( ! rootClientId ) {\n\t\t\treturn { clientId };\n\t\t}\n\t\tconst rootBlockName = getBlockName( rootClientId );\n\t\tconst rootBlockType = getBlockType( rootBlockName );\n\t\tconst rootBlockIcon = rootBlockType ? rootBlockType.icon : {};\n\n\t\treturn {\n\t\t\tclientId,\n\t\t\trootClientId,\n\t\t\trootBlockIcon,\n\t\t\tisRTL: getSettings().isRTL,\n\t\t};\n\t} ),\n] )( BlockSelectionButton );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/block-selection-button.native.js"],"names":["BlockSelectionButton","clientId","rootClientId","rootBlockIcon","isRTL","blockInformation","styles","selectionButtonContainer","densedPaddingLeft","button","src","icon","color","arrow","selectionButtonTitle","select","getBlockRootClientId","getBlockName","getSettings","blockEditorStore","rootBlockName","rootBlockType"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AArBA;AACA;AACA;;AAOA;AACA;AACA;;AAGA;AACA;AACA;AAOA,MAAMA,oBAAoB,GAAG,QAKtB;AAAA,MALwB;AAC9BC,IAAAA,QAD8B;AAE9BC,IAAAA,YAF8B;AAG9BC,IAAAA,aAH8B;AAI9BC,IAAAA;AAJ8B,GAKxB;AACN,QAAMC,gBAAgB,GAAG,yCAA4BJ,QAA5B,CAAzB;AACA,SACC,4BAAC,iBAAD;AACC,IAAA,KAAK,EAAG,CACPK,8BAAOC,wBADA,EAEPL,YAAY,IAAII,8BAAOE,iBAFhB;AADT,KAMC,4BAAC,6BAAD;AACC,IAAA,KAAK,EAAGF,8BAAOG,MADhB;AAEC,IAAA,OAAO,EAAG,MAAM;AACf;AACA,KAJF;AAKC,IAAA,QAAQ,EACP;AACC;;AAPH,KASGP,YAAY,IACbC,aADC,IACgB,CAChB,4BAAC,gBAAD;AACC,IAAA,GAAG,EAAC,aADL;AAEC,IAAA,IAAI,EAAG,EAFR;AAGC,IAAA,IAAI,EAAGA,aAAa,CAACO,GAHtB;AAIC,IAAA,IAAI,EAAGJ,8BAAOK,IAAP,CAAYC;AAJpB,IADgB,EAOhB,4BAAC,iBAAD;AAAM,IAAA,GAAG,EAAC,mBAAV;AAA8B,IAAA,KAAK,EAAGN,8BAAOO;AAA7C,KACC,4BAAC,yBAAD;AACC,IAAA,IAAI,EAAGP,8BAAOO,KAAP,CAAaD,KADrB;AAEC,IAAA,KAAK,EAAGR;AAFT,IADD,CAPgB,CAVnB,EAwBG,CAAAC,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,YAAAA,gBAAgB,CAAEM,IAAlB,KACD,4BAAC,sBAAD;AACC,IAAA,IAAI,EAAG,EADR;AAEC,IAAA,IAAI,EAAGN,gBAAgB,CAACM,IAFzB;AAGC,IAAA,IAAI,EAAGL,8BAAOK,IAAP,CAAYC;AAHpB,IAzBF,EA+BC,4BAAC,iBAAD;AACC,IAAA,qBAAqB,EAAG,IADzB;AAEC,IAAA,aAAa,EAAC,MAFf;AAGC,IAAA,aAAa,EAAG,CAHjB;AAIC,IAAA,KAAK,EAAGN,8BAAOQ;AAJhB,KAMC,4BAAC,mBAAD;AAAY,IAAA,QAAQ,EAAGb,QAAvB;AAAkC,IAAA,aAAa,EAAG;AAAlD,IAND,CA/BD,CAND,CADD;AAiDA,CAxDD;;eA0De,sBAAS,CACvB,sBAAY,CAAEc,MAAF,YAA4B;AAAA,MAAlB;AAAEd,IAAAA;AAAF,GAAkB;AACvC,QAAM;AAAEe,IAAAA,oBAAF;AAAwBC,IAAAA,YAAxB;AAAsCC,IAAAA;AAAtC,MAAsDH,MAAM,CACjEI,YADiE,CAAlE;AAGA,QAAMjB,YAAY,GAAGc,oBAAoB,CAAEf,QAAF,CAAzC;;AAEA,MAAK,CAAEC,YAAP,EAAsB;AACrB,WAAO;AAAED,MAAAA;AAAF,KAAP;AACA;;AACD,QAAMmB,aAAa,GAAGH,YAAY,CAAEf,YAAF,CAAlC;AACA,QAAMmB,aAAa,GAAG,0BAAcD,aAAd,CAAtB;AACA,QAAMjB,aAAa,GAAGkB,aAAa,GAAGA,aAAa,CAACV,IAAjB,GAAwB,EAA3D;AAEA,SAAO;AACNV,IAAAA,QADM;AAENC,IAAAA,YAFM;AAGNC,IAAAA,aAHM;AAINC,IAAAA,KAAK,EAAEc,WAAW,GAAGd;AAJf,GAAP;AAMA,CAnBD,CADuB,CAAT,EAqBVJ,oBArBU,C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Icon } from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { getBlockType } from '@wordpress/blocks';\nimport { BlockIcon } from '@wordpress/block-editor';\n\n/**\n * External dependencies\n */\nimport { View, Text, TouchableOpacity } from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport BlockTitle from '../block-title';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport SubdirectorSVG from './subdirectory-icon';\nimport { store as blockEditorStore } from '../../store';\nimport styles from './block-selection-button.scss';\n\nconst BlockSelectionButton = ( {\n\tclientId,\n\trootClientId,\n\trootBlockIcon,\n\tisRTL,\n} ) => {\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tstyles.selectionButtonContainer,\n\t\t\t\trootClientId && styles.densedPaddingLeft,\n\t\t\t] }\n\t\t>\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={ styles.button }\n\t\t\t\tonPress={ () => {\n\t\t\t\t\t/* Open BottomSheet with markup. */\n\t\t\t\t} }\n\t\t\t\tdisabled={\n\t\t\t\t\ttrue\n\t\t\t\t} /* Disable temporarily since onPress function is empty. */\n\t\t\t>\n\t\t\t\t{ rootClientId &&\n\t\t\t\t\trootBlockIcon && [\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tkey=\"parent-icon\"\n\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\ticon={ rootBlockIcon.src }\n\t\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t\t/>,\n\t\t\t\t\t\t<View key=\"subdirectory-icon\" style={ styles.arrow }>\n\t\t\t\t\t\t\t<SubdirectorSVG\n\t\t\t\t\t\t\t\tfill={ styles.arrow.color }\n\t\t\t\t\t\t\t\tisRTL={ isRTL }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>,\n\t\t\t\t\t] }\n\t\t\t\t{ blockInformation?.icon && (\n\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\ticon={ blockInformation.icon }\n\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Text\n\t\t\t\t\tmaxFontSizeMultiplier={ 1.25 }\n\t\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\tstyle={ styles.selectionButtonTitle }\n\t\t\t\t>\n\t\t\t\t\t<BlockTitle clientId={ clientId } maximumLength={ 35 } />\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlockRootClientId, getBlockName, getSettings } = select(\n\t\t\tblockEditorStore\n\t\t);\n\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\tif ( ! rootClientId ) {\n\t\t\treturn { clientId };\n\t\t}\n\t\tconst rootBlockName = getBlockName( rootClientId );\n\t\tconst rootBlockType = getBlockType( rootBlockName );\n\t\tconst rootBlockIcon = rootBlockType ? rootBlockType.icon : {};\n\n\t\treturn {\n\t\t\tclientId,\n\t\t\trootClientId,\n\t\t\trootBlockIcon,\n\t\t\tisRTL: getSettings().isRTL,\n\t\t};\n\t} ),\n] )( BlockSelectionButton );\n"]}
@@ -336,7 +336,7 @@ const applyWithDispatch = (0, _data.withDispatch)((dispatch, ownProps, _ref4) =>
336
336
  };
337
337
  });
338
338
 
339
- var _default = (0, _compose.compose)(_compose.pure, applyWithSelect, applyWithDispatch, // block is sometimes not mounted at the right time, causing it be undefined
339
+ var _default = (0, _compose.compose)(_compose.pure, applyWithSelect, applyWithDispatch, // Block is sometimes not mounted at the right time, causing it be undefined
340
340
  // see issue for more info
341
341
  // https://github.com/WordPress/gutenberg/issues/17013
342
342
  (0, _compose.ifCondition)(_ref5 => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/block.js"],"names":["BlockListBlockContext","mergeWrapperProps","propsA","propsB","newProps","className","style","Block","children","isHtml","props","__unstableIsHtml","BlockListBlock","mode","isLocked","canRemove","clientId","isSelected","isSelectionEnabled","name","isValid","attributes","wrapperProps","setAttributes","onReplace","onInsertBlocksAfter","onMerge","toggleSelection","themeSupportsLayout","select","getSettings","blockEditorStore","supportsLayout","removeBlock","onRemove","blockEdit","undefined","blockType","getEditWrapperProps","isAligned","block","saveContent","display","apiVersion","value","memoizedValue","Object","values","applyWithSelect","rootClientId","isBlockSelected","getBlockMode","getTemplateLock","__unstableGetBlockWithoutInnerBlocks","canRemoveBlock","canMoveBlock","templateLock","canMove","applyWithDispatch","dispatch","ownProps","updateBlockAttributes","insertBlocks","mergeBlocks","replaceBlocks","__unstableMarkLastChangeAsPersistent","newAttributes","getMultiSelectedBlockClientIds","multiSelectedBlockClientIds","clientIds","length","onInsertBlocks","blocks","index","getBlockIndex","forward","getPreviousBlockClientId","getNextBlockClientId","nextBlockClientId","previousBlockClientId","indexToSelect","initialPosition","selectionEnabled","pure"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tcreateContext,\n\tuseMemo,\n\tuseCallback,\n\tRawHTML,\n} from '@wordpress/element';\nimport {\n\tgetBlockType,\n\tgetSaveContent,\n\tisUnmodifiedDefaultBlock,\n} from '@wordpress/blocks';\nimport { withFilters } from '@wordpress/components';\nimport {\n\twithDispatch,\n\twithSelect,\n\tuseDispatch,\n\tuseSelect,\n} from '@wordpress/data';\nimport { compose, pure, ifCondition } from '@wordpress/compose';\nimport { safeHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport BlockEdit from '../block-edit';\nimport BlockInvalidWarning from './block-invalid-warning';\nimport BlockCrashWarning from './block-crash-warning';\nimport BlockCrashBoundary from './block-crash-boundary';\nimport BlockHtml from './block-html';\nimport { useBlockProps } from './use-block-props';\nimport { store as blockEditorStore } from '../../store';\n\nexport const BlockListBlockContext = createContext();\n\n/**\n * Merges wrapper props with special handling for classNames and styles.\n *\n * @param {Object} propsA\n * @param {Object} propsB\n *\n * @return {Object} Merged props.\n */\nfunction mergeWrapperProps( propsA, propsB ) {\n\tconst newProps = {\n\t\t...propsA,\n\t\t...propsB,\n\t};\n\n\tif ( propsA && propsB && propsA.className && propsB.className ) {\n\t\tnewProps.className = classnames( propsA.className, propsB.className );\n\t}\n\tif ( propsA && propsB && propsA.style && propsB.style ) {\n\t\tnewProps.style = { ...propsA.style, ...propsB.style };\n\t}\n\n\treturn newProps;\n}\n\nfunction Block( { children, isHtml, ...props } ) {\n\treturn (\n\t\t<div { ...useBlockProps( props, { __unstableIsHtml: isHtml } ) }>\n\t\t\t{ children }\n\t\t</div>\n\t);\n}\n\nfunction BlockListBlock( {\n\tmode,\n\tisLocked,\n\tcanRemove,\n\tclientId,\n\tisSelected,\n\tisSelectionEnabled,\n\tclassName,\n\tname,\n\tisValid,\n\tattributes,\n\twrapperProps,\n\tsetAttributes,\n\tonReplace,\n\tonInsertBlocksAfter,\n\tonMerge,\n\ttoggleSelection,\n} ) {\n\tconst themeSupportsLayout = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings().supportsLayout;\n\t}, [] );\n\tconst { removeBlock } = useDispatch( blockEditorStore );\n\tconst onRemove = useCallback( () => removeBlock( clientId ), [ clientId ] );\n\n\t// We wrap the BlockEdit component in a div that hides it when editing in\n\t// HTML mode. This allows us to render all of the ancillary pieces\n\t// (InspectorControls, etc.) which are inside `BlockEdit` but not\n\t// `BlockHTML`, even in HTML mode.\n\tlet blockEdit = (\n\t\t<BlockEdit\n\t\t\tname={ name }\n\t\t\tisSelected={ isSelected }\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tinsertBlocksAfter={ isLocked ? undefined : onInsertBlocksAfter }\n\t\t\tonReplace={ canRemove ? onReplace : undefined }\n\t\t\tonRemove={ canRemove ? onRemove : undefined }\n\t\t\tmergeBlocks={ canRemove ? onMerge : undefined }\n\t\t\tclientId={ clientId }\n\t\t\tisSelectionEnabled={ isSelectionEnabled }\n\t\t\ttoggleSelection={ toggleSelection }\n\t\t/>\n\t);\n\n\tconst blockType = getBlockType( name );\n\n\t// Determine whether the block has props to apply to the wrapper.\n\tif ( blockType?.getEditWrapperProps ) {\n\t\twrapperProps = mergeWrapperProps(\n\t\t\twrapperProps,\n\t\t\tblockType.getEditWrapperProps( attributes )\n\t\t);\n\t}\n\n\tconst isAligned =\n\t\twrapperProps &&\n\t\t!! wrapperProps[ 'data-align' ] &&\n\t\t! themeSupportsLayout;\n\n\t// For aligned blocks, provide a wrapper element so the block can be\n\t// positioned relative to the block column.\n\t// This is only kept for classic themes that don't support layout\n\t// Historically we used to rely on extra divs and data-align to\n\t// provide the alignments styles in the editor.\n\t// Due to the differences between frontend and backend, we migrated\n\t// to the layout feature, and we're now aligning the markup of frontend\n\t// and backend.\n\tif ( isAligned ) {\n\t\tblockEdit = (\n\t\t\t<div\n\t\t\t\tclassName=\"wp-block\"\n\t\t\t\tdata-align={ wrapperProps[ 'data-align' ] }\n\t\t\t>\n\t\t\t\t{ blockEdit }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet block;\n\n\tif ( ! isValid ) {\n\t\tconst saveContent = getSaveContent( blockType, attributes );\n\n\t\tblock = (\n\t\t\t<Block className=\"has-warning\">\n\t\t\t\t<BlockInvalidWarning clientId={ clientId } />\n\t\t\t\t<RawHTML>{ safeHTML( saveContent ) }</RawHTML>\n\t\t\t</Block>\n\t\t);\n\t} else if ( mode === 'html' ) {\n\t\t// Render blockEdit so the inspector controls don't disappear.\n\t\t// See #8969.\n\t\tblock = (\n\t\t\t<>\n\t\t\t\t<div style={ { display: 'none' } }>{ blockEdit }</div>\n\t\t\t\t<Block isHtml>\n\t\t\t\t\t<BlockHtml clientId={ clientId } />\n\t\t\t\t</Block>\n\t\t\t</>\n\t\t);\n\t} else if ( blockType?.apiVersion > 1 ) {\n\t\tblock = blockEdit;\n\t} else {\n\t\tblock = <Block { ...wrapperProps }>{ blockEdit }</Block>;\n\t}\n\n\tconst value = {\n\t\tclientId,\n\t\tclassName:\n\t\t\twrapperProps?.[ 'data-align' ] && themeSupportsLayout\n\t\t\t\t? classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t`align${ wrapperProps[ 'data-align' ] }`\n\t\t\t\t )\n\t\t\t\t: className,\n\t\twrapperProps: omit( wrapperProps, [ 'data-align' ] ),\n\t\tisAligned,\n\t};\n\tconst memoizedValue = useMemo( () => value, Object.values( value ) );\n\n\treturn (\n\t\t<BlockListBlockContext.Provider value={ memoizedValue }>\n\t\t\t<BlockCrashBoundary\n\t\t\t\tfallback={\n\t\t\t\t\t<Block className=\"has-warning\">\n\t\t\t\t\t\t<BlockCrashWarning />\n\t\t\t\t\t</Block>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ block }\n\t\t\t</BlockCrashBoundary>\n\t\t</BlockListBlockContext.Provider>\n\t);\n}\n\nconst applyWithSelect = withSelect( ( select, { clientId, rootClientId } ) => {\n\tconst {\n\t\tisBlockSelected,\n\t\tgetBlockMode,\n\t\tisSelectionEnabled,\n\t\tgetTemplateLock,\n\t\t__unstableGetBlockWithoutInnerBlocks,\n\t\tcanRemoveBlock,\n\t\tcanMoveBlock,\n\t} = select( blockEditorStore );\n\tconst block = __unstableGetBlockWithoutInnerBlocks( clientId );\n\tconst isSelected = isBlockSelected( clientId );\n\tconst templateLock = getTemplateLock( rootClientId );\n\tconst canRemove = canRemoveBlock( clientId, rootClientId );\n\tconst canMove = canMoveBlock( clientId, rootClientId );\n\n\t// The fallback to `{}` is a temporary fix.\n\t// This function should never be called when a block is not present in\n\t// the state. It happens now because the order in withSelect rendering\n\t// is not correct.\n\tconst { name, attributes, isValid } = block || {};\n\n\t// Do not add new properties here, use `useSelect` instead to avoid\n\t// leaking new props to the public API (editor.BlockListBlock filter).\n\treturn {\n\t\tmode: getBlockMode( clientId ),\n\t\tisSelectionEnabled: isSelectionEnabled(),\n\t\tisLocked: !! templateLock,\n\t\tcanRemove,\n\t\tcanMove,\n\t\t// Users of the editor.BlockListBlock filter used to be able to\n\t\t// access the block prop.\n\t\t// Ideally these blocks would rely on the clientId prop only.\n\t\t// This is kept for backward compatibility reasons.\n\t\tblock,\n\t\tname,\n\t\tattributes,\n\t\tisValid,\n\t\tisSelected,\n\t};\n} );\n\nconst applyWithDispatch = withDispatch( ( dispatch, ownProps, { select } ) => {\n\tconst {\n\t\tupdateBlockAttributes,\n\t\tinsertBlocks,\n\t\tmergeBlocks,\n\t\treplaceBlocks,\n\t\ttoggleSelection,\n\t\t__unstableMarkLastChangeAsPersistent,\n\t} = dispatch( blockEditorStore );\n\n\t// Do not add new properties here, use `useDispatch` instead to avoid\n\t// leaking new props to the public API (editor.BlockListBlock filter).\n\treturn {\n\t\tsetAttributes( newAttributes ) {\n\t\t\tconst { getMultiSelectedBlockClientIds } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\tconst multiSelectedBlockClientIds = getMultiSelectedBlockClientIds();\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst clientIds = multiSelectedBlockClientIds.length\n\t\t\t\t? multiSelectedBlockClientIds\n\t\t\t\t: [ clientId ];\n\n\t\t\tupdateBlockAttributes( clientIds, newAttributes );\n\t\t},\n\t\tonInsertBlocks( blocks, index ) {\n\t\t\tconst { rootClientId } = ownProps;\n\t\t\tinsertBlocks( blocks, index, rootClientId );\n\t\t},\n\t\tonInsertBlocksAfter( blocks ) {\n\t\t\tconst { clientId, rootClientId } = ownProps;\n\t\t\tconst { getBlockIndex } = select( blockEditorStore );\n\t\t\tconst index = getBlockIndex( clientId );\n\t\t\tinsertBlocks( blocks, index + 1, rootClientId );\n\t\t},\n\t\tonMerge( forward ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { getPreviousBlockClientId, getNextBlockClientId } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\n\t\t\tif ( forward ) {\n\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst previousBlockClientId = getPreviousBlockClientId(\n\t\t\t\t\tclientId\n\t\t\t\t);\n\t\t\t\tif ( previousBlockClientId ) {\n\t\t\t\t\tmergeBlocks( previousBlockClientId, clientId );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tonReplace( blocks, indexToSelect, initialPosition ) {\n\t\t\tif (\n\t\t\t\tblocks.length &&\n\t\t\t\t! isUnmodifiedDefaultBlock( blocks[ blocks.length - 1 ] )\n\t\t\t) {\n\t\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\t}\n\t\t\treplaceBlocks(\n\t\t\t\t[ ownProps.clientId ],\n\t\t\t\tblocks,\n\t\t\t\tindexToSelect,\n\t\t\t\tinitialPosition\n\t\t\t);\n\t\t},\n\t\ttoggleSelection( selectionEnabled ) {\n\t\t\ttoggleSelection( selectionEnabled );\n\t\t},\n\t};\n} );\n\nexport default compose(\n\tpure,\n\tapplyWithSelect,\n\tapplyWithDispatch,\n\t// block is sometimes not mounted at the right time, causing it be undefined\n\t// see issue for more info\n\t// https://github.com/WordPress/gutenberg/issues/17013\n\tifCondition( ( { block } ) => !! block ),\n\twithFilters( 'editor.BlockListBlock' )\n)( BlockListBlock );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/block.js"],"names":["BlockListBlockContext","mergeWrapperProps","propsA","propsB","newProps","className","style","Block","children","isHtml","props","__unstableIsHtml","BlockListBlock","mode","isLocked","canRemove","clientId","isSelected","isSelectionEnabled","name","isValid","attributes","wrapperProps","setAttributes","onReplace","onInsertBlocksAfter","onMerge","toggleSelection","themeSupportsLayout","select","getSettings","blockEditorStore","supportsLayout","removeBlock","onRemove","blockEdit","undefined","blockType","getEditWrapperProps","isAligned","block","saveContent","display","apiVersion","value","memoizedValue","Object","values","applyWithSelect","rootClientId","isBlockSelected","getBlockMode","getTemplateLock","__unstableGetBlockWithoutInnerBlocks","canRemoveBlock","canMoveBlock","templateLock","canMove","applyWithDispatch","dispatch","ownProps","updateBlockAttributes","insertBlocks","mergeBlocks","replaceBlocks","__unstableMarkLastChangeAsPersistent","newAttributes","getMultiSelectedBlockClientIds","multiSelectedBlockClientIds","clientIds","length","onInsertBlocks","blocks","index","getBlockIndex","forward","getPreviousBlockClientId","getNextBlockClientId","nextBlockClientId","previousBlockClientId","indexToSelect","initialPosition","selectionEnabled","pure"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tcreateContext,\n\tuseMemo,\n\tuseCallback,\n\tRawHTML,\n} from '@wordpress/element';\nimport {\n\tgetBlockType,\n\tgetSaveContent,\n\tisUnmodifiedDefaultBlock,\n} from '@wordpress/blocks';\nimport { withFilters } from '@wordpress/components';\nimport {\n\twithDispatch,\n\twithSelect,\n\tuseDispatch,\n\tuseSelect,\n} from '@wordpress/data';\nimport { compose, pure, ifCondition } from '@wordpress/compose';\nimport { safeHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport BlockEdit from '../block-edit';\nimport BlockInvalidWarning from './block-invalid-warning';\nimport BlockCrashWarning from './block-crash-warning';\nimport BlockCrashBoundary from './block-crash-boundary';\nimport BlockHtml from './block-html';\nimport { useBlockProps } from './use-block-props';\nimport { store as blockEditorStore } from '../../store';\n\nexport const BlockListBlockContext = createContext();\n\n/**\n * Merges wrapper props with special handling for classNames and styles.\n *\n * @param {Object} propsA\n * @param {Object} propsB\n *\n * @return {Object} Merged props.\n */\nfunction mergeWrapperProps( propsA, propsB ) {\n\tconst newProps = {\n\t\t...propsA,\n\t\t...propsB,\n\t};\n\n\tif ( propsA && propsB && propsA.className && propsB.className ) {\n\t\tnewProps.className = classnames( propsA.className, propsB.className );\n\t}\n\tif ( propsA && propsB && propsA.style && propsB.style ) {\n\t\tnewProps.style = { ...propsA.style, ...propsB.style };\n\t}\n\n\treturn newProps;\n}\n\nfunction Block( { children, isHtml, ...props } ) {\n\treturn (\n\t\t<div { ...useBlockProps( props, { __unstableIsHtml: isHtml } ) }>\n\t\t\t{ children }\n\t\t</div>\n\t);\n}\n\nfunction BlockListBlock( {\n\tmode,\n\tisLocked,\n\tcanRemove,\n\tclientId,\n\tisSelected,\n\tisSelectionEnabled,\n\tclassName,\n\tname,\n\tisValid,\n\tattributes,\n\twrapperProps,\n\tsetAttributes,\n\tonReplace,\n\tonInsertBlocksAfter,\n\tonMerge,\n\ttoggleSelection,\n} ) {\n\tconst themeSupportsLayout = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings().supportsLayout;\n\t}, [] );\n\tconst { removeBlock } = useDispatch( blockEditorStore );\n\tconst onRemove = useCallback( () => removeBlock( clientId ), [ clientId ] );\n\n\t// We wrap the BlockEdit component in a div that hides it when editing in\n\t// HTML mode. This allows us to render all of the ancillary pieces\n\t// (InspectorControls, etc.) which are inside `BlockEdit` but not\n\t// `BlockHTML`, even in HTML mode.\n\tlet blockEdit = (\n\t\t<BlockEdit\n\t\t\tname={ name }\n\t\t\tisSelected={ isSelected }\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tinsertBlocksAfter={ isLocked ? undefined : onInsertBlocksAfter }\n\t\t\tonReplace={ canRemove ? onReplace : undefined }\n\t\t\tonRemove={ canRemove ? onRemove : undefined }\n\t\t\tmergeBlocks={ canRemove ? onMerge : undefined }\n\t\t\tclientId={ clientId }\n\t\t\tisSelectionEnabled={ isSelectionEnabled }\n\t\t\ttoggleSelection={ toggleSelection }\n\t\t/>\n\t);\n\n\tconst blockType = getBlockType( name );\n\n\t// Determine whether the block has props to apply to the wrapper.\n\tif ( blockType?.getEditWrapperProps ) {\n\t\twrapperProps = mergeWrapperProps(\n\t\t\twrapperProps,\n\t\t\tblockType.getEditWrapperProps( attributes )\n\t\t);\n\t}\n\n\tconst isAligned =\n\t\twrapperProps &&\n\t\t!! wrapperProps[ 'data-align' ] &&\n\t\t! themeSupportsLayout;\n\n\t// For aligned blocks, provide a wrapper element so the block can be\n\t// positioned relative to the block column.\n\t// This is only kept for classic themes that don't support layout\n\t// Historically we used to rely on extra divs and data-align to\n\t// provide the alignments styles in the editor.\n\t// Due to the differences between frontend and backend, we migrated\n\t// to the layout feature, and we're now aligning the markup of frontend\n\t// and backend.\n\tif ( isAligned ) {\n\t\tblockEdit = (\n\t\t\t<div\n\t\t\t\tclassName=\"wp-block\"\n\t\t\t\tdata-align={ wrapperProps[ 'data-align' ] }\n\t\t\t>\n\t\t\t\t{ blockEdit }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet block;\n\n\tif ( ! isValid ) {\n\t\tconst saveContent = getSaveContent( blockType, attributes );\n\n\t\tblock = (\n\t\t\t<Block className=\"has-warning\">\n\t\t\t\t<BlockInvalidWarning clientId={ clientId } />\n\t\t\t\t<RawHTML>{ safeHTML( saveContent ) }</RawHTML>\n\t\t\t</Block>\n\t\t);\n\t} else if ( mode === 'html' ) {\n\t\t// Render blockEdit so the inspector controls don't disappear.\n\t\t// See #8969.\n\t\tblock = (\n\t\t\t<>\n\t\t\t\t<div style={ { display: 'none' } }>{ blockEdit }</div>\n\t\t\t\t<Block isHtml>\n\t\t\t\t\t<BlockHtml clientId={ clientId } />\n\t\t\t\t</Block>\n\t\t\t</>\n\t\t);\n\t} else if ( blockType?.apiVersion > 1 ) {\n\t\tblock = blockEdit;\n\t} else {\n\t\tblock = <Block { ...wrapperProps }>{ blockEdit }</Block>;\n\t}\n\n\tconst value = {\n\t\tclientId,\n\t\tclassName:\n\t\t\twrapperProps?.[ 'data-align' ] && themeSupportsLayout\n\t\t\t\t? classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t`align${ wrapperProps[ 'data-align' ] }`\n\t\t\t\t )\n\t\t\t\t: className,\n\t\twrapperProps: omit( wrapperProps, [ 'data-align' ] ),\n\t\tisAligned,\n\t};\n\tconst memoizedValue = useMemo( () => value, Object.values( value ) );\n\n\treturn (\n\t\t<BlockListBlockContext.Provider value={ memoizedValue }>\n\t\t\t<BlockCrashBoundary\n\t\t\t\tfallback={\n\t\t\t\t\t<Block className=\"has-warning\">\n\t\t\t\t\t\t<BlockCrashWarning />\n\t\t\t\t\t</Block>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ block }\n\t\t\t</BlockCrashBoundary>\n\t\t</BlockListBlockContext.Provider>\n\t);\n}\n\nconst applyWithSelect = withSelect( ( select, { clientId, rootClientId } ) => {\n\tconst {\n\t\tisBlockSelected,\n\t\tgetBlockMode,\n\t\tisSelectionEnabled,\n\t\tgetTemplateLock,\n\t\t__unstableGetBlockWithoutInnerBlocks,\n\t\tcanRemoveBlock,\n\t\tcanMoveBlock,\n\t} = select( blockEditorStore );\n\tconst block = __unstableGetBlockWithoutInnerBlocks( clientId );\n\tconst isSelected = isBlockSelected( clientId );\n\tconst templateLock = getTemplateLock( rootClientId );\n\tconst canRemove = canRemoveBlock( clientId, rootClientId );\n\tconst canMove = canMoveBlock( clientId, rootClientId );\n\n\t// The fallback to `{}` is a temporary fix.\n\t// This function should never be called when a block is not present in\n\t// the state. It happens now because the order in withSelect rendering\n\t// is not correct.\n\tconst { name, attributes, isValid } = block || {};\n\n\t// Do not add new properties here, use `useSelect` instead to avoid\n\t// leaking new props to the public API (editor.BlockListBlock filter).\n\treturn {\n\t\tmode: getBlockMode( clientId ),\n\t\tisSelectionEnabled: isSelectionEnabled(),\n\t\tisLocked: !! templateLock,\n\t\tcanRemove,\n\t\tcanMove,\n\t\t// Users of the editor.BlockListBlock filter used to be able to\n\t\t// access the block prop.\n\t\t// Ideally these blocks would rely on the clientId prop only.\n\t\t// This is kept for backward compatibility reasons.\n\t\tblock,\n\t\tname,\n\t\tattributes,\n\t\tisValid,\n\t\tisSelected,\n\t};\n} );\n\nconst applyWithDispatch = withDispatch( ( dispatch, ownProps, { select } ) => {\n\tconst {\n\t\tupdateBlockAttributes,\n\t\tinsertBlocks,\n\t\tmergeBlocks,\n\t\treplaceBlocks,\n\t\ttoggleSelection,\n\t\t__unstableMarkLastChangeAsPersistent,\n\t} = dispatch( blockEditorStore );\n\n\t// Do not add new properties here, use `useDispatch` instead to avoid\n\t// leaking new props to the public API (editor.BlockListBlock filter).\n\treturn {\n\t\tsetAttributes( newAttributes ) {\n\t\t\tconst { getMultiSelectedBlockClientIds } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\tconst multiSelectedBlockClientIds = getMultiSelectedBlockClientIds();\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst clientIds = multiSelectedBlockClientIds.length\n\t\t\t\t? multiSelectedBlockClientIds\n\t\t\t\t: [ clientId ];\n\n\t\t\tupdateBlockAttributes( clientIds, newAttributes );\n\t\t},\n\t\tonInsertBlocks( blocks, index ) {\n\t\t\tconst { rootClientId } = ownProps;\n\t\t\tinsertBlocks( blocks, index, rootClientId );\n\t\t},\n\t\tonInsertBlocksAfter( blocks ) {\n\t\t\tconst { clientId, rootClientId } = ownProps;\n\t\t\tconst { getBlockIndex } = select( blockEditorStore );\n\t\t\tconst index = getBlockIndex( clientId );\n\t\t\tinsertBlocks( blocks, index + 1, rootClientId );\n\t\t},\n\t\tonMerge( forward ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { getPreviousBlockClientId, getNextBlockClientId } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\n\t\t\tif ( forward ) {\n\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst previousBlockClientId = getPreviousBlockClientId(\n\t\t\t\t\tclientId\n\t\t\t\t);\n\t\t\t\tif ( previousBlockClientId ) {\n\t\t\t\t\tmergeBlocks( previousBlockClientId, clientId );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tonReplace( blocks, indexToSelect, initialPosition ) {\n\t\t\tif (\n\t\t\t\tblocks.length &&\n\t\t\t\t! isUnmodifiedDefaultBlock( blocks[ blocks.length - 1 ] )\n\t\t\t) {\n\t\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\t}\n\t\t\treplaceBlocks(\n\t\t\t\t[ ownProps.clientId ],\n\t\t\t\tblocks,\n\t\t\t\tindexToSelect,\n\t\t\t\tinitialPosition\n\t\t\t);\n\t\t},\n\t\ttoggleSelection( selectionEnabled ) {\n\t\t\ttoggleSelection( selectionEnabled );\n\t\t},\n\t};\n} );\n\nexport default compose(\n\tpure,\n\tapplyWithSelect,\n\tapplyWithDispatch,\n\t// Block is sometimes not mounted at the right time, causing it be undefined\n\t// see issue for more info\n\t// https://github.com/WordPress/gutenberg/issues/17013\n\tifCondition( ( { block } ) => !! block ),\n\twithFilters( 'editor.BlockListBlock' )\n)( BlockListBlock );\n"]}
@@ -85,9 +85,9 @@ function BlockForType(_ref) {
85
85
  onFocus: onBlockFocus,
86
86
  onReplace: onReplace,
87
87
  insertBlocksAfter: insertBlocksAfter,
88
- mergeBlocks: mergeBlocks // Block level styles
88
+ mergeBlocks: mergeBlocks // Block level styles.
89
89
  ,
90
- wrapperProps: wrapperProps // inherited styles merged with block level styles
90
+ wrapperProps: wrapperProps // Inherited styles merged with block level styles.
91
91
  ,
92
92
  style: mergedStyle,
93
93
  clientId: clientId,
@@ -128,7 +128,7 @@ class BlockListBlock extends _element.Component {
128
128
  this.props.onInsertBlocks(blocks, this.props.order + 1);
129
129
 
130
130
  if (blocks[0]) {
131
- // focus on the first block inserted
131
+ // Focus on the first block inserted.
132
132
  this.props.onSelect(blocks[0].clientId);
133
133
  }
134
134
  }
@@ -254,7 +254,7 @@ class BlockListBlock extends _element.Component {
254
254
  })))));
255
255
  }
256
256
 
257
- } // Helper function to memoize the wrapperProps since getEditWrapperProps always returns a new reference
257
+ } // Helper function to memoize the wrapperProps since getEditWrapperProps always returns a new reference.
258
258
 
259
259
 
260
260
  const wrapperPropsCache = new WeakMap();
@@ -310,7 +310,7 @@ var _default = (0, _compose.compose)([(0, _data.withSelect)((select, _ref3) => {
310
310
  const commonAncestor = getLowestCommonAncestorWithSelectedBlock(clientId);
311
311
  const commonAncestorIndex = parents.indexOf(commonAncestor) - 1;
312
312
  const firstToSelectId = commonAncestor ? parents[commonAncestorIndex] : parents[parents.length - 1];
313
- const isParentSelected = // set false as a default value to prevent re-render when it's changed from null to false
313
+ const isParentSelected = // Set false as a default value to prevent re-render when it's changed from null to false.
314
314
  (selectedBlockClientId || false) && selectedBlockClientId === parentId;
315
315
  const selectedParents = selectedBlockClientId ? getBlockParents(selectedBlockClientId) : [];
316
316
  const isDescendantOfParentSelected = selectedParents.includes(parentId);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/block.native.js"],"names":["emptyArray","BlockForType","attributes","clientId","contentStyle","getBlockWidth","insertBlocksAfter","isSelected","mergeBlocks","name","onBlockFocus","onChange","onDeleteBlock","onReplace","parentWidth","wrapperProps","blockWidth","baseGlobalStyles","defaultColors","fontSizes","globalStyle","mergedStyle","style","JSON","stringify","GlobalStylesContext","BLOCK_STYLE_ATTRIBUTES","BlockListBlock","Component","constructor","arguments","bind","onFocus","state","props","marginHorizontal","anchorNodeRef","firstToSelectId","onSelect","blocks","onInsertBlocks","order","nativeEvent","layout","layoutWidth","Math","floor","width","setState","getBlockForType","renderBlockTitle","styles","blockTitle","render","blockType","icon","isValid","title","isDimmed","isTouchable","isStackedHorizontally","isParentSelected","getStylesFromColorScheme","marginVertical","isInnerBlockSelected","align","accessibilityLabel","isFullWidth","isContainerRelated","alignmentHelpers","accessible","screenWidth","Dimensions","get","isScreenWidthEqual","isScreenWidthWider","isFullWidthToolbar","flex","dimmed","solidBorder","borderFullWidth","containerBorderFullWidth","solidBorderColor","solidBorderColorDark","dashedBorder","dashedBorderColor","dashedBorderColorDark","neutralToolbar","current","wrapperPropsCache","WeakMap","emptyObj","getWrapperProps","value","getWrapperPropsFunction","cachedValue","set","select","getBlockIndex","getSettings","isBlockSelected","getBlock","getSelectedBlockClientId","getLowestCommonAncestorWithSelectedBlock","getBlockParents","hasSelectedInnerBlock","blockEditorStore","block","parents","parentId","selectedBlockClientId","commonAncestor","commonAncestorIndex","indexOf","length","selectedParents","isDescendantOfParentSelected","includes","__experimentalGlobalStylesBaseStyles","getEditWrapperProps","dispatch","ownProps","insertBlocks","replaceBlocks","selectBlock","updateBlockAttributes","forward","getPreviousBlockClientId","getNextBlockClientId","nextBlockClientId","previousBlockClientId","index","rootClientId","initialPosition","indexToSelect","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text, TouchableWithoutFeedback, Dimensions } from 'react-native';\nimport { pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Component, createRef, useMemo } from '@wordpress/element';\nimport {\n\tGlobalStylesContext,\n\tgetMergedGlobalStyles,\n\tuseMobileGlobalStylesColors,\n\talignmentHelpers,\n\tuseGlobalStyles,\n} from '@wordpress/components';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport {\n\tgetBlockType,\n\t__experimentalGetAccessibleBlockLabel as getAccessibleBlockLabel,\n} from '@wordpress/blocks';\nimport { useSetting } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './block.scss';\nimport BlockEdit from '../block-edit';\nimport BlockInvalidWarning from './block-invalid-warning';\nimport BlockMobileToolbar from '../block-mobile-toolbar';\nimport { store as blockEditorStore } from '../../store';\n\nconst emptyArray = [];\nfunction BlockForType( {\n\tattributes,\n\tclientId,\n\tcontentStyle,\n\tgetBlockWidth,\n\tinsertBlocksAfter,\n\tisSelected,\n\tmergeBlocks,\n\tname,\n\tonBlockFocus,\n\tonChange,\n\tonDeleteBlock,\n\tonReplace,\n\tparentWidth,\n\twrapperProps,\n\tblockWidth,\n\tbaseGlobalStyles,\n} ) {\n\tconst defaultColors = useMobileGlobalStylesColors();\n\tconst fontSizes = useSetting( 'typography.fontSizes' ) || emptyArray;\n\tconst globalStyle = useGlobalStyles();\n\tconst mergedStyle = useMemo( () => {\n\t\treturn getMergedGlobalStyles(\n\t\t\tbaseGlobalStyles,\n\t\t\tglobalStyle,\n\t\t\twrapperProps.style,\n\t\t\tattributes,\n\t\t\tdefaultColors,\n\t\t\tname,\n\t\t\tfontSizes\n\t\t);\n\t}, [\n\t\tdefaultColors,\n\t\tglobalStyle,\n\t\t// I couldn't simply use attributes and wrapperProps.styles as a dependency because they are almost always a new reference.\n\t\t// Thanks to the JSON.stringify we check if the value is the same instead of reference.\n\t\tJSON.stringify( wrapperProps.style ),\n\t\tJSON.stringify(\n\t\t\tpick( attributes, GlobalStylesContext.BLOCK_STYLE_ATTRIBUTES )\n\t\t),\n\t] );\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ mergedStyle }>\n\t\t\t<BlockEdit\n\t\t\t\tname={ name }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ onChange }\n\t\t\t\tonFocus={ onBlockFocus }\n\t\t\t\tonReplace={ onReplace }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tmergeBlocks={ mergeBlocks }\n\t\t\t\t// Block level styles\n\t\t\t\twrapperProps={ wrapperProps }\n\t\t\t\t// inherited styles merged with block level styles\n\t\t\t\tstyle={ mergedStyle }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t/>\n\t\t\t<View onLayout={ getBlockWidth } />\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n\nclass BlockListBlock extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.insertBlocksAfter = this.insertBlocksAfter.bind( this );\n\t\tthis.onFocus = this.onFocus.bind( this );\n\t\tthis.getBlockWidth = this.getBlockWidth.bind( this );\n\n\t\tthis.state = {\n\t\t\tblockWidth: this.props.blockWidth - 2 * this.props.marginHorizontal,\n\t\t};\n\n\t\tthis.anchorNodeRef = createRef();\n\t}\n\n\tonFocus() {\n\t\tconst { firstToSelectId, isSelected, onSelect } = this.props;\n\t\tif ( ! isSelected ) {\n\t\t\tonSelect( firstToSelectId );\n\t\t}\n\t}\n\n\tinsertBlocksAfter( blocks ) {\n\t\tthis.props.onInsertBlocks( blocks, this.props.order + 1 );\n\n\t\tif ( blocks[ 0 ] ) {\n\t\t\t// focus on the first block inserted\n\t\t\tthis.props.onSelect( blocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tgetBlockWidth( { nativeEvent } ) {\n\t\tconst { layout } = nativeEvent;\n\t\tconst { blockWidth } = this.state;\n\t\tconst layoutWidth = Math.floor( layout.width );\n\n\t\tif ( ! blockWidth || ! layoutWidth ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( blockWidth !== layoutWidth ) {\n\t\t\tthis.setState( { blockWidth: layoutWidth } );\n\t\t}\n\t}\n\n\tgetBlockForType() {\n\t\tconst { blockWidth } = this.state;\n\t\treturn (\n\t\t\t<BlockForType\n\t\t\t\t{ ...this.props }\n\t\t\t\tonBlockFocus={ this.onFocus }\n\t\t\t\tinsertBlocksAfter={ this.insertBlocksAfter }\n\t\t\t\tgetBlockWidth={ this.getBlockWidth }\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderBlockTitle() {\n\t\treturn (\n\t\t\t<View style={ styles.blockTitle }>\n\t\t\t\t<Text>BlockType: { this.props.name }</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tattributes,\n\t\t\tblockType,\n\t\t\tclientId,\n\t\t\ticon,\n\t\t\tisSelected,\n\t\t\tisValid,\n\t\t\torder,\n\t\t\ttitle,\n\t\t\tisDimmed,\n\t\t\tisTouchable,\n\t\t\tonDeleteBlock,\n\t\t\tisStackedHorizontally,\n\t\t\tisParentSelected,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tmarginVertical,\n\t\t\tmarginHorizontal,\n\t\t\tisInnerBlockSelected,\n\t\t\tname,\n\t\t} = this.props;\n\n\t\tif ( ! attributes || ! blockType ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { blockWidth } = this.state;\n\t\tconst { align } = attributes;\n\t\tconst accessibilityLabel = getAccessibleBlockLabel(\n\t\t\tblockType,\n\t\t\tattributes,\n\t\t\torder + 1\n\t\t);\n\t\tconst { isFullWidth, isContainerRelated } = alignmentHelpers;\n\t\tconst accessible = ! ( isSelected || isInnerBlockSelected );\n\t\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\t\tconst isScreenWidthEqual = blockWidth === screenWidth;\n\t\tconst isScreenWidthWider = blockWidth < screenWidth;\n\t\tconst isFullWidthToolbar = isFullWidth( align ) || isScreenWidthEqual;\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tonPress={ this.onFocus }\n\t\t\t\taccessible={ accessible }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ { flex: 1 } }\n\t\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tpointerEvents={ isTouchable ? 'auto' : 'box-only' }\n\t\t\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t{ marginVertical, marginHorizontal, flex: 1 },\n\t\t\t\t\t\t\tisDimmed && styles.dimmed,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isSelected && (\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tpointerEvents=\"box-none\"\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\tstyles.solidBorder,\n\t\t\t\t\t\t\t\t\tisFullWidth( align ) &&\n\t\t\t\t\t\t\t\t\t\tisScreenWidthWider &&\n\t\t\t\t\t\t\t\t\t\tstyles.borderFullWidth,\n\t\t\t\t\t\t\t\t\tisFullWidth( align ) &&\n\t\t\t\t\t\t\t\t\t\tisContainerRelated( name ) &&\n\t\t\t\t\t\t\t\t\t\tisScreenWidthWider &&\n\t\t\t\t\t\t\t\t\t\tstyles.containerBorderFullWidth,\n\t\t\t\t\t\t\t\t\tgetStylesFromColorScheme(\n\t\t\t\t\t\t\t\t\t\tstyles.solidBorderColor,\n\t\t\t\t\t\t\t\t\t\tstyles.solidBorderColorDark\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/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isParentSelected && (\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\tstyles.dashedBorder,\n\t\t\t\t\t\t\t\t\tgetStylesFromColorScheme(\n\t\t\t\t\t\t\t\t\t\tstyles.dashedBorderColor,\n\t\t\t\t\t\t\t\t\t\tstyles.dashedBorderColorDark\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/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isValid ? (\n\t\t\t\t\t\t\tthis.getBlockForType()\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<BlockInvalidWarning\n\t\t\t\t\t\t\t\tblockTitle={ title }\n\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ styles.neutralToolbar }\n\t\t\t\t\t\t\tref={ this.anchorNodeRef }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isSelected && (\n\t\t\t\t\t\t\t\t<BlockMobileToolbar\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\tonDelete={ onDeleteBlock }\n\t\t\t\t\t\t\t\t\tisStackedHorizontally={\n\t\t\t\t\t\t\t\t\t\tisStackedHorizontally\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t\t\t\t\t\tanchorNodeRef={ this.anchorNodeRef.current }\n\t\t\t\t\t\t\t\t\tisFullWidth={ isFullWidthToolbar }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\n// Helper function to memoize the wrapperProps since getEditWrapperProps always returns a new reference\nconst wrapperPropsCache = new WeakMap();\nconst emptyObj = {};\nfunction getWrapperProps( value, getWrapperPropsFunction ) {\n\tif ( ! getWrapperPropsFunction ) {\n\t\treturn emptyObj;\n\t}\n\tconst cachedValue = wrapperPropsCache.get( value );\n\tif ( ! cachedValue ) {\n\t\tconst wrapperProps = getWrapperPropsFunction( value );\n\t\twrapperPropsCache.set( value, wrapperProps );\n\t\treturn wrapperProps;\n\t}\n\treturn cachedValue;\n}\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst {\n\t\t\tgetBlockIndex,\n\t\t\tgetSettings,\n\t\t\tisBlockSelected,\n\t\t\tgetBlock,\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetLowestCommonAncestorWithSelectedBlock,\n\t\t\tgetBlockParents,\n\t\t\thasSelectedInnerBlock,\n\t\t} = select( blockEditorStore );\n\n\t\tconst order = getBlockIndex( clientId );\n\t\tconst isSelected = isBlockSelected( clientId );\n\t\tconst isInnerBlockSelected = hasSelectedInnerBlock( clientId );\n\t\tconst block = getBlock( clientId );\n\t\tconst { name, attributes, isValid } = block || {};\n\n\t\tconst blockType = getBlockType( name || 'core/missing' );\n\t\tconst title = blockType?.title;\n\t\tconst icon = blockType?.icon;\n\n\t\tconst parents = getBlockParents( clientId, true );\n\t\tconst parentId = parents[ 0 ] || '';\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst commonAncestor = getLowestCommonAncestorWithSelectedBlock(\n\t\t\tclientId\n\t\t);\n\t\tconst commonAncestorIndex = parents.indexOf( commonAncestor ) - 1;\n\t\tconst firstToSelectId = commonAncestor\n\t\t\t? parents[ commonAncestorIndex ]\n\t\t\t: parents[ parents.length - 1 ];\n\n\t\tconst isParentSelected =\n\t\t\t// set false as a default value to prevent re-render when it's changed from null to false\n\t\t\t( selectedBlockClientId || false ) &&\n\t\t\tselectedBlockClientId === parentId;\n\n\t\tconst selectedParents = selectedBlockClientId\n\t\t\t? getBlockParents( selectedBlockClientId )\n\t\t\t: [];\n\t\tconst isDescendantOfParentSelected = selectedParents.includes(\n\t\t\tparentId\n\t\t);\n\t\tconst isTouchable =\n\t\t\tisSelected ||\n\t\t\tisDescendantOfParentSelected ||\n\t\t\tisParentSelected ||\n\t\t\tparentId === '';\n\t\tconst baseGlobalStyles = getSettings()\n\t\t\t?.__experimentalGlobalStylesBaseStyles;\n\n\t\treturn {\n\t\t\ticon,\n\t\t\tname: name || 'core/missing',\n\t\t\torder,\n\t\t\ttitle,\n\t\t\tattributes,\n\t\t\tblockType,\n\t\t\tisSelected,\n\t\t\tisInnerBlockSelected,\n\t\t\tisValid,\n\t\t\tisParentSelected,\n\t\t\tfirstToSelectId,\n\t\t\tisTouchable,\n\t\t\tbaseGlobalStyles,\n\t\t\twrapperProps: getWrapperProps(\n\t\t\t\tattributes,\n\t\t\t\tblockType.getEditWrapperProps\n\t\t\t),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps, { select } ) => {\n\t\tconst {\n\t\t\tinsertBlocks,\n\t\t\tmergeBlocks,\n\t\t\treplaceBlocks,\n\t\t\tselectBlock,\n\t\t\tupdateBlockAttributes,\n\t\t} = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\tmergeBlocks( forward ) {\n\t\t\t\tconst { clientId } = ownProps;\n\t\t\t\tconst {\n\t\t\t\t\tgetPreviousBlockClientId,\n\t\t\t\t\tgetNextBlockClientId,\n\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\tif ( forward ) {\n\t\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\t\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tconst previousBlockClientId = getPreviousBlockClientId(\n\t\t\t\t\t\tclientId\n\t\t\t\t\t);\n\t\t\t\t\tif ( previousBlockClientId ) {\n\t\t\t\t\t\tmergeBlocks( previousBlockClientId, clientId );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tonInsertBlocks( blocks, index ) {\n\t\t\t\tinsertBlocks( blocks, index, ownProps.rootClientId );\n\t\t\t},\n\t\t\tonSelect( clientId = ownProps.clientId, initialPosition ) {\n\t\t\t\tselectBlock( clientId, initialPosition );\n\t\t\t},\n\t\t\tonChange: ( attributes ) => {\n\t\t\t\tupdateBlockAttributes( ownProps.clientId, attributes );\n\t\t\t},\n\t\t\tonReplace( blocks, indexToSelect ) {\n\t\t\t\treplaceBlocks( [ ownProps.clientId ], blocks, indexToSelect );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( BlockListBlock );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/block.native.js"],"names":["emptyArray","BlockForType","attributes","clientId","contentStyle","getBlockWidth","insertBlocksAfter","isSelected","mergeBlocks","name","onBlockFocus","onChange","onDeleteBlock","onReplace","parentWidth","wrapperProps","blockWidth","baseGlobalStyles","defaultColors","fontSizes","globalStyle","mergedStyle","style","JSON","stringify","GlobalStylesContext","BLOCK_STYLE_ATTRIBUTES","BlockListBlock","Component","constructor","arguments","bind","onFocus","state","props","marginHorizontal","anchorNodeRef","firstToSelectId","onSelect","blocks","onInsertBlocks","order","nativeEvent","layout","layoutWidth","Math","floor","width","setState","getBlockForType","renderBlockTitle","styles","blockTitle","render","blockType","icon","isValid","title","isDimmed","isTouchable","isStackedHorizontally","isParentSelected","getStylesFromColorScheme","marginVertical","isInnerBlockSelected","align","accessibilityLabel","isFullWidth","isContainerRelated","alignmentHelpers","accessible","screenWidth","Dimensions","get","isScreenWidthEqual","isScreenWidthWider","isFullWidthToolbar","flex","dimmed","solidBorder","borderFullWidth","containerBorderFullWidth","solidBorderColor","solidBorderColorDark","dashedBorder","dashedBorderColor","dashedBorderColorDark","neutralToolbar","current","wrapperPropsCache","WeakMap","emptyObj","getWrapperProps","value","getWrapperPropsFunction","cachedValue","set","select","getBlockIndex","getSettings","isBlockSelected","getBlock","getSelectedBlockClientId","getLowestCommonAncestorWithSelectedBlock","getBlockParents","hasSelectedInnerBlock","blockEditorStore","block","parents","parentId","selectedBlockClientId","commonAncestor","commonAncestorIndex","indexOf","length","selectedParents","isDescendantOfParentSelected","includes","__experimentalGlobalStylesBaseStyles","getEditWrapperProps","dispatch","ownProps","insertBlocks","replaceBlocks","selectBlock","updateBlockAttributes","forward","getPreviousBlockClientId","getNextBlockClientId","nextBlockClientId","previousBlockClientId","index","rootClientId","initialPosition","indexToSelect","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text, TouchableWithoutFeedback, Dimensions } from 'react-native';\nimport { pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Component, createRef, useMemo } from '@wordpress/element';\nimport {\n\tGlobalStylesContext,\n\tgetMergedGlobalStyles,\n\tuseMobileGlobalStylesColors,\n\talignmentHelpers,\n\tuseGlobalStyles,\n} from '@wordpress/components';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport {\n\tgetBlockType,\n\t__experimentalGetAccessibleBlockLabel as getAccessibleBlockLabel,\n} from '@wordpress/blocks';\nimport { useSetting } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './block.scss';\nimport BlockEdit from '../block-edit';\nimport BlockInvalidWarning from './block-invalid-warning';\nimport BlockMobileToolbar from '../block-mobile-toolbar';\nimport { store as blockEditorStore } from '../../store';\n\nconst emptyArray = [];\nfunction BlockForType( {\n\tattributes,\n\tclientId,\n\tcontentStyle,\n\tgetBlockWidth,\n\tinsertBlocksAfter,\n\tisSelected,\n\tmergeBlocks,\n\tname,\n\tonBlockFocus,\n\tonChange,\n\tonDeleteBlock,\n\tonReplace,\n\tparentWidth,\n\twrapperProps,\n\tblockWidth,\n\tbaseGlobalStyles,\n} ) {\n\tconst defaultColors = useMobileGlobalStylesColors();\n\tconst fontSizes = useSetting( 'typography.fontSizes' ) || emptyArray;\n\tconst globalStyle = useGlobalStyles();\n\tconst mergedStyle = useMemo( () => {\n\t\treturn getMergedGlobalStyles(\n\t\t\tbaseGlobalStyles,\n\t\t\tglobalStyle,\n\t\t\twrapperProps.style,\n\t\t\tattributes,\n\t\t\tdefaultColors,\n\t\t\tname,\n\t\t\tfontSizes\n\t\t);\n\t}, [\n\t\tdefaultColors,\n\t\tglobalStyle,\n\t\t// I couldn't simply use attributes and wrapperProps.styles as a dependency because they are almost always a new reference.\n\t\t// Thanks to the JSON.stringify we check if the value is the same instead of reference.\n\t\tJSON.stringify( wrapperProps.style ),\n\t\tJSON.stringify(\n\t\t\tpick( attributes, GlobalStylesContext.BLOCK_STYLE_ATTRIBUTES )\n\t\t),\n\t] );\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ mergedStyle }>\n\t\t\t<BlockEdit\n\t\t\t\tname={ name }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ onChange }\n\t\t\t\tonFocus={ onBlockFocus }\n\t\t\t\tonReplace={ onReplace }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tmergeBlocks={ mergeBlocks }\n\t\t\t\t// Block level styles.\n\t\t\t\twrapperProps={ wrapperProps }\n\t\t\t\t// Inherited styles merged with block level styles.\n\t\t\t\tstyle={ mergedStyle }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t/>\n\t\t\t<View onLayout={ getBlockWidth } />\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n\nclass BlockListBlock extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.insertBlocksAfter = this.insertBlocksAfter.bind( this );\n\t\tthis.onFocus = this.onFocus.bind( this );\n\t\tthis.getBlockWidth = this.getBlockWidth.bind( this );\n\n\t\tthis.state = {\n\t\t\tblockWidth: this.props.blockWidth - 2 * this.props.marginHorizontal,\n\t\t};\n\n\t\tthis.anchorNodeRef = createRef();\n\t}\n\n\tonFocus() {\n\t\tconst { firstToSelectId, isSelected, onSelect } = this.props;\n\t\tif ( ! isSelected ) {\n\t\t\tonSelect( firstToSelectId );\n\t\t}\n\t}\n\n\tinsertBlocksAfter( blocks ) {\n\t\tthis.props.onInsertBlocks( blocks, this.props.order + 1 );\n\n\t\tif ( blocks[ 0 ] ) {\n\t\t\t// Focus on the first block inserted.\n\t\t\tthis.props.onSelect( blocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tgetBlockWidth( { nativeEvent } ) {\n\t\tconst { layout } = nativeEvent;\n\t\tconst { blockWidth } = this.state;\n\t\tconst layoutWidth = Math.floor( layout.width );\n\n\t\tif ( ! blockWidth || ! layoutWidth ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( blockWidth !== layoutWidth ) {\n\t\t\tthis.setState( { blockWidth: layoutWidth } );\n\t\t}\n\t}\n\n\tgetBlockForType() {\n\t\tconst { blockWidth } = this.state;\n\t\treturn (\n\t\t\t<BlockForType\n\t\t\t\t{ ...this.props }\n\t\t\t\tonBlockFocus={ this.onFocus }\n\t\t\t\tinsertBlocksAfter={ this.insertBlocksAfter }\n\t\t\t\tgetBlockWidth={ this.getBlockWidth }\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderBlockTitle() {\n\t\treturn (\n\t\t\t<View style={ styles.blockTitle }>\n\t\t\t\t<Text>BlockType: { this.props.name }</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tattributes,\n\t\t\tblockType,\n\t\t\tclientId,\n\t\t\ticon,\n\t\t\tisSelected,\n\t\t\tisValid,\n\t\t\torder,\n\t\t\ttitle,\n\t\t\tisDimmed,\n\t\t\tisTouchable,\n\t\t\tonDeleteBlock,\n\t\t\tisStackedHorizontally,\n\t\t\tisParentSelected,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tmarginVertical,\n\t\t\tmarginHorizontal,\n\t\t\tisInnerBlockSelected,\n\t\t\tname,\n\t\t} = this.props;\n\n\t\tif ( ! attributes || ! blockType ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { blockWidth } = this.state;\n\t\tconst { align } = attributes;\n\t\tconst accessibilityLabel = getAccessibleBlockLabel(\n\t\t\tblockType,\n\t\t\tattributes,\n\t\t\torder + 1\n\t\t);\n\t\tconst { isFullWidth, isContainerRelated } = alignmentHelpers;\n\t\tconst accessible = ! ( isSelected || isInnerBlockSelected );\n\t\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\t\tconst isScreenWidthEqual = blockWidth === screenWidth;\n\t\tconst isScreenWidthWider = blockWidth < screenWidth;\n\t\tconst isFullWidthToolbar = isFullWidth( align ) || isScreenWidthEqual;\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tonPress={ this.onFocus }\n\t\t\t\taccessible={ accessible }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ { flex: 1 } }\n\t\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tpointerEvents={ isTouchable ? 'auto' : 'box-only' }\n\t\t\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t{ marginVertical, marginHorizontal, flex: 1 },\n\t\t\t\t\t\t\tisDimmed && styles.dimmed,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isSelected && (\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tpointerEvents=\"box-none\"\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\tstyles.solidBorder,\n\t\t\t\t\t\t\t\t\tisFullWidth( align ) &&\n\t\t\t\t\t\t\t\t\t\tisScreenWidthWider &&\n\t\t\t\t\t\t\t\t\t\tstyles.borderFullWidth,\n\t\t\t\t\t\t\t\t\tisFullWidth( align ) &&\n\t\t\t\t\t\t\t\t\t\tisContainerRelated( name ) &&\n\t\t\t\t\t\t\t\t\t\tisScreenWidthWider &&\n\t\t\t\t\t\t\t\t\t\tstyles.containerBorderFullWidth,\n\t\t\t\t\t\t\t\t\tgetStylesFromColorScheme(\n\t\t\t\t\t\t\t\t\t\tstyles.solidBorderColor,\n\t\t\t\t\t\t\t\t\t\tstyles.solidBorderColorDark\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/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isParentSelected && (\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\tstyles.dashedBorder,\n\t\t\t\t\t\t\t\t\tgetStylesFromColorScheme(\n\t\t\t\t\t\t\t\t\t\tstyles.dashedBorderColor,\n\t\t\t\t\t\t\t\t\t\tstyles.dashedBorderColorDark\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/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isValid ? (\n\t\t\t\t\t\t\tthis.getBlockForType()\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<BlockInvalidWarning\n\t\t\t\t\t\t\t\tblockTitle={ title }\n\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ styles.neutralToolbar }\n\t\t\t\t\t\t\tref={ this.anchorNodeRef }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isSelected && (\n\t\t\t\t\t\t\t\t<BlockMobileToolbar\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\tonDelete={ onDeleteBlock }\n\t\t\t\t\t\t\t\t\tisStackedHorizontally={\n\t\t\t\t\t\t\t\t\t\tisStackedHorizontally\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t\t\t\t\t\tanchorNodeRef={ this.anchorNodeRef.current }\n\t\t\t\t\t\t\t\t\tisFullWidth={ isFullWidthToolbar }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\n// Helper function to memoize the wrapperProps since getEditWrapperProps always returns a new reference.\nconst wrapperPropsCache = new WeakMap();\nconst emptyObj = {};\nfunction getWrapperProps( value, getWrapperPropsFunction ) {\n\tif ( ! getWrapperPropsFunction ) {\n\t\treturn emptyObj;\n\t}\n\tconst cachedValue = wrapperPropsCache.get( value );\n\tif ( ! cachedValue ) {\n\t\tconst wrapperProps = getWrapperPropsFunction( value );\n\t\twrapperPropsCache.set( value, wrapperProps );\n\t\treturn wrapperProps;\n\t}\n\treturn cachedValue;\n}\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst {\n\t\t\tgetBlockIndex,\n\t\t\tgetSettings,\n\t\t\tisBlockSelected,\n\t\t\tgetBlock,\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetLowestCommonAncestorWithSelectedBlock,\n\t\t\tgetBlockParents,\n\t\t\thasSelectedInnerBlock,\n\t\t} = select( blockEditorStore );\n\n\t\tconst order = getBlockIndex( clientId );\n\t\tconst isSelected = isBlockSelected( clientId );\n\t\tconst isInnerBlockSelected = hasSelectedInnerBlock( clientId );\n\t\tconst block = getBlock( clientId );\n\t\tconst { name, attributes, isValid } = block || {};\n\n\t\tconst blockType = getBlockType( name || 'core/missing' );\n\t\tconst title = blockType?.title;\n\t\tconst icon = blockType?.icon;\n\n\t\tconst parents = getBlockParents( clientId, true );\n\t\tconst parentId = parents[ 0 ] || '';\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst commonAncestor = getLowestCommonAncestorWithSelectedBlock(\n\t\t\tclientId\n\t\t);\n\t\tconst commonAncestorIndex = parents.indexOf( commonAncestor ) - 1;\n\t\tconst firstToSelectId = commonAncestor\n\t\t\t? parents[ commonAncestorIndex ]\n\t\t\t: parents[ parents.length - 1 ];\n\n\t\tconst isParentSelected =\n\t\t\t// Set false as a default value to prevent re-render when it's changed from null to false.\n\t\t\t( selectedBlockClientId || false ) &&\n\t\t\tselectedBlockClientId === parentId;\n\n\t\tconst selectedParents = selectedBlockClientId\n\t\t\t? getBlockParents( selectedBlockClientId )\n\t\t\t: [];\n\t\tconst isDescendantOfParentSelected = selectedParents.includes(\n\t\t\tparentId\n\t\t);\n\t\tconst isTouchable =\n\t\t\tisSelected ||\n\t\t\tisDescendantOfParentSelected ||\n\t\t\tisParentSelected ||\n\t\t\tparentId === '';\n\t\tconst baseGlobalStyles = getSettings()\n\t\t\t?.__experimentalGlobalStylesBaseStyles;\n\n\t\treturn {\n\t\t\ticon,\n\t\t\tname: name || 'core/missing',\n\t\t\torder,\n\t\t\ttitle,\n\t\t\tattributes,\n\t\t\tblockType,\n\t\t\tisSelected,\n\t\t\tisInnerBlockSelected,\n\t\t\tisValid,\n\t\t\tisParentSelected,\n\t\t\tfirstToSelectId,\n\t\t\tisTouchable,\n\t\t\tbaseGlobalStyles,\n\t\t\twrapperProps: getWrapperProps(\n\t\t\t\tattributes,\n\t\t\t\tblockType.getEditWrapperProps\n\t\t\t),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps, { select } ) => {\n\t\tconst {\n\t\t\tinsertBlocks,\n\t\t\tmergeBlocks,\n\t\t\treplaceBlocks,\n\t\t\tselectBlock,\n\t\t\tupdateBlockAttributes,\n\t\t} = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\tmergeBlocks( forward ) {\n\t\t\t\tconst { clientId } = ownProps;\n\t\t\t\tconst {\n\t\t\t\t\tgetPreviousBlockClientId,\n\t\t\t\t\tgetNextBlockClientId,\n\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\tif ( forward ) {\n\t\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\t\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tconst previousBlockClientId = getPreviousBlockClientId(\n\t\t\t\t\t\tclientId\n\t\t\t\t\t);\n\t\t\t\t\tif ( previousBlockClientId ) {\n\t\t\t\t\t\tmergeBlocks( previousBlockClientId, clientId );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tonInsertBlocks( blocks, index ) {\n\t\t\t\tinsertBlocks( blocks, index, ownProps.rootClientId );\n\t\t\t},\n\t\t\tonSelect( clientId = ownProps.clientId, initialPosition ) {\n\t\t\t\tselectBlock( clientId, initialPosition );\n\t\t\t},\n\t\t\tonChange: ( attributes ) => {\n\t\t\t\tupdateBlockAttributes( ownProps.clientId, attributes );\n\t\t\t},\n\t\t\tonReplace( blocks, indexToSelect ) {\n\t\t\t\treplaceBlocks( [ ownProps.clientId ], blocks, indexToSelect );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( BlockListBlock );\n"]}
@@ -180,7 +180,7 @@ class BlockList extends _element.Component {
180
180
  render() {
181
181
  const {
182
182
  isRootList
183
- } = this.props; // Use of Context to propagate the main scroll ref to its children e.g InnerBlocks
183
+ } = this.props; // Use of Context to propagate the main scroll ref to its children e.g InnerBlocks.
184
184
 
185
185
  const blockList = isRootList ? (0, _element.createElement)(BlockListContext.Provider, {
186
186
  value: this.scrollViewRef
@@ -221,7 +221,7 @@ class BlockList extends _element.Component {
221
221
  } = _style.default;
222
222
  const containerStyle = {
223
223
  flex: isRootList ? 1 : 0,
224
- // We set negative margin in the parent to remove the edge spacing between parent block and child block in ineer blocks
224
+ // We set negative margin in the parent to remove the edge spacing between parent block and child block in ineer blocks.
225
225
  marginVertical: isRootList ? 0 : -marginVertical,
226
226
  marginHorizontal: isRootList ? 0 : -marginHorizontal
227
227
  };
@@ -355,7 +355,7 @@ var _default = (0, _compose.compose)([(0, _data.withSelect)((select, _ref3) => {
355
355
  } = select(_store.store);
356
356
  const isStackedHorizontally = orientation === 'horizontal';
357
357
  const selectedBlockClientId = getSelectedBlockClientId();
358
- let blockClientIds = getBlockOrder(rootClientId); // Display only block which fulfill the condition in passed `filterInnerBlocks` function
358
+ let blockClientIds = getBlockOrder(rootClientId); // Display only block which fulfill the condition in passed `filterInnerBlocks` function.
359
359
 
360
360
  if (filterInnerBlocks) {
361
361
  blockClientIds = filterInnerBlocks(blockClientIds);
@@ -433,8 +433,8 @@ const EmptyListComponentCompose = (0, _compose.compose)([(0, _data.withSelect)((
433
433
  const blockClientIds = getBlockOrder(rootClientId);
434
434
  const insertionPoint = getBlockInsertionPoint();
435
435
  const blockInsertionPointIsVisible = isBlockInsertionPointVisible();
436
- const shouldShowInsertionPoint = !isStackedHorizontally && blockInsertionPointIsVisible && insertionPoint.rootClientId === rootClientId && ( // if list is empty, show the insertion point (via the default appender)
437
- blockClientIds.length === 0 || // or if the insertion point is right before the denoted block
436
+ const shouldShowInsertionPoint = !isStackedHorizontally && blockInsertionPointIsVisible && insertionPoint.rootClientId === rootClientId && ( // If list is empty, show the insertion point (via the default appender)
437
+ blockClientIds.length === 0 || // Or if the insertion point is right before the denoted block.
438
438
  !blockClientIds[insertionPoint.index]);
439
439
  return {
440
440
  shouldShowInsertionPoint
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/index.native.js"],"names":["BlockListContext","OnCaretVerticalPositionChange","stylesMemo","getStyles","isRootList","isStackedHorizontally","horizontalAlignment","styleName","computedStyles","styles","horizontal","overflowVisible","BlockList","Component","constructor","arguments","extraData","parentWidth","props","renderFooterAppender","renderAppender","onDeleteBlock","contentStyle","renderItem","bind","renderBlockListFooter","onCaretVerticalPositionChange","scrollViewInnerRef","addBlockToEndOfPost","shouldFlatListPreventAutomaticScroll","shouldShowInnerBlockAppender","renderEmptyList","getExtraData","onLayout","state","blockWidth","newBlock","insertBlock","blockCount","targetId","caretY","previousCaretY","KeyboardAwareFlatList","handleCaretVerticalPositionChange","scrollViewRef","ref","isBlockInsertionPointVisible","blockClientIds","length","rootClientId","gridProperties","nativeEvent","layout","maxWidth","layoutWidth","Math","floor","width","setState","min","render","blockList","renderList","parentScrollRef","extraProps","clearSelectedBlock","title","header","isReadOnly","marginVertical","defaultBlock","marginTop","marginHorizontal","marginLeft","isFloatingToolbarVisible","contentResizeMode","blockToolbar","blockBorder","headerToolbar","floatingToolbar","containerStyle","flex","isContentStretch","isMultiBlocks","isWider","alignmentHelpers","Platform","OS","removeClippedSubviews","autoScroll","height","horizontalContentContainer","horizontalContentContainerStretch","horizontalContentContainerCenter","identity","innerAppender","item","clientId","onAddBlock","paragraphBlock","withFooter","blockListFooter","select","orientation","filterInnerBlocks","getBlockCount","getBlockOrder","getSelectedBlockClientId","getSettings","blockEditorStore","selectedBlockClientId","readOnly","hasRootInnerBlocks","undefined","dispatch","replaceBlock","withPreferredColorScheme","EmptyListComponent","shouldShowInsertionPoint","defaultAppender","WIDE_ALIGNMENTS","alignments","full","EmptyListComponentCompose","getBlockInsertionPoint","insertionPoint","blockInsertionPointIsVisible","index"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { identity } from 'lodash';\nimport { View, Platform, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component, createContext } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tKeyboardAwareFlatList,\n\tReadableContentView,\n\tWIDE_ALIGNMENTS,\n\talignmentHelpers,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport BlockListAppender from '../block-list-appender';\nimport BlockListItem from './block-list-item';\nimport { store as blockEditorStore } from '../../store';\n\nconst BlockListContext = createContext();\n\nexport const OnCaretVerticalPositionChange = createContext();\n\nconst stylesMemo = {};\nconst getStyles = (\n\tisRootList,\n\tisStackedHorizontally,\n\thorizontalAlignment\n) => {\n\tif ( isRootList ) {\n\t\treturn;\n\t}\n\tconst styleName = `${ isStackedHorizontally }-${ horizontalAlignment }`;\n\tif ( stylesMemo[ styleName ] ) {\n\t\treturn stylesMemo[ styleName ];\n\t}\n\tconst computedStyles = [\n\t\tisStackedHorizontally && styles.horizontal,\n\t\thorizontalAlignment && styles[ `is-aligned-${ horizontalAlignment }` ],\n\t\tstyles.overflowVisible,\n\t];\n\tstylesMemo[ styleName ] = computedStyles;\n\treturn computedStyles;\n};\n\nexport class BlockList extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.extraData = {\n\t\t\tparentWidth: this.props.parentWidth,\n\t\t\trenderFooterAppender: this.props.renderFooterAppender,\n\t\t\trenderAppender: this.props.renderAppender,\n\t\t\tonDeleteBlock: this.props.onDeleteBlock,\n\t\t\tcontentStyle: this.props.contentStyle,\n\t\t};\n\t\tthis.renderItem = this.renderItem.bind( this );\n\t\tthis.renderBlockListFooter = this.renderBlockListFooter.bind( this );\n\t\tthis.onCaretVerticalPositionChange = this.onCaretVerticalPositionChange.bind(\n\t\t\tthis\n\t\t);\n\t\tthis.scrollViewInnerRef = this.scrollViewInnerRef.bind( this );\n\t\tthis.addBlockToEndOfPost = this.addBlockToEndOfPost.bind( this );\n\t\tthis.shouldFlatListPreventAutomaticScroll = this.shouldFlatListPreventAutomaticScroll.bind(\n\t\t\tthis\n\t\t);\n\t\tthis.shouldShowInnerBlockAppender = this.shouldShowInnerBlockAppender.bind(\n\t\t\tthis\n\t\t);\n\t\tthis.renderEmptyList = this.renderEmptyList.bind( this );\n\t\tthis.getExtraData = this.getExtraData.bind( this );\n\n\t\tthis.onLayout = this.onLayout.bind( this );\n\n\t\tthis.state = {\n\t\t\tblockWidth: this.props.blockWidth || 0,\n\t\t};\n\t}\n\n\taddBlockToEndOfPost( newBlock ) {\n\t\tthis.props.insertBlock( newBlock, this.props.blockCount );\n\t}\n\n\tonCaretVerticalPositionChange( targetId, caretY, previousCaretY ) {\n\t\tKeyboardAwareFlatList.handleCaretVerticalPositionChange(\n\t\t\tthis.scrollViewRef,\n\t\t\ttargetId,\n\t\t\tcaretY,\n\t\t\tpreviousCaretY\n\t\t);\n\t}\n\n\tscrollViewInnerRef( ref ) {\n\t\tthis.scrollViewRef = ref;\n\t}\n\n\tshouldFlatListPreventAutomaticScroll() {\n\t\treturn this.props.isBlockInsertionPointVisible;\n\t}\n\n\tshouldShowInnerBlockAppender() {\n\t\tconst { blockClientIds, renderAppender } = this.props;\n\t\treturn renderAppender && blockClientIds.length > 0;\n\t}\n\n\trenderEmptyList() {\n\t\treturn (\n\t\t\t<EmptyListComponentCompose\n\t\t\t\trootClientId={ this.props.rootClientId }\n\t\t\t\trenderAppender={ this.props.renderAppender }\n\t\t\t\trenderFooterAppender={ this.props.renderFooterAppender }\n\t\t\t/>\n\t\t);\n\t}\n\n\tgetExtraData() {\n\t\tconst {\n\t\t\tparentWidth,\n\t\t\trenderFooterAppender,\n\t\t\tonDeleteBlock,\n\t\t\tcontentStyle,\n\t\t\trenderAppender,\n\t\t\tgridProperties,\n\t\t} = this.props;\n\t\tconst { blockWidth } = this.state;\n\t\tif (\n\t\t\tthis.extraData.parentWidth !== parentWidth ||\n\t\t\tthis.extraData.renderFooterAppender !== renderFooterAppender ||\n\t\t\tthis.extraData.onDeleteBlock !== onDeleteBlock ||\n\t\t\tthis.extraData.contentStyle !== contentStyle ||\n\t\t\tthis.extraData.renderAppender !== renderAppender ||\n\t\t\tthis.extraData.blockWidth !== blockWidth ||\n\t\t\tthis.extraData.gridProperties !== gridProperties\n\t\t) {\n\t\t\tthis.extraData = {\n\t\t\t\tparentWidth,\n\t\t\t\trenderFooterAppender,\n\t\t\t\tonDeleteBlock,\n\t\t\t\tcontentStyle,\n\t\t\t\trenderAppender,\n\t\t\t\tblockWidth,\n\t\t\t\tgridProperties,\n\t\t\t};\n\t\t}\n\t\treturn this.extraData;\n\t}\n\n\tonLayout( { nativeEvent } ) {\n\t\tconst { layout } = nativeEvent;\n\t\tconst { blockWidth } = this.state;\n\t\tconst { isRootList, maxWidth } = this.props;\n\n\t\tconst layoutWidth = Math.floor( layout.width );\n\t\tif ( isRootList && blockWidth !== layoutWidth ) {\n\t\t\tthis.setState( {\n\t\t\t\tblockWidth: Math.min( layoutWidth, maxWidth ),\n\t\t\t} );\n\t\t} else if ( ! isRootList && ! blockWidth ) {\n\t\t\tthis.setState( { blockWidth: Math.min( layoutWidth, maxWidth ) } );\n\t\t}\n\t}\n\n\trender() {\n\t\tconst { isRootList } = this.props;\n\t\t// Use of Context to propagate the main scroll ref to its children e.g InnerBlocks\n\t\tconst blockList = isRootList ? (\n\t\t\t<BlockListContext.Provider value={ this.scrollViewRef }>\n\t\t\t\t{ this.renderList() }\n\t\t\t</BlockListContext.Provider>\n\t\t) : (\n\t\t\t<BlockListContext.Consumer>\n\t\t\t\t{ ( ref ) =>\n\t\t\t\t\tthis.renderList( {\n\t\t\t\t\t\tparentScrollRef: ref,\n\t\t\t\t\t} )\n\t\t\t\t}\n\t\t\t</BlockListContext.Consumer>\n\t\t);\n\n\t\treturn (\n\t\t\t<OnCaretVerticalPositionChange.Provider\n\t\t\t\tvalue={ this.onCaretVerticalPositionChange }\n\t\t\t>\n\t\t\t\t{ blockList }\n\t\t\t</OnCaretVerticalPositionChange.Provider>\n\t\t);\n\t}\n\n\trenderList( extraProps = {} ) {\n\t\tconst {\n\t\t\tclearSelectedBlock,\n\t\t\tblockClientIds,\n\t\t\ttitle,\n\t\t\theader,\n\t\t\tisReadOnly,\n\t\t\tisRootList,\n\t\t\thorizontal,\n\t\t\tmarginVertical = styles.defaultBlock.marginTop,\n\t\t\tmarginHorizontal = styles.defaultBlock.marginLeft,\n\t\t\tisFloatingToolbarVisible,\n\t\t\tisStackedHorizontally,\n\t\t\thorizontalAlignment,\n\t\t\tcontentResizeMode,\n\t\t\tblockWidth,\n\t\t} = this.props;\n\t\tconst { parentScrollRef } = extraProps;\n\n\t\tconst {\n\t\t\tblockToolbar,\n\t\t\tblockBorder,\n\t\t\theaderToolbar,\n\t\t\tfloatingToolbar,\n\t\t} = styles;\n\n\t\tconst containerStyle = {\n\t\t\tflex: isRootList ? 1 : 0,\n\t\t\t// We set negative margin in the parent to remove the edge spacing between parent block and child block in ineer blocks\n\t\t\tmarginVertical: isRootList ? 0 : -marginVertical,\n\t\t\tmarginHorizontal: isRootList ? 0 : -marginHorizontal,\n\t\t};\n\n\t\tconst isContentStretch = contentResizeMode === 'stretch';\n\t\tconst isMultiBlocks = blockClientIds.length > 1;\n\t\tconst { isWider } = alignmentHelpers;\n\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ containerStyle }\n\t\t\t\tonAccessibilityEscape={ clearSelectedBlock }\n\t\t\t\tonLayout={ this.onLayout }\n\t\t\t\ttestID=\"block-list-wrapper\"\n\t\t\t>\n\t\t\t\t<KeyboardAwareFlatList\n\t\t\t\t\t{ ...( Platform.OS === 'android'\n\t\t\t\t\t\t? { removeClippedSubviews: false }\n\t\t\t\t\t\t: {} ) } // Disable clipping on Android to fix focus losing. See https://github.com/wordpress-mobile/gutenberg-mobile/pull/741#issuecomment-472746541\n\t\t\t\t\taccessibilityLabel=\"block-list\"\n\t\t\t\t\tautoScroll={ this.props.autoScroll }\n\t\t\t\t\tinnerRef={ ( ref ) => {\n\t\t\t\t\t\tthis.scrollViewInnerRef( parentScrollRef || ref );\n\t\t\t\t\t} }\n\t\t\t\t\textraScrollHeight={\n\t\t\t\t\t\tblockToolbar.height + blockBorder.width\n\t\t\t\t\t}\n\t\t\t\t\tinputAccessoryViewHeight={\n\t\t\t\t\t\theaderToolbar.height +\n\t\t\t\t\t\t( isFloatingToolbarVisible\n\t\t\t\t\t\t\t? floatingToolbar.height\n\t\t\t\t\t\t\t: 0 )\n\t\t\t\t\t}\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tscrollViewStyle={ [\n\t\t\t\t\t\t{ flex: isRootList ? 1 : 0 },\n\t\t\t\t\t\t! isRootList && styles.overflowVisible,\n\t\t\t\t\t] }\n\t\t\t\t\textraData={ this.getExtraData() }\n\t\t\t\t\tscrollEnabled={ isRootList }\n\t\t\t\t\tcontentContainerStyle={ [\n\t\t\t\t\t\thorizontal && styles.horizontalContentContainer,\n\t\t\t\t\t\tisWider( blockWidth, 'medium' ) &&\n\t\t\t\t\t\t\t( isContentStretch && isMultiBlocks\n\t\t\t\t\t\t\t\t? styles.horizontalContentContainerStretch\n\t\t\t\t\t\t\t\t: styles.horizontalContentContainerCenter ),\n\t\t\t\t\t] }\n\t\t\t\t\tstyle={ getStyles(\n\t\t\t\t\t\tisRootList,\n\t\t\t\t\t\tisStackedHorizontally,\n\t\t\t\t\t\thorizontalAlignment\n\t\t\t\t\t) }\n\t\t\t\t\tdata={ blockClientIds }\n\t\t\t\t\tkeyExtractor={ identity }\n\t\t\t\t\trenderItem={ this.renderItem }\n\t\t\t\t\tshouldPreventAutomaticScroll={\n\t\t\t\t\t\tthis.shouldFlatListPreventAutomaticScroll\n\t\t\t\t\t}\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tListHeaderComponent={ header }\n\t\t\t\t\tListEmptyComponent={ ! isReadOnly && this.renderEmptyList }\n\t\t\t\t\tListFooterComponent={ this.renderBlockListFooter }\n\t\t\t\t/>\n\t\t\t\t{ this.shouldShowInnerBlockAppender() && (\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tmarginHorizontal:\n\t\t\t\t\t\t\t\tmarginHorizontal -\n\t\t\t\t\t\t\t\tstyles.innerAppender.marginLeft,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockListAppender\n\t\t\t\t\t\t\trootClientId={ this.props.rootClientId }\n\t\t\t\t\t\t\trenderAppender={ this.props.renderAppender }\n\t\t\t\t\t\t\tshowSeparator\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderItem( { item: clientId } ) {\n\t\tconst {\n\t\t\tcontentResizeMode,\n\t\t\tcontentStyle,\n\t\t\tonAddBlock,\n\t\t\tonDeleteBlock,\n\t\t\trootClientId,\n\t\t\tisStackedHorizontally,\n\t\t\tblockClientIds,\n\t\t\tparentWidth,\n\t\t\tmarginVertical = styles.defaultBlock.marginTop,\n\t\t\tmarginHorizontal = styles.defaultBlock.marginLeft,\n\t\t\tgridProperties,\n\t\t} = this.props;\n\t\tconst { blockWidth } = this.state;\n\t\treturn (\n\t\t\t<BlockListItem\n\t\t\t\tisStackedHorizontally={ isStackedHorizontally }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\tcontentResizeMode={ contentResizeMode }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\tmarginVertical={ marginVertical }\n\t\t\t\tmarginHorizontal={ marginHorizontal }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tshouldShowInnerBlockAppender={\n\t\t\t\t\tthis.shouldShowInnerBlockAppender\n\t\t\t\t}\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\tgridProperties={ gridProperties }\n\t\t\t\titems={ blockClientIds }\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderBlockListFooter() {\n\t\tconst paragraphBlock = createBlock( 'core/paragraph' );\n\t\tconst {\n\t\t\tisReadOnly,\n\t\t\twithFooter = true,\n\t\t\trenderFooterAppender,\n\t\t} = this.props;\n\n\t\tif ( ! isReadOnly && withFooter ) {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\t\taccessibilityLabel={ __( 'Add paragraph block' ) }\n\t\t\t\t\t\ttestID={ __( 'Add paragraph block' ) }\n\t\t\t\t\t\tonPress={ () => {\n\t\t\t\t\t\t\tthis.addBlockToEndOfPost( paragraphBlock );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={ styles.blockListFooter } />\n\t\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t\t</>\n\t\t\t);\n\t\t} else if ( renderFooterAppender ) {\n\t\t\treturn renderFooterAppender();\n\t\t}\n\t\treturn null;\n\t}\n}\n\nexport default compose( [\n\twithSelect(\n\t\t( select, { rootClientId, orientation, filterInnerBlocks } ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t\tgetSettings,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst isStackedHorizontally = orientation === 'horizontal';\n\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\t\tlet blockClientIds = getBlockOrder( rootClientId );\n\t\t\t// Display only block which fulfill the condition in passed `filterInnerBlocks` function\n\t\t\tif ( filterInnerBlocks ) {\n\t\t\t\tblockClientIds = filterInnerBlocks( blockClientIds );\n\t\t\t}\n\n\t\t\tconst { maxWidth } = getSettings();\n\t\t\tconst isReadOnly = getSettings().readOnly;\n\n\t\t\tconst blockCount = getBlockCount();\n\t\t\tconst hasRootInnerBlocks = !! blockCount;\n\n\t\t\tconst isFloatingToolbarVisible =\n\t\t\t\t!! selectedBlockClientId && hasRootInnerBlocks;\n\t\t\treturn {\n\t\t\t\tblockClientIds,\n\t\t\t\tblockCount,\n\t\t\t\tisBlockInsertionPointVisible:\n\t\t\t\t\tPlatform.OS === 'ios' && isBlockInsertionPointVisible(),\n\t\t\t\tisReadOnly,\n\t\t\t\tisRootList: rootClientId === undefined,\n\t\t\t\tisFloatingToolbarVisible,\n\t\t\t\tisStackedHorizontally,\n\t\t\t\tmaxWidth,\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { insertBlock, replaceBlock, clearSelectedBlock } = dispatch(\n\t\t\tblockEditorStore\n\t\t);\n\n\t\treturn {\n\t\t\tclearSelectedBlock,\n\t\t\tinsertBlock,\n\t\t\treplaceBlock,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( BlockList );\n\nclass EmptyListComponent extends Component {\n\trender() {\n\t\tconst {\n\t\t\tshouldShowInsertionPoint,\n\t\t\trootClientId,\n\t\t\trenderAppender,\n\t\t\trenderFooterAppender,\n\t\t} = this.props;\n\n\t\tif ( renderFooterAppender ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={ styles.defaultAppender }>\n\t\t\t\t<ReadableContentView\n\t\t\t\t\talign={\n\t\t\t\t\t\trenderAppender\n\t\t\t\t\t\t\t? WIDE_ALIGNMENTS.alignments.full\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<BlockListAppender\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\tshowSeparator={ shouldShowInsertionPoint }\n\t\t\t\t\t/>\n\t\t\t\t</ReadableContentView>\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst EmptyListComponentCompose = compose( [\n\twithSelect( ( select, { rootClientId, orientation } ) => {\n\t\tconst {\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockInsertionPoint,\n\t\t\tisBlockInsertionPointVisible,\n\t\t} = select( blockEditorStore );\n\n\t\tconst isStackedHorizontally = orientation === 'horizontal';\n\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\t\tconst insertionPoint = getBlockInsertionPoint();\n\t\tconst blockInsertionPointIsVisible = isBlockInsertionPointVisible();\n\t\tconst shouldShowInsertionPoint =\n\t\t\t! isStackedHorizontally &&\n\t\t\tblockInsertionPointIsVisible &&\n\t\t\tinsertionPoint.rootClientId === rootClientId &&\n\t\t\t// if list is empty, show the insertion point (via the default appender)\n\t\t\t( blockClientIds.length === 0 ||\n\t\t\t\t// or if the insertion point is right before the denoted block\n\t\t\t\t! blockClientIds[ insertionPoint.index ] );\n\n\t\treturn {\n\t\t\tshouldShowInsertionPoint,\n\t\t};\n\t} ),\n] )( EmptyListComponent );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/index.native.js"],"names":["BlockListContext","OnCaretVerticalPositionChange","stylesMemo","getStyles","isRootList","isStackedHorizontally","horizontalAlignment","styleName","computedStyles","styles","horizontal","overflowVisible","BlockList","Component","constructor","arguments","extraData","parentWidth","props","renderFooterAppender","renderAppender","onDeleteBlock","contentStyle","renderItem","bind","renderBlockListFooter","onCaretVerticalPositionChange","scrollViewInnerRef","addBlockToEndOfPost","shouldFlatListPreventAutomaticScroll","shouldShowInnerBlockAppender","renderEmptyList","getExtraData","onLayout","state","blockWidth","newBlock","insertBlock","blockCount","targetId","caretY","previousCaretY","KeyboardAwareFlatList","handleCaretVerticalPositionChange","scrollViewRef","ref","isBlockInsertionPointVisible","blockClientIds","length","rootClientId","gridProperties","nativeEvent","layout","maxWidth","layoutWidth","Math","floor","width","setState","min","render","blockList","renderList","parentScrollRef","extraProps","clearSelectedBlock","title","header","isReadOnly","marginVertical","defaultBlock","marginTop","marginHorizontal","marginLeft","isFloatingToolbarVisible","contentResizeMode","blockToolbar","blockBorder","headerToolbar","floatingToolbar","containerStyle","flex","isContentStretch","isMultiBlocks","isWider","alignmentHelpers","Platform","OS","removeClippedSubviews","autoScroll","height","horizontalContentContainer","horizontalContentContainerStretch","horizontalContentContainerCenter","identity","innerAppender","item","clientId","onAddBlock","paragraphBlock","withFooter","blockListFooter","select","orientation","filterInnerBlocks","getBlockCount","getBlockOrder","getSelectedBlockClientId","getSettings","blockEditorStore","selectedBlockClientId","readOnly","hasRootInnerBlocks","undefined","dispatch","replaceBlock","withPreferredColorScheme","EmptyListComponent","shouldShowInsertionPoint","defaultAppender","WIDE_ALIGNMENTS","alignments","full","EmptyListComponentCompose","getBlockInsertionPoint","insertionPoint","blockInsertionPointIsVisible","index"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { identity } from 'lodash';\nimport { View, Platform, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component, createContext } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tKeyboardAwareFlatList,\n\tReadableContentView,\n\tWIDE_ALIGNMENTS,\n\talignmentHelpers,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport BlockListAppender from '../block-list-appender';\nimport BlockListItem from './block-list-item';\nimport { store as blockEditorStore } from '../../store';\n\nconst BlockListContext = createContext();\n\nexport const OnCaretVerticalPositionChange = createContext();\n\nconst stylesMemo = {};\nconst getStyles = (\n\tisRootList,\n\tisStackedHorizontally,\n\thorizontalAlignment\n) => {\n\tif ( isRootList ) {\n\t\treturn;\n\t}\n\tconst styleName = `${ isStackedHorizontally }-${ horizontalAlignment }`;\n\tif ( stylesMemo[ styleName ] ) {\n\t\treturn stylesMemo[ styleName ];\n\t}\n\tconst computedStyles = [\n\t\tisStackedHorizontally && styles.horizontal,\n\t\thorizontalAlignment && styles[ `is-aligned-${ horizontalAlignment }` ],\n\t\tstyles.overflowVisible,\n\t];\n\tstylesMemo[ styleName ] = computedStyles;\n\treturn computedStyles;\n};\n\nexport class BlockList extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.extraData = {\n\t\t\tparentWidth: this.props.parentWidth,\n\t\t\trenderFooterAppender: this.props.renderFooterAppender,\n\t\t\trenderAppender: this.props.renderAppender,\n\t\t\tonDeleteBlock: this.props.onDeleteBlock,\n\t\t\tcontentStyle: this.props.contentStyle,\n\t\t};\n\t\tthis.renderItem = this.renderItem.bind( this );\n\t\tthis.renderBlockListFooter = this.renderBlockListFooter.bind( this );\n\t\tthis.onCaretVerticalPositionChange = this.onCaretVerticalPositionChange.bind(\n\t\t\tthis\n\t\t);\n\t\tthis.scrollViewInnerRef = this.scrollViewInnerRef.bind( this );\n\t\tthis.addBlockToEndOfPost = this.addBlockToEndOfPost.bind( this );\n\t\tthis.shouldFlatListPreventAutomaticScroll = this.shouldFlatListPreventAutomaticScroll.bind(\n\t\t\tthis\n\t\t);\n\t\tthis.shouldShowInnerBlockAppender = this.shouldShowInnerBlockAppender.bind(\n\t\t\tthis\n\t\t);\n\t\tthis.renderEmptyList = this.renderEmptyList.bind( this );\n\t\tthis.getExtraData = this.getExtraData.bind( this );\n\n\t\tthis.onLayout = this.onLayout.bind( this );\n\n\t\tthis.state = {\n\t\t\tblockWidth: this.props.blockWidth || 0,\n\t\t};\n\t}\n\n\taddBlockToEndOfPost( newBlock ) {\n\t\tthis.props.insertBlock( newBlock, this.props.blockCount );\n\t}\n\n\tonCaretVerticalPositionChange( targetId, caretY, previousCaretY ) {\n\t\tKeyboardAwareFlatList.handleCaretVerticalPositionChange(\n\t\t\tthis.scrollViewRef,\n\t\t\ttargetId,\n\t\t\tcaretY,\n\t\t\tpreviousCaretY\n\t\t);\n\t}\n\n\tscrollViewInnerRef( ref ) {\n\t\tthis.scrollViewRef = ref;\n\t}\n\n\tshouldFlatListPreventAutomaticScroll() {\n\t\treturn this.props.isBlockInsertionPointVisible;\n\t}\n\n\tshouldShowInnerBlockAppender() {\n\t\tconst { blockClientIds, renderAppender } = this.props;\n\t\treturn renderAppender && blockClientIds.length > 0;\n\t}\n\n\trenderEmptyList() {\n\t\treturn (\n\t\t\t<EmptyListComponentCompose\n\t\t\t\trootClientId={ this.props.rootClientId }\n\t\t\t\trenderAppender={ this.props.renderAppender }\n\t\t\t\trenderFooterAppender={ this.props.renderFooterAppender }\n\t\t\t/>\n\t\t);\n\t}\n\n\tgetExtraData() {\n\t\tconst {\n\t\t\tparentWidth,\n\t\t\trenderFooterAppender,\n\t\t\tonDeleteBlock,\n\t\t\tcontentStyle,\n\t\t\trenderAppender,\n\t\t\tgridProperties,\n\t\t} = this.props;\n\t\tconst { blockWidth } = this.state;\n\t\tif (\n\t\t\tthis.extraData.parentWidth !== parentWidth ||\n\t\t\tthis.extraData.renderFooterAppender !== renderFooterAppender ||\n\t\t\tthis.extraData.onDeleteBlock !== onDeleteBlock ||\n\t\t\tthis.extraData.contentStyle !== contentStyle ||\n\t\t\tthis.extraData.renderAppender !== renderAppender ||\n\t\t\tthis.extraData.blockWidth !== blockWidth ||\n\t\t\tthis.extraData.gridProperties !== gridProperties\n\t\t) {\n\t\t\tthis.extraData = {\n\t\t\t\tparentWidth,\n\t\t\t\trenderFooterAppender,\n\t\t\t\tonDeleteBlock,\n\t\t\t\tcontentStyle,\n\t\t\t\trenderAppender,\n\t\t\t\tblockWidth,\n\t\t\t\tgridProperties,\n\t\t\t};\n\t\t}\n\t\treturn this.extraData;\n\t}\n\n\tonLayout( { nativeEvent } ) {\n\t\tconst { layout } = nativeEvent;\n\t\tconst { blockWidth } = this.state;\n\t\tconst { isRootList, maxWidth } = this.props;\n\n\t\tconst layoutWidth = Math.floor( layout.width );\n\t\tif ( isRootList && blockWidth !== layoutWidth ) {\n\t\t\tthis.setState( {\n\t\t\t\tblockWidth: Math.min( layoutWidth, maxWidth ),\n\t\t\t} );\n\t\t} else if ( ! isRootList && ! blockWidth ) {\n\t\t\tthis.setState( { blockWidth: Math.min( layoutWidth, maxWidth ) } );\n\t\t}\n\t}\n\n\trender() {\n\t\tconst { isRootList } = this.props;\n\t\t// Use of Context to propagate the main scroll ref to its children e.g InnerBlocks.\n\t\tconst blockList = isRootList ? (\n\t\t\t<BlockListContext.Provider value={ this.scrollViewRef }>\n\t\t\t\t{ this.renderList() }\n\t\t\t</BlockListContext.Provider>\n\t\t) : (\n\t\t\t<BlockListContext.Consumer>\n\t\t\t\t{ ( ref ) =>\n\t\t\t\t\tthis.renderList( {\n\t\t\t\t\t\tparentScrollRef: ref,\n\t\t\t\t\t} )\n\t\t\t\t}\n\t\t\t</BlockListContext.Consumer>\n\t\t);\n\n\t\treturn (\n\t\t\t<OnCaretVerticalPositionChange.Provider\n\t\t\t\tvalue={ this.onCaretVerticalPositionChange }\n\t\t\t>\n\t\t\t\t{ blockList }\n\t\t\t</OnCaretVerticalPositionChange.Provider>\n\t\t);\n\t}\n\n\trenderList( extraProps = {} ) {\n\t\tconst {\n\t\t\tclearSelectedBlock,\n\t\t\tblockClientIds,\n\t\t\ttitle,\n\t\t\theader,\n\t\t\tisReadOnly,\n\t\t\tisRootList,\n\t\t\thorizontal,\n\t\t\tmarginVertical = styles.defaultBlock.marginTop,\n\t\t\tmarginHorizontal = styles.defaultBlock.marginLeft,\n\t\t\tisFloatingToolbarVisible,\n\t\t\tisStackedHorizontally,\n\t\t\thorizontalAlignment,\n\t\t\tcontentResizeMode,\n\t\t\tblockWidth,\n\t\t} = this.props;\n\t\tconst { parentScrollRef } = extraProps;\n\n\t\tconst {\n\t\t\tblockToolbar,\n\t\t\tblockBorder,\n\t\t\theaderToolbar,\n\t\t\tfloatingToolbar,\n\t\t} = styles;\n\n\t\tconst containerStyle = {\n\t\t\tflex: isRootList ? 1 : 0,\n\t\t\t// We set negative margin in the parent to remove the edge spacing between parent block and child block in ineer blocks.\n\t\t\tmarginVertical: isRootList ? 0 : -marginVertical,\n\t\t\tmarginHorizontal: isRootList ? 0 : -marginHorizontal,\n\t\t};\n\n\t\tconst isContentStretch = contentResizeMode === 'stretch';\n\t\tconst isMultiBlocks = blockClientIds.length > 1;\n\t\tconst { isWider } = alignmentHelpers;\n\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ containerStyle }\n\t\t\t\tonAccessibilityEscape={ clearSelectedBlock }\n\t\t\t\tonLayout={ this.onLayout }\n\t\t\t\ttestID=\"block-list-wrapper\"\n\t\t\t>\n\t\t\t\t<KeyboardAwareFlatList\n\t\t\t\t\t{ ...( Platform.OS === 'android'\n\t\t\t\t\t\t? { removeClippedSubviews: false }\n\t\t\t\t\t\t: {} ) } // Disable clipping on Android to fix focus losing. See https://github.com/wordpress-mobile/gutenberg-mobile/pull/741#issuecomment-472746541\n\t\t\t\t\taccessibilityLabel=\"block-list\"\n\t\t\t\t\tautoScroll={ this.props.autoScroll }\n\t\t\t\t\tinnerRef={ ( ref ) => {\n\t\t\t\t\t\tthis.scrollViewInnerRef( parentScrollRef || ref );\n\t\t\t\t\t} }\n\t\t\t\t\textraScrollHeight={\n\t\t\t\t\t\tblockToolbar.height + blockBorder.width\n\t\t\t\t\t}\n\t\t\t\t\tinputAccessoryViewHeight={\n\t\t\t\t\t\theaderToolbar.height +\n\t\t\t\t\t\t( isFloatingToolbarVisible\n\t\t\t\t\t\t\t? floatingToolbar.height\n\t\t\t\t\t\t\t: 0 )\n\t\t\t\t\t}\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tscrollViewStyle={ [\n\t\t\t\t\t\t{ flex: isRootList ? 1 : 0 },\n\t\t\t\t\t\t! isRootList && styles.overflowVisible,\n\t\t\t\t\t] }\n\t\t\t\t\textraData={ this.getExtraData() }\n\t\t\t\t\tscrollEnabled={ isRootList }\n\t\t\t\t\tcontentContainerStyle={ [\n\t\t\t\t\t\thorizontal && styles.horizontalContentContainer,\n\t\t\t\t\t\tisWider( blockWidth, 'medium' ) &&\n\t\t\t\t\t\t\t( isContentStretch && isMultiBlocks\n\t\t\t\t\t\t\t\t? styles.horizontalContentContainerStretch\n\t\t\t\t\t\t\t\t: styles.horizontalContentContainerCenter ),\n\t\t\t\t\t] }\n\t\t\t\t\tstyle={ getStyles(\n\t\t\t\t\t\tisRootList,\n\t\t\t\t\t\tisStackedHorizontally,\n\t\t\t\t\t\thorizontalAlignment\n\t\t\t\t\t) }\n\t\t\t\t\tdata={ blockClientIds }\n\t\t\t\t\tkeyExtractor={ identity }\n\t\t\t\t\trenderItem={ this.renderItem }\n\t\t\t\t\tshouldPreventAutomaticScroll={\n\t\t\t\t\t\tthis.shouldFlatListPreventAutomaticScroll\n\t\t\t\t\t}\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tListHeaderComponent={ header }\n\t\t\t\t\tListEmptyComponent={ ! isReadOnly && this.renderEmptyList }\n\t\t\t\t\tListFooterComponent={ this.renderBlockListFooter }\n\t\t\t\t/>\n\t\t\t\t{ this.shouldShowInnerBlockAppender() && (\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tmarginHorizontal:\n\t\t\t\t\t\t\t\tmarginHorizontal -\n\t\t\t\t\t\t\t\tstyles.innerAppender.marginLeft,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockListAppender\n\t\t\t\t\t\t\trootClientId={ this.props.rootClientId }\n\t\t\t\t\t\t\trenderAppender={ this.props.renderAppender }\n\t\t\t\t\t\t\tshowSeparator\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderItem( { item: clientId } ) {\n\t\tconst {\n\t\t\tcontentResizeMode,\n\t\t\tcontentStyle,\n\t\t\tonAddBlock,\n\t\t\tonDeleteBlock,\n\t\t\trootClientId,\n\t\t\tisStackedHorizontally,\n\t\t\tblockClientIds,\n\t\t\tparentWidth,\n\t\t\tmarginVertical = styles.defaultBlock.marginTop,\n\t\t\tmarginHorizontal = styles.defaultBlock.marginLeft,\n\t\t\tgridProperties,\n\t\t} = this.props;\n\t\tconst { blockWidth } = this.state;\n\t\treturn (\n\t\t\t<BlockListItem\n\t\t\t\tisStackedHorizontally={ isStackedHorizontally }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\tcontentResizeMode={ contentResizeMode }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\tmarginVertical={ marginVertical }\n\t\t\t\tmarginHorizontal={ marginHorizontal }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tshouldShowInnerBlockAppender={\n\t\t\t\t\tthis.shouldShowInnerBlockAppender\n\t\t\t\t}\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\tgridProperties={ gridProperties }\n\t\t\t\titems={ blockClientIds }\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderBlockListFooter() {\n\t\tconst paragraphBlock = createBlock( 'core/paragraph' );\n\t\tconst {\n\t\t\tisReadOnly,\n\t\t\twithFooter = true,\n\t\t\trenderFooterAppender,\n\t\t} = this.props;\n\n\t\tif ( ! isReadOnly && withFooter ) {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\t\taccessibilityLabel={ __( 'Add paragraph block' ) }\n\t\t\t\t\t\ttestID={ __( 'Add paragraph block' ) }\n\t\t\t\t\t\tonPress={ () => {\n\t\t\t\t\t\t\tthis.addBlockToEndOfPost( paragraphBlock );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={ styles.blockListFooter } />\n\t\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t\t</>\n\t\t\t);\n\t\t} else if ( renderFooterAppender ) {\n\t\t\treturn renderFooterAppender();\n\t\t}\n\t\treturn null;\n\t}\n}\n\nexport default compose( [\n\twithSelect(\n\t\t( select, { rootClientId, orientation, filterInnerBlocks } ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t\tgetSettings,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst isStackedHorizontally = orientation === 'horizontal';\n\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\t\tlet blockClientIds = getBlockOrder( rootClientId );\n\t\t\t// Display only block which fulfill the condition in passed `filterInnerBlocks` function.\n\t\t\tif ( filterInnerBlocks ) {\n\t\t\t\tblockClientIds = filterInnerBlocks( blockClientIds );\n\t\t\t}\n\n\t\t\tconst { maxWidth } = getSettings();\n\t\t\tconst isReadOnly = getSettings().readOnly;\n\n\t\t\tconst blockCount = getBlockCount();\n\t\t\tconst hasRootInnerBlocks = !! blockCount;\n\n\t\t\tconst isFloatingToolbarVisible =\n\t\t\t\t!! selectedBlockClientId && hasRootInnerBlocks;\n\t\t\treturn {\n\t\t\t\tblockClientIds,\n\t\t\t\tblockCount,\n\t\t\t\tisBlockInsertionPointVisible:\n\t\t\t\t\tPlatform.OS === 'ios' && isBlockInsertionPointVisible(),\n\t\t\t\tisReadOnly,\n\t\t\t\tisRootList: rootClientId === undefined,\n\t\t\t\tisFloatingToolbarVisible,\n\t\t\t\tisStackedHorizontally,\n\t\t\t\tmaxWidth,\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { insertBlock, replaceBlock, clearSelectedBlock } = dispatch(\n\t\t\tblockEditorStore\n\t\t);\n\n\t\treturn {\n\t\t\tclearSelectedBlock,\n\t\t\tinsertBlock,\n\t\t\treplaceBlock,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( BlockList );\n\nclass EmptyListComponent extends Component {\n\trender() {\n\t\tconst {\n\t\t\tshouldShowInsertionPoint,\n\t\t\trootClientId,\n\t\t\trenderAppender,\n\t\t\trenderFooterAppender,\n\t\t} = this.props;\n\n\t\tif ( renderFooterAppender ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={ styles.defaultAppender }>\n\t\t\t\t<ReadableContentView\n\t\t\t\t\talign={\n\t\t\t\t\t\trenderAppender\n\t\t\t\t\t\t\t? WIDE_ALIGNMENTS.alignments.full\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<BlockListAppender\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\tshowSeparator={ shouldShowInsertionPoint }\n\t\t\t\t\t/>\n\t\t\t\t</ReadableContentView>\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst EmptyListComponentCompose = compose( [\n\twithSelect( ( select, { rootClientId, orientation } ) => {\n\t\tconst {\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockInsertionPoint,\n\t\t\tisBlockInsertionPointVisible,\n\t\t} = select( blockEditorStore );\n\n\t\tconst isStackedHorizontally = orientation === 'horizontal';\n\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\t\tconst insertionPoint = getBlockInsertionPoint();\n\t\tconst blockInsertionPointIsVisible = isBlockInsertionPointVisible();\n\t\tconst shouldShowInsertionPoint =\n\t\t\t! isStackedHorizontally &&\n\t\t\tblockInsertionPointIsVisible &&\n\t\t\tinsertionPoint.rootClientId === rootClientId &&\n\t\t\t// If list is empty, show the insertion point (via the default appender)\n\t\t\t( blockClientIds.length === 0 ||\n\t\t\t\t// Or if the insertion point is right before the denoted block.\n\t\t\t\t! blockClientIds[ insertionPoint.index ] );\n\n\t\treturn {\n\t\t\tshouldShowInsertionPoint,\n\t\t};\n\t} ),\n] )( EmptyListComponent );\n"]}
@@ -54,7 +54,7 @@ function useBlockClassNames(clientId) {
54
54
  const isDragging = isBlockBeingDragged(clientId);
55
55
  const isSelected = isBlockSelected(clientId);
56
56
  const name = getBlockName(clientId);
57
- const checkDeep = true; // "ancestor" is the more appropriate label due to "deep" check
57
+ const checkDeep = true; // "ancestor" is the more appropriate label due to "deep" check.
58
58
 
59
59
  const isAncestorOfSelectedBlock = hasSelectedInnerBlock(clientId, checkDeep);
60
60
  const activeEntityBlockId = getActiveBlockIdByBlockNames(spotlightEntityBlocks);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-block-class-names.js"],"names":["useBlockClassNames","clientId","select","isBlockBeingDragged","isBlockHighlighted","isBlockSelected","isBlockMultiSelected","getBlockName","getSettings","hasSelectedInnerBlock","isTyping","__experimentalGetActiveBlockIdByBlockNames","getActiveBlockIdByBlockNames","blockEditorStore","__experimentalSpotlightEntityBlocks","spotlightEntityBlocks","outlineMode","isDragging","isSelected","name","checkDeep","isAncestorOfSelectedBlock","activeEntityBlockId"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,kBAAT,CAA6BC,QAA7B,EAAwC;AAC9C,SAAO,qBACJC,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,mBADK;AAELC,MAAAA,kBAFK;AAGLC,MAAAA,eAHK;AAILC,MAAAA,oBAJK;AAKLC,MAAAA,YALK;AAMLC,MAAAA,WANK;AAOLC,MAAAA,qBAPK;AAQLC,MAAAA,QARK;AASLC,MAAAA,0CAA0C,EAAEC;AATvC,QAUFV,MAAM,CAAEW,YAAF,CAVV;AAWA,UAAM;AACLC,MAAAA,mCAAmC,EAAEC,qBADhC;AAELC,MAAAA;AAFK,QAGFR,WAAW,EAHf;AAIA,UAAMS,UAAU,GAAGd,mBAAmB,CAAEF,QAAF,CAAtC;AACA,UAAMiB,UAAU,GAAGb,eAAe,CAAEJ,QAAF,CAAlC;AACA,UAAMkB,IAAI,GAAGZ,YAAY,CAAEN,QAAF,CAAzB;AACA,UAAMmB,SAAS,GAAG,IAAlB,CAnBa,CAoBb;;AACA,UAAMC,yBAAyB,GAAGZ,qBAAqB,CACtDR,QADsD,EAEtDmB,SAFsD,CAAvD;AAIA,UAAME,mBAAmB,GAAGV,4BAA4B,CACvDG,qBADuD,CAAxD;AAGA,WAAO,yBAAY;AAClB,qBAAeG,UADG;AAElB,wBAAkBd,kBAAkB,CAAEH,QAAF,CAFlB;AAGlB,2BAAqBK,oBAAoB,CAAEL,QAAF,CAHvB;AAIlB,qBAAe,6BAAiB,0BAAckB,IAAd,CAAjB,CAJG;AAKlB,qBAAeF,UALG;AAMlB,4BAAsBI,yBANJ;AAOlB,2BAAqBC,mBAPH;AAQlB;AACA,0BAAoBA,mBAAmB,KAAKrB,QAT1B;AAUlB,wBAAkBiB,UAAU,IAAIF,WAAd,IAA6BN,QAAQ;AAVrC,KAAZ,CAAP;AAYA,GAzCK,EA0CN,CAAET,QAAF,CA1CM,CAAP;AA4CA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { isReusableBlock, getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\n\n/**\n * Returns the class names used for the different states of the block.\n *\n * @param {string} clientId The block client ID.\n *\n * @return {string} The class names.\n */\nexport function useBlockClassNames( clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisBlockBeingDragged,\n\t\t\t\tisBlockHighlighted,\n\t\t\t\tisBlockSelected,\n\t\t\t\tisBlockMultiSelected,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetSettings,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tisTyping,\n\t\t\t\t__experimentalGetActiveBlockIdByBlockNames: getActiveBlockIdByBlockNames,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst {\n\t\t\t\t__experimentalSpotlightEntityBlocks: spotlightEntityBlocks,\n\t\t\t\toutlineMode,\n\t\t\t} = getSettings();\n\t\t\tconst isDragging = isBlockBeingDragged( clientId );\n\t\t\tconst isSelected = isBlockSelected( clientId );\n\t\t\tconst name = getBlockName( clientId );\n\t\t\tconst checkDeep = true;\n\t\t\t// \"ancestor\" is the more appropriate label due to \"deep\" check\n\t\t\tconst isAncestorOfSelectedBlock = hasSelectedInnerBlock(\n\t\t\t\tclientId,\n\t\t\t\tcheckDeep\n\t\t\t);\n\t\t\tconst activeEntityBlockId = getActiveBlockIdByBlockNames(\n\t\t\t\tspotlightEntityBlocks\n\t\t\t);\n\t\t\treturn classnames( {\n\t\t\t\t'is-selected': isSelected,\n\t\t\t\t'is-highlighted': isBlockHighlighted( clientId ),\n\t\t\t\t'is-multi-selected': isBlockMultiSelected( clientId ),\n\t\t\t\t'is-reusable': isReusableBlock( getBlockType( name ) ),\n\t\t\t\t'is-dragging': isDragging,\n\t\t\t\t'has-child-selected': isAncestorOfSelectedBlock,\n\t\t\t\t'has-active-entity': activeEntityBlockId,\n\t\t\t\t// Determine if there is an active entity area to spotlight.\n\t\t\t\t'is-active-entity': activeEntityBlockId === clientId,\n\t\t\t\t'remove-outline': isSelected && outlineMode && isTyping(),\n\t\t\t} );\n\t\t},\n\t\t[ clientId ]\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-block-class-names.js"],"names":["useBlockClassNames","clientId","select","isBlockBeingDragged","isBlockHighlighted","isBlockSelected","isBlockMultiSelected","getBlockName","getSettings","hasSelectedInnerBlock","isTyping","__experimentalGetActiveBlockIdByBlockNames","getActiveBlockIdByBlockNames","blockEditorStore","__experimentalSpotlightEntityBlocks","spotlightEntityBlocks","outlineMode","isDragging","isSelected","name","checkDeep","isAncestorOfSelectedBlock","activeEntityBlockId"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,kBAAT,CAA6BC,QAA7B,EAAwC;AAC9C,SAAO,qBACJC,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,mBADK;AAELC,MAAAA,kBAFK;AAGLC,MAAAA,eAHK;AAILC,MAAAA,oBAJK;AAKLC,MAAAA,YALK;AAMLC,MAAAA,WANK;AAOLC,MAAAA,qBAPK;AAQLC,MAAAA,QARK;AASLC,MAAAA,0CAA0C,EAAEC;AATvC,QAUFV,MAAM,CAAEW,YAAF,CAVV;AAWA,UAAM;AACLC,MAAAA,mCAAmC,EAAEC,qBADhC;AAELC,MAAAA;AAFK,QAGFR,WAAW,EAHf;AAIA,UAAMS,UAAU,GAAGd,mBAAmB,CAAEF,QAAF,CAAtC;AACA,UAAMiB,UAAU,GAAGb,eAAe,CAAEJ,QAAF,CAAlC;AACA,UAAMkB,IAAI,GAAGZ,YAAY,CAAEN,QAAF,CAAzB;AACA,UAAMmB,SAAS,GAAG,IAAlB,CAnBa,CAoBb;;AACA,UAAMC,yBAAyB,GAAGZ,qBAAqB,CACtDR,QADsD,EAEtDmB,SAFsD,CAAvD;AAIA,UAAME,mBAAmB,GAAGV,4BAA4B,CACvDG,qBADuD,CAAxD;AAGA,WAAO,yBAAY;AAClB,qBAAeG,UADG;AAElB,wBAAkBd,kBAAkB,CAAEH,QAAF,CAFlB;AAGlB,2BAAqBK,oBAAoB,CAAEL,QAAF,CAHvB;AAIlB,qBAAe,6BAAiB,0BAAckB,IAAd,CAAjB,CAJG;AAKlB,qBAAeF,UALG;AAMlB,4BAAsBI,yBANJ;AAOlB,2BAAqBC,mBAPH;AAQlB;AACA,0BAAoBA,mBAAmB,KAAKrB,QAT1B;AAUlB,wBAAkBiB,UAAU,IAAIF,WAAd,IAA6BN,QAAQ;AAVrC,KAAZ,CAAP;AAYA,GAzCK,EA0CN,CAAET,QAAF,CA1CM,CAAP;AA4CA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { isReusableBlock, getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\n\n/**\n * Returns the class names used for the different states of the block.\n *\n * @param {string} clientId The block client ID.\n *\n * @return {string} The class names.\n */\nexport function useBlockClassNames( clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisBlockBeingDragged,\n\t\t\t\tisBlockHighlighted,\n\t\t\t\tisBlockSelected,\n\t\t\t\tisBlockMultiSelected,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetSettings,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tisTyping,\n\t\t\t\t__experimentalGetActiveBlockIdByBlockNames: getActiveBlockIdByBlockNames,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst {\n\t\t\t\t__experimentalSpotlightEntityBlocks: spotlightEntityBlocks,\n\t\t\t\toutlineMode,\n\t\t\t} = getSettings();\n\t\t\tconst isDragging = isBlockBeingDragged( clientId );\n\t\t\tconst isSelected = isBlockSelected( clientId );\n\t\t\tconst name = getBlockName( clientId );\n\t\t\tconst checkDeep = true;\n\t\t\t// \"ancestor\" is the more appropriate label due to \"deep\" check.\n\t\t\tconst isAncestorOfSelectedBlock = hasSelectedInnerBlock(\n\t\t\t\tclientId,\n\t\t\t\tcheckDeep\n\t\t\t);\n\t\t\tconst activeEntityBlockId = getActiveBlockIdByBlockNames(\n\t\t\t\tspotlightEntityBlocks\n\t\t\t);\n\t\t\treturn classnames( {\n\t\t\t\t'is-selected': isSelected,\n\t\t\t\t'is-highlighted': isBlockHighlighted( clientId ),\n\t\t\t\t'is-multi-selected': isBlockMultiSelected( clientId ),\n\t\t\t\t'is-reusable': isReusableBlock( getBlockType( name ) ),\n\t\t\t\t'is-dragging': isDragging,\n\t\t\t\t'has-child-selected': isAncestorOfSelectedBlock,\n\t\t\t\t'has-active-entity': activeEntityBlockId,\n\t\t\t\t// Determine if there is an active entity area to spotlight.\n\t\t\t\t'is-active-entity': activeEntityBlockId === clientId,\n\t\t\t\t'remove-outline': isSelected && outlineMode && isTyping(),\n\t\t\t} );\n\t\t},\n\t\t[ clientId ]\n\t);\n}\n"]}
@@ -145,7 +145,7 @@ class BlockMediaUpdateProgress extends _element.Component {
145
145
  this.mediaIdChanged(payload);
146
146
  break;
147
147
  }
148
- } // ---- Block media save actions
148
+ } // ---- Block media save actions.
149
149
 
150
150
 
151
151
  updateMediaSaveProgress(payload) {
@@ -219,7 +219,7 @@ class BlockMediaUpdateProgress extends _element.Component {
219
219
  if (this.props.onMediaIdChanged) {
220
220
  this.props.onMediaIdChanged(payload);
221
221
  }
222
- } // ---- Block media upload actions
222
+ } // ---- Block media upload actions.
223
223
 
224
224
 
225
225
  updateMediaUploadProgress(payload) {
@@ -270,7 +270,7 @@ class BlockMediaUpdateProgress extends _element.Component {
270
270
  }
271
271
 
272
272
  addMediaUploadListener() {
273
- //if we already have a subscription not worth doing it again
273
+ // If we already have a subscription not worth doing it again.
274
274
  if (this.subscriptionParentMediaUpload) {
275
275
  return;
276
276
  }
@@ -287,7 +287,7 @@ class BlockMediaUpdateProgress extends _element.Component {
287
287
  }
288
288
 
289
289
  addMediaSaveListener() {
290
- //if we already have a subscription not worth doing it again
290
+ // If we already have a subscription not worth doing it again.
291
291
  if (this.subscriptionParentMediaSave) {
292
292
  return;
293
293
  }