@wordpress/block-editor 8.5.0 → 8.6.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.
- package/CHANGELOG.md +2 -0
- package/build/components/block-alignment-control/ui.js +1 -1
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-content-overlay/index.js +13 -4
- package/build/components/block-content-overlay/index.js.map +1 -1
- package/build/components/block-list/block.native.js +3 -1
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-lock/index.js +8 -0
- package/build/components/block-lock/index.js.map +1 -1
- package/build/components/block-lock/menu-item.js +5 -20
- package/build/components/block-lock/menu-item.js.map +1 -1
- package/build/components/block-lock/modal.js +33 -12
- package/build/components/block-lock/modal.js.map +1 -1
- package/build/components/block-lock/toolbar.js +7 -20
- package/build/components/block-lock/toolbar.js.map +1 -1
- package/build/components/block-lock/use-block-lock.js +50 -0
- package/build/components/block-lock/use-block-lock.js.map +1 -0
- package/build/components/block-mover/button.js +4 -4
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.js +39 -65
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +37 -22
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-pattern-setup/setup-toolbar.js +1 -1
- package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build/components/block-popover/inbetween.js +183 -0
- package/build/components/block-popover/inbetween.js.map +1 -0
- package/build/components/block-popover/index.js +82 -0
- package/build/components/block-popover/index.js.map +1 -0
- package/build/components/{block-tools → block-popover}/use-popover-scroll.js +4 -1
- package/build/components/block-popover/use-popover-scroll.js.map +1 -0
- package/build/components/block-preview/auto.js +6 -3
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-preview/index.js +4 -2
- package/build/components/block-preview/index.js.map +1 -1
- package/build/components/block-styles/index.js +1 -10
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-switcher/index.js +7 -2
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-tools/back-compat.js +2 -2
- package/build/components/block-tools/back-compat.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +4 -2
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/index.js +5 -5
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +14 -121
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/{block-popover.js → selected-block-popover.js} +25 -108
- package/build/components/block-tools/selected-block-popover.js.map +1 -0
- package/build/components/copy-handler/index.js +44 -9
- package/build/components/copy-handler/index.js.map +1 -1
- package/build/components/duotone-control/index.js +5 -1
- package/build/components/duotone-control/index.js.map +1 -1
- package/build/components/inserter/index.native.js +30 -8
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/link-control/index.js +6 -7
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/list-view/block-select-button.js +4 -10
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/block.js +13 -2
- package/build/components/list-view/block.js.map +1 -1
- package/build/components/rich-text/index.js +0 -5
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +0 -4
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/use-block-display-information/index.js +3 -1
- package/build/components/use-block-display-information/index.js.map +1 -1
- package/build/hooks/border.js +468 -44
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/duotone.js +66 -16
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/index.js +8 -2
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/use-border-props.js +22 -32
- package/build/hooks/use-border-props.js.map +1 -1
- package/build/index.js +7 -0
- package/build/index.js.map +1 -1
- package/build/store/actions.js +36 -31
- package/build/store/actions.js.map +1 -1
- package/build/store/reducer.js +0 -26
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +131 -6
- package/build/store/selectors.js.map +1 -1
- package/build/store/utils.js +27 -0
- package/build/store/utils.js.map +1 -0
- package/build-module/components/block-alignment-control/ui.js +2 -2
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-content-overlay/index.js +13 -4
- package/build-module/components/block-content-overlay/index.js.map +1 -1
- package/build-module/components/block-list/block.native.js +3 -1
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-lock/index.js +1 -0
- package/build-module/components/block-lock/index.js.map +1 -1
- package/build-module/components/block-lock/menu-item.js +4 -18
- package/build-module/components/block-lock/menu-item.js.map +1 -1
- package/build-module/components/block-lock/modal.js +31 -12
- package/build-module/components/block-lock/modal.js.map +1 -1
- package/build-module/components/block-lock/toolbar.js +6 -18
- package/build-module/components/block-lock/toolbar.js.map +1 -1
- package/build-module/components/block-lock/use-block-lock.js +41 -0
- package/build-module/components/block-lock/use-block-lock.js.map +1 -0
- package/build-module/components/block-mover/button.js +5 -5
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.js +38 -63
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +39 -24
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -1
- package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +165 -0
- package/build-module/components/block-popover/inbetween.js.map +1 -0
- package/build-module/components/block-popover/index.js +67 -0
- package/build-module/components/block-popover/index.js.map +1 -0
- package/build-module/components/{block-tools → block-popover}/use-popover-scroll.js +3 -1
- package/build-module/components/block-popover/use-popover-scroll.js.map +1 -0
- package/build-module/components/block-preview/auto.js +6 -3
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-preview/index.js +4 -2
- package/build-module/components/block-preview/index.js.map +1 -1
- package/build-module/components/block-styles/index.js +1 -9
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-switcher/index.js +7 -2
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-tools/back-compat.js +1 -1
- package/build-module/components/block-tools/back-compat.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +3 -2
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/index.js +3 -3
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +16 -121
- package/build-module/components/block-tools/insertion-point.js.map +1 -1
- package/build-module/components/block-tools/{block-popover.js → selected-block-popover.js} +25 -105
- package/build-module/components/block-tools/selected-block-popover.js.map +1 -0
- package/build-module/components/copy-handler/index.js +44 -9
- package/build-module/components/copy-handler/index.js.map +1 -1
- package/build-module/components/duotone-control/index.js +4 -1
- package/build-module/components/duotone-control/index.js.map +1 -1
- package/build-module/components/inserter/index.native.js +31 -10
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/link-control/index.js +6 -7
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +4 -9
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/block.js +13 -2
- package/build-module/components/list-view/block.js.map +1 -1
- package/build-module/components/rich-text/index.js +0 -4
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +0 -4
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/use-block-display-information/index.js +3 -1
- package/build-module/components/use-block-display-information/index.js.map +1 -1
- package/build-module/hooks/border.js +458 -44
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/duotone.js +63 -16
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/index.js +2 -1
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/use-border-props.js +21 -30
- package/build-module/hooks/use-border-props.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/store/actions.js +19 -16
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/reducer.js +0 -24
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +120 -5
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/store/utils.js +20 -0
- package/build-module/store/utils.js.map +1 -0
- package/build-style/style-rtl.css +145 -272
- package/build-style/style.css +145 -272
- package/package.json +28 -28
- package/src/components/block-alignment-control/ui.js +2 -2
- package/src/components/block-content-overlay/index.js +19 -2
- package/src/components/block-list/block.native.js +2 -0
- package/src/components/block-lock/index.js +1 -0
- package/src/components/block-lock/menu-item.js +3 -23
- package/src/components/block-lock/modal.js +37 -13
- package/src/components/block-lock/style.scss +1 -2
- package/src/components/block-lock/toolbar.js +4 -21
- package/src/components/block-lock/use-block-lock.js +45 -0
- package/src/components/block-mover/button.js +5 -7
- package/src/components/block-mover/index.js +37 -60
- package/src/components/block-mover/stories/index.js +110 -0
- package/src/components/block-mover/style.scss +48 -138
- package/src/components/block-pattern-setup/index.js +84 -59
- package/src/components/block-pattern-setup/setup-toolbar.js +3 -1
- package/src/components/block-pattern-setup/style.scss +32 -26
- package/src/components/block-popover/README.md +41 -0
- package/src/components/block-popover/inbetween.js +180 -0
- package/src/components/block-popover/index.js +73 -0
- package/src/components/block-popover/style.scss +24 -0
- package/src/components/{block-tools → block-popover}/use-popover-scroll.js +3 -1
- package/src/components/block-preview/auto.js +10 -1
- package/src/components/block-preview/index.js +2 -0
- package/src/components/block-styles/index.js +1 -12
- package/src/components/block-switcher/index.js +13 -1
- package/src/components/block-switcher/style.scss +4 -4
- package/src/components/block-switcher/test/__snapshots__/index.js.snap +15 -13
- package/src/components/block-toolbar/style.scss +0 -12
- package/src/components/block-tools/back-compat.js +1 -1
- package/src/components/block-tools/block-selection-button.js +3 -1
- package/src/components/block-tools/index.js +6 -4
- package/src/components/block-tools/insertion-point.js +19 -152
- package/src/components/block-tools/{block-popover.js → selected-block-popover.js} +24 -116
- package/src/components/block-tools/style.scss +11 -123
- package/src/components/border-radius-control/style.scss +5 -2
- package/src/components/copy-handler/index.js +52 -10
- package/src/components/default-block-appender/style.scss +1 -2
- package/src/components/duotone-control/index.js +8 -1
- package/src/components/gradients/README.md +29 -0
- package/src/components/inserter/index.native.js +60 -25
- package/src/components/inserter/style.native.scss +24 -3
- package/src/components/link-control/index.js +5 -5
- package/src/components/list-view/block-select-button.js +2 -10
- package/src/components/list-view/block.js +16 -7
- package/src/components/navigable-toolbar/README.md +16 -0
- package/src/components/rich-text/index.js +0 -2
- package/src/components/rich-text/index.native.js +0 -4
- package/src/components/use-block-display-information/index.js +2 -0
- package/src/hooks/border.js +438 -72
- package/src/hooks/border.scss +48 -0
- package/src/hooks/duotone.js +98 -62
- package/src/hooks/index.js +2 -1
- package/src/hooks/use-border-props.js +15 -32
- package/src/index.js +1 -0
- package/src/store/actions.js +19 -15
- package/src/store/reducer.js +0 -21
- package/src/store/selectors.js +160 -5
- package/src/store/test/actions.js +0 -18
- package/src/store/test/reducer.js +0 -19
- package/src/store/test/selectors.js +0 -19
- package/src/store/utils.js +19 -0
- package/src/style.scss +1 -1
- package/build/components/block-mobile-toolbar/index.js +0 -42
- package/build/components/block-mobile-toolbar/index.js.map +0 -1
- package/build/components/block-tools/block-popover.js.map +0 -1
- package/build/components/block-tools/use-popover-scroll.js.map +0 -1
- package/build/components/list-view/appender.js +0 -93
- package/build/components/list-view/appender.js.map +0 -1
- package/build/components/list-view/list-item.js +0 -62
- package/build/components/list-view/list-item.js.map +0 -1
- package/build/components/rich-text/use-caret-in-format.js +0 -43
- package/build/components/rich-text/use-caret-in-format.js.map +0 -1
- package/build/hooks/border-color.js +0 -302
- package/build/hooks/border-color.js.map +0 -1
- package/build/hooks/border-style.js +0 -96
- package/build/hooks/border-style.js.map +0 -1
- package/build/hooks/border-width.js +0 -162
- package/build/hooks/border-width.js.map +0 -1
- package/build-module/components/block-mobile-toolbar/index.js +0 -31
- package/build-module/components/block-mobile-toolbar/index.js.map +0 -1
- package/build-module/components/block-tools/block-popover.js.map +0 -1
- package/build-module/components/block-tools/use-popover-scroll.js.map +0 -1
- package/build-module/components/list-view/appender.js +0 -76
- package/build-module/components/list-view/appender.js.map +0 -1
- package/build-module/components/list-view/list-item.js +0 -47
- package/build-module/components/list-view/list-item.js.map +0 -1
- package/build-module/components/rich-text/use-caret-in-format.js +0 -33
- package/build-module/components/rich-text/use-caret-in-format.js.map +0 -1
- package/build-module/hooks/border-color.js +0 -276
- package/build-module/hooks/border-color.js.map +0 -1
- package/build-module/hooks/border-style.js +0 -78
- package/build-module/hooks/border-style.js.map +0 -1
- package/build-module/hooks/border-width.js +0 -143
- package/build-module/hooks/border-width.js.map +0 -1
- package/src/components/block-mobile-toolbar/index.js +0 -24
- package/src/components/block-mobile-toolbar/style.scss +0 -29
- package/src/components/list-view/appender.js +0 -82
- package/src/components/list-view/list-item.js +0 -59
- package/src/components/rich-text/use-caret-in-format.js +0 -28
- package/src/hooks/border-color.js +0 -315
- package/src/hooks/border-style.js +0 -64
- package/src/hooks/border-width.js +0 -139
package/build/store/selectors.js
CHANGED
|
@@ -7,11 +7,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.__experimentalGetGlobalBlocksByName = exports.__experimentalGetDirectInsertBlock = exports.__experimentalGetBlockListSettingsForBlocks = exports.__experimentalGetAllowedPatterns = exports.__experimentalGetAllowedBlocks = exports.__experimentalGetActiveBlockIdByBlockNames = void 0;
|
|
9
9
|
exports.__experimentalGetLastBlockAttributeChanges = __experimentalGetLastBlockAttributeChanges;
|
|
10
|
-
exports.__unstableGetClientIdsTree = exports.__unstableGetClientIdWithClientIdsTree = exports.__unstableGetBlockWithoutInnerBlocks = exports.__experimentalGetReusableBlockTitle = exports.__experimentalGetPatternsByBlockTypes = exports.__experimentalGetPatternTransformItems = exports.__experimentalGetParsedPattern = void 0;
|
|
10
|
+
exports.__unstableGetSelectedBlocksWithPartialSelection = exports.__unstableGetClientIdsTree = exports.__unstableGetClientIdWithClientIdsTree = exports.__unstableGetBlockWithoutInnerBlocks = exports.__experimentalGetReusableBlockTitle = exports.__experimentalGetPatternsByBlockTypes = exports.__experimentalGetPatternTransformItems = exports.__experimentalGetParsedPattern = void 0;
|
|
11
11
|
exports.__unstableIsFullySelected = __unstableIsFullySelected;
|
|
12
12
|
exports.__unstableIsLastBlockChangeIgnored = __unstableIsLastBlockChangeIgnored;
|
|
13
|
+
exports.__unstableIsSelectionCollapsed = __unstableIsSelectionCollapsed;
|
|
13
14
|
exports.__unstableIsSelectionMergeable = __unstableIsSelectionMergeable;
|
|
14
15
|
exports.areInnerBlocksControlled = areInnerBlocksControlled;
|
|
16
|
+
exports.canEditBlock = canEditBlock;
|
|
15
17
|
exports.canInsertBlockType = void 0;
|
|
16
18
|
exports.canInsertBlocks = canInsertBlocks;
|
|
17
19
|
exports.canLockBlockType = canLockBlockType;
|
|
@@ -98,6 +100,12 @@ var _icons = require("@wordpress/icons");
|
|
|
98
100
|
|
|
99
101
|
var _i18n = require("@wordpress/i18n");
|
|
100
102
|
|
|
103
|
+
var _richText = require("@wordpress/rich-text");
|
|
104
|
+
|
|
105
|
+
var _deprecated = _interopRequireDefault(require("@wordpress/deprecated"));
|
|
106
|
+
|
|
107
|
+
var _utils = require("./utils");
|
|
108
|
+
|
|
101
109
|
/**
|
|
102
110
|
* External dependencies
|
|
103
111
|
*/
|
|
@@ -106,6 +114,10 @@ var _i18n = require("@wordpress/i18n");
|
|
|
106
114
|
* WordPress dependencies
|
|
107
115
|
*/
|
|
108
116
|
|
|
117
|
+
/**
|
|
118
|
+
* Internal dependencies
|
|
119
|
+
*/
|
|
120
|
+
|
|
109
121
|
/**
|
|
110
122
|
* A block selection object.
|
|
111
123
|
*
|
|
@@ -999,6 +1011,20 @@ function __unstableIsFullySelected(state) {
|
|
|
999
1011
|
const selectionFocus = getSelectionEnd(state);
|
|
1000
1012
|
return !selectionAnchor.attributeKey && !selectionFocus.attributeKey && typeof selectionAnchor.offset === 'undefined' && typeof selectionFocus.offset === 'undefined';
|
|
1001
1013
|
}
|
|
1014
|
+
/**
|
|
1015
|
+
* Returns true if the selection is collapsed.
|
|
1016
|
+
*
|
|
1017
|
+
* @param {Object} state Editor state.
|
|
1018
|
+
*
|
|
1019
|
+
* @return {boolean} Whether the selection is collapsed.
|
|
1020
|
+
*/
|
|
1021
|
+
|
|
1022
|
+
|
|
1023
|
+
function __unstableIsSelectionCollapsed(state) {
|
|
1024
|
+
const selectionAnchor = getSelectionStart(state);
|
|
1025
|
+
const selectionFocus = getSelectionEnd(state);
|
|
1026
|
+
return !!selectionAnchor && !!selectionFocus && selectionAnchor.clientId === selectionFocus.clientId && selectionAnchor.attributeKey === selectionFocus.attributeKey && selectionAnchor.offset === selectionFocus.offset;
|
|
1027
|
+
}
|
|
1002
1028
|
/**
|
|
1003
1029
|
* Check whether the selection is mergeable.
|
|
1004
1030
|
*
|
|
@@ -1051,6 +1077,76 @@ function __unstableIsSelectionMergeable(state, isForward) {
|
|
|
1051
1077
|
const blocksToMerge = (0, _blocks.switchToBlockType)(blockToMerge, targetBlock.name);
|
|
1052
1078
|
return blocksToMerge && blocksToMerge.length;
|
|
1053
1079
|
}
|
|
1080
|
+
/**
|
|
1081
|
+
* Get partial selected blocks with their content updated
|
|
1082
|
+
* based on the selection.
|
|
1083
|
+
*
|
|
1084
|
+
* @param {Object} state Editor state.
|
|
1085
|
+
*
|
|
1086
|
+
* @return {Object[]} Updated partial selected blocks.
|
|
1087
|
+
*/
|
|
1088
|
+
|
|
1089
|
+
|
|
1090
|
+
const __unstableGetSelectedBlocksWithPartialSelection = state => {
|
|
1091
|
+
const selectionAnchor = getSelectionStart(state);
|
|
1092
|
+
const selectionFocus = getSelectionEnd(state);
|
|
1093
|
+
|
|
1094
|
+
if (selectionAnchor.clientId === selectionFocus.clientId) {
|
|
1095
|
+
return EMPTY_ARRAY;
|
|
1096
|
+
} // Can't split if the selection is not set.
|
|
1097
|
+
|
|
1098
|
+
|
|
1099
|
+
if (!selectionAnchor.attributeKey || !selectionFocus.attributeKey || typeof selectionAnchor.offset === 'undefined' || typeof selectionFocus.offset === 'undefined') {
|
|
1100
|
+
return EMPTY_ARRAY;
|
|
1101
|
+
}
|
|
1102
|
+
|
|
1103
|
+
const anchorRootClientId = getBlockRootClientId(state, selectionAnchor.clientId);
|
|
1104
|
+
const focusRootClientId = getBlockRootClientId(state, selectionFocus.clientId); // It's not splittable if the selection doesn't start and end in the same
|
|
1105
|
+
// block list. Maybe in the future it should be allowed.
|
|
1106
|
+
|
|
1107
|
+
if (anchorRootClientId !== focusRootClientId) {
|
|
1108
|
+
return EMPTY_ARRAY;
|
|
1109
|
+
}
|
|
1110
|
+
|
|
1111
|
+
const blockOrder = getBlockOrder(state, anchorRootClientId);
|
|
1112
|
+
const anchorIndex = blockOrder.indexOf(selectionAnchor.clientId);
|
|
1113
|
+
const focusIndex = blockOrder.indexOf(selectionFocus.clientId); // Reassign selection start and end based on order.
|
|
1114
|
+
|
|
1115
|
+
const [selectionStart, selectionEnd] = anchorIndex > focusIndex ? [selectionFocus, selectionAnchor] : [selectionAnchor, selectionFocus];
|
|
1116
|
+
const blockA = getBlock(state, selectionStart.clientId);
|
|
1117
|
+
const blockAType = (0, _blocks.getBlockType)(blockA.name);
|
|
1118
|
+
const blockB = getBlock(state, selectionEnd.clientId);
|
|
1119
|
+
const blockBType = (0, _blocks.getBlockType)(blockB.name);
|
|
1120
|
+
const htmlA = blockA.attributes[selectionStart.attributeKey];
|
|
1121
|
+
const htmlB = blockB.attributes[selectionEnd.attributeKey];
|
|
1122
|
+
const attributeDefinitionA = blockAType.attributes[selectionStart.attributeKey];
|
|
1123
|
+
const attributeDefinitionB = blockBType.attributes[selectionEnd.attributeKey];
|
|
1124
|
+
let valueA = (0, _richText.create)({
|
|
1125
|
+
html: htmlA,
|
|
1126
|
+
...(0, _utils.mapRichTextSettings)(attributeDefinitionA)
|
|
1127
|
+
});
|
|
1128
|
+
let valueB = (0, _richText.create)({
|
|
1129
|
+
html: htmlB,
|
|
1130
|
+
...(0, _utils.mapRichTextSettings)(attributeDefinitionB)
|
|
1131
|
+
});
|
|
1132
|
+
valueA = (0, _richText.remove)(valueA, 0, selectionStart.offset);
|
|
1133
|
+
valueB = (0, _richText.remove)(valueB, selectionEnd.offset, valueB.text.length);
|
|
1134
|
+
return [{ ...blockA,
|
|
1135
|
+
attributes: { ...blockA.attributes,
|
|
1136
|
+
[selectionStart.attributeKey]: (0, _richText.toHTMLString)({
|
|
1137
|
+
value: valueA,
|
|
1138
|
+
...(0, _utils.mapRichTextSettings)(attributeDefinitionA)
|
|
1139
|
+
})
|
|
1140
|
+
}
|
|
1141
|
+
}, { ...blockB,
|
|
1142
|
+
attributes: { ...blockB.attributes,
|
|
1143
|
+
[selectionEnd.attributeKey]: (0, _richText.toHTMLString)({
|
|
1144
|
+
value: valueB,
|
|
1145
|
+
...(0, _utils.mapRichTextSettings)(attributeDefinitionB)
|
|
1146
|
+
})
|
|
1147
|
+
}
|
|
1148
|
+
}];
|
|
1149
|
+
};
|
|
1054
1150
|
/**
|
|
1055
1151
|
* Returns an array containing all block client IDs in the editor in the order
|
|
1056
1152
|
* they appear. Optionally accepts a root client ID of the block list for which
|
|
@@ -1063,6 +1159,8 @@ function __unstableIsSelectionMergeable(state, isForward) {
|
|
|
1063
1159
|
*/
|
|
1064
1160
|
|
|
1065
1161
|
|
|
1162
|
+
exports.__unstableGetSelectedBlocksWithPartialSelection = __unstableGetSelectedBlocksWithPartialSelection;
|
|
1163
|
+
|
|
1066
1164
|
function getBlockOrder(state, rootClientId) {
|
|
1067
1165
|
return state.blocks.order[rootClientId || ''] || EMPTY_ARRAY;
|
|
1068
1166
|
}
|
|
@@ -1278,14 +1376,18 @@ function isAncestorBeingDragged(state, clientId) {
|
|
|
1278
1376
|
/**
|
|
1279
1377
|
* Returns true if the caret is within formatted text, or false otherwise.
|
|
1280
1378
|
*
|
|
1281
|
-
* @
|
|
1379
|
+
* @deprecated
|
|
1282
1380
|
*
|
|
1283
1381
|
* @return {boolean} Whether the caret is within formatted text.
|
|
1284
1382
|
*/
|
|
1285
1383
|
|
|
1286
1384
|
|
|
1287
|
-
function isCaretWithinFormattedText(
|
|
1288
|
-
|
|
1385
|
+
function isCaretWithinFormattedText() {
|
|
1386
|
+
(0, _deprecated.default)('wp.data.select( "core/block-editor" ).isCaretWithinFormattedText', {
|
|
1387
|
+
since: '6.1',
|
|
1388
|
+
version: '6.3'
|
|
1389
|
+
});
|
|
1390
|
+
return false;
|
|
1289
1391
|
}
|
|
1290
1392
|
/**
|
|
1291
1393
|
* Returns the insertion point, the index at which the new inserted block would
|
|
@@ -1549,7 +1651,7 @@ function canRemoveBlock(state, clientId) {
|
|
|
1549
1651
|
const {
|
|
1550
1652
|
lock
|
|
1551
1653
|
} = attributes;
|
|
1552
|
-
const parentIsLocked = !!getTemplateLock(state, rootClientId); // If we don't have a lock on the blockType level, we
|
|
1654
|
+
const parentIsLocked = !!getTemplateLock(state, rootClientId); // If we don't have a lock on the blockType level, we defer to the parent templateLock.
|
|
1553
1655
|
|
|
1554
1656
|
if (lock === undefined || (lock === null || lock === void 0 ? void 0 : lock.remove) === undefined) {
|
|
1555
1657
|
return !parentIsLocked;
|
|
@@ -1595,7 +1697,7 @@ function canMoveBlock(state, clientId) {
|
|
|
1595
1697
|
const {
|
|
1596
1698
|
lock
|
|
1597
1699
|
} = attributes;
|
|
1598
|
-
const parentIsLocked = getTemplateLock(state, rootClientId) === 'all'; // If we don't have a lock on the blockType level, we
|
|
1700
|
+
const parentIsLocked = getTemplateLock(state, rootClientId) === 'all'; // If we don't have a lock on the blockType level, we defer to the parent templateLock.
|
|
1599
1701
|
|
|
1600
1702
|
if (lock === undefined || (lock === null || lock === void 0 ? void 0 : lock.move) === undefined) {
|
|
1601
1703
|
return !parentIsLocked;
|
|
@@ -1619,6 +1721,29 @@ function canMoveBlocks(state, clientIds) {
|
|
|
1619
1721
|
let rootClientId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
1620
1722
|
return clientIds.every(clientId => canMoveBlock(state, clientId, rootClientId));
|
|
1621
1723
|
}
|
|
1724
|
+
/**
|
|
1725
|
+
* Determines if the given block is allowed to be edited.
|
|
1726
|
+
*
|
|
1727
|
+
* @param {Object} state Editor state.
|
|
1728
|
+
* @param {string} clientId The block client Id.
|
|
1729
|
+
*
|
|
1730
|
+
* @return {boolean} Whether the given block is allowed to be edited.
|
|
1731
|
+
*/
|
|
1732
|
+
|
|
1733
|
+
|
|
1734
|
+
function canEditBlock(state, clientId) {
|
|
1735
|
+
const attributes = getBlockAttributes(state, clientId);
|
|
1736
|
+
|
|
1737
|
+
if (attributes === null) {
|
|
1738
|
+
return true;
|
|
1739
|
+
}
|
|
1740
|
+
|
|
1741
|
+
const {
|
|
1742
|
+
lock
|
|
1743
|
+
} = attributes; // When the edit is true, we cannot edit the block.
|
|
1744
|
+
|
|
1745
|
+
return !(lock !== null && lock !== void 0 && lock.edit);
|
|
1746
|
+
}
|
|
1622
1747
|
/**
|
|
1623
1748
|
* Determines if the given block type can be locked/unlocked by a user.
|
|
1624
1749
|
*
|