@wordpress/block-editor 15.0.0 → 15.0.1-next.46f643fa0.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 (68) hide show
  1. package/build/components/block-list/zoom-out-separator.js +0 -1
  2. package/build/components/block-list/zoom-out-separator.js.map +1 -1
  3. package/build/components/block-toolbar/index.js +6 -3
  4. package/build/components/block-toolbar/index.js.map +1 -1
  5. package/build/components/iframe/index.js +20 -15
  6. package/build/components/iframe/index.js.map +1 -1
  7. package/build/components/image-editor/use-save-image.js +49 -30
  8. package/build/components/image-editor/use-save-image.js.map +1 -1
  9. package/build/components/inserter-button/index.native.js +54 -64
  10. package/build/components/inserter-button/index.native.js.map +1 -1
  11. package/build/components/list-view/block.js +2 -1
  12. package/build/components/list-view/block.js.map +1 -1
  13. package/build/components/publish-date-time-picker/index.js +2 -1
  14. package/build/components/publish-date-time-picker/index.js.map +1 -1
  15. package/build/components/writing-flow/use-click-selection.js +3 -1
  16. package/build/components/writing-flow/use-click-selection.js.map +1 -1
  17. package/build/private-apis.js +2 -1
  18. package/build/private-apis.js.map +1 -1
  19. package/build/store/actions.js +5 -1
  20. package/build/store/actions.js.map +1 -1
  21. package/build/store/private-keys.js +2 -1
  22. package/build/store/private-keys.js.map +1 -1
  23. package/build/utils/block-bindings.js +2 -1
  24. package/build/utils/block-bindings.js.map +1 -1
  25. package/build-module/components/block-list/zoom-out-separator.js +0 -1
  26. package/build-module/components/block-list/zoom-out-separator.js.map +1 -1
  27. package/build-module/components/block-toolbar/index.js +6 -3
  28. package/build-module/components/block-toolbar/index.js.map +1 -1
  29. package/build-module/components/iframe/index.js +20 -15
  30. package/build-module/components/iframe/index.js.map +1 -1
  31. package/build-module/components/image-editor/use-save-image.js +50 -30
  32. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  33. package/build-module/components/inserter-button/index.native.js +55 -65
  34. package/build-module/components/inserter-button/index.native.js.map +1 -1
  35. package/build-module/components/list-view/block.js +2 -1
  36. package/build-module/components/list-view/block.js.map +1 -1
  37. package/build-module/components/publish-date-time-picker/index.js +2 -1
  38. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  39. package/build-module/components/writing-flow/use-click-selection.js +3 -1
  40. package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
  41. package/build-module/private-apis.js +3 -2
  42. package/build-module/private-apis.js.map +1 -1
  43. package/build-module/store/actions.js +5 -1
  44. package/build-module/store/actions.js.map +1 -1
  45. package/build-module/store/private-keys.js +1 -0
  46. package/build-module/store/private-keys.js.map +1 -1
  47. package/build-module/utils/block-bindings.js +2 -1
  48. package/build-module/utils/block-bindings.js.map +1 -1
  49. package/build-style/style-rtl.css +4 -18
  50. package/build-style/style.css +4 -18
  51. package/package.json +34 -34
  52. package/src/components/block-list/zoom-out-separator.js +0 -1
  53. package/src/components/block-toolbar/index.js +8 -2
  54. package/src/components/grid/style.scss +3 -2
  55. package/src/components/iframe/index.js +25 -16
  56. package/src/components/image-editor/use-save-image.js +58 -31
  57. package/src/components/inserter/style.scss +1 -1
  58. package/src/components/inserter-button/index.native.js +69 -80
  59. package/src/components/list-view/block.js +1 -0
  60. package/src/components/list-view/style.scss +2 -20
  61. package/src/components/publish-date-time-picker/README.md +9 -0
  62. package/src/components/publish-date-time-picker/index.js +2 -1
  63. package/src/components/writing-flow/use-click-selection.js +3 -1
  64. package/src/private-apis.js +2 -0
  65. package/src/store/actions.js +8 -1
  66. package/src/store/private-keys.js +1 -0
  67. package/src/store/test/actions.js +15 -2
  68. package/src/utils/block-bindings.js +1 -0
@@ -6,7 +6,7 @@ import { View, TouchableHighlight, Text } from 'react-native';
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import { Component } from '@wordpress/element';
9
+ import { useCallback } from '@wordpress/element';
10
10
  import { Icon } from '@wordpress/components';
11
11
  import { withPreferredColorScheme } from '@wordpress/compose';
12
12
  import { __, sprintf } from '@wordpress/i18n';
@@ -18,72 +18,62 @@ import { BlockIcon } from '../block-icon';
18
18
  import styles from './style.scss';
19
19
  import sparkles from './sparkles';
