{
  "version": 3,
  "sources": ["../../src/store/actions.js"],
  "sourcesContent": ["/** @typedef {import('@wordpress/keycodes').WPKeycodeModifier} WPKeycodeModifier */\n\n/**\n * Keyboard key combination.\n *\n * @typedef {Object} WPShortcutKeyCombination\n *\n * @property {string}                      character Character.\n * @property {WPKeycodeModifier|undefined} modifier  Modifier.\n */\n\n/**\n * Configuration of a registered keyboard shortcut.\n *\n * @typedef {Object} WPShortcutConfig\n *\n * @property {string}                     name           Shortcut name.\n * @property {string}                     category       Shortcut category.\n * @property {string}                     description    Shortcut description.\n * @property {WPShortcutKeyCombination}   keyCombination Shortcut key combination.\n * @property {WPShortcutKeyCombination[]} [aliases]      Shortcut aliases.\n */\n\n/**\n * Returns an action object used to register a new keyboard shortcut.\n *\n * @param {WPShortcutConfig} config Shortcut config.\n *\n * @example\n *\n *```js\n * import { useEffect } from 'react';\n * import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n * import { useSelect, useDispatch } from '@wordpress/data';\n * import { __ } from '@wordpress/i18n';\n *\n * const ExampleComponent = () => {\n *     const { registerShortcut } = useDispatch( keyboardShortcutsStore );\n *\n *     useEffect( () => {\n *         registerShortcut( {\n *             name: 'custom/my-custom-shortcut',\n *             category: 'my-category',\n *             description: __( 'My custom shortcut' ),\n *             keyCombination: {\n *                 modifier: 'primary',\n *                 character: 'j',\n *             },\n *         } );\n *     }, [] );\n *\n *     const shortcut = useSelect(\n *         ( select ) =>\n *             select( keyboardShortcutsStore ).getShortcutKeyCombination(\n *                 'custom/my-custom-shortcut'\n *             ),\n *         []\n *     );\n *\n *     return shortcut ? (\n *         <p>{ __( 'Shortcut is registered.' ) }</p>\n *     ) : (\n *         <p>{ __( 'Shortcut is not registered.' ) }</p>\n *     );\n * };\n *```\n * @return {Object} action.\n */\nexport function registerShortcut( {\n\tname,\n\tcategory,\n\tdescription,\n\tkeyCombination,\n\taliases,\n} ) {\n\treturn {\n\t\ttype: 'REGISTER_SHORTCUT',\n\t\tname,\n\t\tcategory,\n\t\tkeyCombination,\n\t\taliases,\n\t\tdescription,\n\t};\n}\n\n/**\n * Returns an action object used to unregister a keyboard shortcut.\n *\n * @param {string} name Shortcut name.\n *\n * @example\n *\n *```js\n * import { useEffect } from 'react';\n * import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n * import { useSelect, useDispatch } from '@wordpress/data';\n * import { __ } from '@wordpress/i18n';\n *\n * const ExampleComponent = () => {\n *     const { unregisterShortcut } = useDispatch( keyboardShortcutsStore );\n *\n *     useEffect( () => {\n *         unregisterShortcut( 'core/editor/next-region' );\n *     }, [] );\n *\n *     const shortcut = useSelect(\n *         ( select ) =>\n *             select( keyboardShortcutsStore ).getShortcutKeyCombination(\n *                 'core/editor/next-region'\n *             ),\n *         []\n *     );\n *\n *     return shortcut ? (\n *         <p>{ __( 'Shortcut is not unregistered.' ) }</p>\n *     ) : (\n *         <p>{ __( 'Shortcut is unregistered.' ) }</p>\n *     );\n * };\n *```\n * @return {Object} action.\n */\nexport function unregisterShortcut( name ) {\n\treturn {\n\t\ttype: 'UNREGISTER_SHORTCUT',\n\t\tname,\n\t};\n}\n"],
  "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoEO,SAAS,iBAAkB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAI;AACH,SAAO;AAAA,IACN,MAAM;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAuCO,SAAS,mBAAoB,MAAO;AAC1C,SAAO;AAAA,IACN,MAAM;AAAA,IACN;AAAA,EACD;AACD;",
  "names": []
}
