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
if (start < searchText.length) {
[64000] Fix | Delete
return value;
[64001] Fix | Delete
}
[64002] Fix | Delete
const charactersBefore = text.slice(start - searchText.length, start);
[64003] Fix | Delete
if (charactersBefore.toLowerCase() !== searchText) {
[64004] Fix | Delete
return value;
[64005] Fix | Delete
}
[64006] Fix | Delete
return (0,external_wp_richText_namespaceObject.insert)(value, addText);
[64007] Fix | Delete
}
[64008] Fix | Delete
[64009] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/input-rules.js
[64010] Fix | Delete
/**
[64011] Fix | Delete
* WordPress dependencies
[64012] Fix | Delete
*/
[64013] Fix | Delete
[64014] Fix | Delete
[64015] Fix | Delete
[64016] Fix | Delete
/**
[64017] Fix | Delete
* Internal dependencies
[64018] Fix | Delete
*/
[64019] Fix | Delete
[64020] Fix | Delete
[64021] Fix | Delete
[64022] Fix | Delete
function findSelection(blocks) {
[64023] Fix | Delete
let i = blocks.length;
[64024] Fix | Delete
while (i--) {
[64025] Fix | Delete
const attributeKey = retrieveSelectedAttribute(blocks[i].attributes);
[64026] Fix | Delete
if (attributeKey) {
[64027] Fix | Delete
blocks[i].attributes[attributeKey] = blocks[i].attributes[attributeKey]
[64028] Fix | Delete
// To do: refactor this to use rich text's selection instead, so
[64029] Fix | Delete
// we no longer have to use on this hack inserting a special
[64030] Fix | Delete
// character.
[64031] Fix | Delete
.toString().replace(START_OF_SELECTED_AREA, '');
[64032] Fix | Delete
return [blocks[i].clientId, attributeKey, 0, 0];
[64033] Fix | Delete
}
[64034] Fix | Delete
const nestedSelection = findSelection(blocks[i].innerBlocks);
[64035] Fix | Delete
if (nestedSelection) {
[64036] Fix | Delete
return nestedSelection;
[64037] Fix | Delete
}
[64038] Fix | Delete
}
[64039] Fix | Delete
return [];
[64040] Fix | Delete
}
[64041] Fix | Delete
/* harmony default export */ const input_rules = (props => element => {
[64042] Fix | Delete
function inputRule() {
[64043] Fix | Delete
const {
[64044] Fix | Delete
getValue,
[64045] Fix | Delete
onReplace,
[64046] Fix | Delete
selectionChange,
[64047] Fix | Delete
registry
[64048] Fix | Delete
} = props.current;
[64049] Fix | Delete
if (!onReplace) {
[64050] Fix | Delete
return;
[64051] Fix | Delete
}
[64052] Fix | Delete
[64053] Fix | Delete
// We must use getValue() here because value may be update
[64054] Fix | Delete
// asynchronously.
[64055] Fix | Delete
const value = getValue();
[64056] Fix | Delete
const {
[64057] Fix | Delete
start,
[64058] Fix | Delete
text
[64059] Fix | Delete
} = value;
[64060] Fix | Delete
const characterBefore = text.slice(start - 1, start);
[64061] Fix | Delete
[64062] Fix | Delete
// The character right before the caret must be a plain space.
[64063] Fix | Delete
if (characterBefore !== ' ') {
[64064] Fix | Delete
return;
[64065] Fix | Delete
}
[64066] Fix | Delete
const trimmedTextBefore = text.slice(0, start).trim();
[64067] Fix | Delete
const prefixTransforms = (0,external_wp_blocks_namespaceObject.getBlockTransforms)('from').filter(({
[64068] Fix | Delete
type
[64069] Fix | Delete
}) => type === 'prefix');
[64070] Fix | Delete
const transformation = (0,external_wp_blocks_namespaceObject.findTransform)(prefixTransforms, ({
[64071] Fix | Delete
prefix
[64072] Fix | Delete
}) => {
[64073] Fix | Delete
return trimmedTextBefore === prefix;
[64074] Fix | Delete
});
[64075] Fix | Delete
if (!transformation) {
[64076] Fix | Delete
return;
[64077] Fix | Delete
}
[64078] Fix | Delete
const content = (0,external_wp_richText_namespaceObject.toHTMLString)({
[64079] Fix | Delete
value: (0,external_wp_richText_namespaceObject.insert)(value, START_OF_SELECTED_AREA, 0, start)
[64080] Fix | Delete
});
[64081] Fix | Delete
const block = transformation.transform(content);
[64082] Fix | Delete
selectionChange(...findSelection([block]));
[64083] Fix | Delete
onReplace([block]);
[64084] Fix | Delete
registry.dispatch(store).__unstableMarkAutomaticChange();
[64085] Fix | Delete
return true;
[64086] Fix | Delete
}
[64087] Fix | Delete
function onInput(event) {
[64088] Fix | Delete
const {
[64089] Fix | Delete
inputType,
[64090] Fix | Delete
type
[64091] Fix | Delete
} = event;
[64092] Fix | Delete
const {
[64093] Fix | Delete
getValue,
[64094] Fix | Delete
onChange,
[64095] Fix | Delete
__unstableAllowPrefixTransformations,
[64096] Fix | Delete
formatTypes,
[64097] Fix | Delete
registry
[64098] Fix | Delete
} = props.current;
[64099] Fix | Delete
[64100] Fix | Delete
// Only run input rules when inserting text.
[64101] Fix | Delete
if (inputType !== 'insertText' && type !== 'compositionend') {
[64102] Fix | Delete
return;
[64103] Fix | Delete
}
[64104] Fix | Delete
if (__unstableAllowPrefixTransformations && inputRule()) {
[64105] Fix | Delete
return;
[64106] Fix | Delete
}
[64107] Fix | Delete
const value = getValue();
[64108] Fix | Delete
const transformed = formatTypes.reduce((accumlator, {
[64109] Fix | Delete
__unstableInputRule
[64110] Fix | Delete
}) => {
[64111] Fix | Delete
if (__unstableInputRule) {
[64112] Fix | Delete
accumlator = __unstableInputRule(accumlator);
[64113] Fix | Delete
}
[64114] Fix | Delete
return accumlator;
[64115] Fix | Delete
}, preventEventDiscovery(value));
[64116] Fix | Delete
const {
[64117] Fix | Delete
__unstableMarkLastChangeAsPersistent,
[64118] Fix | Delete
__unstableMarkAutomaticChange
[64119] Fix | Delete
} = registry.dispatch(store);
[64120] Fix | Delete
if (transformed !== value) {
[64121] Fix | Delete
__unstableMarkLastChangeAsPersistent();
[64122] Fix | Delete
onChange({
[64123] Fix | Delete
...transformed,
[64124] Fix | Delete
activeFormats: value.activeFormats
[64125] Fix | Delete
});
[64126] Fix | Delete
__unstableMarkAutomaticChange();
[64127] Fix | Delete
}
[64128] Fix | Delete
}
[64129] Fix | Delete
element.addEventListener('input', onInput);
[64130] Fix | Delete
element.addEventListener('compositionend', onInput);
[64131] Fix | Delete
return () => {
[64132] Fix | Delete
element.removeEventListener('input', onInput);
[64133] Fix | Delete
element.removeEventListener('compositionend', onInput);
[64134] Fix | Delete
};
[64135] Fix | Delete
});
[64136] Fix | Delete
[64137] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/insert-replacement-text.js
[64138] Fix | Delete
/**
[64139] Fix | Delete
* Internal dependencies
[64140] Fix | Delete
*/
[64141] Fix | Delete
[64142] Fix | Delete
[64143] Fix | Delete
/**
[64144] Fix | Delete
* When the browser is about to auto correct, add an undo level so the user can
[64145] Fix | Delete
* revert the change.
[64146] Fix | Delete
*
[64147] Fix | Delete
* @param {Object} props
[64148] Fix | Delete
*/
[64149] Fix | Delete
/* harmony default export */ const insert_replacement_text = (props => element => {
[64150] Fix | Delete
function onInput(event) {
[64151] Fix | Delete
if (event.inputType !== 'insertReplacementText') {
[64152] Fix | Delete
return;
[64153] Fix | Delete
}
[64154] Fix | Delete
const {
[64155] Fix | Delete
registry
[64156] Fix | Delete
} = props.current;
[64157] Fix | Delete
registry.dispatch(store).__unstableMarkLastChangeAsPersistent();
[64158] Fix | Delete
}
[64159] Fix | Delete
element.addEventListener('beforeinput', onInput);
[64160] Fix | Delete
return () => {
[64161] Fix | Delete
element.removeEventListener('beforeinput', onInput);
[64162] Fix | Delete
};
[64163] Fix | Delete
});
[64164] Fix | Delete
[64165] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js
[64166] Fix | Delete
/**
[64167] Fix | Delete
* WordPress dependencies
[64168] Fix | Delete
*/
[64169] Fix | Delete
[64170] Fix | Delete
[64171] Fix | Delete
/**
[64172] Fix | Delete
* Hook to prevent default behaviors for key combinations otherwise handled
[64173] Fix | Delete
* internally by RichText.
[64174] Fix | Delete
*/
[64175] Fix | Delete
/* harmony default export */ const remove_browser_shortcuts = (() => node => {
[64176] Fix | Delete
function onKeydown(event) {
[64177] Fix | Delete
if (external_wp_keycodes_namespaceObject.isKeyboardEvent.primary(event, 'z') || external_wp_keycodes_namespaceObject.isKeyboardEvent.primary(event, 'y') || external_wp_keycodes_namespaceObject.isKeyboardEvent.primaryShift(event, 'z')) {
[64178] Fix | Delete
event.preventDefault();
[64179] Fix | Delete
}
[64180] Fix | Delete
}
[64181] Fix | Delete
node.addEventListener('keydown', onKeydown);
[64182] Fix | Delete
return () => {
[64183] Fix | Delete
node.removeEventListener('keydown', onKeydown);
[64184] Fix | Delete
};
[64185] Fix | Delete
});
[64186] Fix | Delete
[64187] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/shortcuts.js
[64188] Fix | Delete
/* harmony default export */ const shortcuts = (props => element => {
[64189] Fix | Delete
const {
[64190] Fix | Delete
keyboardShortcuts
[64191] Fix | Delete
} = props.current;
[64192] Fix | Delete
function onKeyDown(event) {
[64193] Fix | Delete
for (const keyboardShortcut of keyboardShortcuts.current) {
[64194] Fix | Delete
keyboardShortcut(event);
[64195] Fix | Delete
}
[64196] Fix | Delete
}
[64197] Fix | Delete
element.addEventListener('keydown', onKeyDown);
[64198] Fix | Delete
return () => {
[64199] Fix | Delete
element.removeEventListener('keydown', onKeyDown);
[64200] Fix | Delete
};
[64201] Fix | Delete
});
[64202] Fix | Delete
[64203] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/input-events.js
[64204] Fix | Delete
/* harmony default export */ const input_events = (props => element => {
[64205] Fix | Delete
const {
[64206] Fix | Delete
inputEvents
[64207] Fix | Delete
} = props.current;
[64208] Fix | Delete
function onInput(event) {
[64209] Fix | Delete
for (const keyboardShortcut of inputEvents.current) {
[64210] Fix | Delete
keyboardShortcut(event);
[64211] Fix | Delete
}
[64212] Fix | Delete
}
[64213] Fix | Delete
element.addEventListener('input', onInput);
[64214] Fix | Delete
return () => {
[64215] Fix | Delete
element.removeEventListener('input', onInput);
[64216] Fix | Delete
};
[64217] Fix | Delete
});
[64218] Fix | Delete
[64219] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/undo-automatic-change.js
[64220] Fix | Delete
/**
[64221] Fix | Delete
* WordPress dependencies
[64222] Fix | Delete
*/
[64223] Fix | Delete
[64224] Fix | Delete
[64225] Fix | Delete
/**
[64226] Fix | Delete
* Internal dependencies
[64227] Fix | Delete
*/
[64228] Fix | Delete
[64229] Fix | Delete
/* harmony default export */ const undo_automatic_change = (props => element => {
[64230] Fix | Delete
function onKeyDown(event) {
[64231] Fix | Delete
const {
[64232] Fix | Delete
keyCode
[64233] Fix | Delete
} = event;
[64234] Fix | Delete
if (event.defaultPrevented) {
[64235] Fix | Delete
return;
[64236] Fix | Delete
}
[64237] Fix | Delete
if (keyCode !== external_wp_keycodes_namespaceObject.BACKSPACE && keyCode !== external_wp_keycodes_namespaceObject.ESCAPE) {
[64238] Fix | Delete
return;
[64239] Fix | Delete
}
[64240] Fix | Delete
const {
[64241] Fix | Delete
registry
[64242] Fix | Delete
} = props.current;
[64243] Fix | Delete
const {
[64244] Fix | Delete
didAutomaticChange,
[64245] Fix | Delete
getSettings
[64246] Fix | Delete
} = registry.select(store);
[64247] Fix | Delete
const {
[64248] Fix | Delete
__experimentalUndo
[64249] Fix | Delete
} = getSettings();
[64250] Fix | Delete
if (!__experimentalUndo) {
[64251] Fix | Delete
return;
[64252] Fix | Delete
}
[64253] Fix | Delete
if (!didAutomaticChange()) {
[64254] Fix | Delete
return;
[64255] Fix | Delete
}
[64256] Fix | Delete
event.preventDefault();
[64257] Fix | Delete
__experimentalUndo();
[64258] Fix | Delete
}
[64259] Fix | Delete
element.addEventListener('keydown', onKeyDown);
[64260] Fix | Delete
return () => {
[64261] Fix | Delete
element.removeEventListener('keydown', onKeyDown);
[64262] Fix | Delete
};
[64263] Fix | Delete
});
[64264] Fix | Delete
[64265] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/utils.js
[64266] Fix | Delete
/**
[64267] Fix | Delete
* WordPress dependencies
[64268] Fix | Delete
*/
[64269] Fix | Delete
[64270] Fix | Delete
[64271] Fix | Delete
[64272] Fix | Delete
function addActiveFormats(value, activeFormats) {
[64273] Fix | Delete
if (activeFormats?.length) {
[64274] Fix | Delete
let index = value.formats.length;
[64275] Fix | Delete
while (index--) {
[64276] Fix | Delete
value.formats[index] = [...activeFormats, ...(value.formats[index] || [])];
[64277] Fix | Delete
}
[64278] Fix | Delete
}
[64279] Fix | Delete
}
[64280] Fix | Delete
[64281] Fix | Delete
/**
[64282] Fix | Delete
* Get the multiline tag based on the multiline prop.
[64283] Fix | Delete
*
[64284] Fix | Delete
* @param {?(string|boolean)} multiline The multiline prop.
[64285] Fix | Delete
*
[64286] Fix | Delete
* @return {string | undefined} The multiline tag.
[64287] Fix | Delete
*/
[64288] Fix | Delete
function getMultilineTag(multiline) {
[64289] Fix | Delete
if (multiline !== true && multiline !== 'p' && multiline !== 'li') {
[64290] Fix | Delete
return;
[64291] Fix | Delete
}
[64292] Fix | Delete
return multiline === true ? 'p' : multiline;
[64293] Fix | Delete
}
[64294] Fix | Delete
function getAllowedFormats({
[64295] Fix | Delete
allowedFormats,
[64296] Fix | Delete
disableFormats
[64297] Fix | Delete
}) {
[64298] Fix | Delete
if (disableFormats) {
[64299] Fix | Delete
return getAllowedFormats.EMPTY_ARRAY;
[64300] Fix | Delete
}
[64301] Fix | Delete
return allowedFormats;
[64302] Fix | Delete
}
[64303] Fix | Delete
getAllowedFormats.EMPTY_ARRAY = [];
[64304] Fix | Delete
[64305] Fix | Delete
/**
[64306] Fix | Delete
* Creates a link from pasted URL.
[64307] Fix | Delete
* Creates a paragraph block containing a link to the URL, and calls `onReplace`.
[64308] Fix | Delete
*
[64309] Fix | Delete
* @param {string} url The URL that could not be embedded.
[64310] Fix | Delete
* @param {Function} onReplace Function to call with the created fallback block.
[64311] Fix | Delete
*/
[64312] Fix | Delete
function createLinkInParagraph(url, onReplace) {
[64313] Fix | Delete
const link = /*#__PURE__*/_jsx("a", {
[64314] Fix | Delete
href: url,
[64315] Fix | Delete
children: url
[64316] Fix | Delete
});
[64317] Fix | Delete
onReplace(createBlock('core/paragraph', {
[64318] Fix | Delete
content: renderToString(link)
[64319] Fix | Delete
}));
[64320] Fix | Delete
}
[64321] Fix | Delete
[64322] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/paste-handler.js
[64323] Fix | Delete
/**
[64324] Fix | Delete
* WordPress dependencies
[64325] Fix | Delete
*/
[64326] Fix | Delete
[64327] Fix | Delete
[64328] Fix | Delete
[64329] Fix | Delete
[64330] Fix | Delete
/**
[64331] Fix | Delete
* Internal dependencies
[64332] Fix | Delete
*/
[64333] Fix | Delete
[64334] Fix | Delete
[64335] Fix | Delete
[64336] Fix | Delete
/** @typedef {import('@wordpress/rich-text').RichTextValue} RichTextValue */
[64337] Fix | Delete
[64338] Fix | Delete
/* harmony default export */ const paste_handler = (props => element => {
[64339] Fix | Delete
function _onPaste(event) {
[64340] Fix | Delete
const {
[64341] Fix | Delete
disableFormats,
[64342] Fix | Delete
onChange,
[64343] Fix | Delete
value,
[64344] Fix | Delete
formatTypes,
[64345] Fix | Delete
tagName,
[64346] Fix | Delete
onReplace,
[64347] Fix | Delete
__unstableEmbedURLOnPaste,
[64348] Fix | Delete
preserveWhiteSpace,
[64349] Fix | Delete
pastePlainText
[64350] Fix | Delete
} = props.current;
[64351] Fix | Delete
[64352] Fix | Delete
// The event listener is attached to the window, so we need to check if
[64353] Fix | Delete
// the target is the element.
[64354] Fix | Delete
if (event.target !== element) {
[64355] Fix | Delete
return;
[64356] Fix | Delete
}
[64357] Fix | Delete
if (event.defaultPrevented) {
[64358] Fix | Delete
return;
[64359] Fix | Delete
}
[64360] Fix | Delete
const {
[64361] Fix | Delete
plainText,
[64362] Fix | Delete
html
[64363] Fix | Delete
} = getPasteEventData(event);
[64364] Fix | Delete
event.preventDefault();
[64365] Fix | Delete
[64366] Fix | Delete
// Allows us to ask for this information when we get a report.
[64367] Fix | Delete
window.console.log('Received HTML:\n\n', html);
[64368] Fix | Delete
window.console.log('Received plain text:\n\n', plainText);
[64369] Fix | Delete
if (disableFormats) {
[64370] Fix | Delete
onChange((0,external_wp_richText_namespaceObject.insert)(value, plainText));
[64371] Fix | Delete
return;
[64372] Fix | Delete
}
[64373] Fix | Delete
const isInternal = event.clipboardData.getData('rich-text') === 'true';
[64374] Fix | Delete
function pasteInline(content) {
[64375] Fix | Delete
const transformed = formatTypes.reduce((accumulator, {
[64376] Fix | Delete
__unstablePasteRule
[64377] Fix | Delete
}) => {
[64378] Fix | Delete
// Only allow one transform.
[64379] Fix | Delete
if (__unstablePasteRule && accumulator === value) {
[64380] Fix | Delete
accumulator = __unstablePasteRule(value, {
[64381] Fix | Delete
html,
[64382] Fix | Delete
plainText
[64383] Fix | Delete
});
[64384] Fix | Delete
}
[64385] Fix | Delete
return accumulator;
[64386] Fix | Delete
}, value);
[64387] Fix | Delete
if (transformed !== value) {
[64388] Fix | Delete
onChange(transformed);
[64389] Fix | Delete
} else {
[64390] Fix | Delete
const valueToInsert = (0,external_wp_richText_namespaceObject.create)({
[64391] Fix | Delete
html: content
[64392] Fix | Delete
});
[64393] Fix | Delete
addActiveFormats(valueToInsert, value.activeFormats);
[64394] Fix | Delete
onChange((0,external_wp_richText_namespaceObject.insert)(value, valueToInsert));
[64395] Fix | Delete
}
[64396] Fix | Delete
}
[64397] Fix | Delete
[64398] Fix | Delete
// If the data comes from a rich text instance, we can directly use it
[64399] Fix | Delete
// without filtering the data. The filters are only meant for externally
[64400] Fix | Delete
// pasted content and remove inline styles.
[64401] Fix | Delete
if (isInternal) {
[64402] Fix | Delete
pasteInline(html);
[64403] Fix | Delete
return;
[64404] Fix | Delete
}
[64405] Fix | Delete
if (pastePlainText) {
[64406] Fix | Delete
onChange((0,external_wp_richText_namespaceObject.insert)(value, (0,external_wp_richText_namespaceObject.create)({
[64407] Fix | Delete
text: plainText
[64408] Fix | Delete
})));
[64409] Fix | Delete
return;
[64410] Fix | Delete
}
[64411] Fix | Delete
let mode = 'INLINE';
[64412] Fix | Delete
const trimmedPlainText = plainText.trim();
[64413] Fix | Delete
if (__unstableEmbedURLOnPaste && (0,external_wp_richText_namespaceObject.isEmpty)(value) && (0,external_wp_url_namespaceObject.isURL)(trimmedPlainText) &&
[64414] Fix | Delete
// For the link pasting feature, allow only http(s) protocols.
[64415] Fix | Delete
/^https?:/.test(trimmedPlainText)) {
[64416] Fix | Delete
mode = 'BLOCKS';
[64417] Fix | Delete
}
[64418] Fix | Delete
const content = (0,external_wp_blocks_namespaceObject.pasteHandler)({
[64419] Fix | Delete
HTML: html,
[64420] Fix | Delete
plainText,
[64421] Fix | Delete
mode,
[64422] Fix | Delete
tagName,
[64423] Fix | Delete
preserveWhiteSpace
[64424] Fix | Delete
});
[64425] Fix | Delete
if (typeof content === 'string') {
[64426] Fix | Delete
pasteInline(content);
[64427] Fix | Delete
} else if (content.length > 0) {
[64428] Fix | Delete
if (onReplace && (0,external_wp_richText_namespaceObject.isEmpty)(value)) {
[64429] Fix | Delete
onReplace(content, content.length - 1, -1);
[64430] Fix | Delete
}
[64431] Fix | Delete
}
[64432] Fix | Delete
}
[64433] Fix | Delete
const {
[64434] Fix | Delete
defaultView
[64435] Fix | Delete
} = element.ownerDocument;
[64436] Fix | Delete
[64437] Fix | Delete
// Attach the listener to the window so parent elements have the chance to
[64438] Fix | Delete
// prevent the default behavior.
[64439] Fix | Delete
defaultView.addEventListener('paste', _onPaste);
[64440] Fix | Delete
return () => {
[64441] Fix | Delete
defaultView.removeEventListener('paste', _onPaste);
[64442] Fix | Delete
};
[64443] Fix | Delete
});
[64444] Fix | Delete
[64445] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/delete.js
[64446] Fix | Delete
/**
[64447] Fix | Delete
* WordPress dependencies
[64448] Fix | Delete
*/
[64449] Fix | Delete
[64450] Fix | Delete
[64451] Fix | Delete
/* harmony default export */ const event_listeners_delete = (props => element => {
[64452] Fix | Delete
function onKeyDown(event) {
[64453] Fix | Delete
const {
[64454] Fix | Delete
keyCode
[64455] Fix | Delete
} = event;
[64456] Fix | Delete
if (event.defaultPrevented) {
[64457] Fix | Delete
return;
[64458] Fix | Delete
}
[64459] Fix | Delete
const {
[64460] Fix | Delete
value,
[64461] Fix | Delete
onMerge,
[64462] Fix | Delete
onRemove
[64463] Fix | Delete
} = props.current;
[64464] Fix | Delete
if (keyCode === external_wp_keycodes_namespaceObject.DELETE || keyCode === external_wp_keycodes_namespaceObject.BACKSPACE) {
[64465] Fix | Delete
const {
[64466] Fix | Delete
start,
[64467] Fix | Delete
end,
[64468] Fix | Delete
text
[64469] Fix | Delete
} = value;
[64470] Fix | Delete
const isReverse = keyCode === external_wp_keycodes_namespaceObject.BACKSPACE;
[64471] Fix | Delete
const hasActiveFormats = value.activeFormats && !!value.activeFormats.length;
[64472] Fix | Delete
[64473] Fix | Delete
// Only process delete if the key press occurs at an uncollapsed edge.
[64474] Fix | Delete
if (!(0,external_wp_richText_namespaceObject.isCollapsed)(value) || hasActiveFormats || isReverse && start !== 0 || !isReverse && end !== text.length) {
[64475] Fix | Delete
return;
[64476] Fix | Delete
}
[64477] Fix | Delete
if (onMerge) {
[64478] Fix | Delete
onMerge(!isReverse);
[64479] Fix | Delete
}
[64480] Fix | Delete
[64481] Fix | Delete
// Only handle remove on Backspace. This serves dual-purpose of being
[64482] Fix | Delete
// an intentional user interaction distinguishing between Backspace and
[64483] Fix | Delete
// Delete to remove the empty field, but also to avoid merge & remove
[64484] Fix | Delete
// causing destruction of two fields (merge, then removed merged).
[64485] Fix | Delete
else if (onRemove && (0,external_wp_richText_namespaceObject.isEmpty)(value) && isReverse) {
[64486] Fix | Delete
onRemove(!isReverse);
[64487] Fix | Delete
}
[64488] Fix | Delete
event.preventDefault();
[64489] Fix | Delete
}
[64490] Fix | Delete
}
[64491] Fix | Delete
element.addEventListener('keydown', onKeyDown);
[64492] Fix | Delete
return () => {
[64493] Fix | Delete
element.removeEventListener('keydown', onKeyDown);
[64494] Fix | Delete
};
[64495] Fix | Delete
});
[64496] Fix | Delete
[64497] Fix | Delete
;// CONCATENATED MODULE: ./node_modules/@wordpress/block-editor/build-module/components/rich-text/event-listeners/enter.js
[64498] Fix | Delete
/**
[64499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function