at path:
ROOT
/
wp-includes
/
js
/
dist
/
keyboard-shortcuts.js
run:
R
W
Run
development
DIR
2023-02-13 12:53:07
R
W
Run
script-modules
DIR
2026-05-21 18:07:37
R
W
Run
vendor
DIR
2026-05-21 18:07:38
R
W
Run
a11y.js
5.45 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
a11y.min.js
2.44 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
annotations.js
15.13 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
annotations.min.js
5.62 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
api-fetch.js
17.46 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
api-fetch.min.js
6.32 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
autop.js
9.73 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
autop.min.js
5.5 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
base-styles.js
48 By
2026-05-21 18:07:37
R
W
Run
Delete
Rename
base-styles.min.js
75 By
2026-07-10 17:22:33
R
W
Run
Delete
Rename
blob.js
2.3 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
blob.min.js
1.16 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
block-directory.js
55.67 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
block-directory.min.js
21.96 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
block-editor.js
2.7 MB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
block-editor.min.js
1.01 MB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
block-library.js
2.57 MB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
block-library.min.js
1.09 MB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
block-serialization-default-parser.js
6.54 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
block-serialization-default-parser.min.js
2.39 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
block-serialization-spec-parser.js
50.48 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
block-serialization-spec-parser.min.js
10.38 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
blocks.js
381.06 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
blocks.min.js
180.62 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
commands.js
151.71 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
commands.min.js
63.14 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
components.js
3.83 MB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
components.min.js
786.28 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
compose.js
80.75 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
compose.min.js
28.18 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
core-commands.js
28.68 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
core-commands.min.js
11.87 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
core-data.js
612.03 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
core-data.min.js
210.46 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
customize-widgets.js
91.57 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
customize-widgets.min.js
36.62 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
data-controls.js
4.13 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
data-controls.min.js
1.77 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
data.js
82.78 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
data.min.js
25.92 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
date.js
176.34 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
date.min.js
141.22 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
deprecated.js
3.04 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
deprecated.min.js
1.28 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
dom-ready.js
1.47 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
dom-ready.min.js
818 By
2026-07-10 17:22:33
R
W
Run
Delete
Rename
dom.js
34.61 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
dom.min.js
12.65 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
edit-post.js
117.4 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
edit-post.min.js
49.11 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
edit-site.js
1.69 MB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
edit-site.min.js
684.45 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
edit-widgets.js
160.25 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
edit-widgets.min.js
61.86 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
editor.js
2.5 MB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
editor.min.js
1021.63 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
element.js
27.93 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
element.min.js
12.17 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
escape-html.js
2.29 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
escape-html.min.js
1.07 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
format-library.js
73.34 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
format-library.min.js
28.88 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
hooks.js
11.96 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
hooks.min.js
4.93 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
html-entities.js
1.65 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
html-entities.min.js
879 By
2026-07-10 17:22:33
R
W
Run
Delete
Rename
i18n.js
15.3 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
i18n.min.js
5.6 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
is-shallow-equal.js
2.69 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
is-shallow-equal.min.js
1.1 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
keyboard-shortcuts.js
9.68 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
keyboard-shortcuts.min.js
3.44 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
keycodes.js
8.3 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
keycodes.min.js
2.91 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
list-reusable-blocks.js
13.06 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
list-reusable-blocks.min.js
5.24 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
media-utils.js
637.15 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
media-utils.min.js
237.64 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
notices.js
10.11 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
notices.min.js
4.38 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
nux.js
10.32 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
nux.min.js
3.95 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
patterns.js
58.25 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
patterns.min.js
21.63 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
plugins.js
11.67 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
plugins.min.js
4.76 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
preferences-persistence.js
17.22 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
preferences-persistence.min.js
5.49 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
preferences.js
21.07 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
preferences.min.js
7.71 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
primitives.js
5.08 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
primitives.min.js
1.98 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
priority-queue.js
10.02 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
priority-queue.min.js
3.35 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
private-apis.js
4.09 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
private-apis.min.js
2.66 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
react-i18n.js
3.91 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
react-i18n.min.js
1.53 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
redux-routine.js
24.68 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
redux-routine.min.js
9.65 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
reusable-blocks.js
20.51 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
reusable-blocks.min.js
7.22 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
rich-text.js
97.04 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
rich-text.min.js
39.89 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
router.js
36.12 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
router.min.js
14.13 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
server-side-render.js
10.97 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
server-side-render.min.js
3.94 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
shortcode.js
7.96 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
shortcode.min.js
3.28 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
style-engine.js
17.62 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
style-engine.min.js
6.42 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
sync.js
359.4 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
sync.min.js
118.11 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
theme.js
127.65 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
theme.min.js
56.12 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
token-list.js
6.12 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
token-list.min.js
1.62 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
undo-manager.js
5.29 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
undo-manager.min.js
1.7 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
upload-media.js
55.67 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
upload-media.min.js
23.05 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
url.js
23.39 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
url.min.js
10.13 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
viewport.js
6.61 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
viewport.min.js
2.24 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
warning.js
1.52 KB
2026-05-21 18:07:36
R
W
Run
Delete
Rename
warning.min.js
755 By
2026-07-10 17:22:33
R
W
Run
Delete
Rename
widgets.js
50.08 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
widgets.min.js
20.83 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
wordcount.js
6.93 KB
2026-05-21 18:07:37
R
W
Run
Delete
Rename
wordcount.min.js
2.45 KB
2026-07-10 17:22:33
R
W
Run
Delete
Rename
error_log
up
📄
keyboard-shortcuts.js
Save
var wp; (wp ||= {}).keyboardShortcuts = (() => { var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // package-external:@wordpress/data var require_data = __commonJS({ "package-external:@wordpress/data"(exports, module) { module.exports = window.wp.data; } }); // package-external:@wordpress/keycodes var require_keycodes = __commonJS({ "package-external:@wordpress/keycodes"(exports, module) { module.exports = window.wp.keycodes; } }); // package-external:@wordpress/element var require_element = __commonJS({ "package-external:@wordpress/element"(exports, module) { module.exports = window.wp.element; } }); // vendor-external:react/jsx-runtime var require_jsx_runtime = __commonJS({ "vendor-external:react/jsx-runtime"(exports, module) { module.exports = window.ReactJSXRuntime; } }); // packages/keyboard-shortcuts/build-module/index.mjs var index_exports = {}; __export(index_exports, { ShortcutProvider: () => ShortcutProvider, __unstableUseShortcutEventMatch: () => useShortcutEventMatch, store: () => store, useShortcut: () => useShortcut }); // packages/keyboard-shortcuts/build-module/store/index.mjs var import_data2 = __toESM(require_data(), 1); // packages/keyboard-shortcuts/build-module/store/reducer.mjs function reducer(state = {}, action) { switch (action.type) { case "REGISTER_SHORTCUT": return { ...state, [action.name]: { category: action.category, keyCombination: action.keyCombination, aliases: action.aliases, description: action.description } }; case "UNREGISTER_SHORTCUT": const { [action.name]: actionName, ...remainingState } = state; return remainingState; } return state; } var reducer_default = reducer; // packages/keyboard-shortcuts/build-module/store/actions.mjs var actions_exports = {}; __export(actions_exports, { registerShortcut: () => registerShortcut, unregisterShortcut: () => unregisterShortcut }); function registerShortcut({ name, category, description, keyCombination, aliases }) { return { type: "REGISTER_SHORTCUT", name, category, keyCombination, aliases, description }; } function unregisterShortcut(name) { return { type: "UNREGISTER_SHORTCUT", name }; } // packages/keyboard-shortcuts/build-module/store/selectors.mjs var selectors_exports = {}; __export(selectors_exports, { getAllShortcutKeyCombinations: () => getAllShortcutKeyCombinations, getAllShortcutRawKeyCombinations: () => getAllShortcutRawKeyCombinations, getCategoryShortcuts: () => getCategoryShortcuts, getShortcutAliases: () => getShortcutAliases, getShortcutDescription: () => getShortcutDescription, getShortcutKeyCombination: () => getShortcutKeyCombination, getShortcutRepresentation: () => getShortcutRepresentation }); var import_data = __toESM(require_data(), 1); var import_keycodes = __toESM(require_keycodes(), 1); var EMPTY_ARRAY = []; var FORMATTING_METHODS = { display: import_keycodes.displayShortcut, raw: import_keycodes.rawShortcut, ariaLabel: import_keycodes.shortcutAriaLabel }; function getKeyCombinationRepresentation(shortcut, representation) { if (!shortcut) { return null; } return shortcut.modifier ? FORMATTING_METHODS[representation][shortcut.modifier]( shortcut.character ) : shortcut.character; } function getShortcutKeyCombination(state, name) { return state[name] ? state[name].keyCombination : null; } function getShortcutRepresentation(state, name, representation = "display") { const shortcut = getShortcutKeyCombination(state, name); return getKeyCombinationRepresentation(shortcut, representation); } function getShortcutDescription(state, name) { return state[name] ? state[name].description : null; } function getShortcutAliases(state, name) { return state[name] && state[name].aliases ? state[name].aliases : EMPTY_ARRAY; } var getAllShortcutKeyCombinations = (0, import_data.createSelector)( (state, name) => { return [ getShortcutKeyCombination(state, name), ...getShortcutAliases(state, name) ].filter(Boolean); }, (state, name) => [state[name]] ); var getAllShortcutRawKeyCombinations = (0, import_data.createSelector)( (state, name) => { return getAllShortcutKeyCombinations(state, name).map( (combination) => getKeyCombinationRepresentation(combination, "raw") ); }, (state, name) => [state[name]] ); var getCategoryShortcuts = (0, import_data.createSelector)( (state, categoryName) => { return Object.entries(state).filter(([, shortcut]) => shortcut.category === categoryName).map(([name]) => name); }, (state) => [state] ); // packages/keyboard-shortcuts/build-module/store/index.mjs var STORE_NAME = "core/keyboard-shortcuts"; var store = (0, import_data2.createReduxStore)(STORE_NAME, { reducer: reducer_default, actions: actions_exports, selectors: selectors_exports }); (0, import_data2.register)(store); // packages/keyboard-shortcuts/build-module/hooks/use-shortcut.mjs var import_element2 = __toESM(require_element(), 1); // packages/keyboard-shortcuts/build-module/hooks/use-shortcut-event-match.mjs var import_data3 = __toESM(require_data(), 1); var import_keycodes2 = __toESM(require_keycodes(), 1); function useShortcutEventMatch() { const { getAllShortcutKeyCombinations: getAllShortcutKeyCombinations2 } = (0, import_data3.useSelect)( store ); function isMatch(name, event) { return getAllShortcutKeyCombinations2(name).some( ({ modifier, character }) => { return import_keycodes2.isKeyboardEvent[modifier](event, character); } ); } return isMatch; } // packages/keyboard-shortcuts/build-module/context.mjs var import_element = __toESM(require_element(), 1); var globalShortcuts = /* @__PURE__ */ new Set(); var globalListener = (event) => { for (const keyboardShortcut of globalShortcuts) { keyboardShortcut(event); } }; var context = (0, import_element.createContext)({ add: (shortcut) => { if (globalShortcuts.size === 0) { document.addEventListener("keydown", globalListener); } globalShortcuts.add(shortcut); }, delete: (shortcut) => { globalShortcuts.delete(shortcut); if (globalShortcuts.size === 0) { document.removeEventListener("keydown", globalListener); } } }); context.displayName = "KeyboardShortcutsContext"; // packages/keyboard-shortcuts/build-module/hooks/use-shortcut.mjs function useShortcut(name, callback, { isDisabled = false } = {}) { const shortcuts = (0, import_element2.useContext)(context); const isMatch = useShortcutEventMatch(); const callbackRef = (0, import_element2.useRef)(); (0, import_element2.useEffect)(() => { callbackRef.current = callback; }, [callback]); (0, import_element2.useEffect)(() => { if (isDisabled) { return; } function _callback(event) { if (isMatch(name, event)) { callbackRef.current(event); } } shortcuts.add(_callback); return () => { shortcuts.delete(_callback); }; }, [name, isDisabled, shortcuts]); } // packages/keyboard-shortcuts/build-module/components/shortcut-provider.mjs var import_element3 = __toESM(require_element(), 1); var import_jsx_runtime = __toESM(require_jsx_runtime(), 1); var { Provider } = context; function ShortcutProvider(props) { const [keyboardShortcuts] = (0, import_element3.useState)(() => /* @__PURE__ */ new Set()); function onKeyDown(event) { if (props.onKeyDown) { props.onKeyDown(event); } for (const keyboardShortcut of keyboardShortcuts) { keyboardShortcut(event); } } return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Provider, { value: keyboardShortcuts, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { ...props, onKeyDown }) }); } return __toCommonJS(index_exports); })();