@wordpress/block-library 8.22.0 → 8.24.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 (266) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/block/edit.js +11 -13
  3. package/build/block/edit.js.map +1 -1
  4. package/build/block/edit.native.js +3 -4
  5. package/build/block/edit.native.js.map +1 -1
  6. package/build/button/edit.js +61 -9
  7. package/build/button/edit.js.map +1 -1
  8. package/build/code/transforms.js +20 -7
  9. package/build/code/transforms.js.map +1 -1
  10. package/build/column/edit.js +1 -1
  11. package/build/column/edit.js.map +1 -1
  12. package/build/column/edit.native.js +1 -1
  13. package/build/column/edit.native.js.map +1 -1
  14. package/build/comments/edit/comments-inspector-controls.js +1 -0
  15. package/build/comments/edit/comments-inspector-controls.js.map +1 -1
  16. package/build/cover/edit/index.js +2 -1
  17. package/build/cover/edit/index.js.map +1 -1
  18. package/build/cover/edit/inspector-controls.js +1 -0
  19. package/build/cover/edit/inspector-controls.js.map +1 -1
  20. package/build/details/edit.js +1 -2
  21. package/build/details/edit.js.map +1 -1
  22. package/build/file/edit.js +8 -9
  23. package/build/file/edit.js.map +1 -1
  24. package/build/file/view.js +4 -6
  25. package/build/file/view.js.map +1 -1
  26. package/build/form/index.js +1 -1
  27. package/build/form/index.js.map +1 -1
  28. package/build/form-submit-button/edit.js +2 -1
  29. package/build/form-submit-button/edit.js.map +1 -1
  30. package/build/gallery/gap-styles.js +12 -7
  31. package/build/gallery/gap-styles.js.map +1 -1
  32. package/build/group/edit.js +4 -7
  33. package/build/group/edit.js.map +1 -1
  34. package/build/html/transforms.js +7 -2
  35. package/build/html/transforms.js.map +1 -1
  36. package/build/image/deprecated.js +8 -0
  37. package/build/image/deprecated.js.map +1 -1
  38. package/build/image/edit.js +17 -18
  39. package/build/image/edit.js.map +1 -1
  40. package/build/image/edit.native.js +22 -15
  41. package/build/image/edit.native.js.map +1 -1
  42. package/build/image/image.js +35 -27
  43. package/build/image/image.js.map +1 -1
  44. package/build/image/index.js +2 -3
  45. package/build/image/index.js.map +1 -1
  46. package/build/image/view.js +234 -266
  47. package/build/image/view.js.map +1 -1
  48. package/build/missing/index.js +1 -1
  49. package/build/navigation/edit/overlay-menu-preview.js +1 -1
  50. package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
  51. package/build/navigation/use-template-part-area-label.js +2 -1
  52. package/build/navigation/use-template-part-area-label.js.map +1 -1
  53. package/build/navigation/view.js +153 -176
  54. package/build/navigation/view.js.map +1 -1
  55. package/build/navigation-link/edit.js +1 -1
  56. package/build/navigation-link/edit.js.map +1 -1
  57. package/build/navigation-link/index.js +2 -1
  58. package/build/navigation-link/index.js.map +1 -1
  59. package/build/pattern/edit.js +2 -4
  60. package/build/pattern/edit.js.map +1 -1
  61. package/build/post-author/edit.js +0 -1
  62. package/build/post-author/edit.js.map +1 -1
  63. package/build/post-featured-image/edit.js +21 -6
  64. package/build/post-featured-image/edit.js.map +1 -1
  65. package/build/post-template/edit.js +2 -8
  66. package/build/post-template/edit.js.map +1 -1
  67. package/build/post-template/index.js +1 -1
  68. package/build/post-terms/edit.js +0 -2
  69. package/build/post-terms/edit.js.map +1 -1
  70. package/build/preformatted/transforms.js +1 -4
  71. package/build/preformatted/transforms.js.map +1 -1
  72. package/build/query/edit/query-content.js +1 -0
  73. package/build/query/edit/query-content.js.map +1 -1
  74. package/build/query/view.js +52 -60
  75. package/build/query/view.js.map +1 -1
  76. package/build/quote/index.js +6 -0
  77. package/build/quote/index.js.map +1 -1
  78. package/build/search/view.js +66 -74
  79. package/build/search/view.js.map +1 -1
  80. package/build/template-part/edit/advanced-controls.js +1 -0
  81. package/build/template-part/edit/advanced-controls.js.map +1 -1
  82. package/build/template-part/edit/index.js +3 -7
  83. package/build/template-part/edit/index.js.map +1 -1
  84. package/build/template-part/index.js +6 -2
  85. package/build/template-part/index.js.map +1 -1
  86. package/build/template-part/variations.js +5 -1
  87. package/build/template-part/variations.js.map +1 -1
  88. package/build/utils/remove-anchor-tag.js +17 -0
  89. package/build/utils/remove-anchor-tag.js.map +1 -0
  90. package/build-module/block/edit.js +11 -13
  91. package/build-module/block/edit.js.map +1 -1
  92. package/build-module/block/edit.native.js +3 -4
  93. package/build-module/block/edit.native.js.map +1 -1
  94. package/build-module/button/edit.js +65 -13
  95. package/build-module/button/edit.js.map +1 -1
  96. package/build-module/code/transforms.js +20 -7
  97. package/build-module/code/transforms.js.map +1 -1
  98. package/build-module/column/edit.js +1 -1
  99. package/build-module/column/edit.js.map +1 -1
  100. package/build-module/column/edit.native.js +1 -1
  101. package/build-module/column/edit.native.js.map +1 -1
  102. package/build-module/comments/edit/comments-inspector-controls.js +1 -0
  103. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
  104. package/build-module/cover/edit/index.js +2 -1
  105. package/build-module/cover/edit/index.js.map +1 -1
  106. package/build-module/cover/edit/inspector-controls.js +1 -0
  107. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  108. package/build-module/details/edit.js +1 -2
  109. package/build-module/details/edit.js.map +1 -1
  110. package/build-module/file/edit.js +8 -9
  111. package/build-module/file/edit.js.map +1 -1
  112. package/build-module/file/view.js +5 -7
  113. package/build-module/file/view.js.map +1 -1
  114. package/build-module/form/index.js +1 -1
  115. package/build-module/form/index.js.map +1 -1
  116. package/build-module/form-submit-button/edit.js +2 -1
  117. package/build-module/form-submit-button/edit.js.map +1 -1
  118. package/build-module/gallery/gap-styles.js +13 -8
  119. package/build-module/gallery/gap-styles.js.map +1 -1
  120. package/build-module/group/edit.js +4 -7
  121. package/build-module/group/edit.js.map +1 -1
  122. package/build-module/html/transforms.js +7 -2
  123. package/build-module/html/transforms.js.map +1 -1
  124. package/build-module/image/deprecated.js +8 -0
  125. package/build-module/image/deprecated.js.map +1 -1
  126. package/build-module/image/edit.js +18 -19
  127. package/build-module/image/edit.js.map +1 -1
  128. package/build-module/image/edit.native.js +23 -16
  129. package/build-module/image/edit.native.js.map +1 -1
  130. package/build-module/image/image.js +36 -28
  131. package/build-module/image/image.js.map +1 -1
  132. package/build-module/image/index.js +2 -3
  133. package/build-module/image/index.js.map +1 -1
  134. package/build-module/image/view.js +235 -267
  135. package/build-module/image/view.js.map +1 -1
  136. package/build-module/missing/index.js +1 -1
  137. package/build-module/navigation/edit/overlay-menu-preview.js +1 -1
  138. package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
  139. package/build-module/navigation/use-template-part-area-label.js +2 -1
  140. package/build-module/navigation/use-template-part-area-label.js.map +1 -1
  141. package/build-module/navigation/view.js +154 -177
  142. package/build-module/navigation/view.js.map +1 -1
  143. package/build-module/navigation-link/edit.js +2 -2
  144. package/build-module/navigation-link/edit.js.map +1 -1
  145. package/build-module/navigation-link/index.js +2 -1
  146. package/build-module/navigation-link/index.js.map +1 -1
  147. package/build-module/pattern/edit.js +2 -4
  148. package/build-module/pattern/edit.js.map +1 -1
  149. package/build-module/post-author/edit.js +0 -1
  150. package/build-module/post-author/edit.js.map +1 -1
  151. package/build-module/post-featured-image/edit.js +21 -6
  152. package/build-module/post-featured-image/edit.js.map +1 -1
  153. package/build-module/post-template/edit.js +2 -8
  154. package/build-module/post-template/edit.js.map +1 -1
  155. package/build-module/post-template/index.js +1 -1
  156. package/build-module/post-terms/edit.js +0 -2
  157. package/build-module/post-terms/edit.js.map +1 -1
  158. package/build-module/preformatted/transforms.js +1 -4
  159. package/build-module/preformatted/transforms.js.map +1 -1
  160. package/build-module/query/edit/query-content.js +1 -0
  161. package/build-module/query/edit/query-content.js.map +1 -1
  162. package/build-module/query/view.js +53 -61
  163. package/build-module/query/view.js.map +1 -1
  164. package/build-module/quote/index.js +6 -0
  165. package/build-module/quote/index.js.map +1 -1
  166. package/build-module/search/view.js +67 -75
  167. package/build-module/search/view.js.map +1 -1
  168. package/build-module/template-part/edit/advanced-controls.js +1 -0
  169. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  170. package/build-module/template-part/edit/index.js +5 -9
  171. package/build-module/template-part/edit/index.js.map +1 -1
  172. package/build-module/template-part/index.js +6 -2
  173. package/build-module/template-part/index.js.map +1 -1
  174. package/build-module/template-part/variations.js +5 -1
  175. package/build-module/template-part/variations.js.map +1 -1
  176. package/build-module/utils/remove-anchor-tag.js +11 -0
  177. package/build-module/utils/remove-anchor-tag.js.map +1 -0
  178. package/build-style/cover/style-rtl.css +14 -14
  179. package/build-style/cover/style.css +14 -14
  180. package/build-style/editor-rtl.css +15 -6
  181. package/build-style/editor.css +15 -6
  182. package/build-style/gallery/style-rtl.css +28 -0
  183. package/build-style/gallery/style.css +28 -0
  184. package/build-style/image/style-rtl.css +19 -13
  185. package/build-style/image/style.css +19 -13
  186. package/build-style/post-featured-image/editor-rtl.css +9 -0
  187. package/build-style/post-featured-image/editor.css +9 -0
  188. package/build-style/quote/style-rtl.css +3 -0
  189. package/build-style/quote/style.css +3 -0
  190. package/build-style/read-more/style-rtl.css +2 -2
  191. package/build-style/read-more/style.css +2 -2
  192. package/build-style/style-rtl.css +66 -29
  193. package/build-style/style.css +66 -29
  194. package/package.json +32 -32
  195. package/src/block/edit.js +20 -20
  196. package/src/block/edit.native.js +5 -13
  197. package/src/button/edit.js +76 -10
  198. package/src/buttons/test/__snapshots__/edit.native.js.snap +0 -6
  199. package/src/buttons/test/edit.native.js +0 -27
  200. package/src/code/transforms.js +14 -8
  201. package/src/column/edit.js +1 -1
  202. package/src/column/edit.native.js +1 -1
  203. package/src/comments/edit/comments-inspector-controls.js +1 -0
  204. package/src/cover/edit/index.js +1 -0
  205. package/src/cover/edit/inspector-controls.js +1 -0
  206. package/src/cover/style.scss +1 -1
  207. package/src/cover/test/edit.js +1 -1
  208. package/src/details/edit.js +0 -1
  209. package/src/editor.scss +6 -6
  210. package/src/file/edit.js +11 -10
  211. package/src/file/index.php +30 -11
  212. package/src/file/view.js +5 -7
  213. package/src/form/index.js +1 -1
  214. package/src/form-submit-button/edit.js +1 -0
  215. package/src/gallery/gap-styles.js +10 -9
  216. package/src/gallery/style.scss +1 -0
  217. package/src/group/edit.js +4 -11
  218. package/src/heading/test/__snapshots__/index.native.js.snap +6 -0
  219. package/src/heading/test/index.native.js +40 -0
  220. package/src/html/transforms.js +5 -2
  221. package/src/image/block.json +2 -3
  222. package/src/image/deprecated.js +8 -0
  223. package/src/image/edit.js +16 -21
  224. package/src/image/edit.native.js +17 -18
  225. package/src/image/image.js +48 -51
  226. package/src/image/index.php +57 -49
  227. package/src/image/style.scss +18 -13
  228. package/src/image/view.js +281 -324
  229. package/src/missing/block.json +1 -1
  230. package/src/navigation/edit/overlay-menu-preview.js +1 -1
  231. package/src/navigation/index.php +46 -402
  232. package/src/navigation/use-template-part-area-label.js +4 -2
  233. package/src/navigation/view.js +159 -192
  234. package/src/navigation-link/block.json +2 -1
  235. package/src/navigation-link/edit.js +2 -2
  236. package/src/navigation-link/index.php +57 -0
  237. package/src/paragraph/test/__snapshots__/transforms.native.js.snap +6 -0
  238. package/src/paragraph/test/edit.native.js +37 -1
  239. package/src/paragraph/test/transforms.native.js +1 -0
  240. package/src/pattern/edit.js +7 -4
  241. package/src/pattern/index.php +6 -1
  242. package/src/post-author/edit.js +0 -1
  243. package/src/post-featured-image/edit.js +38 -5
  244. package/src/post-featured-image/editor.scss +19 -0
  245. package/src/post-template/block.json +0 -1
  246. package/src/post-template/edit.js +1 -5
  247. package/src/post-terms/edit.js +0 -2
  248. package/src/preformatted/transforms.js +1 -4
  249. package/src/query/edit/query-content.js +1 -0
  250. package/src/query/index.php +42 -24
  251. package/src/query/view.js +58 -65
  252. package/src/query-pagination-next/index.php +3 -3
  253. package/src/query-pagination-numbers/index.php +1 -1
  254. package/src/query-pagination-previous/index.php +3 -3
  255. package/src/quote/block.json +6 -0
  256. package/src/quote/style.scss +4 -0
  257. package/src/read-more/style.scss +1 -1
  258. package/src/search/index.php +40 -40
  259. package/src/search/view.js +58 -63
  260. package/src/template-part/edit/advanced-controls.js +1 -0
  261. package/src/template-part/edit/index.js +7 -14
  262. package/src/template-part/index.js +4 -3
  263. package/src/template-part/index.php +4 -4
  264. package/src/template-part/variations.js +4 -2
  265. package/src/utils/remove-anchor-tag.js +10 -0
  266. package/tsconfig.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"names":["ActivityIndicator","Platform","Text","TouchableWithoutFeedback","View","useState","useCallback","useEntityBlockEditor","useEntityProp","store","coreStore","BottomSheet","Icon","Disabled","TextControl","useSelect","useDispatch","__","sprintf","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","InnerBlocks","Warning","blockEditorStore","usePreferredColorSchemeStyle","help","reusableBlocksStore","editorStore","noticesStore","styles","EditTitle","ReusableBlockEdit","attributes","ref","clientId","isSelected","hasAlreadyRendered","showHelp","setShowHelp","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","actionButtonStyle","actionButton","actionButtonDark","spinnerStyle","spinner","spinnerDark","hasResolved","isEditing","isMissing","innerBlockCount","select","persistedBlock","getEntityRecord","hasResolvedBlock","hasFinishedResolution","getBlockCount","__experimentalIsEditingReusableBlock","hostAppNamespace","getEditorSettings","createSuccessNotice","__experimentalConvertBlockToStatic","convertBlockToStatic","clearSelectedBlock","blocks","onInput","onChange","id","title","openSheet","closeSheet","onConvertToRegularBlocks","successNotice","setImmediate","renderSheet","OS","createElement","isVisible","hideHeader","onClose","style","infoContainer","icon","color","size","label","separatorType","onPress","labelStyle","message","animating","element","value","uniqueId","disabled","accessibilityLabel","accessibilityRole","accessibilityHint"],"sources":["@wordpress/block-library/src/block/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tActivityIndicator,\n\tPlatform,\n\tText,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useCallback } from '@wordpress/element';\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport {\n\tBottomSheet,\n\tIcon,\n\tDisabled,\n\tTextControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tWarning,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { help } from '@wordpress/icons';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport styles from './editor.scss';\nimport EditTitle from './edit-title';\n\nexport default function ReusableBlockEdit( {\n\tattributes: { ref },\n\tclientId,\n\tisSelected,\n} ) {\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\n\tconst [ showHelp, setShowHelp ] = useState( false );\n\tconst infoTextStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoText,\n\t\tstyles.infoTextDark\n\t);\n\tconst infoTitleStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoTitle,\n\t\tstyles.infoTitleDark\n\t);\n\tconst infoSheetIconStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoSheetIcon,\n\t\tstyles.infoSheetIconDark\n\t);\n\tconst infoDescriptionStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoDescription,\n\t\tstyles.infoDescriptionDark\n\t);\n\tconst actionButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.actionButton,\n\t\tstyles.actionButtonDark\n\t);\n\tconst spinnerStyle = usePreferredColorSchemeStyle(\n\t\tstyles.spinner,\n\t\tstyles.spinnerDark\n\t);\n\n\tconst { hasResolved, isEditing, isMissing, innerBlockCount } = useSelect(\n\t\t( select ) => {\n\t\t\tconst persistedBlock = select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_block',\n\t\t\t\tref\n\t\t\t);\n\t\t\tconst hasResolvedBlock = select( coreStore ).hasFinishedResolution(\n\t\t\t\t'getEntityRecord',\n\t\t\t\t[ 'postType', 'wp_block', ref ]\n\t\t\t);\n\n\t\t\tconst { getBlockCount } = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\thasResolved: hasResolvedBlock,\n\t\t\t\tisEditing:\n\t\t\t\t\tselect(\n\t\t\t\t\t\treusableBlocksStore\n\t\t\t\t\t).__experimentalIsEditingReusableBlock( clientId ),\n\t\t\t\tisMissing: hasResolvedBlock && ! persistedBlock,\n\t\t\t\tinnerBlockCount: getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ ref, clientId ]\n\t);\n\tconst hostAppNamespace = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).getEditorSettings().hostAppNamespace,\n\t\t[]\n\t);\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst { __experimentalConvertBlockToStatic: convertBlockToStatic } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title ] = useEntityProp( 'postType', 'wp_block', 'title', ref );\n\n\tfunction openSheet() {\n\t\tsetShowHelp( true );\n\t}\n\n\tfunction closeSheet() {\n\t\tsetShowHelp( false );\n\t}\n\n\tconst onConvertToRegularBlocks = useCallback( () => {\n\t\t/* translators: %s: name of the synced block */\n\t\tconst successNotice = __( '%s detached' );\n\t\tcreateSuccessNotice( sprintf( successNotice, title ) );\n\n\t\tclearSelectedBlock();\n\t\t// Convert action is executed at the end of the current JavaScript execution block\n\t\t// to prevent issues related to undo/redo actions.\n\t\tsetImmediate( () => convertBlockToStatic( clientId ) );\n\t}, [ title, clientId ] );\n\n\tfunction renderSheet() {\n\t\tconst infoTitle =\n\t\t\tPlatform.OS === 'android'\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: %s: name of the host app (e.g. WordPress) */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Editing synced patterns is not yet supported on %s for Android'\n\t\t\t\t\t\t),\n\t\t\t\t\t\thostAppNamespace\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: %s: name of the host app (e.g. WordPress) */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Editing synced patterns is not yet supported on %s for iOS'\n\t\t\t\t\t\t),\n\t\t\t\t\t\thostAppNamespace\n\t\t\t\t );\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ closeSheet }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoDescriptionStyle ] }>\n\t\t\t\t\t\t{ innerBlockCount > 1\n\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t'Alternatively, you can detach and edit these blocks separately by tapping “Detach patterns”.'\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'Alternatively, you can detach and edit this block separately by tapping “Detach pattern”.'\n\t\t\t\t\t\t\t ) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tinnerBlockCount > 1\n\t\t\t\t\t\t\t\t? __( 'Detach patterns' )\n\t\t\t\t\t\t\t\t: __( 'Detach pattern' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\tonPress={ onConvertToRegularBlocks }\n\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<View style={ spinnerStyle }>\n\t\t\t\t<ActivityIndicator animating />\n\t\t\t</View>\n\t\t);\n\t}\n\n\tlet element = (\n\t\t<InnerBlocks\n\t\t\tvalue={ blocks }\n\t\t\tonChange={ onChange }\n\t\t\tonInput={ onInput }\n\t\t/>\n\t);\n\n\tif ( ! isEditing ) {\n\t\telement = <Disabled>{ element }</Disabled>;\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ openSheet }\n\t\t\t>\n\t\t\t\t<View>\n\t\t\t\t\t{ isSelected && <EditTitle title={ title } /> }\n\t\t\t\t\t{ element }\n\t\t\t\t\t{ renderSheet() }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["ActivityIndicator","Platform","Text","TouchableWithoutFeedback","View","useState","useCallback","useEntityBlockEditor","useEntityProp","store","coreStore","BottomSheet","Icon","Disabled","TextControl","useSelect","useDispatch","__","sprintf","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","InnerBlocks","Warning","blockEditorStore","usePreferredColorSchemeStyle","help","reusableBlocksStore","editorStore","noticesStore","styles","EditTitle","ReusableBlockEdit","attributes","ref","clientId","isSelected","hasAlreadyRendered","showHelp","setShowHelp","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","actionButtonStyle","actionButton","actionButtonDark","spinnerStyle","spinner","spinnerDark","hasResolved","isEditing","isMissing","select","persistedBlock","getEntityRecord","hasResolvedBlock","hasFinishedResolution","getBlockCount","__experimentalIsEditingReusableBlock","innerBlockCount","hostAppNamespace","getEditorSettings","createSuccessNotice","__experimentalConvertBlockToStatic","convertBlockToStatic","clearSelectedBlock","blocks","onInput","onChange","id","title","openSheet","closeSheet","onConvertToRegularBlocks","successNotice","setImmediate","renderSheet","OS","createElement","isVisible","hideHeader","onClose","style","infoContainer","icon","color","size","label","separatorType","onPress","labelStyle","message","animating","element","value","uniqueId","disabled","accessibilityLabel","accessibilityRole","accessibilityHint"],"sources":["@wordpress/block-library/src/block/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tActivityIndicator,\n\tPlatform,\n\tText,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useCallback } from '@wordpress/element';\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport {\n\tBottomSheet,\n\tIcon,\n\tDisabled,\n\tTextControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tWarning,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { help } from '@wordpress/icons';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport styles from './editor.scss';\nimport EditTitle from './edit-title';\n\nexport default function ReusableBlockEdit( {\n\tattributes: { ref },\n\tclientId,\n\tisSelected,\n} ) {\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\n\tconst [ showHelp, setShowHelp ] = useState( false );\n\tconst infoTextStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoText,\n\t\tstyles.infoTextDark\n\t);\n\tconst infoTitleStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoTitle,\n\t\tstyles.infoTitleDark\n\t);\n\tconst infoSheetIconStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoSheetIcon,\n\t\tstyles.infoSheetIconDark\n\t);\n\tconst infoDescriptionStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoDescription,\n\t\tstyles.infoDescriptionDark\n\t);\n\tconst actionButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.actionButton,\n\t\tstyles.actionButtonDark\n\t);\n\tconst spinnerStyle = usePreferredColorSchemeStyle(\n\t\tstyles.spinner,\n\t\tstyles.spinnerDark\n\t);\n\n\tconst { hasResolved, isEditing, isMissing } = useSelect(\n\t\t( select ) => {\n\t\t\tconst persistedBlock = select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_block',\n\t\t\t\tref\n\t\t\t);\n\t\t\tconst hasResolvedBlock = select( coreStore ).hasFinishedResolution(\n\t\t\t\t'getEntityRecord',\n\t\t\t\t[ 'postType', 'wp_block', ref ]\n\t\t\t);\n\n\t\t\tconst { getBlockCount } = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\thasResolved: hasResolvedBlock,\n\t\t\t\tisEditing:\n\t\t\t\t\tselect(\n\t\t\t\t\t\treusableBlocksStore\n\t\t\t\t\t).__experimentalIsEditingReusableBlock( clientId ),\n\t\t\t\tisMissing: hasResolvedBlock && ! persistedBlock,\n\t\t\t\tinnerBlockCount: getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ ref, clientId ]\n\t);\n\tconst hostAppNamespace = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).getEditorSettings().hostAppNamespace,\n\t\t[]\n\t);\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst { __experimentalConvertBlockToStatic: convertBlockToStatic } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title ] = useEntityProp( 'postType', 'wp_block', 'title', ref );\n\n\tfunction openSheet() {\n\t\tsetShowHelp( true );\n\t}\n\n\tfunction closeSheet() {\n\t\tsetShowHelp( false );\n\t}\n\n\tconst onConvertToRegularBlocks = useCallback( () => {\n\t\t/* translators: %s: name of the synced block */\n\t\tconst successNotice = __( '%s detached' );\n\t\tcreateSuccessNotice( sprintf( successNotice, title ) );\n\n\t\tclearSelectedBlock();\n\t\t// Convert action is executed at the end of the current JavaScript execution block\n\t\t// to prevent issues related to undo/redo actions.\n\t\tsetImmediate( () => convertBlockToStatic( clientId ) );\n\t}, [ title, clientId ] );\n\n\tfunction renderSheet() {\n\t\tconst infoTitle =\n\t\t\tPlatform.OS === 'android'\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: %s: name of the host app (e.g. WordPress) */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Editing synced patterns is not yet supported on %s for Android'\n\t\t\t\t\t\t),\n\t\t\t\t\t\thostAppNamespace\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: %s: name of the host app (e.g. WordPress) */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Editing synced patterns is not yet supported on %s for iOS'\n\t\t\t\t\t\t),\n\t\t\t\t\t\thostAppNamespace\n\t\t\t\t );\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ closeSheet }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoDescriptionStyle ] }>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Alternatively, you can detach and edit this block separately by tapping “Detach”.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={ __( 'Detach' ) }\n\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\tonPress={ onConvertToRegularBlocks }\n\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<View style={ spinnerStyle }>\n\t\t\t\t<ActivityIndicator animating />\n\t\t\t</View>\n\t\t);\n\t}\n\n\tlet element = (\n\t\t<InnerBlocks\n\t\t\tvalue={ blocks }\n\t\t\tonChange={ onChange }\n\t\t\tonInput={ onInput }\n\t\t/>\n\t);\n\n\tif ( ! isEditing ) {\n\t\telement = <Disabled>{ element }</Disabled>;\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ openSheet }\n\t\t\t>\n\t\t\t\t<View>\n\t\t\t\t\t{ isSelected && <EditTitle title={ title } /> }\n\t\t\t\t\t{ element }\n\t\t\t\t\t{ renderSheet() }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
@@ -9,6 +9,7 @@ import classnames from 'classnames';
9
9
  */
10
10
  import { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';
11
11
  import { getUpdatedLinkAttributes } from './get-updated-link-attributes';
12
+ import removeAnchorTag from '../utils/remove-anchor-tag';
12
13
 
13
14
  /**
14
15
  * WordPress dependencies
@@ -16,15 +17,64 @@ import { getUpdatedLinkAttributes } from './get-updated-link-attributes';
16
17
  import { __ } from '@wordpress/i18n';
17
18
  import { useEffect, useState, useRef, useMemo } from '@wordpress/element';
18
19
  import { Button, ButtonGroup, PanelBody, TextControl, ToolbarButton, Popover } from '@wordpress/components';
19
- import { AlignmentControl, BlockControls, InspectorControls, RichText, useBlockProps, __experimentalUseBorderProps as useBorderProps, __experimentalUseColorProps as useColorProps, __experimentalGetSpacingClassesAndStyles as useSpacingProps, __experimentalLinkControl as LinkControl, __experimentalGetElementClassName } from '@wordpress/block-editor';
20
- import { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';
20
+ import { AlignmentControl, BlockControls, InspectorControls, RichText, useBlockProps, __experimentalUseBorderProps as useBorderProps, __experimentalUseColorProps as useColorProps, __experimentalGetSpacingClassesAndStyles as useSpacingProps, __experimentalLinkControl as LinkControl, __experimentalGetElementClassName, store as blockEditorStore } from '@wordpress/block-editor';
21
+ import { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';
21
22
  import { link, linkOff } from '@wordpress/icons';
22
- import { createBlock } from '@wordpress/blocks';
23
- import { useMergeRefs } from '@wordpress/compose';
23
+ import { createBlock, cloneBlock, getDefaultBlockName } from '@wordpress/blocks';
24
+ import { useMergeRefs, useRefEffect } from '@wordpress/compose';
25
+ import { useSelect, useDispatch } from '@wordpress/data';
24
26
  const LINK_SETTINGS = [...LinkControl.DEFAULT_LINK_SETTINGS, {
25
27
  id: 'nofollow',
26
28
  title: __('Mark as nofollow')
27
29
  }];
30
+ function useEnter(props) {
31
+ const {
32
+ replaceBlocks,
33
+ selectionChange
34
+ } = useDispatch(blockEditorStore);
35
+ const {
36
+ getBlock,
37
+ getBlockRootClientId,
38
+ getBlockIndex
39
+ } = useSelect(blockEditorStore);
40
+ const propsRef = useRef(props);
41
+ propsRef.current = props;
42
+ return useRefEffect(element => {
43
+ function onKeyDown(event) {
44
+ if (event.defaultPrevented || event.keyCode !== ENTER) {
45
+ return;
46
+ }
47
+ const {
48
+ content,
49
+ clientId
50
+ } = propsRef.current;
51
+ if (content.length) {
52
+ return;
53
+ }
54
+ event.preventDefault();
55
+ const topParentListBlock = getBlock(getBlockRootClientId(clientId));
56
+ const blockIndex = getBlockIndex(clientId);
57
+ const head = cloneBlock({
58
+ ...topParentListBlock,
59
+ innerBlocks: topParentListBlock.innerBlocks.slice(0, blockIndex)
60
+ });
61
+ const middle = createBlock(getDefaultBlockName());
62
+ const after = topParentListBlock.innerBlocks.slice(blockIndex + 1);
63
+ const tail = after.length ? [cloneBlock({
64
+ ...topParentListBlock,
65
+ innerBlocks: after
66
+ })] : [];
67
+ replaceBlocks(topParentListBlock.clientId, [head, middle, ...tail], 1);
68
+ // We manually change the selection here because we are replacing
69
+ // a different block than the selected one.
70
+ selectionChange(middle.clientId);
71
+ }
72
+ element.addEventListener('keydown', onKeyDown);
73
+ return () => {
74
+ element.removeEventListener('keydown', onKeyDown);
75
+ };
76
+ }, []);
77
+ }
28
78
  function WidthPanel({
29
79
  selectedWidth,
30
80
  setAttributes
@@ -58,7 +108,8 @@ function ButtonEdit(props) {
58
108
  className,
59
109
  isSelected,
60
110
  onReplace,
61
- mergeBlocks
111
+ mergeBlocks,
112
+ clientId
62
113
  } = props;
63
114
  const {
64
115
  tagName,
@@ -72,12 +123,6 @@ function ButtonEdit(props) {
72
123
  width
73
124
  } = attributes;
74
125
  const TagName = tagName || 'a';
75
- function setButtonText(newText) {
76
- // Remove anchor tags from button text content.
77
- setAttributes({
78
- text: newText.replace(/<\/?a[^>]*>/g, '')
79
- });
80
- }
81
126
  function onKeyDown(event) {
82
127
  if (isKeyboardEvent.primary(event, 'k')) {
83
128
  startEditing(event);
@@ -129,6 +174,11 @@ function ButtonEdit(props) {
129
174
  opensInNewTab,
130
175
  nofollow
131
176
  }), [url, opensInNewTab, nofollow]);
177
+ const useEnterRef = useEnter({
178
+ content: text,
179
+ clientId
180
+ });
181
+ const mergedRef = useMergeRefs([useEnterRef, richTextRef]);
132
182
  return createElement(Fragment, null, createElement("div", {
133
183
  ...blockProps,
134
184
  className: classnames(blockProps.className, {
@@ -136,11 +186,13 @@ function ButtonEdit(props) {
136
186
  [`has-custom-font-size`]: blockProps.style.fontSize
137
187
  })
138
188
  }, createElement(RichText, {
139
- ref: richTextRef,
189
+ ref: mergedRef,
140
190
  "aria-label": __('Button text'),
141
191
  placeholder: placeholder || __('Add text…'),
142
192
  value: text,
143
- onChange: value => setButtonText(value),
193
+ onChange: value => setAttributes({
194
+ text: removeAnchorTag(value)
195
+ }),
144
196
  withoutInteractiveFormatting: true,
145
197
  className: classnames(className, 'wp-block-button__link', colorProps.className, borderProps.className, {
146
198
  [`has-text-align-${textAlign}`]: textAlign,
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","NEW_TAB_TARGET","NOFOLLOW_REL","getUpdatedLinkAttributes","__","useEffect","useState","useRef","useMemo","Button","ButtonGroup","PanelBody","TextControl","ToolbarButton","Popover","AlignmentControl","BlockControls","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","__experimentalGetSpacingClassesAndStyles","useSpacingProps","__experimentalLinkControl","LinkControl","__experimentalGetElementClassName","displayShortcut","isKeyboardEvent","link","linkOff","createBlock","useMergeRefs","LINK_SETTINGS","DEFAULT_LINK_SETTINGS","id","title","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","map","widthValue","key","size","variant","onClick","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","TagName","setButtonText","newText","replace","onKeyDown","event","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","nofollow","includes","isLinkTag","preventDefault","linkValue","Fragment","fontSize","value","onChange","withoutInteractiveFormatting","border","radius","onSplit","onMerge","identifier","group","nextAlign","name","icon","shortcut","isActive","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","newURL","newOpensInNewTab","newNofollow","onRemove","forceIsEditingLink","settings","__nextHasNoMarginBottom","label","newRel"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\nimport { getUpdatedLinkAttributes } from './get-updated-link-attributes';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs } from '@wordpress/compose';\n\nconst LINK_SETTINGS = [\n\t...LinkControl.DEFAULT_LINK_SETTINGS,\n\t{\n\t\tid: 'nofollow',\n\t\ttitle: __( 'Mark as nofollow' ),\n\t},\n];\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === NEW_TAB_TARGET;\n\tconst nofollow = !! rel?.includes( NOFOLLOW_REL );\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab, nofollow } ),\n\t\t[ url, opensInNewTab, nofollow ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag && isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\tsetAttributes(\n\t\t\t\t\t\t\t\tgetUpdatedLinkAttributes( {\n\t\t\t\t\t\t\t\t\trel,\n\t\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\t\tnofollow: newNofollow,\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\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t\tsettings={ LINK_SETTINGS }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","NEW_TAB_TARGET","NOFOLLOW_REL","getUpdatedLinkAttributes","removeAnchorTag","__","useEffect","useState","useRef","useMemo","Button","ButtonGroup","PanelBody","TextControl","ToolbarButton","Popover","AlignmentControl","BlockControls","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","__experimentalGetSpacingClassesAndStyles","useSpacingProps","__experimentalLinkControl","LinkControl","__experimentalGetElementClassName","store","blockEditorStore","displayShortcut","isKeyboardEvent","ENTER","link","linkOff","createBlock","cloneBlock","getDefaultBlockName","useMergeRefs","useRefEffect","useSelect","useDispatch","LINK_SETTINGS","DEFAULT_LINK_SETTINGS","id","title","useEnter","props","replaceBlocks","selectionChange","getBlock","getBlockRootClientId","getBlockIndex","propsRef","current","element","onKeyDown","event","defaultPrevented","keyCode","content","clientId","length","preventDefault","topParentListBlock","blockIndex","head","innerBlocks","slice","middle","after","tail","addEventListener","removeEventListener","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","map","widthValue","key","size","variant","onClick","ButtonEdit","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","TagName","primary","startEditing","primaryShift","unlink","richTextRef","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","nofollow","includes","isLinkTag","linkValue","useEnterRef","mergedRef","Fragment","fontSize","value","onChange","withoutInteractiveFormatting","border","radius","onSplit","onMerge","identifier","group","nextAlign","name","icon","shortcut","isActive","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","newURL","newOpensInNewTab","newNofollow","onRemove","forceIsEditingLink","settings","__nextHasNoMarginBottom","label","newRel"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\nimport { getUpdatedLinkAttributes } from './get-updated-link-attributes';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport {\n\tcreateBlock,\n\tcloneBlock,\n\tgetDefaultBlockName,\n} from '@wordpress/blocks';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst LINK_SETTINGS = [\n\t...LinkControl.DEFAULT_LINK_SETTINGS,\n\t{\n\t\tid: 'nofollow',\n\t\ttitle: __( 'Mark as nofollow' ),\n\t},\n];\n\nfunction useEnter( props ) {\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlock, getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.defaultPrevented || event.keyCode !== ENTER ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { content, clientId } = propsRef.current;\n\t\t\tif ( content.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tevent.preventDefault();\n\t\t\tconst topParentListBlock = getBlock(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst blockIndex = getBlockIndex( clientId );\n\t\t\tconst head = cloneBlock( {\n\t\t\t\t...topParentListBlock,\n\t\t\t\tinnerBlocks: topParentListBlock.innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\tblockIndex\n\t\t\t\t),\n\t\t\t} );\n\t\t\tconst middle = createBlock( getDefaultBlockName() );\n\t\t\tconst after = topParentListBlock.innerBlocks.slice(\n\t\t\t\tblockIndex + 1\n\t\t\t);\n\t\t\tconst tail = after.length\n\t\t\t\t? [\n\t\t\t\t\t\tcloneBlock( {\n\t\t\t\t\t\t\t...topParentListBlock,\n\t\t\t\t\t\t\tinnerBlocks: after,\n\t\t\t\t\t\t} ),\n\t\t\t\t ]\n\t\t\t\t: [];\n\t\t\treplaceBlocks(\n\t\t\t\ttopParentListBlock.clientId,\n\t\t\t\t[ head, middle, ...tail ],\n\t\t\t\t1\n\t\t\t);\n\t\t\t// We manually change the selection here because we are replacing\n\t\t\t// a different block than the selected one.\n\t\t\tselectionChange( middle.clientId );\n\t\t}\n\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tclientId,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === NEW_TAB_TARGET;\n\tconst nofollow = !! rel?.includes( NOFOLLOW_REL );\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab, nofollow } ),\n\t\t[ url, opensInNewTab, nofollow ]\n\t);\n\n\tconst useEnterRef = useEnter( { content: text, clientId } );\n\tconst mergedRef = useMergeRefs( [ useEnterRef, richTextRef ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ mergedRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttext: removeAnchorTag( value ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag && isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\tsetAttributes(\n\t\t\t\t\t\t\t\tgetUpdatedLinkAttributes( {\n\t\t\t\t\t\t\t\t\trel,\n\t\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\t\tnofollow: newNofollow,\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\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t\tsettings={ LINK_SETTINGS }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { createBlock } from '@wordpress/blocks';
5
+ import { create, toHTMLString } from '@wordpress/rich-text';
5
6
  const transforms = {
6
7
  from: [{
7
8
  type: 'enter',
@@ -9,12 +10,26 @@ const transforms = {
9
10
  transform: () => createBlock('core/code')
10
11
  }, {
11
12
  type: 'block',
12
- blocks: ['core/html', 'core/paragraph'],
13
+ blocks: ['core/paragraph'],
13
14
  transform: ({
14
15
  content
16
+ }) => createBlock('core/code', {
17
+ content
18
+ })
19
+ }, {
20
+ type: 'block',
21
+ blocks: ['core/html'],
22
+ transform: ({
23
+ content: text
15
24
  }) => {
16
25
  return createBlock('core/code', {
17
- content
26
+ // The HTML is plain text (with plain line breaks), so
27
+ // convert it to rich text.
28
+ content: toHTMLString({
29
+ value: create({
30
+ text
31
+ })
32
+ })
18
33
  });
19
34
  }
20
35
  }, {
@@ -37,11 +52,9 @@ const transforms = {
37
52
  blocks: ['core/paragraph'],
38
53
  transform: ({
39
54
  content
40
- }) => {
41
- return createBlock('core/paragraph', {
42
- content: content.replace(/\n/g, '<br>')
43
- });
44
- }
55
+ }) => createBlock('core/paragraph', {
56
+ content
57
+ })
45
58
  }]
46
59
  };
47
60
  export default transforms;
@@ -1 +1 @@
1
- {"version":3,"names":["createBlock","transforms","from","type","regExp","transform","blocks","content","isMatch","node","nodeName","children","length","firstChild","schema","pre","code","to","replace"],"sources":["@wordpress/block-library/src/code/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'enter',\n\t\t\tregExp: /^```$/,\n\t\t\ttransform: () => createBlock( 'core/code' ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/html', 'core/paragraph' ],\n\t\t\ttransform: ( { content } ) => {\n\t\t\t\treturn createBlock( 'core/code', {\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tisMatch: ( node ) =>\n\t\t\t\tnode.nodeName === 'PRE' &&\n\t\t\t\tnode.children.length === 1 &&\n\t\t\t\tnode.firstChild.nodeName === 'CODE',\n\t\t\tschema: {\n\t\t\t\tpre: {\n\t\t\t\t\tchildren: {\n\t\t\t\t\t\tcode: {\n\t\t\t\t\t\t\tchildren: {\n\t\t\t\t\t\t\t\t'#text': {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( { content } ) => {\n\t\t\t\treturn createBlock( 'core/paragraph', {\n\t\t\t\t\tcontent: content.replace( /\\n/g, '<br>' ),\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,mBAAmB;AAE/C,MAAMC,UAAU,GAAG;EAClBC,IAAI,EAAE,CACL;IACCC,IAAI,EAAE,OAAO;IACbC,MAAM,EAAE,OAAO;IACfC,SAAS,EAAEA,CAAA,KAAML,WAAW,CAAE,WAAY;EAC3C,CAAC,EACD;IACCG,IAAI,EAAE,OAAO;IACbG,MAAM,EAAE,CAAE,WAAW,EAAE,gBAAgB,CAAE;IACzCD,SAAS,EAAEA,CAAE;MAAEE;IAAQ,CAAC,KAAM;MAC7B,OAAOP,WAAW,CAAE,WAAW,EAAE;QAChCO;MACD,CAAE,CAAC;IACJ;EACD,CAAC,EACD;IACCJ,IAAI,EAAE,KAAK;IACXK,OAAO,EAAIC,IAAI,IACdA,IAAI,CAACC,QAAQ,KAAK,KAAK,IACvBD,IAAI,CAACE,QAAQ,CAACC,MAAM,KAAK,CAAC,IAC1BH,IAAI,CAACI,UAAU,CAACH,QAAQ,KAAK,MAAM;IACpCI,MAAM,EAAE;MACPC,GAAG,EAAE;QACJJ,QAAQ,EAAE;UACTK,IAAI,EAAE;YACLL,QAAQ,EAAE;cACT,OAAO,EAAE,CAAC;YACX;UACD;QACD;MACD;IACD;EACD,CAAC,CACD;EACDM,EAAE,EAAE,CACH;IACCd,IAAI,EAAE,OAAO;IACbG,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BD,SAAS,EAAEA,CAAE;MAAEE;IAAQ,CAAC,KAAM;MAC7B,OAAOP,WAAW,CAAE,gBAAgB,EAAE;QACrCO,OAAO,EAAEA,OAAO,CAACW,OAAO,CAAE,KAAK,EAAE,MAAO;MACzC,CAAE,CAAC;IACJ;EACD,CAAC;AAEH,CAAC;AAED,eAAejB,UAAU"}
1
+ {"version":3,"names":["createBlock","create","toHTMLString","transforms","from","type","regExp","transform","blocks","content","text","value","isMatch","node","nodeName","children","length","firstChild","schema","pre","code","to"],"sources":["@wordpress/block-library/src/code/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { create, toHTMLString } from '@wordpress/rich-text';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'enter',\n\t\t\tregExp: /^```$/,\n\t\t\ttransform: () => createBlock( 'core/code' ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( { content } ) =>\n\t\t\t\tcreateBlock( 'core/code', { content } ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/html' ],\n\t\t\ttransform: ( { content: text } ) => {\n\t\t\t\treturn createBlock( 'core/code', {\n\t\t\t\t\t// The HTML is plain text (with plain line breaks), so\n\t\t\t\t\t// convert it to rich text.\n\t\t\t\t\tcontent: toHTMLString( { value: create( { text } ) } ),\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tisMatch: ( node ) =>\n\t\t\t\tnode.nodeName === 'PRE' &&\n\t\t\t\tnode.children.length === 1 &&\n\t\t\t\tnode.firstChild.nodeName === 'CODE',\n\t\t\tschema: {\n\t\t\t\tpre: {\n\t\t\t\t\tchildren: {\n\t\t\t\t\t\tcode: {\n\t\t\t\t\t\t\tchildren: {\n\t\t\t\t\t\t\t\t'#text': {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( { content } ) =>\n\t\t\t\tcreateBlock( 'core/paragraph', { content } ),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,MAAM,EAAEC,YAAY,QAAQ,sBAAsB;AAE3D,MAAMC,UAAU,GAAG;EAClBC,IAAI,EAAE,CACL;IACCC,IAAI,EAAE,OAAO;IACbC,MAAM,EAAE,OAAO;IACfC,SAAS,EAAEA,CAAA,KAAMP,WAAW,CAAE,WAAY;EAC3C,CAAC,EACD;IACCK,IAAI,EAAE,OAAO;IACbG,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BD,SAAS,EAAEA,CAAE;MAAEE;IAAQ,CAAC,KACvBT,WAAW,CAAE,WAAW,EAAE;MAAES;IAAQ,CAAE;EACxC,CAAC,EACD;IACCJ,IAAI,EAAE,OAAO;IACbG,MAAM,EAAE,CAAE,WAAW,CAAE;IACvBD,SAAS,EAAEA,CAAE;MAAEE,OAAO,EAAEC;IAAK,CAAC,KAAM;MACnC,OAAOV,WAAW,CAAE,WAAW,EAAE;QAChC;QACA;QACAS,OAAO,EAAEP,YAAY,CAAE;UAAES,KAAK,EAAEV,MAAM,CAAE;YAAES;UAAK,CAAE;QAAE,CAAE;MACtD,CAAE,CAAC;IACJ;EACD,CAAC,EACD;IACCL,IAAI,EAAE,KAAK;IACXO,OAAO,EAAIC,IAAI,IACdA,IAAI,CAACC,QAAQ,KAAK,KAAK,IACvBD,IAAI,CAACE,QAAQ,CAACC,MAAM,KAAK,CAAC,IAC1BH,IAAI,CAACI,UAAU,CAACH,QAAQ,KAAK,MAAM;IACpCI,MAAM,EAAE;MACPC,GAAG,EAAE;QACJJ,QAAQ,EAAE;UACTK,IAAI,EAAE;YACLL,QAAQ,EAAE;cACT,OAAO,EAAE,CAAC;YACX;UACD;QACD;MACD;IACD;EACD,CAAC,CACD;EACDM,EAAE,EAAE,CACH;IACChB,IAAI,EAAE,OAAO;IACbG,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BD,SAAS,EAAEA,CAAE;MAAEE;IAAQ,CAAC,KACvBT,WAAW,CAAE,gBAAgB,EAAE;MAAES;IAAQ,CAAE;EAC7C,CAAC;AAEH,CAAC;AAED,eAAeN,UAAU"}
@@ -81,7 +81,7 @@ function ColumnEdit({
81
81
  value: verticalAlignment,
82
82
  controls: ['top', 'center', 'bottom', 'stretch']
83
83
  })), createElement(InspectorControls, null, createElement(PanelBody, {
84
- title: __('Column settings')
84
+ title: __('Settings')
85
85
  }, createElement(UnitControl, {
86
86
  label: __('Width'),
87
87
  labelPosition: "edge",
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","InnerBlocks","BlockControls","BlockVerticalAlignmentToolbar","InspectorControls","useBlockProps","useSettings","useInnerBlocksProps","store","blockEditorStore","__experimentalUseCustomUnits","useCustomUnits","PanelBody","__experimentalUnitControl","UnitControl","useSelect","useDispatch","sprintf","__","ColumnEdit","attributes","verticalAlignment","width","templateLock","allowedBlocks","setAttributes","clientId","classes","availableUnits","units","columnsIds","hasChildBlocks","rootClientId","select","getBlockOrder","getBlockRootClientId","rootId","length","updateBlockAttributes","updateAlignment","value","widthWithUnit","Number","isFinite","blockProps","className","style","flexBasis","undefined","columnsCount","currentColumnPosition","indexOf","label","innerBlocksProps","renderAppender","ButtonBlockAppender","createElement","Fragment","onChange","controls","title","labelPosition","__unstableInputWidth","nextWidth","parseFloat"],"sources":["@wordpress/block-library/src/column/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSettings,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\t__experimentalUseCustomUnits as useCustomUnits,\n\tPanelBody,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { sprintf, __ } from '@wordpress/i18n';\n\nfunction ColumnEdit( {\n\tattributes: { verticalAlignment, width, templateLock, allowedBlocks },\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst classes = classnames( 'block-core-columns', {\n\t\t[ `is-vertically-aligned-${ verticalAlignment }` ]: verticalAlignment,\n\t} );\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ '%', 'px', 'em', 'rem', 'vw' ],\n\t} );\n\n\tconst { columnsIds, hasChildBlocks, rootClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockOrder, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootId = getBlockRootClientId( clientId );\n\n\t\t\treturn {\n\t\t\t\thasChildBlocks: getBlockOrder( clientId ).length > 0,\n\t\t\t\trootClientId: rootId,\n\t\t\t\tcolumnsIds: getBlockOrder( rootId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\tconst updateAlignment = ( value ) => {\n\t\t// Update own alignment.\n\t\tsetAttributes( { verticalAlignment: value } );\n\t\t// Reset parent Columns block.\n\t\tupdateBlockAttributes( rootClientId, {\n\t\t\tverticalAlignment: null,\n\t\t} );\n\t};\n\n\tconst widthWithUnit = Number.isFinite( width ) ? width + '%' : width;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t\tstyle: widthWithUnit ? { flexBasis: widthWithUnit } : undefined,\n\t} );\n\n\tconst columnsCount = columnsIds.length;\n\tconst currentColumnPosition = columnsIds.indexOf( clientId ) + 1;\n\n\tconst label = sprintf(\n\t\t/* translators: 1: Block label (i.e. \"Block: Column\"), 2: Position of the selected block, 3: Total number of sibling blocks of the same type */\n\t\t__( '%1$s (%2$d of %3$d)' ),\n\t\tblockProps[ 'aria-label' ],\n\t\tcurrentColumnPosition,\n\t\tcolumnsCount\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ ...blockProps, 'aria-label': label },\n\t\t{\n\t\t\ttemplateLock,\n\t\t\tallowedBlocks,\n\t\t\trenderAppender: hasChildBlocks\n\t\t\t\t? undefined\n\t\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\tcontrols={ [ 'top', 'center', 'bottom', 'stretch' ] }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Column settings' ) }>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\t\tnextWidth =\n\t\t\t\t\t\t\t\t0 > parseFloat( nextWidth ) ? '0' : nextWidth;\n\t\t\t\t\t\t\tsetAttributes( { width: nextWidth } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nexport default ColumnEdit;\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","InnerBlocks","BlockControls","BlockVerticalAlignmentToolbar","InspectorControls","useBlockProps","useSettings","useInnerBlocksProps","store","blockEditorStore","__experimentalUseCustomUnits","useCustomUnits","PanelBody","__experimentalUnitControl","UnitControl","useSelect","useDispatch","sprintf","__","ColumnEdit","attributes","verticalAlignment","width","templateLock","allowedBlocks","setAttributes","clientId","classes","availableUnits","units","columnsIds","hasChildBlocks","rootClientId","select","getBlockOrder","getBlockRootClientId","rootId","length","updateBlockAttributes","updateAlignment","value","widthWithUnit","Number","isFinite","blockProps","className","style","flexBasis","undefined","columnsCount","currentColumnPosition","indexOf","label","innerBlocksProps","renderAppender","ButtonBlockAppender","createElement","Fragment","onChange","controls","title","labelPosition","__unstableInputWidth","nextWidth","parseFloat"],"sources":["@wordpress/block-library/src/column/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSettings,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\t__experimentalUseCustomUnits as useCustomUnits,\n\tPanelBody,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { sprintf, __ } from '@wordpress/i18n';\n\nfunction ColumnEdit( {\n\tattributes: { verticalAlignment, width, templateLock, allowedBlocks },\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst classes = classnames( 'block-core-columns', {\n\t\t[ `is-vertically-aligned-${ verticalAlignment }` ]: verticalAlignment,\n\t} );\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ '%', 'px', 'em', 'rem', 'vw' ],\n\t} );\n\n\tconst { columnsIds, hasChildBlocks, rootClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockOrder, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootId = getBlockRootClientId( clientId );\n\n\t\t\treturn {\n\t\t\t\thasChildBlocks: getBlockOrder( clientId ).length > 0,\n\t\t\t\trootClientId: rootId,\n\t\t\t\tcolumnsIds: getBlockOrder( rootId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\tconst updateAlignment = ( value ) => {\n\t\t// Update own alignment.\n\t\tsetAttributes( { verticalAlignment: value } );\n\t\t// Reset parent Columns block.\n\t\tupdateBlockAttributes( rootClientId, {\n\t\t\tverticalAlignment: null,\n\t\t} );\n\t};\n\n\tconst widthWithUnit = Number.isFinite( width ) ? width + '%' : width;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t\tstyle: widthWithUnit ? { flexBasis: widthWithUnit } : undefined,\n\t} );\n\n\tconst columnsCount = columnsIds.length;\n\tconst currentColumnPosition = columnsIds.indexOf( clientId ) + 1;\n\n\tconst label = sprintf(\n\t\t/* translators: 1: Block label (i.e. \"Block: Column\"), 2: Position of the selected block, 3: Total number of sibling blocks of the same type */\n\t\t__( '%1$s (%2$d of %3$d)' ),\n\t\tblockProps[ 'aria-label' ],\n\t\tcurrentColumnPosition,\n\t\tcolumnsCount\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ ...blockProps, 'aria-label': label },\n\t\t{\n\t\t\ttemplateLock,\n\t\t\tallowedBlocks,\n\t\t\trenderAppender: hasChildBlocks\n\t\t\t\t? undefined\n\t\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\tcontrols={ [ 'top', 'center', 'bottom', 'stretch' ] }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\t\tnextWidth =\n\t\t\t\t\t\t\t\t0 > parseFloat( nextWidth ) ? '0' : nextWidth;\n\t\t\t\t\t\t\tsetAttributes( { width: nextWidth } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nexport default ColumnEdit;\n"],"mappings":"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"}
@@ -104,7 +104,7 @@ function ColumnEdit({
104
104
  onChange: updateAlignment,
105
105
  value: verticalAlignment
106
106
  })), createElement(InspectorControls, null, createElement(PanelBody, {
107
- title: __('Column settings')
107
+ title: __('Settings')
108
108
  }, createElement(UnitControl, {
109
109
  label: __('Width'),
110
110
  min: 1,
@@ -1 +1 @@
1
- {"version":3,"names":["View","Dimensions","withSelect","compose","withPreferredColorScheme","useEffect","useState","useCallback","InnerBlocks","BlockControls","BlockVerticalAlignmentToolbar","InspectorControls","store","blockEditorStore","useSettings","PanelBody","FooterMessageControl","UnitControl","getValueAndUnit","__experimentalUseCustomUnits","useCustomUnits","__","styles","ColumnsPreview","getWidths","getWidthWithUnit","isPercentageUnit","ColumnEdit","attributes","setAttributes","hasChildren","isSelected","getStylesFromColorScheme","contentStyle","columns","selectedColumnIndex","parentAlignment","clientId","blockWidth","verticalAlignment","width","valueUnit","screenWidth","Math","floor","get","widthUnit","setWidthUnit","availableUnits","units","updateAlignment","alignment","onChangeWidth","nextWidth","widthWithUnit","onChangeUnit","nextUnit","widthWithoutUnit","parseFloat","onChange","renderAppender","columnWidth","isFullWidth","createElement","style","columnAppender","fullwidthColumnAppender","fullwidthHasInnerColumnAppender","hasInnerColumnAppender","ButtonBlockAppender","columnPlaceholder","columnPlaceholderDark","parentWidth","Fragment","value","title","label","min","max","undefined","onComplete","onUnitChange","unit","preview","columnWidths","innerBlocksBottomSpace","ColumnEditWrapper","props","getVerticalAlignmentRemap","flexBase","select","getBlockCount","getBlockRootClientId","getSelectedBlockClientId","getBlocks","getBlockOrder","getBlockAttributes","selectedBlockClientId","parentId","blockOrder","indexOf"],"sources":["@wordpress/block-library/src/column/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\nimport {\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tInspectorControls,\n\tstore as blockEditorStore,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n/**\n * Internal dependencies\n */\nimport styles from './editor.scss';\nimport ColumnsPreview from './column-preview';\nimport {\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from '../columns/utils';\n\nfunction ColumnEdit( {\n\tattributes,\n\tsetAttributes,\n\thasChildren,\n\tisSelected,\n\tgetStylesFromColorScheme,\n\tcontentStyle,\n\tcolumns,\n\tselectedColumnIndex,\n\tparentAlignment,\n\tclientId,\n\tblockWidth,\n} ) {\n\tif ( ! contentStyle ) {\n\t\tcontentStyle = { [ clientId ]: {} };\n\t}\n\n\tconst { verticalAlignment, width } = attributes;\n\tconst { valueUnit = '%' } = getValueAndUnit( width ) || {};\n\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\n\tconst [ widthUnit, setWidthUnit ] = useState( valueUnit || '%' );\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ '%', 'px', 'em', 'rem', 'vw' ],\n\t} );\n\n\tconst updateAlignment = ( alignment ) => {\n\t\tsetAttributes( { verticalAlignment: alignment } );\n\t};\n\n\tuseEffect( () => {\n\t\tsetWidthUnit( valueUnit );\n\t}, [ valueUnit ] );\n\n\tuseEffect( () => {\n\t\tif ( ! verticalAlignment && parentAlignment ) {\n\t\t\tupdateAlignment( parentAlignment );\n\t\t}\n\t}, [] );\n\n\tconst onChangeWidth = ( nextWidth ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, widthUnit );\n\n\t\tsetAttributes( {\n\t\t\twidth: widthWithUnit,\n\t\t} );\n\t};\n\n\tconst onChangeUnit = ( nextUnit ) => {\n\t\tsetWidthUnit( nextUnit );\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\twidth || getWidths( columns )[ selectedColumnIndex ]\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\twidth: getWidthWithUnit( widthWithoutUnit, nextUnit ),\n\t\t} );\n\t};\n\n\tconst onChange = ( nextWidth ) => {\n\t\tif ( isPercentageUnit( widthUnit ) || ! widthUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth );\n\t};\n\n\tconst renderAppender = useCallback( () => {\n\t\tif ( isSelected ) {\n\t\t\tconst { width: columnWidth } = contentStyle[ clientId ] || {};\n\t\t\tconst isFullWidth = columnWidth === screenWidth;\n\n\t\t\treturn (\n\t\t\t\t<View\n\t\t\t\t\tstyle={ [\n\t\t\t\t\t\tstyles.columnAppender,\n\t\t\t\t\t\tisFullWidth && styles.fullwidthColumnAppender,\n\t\t\t\t\t\tisFullWidth &&\n\t\t\t\t\t\t\thasChildren &&\n\t\t\t\t\t\t\tstyles.fullwidthHasInnerColumnAppender,\n\t\t\t\t\t\t! isFullWidth &&\n\t\t\t\t\t\t\thasChildren &&\n\t\t\t\t\t\t\tstyles.hasInnerColumnAppender,\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender />\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}, [ contentStyle, clientId, screenWidth, isSelected, hasChildren ] );\n\n\tif ( ! isSelected && ! hasChildren ) {\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\tgetStylesFromColorScheme(\n\t\t\t\t\t\tstyles.columnPlaceholder,\n\t\t\t\t\t\tstyles.columnPlaceholderDark\n\t\t\t\t\t),\n\t\t\t\t\tcontentStyle[ clientId ],\n\t\t\t\t] }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst parentWidth =\n\t\tcontentStyle &&\n\t\tcontentStyle[ clientId ] &&\n\t\tcontentStyle[ clientId ].width;\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Column settings' ) }>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit )\n\t\t\t\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t\tonComplete={ onChangeWidth }\n\t\t\t\t\t\t\t\tonUnitChange={ onChangeUnit }\n\t\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\t\tgetWidths( columns )[ selectedColumnIndex ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tunit={ widthUnit }\n\t\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\t\tpreview={\n\t\t\t\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\t\t\t\tcolumnWidths={ getWidths(\n\t\t\t\t\t\t\t\t\t\t\tcolumns,\n\t\t\t\t\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tselectedColumnIndex={\n\t\t\t\t\t\t\t\t\t\t\tselectedColumnIndex\n\t\t\t\t\t\t\t\t\t\t}\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</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\tisSelected && hasChildren && styles.innerBlocksBottomSpace,\n\t\t\t\t\tcontentStyle[ clientId ],\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t<InnerBlocks\n\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nfunction ColumnEditWrapper( props ) {\n\tconst { verticalAlignment } = props.attributes;\n\n\tconst getVerticalAlignmentRemap = ( alignment ) => {\n\t\tif ( ! alignment ) return styles.flexBase;\n\t\treturn {\n\t\t\t...styles.flexBase,\n\t\t\t...styles[ `is-vertically-aligned-${ alignment }` ],\n\t\t};\n\t};\n\n\treturn (\n\t\t<View style={ getVerticalAlignmentRemap( verticalAlignment ) }>\n\t\t\t<ColumnEdit { ...props } />\n\t\t</View>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst {\n\t\t\tgetBlockCount,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetBlocks,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockAttributes,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\tconst isSelected = selectedBlockClientId === clientId;\n\n\t\tconst parentId = getBlockRootClientId( clientId );\n\t\tconst hasChildren = !! getBlockCount( clientId );\n\n\t\tconst blockOrder = getBlockOrder( parentId );\n\n\t\tconst selectedColumnIndex = blockOrder.indexOf( clientId );\n\t\tconst columns = getBlocks( parentId );\n\n\t\tconst parentAlignment =\n\t\t\tgetBlockAttributes( parentId )?.verticalAlignment;\n\n\t\treturn {\n\t\t\thasChildren,\n\t\t\tisSelected,\n\t\t\tselectedColumnIndex,\n\t\t\tcolumns,\n\t\t\tparentAlignment,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( ColumnEditWrapper );\n"],"mappings":"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"}
1
+ {"version":3,"names":["View","Dimensions","withSelect","compose","withPreferredColorScheme","useEffect","useState","useCallback","InnerBlocks","BlockControls","BlockVerticalAlignmentToolbar","InspectorControls","store","blockEditorStore","useSettings","PanelBody","FooterMessageControl","UnitControl","getValueAndUnit","__experimentalUseCustomUnits","useCustomUnits","__","styles","ColumnsPreview","getWidths","getWidthWithUnit","isPercentageUnit","ColumnEdit","attributes","setAttributes","hasChildren","isSelected","getStylesFromColorScheme","contentStyle","columns","selectedColumnIndex","parentAlignment","clientId","blockWidth","verticalAlignment","width","valueUnit","screenWidth","Math","floor","get","widthUnit","setWidthUnit","availableUnits","units","updateAlignment","alignment","onChangeWidth","nextWidth","widthWithUnit","onChangeUnit","nextUnit","widthWithoutUnit","parseFloat","onChange","renderAppender","columnWidth","isFullWidth","createElement","style","columnAppender","fullwidthColumnAppender","fullwidthHasInnerColumnAppender","hasInnerColumnAppender","ButtonBlockAppender","columnPlaceholder","columnPlaceholderDark","parentWidth","Fragment","value","title","label","min","max","undefined","onComplete","onUnitChange","unit","preview","columnWidths","innerBlocksBottomSpace","ColumnEditWrapper","props","getVerticalAlignmentRemap","flexBase","select","getBlockCount","getBlockRootClientId","getSelectedBlockClientId","getBlocks","getBlockOrder","getBlockAttributes","selectedBlockClientId","parentId","blockOrder","indexOf"],"sources":["@wordpress/block-library/src/column/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\nimport {\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tInspectorControls,\n\tstore as blockEditorStore,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n/**\n * Internal dependencies\n */\nimport styles from './editor.scss';\nimport ColumnsPreview from './column-preview';\nimport {\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from '../columns/utils';\n\nfunction ColumnEdit( {\n\tattributes,\n\tsetAttributes,\n\thasChildren,\n\tisSelected,\n\tgetStylesFromColorScheme,\n\tcontentStyle,\n\tcolumns,\n\tselectedColumnIndex,\n\tparentAlignment,\n\tclientId,\n\tblockWidth,\n} ) {\n\tif ( ! contentStyle ) {\n\t\tcontentStyle = { [ clientId ]: {} };\n\t}\n\n\tconst { verticalAlignment, width } = attributes;\n\tconst { valueUnit = '%' } = getValueAndUnit( width ) || {};\n\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\n\tconst [ widthUnit, setWidthUnit ] = useState( valueUnit || '%' );\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ '%', 'px', 'em', 'rem', 'vw' ],\n\t} );\n\n\tconst updateAlignment = ( alignment ) => {\n\t\tsetAttributes( { verticalAlignment: alignment } );\n\t};\n\n\tuseEffect( () => {\n\t\tsetWidthUnit( valueUnit );\n\t}, [ valueUnit ] );\n\n\tuseEffect( () => {\n\t\tif ( ! verticalAlignment && parentAlignment ) {\n\t\t\tupdateAlignment( parentAlignment );\n\t\t}\n\t}, [] );\n\n\tconst onChangeWidth = ( nextWidth ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, widthUnit );\n\n\t\tsetAttributes( {\n\t\t\twidth: widthWithUnit,\n\t\t} );\n\t};\n\n\tconst onChangeUnit = ( nextUnit ) => {\n\t\tsetWidthUnit( nextUnit );\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\twidth || getWidths( columns )[ selectedColumnIndex ]\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\twidth: getWidthWithUnit( widthWithoutUnit, nextUnit ),\n\t\t} );\n\t};\n\n\tconst onChange = ( nextWidth ) => {\n\t\tif ( isPercentageUnit( widthUnit ) || ! widthUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth );\n\t};\n\n\tconst renderAppender = useCallback( () => {\n\t\tif ( isSelected ) {\n\t\t\tconst { width: columnWidth } = contentStyle[ clientId ] || {};\n\t\t\tconst isFullWidth = columnWidth === screenWidth;\n\n\t\t\treturn (\n\t\t\t\t<View\n\t\t\t\t\tstyle={ [\n\t\t\t\t\t\tstyles.columnAppender,\n\t\t\t\t\t\tisFullWidth && styles.fullwidthColumnAppender,\n\t\t\t\t\t\tisFullWidth &&\n\t\t\t\t\t\t\thasChildren &&\n\t\t\t\t\t\t\tstyles.fullwidthHasInnerColumnAppender,\n\t\t\t\t\t\t! isFullWidth &&\n\t\t\t\t\t\t\thasChildren &&\n\t\t\t\t\t\t\tstyles.hasInnerColumnAppender,\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender />\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}, [ contentStyle, clientId, screenWidth, isSelected, hasChildren ] );\n\n\tif ( ! isSelected && ! hasChildren ) {\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\tgetStylesFromColorScheme(\n\t\t\t\t\t\tstyles.columnPlaceholder,\n\t\t\t\t\t\tstyles.columnPlaceholderDark\n\t\t\t\t\t),\n\t\t\t\t\tcontentStyle[ clientId ],\n\t\t\t\t] }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst parentWidth =\n\t\tcontentStyle &&\n\t\tcontentStyle[ clientId ] &&\n\t\tcontentStyle[ clientId ].width;\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit )\n\t\t\t\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t\tonComplete={ onChangeWidth }\n\t\t\t\t\t\t\t\tonUnitChange={ onChangeUnit }\n\t\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\t\tgetWidths( columns )[ selectedColumnIndex ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tunit={ widthUnit }\n\t\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\t\tpreview={\n\t\t\t\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\t\t\t\tcolumnWidths={ getWidths(\n\t\t\t\t\t\t\t\t\t\t\tcolumns,\n\t\t\t\t\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tselectedColumnIndex={\n\t\t\t\t\t\t\t\t\t\t\tselectedColumnIndex\n\t\t\t\t\t\t\t\t\t\t}\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</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\tisSelected && hasChildren && styles.innerBlocksBottomSpace,\n\t\t\t\t\tcontentStyle[ clientId ],\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t<InnerBlocks\n\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nfunction ColumnEditWrapper( props ) {\n\tconst { verticalAlignment } = props.attributes;\n\n\tconst getVerticalAlignmentRemap = ( alignment ) => {\n\t\tif ( ! alignment ) return styles.flexBase;\n\t\treturn {\n\t\t\t...styles.flexBase,\n\t\t\t...styles[ `is-vertically-aligned-${ alignment }` ],\n\t\t};\n\t};\n\n\treturn (\n\t\t<View style={ getVerticalAlignmentRemap( verticalAlignment ) }>\n\t\t\t<ColumnEdit { ...props } />\n\t\t</View>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst {\n\t\t\tgetBlockCount,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetBlocks,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockAttributes,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\tconst isSelected = selectedBlockClientId === clientId;\n\n\t\tconst parentId = getBlockRootClientId( clientId );\n\t\tconst hasChildren = !! getBlockCount( clientId );\n\n\t\tconst blockOrder = getBlockOrder( parentId );\n\n\t\tconst selectedColumnIndex = blockOrder.indexOf( clientId );\n\t\tconst columns = getBlocks( parentId );\n\n\t\tconst parentAlignment =\n\t\t\tgetBlockAttributes( parentId )?.verticalAlignment;\n\n\t\treturn {\n\t\t\thasChildren,\n\t\t\tisSelected,\n\t\t\tselectedColumnIndex,\n\t\t\tcolumns,\n\t\t\tparentAlignment,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( ColumnEditWrapper );\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,IAAI,EAAEC,UAAU,QAAQ,cAAc;;AAE/C;AACA;AACA;AACA,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,OAAO,EAAEC,wBAAwB,QAAQ,oBAAoB;AACtE,SAASC,SAAS,EAAEC,QAAQ,EAAEC,WAAW,QAAQ,oBAAoB;AACrE,SACCC,WAAW,EACXC,aAAa,EACbC,6BAA6B,EAC7BC,iBAAiB,EACjBC,KAAK,IAAIC,gBAAgB,EACzBC,WAAW,QACL,yBAAyB;AAChC,SACCC,SAAS,EACTC,oBAAoB,EACpBC,WAAW,EACXC,eAAe,EACfC,4BAA4B,IAAIC,cAAc,QACxC,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC;AACA;AACA;AACA,OAAOC,MAAM,MAAM,eAAe;AAClC,OAAOC,cAAc,MAAM,kBAAkB;AAC7C,SACCC,SAAS,EACTC,gBAAgB,EAChBC,gBAAgB,QACV,kBAAkB;AAEzB,SAASC,UAAUA,CAAE;EACpBC,UAAU;EACVC,aAAa;EACbC,WAAW;EACXC,UAAU;EACVC,wBAAwB;EACxBC,YAAY;EACZC,OAAO;EACPC,mBAAmB;EACnBC,eAAe;EACfC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,IAAK,CAAEL,YAAY,EAAG;IACrBA,YAAY,GAAG;MAAE,CAAEI,QAAQ,GAAI,CAAC;IAAE,CAAC;EACpC;EAEA,MAAM;IAAEE,iBAAiB;IAAEC;EAAM,CAAC,GAAGZ,UAAU;EAC/C,MAAM;IAAEa,SAAS,GAAG;EAAI,CAAC,GAAGvB,eAAe,CAAEsB,KAAM,CAAC,IAAI,CAAC,CAAC;EAE1D,MAAME,WAAW,GAAGC,IAAI,CAACC,KAAK,CAAE3C,UAAU,CAAC4C,GAAG,CAAE,QAAS,CAAC,CAACL,KAAM,CAAC;EAElE,MAAM,CAAEM,SAAS,EAAEC,YAAY,CAAE,GAAGzC,QAAQ,CAAEmC,SAAS,IAAI,GAAI,CAAC;EAEhE,MAAM,CAAEO,cAAc,CAAE,GAAGlC,WAAW,CAAE,eAAgB,CAAC;EACzD,MAAMmC,KAAK,GAAG7B,cAAc,CAAE;IAC7B4B,cAAc,EAAEA,cAAc,IAAI,CAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI;EACjE,CAAE,CAAC;EAEH,MAAME,eAAe,GAAKC,SAAS,IAAM;IACxCtB,aAAa,CAAE;MAAEU,iBAAiB,EAAEY;IAAU,CAAE,CAAC;EAClD,CAAC;EAED9C,SAAS,CAAE,MAAM;IAChB0C,YAAY,CAAEN,SAAU,CAAC;EAC1B,CAAC,EAAE,CAAEA,SAAS,CAAG,CAAC;EAElBpC,SAAS,CAAE,MAAM;IAChB,IAAK,CAAEkC,iBAAiB,IAAIH,eAAe,EAAG;MAC7Cc,eAAe,CAAEd,eAAgB,CAAC;IACnC;EACD,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMgB,aAAa,GAAKC,SAAS,IAAM;IACtC,MAAMC,aAAa,GAAG7B,gBAAgB,CAAE4B,SAAS,EAAEP,SAAU,CAAC;IAE9DjB,aAAa,CAAE;MACdW,KAAK,EAAEc;IACR,CAAE,CAAC;EACJ,CAAC;EAED,MAAMC,YAAY,GAAKC,QAAQ,IAAM;IACpCT,YAAY,CAAES,QAAS,CAAC;IACxB,MAAMC,gBAAgB,GAAGC,UAAU,CAClClB,KAAK,IAAIhB,SAAS,CAAEU,OAAQ,CAAC,CAAEC,mBAAmB,CACnD,CAAC;IAEDN,aAAa,CAAE;MACdW,KAAK,EAAEf,gBAAgB,CAAEgC,gBAAgB,EAAED,QAAS;IACrD,CAAE,CAAC;EACJ,CAAC;EAED,MAAMG,QAAQ,GAAKN,SAAS,IAAM;IACjC,IAAK3B,gBAAgB,CAAEoB,SAAU,CAAC,IAAI,CAAEA,SAAS,EAAG;MACnD;IACD;IACAM,aAAa,CAAEC,SAAU,CAAC;EAC3B,CAAC;EAED,MAAMO,cAAc,GAAGrD,WAAW,CAAE,MAAM;IACzC,IAAKwB,UAAU,EAAG;MACjB,MAAM;QAAES,KAAK,EAAEqB;MAAY,CAAC,GAAG5B,YAAY,CAAEI,QAAQ,CAAE,IAAI,CAAC,CAAC;MAC7D,MAAMyB,WAAW,GAAGD,WAAW,KAAKnB,WAAW;MAE/C,OACCqB,aAAA,CAAC/D,IAAI;QACJgE,KAAK,EAAG,CACP1C,MAAM,CAAC2C,cAAc,EACrBH,WAAW,IAAIxC,MAAM,CAAC4C,uBAAuB,EAC7CJ,WAAW,IACVhC,WAAW,IACXR,MAAM,CAAC6C,+BAA+B,EACvC,CAAEL,WAAW,IACZhC,WAAW,IACXR,MAAM,CAAC8C,sBAAsB;MAC5B,GAEHL,aAAA,CAACvD,WAAW,CAAC6D,mBAAmB,MAAE,CAC7B,CAAC;IAET;IACA,OAAO,IAAI;EACZ,CAAC,EAAE,CAAEpC,YAAY,EAAEI,QAAQ,EAAEK,WAAW,EAAEX,UAAU,EAAED,WAAW,CAAG,CAAC;EAErE,IAAK,CAAEC,UAAU,IAAI,CAAED,WAAW,EAAG;IACpC,OACCiC,aAAA,CAAC/D,IAAI;MACJgE,KAAK,EAAG,CACPhC,wBAAwB,CACvBV,MAAM,CAACgD,iBAAiB,EACxBhD,MAAM,CAACiD,qBACR,CAAC,EACDtC,YAAY,CAAEI,QAAQ,CAAE;IACtB,CACH,CAAC;EAEJ;EAEA,MAAMmC,WAAW,GAChBvC,YAAY,IACZA,YAAY,CAAEI,QAAQ,CAAE,IACxBJ,YAAY,CAAEI,QAAQ,CAAE,CAACG,KAAK;EAE/B,OACCuB,aAAA,CAAAU,QAAA,QACG1C,UAAU,IACXgC,aAAA,CAAAU,QAAA,QACCV,aAAA,CAACtD,aAAa,QACbsD,aAAA,CAACrD,6BAA6B;IAC7BiD,QAAQ,EAAGT,eAAiB;IAC5BwB,KAAK,EAAGnC;EAAmB,CAC3B,CACa,CAAC,EAChBwB,aAAA,CAACpD,iBAAiB,QACjBoD,aAAA,CAAChD,SAAS;IAAC4D,KAAK,EAAGtD,EAAE,CAAE,UAAW;EAAG,GACpC0C,aAAA,CAAC9C,WAAW;IACX2D,KAAK,EAAGvD,EAAE,CAAE,OAAQ,CAAG;IACvBwD,GAAG,EAAG,CAAG;IACTC,GAAG,EACFpD,gBAAgB,CAAEoB,SAAU,CAAC,GAC1B,GAAG,GACHiC,SACH;IACDpB,QAAQ,EAAGA,QAAU;IACrBqB,UAAU,EAAG5B,aAAe;IAC5B6B,YAAY,EAAG1B,YAAc;IAC7BmB,KAAK,EACJlD,SAAS,CAAEU,OAAQ,CAAC,CAAEC,mBAAmB,CACzC;IACD+C,IAAI,EAAGpC,SAAW;IAClBG,KAAK,EAAGA,KAAO;IACfkC,OAAO,EACNpB,aAAA,CAACxC,cAAc;MACd6D,YAAY,EAAG5D,SAAS,CACvBU,OAAO,EACP,KACD,CAAG;MACHC,mBAAmB,EAClBA;IACA,CACD;EACD,CACD,CACS,CAAC,EACZ4B,aAAA,CAAChD,SAAS,QACTgD,aAAA,CAAC/C,oBAAoB;IACpB4D,KAAK,EAAGvD,EAAE,CACT,8DACD;EAAG,CACH,CACS,CACO,CAClB,CACF,EACD0C,aAAA,CAAC/D,IAAI;IACJgE,KAAK,EAAG,CACPjC,UAAU,IAAID,WAAW,IAAIR,MAAM,CAAC+D,sBAAsB,EAC1DpD,YAAY,CAAEI,QAAQ,CAAE;EACtB,GAEH0B,aAAA,CAACvD,WAAW;IACXoD,cAAc,EAAGA,cAAgB;IACjCY,WAAW,EAAGA,WAAa;IAC3BlC,UAAU,EAAGA;EAAY,CACzB,CACI,CACL,CAAC;AAEL;AAEA,SAASgD,iBAAiBA,CAAEC,KAAK,EAAG;EACnC,MAAM;IAAEhD;EAAkB,CAAC,GAAGgD,KAAK,CAAC3D,UAAU;EAE9C,MAAM4D,yBAAyB,GAAKrC,SAAS,IAAM;IAClD,IAAK,CAAEA,SAAS,EAAG,OAAO7B,MAAM,CAACmE,QAAQ;IACzC,OAAO;MACN,GAAGnE,MAAM,CAACmE,QAAQ;MAClB,GAAGnE,MAAM,CAAG,yBAAyB6B,SAAW,EAAC;IAClD,CAAC;EACF,CAAC;EAED,OACCY,aAAA,CAAC/D,IAAI;IAACgE,KAAK,EAAGwB,yBAAyB,CAAEjD,iBAAkB;EAAG,GAC7DwB,aAAA,CAACpC,UAAU;IAAA,GAAM4D;EAAK,CAAI,CACrB,CAAC;AAET;AAEA,eAAepF,OAAO,CAAE,CACvBD,UAAU,CAAE,CAAEwF,MAAM,EAAE;EAAErD;AAAS,CAAC,KAAM;EACvC,MAAM;IACLsD,aAAa;IACbC,oBAAoB;IACpBC,wBAAwB;IACxBC,SAAS;IACTC,aAAa;IACbC;EACD,CAAC,GAAGN,MAAM,CAAE7E,gBAAiB,CAAC;EAE9B,MAAMoF,qBAAqB,GAAGJ,wBAAwB,CAAC,CAAC;EACxD,MAAM9D,UAAU,GAAGkE,qBAAqB,KAAK5D,QAAQ;EAErD,MAAM6D,QAAQ,GAAGN,oBAAoB,CAAEvD,QAAS,CAAC;EACjD,MAAMP,WAAW,GAAG,CAAC,CAAE6D,aAAa,CAAEtD,QAAS,CAAC;EAEhD,MAAM8D,UAAU,GAAGJ,aAAa,CAAEG,QAAS,CAAC;EAE5C,MAAM/D,mBAAmB,GAAGgE,UAAU,CAACC,OAAO,CAAE/D,QAAS,CAAC;EAC1D,MAAMH,OAAO,GAAG4D,SAAS,CAAEI,QAAS,CAAC;EAErC,MAAM9D,eAAe,GACpB4D,kBAAkB,CAAEE,QAAS,CAAC,EAAE3D,iBAAiB;EAElD,OAAO;IACNT,WAAW;IACXC,UAAU;IACVI,mBAAmB;IACnBD,OAAO;IACPE;EACD,CAAC;AACF,CAAE,CAAC,EACHhC,wBAAwB,CACvB,CAAC,CAAEkF,iBAAkB,CAAC"}
@@ -19,6 +19,7 @@ export default function CommentsInspectorControls({
19
19
  group: "advanced"
20
20
  }, createElement(SelectControl, {
21
21
  __nextHasNoMarginBottom: true,
22
+ __next40pxDefaultSize: true,
22
23
  label: __('HTML element'),
23
24
  options: [{
24
25
  label: __('Default (<div>)'),
@@ -1 +1 @@
1
- {"version":3,"names":["SelectControl","__","InspectorControls","CommentsInspectorControls","attributes","tagName","setAttributes","htmlElementMessages","section","aside","createElement","group","__nextHasNoMarginBottom","label","options","value","onChange","help"],"sources":["@wordpress/block-library/src/comments/edit/comments-inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\n\nexport default function CommentsInspectorControls( {\n\tattributes: { tagName },\n\tsetAttributes,\n} ) {\n\tconst htmlElementMessages = {\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t};\n\treturn (\n\t\t<InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</InspectorControls>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,iBAAiB,QAAQ,yBAAyB;AAE3D,eAAe,SAASC,yBAAyBA,CAAE;EAClDC,UAAU,EAAE;IAAEC;EAAQ,CAAC;EACvBC;AACD,CAAC,EAAG;EACH,MAAMC,mBAAmB,GAAG;IAC3BC,OAAO,EAAEP,EAAE,CACV,kIACD,CAAC;IACDQ,KAAK,EAAER,EAAE,CACR,uIACD;EACD,CAAC;EACD,OACCS,aAAA,CAACR,iBAAiB,QACjBQ,aAAA,CAACR,iBAAiB;IAACS,KAAK,EAAC;EAAU,GAClCD,aAAA,CAACV,aAAa;IACbY,uBAAuB;IACvBC,KAAK,EAAGZ,EAAE,CAAE,cAAe,CAAG;IAC9Ba,OAAO,EAAG,CACT;MAAED,KAAK,EAAEZ,EAAE,CAAE,iBAAkB,CAAC;MAAEc,KAAK,EAAE;IAAM,CAAC,EAChD;MAAEF,KAAK,EAAE,WAAW;MAAEE,KAAK,EAAE;IAAU,CAAC,EACxC;MAAEF,KAAK,EAAE,SAAS;MAAEE,KAAK,EAAE;IAAQ,CAAC,CAClC;IACHA,KAAK,EAAGV,OAAS;IACjBW,QAAQ,EAAKD,KAAK,IACjBT,aAAa,CAAE;MAAED,OAAO,EAAEU;IAAM,CAAE,CAClC;IACDE,IAAI,EAAGV,mBAAmB,CAAEF,OAAO;EAAI,CACvC,CACiB,CACD,CAAC;AAEtB"}
1
+ {"version":3,"names":["SelectControl","__","InspectorControls","CommentsInspectorControls","attributes","tagName","setAttributes","htmlElementMessages","section","aside","createElement","group","__nextHasNoMarginBottom","__next40pxDefaultSize","label","options","value","onChange","help"],"sources":["@wordpress/block-library/src/comments/edit/comments-inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\n\nexport default function CommentsInspectorControls( {\n\tattributes: { tagName },\n\tsetAttributes,\n} ) {\n\tconst htmlElementMessages = {\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t};\n\treturn (\n\t\t<InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</InspectorControls>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,iBAAiB,QAAQ,yBAAyB;AAE3D,eAAe,SAASC,yBAAyBA,CAAE;EAClDC,UAAU,EAAE;IAAEC;EAAQ,CAAC;EACvBC;AACD,CAAC,EAAG;EACH,MAAMC,mBAAmB,GAAG;IAC3BC,OAAO,EAAEP,EAAE,CACV,kIACD,CAAC;IACDQ,KAAK,EAAER,EAAE,CACR,uIACD;EACD,CAAC;EACD,OACCS,aAAA,CAACR,iBAAiB,QACjBQ,aAAA,CAACR,iBAAiB;IAACS,KAAK,EAAC;EAAU,GAClCD,aAAA,CAACV,aAAa;IACbY,uBAAuB;IACvBC,qBAAqB;IACrBC,KAAK,EAAGb,EAAE,CAAE,cAAe,CAAG;IAC9Bc,OAAO,EAAG,CACT;MAAED,KAAK,EAAEb,EAAE,CAAE,iBAAkB,CAAC;MAAEe,KAAK,EAAE;IAAM,CAAC,EAChD;MAAEF,KAAK,EAAE,WAAW;MAAEE,KAAK,EAAE;IAAU,CAAC,EACxC;MAAEF,KAAK,EAAE,SAAS;MAAEE,KAAK,EAAE;IAAQ,CAAC,CAClC;IACHA,KAAK,EAAGX,OAAS;IACjBY,QAAQ,EAAKD,KAAK,IACjBV,aAAa,CAAE;MAAED,OAAO,EAAEW;IAAM,CAAE,CAClC;IACDE,IAAI,EAAGX,mBAAmB,CAAEF,OAAO;EAAI,CACvC,CACiB,CACD,CAAC;AAEtB"}
@@ -245,7 +245,8 @@ function CoverEdit({
245
245
  template: !hasInnerBlocks ? innerBlocksTemplate : undefined,
246
246
  templateInsertUpdatesSelection: true,
247
247
  allowedBlocks,
248
- templateLock
248
+ templateLock,
249
+ dropZoneElement: ref.current
249
250
  });
250
251
  const mediaElement = useRef();
251
252
  const currentSettings = {