Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-inclu.../js/dist
File: block-editor.js
};
[14000] Fix | Delete
[14001] Fix | Delete
/**
[14002] Fix | Delete
* Returns an action object used in signalling that a block removal prompt must
[14003] Fix | Delete
* be displayed.
[14004] Fix | Delete
*
[14005] Fix | Delete
* Contrast with `setBlockRemovalRules`.
[14006] Fix | Delete
*
[14007] Fix | Delete
* @param {string|string[]} clientIds Client IDs of blocks to remove.
[14008] Fix | Delete
* @param {boolean} selectPrevious True if the previous block or the
[14009] Fix | Delete
* immediate parent (if no previous
[14010] Fix | Delete
* block exists) should be selected
[14011] Fix | Delete
* when a block is removed.
[14012] Fix | Delete
* @param {string} message Message to display in the prompt.
[14013] Fix | Delete
*
[14014] Fix | Delete
* @return {Object} Action object.
[14015] Fix | Delete
*/
[14016] Fix | Delete
function displayBlockRemovalPrompt(clientIds, selectPrevious, message) {
[14017] Fix | Delete
return {
[14018] Fix | Delete
type: 'DISPLAY_BLOCK_REMOVAL_PROMPT',
[14019] Fix | Delete
clientIds,
[14020] Fix | Delete
selectPrevious,
[14021] Fix | Delete
message
[14022] Fix | Delete
};
[14023] Fix | Delete
}
[14024] Fix | Delete
[14025] Fix | Delete
/**
[14026] Fix | Delete
* Returns an action object used in signalling that a block removal prompt must
[14027] Fix | Delete
* be cleared, either be cause the user has confirmed or canceled the request
[14028] Fix | Delete
* for removal.
[14029] Fix | Delete
*
[14030] Fix | Delete
* @return {Object} Action object.
[14031] Fix | Delete
*/
[14032] Fix | Delete
function clearBlockRemovalPrompt() {
[14033] Fix | Delete
return {
[14034] Fix | Delete
type: 'CLEAR_BLOCK_REMOVAL_PROMPT'
[14035] Fix | Delete
};
[14036] Fix | Delete
}
[14037] Fix | Delete
[14038] Fix | Delete
/**
[14039] Fix | Delete
* Returns an action object used to set up any rules that a block editor may
[14040] Fix | Delete
* provide in order to prevent a user from accidentally removing certain
[14041] Fix | Delete
* blocks. These rules are then used to display a confirmation prompt to the
[14042] Fix | Delete
* user. For instance, in the Site Editor, the Query Loop block is important
[14043] Fix | Delete
* enough to warrant such confirmation.
[14044] Fix | Delete
*
[14045] Fix | Delete
* IMPORTANT: Registering rules implicitly signals to the `privateRemoveBlocks`
[14046] Fix | Delete
* action that the editor will be responsible for displaying block removal
[14047] Fix | Delete
* prompts and confirming deletions. This action is meant to be used by
[14048] Fix | Delete
* component `BlockRemovalWarningModal` only.
[14049] Fix | Delete
*
[14050] Fix | Delete
* The data is a record whose keys are block types (e.g. 'core/query') and
[14051] Fix | Delete
* whose values are the explanation to be shown to users (e.g. 'Query Loop
[14052] Fix | Delete
* displays a list of posts or pages.').
[14053] Fix | Delete
*
[14054] Fix | Delete
* Contrast with `displayBlockRemovalPrompt`.
[14055] Fix | Delete
*
[14056] Fix | Delete
* @param {Record<string,string>|false} rules Block removal rules.
[14057] Fix | Delete
* @return {Object} Action object.
[14058] Fix | Delete
*/
[14059] Fix | Delete
function setBlockRemovalRules(rules = false) {
[14060] Fix | Delete
return {
[14061] Fix | Delete
type: 'SET_BLOCK_REMOVAL_RULES',
[14062] Fix | Delete
rules
[14063] Fix | Delete
};
[14064] Fix | Delete
}
[14065] Fix | Delete
[14066] Fix | Delete
/**
[14067] Fix | Delete
* Sets the client ID of the block settings menu that is currently open.
[14068] Fix | Delete
*
[14069] Fix | Delete
* @param {?string} clientId The block client ID.
[14070] Fix | Delete
* @return {Object} Action object.
[14071] Fix | Delete
*/
[14072] Fix | Delete
function setOpenedBlockSettingsMenu(clientId) {
[14073] Fix | Delete
return {
[14074] Fix | Delete
type: 'SET_OPENED_BLOCK_SETTINGS_MENU',
[14075] Fix | Delete
clientId
[14076] Fix | Delete
};
[14077] Fix | Delete
}
[14078] Fix | Delete
function setStyleOverride(id, style) {
[14079] Fix | Delete
return {
[14080] Fix | Delete
type: 'SET_STYLE_OVERRIDE',
[14081] Fix | Delete
id,
[14082] Fix | Delete
style
[14083] Fix | Delete
};
[14084] Fix | Delete
}
[14085] Fix | Delete
function deleteStyleOverride(id) {
[14086] Fix | Delete
return {
[14087] Fix | Delete
type: 'DELETE_STYLE_OVERRIDE',
[14088] Fix | Delete
id
[14089] Fix | Delete
};
[14090] Fix | Delete
}
[14091] Fix | Delete
[14092] Fix | Delete
/**
[14093] Fix | Delete
* A higher-order action that mark every change inside a callback as "non-persistent"
[14094] Fix | Delete
* and ignore pushing to the undo history stack. It's primarily used for synchronized
[14095] Fix | Delete
* derived updates from the block editor without affecting the undo history.
[14096] Fix | Delete
*
[14097] Fix | Delete
* @param {() => void} callback The synchronous callback to derive updates.
[14098] Fix | Delete
*/
[14099] Fix | Delete
function syncDerivedUpdates(callback) {
[14100] Fix | Delete
return ({
[14101] Fix | Delete
dispatch,
[14102] Fix | Delete
select,
[14103] Fix | Delete
registry
[14104] Fix | Delete
}) => {
[14105] Fix | Delete
registry.batch(() => {
[14106] Fix | Delete
// Mark every change in the `callback` as non-persistent.
[14107] Fix | Delete
dispatch({
[14108] Fix | Delete
type: 'SET_EXPLICIT_PERSISTENT',
[14109] Fix | Delete
isPersistentChange: false
[14110] Fix | Delete
});
[14111] Fix | Delete
callback();
[14112] Fix | Delete
dispatch({
[14113] Fix | Delete
type: 'SET_EXPLICIT_PERSISTENT',
[14114] Fix | Delete
isPersistentChange: undefined
[14115] Fix | Delete
});
[14116] Fix | Delete
[14117] Fix | Delete
// Ignore pushing undo stack for the updated blocks.
[14118] Fix | Delete
const updatedBlocks = select.getBlocks();
[14119] Fix | Delete
undoIgnoreBlocks.add(updatedBlocks);
[14120] Fix | Delete
});
[14121] Fix | Delete
};
[14122] Fix | Delete
}
[14123] Fix | Delete
[14124] Fix | Delete
/**
[14125] Fix | Delete
* Action that sets the element that had focus when focus leaves the editor canvas.
[14126] Fix | Delete
*
[14127] Fix | Delete
* @param {Object} lastFocus The last focused element.
[14128] Fix | Delete
*
[14129] Fix | Delete
*
[14130] Fix | Delete
* @return {Object} Action object.
[14131] Fix | Delete
*/
[14132] Fix | Delete
function setLastFocus(lastFocus = null) {
[14133] Fix | Delete
return {
[14134] Fix | Delete
type: 'LAST_FOCUS',
[14135] Fix | Delete
lastFocus
[14136] Fix | Delete
};
[14137] Fix | Delete
}
[14138] Fix | Delete
[14139] Fix | Delete
/**
[14140] Fix | Delete
* Action that stops temporarily editing as blocks.
[14141] Fix | Delete
*
[14142] Fix | Delete
* @param {string} clientId The block's clientId.
[14143] Fix | Delete
*/
[14144] Fix | Delete
function stopEditingAsBlocks(clientId) {
[14145] Fix | Delete
return ({
[14146] Fix | Delete
select,
[14147] Fix | Delete
dispatch,
[14148] Fix | Delete
registry
[14149] Fix | Delete
}) => {
[14150] Fix | Delete
const focusModeToRevert = unlock(registry.select(store)).getTemporarilyEditingFocusModeToRevert();
[14151] Fix | Delete
dispatch.__unstableMarkNextChangeAsNotPersistent();
[14152] Fix | Delete
dispatch.updateBlockAttributes(clientId, {
[14153] Fix | Delete
templateLock: 'contentOnly'
[14154] Fix | Delete
});
[14155] Fix | Delete
dispatch.updateBlockListSettings(clientId, {
[14156] Fix | Delete
...select.getBlockListSettings(clientId),
[14157] Fix | Delete
templateLock: 'contentOnly'
[14158] Fix | Delete
});
[14159] Fix | Delete
dispatch.updateSettings({
[14160] Fix | Delete
focusMode: focusModeToRevert
[14161] Fix | Delete
});
[14162] Fix | Delete
dispatch.__unstableSetTemporarilyEditingAsBlocks();
[14163] Fix | Delete
};
[14164] Fix | Delete
}
[14165] Fix | Delete
[14166] Fix | Delete
/**
[14167] Fix | Delete
* Returns an action object used in signalling that the user has begun to drag.
[14168] Fix | Delete
*
[14169] Fix | Delete
* @return {Object} Action object.
[14170] Fix | Delete
*/
[14171] Fix | Delete
function startDragging() {
[14172] Fix | Delete
return {
[14173] Fix | Delete
type: 'START_DRAGGING'
[14174] Fix | Delete
};
[14175] Fix | Delete
}
[14176] Fix | Delete
[14177] Fix | Delete
/**
[14178] Fix | Delete
* Returns an action object used in signalling that the user has stopped dragging.
[14179] Fix | Delete
*
[14180] Fix | Delete
* @return {Object} Action object.
[14181] Fix | Delete
*/
[14182] Fix | Delete
function stopDragging() {
[14183] Fix | Delete
return {
[14184] Fix | Delete
type: 'STOP_DRAGGING'
[14185] Fix | Delete
};
[14186] Fix | Delete
}
[14187] Fix | Delete
[14188] Fix | Delete
/**
[14189] Fix | Delete
* @param {string|null} clientId The block's clientId, or `null` to clear.
[14190] Fix | Delete
*
[14191] Fix | Delete
* @return {Object} Action object.
[14192] Fix | Delete
*/
[14193] Fix | Delete
function expandBlock(clientId) {
[14194] Fix | Delete
return {
[14195] Fix | Delete
type: 'SET_BLOCK_EXPANDED_IN_LIST_VIEW',
[14196] Fix | Delete
clientId
[14197] Fix | Delete
};
[14198] Fix | Delete
}
[14199] Fix | Delete
[14200] Fix | Delete
/**
[14201] Fix | Delete
* Temporarily modify/unlock the content-only block for editions.
[14202] Fix | Delete
*
[14203] Fix | Delete
* @param {string} clientId The client id of the block.
[14204] Fix | Delete
*/
[14205] Fix | Delete
const modifyContentLockBlock = clientId => ({
[14206] Fix | Delete
select,
[14207] Fix | Delete
dispatch
[14208] Fix | Delete
}) => {
[14209] Fix | Delete
dispatch.__unstableMarkNextChangeAsNotPersistent();
[14210] Fix | Delete
dispatch.updateBlockAttributes(clientId, {
[14211] Fix | Delete
templateLock: undefined
[14212] Fix | Delete
});
[14213] Fix | Delete
dispatch.updateBlockListSettings(clientId, {
[14214] Fix | Delete
...select.getBlockListSettings(clientId),
[14215] Fix | Delete
templateLock: false
[14216] Fix | Delete
});
[14217] Fix | Delete
const focusModeToRevert = select.getSettings().focusMode;
[14218] Fix | Delete
dispatch.updateSettings({
[14219] Fix | Delete
focusMode: true
[14220] Fix | Delete
});
[14221] Fix | Delete
dispatch.__unstableSetTemporarilyEditingAsBlocks(clientId, focusModeToRevert);
[14222] Fix | Delete
};
[14223] Fix | Delete
[14224] Fix | Delete
;// CONCATENATED MODULE: external ["wp","a11y"]
[14225] Fix | Delete
const external_wp_a11y_namespaceObject = window["wp"]["a11y"];
[14226] Fix | Delete
;// CONCATENATED MODULE: external ["wp","notices"]
[14227] Fix | Delete
const external_wp_notices_namespaceObject = window["wp"]["notices"];
[14228] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/utils/selection.js
[14229] Fix | Delete
/**
[14230] Fix | Delete
* WordPress dependencies
[14231] Fix | Delete
*/
[14232] Fix | Delete
[14233] Fix | Delete
[14234] Fix | Delete
/**
[14235] Fix | Delete
* A robust way to retain selection position through various
[14236] Fix | Delete
* transforms is to insert a special character at the position and
[14237] Fix | Delete
* then recover it.
[14238] Fix | Delete
*/
[14239] Fix | Delete
const START_OF_SELECTED_AREA = '\u0086';
[14240] Fix | Delete
[14241] Fix | Delete
/**
[14242] Fix | Delete
* Retrieve the block attribute that contains the selection position.
[14243] Fix | Delete
*
[14244] Fix | Delete
* @param {Object} blockAttributes Block attributes.
[14245] Fix | Delete
* @return {string|void} The name of the block attribute that was previously selected.
[14246] Fix | Delete
*/
[14247] Fix | Delete
function retrieveSelectedAttribute(blockAttributes) {
[14248] Fix | Delete
if (!blockAttributes) {
[14249] Fix | Delete
return;
[14250] Fix | Delete
}
[14251] Fix | Delete
return Object.keys(blockAttributes).find(name => {
[14252] Fix | Delete
const value = blockAttributes[name];
[14253] Fix | Delete
return (typeof value === 'string' || value instanceof external_wp_richText_namespaceObject.RichTextData) &&
[14254] Fix | Delete
// To do: refactor this to use rich text's selection instead, so we
[14255] Fix | Delete
// no longer have to use on this hack inserting a special character.
[14256] Fix | Delete
value.toString().indexOf(START_OF_SELECTED_AREA) !== -1;
[14257] Fix | Delete
});
[14258] Fix | Delete
}
[14259] Fix | Delete
function findRichTextAttributeKey(blockType) {
[14260] Fix | Delete
for (const [key, value] of Object.entries(blockType.attributes)) {
[14261] Fix | Delete
if (value.source === 'rich-text' || value.source === 'html') {
[14262] Fix | Delete
return key;
[14263] Fix | Delete
}
[14264] Fix | Delete
}
[14265] Fix | Delete
}
[14266] Fix | Delete
[14267] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/store/actions.js
[14268] Fix | Delete
/* eslint no-console: [ 'error', { allow: [ 'error', 'warn' ] } ] */
[14269] Fix | Delete
/**
[14270] Fix | Delete
* WordPress dependencies
[14271] Fix | Delete
*/
[14272] Fix | Delete
[14273] Fix | Delete
[14274] Fix | Delete
[14275] Fix | Delete
[14276] Fix | Delete
[14277] Fix | Delete
[14278] Fix | Delete
[14279] Fix | Delete
/**
[14280] Fix | Delete
* Internal dependencies
[14281] Fix | Delete
*/
[14282] Fix | Delete
[14283] Fix | Delete
[14284] Fix | Delete
[14285] Fix | Delete
[14286] Fix | Delete
[14287] Fix | Delete
/** @typedef {import('../components/use-on-block-drop/types').WPDropOperation} WPDropOperation */
[14288] Fix | Delete
[14289] Fix | Delete
const actions_castArray = maybeArray => Array.isArray(maybeArray) ? maybeArray : [maybeArray];
[14290] Fix | Delete
[14291] Fix | Delete
/**
[14292] Fix | Delete
* Action that resets blocks state to the specified array of blocks, taking precedence
[14293] Fix | Delete
* over any other content reflected as an edit in state.
[14294] Fix | Delete
*
[14295] Fix | Delete
* @param {Array} blocks Array of blocks.
[14296] Fix | Delete
*/
[14297] Fix | Delete
const resetBlocks = blocks => ({
[14298] Fix | Delete
dispatch
[14299] Fix | Delete
}) => {
[14300] Fix | Delete
dispatch({
[14301] Fix | Delete
type: 'RESET_BLOCKS',
[14302] Fix | Delete
blocks
[14303] Fix | Delete
});
[14304] Fix | Delete
dispatch(validateBlocksToTemplate(blocks));
[14305] Fix | Delete
};
[14306] Fix | Delete
[14307] Fix | Delete
/**
[14308] Fix | Delete
* Block validity is a function of blocks state (at the point of a
[14309] Fix | Delete
* reset) and the template setting. As a compromise to its placement
[14310] Fix | Delete
* across distinct parts of state, it is implemented here as a side
[14311] Fix | Delete
* effect of the block reset action.
[14312] Fix | Delete
*
[14313] Fix | Delete
* @param {Array} blocks Array of blocks.
[14314] Fix | Delete
*/
[14315] Fix | Delete
const validateBlocksToTemplate = blocks => ({
[14316] Fix | Delete
select,
[14317] Fix | Delete
dispatch
[14318] Fix | Delete
}) => {
[14319] Fix | Delete
const template = select.getTemplate();
[14320] Fix | Delete
const templateLock = select.getTemplateLock();
[14321] Fix | Delete
[14322] Fix | Delete
// Unlocked templates are considered always valid because they act
[14323] Fix | Delete
// as default values only.
[14324] Fix | Delete
const isBlocksValidToTemplate = !template || templateLock !== 'all' || (0,external_wp_blocks_namespaceObject.doBlocksMatchTemplate)(blocks, template);
[14325] Fix | Delete
[14326] Fix | Delete
// Update if validity has changed.
[14327] Fix | Delete
const isValidTemplate = select.isValidTemplate();
[14328] Fix | Delete
if (isBlocksValidToTemplate !== isValidTemplate) {
[14329] Fix | Delete
dispatch.setTemplateValidity(isBlocksValidToTemplate);
[14330] Fix | Delete
return isBlocksValidToTemplate;
[14331] Fix | Delete
}
[14332] Fix | Delete
};
[14333] Fix | Delete
[14334] Fix | Delete
/**
[14335] Fix | Delete
* A block selection object.
[14336] Fix | Delete
*
[14337] Fix | Delete
* @typedef {Object} WPBlockSelection
[14338] Fix | Delete
*
[14339] Fix | Delete
* @property {string} clientId A block client ID.
[14340] Fix | Delete
* @property {string} attributeKey A block attribute key.
[14341] Fix | Delete
* @property {number} offset An attribute value offset, based on the rich
[14342] Fix | Delete
* text value. See `wp.richText.create`.
[14343] Fix | Delete
*/
[14344] Fix | Delete
[14345] Fix | Delete
/**
[14346] Fix | Delete
* A selection object.
[14347] Fix | Delete
*
[14348] Fix | Delete
* @typedef {Object} WPSelection
[14349] Fix | Delete
*
[14350] Fix | Delete
* @property {WPBlockSelection} start The selection start.
[14351] Fix | Delete
* @property {WPBlockSelection} end The selection end.
[14352] Fix | Delete
*/
[14353] Fix | Delete
[14354] Fix | Delete
/* eslint-disable jsdoc/valid-types */
[14355] Fix | Delete
/**
[14356] Fix | Delete
* Returns an action object used in signalling that selection state should be
[14357] Fix | Delete
* reset to the specified selection.
[14358] Fix | Delete
*
[14359] Fix | Delete
* @param {WPBlockSelection} selectionStart The selection start.
[14360] Fix | Delete
* @param {WPBlockSelection} selectionEnd The selection end.
[14361] Fix | Delete
* @param {0|-1|null} initialPosition Initial block position.
[14362] Fix | Delete
*
[14363] Fix | Delete
* @return {Object} Action object.
[14364] Fix | Delete
*/
[14365] Fix | Delete
function resetSelection(selectionStart, selectionEnd, initialPosition) {
[14366] Fix | Delete
/* eslint-enable jsdoc/valid-types */
[14367] Fix | Delete
return {
[14368] Fix | Delete
type: 'RESET_SELECTION',
[14369] Fix | Delete
selectionStart,
[14370] Fix | Delete
selectionEnd,
[14371] Fix | Delete
initialPosition
[14372] Fix | Delete
};
[14373] Fix | Delete
}
[14374] Fix | Delete
[14375] Fix | Delete
/**
[14376] Fix | Delete
* Returns an action object used in signalling that blocks have been received.
[14377] Fix | Delete
* Unlike resetBlocks, these should be appended to the existing known set, not
[14378] Fix | Delete
* replacing.
[14379] Fix | Delete
*
[14380] Fix | Delete
* @deprecated
[14381] Fix | Delete
*
[14382] Fix | Delete
* @param {Object[]} blocks Array of block objects.
[14383] Fix | Delete
*
[14384] Fix | Delete
* @return {Object} Action object.
[14385] Fix | Delete
*/
[14386] Fix | Delete
function receiveBlocks(blocks) {
[14387] Fix | Delete
external_wp_deprecated_default()('wp.data.dispatch( "core/block-editor" ).receiveBlocks', {
[14388] Fix | Delete
since: '5.9',
[14389] Fix | Delete
alternative: 'resetBlocks or insertBlocks'
[14390] Fix | Delete
});
[14391] Fix | Delete
return {
[14392] Fix | Delete
type: 'RECEIVE_BLOCKS',
[14393] Fix | Delete
blocks
[14394] Fix | Delete
};
[14395] Fix | Delete
}
[14396] Fix | Delete
[14397] Fix | Delete
/**
[14398] Fix | Delete
* Action that updates attributes of multiple blocks with the specified client IDs.
[14399] Fix | Delete
*
[14400] Fix | Delete
* @param {string|string[]} clientIds Block client IDs.
[14401] Fix | Delete
* @param {Object} attributes Block attributes to be merged. Should be keyed by clientIds if
[14402] Fix | Delete
* uniqueByBlock is true.
[14403] Fix | Delete
* @param {boolean} uniqueByBlock true if each block in clientIds array has a unique set of attributes
[14404] Fix | Delete
* @return {Object} Action object.
[14405] Fix | Delete
*/
[14406] Fix | Delete
function updateBlockAttributes(clientIds, attributes, uniqueByBlock = false) {
[14407] Fix | Delete
return {
[14408] Fix | Delete
type: 'UPDATE_BLOCK_ATTRIBUTES',
[14409] Fix | Delete
clientIds: actions_castArray(clientIds),
[14410] Fix | Delete
attributes,
[14411] Fix | Delete
uniqueByBlock
[14412] Fix | Delete
};
[14413] Fix | Delete
}
[14414] Fix | Delete
[14415] Fix | Delete
/**
[14416] Fix | Delete
* Action that updates the block with the specified client ID.
[14417] Fix | Delete
*
[14418] Fix | Delete
* @param {string} clientId Block client ID.
[14419] Fix | Delete
* @param {Object} updates Block attributes to be merged.
[14420] Fix | Delete
*
[14421] Fix | Delete
* @return {Object} Action object.
[14422] Fix | Delete
*/
[14423] Fix | Delete
function updateBlock(clientId, updates) {
[14424] Fix | Delete
return {
[14425] Fix | Delete
type: 'UPDATE_BLOCK',
[14426] Fix | Delete
clientId,
[14427] Fix | Delete
updates
[14428] Fix | Delete
};
[14429] Fix | Delete
}
[14430] Fix | Delete
[14431] Fix | Delete
/* eslint-disable jsdoc/valid-types */
[14432] Fix | Delete
/**
[14433] Fix | Delete
* Returns an action object used in signalling that the block with the
[14434] Fix | Delete
* specified client ID has been selected, optionally accepting a position
[14435] Fix | Delete
* value reflecting its selection directionality. An initialPosition of -1
[14436] Fix | Delete
* reflects a reverse selection.
[14437] Fix | Delete
*
[14438] Fix | Delete
* @param {string} clientId Block client ID.
[14439] Fix | Delete
* @param {0|-1|null} initialPosition Optional initial position. Pass as -1 to
[14440] Fix | Delete
* reflect reverse selection.
[14441] Fix | Delete
*
[14442] Fix | Delete
* @return {Object} Action object.
[14443] Fix | Delete
*/
[14444] Fix | Delete
function selectBlock(clientId, initialPosition = 0) {
[14445] Fix | Delete
/* eslint-enable jsdoc/valid-types */
[14446] Fix | Delete
return {
[14447] Fix | Delete
type: 'SELECT_BLOCK',
[14448] Fix | Delete
initialPosition,
[14449] Fix | Delete
clientId
[14450] Fix | Delete
};
[14451] Fix | Delete
}
[14452] Fix | Delete
[14453] Fix | Delete
/**
[14454] Fix | Delete
* Yields action objects used in signalling that the block preceding the given
[14455] Fix | Delete
* clientId (or optionally, its first parent from bottom to top)
[14456] Fix | Delete
* should be selected.
[14457] Fix | Delete
*
[14458] Fix | Delete
* @param {string} clientId Block client ID.
[14459] Fix | Delete
* @param {boolean} fallbackToParent If true, select the first parent if there is no previous block.
[14460] Fix | Delete
*/
[14461] Fix | Delete
const selectPreviousBlock = (clientId, fallbackToParent = false) => ({
[14462] Fix | Delete
select,
[14463] Fix | Delete
dispatch
[14464] Fix | Delete
}) => {
[14465] Fix | Delete
const previousBlockClientId = select.getPreviousBlockClientId(clientId);
[14466] Fix | Delete
if (previousBlockClientId) {
[14467] Fix | Delete
dispatch.selectBlock(previousBlockClientId, -1);
[14468] Fix | Delete
} else if (fallbackToParent) {
[14469] Fix | Delete
const firstParentClientId = select.getBlockRootClientId(clientId);
[14470] Fix | Delete
if (firstParentClientId) {
[14471] Fix | Delete
dispatch.selectBlock(firstParentClientId, -1);
[14472] Fix | Delete
}
[14473] Fix | Delete
}
[14474] Fix | Delete
};
[14475] Fix | Delete
[14476] Fix | Delete
/**
[14477] Fix | Delete
* Yields action objects used in signalling that the block following the given
[14478] Fix | Delete
* clientId should be selected.
[14479] Fix | Delete
*
[14480] Fix | Delete
* @param {string} clientId Block client ID.
[14481] Fix | Delete
*/
[14482] Fix | Delete
const selectNextBlock = clientId => ({
[14483] Fix | Delete
select,
[14484] Fix | Delete
dispatch
[14485] Fix | Delete
}) => {
[14486] Fix | Delete
const nextBlockClientId = select.getNextBlockClientId(clientId);
[14487] Fix | Delete
if (nextBlockClientId) {
[14488] Fix | Delete
dispatch.selectBlock(nextBlockClientId);
[14489] Fix | Delete
}
[14490] Fix | Delete
};
[14491] Fix | Delete
[14492] Fix | Delete
/**
[14493] Fix | Delete
* Action that starts block multi-selection.
[14494] Fix | Delete
*
[14495] Fix | Delete
* @return {Object} Action object.
[14496] Fix | Delete
*/
[14497] Fix | Delete
function startMultiSelect() {
[14498] Fix | Delete
return {
[14499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function