20
20
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
21
- class MenuItem extends Component {
22
- constructor() {
23
- super(...arguments);
24
- this.onPress = this.onPress.bind(this);
25
- }
26
- onPress() {
27
- const {
28
- onSelect,
29
- item
30
- } = this.props;
21
+ function MenuItem({
22
+ getStylesFromColorScheme,
23
+ item,
24
+ itemWidth,
25
+ maxWidth,
26
+ onSelect
27
+ }) {
28
+ const onPress = useCallback(() => {
31
29
  onSelect(item);
32
- }
33
- render() {
34
- const {
35
- getStylesFromColorScheme,
36
- item,
37
- itemWidth,
38
- maxWidth
39
- } = this.props;
40
- const modalIconWrapperStyle = getStylesFromColorScheme(styles.modalIconWrapper, styles.modalIconWrapperDark);
41
- const modalIconStyle = styles.modalIcon;
42
- const modalItemLabelStyle = getStylesFromColorScheme(styles.modalItemLabel, styles.modalItemLabelDark);
43
- const clipboardBlockStyles = getStylesFromColorScheme(styles.clipboardBlock, styles.clipboardBlockDark);
44
- const isClipboardBlock = item.id === 'clipboard';
45
- const blockTitle = isClipboardBlock ? __('Copied block') : item.title;
46
- const blockIsNew = item.isNew === true;
47
- const accessibilityLabelFormat = blockIsNew ?
48
- // translators: Newly available block name. %s: The localized block name
49
- __('%s block, newly available') :
50
- // translators: %s: Block name e.g. "Image block"
51
- __('%s block');
52
- const accessibilityLabel = sprintf(accessibilityLabelFormat, item.title);
53
- return /*#__PURE__*/_jsx(TouchableHighlight, {
54
- style: [styles.touchableArea, item.isDisabled ? styles.disabled : null],
55
- underlayColor: "transparent",
56
- activeOpacity: 0.5,
57
- accessibilityRole: "button",
58
- accessibilityLabel: accessibilityLabel,
59
- onPress: this.onPress,
60
- disabled: item.isDisabled,
61
- children: /*#__PURE__*/_jsxs(View, {
62
- style: [styles.modalItem, {
63
- width: maxWidth
64
- }],
65
- children: [/*#__PURE__*/_jsxs(View, {
66
- style: [modalIconWrapperStyle, itemWidth && {
67
- width: itemWidth
68
- }, isClipboardBlock && clipboardBlockStyles],
69
- children: [blockIsNew && /*#__PURE__*/_jsx(Icon, {
70
- icon: sparkles,
71
- style: styles.newIndicator
72
- }), /*#__PURE__*/_jsx(View, {
73
- style: modalIconStyle,
74
- children: /*#__PURE__*/_jsx(BlockIcon, {
75
- icon: item.icon,
76
- size: modalIconStyle.width
77
- })
78
- })]
79
- }), /*#__PURE__*/_jsx(Text, {
80
- numberOfLines: 3,
81
- style: modalItemLabelStyle,
82
- children: blockTitle
30
+ }, [onSelect, item]);
31
+ const modalIconWrapperStyle = getStylesFromColorScheme(styles.modalIconWrapper, styles.modalIconWrapperDark);
32
+ const modalIconStyle = styles.modalIcon;
33
+ const modalItemLabelStyle = getStylesFromColorScheme(styles.modalItemLabel, styles.modalItemLabelDark);
34
+ const clipboardBlockStyles = getStylesFromColorScheme(styles.clipboardBlock, styles.clipboardBlockDark);
35
+ const isClipboardBlock = item.id === 'clipboard';
36
+ const blockTitle = isClipboardBlock ? __('Copied block') : item.title;
37
+ const blockIsNew = item.isNew === true;
38
+ const accessibilityLabelFormat = blockIsNew ?
39
+ // translators: Newly available block name. %s: The localized block name
40
+ __('%s block, newly available') :
41
+ // translators: %s: Block name e.g. "Image block"
42
+ __('%s block');
43
+ const accessibilityLabel = sprintf(accessibilityLabelFormat, item.title);
44
+ return /*#__PURE__*/_jsx(TouchableHighlight, {
45
+ style: [styles.touchableArea, item.isDisabled ? styles.disabled : null],
46
+ underlayColor: "transparent",
47
+ activeOpacity: 0.5,
48
+ accessibilityRole: "button",
49
+ accessibilityLabel: accessibilityLabel,
50
+ onPress: onPress,
51
+ disabled: item.isDisabled,
52
+ children: /*#__PURE__*/_jsxs(View, {
53
+ style: [styles.modalItem, {
54
+ width: maxWidth
55
+ }],
56
+ children: [/*#__PURE__*/_jsxs(View, {
57
+ style: [modalIconWrapperStyle, itemWidth && {
58
+ width: itemWidth
59
+ }, isClipboardBlock && clipboardBlockStyles],
60
+ children: [blockIsNew && /*#__PURE__*/_jsx(Icon, {
61
+ icon: sparkles,
62
+ style: styles.newIndicator
63
+ }), /*#__PURE__*/_jsx(View, {
64
+ style: modalIconStyle,
65
+ children: /*#__PURE__*/_jsx(BlockIcon, {
66
+ icon: item.icon,
67
+ size: modalIconStyle.width
68
+ })
83
69
  })]
84
- })
85
- });
86
- }
70
+ }), /*#__PURE__*/_jsx(Text, {
71
+ numberOfLines: 3,
72
+ style: modalItemLabelStyle,
73
+ children: blockTitle
74
+ })]
75
+ })
76
+ });
87
77
  }
88
78
  const InserterButton = withPreferredColorScheme(MenuItem);
89
79
  InserterButton.Styles = {
@@ -1 +1 @@
1
- {"version":3,"names":["View","TouchableHighlight","Text","Component","Icon","withPreferredColorScheme","__","sprintf","BlockIcon","styles","sparkles","jsx","_jsx","jsxs","_jsxs","MenuItem","constructor","arguments","onPress","bind","onSelect","item","props","render","getStylesFromColorScheme","itemWidth","maxWidth","modalIconWrapperStyle","modalIconWrapper","modalIconWrapperDark","modalIconStyle","modalIcon","modalItemLabelStyle","modalItemLabel","modalItemLabelDark","clipboardBlockStyles","clipboardBlock","clipboardBlockDark","isClipboardBlock","id","blockTitle","title","blockIsNew","isNew","accessibilityLabelFormat","accessibilityLabel","style","touchableArea","isDisabled","disabled","underlayColor","activeOpacity","accessibilityRole","children","modalItem","width","icon","newIndicator","size","numberOfLines","InserterButton","Styles"],"sources":["@wordpress/block-editor/src/components/inserter-button/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, TouchableHighlight, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { Icon } from '@wordpress/components';\nimport { withPreferredColorScheme } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { BlockIcon } from '../block-icon';\nimport styles from './style.scss';\nimport sparkles from './sparkles';\nclass MenuItem extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onPress = this.onPress.bind( this );\n\t}\n\n\tonPress() {\n\t\tconst { onSelect, item } = this.props;\n\t\tonSelect( item );\n\t}\n\n\trender() {\n\t\tconst { getStylesFromColorScheme, item, itemWidth, maxWidth } =\n\t\t\tthis.props;\n\n\t\tconst modalIconWrapperStyle = getStylesFromColorScheme(\n\t\t\tstyles.modalIconWrapper,\n\t\t\tstyles.modalIconWrapperDark\n\t\t);\n\t\tconst modalIconStyle = styles.modalIcon;\n\t\tconst modalItemLabelStyle = getStylesFromColorScheme(\n\t\t\tstyles.modalItemLabel,\n\t\t\tstyles.modalItemLabelDark\n\t\t);\n\n\t\tconst clipboardBlockStyles = getStylesFromColorScheme(\n\t\t\tstyles.clipboardBlock,\n\t\t\tstyles.clipboardBlockDark\n\t\t);\n\n\t\tconst isClipboardBlock = item.id === 'clipboard';\n\t\tconst blockTitle = isClipboardBlock ? __( 'Copied block' ) : item.title;\n\t\tconst blockIsNew = item.isNew === true;\n\t\tconst accessibilityLabelFormat = blockIsNew\n\t\t\t? // translators: Newly available block name. %s: The localized block name\n\t\t\t __( '%s block, newly available' )\n\t\t\t: // translators: %s: Block name e.g. \"Image block\"\n\t\t\t __( '%s block' );\n\t\tconst accessibilityLabel = sprintf(\n\t\t\taccessibilityLabelFormat,\n\t\t\titem.title\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tstyle={ [\n\t\t\t\t\tstyles.touchableArea,\n\t\t\t\t\titem.isDisabled ? styles.disabled : null,\n\t\t\t\t] }\n\t\t\t\tunderlayColor=\"transparent\"\n\t\t\t\tactiveOpacity={ 0.5 }\n\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\tonPress={ this.onPress }\n\t\t\t\tdisabled={ item.isDisabled }\n\t\t\t>\n\t\t\t\t<View style={ [ styles.modalItem, { width: maxWidth } ] }>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tmodalIconWrapperStyle,\n\t\t\t\t\t\t\titemWidth && {\n\t\t\t\t\t\t\t\twidth: itemWidth,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tisClipboardBlock && clipboardBlockStyles,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ blockIsNew && (\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ sparkles }\n\t\t\t\t\t\t\t\tstyle={ styles.newIndicator }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<View style={ modalIconStyle }>\n\t\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\t\ticon={ item.icon }\n\t\t\t\t\t\t\t\tsize={ modalIconStyle.width }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t\t<Text numberOfLines={ 3 } style={ modalItemLabelStyle }>\n\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n}\n\nconst InserterButton = withPreferredColorScheme( MenuItem );\n\nInserterButton.Styles = {\n\tmodalItem: styles.modalItem,\n\tmodalIconWrapper: styles.modalIconWrapper,\n};\n\nexport default InserterButton;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["View","TouchableHighlight","Text","useCallback","Icon","withPreferredColorScheme","__","sprintf","BlockIcon","styles","sparkles","jsx","_jsx","jsxs","_jsxs","MenuItem","getStylesFromColorScheme","item","itemWidth","maxWidth","onSelect","onPress","modalIconWrapperStyle","modalIconWrapper","modalIconWrapperDark","modalIconStyle","modalIcon","modalItemLabelStyle","modalItemLabel","modalItemLabelDark","clipboardBlockStyles","clipboardBlock","clipboardBlockDark","isClipboardBlock","id","blockTitle","title","blockIsNew","isNew","accessibilityLabelFormat","accessibilityLabel","style","touchableArea","isDisabled","disabled","underlayColor","activeOpacity","accessibilityRole","children","modalItem","width","icon","newIndicator","size","numberOfLines","InserterButton","Styles"],"sources":["@wordpress/block-editor/src/components/inserter-button/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, TouchableHighlight, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { Icon } from '@wordpress/components';\nimport { withPreferredColorScheme } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { BlockIcon } from '../block-icon';\nimport styles from './style.scss';\nimport sparkles from './sparkles';\n\nfunction MenuItem( {\n\tgetStylesFromColorScheme,\n\titem,\n\titemWidth,\n\tmaxWidth,\n\tonSelect,\n} ) {\n\tconst onPress = useCallback( () => {\n\t\tonSelect( item );\n\t}, [ onSelect, item ] );\n\n\tconst modalIconWrapperStyle = getStylesFromColorScheme(\n\t\tstyles.modalIconWrapper,\n\t\tstyles.modalIconWrapperDark\n\t);\n\tconst modalIconStyle = styles.modalIcon;\n\tconst modalItemLabelStyle = getStylesFromColorScheme(\n\t\tstyles.modalItemLabel,\n\t\tstyles.modalItemLabelDark\n\t);\n\n\tconst clipboardBlockStyles = getStylesFromColorScheme(\n\t\tstyles.clipboardBlock,\n\t\tstyles.clipboardBlockDark\n\t);\n\n\tconst isClipboardBlock = item.id === 'clipboard';\n\tconst blockTitle = isClipboardBlock ? __( 'Copied block' ) : item.title;\n\tconst blockIsNew = item.isNew === true;\n\tconst accessibilityLabelFormat = blockIsNew\n\t\t? // translators: Newly available block name. %s: The localized block name\n\t\t __( '%s block, newly available' )\n\t\t: // translators: %s: Block name e.g. \"Image block\"\n\t\t __( '%s block' );\n\tconst accessibilityLabel = sprintf( accessibilityLabelFormat, item.title );\n\n\treturn (\n\t\t<TouchableHighlight\n\t\t\tstyle={ [\n\t\t\t\tstyles.touchableArea,\n\t\t\t\titem.isDisabled ? styles.disabled : null,\n\t\t\t] }\n\t\t\tunderlayColor=\"transparent\"\n\t\t\tactiveOpacity={ 0.5 }\n\t\t\taccessibilityRole=\"button\"\n\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\tonPress={ onPress }\n\t\t\tdisabled={ item.isDisabled }\n\t\t>\n\t\t\t<View style={ [ styles.modalItem, { width: maxWidth } ] }>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ [\n\t\t\t\t\t\tmodalIconWrapperStyle,\n\t\t\t\t\t\titemWidth && {\n\t\t\t\t\t\t\twidth: itemWidth,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tisClipboardBlock && clipboardBlockStyles,\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t{ blockIsNew && (\n\t\t\t\t\t\t<Icon icon={ sparkles } style={ styles.newIndicator } />\n\t\t\t\t\t) }\n\t\t\t\t\t<View style={ modalIconStyle }>\n\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\ticon={ item.icon }\n\t\t\t\t\t\t\tsize={ modalIconStyle.width }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t\t<Text numberOfLines={ 3 } style={ modalItemLabelStyle }>\n\t\t\t\t\t{ blockTitle }\n\t\t\t\t</Text>\n\t\t\t</View>\n\t\t</TouchableHighlight>\n\t);\n}\n\nconst InserterButton = withPreferredColorScheme( MenuItem );\n\nInserterButton.Styles = {\n\tmodalItem: styles.modalItem,\n\tmodalIconWrapper: styles.modalIconWrapper,\n};\n\nexport default InserterButton;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,IAAI,EAAEC,kBAAkB,EAAEC,IAAI,QAAQ,cAAc;;AAE7D;AACA;AACA;AACA,SAASC,WAAW,QAAQ,oBAAoB;AAChD,SAASC,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,wBAAwB,QAAQ,oBAAoB;AAC7D,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;;AAE7C;AACA;AACA;AACA,SAASC,SAAS,QAAQ,eAAe;AACzC,OAAOC,MAAM,MAAM,cAAc;AACjC,OAAOC,QAAQ,MAAM,YAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAElC,SAASC,QAAQA,CAAE;EAClBC,wBAAwB;EACxBC,IAAI;EACJC,SAAS;EACTC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAMC,OAAO,GAAGlB,WAAW,CAAE,MAAM;IAClCiB,QAAQ,CAAEH,IAAK,CAAC;EACjB,CAAC,EAAE,CAAEG,QAAQ,EAAEH,IAAI,CAAG,CAAC;EAEvB,MAAMK,qBAAqB,GAAGN,wBAAwB,CACrDP,MAAM,CAACc,gBAAgB,EACvBd,MAAM,CAACe,oBACR,CAAC;EACD,MAAMC,cAAc,GAAGhB,MAAM,CAACiB,SAAS;EACvC,MAAMC,mBAAmB,GAAGX,wBAAwB,CACnDP,MAAM,CAACmB,cAAc,EACrBnB,MAAM,CAACoB,kBACR,CAAC;EAED,MAAMC,oBAAoB,GAAGd,wBAAwB,CACpDP,MAAM,CAACsB,cAAc,EACrBtB,MAAM,CAACuB,kBACR,CAAC;EAED,MAAMC,gBAAgB,GAAGhB,IAAI,CAACiB,EAAE,KAAK,WAAW;EAChD,MAAMC,UAAU,GAAGF,gBAAgB,GAAG3B,EAAE,CAAE,cAAe,CAAC,GAAGW,IAAI,CAACmB,KAAK;EACvE,MAAMC,UAAU,GAAGpB,IAAI,CAACqB,KAAK,KAAK,IAAI;EACtC,MAAMC,wBAAwB,GAAGF,UAAU;EACxC;EACA/B,EAAE,CAAE,2BAA4B,CAAC;EACjC;EACAA,EAAE,CAAE,UAAW,CAAC;EACnB,MAAMkC,kBAAkB,GAAGjC,OAAO,CAAEgC,wBAAwB,EAAEtB,IAAI,CAACmB,KAAM,CAAC;EAE1E,oBACCxB,IAAA,CAACX,kBAAkB;IAClBwC,KAAK,EAAG,CACPhC,MAAM,CAACiC,aAAa,EACpBzB,IAAI,CAAC0B,UAAU,GAAGlC,MAAM,CAACmC,QAAQ,GAAG,IAAI,CACtC;IACHC,aAAa,EAAC,aAAa;IAC3BC,aAAa,EAAG,GAAK;IACrBC,iBAAiB,EAAC,QAAQ;IAC1BP,kBAAkB,EAAGA,kBAAoB;IACzCnB,OAAO,EAAGA,OAAS;IACnBuB,QAAQ,EAAG3B,IAAI,CAAC0B,UAAY;IAAAK,QAAA,eAE5BlC,KAAA,CAACd,IAAI;MAACyC,KAAK,EAAG,CAAEhC,MAAM,CAACwC,SAAS,EAAE;QAAEC,KAAK,EAAE/B;MAAS,CAAC,CAAI;MAAA6B,QAAA,gBACxDlC,KAAA,CAACd,IAAI;QACJyC,KAAK,EAAG,CACPnB,qBAAqB,EACrBJ,SAAS,IAAI;UACZgC,KAAK,EAAEhC;QACR,CAAC,EACDe,gBAAgB,IAAIH,oBAAoB,CACtC;QAAAkB,QAAA,GAEDX,UAAU,iBACXzB,IAAA,CAACR,IAAI;UAAC+C,IAAI,EAAGzC,QAAU;UAAC+B,KAAK,EAAGhC,MAAM,CAAC2C;QAAc,CAAE,CACvD,eACDxC,IAAA,CAACZ,IAAI;UAACyC,KAAK,EAAGhB,cAAgB;UAAAuB,QAAA,eAC7BpC,IAAA,CAACJ,SAAS;YACT2C,IAAI,EAAGlC,IAAI,CAACkC,IAAM;YAClBE,IAAI,EAAG5B,cAAc,CAACyB;UAAO,CAC7B;QAAC,CACG,CAAC;MAAA,CACF,CAAC,eACPtC,IAAA,CAACV,IAAI;QAACoD,aAAa,EAAG,CAAG;QAACb,KAAK,EAAGd,mBAAqB;QAAAqB,QAAA,EACpDb;MAAU,CACP,CAAC;IAAA,CACF;EAAC,CACY,CAAC;AAEvB;AAEA,MAAMoB,cAAc,GAAGlD,wBAAwB,CAAEU,QAAS,CAAC;AAE3DwC,cAAc,CAACC,MAAM,GAAG;EACvBP,SAAS,EAAExC,MAAM,CAACwC,SAAS;EAC3B1B,gBAAgB,EAAEd,MAAM,CAACc;AAC1B,CAAC;AAED,eAAegC,cAAc","ignoreList":[]}
@@ -523,7 +523,8 @@ function ListViewBlock({
523
523
  className: 'block-editor-list-view-block__menu',
524
524
  tabIndex,
525
525
  onClick: clearSettingsAnchorRect,
526
- onFocus
526
+ onFocus,
527
+ size: 'small'
527
528
  },
528
529
  disableOpenOnArrowDown: true,
529
530
  expand: expand,
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","hasBlockSupport","switchToBlockType","store","blocksStore","__experimentalTreeGridCell","TreeGridCell","__experimentalTreeGridItem","TreeGridItem","useInstanceId","useDebounce","moreVertical","useCallback","useMemo","useState","useRef","memo","useDispatch","useSelect","__","BACKSPACE","DELETE","isShallowEqual","__unstableUseShortcutEventMatch","useShortcutEventMatch","speak","ListViewLeaf","useListViewScrollIntoView","BlockMoverUpButton","BlockMoverDownButton","ListViewBlockContents","useListViewContext","getBlockPositionDescription","getBlockPropertiesDescription","focusListItem","blockEditorStore","useBlockDisplayInformation","useBlockLock","AriaReferencedText","unlock","usePasteStyles","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ListViewBlock","block","clientId","displacement","isAfterDraggedBlocks","isDragged","isNesting","isSelected","isBranchSelected","selectBlock","position","level","rowCount","siblingBlockCount","showBlockMovers","path","isExpanded","selectedClientIds","isSyncedBranch","cellRef","rowRef","settingsRef","isHovered","setIsHovered","settingsAnchorRect","setSettingsAnchorRect","isLocked","canEdit","canMove","isFirstSelectedBlock","isLastSelectedBlock","length","toggleBlockHighlight","duplicateBlocks","multiSelect","replaceBlocks","removeBlocks","insertAfterBlock","insertBeforeBlock","setOpenedBlockSettingsMenu","debouncedToggleBlockHighlight","canInsertBlockType","getSelectedBlockClientIds","getPreviousBlockClientId","getBlockRootClientId","getBlockOrder","getBlockParents","getBlocksByClientId","canRemoveBlocks","isGroupable","getGroupingBlockName","blockInformation","pasteStyles","blockName","allowRightClickOverrides","select","getBlock","getBlockName","getSettings","showBlockActions","instanceId","descriptionId","expand","collapse","collapseAll","BlockSettingsMenu","listViewInstanceId","expandedState","setInsertedBlock","treeGridElementRef","rootClientId","isMatch","getBlocksToUpdate","selectedBlockClientIds","isUpdatingSelectedBlocks","includes","firstBlockClientId","firstBlockRootClientId","blocksToUpdate","onKeyDown","event","defaultPrevented","target","closest","isDeleteKey","keyCode","stopPropagation","preventDefault","undefined","_getPreviousBlockClie","blocksToDelete","blockToFocus","shouldUpdateSelection","updateFocusAndSelection","blocks","canDuplicate","every","blockToUpdate","name","updatedBlocks","newlySelectedBlocks","at","blockClientIds","blockParents","groupingBlockName","newBlocks","onMouseEnter","onMouseLeave","selectEditorBlock","focusClientId","shouldSelectBlock","current","toggleExpanded","onContextMenu","click","window","DOMRect","clientX","clientY","onMouseDown","button","settingsPopoverAnchor","ownerDocument","getBoundingClientRect","clearSettingsAnchorRect","rowItemRef","blockPositionDescription","blockPropertiesDescription","hasSiblings","hasRenderedMovers","moverCellClassName","listViewBlockSettingsClassName","colSpan","classes","isSynced","dropdownClientIds","currentlyEditingBlockInCanvas","className","onFocus","onBlur","id","ref","children","tabIndex","onClick","onToggleExpanded","ariaDescribedBy","filter","Boolean","join","withoutGridItem","orientation","clientIds","icon","label","popoverProps","anchor","toggleProps","disableOpenOnArrowDown","__experimentalSelectBlock"],"sources":["@wordpress/block-editor/src/components/list-view/block.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\thasBlockSupport,\n\tswitchToBlockType,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport {\n\t__experimentalTreeGridCell as TreeGridCell,\n\t__experimentalTreeGridItem as TreeGridItem,\n} from '@wordpress/components';\nimport { useInstanceId, useDebounce } from '@wordpress/compose';\nimport { moreVertical } from '@wordpress/icons';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseState,\n\tuseRef,\n\tmemo,\n} from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { BACKSPACE, DELETE } from '@wordpress/keycodes';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\nimport { __unstableUseShortcutEventMatch as useShortcutEventMatch } from '@wordpress/keyboard-shortcuts';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport ListViewLeaf from './leaf';\nimport useListViewScrollIntoView from './use-list-view-scroll-into-view';\nimport {\n\tBlockMoverUpButton,\n\tBlockMoverDownButton,\n} from '../block-mover/button';\nimport ListViewBlockContents from './block-contents';\nimport { useListViewContext } from './context';\nimport {\n\tgetBlockPositionDescription,\n\tgetBlockPropertiesDescription,\n\tfocusListItem,\n} from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { useBlockLock } from '../block-lock';\nimport AriaReferencedText from './aria-referenced-text';\nimport { unlock } from '../../lock-unlock';\nimport usePasteStyles from '../use-paste-styles';\n\nfunction ListViewBlock( {\n\tblock: { clientId },\n\tdisplacement,\n\tisAfterDraggedBlocks,\n\tisDragged,\n\tisNesting,\n\tisSelected,\n\tisBranchSelected,\n\tselectBlock,\n\tposition,\n\tlevel,\n\trowCount,\n\tsiblingBlockCount,\n\tshowBlockMovers,\n\tpath,\n\tisExpanded,\n\tselectedClientIds,\n\tisSyncedBranch,\n} ) {\n\tconst cellRef = useRef( null );\n\tconst rowRef = useRef( null );\n\tconst settingsRef = useRef( null );\n\tconst [ isHovered, setIsHovered ] = useState( false );\n\tconst [ settingsAnchorRect, setSettingsAnchorRect ] = useState();\n\n\tconst { isLocked, canEdit, canMove } = useBlockLock( clientId );\n\n\tconst isFirstSelectedBlock =\n\t\tisSelected && selectedClientIds[ 0 ] === clientId;\n\tconst isLastSelectedBlock =\n\t\tisSelected &&\n\t\tselectedClientIds[ selectedClientIds.length - 1 ] === clientId;\n\n\tconst {\n\t\ttoggleBlockHighlight,\n\t\tduplicateBlocks,\n\t\tmultiSelect,\n\t\treplaceBlocks,\n\t\tremoveBlocks,\n\t\tinsertAfterBlock,\n\t\tinsertBeforeBlock,\n\t\tsetOpenedBlockSettingsMenu,\n\t} = unlock( useDispatch( blockEditorStore ) );\n\tconst debouncedToggleBlockHighlight = useDebounce(\n\t\ttoggleBlockHighlight,\n\t\t50\n\t);\n\n\tconst {\n\t\tcanInsertBlockType,\n\t\tgetSelectedBlockClientIds,\n\t\tgetPreviousBlockClientId,\n\t\tgetBlockRootClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockParents,\n\t\tgetBlocksByClientId,\n\t\tcanRemoveBlocks,\n\t\tisGroupable,\n\t} = useSelect( blockEditorStore );\n\tconst { getGroupingBlockName } = useSelect( blocksStore );\n\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\n\tconst pasteStyles = usePasteStyles();\n\n\tconst { block, blockName, allowRightClickOverrides } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, getBlockName, getSettings } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tblock: getBlock( clientId ),\n\t\t\t\tblockName: getBlockName( clientId ),\n\t\t\t\tallowRightClickOverrides:\n\t\t\t\t\tgetSettings().allowRightClickOverrides,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst showBlockActions =\n\t\t// When a block hides its toolbar it also hides the block settings menu,\n\t\t// since that menu is part of the toolbar in the editor canvas.\n\t\t// List View respects this by also hiding the block settings menu.\n\t\thasBlockSupport( blockName, '__experimentalToolbar', true );\n\tconst instanceId = useInstanceId( ListViewBlock );\n\tconst descriptionId = `list-view-block-select-button__description-${ instanceId }`;\n\n\tconst {\n\t\texpand,\n\t\tcollapse,\n\t\tcollapseAll,\n\t\tBlockSettingsMenu,\n\t\tlistViewInstanceId,\n\t\texpandedState,\n\t\tsetInsertedBlock,\n\t\ttreeGridElementRef,\n\t\trootClientId,\n\t} = useListViewContext();\n\tconst isMatch = useShortcutEventMatch();\n\n\t// Determine which blocks to update:\n\t// If the current (focused) block is part of the block selection, use the whole selection.\n\t// If the focused block is not part of the block selection, only update the focused block.\n\tfunction getBlocksToUpdate() {\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\tconst isUpdatingSelectedBlocks =\n\t\t\tselectedBlockClientIds.includes( clientId );\n\t\tconst firstBlockClientId = isUpdatingSelectedBlocks\n\t\t\t? selectedBlockClientIds[ 0 ]\n\t\t\t: clientId;\n\t\tconst firstBlockRootClientId =\n\t\t\tgetBlockRootClientId( firstBlockClientId );\n\n\t\tconst blocksToUpdate = isUpdatingSelectedBlocks\n\t\t\t? selectedBlockClientIds\n\t\t\t: [ clientId ];\n\n\t\treturn {\n\t\t\tblocksToUpdate,\n\t\t\tfirstBlockClientId,\n\t\t\tfirstBlockRootClientId,\n\t\t\tselectedBlockClientIds,\n\t\t};\n\t}\n\n\t/**\n\t * @param {KeyboardEvent} event\n\t */\n\tasync function onKeyDown( event ) {\n\t\tif ( event.defaultPrevented ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Do not handle events if it comes from modals;\n\t\t// retain the default behavior for these keys.\n\t\tif ( event.target.closest( '[role=dialog]' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isDeleteKey = [ BACKSPACE, DELETE ].includes( event.keyCode );\n\n\t\t// If multiple blocks are selected, deselect all blocks when the user\n\t\t// presses the escape key.\n\t\tif (\n\t\t\tisMatch( 'core/block-editor/unselect', event ) &&\n\t\t\tselectedClientIds.length > 0\n\t\t) {\n\t\t\tevent.stopPropagation();\n\t\t\tevent.preventDefault();\n\t\t\tselectBlock( event, undefined );\n\t\t} else if (\n\t\t\tisDeleteKey ||\n\t\t\tisMatch( 'core/block-editor/remove', event )\n\t\t) {\n\t\t\tconst {\n\t\t\t\tblocksToUpdate: blocksToDelete,\n\t\t\t\tfirstBlockClientId,\n\t\t\t\tfirstBlockRootClientId,\n\t\t\t\tselectedBlockClientIds,\n\t\t\t} = getBlocksToUpdate();\n\n\t\t\t// Don't update the selection if the blocks cannot be deleted.\n\t\t\tif ( ! canRemoveBlocks( blocksToDelete ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet blockToFocus =\n\t\t\t\tgetPreviousBlockClientId( firstBlockClientId ) ??\n\t\t\t\t// If the previous block is not found (when the first block is deleted),\n\t\t\t\t// fallback to focus the parent block.\n\t\t\t\tfirstBlockRootClientId;\n\n\t\t\tremoveBlocks( blocksToDelete, false );\n\n\t\t\t// Update the selection if the original selection has been removed.\n\t\t\tconst shouldUpdateSelection =\n\t\t\t\tselectedBlockClientIds.length > 0 &&\n\t\t\t\tgetSelectedBlockClientIds().length === 0;\n\n\t\t\t// If there's no previous block nor parent block, focus the first block.\n\t\t\tif ( ! blockToFocus ) {\n\t\t\t\tblockToFocus = getBlockOrder()[ 0 ];\n\t\t\t}\n\n\t\t\tupdateFocusAndSelection( blockToFocus, shouldUpdateSelection );\n\t\t} else if ( isMatch( 'core/block-editor/paste-styles', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tconst blocks = getBlocksByClientId( blocksToUpdate );\n\n\t\t\tpasteStyles( blocks );\n\t\t} else if ( isMatch( 'core/block-editor/duplicate', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate, firstBlockRootClientId } =\n\t\t\t\tgetBlocksToUpdate();\n\n\t\t\tconst canDuplicate = getBlocksByClientId( blocksToUpdate ).every(\n\t\t\t\t( blockToUpdate ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t!! blockToUpdate &&\n\t\t\t\t\t\thasBlockSupport(\n\t\t\t\t\t\t\tblockToUpdate.name,\n\t\t\t\t\t\t\t'multiple',\n\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t) &&\n\t\t\t\t\t\tcanInsertBlockType(\n\t\t\t\t\t\t\tblockToUpdate.name,\n\t\t\t\t\t\t\tfirstBlockRootClientId\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( canDuplicate ) {\n\t\t\t\tconst updatedBlocks = await duplicateBlocks(\n\t\t\t\t\tblocksToUpdate,\n\t\t\t\t\tfalse\n\t\t\t\t);\n\n\t\t\t\tif ( updatedBlocks?.length ) {\n\t\t\t\t\t// If blocks have been duplicated, focus the first duplicated block.\n\t\t\t\t\tupdateFocusAndSelection( updatedBlocks[ 0 ], false );\n\t\t\t\t}\n\t\t\t}\n\t\t} else if ( isMatch( 'core/block-editor/insert-before', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tawait insertBeforeBlock( blocksToUpdate[ 0 ] );\n\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\n\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t} else if ( isMatch( 'core/block-editor/insert-after', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tawait insertAfterBlock( blocksToUpdate.at( -1 ) );\n\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\n\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t} else if ( isMatch( 'core/block-editor/select-all', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { firstBlockRootClientId, selectedBlockClientIds } =\n\t\t\t\tgetBlocksToUpdate();\n\t\t\tconst blockClientIds = getBlockOrder( firstBlockRootClientId );\n\t\t\tif ( ! blockClientIds.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If we have selected all sibling nested blocks, try selecting up a level.\n\t\t\t// This is a similar implementation to that used by `useSelectAll`.\n\t\t\t// `isShallowEqual` is used for the list view instead of a length check,\n\t\t\t// as the array of siblings of the currently focused block may be a different\n\t\t\t// set of blocks from the current block selection if the user is focused\n\t\t\t// on a different part of the list view from the block selection.\n\t\t\tif ( isShallowEqual( selectedBlockClientIds, blockClientIds ) ) {\n\t\t\t\t// Only select up a level if the first block is not the root block.\n\t\t\t\t// This ensures that the block selection can't break out of the root block\n\t\t\t\t// used by the list view, if the list view is only showing a partial hierarchy.\n\t\t\t\tif (\n\t\t\t\t\tfirstBlockRootClientId &&\n\t\t\t\t\tfirstBlockRootClientId !== rootClientId\n\t\t\t\t) {\n\t\t\t\t\tupdateFocusAndSelection( firstBlockRootClientId, true );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Select all while passing `null` to skip focusing to the editor canvas,\n\t\t\t// and retain focus within the list view.\n\t\t\tmultiSelect(\n\t\t\t\tblockClientIds[ 0 ],\n\t\t\t\tblockClientIds[ blockClientIds.length - 1 ],\n\t\t\t\tnull\n\t\t\t);\n\t\t} else if ( isMatch( 'core/block-editor/collapse-list-view', event ) ) {\n\t\t\tevent.preventDefault();\n\t\t\tconst { firstBlockClientId } = getBlocksToUpdate();\n\t\t\tconst blockParents = getBlockParents( firstBlockClientId, false );\n\t\t\t// Collapse all blocks.\n\t\t\tcollapseAll();\n\t\t\t// Expand all parents of the current block.\n\t\t\texpand( blockParents );\n\t\t} else if ( isMatch( 'core/block-editor/group', event ) ) {\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tif ( blocksToUpdate.length > 1 && isGroupable( blocksToUpdate ) ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tconst blocks = getBlocksByClientId( blocksToUpdate );\n\t\t\t\tconst groupingBlockName = getGroupingBlockName();\n\t\t\t\tconst newBlocks = switchToBlockType(\n\t\t\t\t\tblocks,\n\t\t\t\t\tgroupingBlockName\n\t\t\t\t);\n\t\t\t\treplaceBlocks( blocksToUpdate, newBlocks );\n\t\t\t\tspeak( __( 'Selected blocks are grouped.' ) );\n\t\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\t\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t\t}\n\t\t}\n\t}\n\n\tconst onMouseEnter = useCallback( () => {\n\t\tsetIsHovered( true );\n\t\tdebouncedToggleBlockHighlight( clientId, true );\n\t}, [ clientId, setIsHovered, debouncedToggleBlockHighlight ] );\n\tconst onMouseLeave = useCallback( () => {\n\t\tsetIsHovered( false );\n\t\tdebouncedToggleBlockHighlight( clientId, false );\n\t}, [ clientId, setIsHovered, debouncedToggleBlockHighlight ] );\n\n\tconst selectEditorBlock = useCallback(\n\t\t( event ) => {\n\t\t\tselectBlock( event, clientId );\n\t\t\tevent.preventDefault();\n\t\t},\n\t\t[ clientId, selectBlock ]\n\t);\n\n\tconst updateFocusAndSelection = useCallback(\n\t\t( focusClientId, shouldSelectBlock ) => {\n\t\t\tif ( shouldSelectBlock ) {\n\t\t\t\tselectBlock( undefined, focusClientId, null, null );\n\t\t\t}\n\n\t\t\tfocusListItem( focusClientId, treeGridElementRef?.current );\n\t\t},\n\t\t[ selectBlock, treeGridElementRef ]\n\t);\n\n\tconst toggleExpanded = useCallback(\n\t\t( event ) => {\n\t\t\t// Prevent shift+click from opening link in a new window when toggling.\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\tif ( isExpanded === true ) {\n\t\t\t\tcollapse( clientId );\n\t\t\t} else if ( isExpanded === false ) {\n\t\t\t\texpand( clientId );\n\t\t\t}\n\t\t},\n\t\t[ clientId, expand, collapse, isExpanded ]\n\t);\n\n\t// Allow right-clicking an item in the List View to open up the block settings dropdown.\n\tconst onContextMenu = useCallback(\n\t\t( event ) => {\n\t\t\tif ( showBlockActions && allowRightClickOverrides ) {\n\t\t\t\tsettingsRef.current?.click();\n\t\t\t\t// Ensure the position of the settings dropdown is at the cursor.\n\t\t\t\tsetSettingsAnchorRect(\n\t\t\t\t\tnew window.DOMRect( event.clientX, event.clientY, 0, 0 )\n\t\t\t\t);\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t[ allowRightClickOverrides, settingsRef, showBlockActions ]\n\t);\n\n\tconst onMouseDown = useCallback(\n\t\t( event ) => {\n\t\t\t// Prevent right-click from focusing the block,\n\t\t\t// because focus will be handled when opening the block settings dropdown.\n\t\t\tif ( allowRightClickOverrides && event.button === 2 ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t[ allowRightClickOverrides ]\n\t);\n\n\tconst settingsPopoverAnchor = useMemo( () => {\n\t\tconst { ownerDocument } = rowRef?.current || {};\n\n\t\t// If no custom position is set, the settings dropdown will be anchored to the\n\t\t// DropdownMenu toggle button.\n\t\tif ( ! settingsAnchorRect || ! ownerDocument ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\t// Position the settings dropdown at the cursor when right-clicking a block.\n\t\treturn {\n\t\t\townerDocument,\n\t\t\tgetBoundingClientRect() {\n\t\t\t\treturn settingsAnchorRect;\n\t\t\t},\n\t\t};\n\t}, [ settingsAnchorRect ] );\n\n\tconst clearSettingsAnchorRect = useCallback( () => {\n\t\t// Clear the custom position for the settings dropdown so that it is restored back\n\t\t// to being anchored to the DropdownMenu toggle button.\n\t\tsetSettingsAnchorRect( undefined );\n\t}, [ setSettingsAnchorRect ] );\n\n\t// Pass in a ref to the row, so that it can be scrolled\n\t// into view when selected. For long lists, the placeholder for the\n\t// selected block is also observed, within ListViewLeafPlaceholder.\n\tuseListViewScrollIntoView( {\n\t\tisSelected,\n\t\trowItemRef: rowRef,\n\t\tselectedClientIds,\n\t} );\n\n\t// When switching between rendering modes (such as template preview and content only),\n\t// it is possible for a block to temporarily be unavailable. In this case, we should not\n\t// render the leaf, to avoid errors further down the tree.\n\tif ( ! block ) {\n\t\treturn null;\n\t}\n\n\tconst blockPositionDescription = getBlockPositionDescription(\n\t\tposition,\n\t\tsiblingBlockCount,\n\t\tlevel\n\t);\n\n\tconst blockPropertiesDescription = getBlockPropertiesDescription(\n\t\tblockInformation,\n\t\tisLocked\n\t);\n\n\tconst hasSiblings = siblingBlockCount > 0;\n\tconst hasRenderedMovers = showBlockMovers && hasSiblings;\n\tconst moverCellClassName = clsx(\n\t\t'block-editor-list-view-block__mover-cell',\n\t\t{ 'is-visible': isHovered || isSelected }\n\t);\n\n\tconst listViewBlockSettingsClassName = clsx(\n\t\t'block-editor-list-view-block__menu-cell',\n\t\t{ 'is-visible': isHovered || isFirstSelectedBlock }\n\t);\n\n\tlet colSpan;\n\tif ( hasRenderedMovers ) {\n\t\tcolSpan = 2;\n\t} else if ( ! showBlockActions ) {\n\t\tcolSpan = 3;\n\t}\n\n\tconst classes = clsx( {\n\t\t'is-selected': isSelected,\n\t\t'is-first-selected': isFirstSelectedBlock,\n\t\t'is-last-selected': isLastSelectedBlock,\n\t\t'is-branch-selected': isBranchSelected,\n\t\t'is-synced-branch': isSyncedBranch,\n\t\t'is-dragging': isDragged,\n\t\t'has-single-cell': ! showBlockActions,\n\t\t'is-synced': blockInformation?.isSynced,\n\t\t'is-draggable': canMove,\n\t\t'is-displacement-normal': displacement === 'normal',\n\t\t'is-displacement-up': displacement === 'up',\n\t\t'is-displacement-down': displacement === 'down',\n\t\t'is-after-dragged-blocks': isAfterDraggedBlocks,\n\t\t'is-nesting': isNesting,\n\t} );\n\n\t// Only include all selected blocks if the currently clicked on block\n\t// is one of the selected blocks. This ensures that if a user attempts\n\t// to alter a block that isn't part of the selection, they're still able\n\t// to do so.\n\tconst dropdownClientIds = selectedClientIds.includes( clientId )\n\t\t? selectedClientIds\n\t\t: [ clientId ];\n\n\t// Detect if there is a block in the canvas currently being edited and multi-selection is not happening.\n\tconst currentlyEditingBlockInCanvas =\n\t\tisSelected && selectedClientIds.length === 1;\n\n\treturn (\n\t\t<ListViewLeaf\n\t\t\tclassName={ classes }\n\t\t\tisDragged={ isDragged }\n\t\t\tonKeyDown={ onKeyDown }\n\t\t\tonMouseEnter={ onMouseEnter }\n\t\t\tonMouseLeave={ onMouseLeave }\n\t\t\tonFocus={ onMouseEnter }\n\t\t\tonBlur={ onMouseLeave }\n\t\t\tlevel={ level }\n\t\t\tposition={ position }\n\t\t\trowCount={ rowCount }\n\t\t\tpath={ path }\n\t\t\tid={ `list-view-${ listViewInstanceId }-block-${ clientId }` }\n\t\t\tdata-block={ clientId }\n\t\t\tdata-expanded={ canEdit ? isExpanded : undefined }\n\t\t\tref={ rowRef }\n\t\t>\n\t\t\t<TreeGridCell\n\t\t\t\tclassName=\"block-editor-list-view-block__contents-cell\"\n\t\t\t\tcolSpan={ colSpan }\n\t\t\t\tref={ cellRef }\n\t\t\t\taria-selected={ !! isSelected }\n\t\t\t>\n\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t<div className=\"block-editor-list-view-block__contents-container\">\n\t\t\t\t\t\t<ListViewBlockContents\n\t\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\t\tonClick={ selectEditorBlock }\n\t\t\t\t\t\t\tonContextMenu={ onContextMenu }\n\t\t\t\t\t\t\tonMouseDown={ onMouseDown }\n\t\t\t\t\t\t\tonToggleExpanded={ toggleExpanded }\n\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\tposition={ position }\n\t\t\t\t\t\t\tsiblingBlockCount={ siblingBlockCount }\n\t\t\t\t\t\t\tlevel={ level }\n\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\ttabIndex={\n\t\t\t\t\t\t\t\tcurrentlyEditingBlockInCanvas ? 0 : tabIndex\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\tisExpanded={ canEdit ? isExpanded : undefined }\n\t\t\t\t\t\t\tselectedClientIds={ selectedClientIds }\n\t\t\t\t\t\t\tariaDescribedBy={ descriptionId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<AriaReferencedText id={ descriptionId }>\n\t\t\t\t\t\t\t{ [\n\t\t\t\t\t\t\t\tblockPositionDescription,\n\t\t\t\t\t\t\t\tblockPropertiesDescription,\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t.filter( Boolean )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t</AriaReferencedText>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</TreeGridCell>\n\t\t\t{ hasRenderedMovers && (\n\t\t\t\t<>\n\t\t\t\t\t<TreeGridCell\n\t\t\t\t\t\tclassName={ moverCellClassName }\n\t\t\t\t\t\twithoutGridItem\n\t\t\t\t\t>\n\t\t\t\t\t\t<TreeGridItem>\n\t\t\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\t\t\t\tclientIds={ [ clientId ] }\n\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</TreeGridItem>\n\t\t\t\t\t\t<TreeGridItem>\n\t\t\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\t\t\t\tclientIds={ [ clientId ] }\n\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</TreeGridItem>\n\t\t\t\t\t</TreeGridCell>\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t{ showBlockActions && BlockSettingsMenu && (\n\t\t\t\t<TreeGridCell\n\t\t\t\t\tclassName={ listViewBlockSettingsClassName }\n\t\t\t\t\taria-selected={ !! isSelected }\n\t\t\t\t\tref={ settingsRef }\n\t\t\t\t>\n\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t<BlockSettingsMenu\n\t\t\t\t\t\t\tclientIds={ dropdownClientIds }\n\t\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\tlabel={ __( 'Options' ) }\n\t\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\t\tanchor: settingsPopoverAnchor, // Used to position the settings at the cursor on right-click.\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\t\tclassName: 'block-editor-list-view-block__menu',\n\t\t\t\t\t\t\t\ttabIndex,\n\t\t\t\t\t\t\t\tonClick: clearSettingsAnchorRect,\n\t\t\t\t\t\t\t\tonFocus,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tdisableOpenOnArrowDown\n\t\t\t\t\t\t\texpand={ expand }\n\t\t\t\t\t\t\texpandedState={ expandedState }\n\t\t\t\t\t\t\tsetInsertedBlock={ setInsertedBlock }\n\t\t\t\t\t\t\t__experimentalSelectBlock={\n\t\t\t\t\t\t\t\tupdateFocusAndSelection\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</TreeGridCell>\n\t\t\t) }\n\t\t</ListViewLeaf>\n\t);\n}\n\nexport default memo( ListViewBlock );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","hasBlockSupport","switchToBlockType","store","blocksStore","__experimentalTreeGridCell","TreeGridCell","__experimentalTreeGridItem","TreeGridItem","useInstanceId","useDebounce","moreVertical","useCallback","useMemo","useState","useRef","memo","useDispatch","useSelect","__","BACKSPACE","DELETE","isShallowEqual","__unstableUseShortcutEventMatch","useShortcutEventMatch","speak","ListViewLeaf","useListViewScrollIntoView","BlockMoverUpButton","BlockMoverDownButton","ListViewBlockContents","useListViewContext","getBlockPositionDescription","getBlockPropertiesDescription","focusListItem","blockEditorStore","useBlockDisplayInformation","useBlockLock","AriaReferencedText","unlock","usePasteStyles","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ListViewBlock","block","clientId","displacement","isAfterDraggedBlocks","isDragged","isNesting","isSelected","isBranchSelected","selectBlock","position","level","rowCount","siblingBlockCount","showBlockMovers","path","isExpanded","selectedClientIds","isSyncedBranch","cellRef","rowRef","settingsRef","isHovered","setIsHovered","settingsAnchorRect","setSettingsAnchorRect","isLocked","canEdit","canMove","isFirstSelectedBlock","isLastSelectedBlock","length","toggleBlockHighlight","duplicateBlocks","multiSelect","replaceBlocks","removeBlocks","insertAfterBlock","insertBeforeBlock","setOpenedBlockSettingsMenu","debouncedToggleBlockHighlight","canInsertBlockType","getSelectedBlockClientIds","getPreviousBlockClientId","getBlockRootClientId","getBlockOrder","getBlockParents","getBlocksByClientId","canRemoveBlocks","isGroupable","getGroupingBlockName","blockInformation","pasteStyles","blockName","allowRightClickOverrides","select","getBlock","getBlockName","getSettings","showBlockActions","instanceId","descriptionId","expand","collapse","collapseAll","BlockSettingsMenu","listViewInstanceId","expandedState","setInsertedBlock","treeGridElementRef","rootClientId","isMatch","getBlocksToUpdate","selectedBlockClientIds","isUpdatingSelectedBlocks","includes","firstBlockClientId","firstBlockRootClientId","blocksToUpdate","onKeyDown","event","defaultPrevented","target","closest","isDeleteKey","keyCode","stopPropagation","preventDefault","undefined","_getPreviousBlockClie","blocksToDelete","blockToFocus","shouldUpdateSelection","updateFocusAndSelection","blocks","canDuplicate","every","blockToUpdate","name","updatedBlocks","newlySelectedBlocks","at","blockClientIds","blockParents","groupingBlockName","newBlocks","onMouseEnter","onMouseLeave","selectEditorBlock","focusClientId","shouldSelectBlock","current","toggleExpanded","onContextMenu","click","window","DOMRect","clientX","clientY","onMouseDown","button","settingsPopoverAnchor","ownerDocument","getBoundingClientRect","clearSettingsAnchorRect","rowItemRef","blockPositionDescription","blockPropertiesDescription","hasSiblings","hasRenderedMovers","moverCellClassName","listViewBlockSettingsClassName","colSpan","classes","isSynced","dropdownClientIds","currentlyEditingBlockInCanvas","className","onFocus","onBlur","id","ref","children","tabIndex","onClick","onToggleExpanded","ariaDescribedBy","filter","Boolean","join","withoutGridItem","orientation","clientIds","icon","label","popoverProps","anchor","toggleProps","size","disableOpenOnArrowDown","__experimentalSelectBlock"],"sources":["@wordpress/block-editor/src/components/list-view/block.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\thasBlockSupport,\n\tswitchToBlockType,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport {\n\t__experimentalTreeGridCell as TreeGridCell,\n\t__experimentalTreeGridItem as TreeGridItem,\n} from '@wordpress/components';\nimport { useInstanceId, useDebounce } from '@wordpress/compose';\nimport { moreVertical } from '@wordpress/icons';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseState,\n\tuseRef,\n\tmemo,\n} from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { BACKSPACE, DELETE } from '@wordpress/keycodes';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\nimport { __unstableUseShortcutEventMatch as useShortcutEventMatch } from '@wordpress/keyboard-shortcuts';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport ListViewLeaf from './leaf';\nimport useListViewScrollIntoView from './use-list-view-scroll-into-view';\nimport {\n\tBlockMoverUpButton,\n\tBlockMoverDownButton,\n} from '../block-mover/button';\nimport ListViewBlockContents from './block-contents';\nimport { useListViewContext } from './context';\nimport {\n\tgetBlockPositionDescription,\n\tgetBlockPropertiesDescription,\n\tfocusListItem,\n} from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { useBlockLock } from '../block-lock';\nimport AriaReferencedText from './aria-referenced-text';\nimport { unlock } from '../../lock-unlock';\nimport usePasteStyles from '../use-paste-styles';\n\nfunction ListViewBlock( {\n\tblock: { clientId },\n\tdisplacement,\n\tisAfterDraggedBlocks,\n\tisDragged,\n\tisNesting,\n\tisSelected,\n\tisBranchSelected,\n\tselectBlock,\n\tposition,\n\tlevel,\n\trowCount,\n\tsiblingBlockCount,\n\tshowBlockMovers,\n\tpath,\n\tisExpanded,\n\tselectedClientIds,\n\tisSyncedBranch,\n} ) {\n\tconst cellRef = useRef( null );\n\tconst rowRef = useRef( null );\n\tconst settingsRef = useRef( null );\n\tconst [ isHovered, setIsHovered ] = useState( false );\n\tconst [ settingsAnchorRect, setSettingsAnchorRect ] = useState();\n\n\tconst { isLocked, canEdit, canMove } = useBlockLock( clientId );\n\n\tconst isFirstSelectedBlock =\n\t\tisSelected && selectedClientIds[ 0 ] === clientId;\n\tconst isLastSelectedBlock =\n\t\tisSelected &&\n\t\tselectedClientIds[ selectedClientIds.length - 1 ] === clientId;\n\n\tconst {\n\t\ttoggleBlockHighlight,\n\t\tduplicateBlocks,\n\t\tmultiSelect,\n\t\treplaceBlocks,\n\t\tremoveBlocks,\n\t\tinsertAfterBlock,\n\t\tinsertBeforeBlock,\n\t\tsetOpenedBlockSettingsMenu,\n\t} = unlock( useDispatch( blockEditorStore ) );\n\tconst debouncedToggleBlockHighlight = useDebounce(\n\t\ttoggleBlockHighlight,\n\t\t50\n\t);\n\n\tconst {\n\t\tcanInsertBlockType,\n\t\tgetSelectedBlockClientIds,\n\t\tgetPreviousBlockClientId,\n\t\tgetBlockRootClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockParents,\n\t\tgetBlocksByClientId,\n\t\tcanRemoveBlocks,\n\t\tisGroupable,\n\t} = useSelect( blockEditorStore );\n\tconst { getGroupingBlockName } = useSelect( blocksStore );\n\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\n\tconst pasteStyles = usePasteStyles();\n\n\tconst { block, blockName, allowRightClickOverrides } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, getBlockName, getSettings } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tblock: getBlock( clientId ),\n\t\t\t\tblockName: getBlockName( clientId ),\n\t\t\t\tallowRightClickOverrides:\n\t\t\t\t\tgetSettings().allowRightClickOverrides,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst showBlockActions =\n\t\t// When a block hides its toolbar it also hides the block settings menu,\n\t\t// since that menu is part of the toolbar in the editor canvas.\n\t\t// List View respects this by also hiding the block settings menu.\n\t\thasBlockSupport( blockName, '__experimentalToolbar', true );\n\tconst instanceId = useInstanceId( ListViewBlock );\n\tconst descriptionId = `list-view-block-select-button__description-${ instanceId }`;\n\n\tconst {\n\t\texpand,\n\t\tcollapse,\n\t\tcollapseAll,\n\t\tBlockSettingsMenu,\n\t\tlistViewInstanceId,\n\t\texpandedState,\n\t\tsetInsertedBlock,\n\t\ttreeGridElementRef,\n\t\trootClientId,\n\t} = useListViewContext();\n\tconst isMatch = useShortcutEventMatch();\n\n\t// Determine which blocks to update:\n\t// If the current (focused) block is part of the block selection, use the whole selection.\n\t// If the focused block is not part of the block selection, only update the focused block.\n\tfunction getBlocksToUpdate() {\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\tconst isUpdatingSelectedBlocks =\n\t\t\tselectedBlockClientIds.includes( clientId );\n\t\tconst firstBlockClientId = isUpdatingSelectedBlocks\n\t\t\t? selectedBlockClientIds[ 0 ]\n\t\t\t: clientId;\n\t\tconst firstBlockRootClientId =\n\t\t\tgetBlockRootClientId( firstBlockClientId );\n\n\t\tconst blocksToUpdate = isUpdatingSelectedBlocks\n\t\t\t? selectedBlockClientIds\n\t\t\t: [ clientId ];\n\n\t\treturn {\n\t\t\tblocksToUpdate,\n\t\t\tfirstBlockClientId,\n\t\t\tfirstBlockRootClientId,\n\t\t\tselectedBlockClientIds,\n\t\t};\n\t}\n\n\t/**\n\t * @param {KeyboardEvent} event\n\t */\n\tasync function onKeyDown( event ) {\n\t\tif ( event.defaultPrevented ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Do not handle events if it comes from modals;\n\t\t// retain the default behavior for these keys.\n\t\tif ( event.target.closest( '[role=dialog]' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isDeleteKey = [ BACKSPACE, DELETE ].includes( event.keyCode );\n\n\t\t// If multiple blocks are selected, deselect all blocks when the user\n\t\t// presses the escape key.\n\t\tif (\n\t\t\tisMatch( 'core/block-editor/unselect', event ) &&\n\t\t\tselectedClientIds.length > 0\n\t\t) {\n\t\t\tevent.stopPropagation();\n\t\t\tevent.preventDefault();\n\t\t\tselectBlock( event, undefined );\n\t\t} else if (\n\t\t\tisDeleteKey ||\n\t\t\tisMatch( 'core/block-editor/remove', event )\n\t\t) {\n\t\t\tconst {\n\t\t\t\tblocksToUpdate: blocksToDelete,\n\t\t\t\tfirstBlockClientId,\n\t\t\t\tfirstBlockRootClientId,\n\t\t\t\tselectedBlockClientIds,\n\t\t\t} = getBlocksToUpdate();\n\n\t\t\t// Don't update the selection if the blocks cannot be deleted.\n\t\t\tif ( ! canRemoveBlocks( blocksToDelete ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet blockToFocus =\n\t\t\t\tgetPreviousBlockClientId( firstBlockClientId ) ??\n\t\t\t\t// If the previous block is not found (when the first block is deleted),\n\t\t\t\t// fallback to focus the parent block.\n\t\t\t\tfirstBlockRootClientId;\n\n\t\t\tremoveBlocks( blocksToDelete, false );\n\n\t\t\t// Update the selection if the original selection has been removed.\n\t\t\tconst shouldUpdateSelection =\n\t\t\t\tselectedBlockClientIds.length > 0 &&\n\t\t\t\tgetSelectedBlockClientIds().length === 0;\n\n\t\t\t// If there's no previous block nor parent block, focus the first block.\n\t\t\tif ( ! blockToFocus ) {\n\t\t\t\tblockToFocus = getBlockOrder()[ 0 ];\n\t\t\t}\n\n\t\t\tupdateFocusAndSelection( blockToFocus, shouldUpdateSelection );\n\t\t} else if ( isMatch( 'core/block-editor/paste-styles', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tconst blocks = getBlocksByClientId( blocksToUpdate );\n\n\t\t\tpasteStyles( blocks );\n\t\t} else if ( isMatch( 'core/block-editor/duplicate', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate, firstBlockRootClientId } =\n\t\t\t\tgetBlocksToUpdate();\n\n\t\t\tconst canDuplicate = getBlocksByClientId( blocksToUpdate ).every(\n\t\t\t\t( blockToUpdate ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t!! blockToUpdate &&\n\t\t\t\t\t\thasBlockSupport(\n\t\t\t\t\t\t\tblockToUpdate.name,\n\t\t\t\t\t\t\t'multiple',\n\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t) &&\n\t\t\t\t\t\tcanInsertBlockType(\n\t\t\t\t\t\t\tblockToUpdate.name,\n\t\t\t\t\t\t\tfirstBlockRootClientId\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( canDuplicate ) {\n\t\t\t\tconst updatedBlocks = await duplicateBlocks(\n\t\t\t\t\tblocksToUpdate,\n\t\t\t\t\tfalse\n\t\t\t\t);\n\n\t\t\t\tif ( updatedBlocks?.length ) {\n\t\t\t\t\t// If blocks have been duplicated, focus the first duplicated block.\n\t\t\t\t\tupdateFocusAndSelection( updatedBlocks[ 0 ], false );\n\t\t\t\t}\n\t\t\t}\n\t\t} else if ( isMatch( 'core/block-editor/insert-before', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tawait insertBeforeBlock( blocksToUpdate[ 0 ] );\n\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\n\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t} else if ( isMatch( 'core/block-editor/insert-after', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tawait insertAfterBlock( blocksToUpdate.at( -1 ) );\n\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\n\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t} else if ( isMatch( 'core/block-editor/select-all', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { firstBlockRootClientId, selectedBlockClientIds } =\n\t\t\t\tgetBlocksToUpdate();\n\t\t\tconst blockClientIds = getBlockOrder( firstBlockRootClientId );\n\t\t\tif ( ! blockClientIds.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If we have selected all sibling nested blocks, try selecting up a level.\n\t\t\t// This is a similar implementation to that used by `useSelectAll`.\n\t\t\t// `isShallowEqual` is used for the list view instead of a length check,\n\t\t\t// as the array of siblings of the currently focused block may be a different\n\t\t\t// set of blocks from the current block selection if the user is focused\n\t\t\t// on a different part of the list view from the block selection.\n\t\t\tif ( isShallowEqual( selectedBlockClientIds, blockClientIds ) ) {\n\t\t\t\t// Only select up a level if the first block is not the root block.\n\t\t\t\t// This ensures that the block selection can't break out of the root block\n\t\t\t\t// used by the list view, if the list view is only showing a partial hierarchy.\n\t\t\t\tif (\n\t\t\t\t\tfirstBlockRootClientId &&\n\t\t\t\t\tfirstBlockRootClientId !== rootClientId\n\t\t\t\t) {\n\t\t\t\t\tupdateFocusAndSelection( firstBlockRootClientId, true );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Select all while passing `null` to skip focusing to the editor canvas,\n\t\t\t// and retain focus within the list view.\n\t\t\tmultiSelect(\n\t\t\t\tblockClientIds[ 0 ],\n\t\t\t\tblockClientIds[ blockClientIds.length - 1 ],\n\t\t\t\tnull\n\t\t\t);\n\t\t} else if ( isMatch( 'core/block-editor/collapse-list-view', event ) ) {\n\t\t\tevent.preventDefault();\n\t\t\tconst { firstBlockClientId } = getBlocksToUpdate();\n\t\t\tconst blockParents = getBlockParents( firstBlockClientId, false );\n\t\t\t// Collapse all blocks.\n\t\t\tcollapseAll();\n\t\t\t// Expand all parents of the current block.\n\t\t\texpand( blockParents );\n\t\t} else if ( isMatch( 'core/block-editor/group', event ) ) {\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tif ( blocksToUpdate.length > 1 && isGroupable( blocksToUpdate ) ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tconst blocks = getBlocksByClientId( blocksToUpdate );\n\t\t\t\tconst groupingBlockName = getGroupingBlockName();\n\t\t\t\tconst newBlocks = switchToBlockType(\n\t\t\t\t\tblocks,\n\t\t\t\t\tgroupingBlockName\n\t\t\t\t);\n\t\t\t\treplaceBlocks( blocksToUpdate, newBlocks );\n\t\t\t\tspeak( __( 'Selected blocks are grouped.' ) );\n\t\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\t\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t\t}\n\t\t}\n\t}\n\n\tconst onMouseEnter = useCallback( () => {\n\t\tsetIsHovered( true );\n\t\tdebouncedToggleBlockHighlight( clientId, true );\n\t}, [ clientId, setIsHovered, debouncedToggleBlockHighlight ] );\n\tconst onMouseLeave = useCallback( () => {\n\t\tsetIsHovered( false );\n\t\tdebouncedToggleBlockHighlight( clientId, false );\n\t}, [ clientId, setIsHovered, debouncedToggleBlockHighlight ] );\n\n\tconst selectEditorBlock = useCallback(\n\t\t( event ) => {\n\t\t\tselectBlock( event, clientId );\n\t\t\tevent.preventDefault();\n\t\t},\n\t\t[ clientId, selectBlock ]\n\t);\n\n\tconst updateFocusAndSelection = useCallback(\n\t\t( focusClientId, shouldSelectBlock ) => {\n\t\t\tif ( shouldSelectBlock ) {\n\t\t\t\tselectBlock( undefined, focusClientId, null, null );\n\t\t\t}\n\n\t\t\tfocusListItem( focusClientId, treeGridElementRef?.current );\n\t\t},\n\t\t[ selectBlock, treeGridElementRef ]\n\t);\n\n\tconst toggleExpanded = useCallback(\n\t\t( event ) => {\n\t\t\t// Prevent shift+click from opening link in a new window when toggling.\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\tif ( isExpanded === true ) {\n\t\t\t\tcollapse( clientId );\n\t\t\t} else if ( isExpanded === false ) {\n\t\t\t\texpand( clientId );\n\t\t\t}\n\t\t},\n\t\t[ clientId, expand, collapse, isExpanded ]\n\t);\n\n\t// Allow right-clicking an item in the List View to open up the block settings dropdown.\n\tconst onContextMenu = useCallback(\n\t\t( event ) => {\n\t\t\tif ( showBlockActions && allowRightClickOverrides ) {\n\t\t\t\tsettingsRef.current?.click();\n\t\t\t\t// Ensure the position of the settings dropdown is at the cursor.\n\t\t\t\tsetSettingsAnchorRect(\n\t\t\t\t\tnew window.DOMRect( event.clientX, event.clientY, 0, 0 )\n\t\t\t\t);\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t[ allowRightClickOverrides, settingsRef, showBlockActions ]\n\t);\n\n\tconst onMouseDown = useCallback(\n\t\t( event ) => {\n\t\t\t// Prevent right-click from focusing the block,\n\t\t\t// because focus will be handled when opening the block settings dropdown.\n\t\t\tif ( allowRightClickOverrides && event.button === 2 ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t[ allowRightClickOverrides ]\n\t);\n\n\tconst settingsPopoverAnchor = useMemo( () => {\n\t\tconst { ownerDocument } = rowRef?.current || {};\n\n\t\t// If no custom position is set, the settings dropdown will be anchored to the\n\t\t// DropdownMenu toggle button.\n\t\tif ( ! settingsAnchorRect || ! ownerDocument ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\t// Position the settings dropdown at the cursor when right-clicking a block.\n\t\treturn {\n\t\t\townerDocument,\n\t\t\tgetBoundingClientRect() {\n\t\t\t\treturn settingsAnchorRect;\n\t\t\t},\n\t\t};\n\t}, [ settingsAnchorRect ] );\n\n\tconst clearSettingsAnchorRect = useCallback( () => {\n\t\t// Clear the custom position for the settings dropdown so that it is restored back\n\t\t// to being anchored to the DropdownMenu toggle button.\n\t\tsetSettingsAnchorRect( undefined );\n\t}, [ setSettingsAnchorRect ] );\n\n\t// Pass in a ref to the row, so that it can be scrolled\n\t// into view when selected. For long lists, the placeholder for the\n\t// selected block is also observed, within ListViewLeafPlaceholder.\n\tuseListViewScrollIntoView( {\n\t\tisSelected,\n\t\trowItemRef: rowRef,\n\t\tselectedClientIds,\n\t} );\n\n\t// When switching between rendering modes (such as template preview and content only),\n\t// it is possible for a block to temporarily be unavailable. In this case, we should not\n\t// render the leaf, to avoid errors further down the tree.\n\tif ( ! block ) {\n\t\treturn null;\n\t}\n\n\tconst blockPositionDescription = getBlockPositionDescription(\n\t\tposition,\n\t\tsiblingBlockCount,\n\t\tlevel\n\t);\n\n\tconst blockPropertiesDescription = getBlockPropertiesDescription(\n\t\tblockInformation,\n\t\tisLocked\n\t);\n\n\tconst hasSiblings = siblingBlockCount > 0;\n\tconst hasRenderedMovers = showBlockMovers && hasSiblings;\n\tconst moverCellClassName = clsx(\n\t\t'block-editor-list-view-block__mover-cell',\n\t\t{ 'is-visible': isHovered || isSelected }\n\t);\n\n\tconst listViewBlockSettingsClassName = clsx(\n\t\t'block-editor-list-view-block__menu-cell',\n\t\t{ 'is-visible': isHovered || isFirstSelectedBlock }\n\t);\n\n\tlet colSpan;\n\tif ( hasRenderedMovers ) {\n\t\tcolSpan = 2;\n\t} else if ( ! showBlockActions ) {\n\t\tcolSpan = 3;\n\t}\n\n\tconst classes = clsx( {\n\t\t'is-selected': isSelected,\n\t\t'is-first-selected': isFirstSelectedBlock,\n\t\t'is-last-selected': isLastSelectedBlock,\n\t\t'is-branch-selected': isBranchSelected,\n\t\t'is-synced-branch': isSyncedBranch,\n\t\t'is-dragging': isDragged,\n\t\t'has-single-cell': ! showBlockActions,\n\t\t'is-synced': blockInformation?.isSynced,\n\t\t'is-draggable': canMove,\n\t\t'is-displacement-normal': displacement === 'normal',\n\t\t'is-displacement-up': displacement === 'up',\n\t\t'is-displacement-down': displacement === 'down',\n\t\t'is-after-dragged-blocks': isAfterDraggedBlocks,\n\t\t'is-nesting': isNesting,\n\t} );\n\n\t// Only include all selected blocks if the currently clicked on block\n\t// is one of the selected blocks. This ensures that if a user attempts\n\t// to alter a block that isn't part of the selection, they're still able\n\t// to do so.\n\tconst dropdownClientIds = selectedClientIds.includes( clientId )\n\t\t? selectedClientIds\n\t\t: [ clientId ];\n\n\t// Detect if there is a block in the canvas currently being edited and multi-selection is not happening.\n\tconst currentlyEditingBlockInCanvas =\n\t\tisSelected && selectedClientIds.length === 1;\n\n\treturn (\n\t\t<ListViewLeaf\n\t\t\tclassName={ classes }\n\t\t\tisDragged={ isDragged }\n\t\t\tonKeyDown={ onKeyDown }\n\t\t\tonMouseEnter={ onMouseEnter }\n\t\t\tonMouseLeave={ onMouseLeave }\n\t\t\tonFocus={ onMouseEnter }\n\t\t\tonBlur={ onMouseLeave }\n\t\t\tlevel={ level }\n\t\t\tposition={ position }\n\t\t\trowCount={ rowCount }\n\t\t\tpath={ path }\n\t\t\tid={ `list-view-${ listViewInstanceId }-block-${ clientId }` }\n\t\t\tdata-block={ clientId }\n\t\t\tdata-expanded={ canEdit ? isExpanded : undefined }\n\t\t\tref={ rowRef }\n\t\t>\n\t\t\t<TreeGridCell\n\t\t\t\tclassName=\"block-editor-list-view-block__contents-cell\"\n\t\t\t\tcolSpan={ colSpan }\n\t\t\t\tref={ cellRef }\n\t\t\t\taria-selected={ !! isSelected }\n\t\t\t>\n\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t<div className=\"block-editor-list-view-block__contents-container\">\n\t\t\t\t\t\t<ListViewBlockContents\n\t\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\t\tonClick={ selectEditorBlock }\n\t\t\t\t\t\t\tonContextMenu={ onContextMenu }\n\t\t\t\t\t\t\tonMouseDown={ onMouseDown }\n\t\t\t\t\t\t\tonToggleExpanded={ toggleExpanded }\n\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\tposition={ position }\n\t\t\t\t\t\t\tsiblingBlockCount={ siblingBlockCount }\n\t\t\t\t\t\t\tlevel={ level }\n\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\ttabIndex={\n\t\t\t\t\t\t\t\tcurrentlyEditingBlockInCanvas ? 0 : tabIndex\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\tisExpanded={ canEdit ? isExpanded : undefined }\n\t\t\t\t\t\t\tselectedClientIds={ selectedClientIds }\n\t\t\t\t\t\t\tariaDescribedBy={ descriptionId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<AriaReferencedText id={ descriptionId }>\n\t\t\t\t\t\t\t{ [\n\t\t\t\t\t\t\t\tblockPositionDescription,\n\t\t\t\t\t\t\t\tblockPropertiesDescription,\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t.filter( Boolean )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t</AriaReferencedText>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</TreeGridCell>\n\t\t\t{ hasRenderedMovers && (\n\t\t\t\t<>\n\t\t\t\t\t<TreeGridCell\n\t\t\t\t\t\tclassName={ moverCellClassName }\n\t\t\t\t\t\twithoutGridItem\n\t\t\t\t\t>\n\t\t\t\t\t\t<TreeGridItem>\n\t\t\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\t\t\t\tclientIds={ [ clientId ] }\n\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</TreeGridItem>\n\t\t\t\t\t\t<TreeGridItem>\n\t\t\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\t\t\t\tclientIds={ [ clientId ] }\n\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</TreeGridItem>\n\t\t\t\t\t</TreeGridCell>\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t{ showBlockActions && BlockSettingsMenu && (\n\t\t\t\t<TreeGridCell\n\t\t\t\t\tclassName={ listViewBlockSettingsClassName }\n\t\t\t\t\taria-selected={ !! isSelected }\n\t\t\t\t\tref={ settingsRef }\n\t\t\t\t>\n\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t<BlockSettingsMenu\n\t\t\t\t\t\t\tclientIds={ dropdownClientIds }\n\t\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\tlabel={ __( 'Options' ) }\n\t\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\t\tanchor: settingsPopoverAnchor, // Used to position the settings at the cursor on right-click.\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\t\tclassName: 'block-editor-list-view-block__menu',\n\t\t\t\t\t\t\t\ttabIndex,\n\t\t\t\t\t\t\t\tonClick: clearSettingsAnchorRect,\n\t\t\t\t\t\t\t\tonFocus,\n\t\t\t\t\t\t\t\tsize: 'small',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tdisableOpenOnArrowDown\n\t\t\t\t\t\t\texpand={ expand }\n\t\t\t\t\t\t\texpandedState={ expandedState }\n\t\t\t\t\t\t\tsetInsertedBlock={ setInsertedBlock }\n\t\t\t\t\t\t\t__experimentalSelectBlock={\n\t\t\t\t\t\t\t\tupdateFocusAndSelection\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</TreeGridCell>\n\t\t\t) }\n\t\t</ListViewLeaf>\n\t);\n}\n\nexport default memo( ListViewBlock );\n"],"mappings":"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","ignoreList":[]}
@@ -17,6 +17,7 @@ export function PublishDateTimePicker({
17
17
  showPopoverHeaderActions,
18
18
  isCompact,
19
19
  currentDate,
20
+ title,
20
21
  ...additionalProps
21
22
  }, ref) {
22
23
  const datePickerProps = {
@@ -31,7 +32,7 @@ export function PublishDateTimePicker({
31
32
  ref: ref,
32
33
  className: "block-editor-publish-date-time-picker",
33
34
  children: [/*#__PURE__*/_jsx(InspectorPopoverHeader, {
34
- title: __('Publish'),
35
+ title: title || __('Publish'),
35
36
  actions: showPopoverHeaderActions ? [{
36
37
  label: __('Now'),
37
38
  onClick: () => onChange?.(null)
@@ -1 +1 @@
1
- {"version":3,"names":["DateTimePicker","TimePicker","__","forwardRef","getSettings","InspectorPopoverHeader","jsx","_jsx","jsxs","_jsxs","PublishDateTimePicker","onClose","onChange","showPopoverHeaderActions","isCompact","currentDate","additionalProps","ref","datePickerProps","startOfWeek","l10n","undefined","currentTime","DatePickerComponent","className","children","title","actions","label","onClick","PrivatePublishDateTimePicker","PublicPublishDateTimePicker","props"],"sources":["@wordpress/block-editor/src/components/publish-date-time-picker/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { DateTimePicker, TimePicker } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { forwardRef } from '@wordpress/element';\nimport { getSettings } from '@wordpress/date';\n\n/**\n * Internal dependencies\n */\nimport InspectorPopoverHeader from '../inspector-popover-header';\n\nexport function PublishDateTimePicker(\n\t{\n\t\tonClose,\n\t\tonChange,\n\t\tshowPopoverHeaderActions,\n\t\tisCompact,\n\t\tcurrentDate,\n\t\t...additionalProps\n\t},\n\tref\n) {\n\tconst datePickerProps = {\n\t\tstartOfWeek: getSettings().l10n.startOfWeek,\n\t\tonChange,\n\t\tcurrentDate: isCompact ? undefined : currentDate,\n\t\tcurrentTime: isCompact ? currentDate : undefined,\n\t\t...additionalProps,\n\t};\n\tconst DatePickerComponent = isCompact ? TimePicker : DateTimePicker;\n\treturn (\n\t\t<div ref={ ref } className=\"block-editor-publish-date-time-picker\">\n\t\t\t<InspectorPopoverHeader\n\t\t\t\ttitle={ __( 'Publish' ) }\n\t\t\t\tactions={\n\t\t\t\t\tshowPopoverHeaderActions\n\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'Now' ),\n\t\t\t\t\t\t\t\t\tonClick: () => onChange?.( null ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t ]\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t\t<DatePickerComponent { ...datePickerProps } />\n\t\t</div>\n\t);\n}\n\nexport const PrivatePublishDateTimePicker = forwardRef( PublishDateTimePicker );\n\nfunction PublicPublishDateTimePicker( props, ref ) {\n\treturn (\n\t\t<PrivatePublishDateTimePicker\n\t\t\t{ ...props }\n\t\t\tshowPopoverHeaderActions\n\t\t\tisCompact={ false }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicPublishDateTimePicker );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,cAAc,EAAEC,UAAU,QAAQ,uBAAuB;AAClE,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,WAAW,QAAQ,iBAAiB;;AAE7C;AACA;AACA;AACA,OAAOC,sBAAsB,MAAM,6BAA6B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEjE,OAAO,SAASC,qBAAqBA,CACpC;EACCC,OAAO;EACPC,QAAQ;EACRC,wBAAwB;EACxBC,SAAS;EACTC,WAAW;EACX,GAAGC;AACJ,CAAC,EACDC,GAAG,EACF;EACD,MAAMC,eAAe,GAAG;IACvBC,WAAW,EAAEf,WAAW,CAAC,CAAC,CAACgB,IAAI,CAACD,WAAW;IAC3CP,QAAQ;IACRG,WAAW,EAAED,SAAS,GAAGO,SAAS,GAAGN,WAAW;IAChDO,WAAW,EAAER,SAAS,GAAGC,WAAW,GAAGM,SAAS;IAChD,GAAGL;EACJ,CAAC;EACD,MAAMO,mBAAmB,GAAGT,SAAS,GAAGb,UAAU,GAAGD,cAAc;EACnE,oBACCS,KAAA;IAAKQ,GAAG,EAAGA,GAAK;IAACO,SAAS,EAAC,uCAAuC;IAAAC,QAAA,gBACjElB,IAAA,CAACF,sBAAsB;MACtBqB,KAAK,EAAGxB,EAAE,CAAE,SAAU,CAAG;MACzByB,OAAO,EACNd,wBAAwB,GACrB,CACA;QACCe,KAAK,EAAE1B,EAAE,CAAE,KAAM,CAAC;QAClB2B,OAAO,EAAEA,CAAA,KAAMjB,QAAQ,GAAI,IAAK;MACjC,CAAC,CACA,GACDS,SACH;MACDV,OAAO,EAAGA;IAAS,CACnB,CAAC,eACFJ,IAAA,CAACgB,mBAAmB;MAAA,GAAML;IAAe,CAAI,CAAC;EAAA,CAC1C,CAAC;AAER;AAEA,OAAO,MAAMY,4BAA4B,GAAG3B,UAAU,CAAEO,qBAAsB,CAAC;AAE/E,SAASqB,2BAA2BA,CAAEC,KAAK,EAAEf,GAAG,EAAG;EAClD,oBACCV,IAAA,CAACuB,4BAA4B;IAAA,GACvBE,KAAK;IACVnB,wBAAwB;IACxBC,SAAS,EAAG,KAAO;IACnBG,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAEA,eAAed,UAAU,CAAE4B,2BAA4B,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["DateTimePicker","TimePicker","__","forwardRef","getSettings","InspectorPopoverHeader","jsx","_jsx","jsxs","_jsxs","PublishDateTimePicker","onClose","onChange","showPopoverHeaderActions","isCompact","currentDate","title","additionalProps","ref","datePickerProps","startOfWeek","l10n","undefined","currentTime","DatePickerComponent","className","children","actions","label","onClick","PrivatePublishDateTimePicker","PublicPublishDateTimePicker","props"],"sources":["@wordpress/block-editor/src/components/publish-date-time-picker/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { DateTimePicker, TimePicker } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { forwardRef } from '@wordpress/element';\nimport { getSettings } from '@wordpress/date';\n\n/**\n * Internal dependencies\n */\nimport InspectorPopoverHeader from '../inspector-popover-header';\n\nexport function PublishDateTimePicker(\n\t{\n\t\tonClose,\n\t\tonChange,\n\t\tshowPopoverHeaderActions,\n\t\tisCompact,\n\t\tcurrentDate,\n\t\ttitle,\n\t\t...additionalProps\n\t},\n\tref\n) {\n\tconst datePickerProps = {\n\t\tstartOfWeek: getSettings().l10n.startOfWeek,\n\t\tonChange,\n\t\tcurrentDate: isCompact ? undefined : currentDate,\n\t\tcurrentTime: isCompact ? currentDate : undefined,\n\t\t...additionalProps,\n\t};\n\tconst DatePickerComponent = isCompact ? TimePicker : DateTimePicker;\n\treturn (\n\t\t<div ref={ ref } className=\"block-editor-publish-date-time-picker\">\n\t\t\t<InspectorPopoverHeader\n\t\t\t\ttitle={ title || __( 'Publish' ) }\n\t\t\t\tactions={\n\t\t\t\t\tshowPopoverHeaderActions\n\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'Now' ),\n\t\t\t\t\t\t\t\t\tonClick: () => onChange?.( null ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t ]\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t\t<DatePickerComponent { ...datePickerProps } />\n\t\t</div>\n\t);\n}\n\nexport const PrivatePublishDateTimePicker = forwardRef( PublishDateTimePicker );\n\nfunction PublicPublishDateTimePicker( props, ref ) {\n\treturn (\n\t\t<PrivatePublishDateTimePicker\n\t\t\t{ ...props }\n\t\t\tshowPopoverHeaderActions\n\t\t\tisCompact={ false }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicPublishDateTimePicker );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,cAAc,EAAEC,UAAU,QAAQ,uBAAuB;AAClE,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,WAAW,QAAQ,iBAAiB;;AAE7C;AACA;AACA;AACA,OAAOC,sBAAsB,MAAM,6BAA6B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEjE,OAAO,SAASC,qBAAqBA,CACpC;EACCC,OAAO;EACPC,QAAQ;EACRC,wBAAwB;EACxBC,SAAS;EACTC,WAAW;EACXC,KAAK;EACL,GAAGC;AACJ,CAAC,EACDC,GAAG,EACF;EACD,MAAMC,eAAe,GAAG;IACvBC,WAAW,EAAEhB,WAAW,CAAC,CAAC,CAACiB,IAAI,CAACD,WAAW;IAC3CR,QAAQ;IACRG,WAAW,EAAED,SAAS,GAAGQ,SAAS,GAAGP,WAAW;IAChDQ,WAAW,EAAET,SAAS,GAAGC,WAAW,GAAGO,SAAS;IAChD,GAAGL;EACJ,CAAC;EACD,MAAMO,mBAAmB,GAAGV,SAAS,GAAGb,UAAU,GAAGD,cAAc;EACnE,oBACCS,KAAA;IAAKS,GAAG,EAAGA,GAAK;IAACO,SAAS,EAAC,uCAAuC;IAAAC,QAAA,gBACjEnB,IAAA,CAACF,sBAAsB;MACtBW,KAAK,EAAGA,KAAK,IAAId,EAAE,CAAE,SAAU,CAAG;MAClCyB,OAAO,EACNd,wBAAwB,GACrB,CACA;QACCe,KAAK,EAAE1B,EAAE,CAAE,KAAM,CAAC;QAClB2B,OAAO,EAAEA,CAAA,KAAMjB,QAAQ,GAAI,IAAK;MACjC,CAAC,CACA,GACDU,SACH;MACDX,OAAO,EAAGA;IAAS,CACnB,CAAC,eACFJ,IAAA,CAACiB,mBAAmB;MAAA,GAAML;IAAe,CAAI,CAAC;EAAA,CAC1C,CAAC;AAER;AAEA,OAAO,MAAMW,4BAA4B,GAAG3B,UAAU,CAAEO,qBAAsB,CAAC;AAE/E,SAASqB,2BAA2BA,CAAEC,KAAK,EAAEd,GAAG,EAAG;EAClD,oBACCX,IAAA,CAACuB,4BAA4B;IAAA,GACvBE,KAAK;IACVnB,wBAAwB;IACxBC,SAAS,EAAG,KAAO;IACnBI,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAEA,eAAef,UAAU,CAAE4B,2BAA4B,CAAC","ignoreList":[]}
@@ -28,7 +28,9 @@ export default function useClickSelection() {
28
28
  const startClientId = getBlockSelectionStart();
29
29
  const clickedClientId = getBlockClientId(event.target);
30
30
  if (event.shiftKey) {
31
- if (startClientId !== clickedClientId) {
31
+ // When selecting a single block in a document by holding the shift key,
32
+ // don't mark this action as multiselection.
33
+ if (startClientId && startClientId !== clickedClientId) {
32
34
  node.contentEditable = true;
33
35
  // Firefox doesn't automatically move focus.
34
36
  node.focus();
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","getBlockClientId","useClickSelection","selectBlock","isSelectionEnabled","getBlockSelectionStart","hasMultiSelection","node","onMouseDown","event","button","startClientId","clickedClientId","target","shiftKey","contentEditable","focus","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/writing-flow/use-click-selection.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { getBlockClientId } from '../../utils/dom';\n\nexport default function useClickSelection() {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst { isSelectionEnabled, getBlockSelectionStart, hasMultiSelection } =\n\t\tuseSelect( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tfunction onMouseDown( event ) {\n\t\t\t\t// The main button.\n\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button\n\t\t\t\tif ( ! isSelectionEnabled() || event.button !== 0 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst startClientId = getBlockSelectionStart();\n\t\t\t\tconst clickedClientId = getBlockClientId( event.target );\n\n\t\t\t\tif ( event.shiftKey ) {\n\t\t\t\t\tif ( startClientId !== clickedClientId ) {\n\t\t\t\t\t\tnode.contentEditable = true;\n\t\t\t\t\t\t// Firefox doesn't automatically move focus.\n\t\t\t\t\t\tnode.focus();\n\t\t\t\t\t}\n\t\t\t\t} else if ( hasMultiSelection() ) {\n\t\t\t\t\t// Allow user to escape out of a multi-selection to a\n\t\t\t\t\t// singular selection of a block via click. This is handled\n\t\t\t\t\t// here since focus handling excludes blocks when there is\n\t\t\t\t\t// multiselection, as focus can be incurred by starting a\n\t\t\t\t\t// multiselection (focus moved to first block's multi-\n\t\t\t\t\t// controls).\n\t\t\t\t\tselectBlock( clickedClientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tselectBlock,\n\t\t\tisSelectionEnabled,\n\t\t\tgetBlockSelectionStart,\n\t\t\thasMultiSelection,\n\t\t]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,gBAAgB,QAAQ,iBAAiB;AAElD,eAAe,SAASC,iBAAiBA,CAAA,EAAG;EAC3C,MAAM;IAAEC;EAAY,CAAC,GAAGN,WAAW,CAAEG,gBAAiB,CAAC;EACvD,MAAM;IAAEI,kBAAkB;IAAEC,sBAAsB;IAAEC;EAAkB,CAAC,GACtEV,SAAS,CAAEI,gBAAiB,CAAC;EAC9B,OAAOF,YAAY,CAChBS,IAAI,IAAM;IACX,SAASC,WAAWA,CAAEC,KAAK,EAAG;MAC7B;MACA;MACA,IAAK,CAAEL,kBAAkB,CAAC,CAAC,IAAIK,KAAK,CAACC,MAAM,KAAK,CAAC,EAAG;QACnD;MACD;MAEA,MAAMC,aAAa,GAAGN,sBAAsB,CAAC,CAAC;MAC9C,MAAMO,eAAe,GAAGX,gBAAgB,CAAEQ,KAAK,CAACI,MAAO,CAAC;MAExD,IAAKJ,KAAK,CAACK,QAAQ,EAAG;QACrB,IAAKH,aAAa,KAAKC,eAAe,EAAG;UACxCL,IAAI,CAACQ,eAAe,GAAG,IAAI;UAC3B;UACAR,IAAI,CAACS,KAAK,CAAC,CAAC;QACb;MACD,CAAC,MAAM,IAAKV,iBAAiB,CAAC,CAAC,EAAG;QACjC;QACA;QACA;QACA;QACA;QACA;QACAH,WAAW,CAAES,eAAgB,CAAC;MAC/B;IACD;IAEAL,IAAI,CAACU,gBAAgB,CAAE,WAAW,EAAET,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZD,IAAI,CAACW,mBAAmB,CAAE,WAAW,EAAEV,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CACCL,WAAW,EACXC,kBAAkB,EAClBC,sBAAsB,EACtBC,iBAAiB,CAEnB,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","getBlockClientId","useClickSelection","selectBlock","isSelectionEnabled","getBlockSelectionStart","hasMultiSelection","node","onMouseDown","event","button","startClientId","clickedClientId","target","shiftKey","contentEditable","focus","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/writing-flow/use-click-selection.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { getBlockClientId } from '../../utils/dom';\n\nexport default function useClickSelection() {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst { isSelectionEnabled, getBlockSelectionStart, hasMultiSelection } =\n\t\tuseSelect( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tfunction onMouseDown( event ) {\n\t\t\t\t// The main button.\n\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button\n\t\t\t\tif ( ! isSelectionEnabled() || event.button !== 0 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst startClientId = getBlockSelectionStart();\n\t\t\t\tconst clickedClientId = getBlockClientId( event.target );\n\n\t\t\t\tif ( event.shiftKey ) {\n\t\t\t\t\t// When selecting a single block in a document by holding the shift key,\n\t\t\t\t\t// don't mark this action as multiselection.\n\t\t\t\t\tif ( startClientId && startClientId !== clickedClientId ) {\n\t\t\t\t\t\tnode.contentEditable = true;\n\t\t\t\t\t\t// Firefox doesn't automatically move focus.\n\t\t\t\t\t\tnode.focus();\n\t\t\t\t\t}\n\t\t\t\t} else if ( hasMultiSelection() ) {\n\t\t\t\t\t// Allow user to escape out of a multi-selection to a\n\t\t\t\t\t// singular selection of a block via click. This is handled\n\t\t\t\t\t// here since focus handling excludes blocks when there is\n\t\t\t\t\t// multiselection, as focus can be incurred by starting a\n\t\t\t\t\t// multiselection (focus moved to first block's multi-\n\t\t\t\t\t// controls).\n\t\t\t\t\tselectBlock( clickedClientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tselectBlock,\n\t\t\tisSelectionEnabled,\n\t\t\tgetBlockSelectionStart,\n\t\t\thasMultiSelection,\n\t\t]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,gBAAgB,QAAQ,iBAAiB;AAElD,eAAe,SAASC,iBAAiBA,CAAA,EAAG;EAC3C,MAAM;IAAEC;EAAY,CAAC,GAAGN,WAAW,CAAEG,gBAAiB,CAAC;EACvD,MAAM;IAAEI,kBAAkB;IAAEC,sBAAsB;IAAEC;EAAkB,CAAC,GACtEV,SAAS,CAAEI,gBAAiB,CAAC;EAC9B,OAAOF,YAAY,CAChBS,IAAI,IAAM;IACX,SAASC,WAAWA,CAAEC,KAAK,EAAG;MAC7B;MACA;MACA,IAAK,CAAEL,kBAAkB,CAAC,CAAC,IAAIK,KAAK,CAACC,MAAM,KAAK,CAAC,EAAG;QACnD;MACD;MAEA,MAAMC,aAAa,GAAGN,sBAAsB,CAAC,CAAC;MAC9C,MAAMO,eAAe,GAAGX,gBAAgB,CAAEQ,KAAK,CAACI,MAAO,CAAC;MAExD,IAAKJ,KAAK,CAACK,QAAQ,EAAG;QACrB;QACA;QACA,IAAKH,aAAa,IAAIA,aAAa,KAAKC,eAAe,EAAG;UACzDL,IAAI,CAACQ,eAAe,GAAG,IAAI;UAC3B;UACAR,IAAI,CAACS,KAAK,CAAC,CAAC;QACb;MACD,CAAC,MAAM,IAAKV,iBAAiB,CAAC,CAAC,EAAG;QACjC;QACA;QACA;QACA;QACA;QACA;QACAH,WAAW,CAAES,eAAgB,CAAC;MAC/B;IACD;IAEAL,IAAI,CAACU,gBAAgB,CAAE,WAAW,EAAET,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZD,IAAI,CAACW,mBAAmB,CAAE,WAAW,EAAEV,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CACCL,WAAW,EACXC,kBAAkB,EAClBC,sBAAsB,EACtBC,iBAAiB,CAEnB,CAAC;AACF","ignoreList":[]}
@@ -23,7 +23,7 @@ import { usesContextKey } from './components/rich-text/format-edit';
23
23
  import { ExperimentalBlockCanvas } from './components/block-canvas';
24
24
  import { getDuotoneFilter } from './components/duotone/utils';
25
25
  import { useFlashEditableBlocks } from './components/use-flash-editable-blocks';
26
- import { selectBlockPatternsKey, reusableBlocksSelectKey, globalStylesDataKey, globalStylesLinksDataKey, sectionRootClientIdKey } from './store/private-keys';
26
+ import { selectBlockPatternsKey, reusableBlocksSelectKey, globalStylesDataKey, globalStylesLinksDataKey, sectionRootClientIdKey, mediaEditKey } from './store/private-keys';
27
27
  import { requiresWrapperOnCopy } from './components/writing-flow/utils';
28
28
  import { PrivateRichText } from './components/rich-text/';
29
29
  import { PrivateBlockPopover } from './components/block-popover';
@@ -82,6 +82,7 @@ lock(privateApis, {
82
82
  setBackgroundStyleDefaults,
83
83
  sectionRootClientIdKey,
84
84
  CommentIconSlotFill,
85
- CommentIconToolbarSlotFill
85
+ CommentIconToolbarSlotFill,
86
+ mediaEditKey
86
87
  });
87
88
  //# sourceMappingURL=private-apis.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["globalStyles","ExperimentalBlockEditorProvider","lock","getRichTextValues","ResizableBoxPopover","default","PrivateQuickInserter","extractWords","getNormalizedSearchTerms","normalizeString","PrivateListView","useHasBlockToolbar","cleanEmptyObject","BlockQuickNavigation","LayoutStyle","BlockManager","BlockRemovalWarningModal","setBackgroundStyleDefaults","useLayoutClasses","useLayoutStyles","__unstableBlockStyleVariationOverridesWithConfig","useZoomOut","DimensionsTool","ResolutionTool","TextAlignmentControl","usesContextKey","ExperimentalBlockCanvas","getDuotoneFilter","useFlashEditableBlocks","selectBlockPatternsKey","reusableBlocksSelectKey","globalStylesDataKey","globalStylesLinksDataKey","sectionRootClientIdKey","requiresWrapperOnCopy","PrivateRichText","PrivateBlockPopover","PrivateInserterLibrary","PrivatePublishDateTimePicker","useSpacingSizes","useBlockDisplayTitle","TabbedSidebar","CommentIconSlotFill","CommentIconToolbarSlotFill","HTMLElementControl","privateApis"],"sources":["@wordpress/block-editor/src/private-apis.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport * as globalStyles from './components/global-styles';\nimport { ExperimentalBlockEditorProvider } from './components/provider';\nimport { lock } from './lock-unlock';\nimport { getRichTextValues } from './components/rich-text/get-rich-text-values';\nimport ResizableBoxPopover from './components/resizable-box-popover';\nimport { default as PrivateQuickInserter } from './components/inserter/quick-inserter';\nimport {\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n} from './components/inserter/search-items';\nimport { PrivateListView } from './components/list-view';\nimport { useHasBlockToolbar } from './components/block-toolbar/use-has-block-toolbar';\nimport { cleanEmptyObject } from './hooks/utils';\nimport BlockQuickNavigation from './components/block-quick-navigation';\nimport { LayoutStyle } from './components/block-list/layout';\nimport BlockManager from './components/block-manager';\nimport { BlockRemovalWarningModal } from './components/block-removal-warning-modal';\nimport {\n\tsetBackgroundStyleDefaults,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tuseZoomOut,\n} from './hooks';\nimport DimensionsTool from './components/dimensions-tool';\nimport ResolutionTool from './components/resolution-tool';\nimport TextAlignmentControl from './components/text-alignment-control';\nimport { usesContextKey } from './components/rich-text/format-edit';\nimport { ExperimentalBlockCanvas } from './components/block-canvas';\nimport { getDuotoneFilter } from './components/duotone/utils';\nimport { useFlashEditableBlocks } from './components/use-flash-editable-blocks';\nimport {\n\tselectBlockPatternsKey,\n\treusableBlocksSelectKey,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tsectionRootClientIdKey,\n} from './store/private-keys';\nimport { requiresWrapperOnCopy } from './components/writing-flow/utils';\nimport { PrivateRichText } from './components/rich-text/';\nimport { PrivateBlockPopover } from './components/block-popover';\nimport { PrivateInserterLibrary } from './components/inserter/library';\nimport { PrivatePublishDateTimePicker } from './components/publish-date-time-picker';\nimport useSpacingSizes from './components/spacing-sizes-control/hooks/use-spacing-sizes';\nimport useBlockDisplayTitle from './components/block-title/use-block-display-title';\nimport TabbedSidebar from './components/tabbed-sidebar';\nimport CommentIconSlotFill from './components/collab/block-comment-icon-slot';\nimport CommentIconToolbarSlotFill from './components/collab/block-comment-icon-toolbar-slot';\nimport HTMLElementControl from './components/html-element-control';\n/**\n * Private @wordpress/block-editor APIs.\n */\nexport const privateApis = {};\nlock( privateApis, {\n\t...globalStyles,\n\tExperimentalBlockCanvas,\n\tExperimentalBlockEditorProvider,\n\tgetDuotoneFilter,\n\tgetRichTextValues,\n\tPrivateQuickInserter,\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n\tPrivateListView,\n\tResizableBoxPopover,\n\tuseHasBlockToolbar,\n\tcleanEmptyObject,\n\tBlockQuickNavigation,\n\tLayoutStyle,\n\tBlockManager,\n\tBlockRemovalWarningModal,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tDimensionsTool,\n\tResolutionTool,\n\tTabbedSidebar,\n\tTextAlignmentControl,\n\tusesContextKey,\n\tuseFlashEditableBlocks,\n\tHTMLElementControl,\n\tuseZoomOut,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tselectBlockPatternsKey,\n\trequiresWrapperOnCopy,\n\tPrivateRichText,\n\tPrivateInserterLibrary,\n\treusableBlocksSelectKey,\n\tPrivateBlockPopover,\n\tPrivatePublishDateTimePicker,\n\tuseSpacingSizes,\n\tuseBlockDisplayTitle,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tsetBackgroundStyleDefaults,\n\tsectionRootClientIdKey,\n\tCommentIconSlotFill,\n\tCommentIconToolbarSlotFill,\n} );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAO,KAAKA,YAAY,MAAM,4BAA4B;AAC1D,SAASC,+BAA+B,QAAQ,uBAAuB;AACvE,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,iBAAiB,QAAQ,6CAA6C;AAC/E,OAAOC,mBAAmB,MAAM,oCAAoC;AACpE,SAASC,OAAO,IAAIC,oBAAoB,QAAQ,sCAAsC;AACtF,SACCC,YAAY,EACZC,wBAAwB,EACxBC,eAAe,QACT,oCAAoC;AAC3C,SAASC,eAAe,QAAQ,wBAAwB;AACxD,SAASC,kBAAkB,QAAQ,kDAAkD;AACrF,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,oBAAoB,MAAM,qCAAqC;AACtE,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,OAAOC,YAAY,MAAM,4BAA4B;AACrD,SAASC,wBAAwB,QAAQ,0CAA0C;AACnF,SACCC,0BAA0B,EAC1BC,gBAAgB,EAChBC,eAAe,EACfC,gDAAgD,EAChDC,UAAU,QACJ,SAAS;AAChB,OAAOC,cAAc,MAAM,8BAA8B;AACzD,OAAOC,cAAc,MAAM,8BAA8B;AACzD,OAAOC,oBAAoB,MAAM,qCAAqC;AACtE,SAASC,cAAc,QAAQ,oCAAoC;AACnE,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,sBAAsB,QAAQ,wCAAwC;AAC/E,SACCC,sBAAsB,EACtBC,uBAAuB,EACvBC,mBAAmB,EACnBC,wBAAwB,EACxBC,sBAAsB,QAChB,sBAAsB;AAC7B,SAASC,qBAAqB,QAAQ,iCAAiC;AACvE,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAASC,mBAAmB,QAAQ,4BAA4B;AAChE,SAASC,sBAAsB,QAAQ,+BAA+B;AACtE,SAASC,4BAA4B,QAAQ,uCAAuC;AACpF,OAAOC,eAAe,MAAM,4DAA4D;AACxF,OAAOC,oBAAoB,MAAM,kDAAkD;AACnF,OAAOC,aAAa,MAAM,6BAA6B;AACvD,OAAOC,mBAAmB,MAAM,6CAA6C;AAC7E,OAAOC,0BAA0B,MAAM,qDAAqD;AAC5F,OAAOC,kBAAkB,MAAM,mCAAmC;AAClE;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAG,CAAC,CAAC;AAC7B3C,IAAI,CAAE2C,WAAW,EAAE;EAClB,GAAG7C,YAAY;EACf0B,uBAAuB;EACvBzB,+BAA+B;EAC/B0B,gBAAgB;EAChBxB,iBAAiB;EACjBG,oBAAoB;EACpBC,YAAY;EACZC,wBAAwB;EACxBC,eAAe;EACfC,eAAe;EACfN,mBAAmB;EACnBO,kBAAkB;EAClBC,gBAAgB;EAChBC,oBAAoB;EACpBC,WAAW;EACXC,YAAY;EACZC,wBAAwB;EACxBE,gBAAgB;EAChBC,eAAe;EACfG,cAAc;EACdC,cAAc;EACdkB,aAAa;EACbjB,oBAAoB;EACpBC,cAAc;EACdG,sBAAsB;EACtBgB,kBAAkB;EAClBvB,UAAU;EACVU,mBAAmB;EACnBC,wBAAwB;EACxBH,sBAAsB;EACtBK,qBAAqB;EACrBC,eAAe;EACfE,sBAAsB;EACtBP,uBAAuB;EACvBM,mBAAmB;EACnBE,4BAA4B;EAC5BC,eAAe;EACfC,oBAAoB;EACpBpB,gDAAgD;EAChDH,0BAA0B;EAC1BgB,sBAAsB;EACtBS,mBAAmB;EACnBC;AACD,CAAE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["globalStyles","ExperimentalBlockEditorProvider","lock","getRichTextValues","ResizableBoxPopover","default","PrivateQuickInserter","extractWords","getNormalizedSearchTerms","normalizeString","PrivateListView","useHasBlockToolbar","cleanEmptyObject","BlockQuickNavigation","LayoutStyle","BlockManager","BlockRemovalWarningModal","setBackgroundStyleDefaults","useLayoutClasses","useLayoutStyles","__unstableBlockStyleVariationOverridesWithConfig","useZoomOut","DimensionsTool","ResolutionTool","TextAlignmentControl","usesContextKey","ExperimentalBlockCanvas","getDuotoneFilter","useFlashEditableBlocks","selectBlockPatternsKey","reusableBlocksSelectKey","globalStylesDataKey","globalStylesLinksDataKey","sectionRootClientIdKey","mediaEditKey","requiresWrapperOnCopy","PrivateRichText","PrivateBlockPopover","PrivateInserterLibrary","PrivatePublishDateTimePicker","useSpacingSizes","useBlockDisplayTitle","TabbedSidebar","CommentIconSlotFill","CommentIconToolbarSlotFill","HTMLElementControl","privateApis"],"sources":["@wordpress/block-editor/src/private-apis.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport * as globalStyles from './components/global-styles';\nimport { ExperimentalBlockEditorProvider } from './components/provider';\nimport { lock } from './lock-unlock';\nimport { getRichTextValues } from './components/rich-text/get-rich-text-values';\nimport ResizableBoxPopover from './components/resizable-box-popover';\nimport { default as PrivateQuickInserter } from './components/inserter/quick-inserter';\nimport {\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n} from './components/inserter/search-items';\nimport { PrivateListView } from './components/list-view';\nimport { useHasBlockToolbar } from './components/block-toolbar/use-has-block-toolbar';\nimport { cleanEmptyObject } from './hooks/utils';\nimport BlockQuickNavigation from './components/block-quick-navigation';\nimport { LayoutStyle } from './components/block-list/layout';\nimport BlockManager from './components/block-manager';\nimport { BlockRemovalWarningModal } from './components/block-removal-warning-modal';\nimport {\n\tsetBackgroundStyleDefaults,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tuseZoomOut,\n} from './hooks';\nimport DimensionsTool from './components/dimensions-tool';\nimport ResolutionTool from './components/resolution-tool';\nimport TextAlignmentControl from './components/text-alignment-control';\nimport { usesContextKey } from './components/rich-text/format-edit';\nimport { ExperimentalBlockCanvas } from './components/block-canvas';\nimport { getDuotoneFilter } from './components/duotone/utils';\nimport { useFlashEditableBlocks } from './components/use-flash-editable-blocks';\nimport {\n\tselectBlockPatternsKey,\n\treusableBlocksSelectKey,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tsectionRootClientIdKey,\n\tmediaEditKey,\n} from './store/private-keys';\nimport { requiresWrapperOnCopy } from './components/writing-flow/utils';\nimport { PrivateRichText } from './components/rich-text/';\nimport { PrivateBlockPopover } from './components/block-popover';\nimport { PrivateInserterLibrary } from './components/inserter/library';\nimport { PrivatePublishDateTimePicker } from './components/publish-date-time-picker';\nimport useSpacingSizes from './components/spacing-sizes-control/hooks/use-spacing-sizes';\nimport useBlockDisplayTitle from './components/block-title/use-block-display-title';\nimport TabbedSidebar from './components/tabbed-sidebar';\nimport CommentIconSlotFill from './components/collab/block-comment-icon-slot';\nimport CommentIconToolbarSlotFill from './components/collab/block-comment-icon-toolbar-slot';\nimport HTMLElementControl from './components/html-element-control';\n/**\n * Private @wordpress/block-editor APIs.\n */\nexport const privateApis = {};\nlock( privateApis, {\n\t...globalStyles,\n\tExperimentalBlockCanvas,\n\tExperimentalBlockEditorProvider,\n\tgetDuotoneFilter,\n\tgetRichTextValues,\n\tPrivateQuickInserter,\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n\tPrivateListView,\n\tResizableBoxPopover,\n\tuseHasBlockToolbar,\n\tcleanEmptyObject,\n\tBlockQuickNavigation,\n\tLayoutStyle,\n\tBlockManager,\n\tBlockRemovalWarningModal,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tDimensionsTool,\n\tResolutionTool,\n\tTabbedSidebar,\n\tTextAlignmentControl,\n\tusesContextKey,\n\tuseFlashEditableBlocks,\n\tHTMLElementControl,\n\tuseZoomOut,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tselectBlockPatternsKey,\n\trequiresWrapperOnCopy,\n\tPrivateRichText,\n\tPrivateInserterLibrary,\n\treusableBlocksSelectKey,\n\tPrivateBlockPopover,\n\tPrivatePublishDateTimePicker,\n\tuseSpacingSizes,\n\tuseBlockDisplayTitle,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tsetBackgroundStyleDefaults,\n\tsectionRootClientIdKey,\n\tCommentIconSlotFill,\n\tCommentIconToolbarSlotFill,\n\tmediaEditKey,\n} );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAO,KAAKA,YAAY,MAAM,4BAA4B;AAC1D,SAASC,+BAA+B,QAAQ,uBAAuB;AACvE,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,iBAAiB,QAAQ,6CAA6C;AAC/E,OAAOC,mBAAmB,MAAM,oCAAoC;AACpE,SAASC,OAAO,IAAIC,oBAAoB,QAAQ,sCAAsC;AACtF,SACCC,YAAY,EACZC,wBAAwB,EACxBC,eAAe,QACT,oCAAoC;AAC3C,SAASC,eAAe,QAAQ,wBAAwB;AACxD,SAASC,kBAAkB,QAAQ,kDAAkD;AACrF,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,oBAAoB,MAAM,qCAAqC;AACtE,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,OAAOC,YAAY,MAAM,4BAA4B;AACrD,SAASC,wBAAwB,QAAQ,0CAA0C;AACnF,SACCC,0BAA0B,EAC1BC,gBAAgB,EAChBC,eAAe,EACfC,gDAAgD,EAChDC,UAAU,QACJ,SAAS;AAChB,OAAOC,cAAc,MAAM,8BAA8B;AACzD,OAAOC,cAAc,MAAM,8BAA8B;AACzD,OAAOC,oBAAoB,MAAM,qCAAqC;AACtE,SAASC,cAAc,QAAQ,oCAAoC;AACnE,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,sBAAsB,QAAQ,wCAAwC;AAC/E,SACCC,sBAAsB,EACtBC,uBAAuB,EACvBC,mBAAmB,EACnBC,wBAAwB,EACxBC,sBAAsB,EACtBC,YAAY,QACN,sBAAsB;AAC7B,SAASC,qBAAqB,QAAQ,iCAAiC;AACvE,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAASC,mBAAmB,QAAQ,4BAA4B;AAChE,SAASC,sBAAsB,QAAQ,+BAA+B;AACtE,SAASC,4BAA4B,QAAQ,uCAAuC;AACpF,OAAOC,eAAe,MAAM,4DAA4D;AACxF,OAAOC,oBAAoB,MAAM,kDAAkD;AACnF,OAAOC,aAAa,MAAM,6BAA6B;AACvD,OAAOC,mBAAmB,MAAM,6CAA6C;AAC7E,OAAOC,0BAA0B,MAAM,qDAAqD;AAC5F,OAAOC,kBAAkB,MAAM,mCAAmC;AAClE;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAG,CAAC,CAAC;AAC7B5C,IAAI,CAAE4C,WAAW,EAAE;EAClB,GAAG9C,YAAY;EACf0B,uBAAuB;EACvBzB,+BAA+B;EAC/B0B,gBAAgB;EAChBxB,iBAAiB;EACjBG,oBAAoB;EACpBC,YAAY;EACZC,wBAAwB;EACxBC,eAAe;EACfC,eAAe;EACfN,mBAAmB;EACnBO,kBAAkB;EAClBC,gBAAgB;EAChBC,oBAAoB;EACpBC,WAAW;EACXC,YAAY;EACZC,wBAAwB;EACxBE,gBAAgB;EAChBC,eAAe;EACfG,cAAc;EACdC,cAAc;EACdmB,aAAa;EACblB,oBAAoB;EACpBC,cAAc;EACdG,sBAAsB;EACtBiB,kBAAkB;EAClBxB,UAAU;EACVU,mBAAmB;EACnBC,wBAAwB;EACxBH,sBAAsB;EACtBM,qBAAqB;EACrBC,eAAe;EACfE,sBAAsB;EACtBR,uBAAuB;EACvBO,mBAAmB;EACnBE,4BAA4B;EAC5BC,eAAe;EACfC,oBAAoB;EACpBrB,gDAAgD;EAChDH,0BAA0B;EAC1BgB,sBAAsB;EACtBU,mBAAmB;EACnBC,0BAA0B;EAC1BV;AACD,CAAE,CAAC","ignoreList":[]}
@@ -1020,7 +1020,11 @@ export const mergeBlocks = (firstBlockClientId, secondBlockClientId) => ({
1020
1020
  return;
1021
1021
  }
1022
1022
  if (!blockAType.merge) {
1023
- dispatch.selectBlock(blockA.clientId);
1023
+ if (isUnmodifiedBlock(blockB, 'content')) {
1024
+ dispatch.removeBlock(clientIdB, select.isBlockSelected(clientIdB));
1025
+ } else {
1026
+ dispatch.selectBlock(blockA.clientId);
1027
+ }
1024
1028
  return;
1025
1029
  }
1026
1030
  const blockBType = getBlockType(blockB.name);