@wordpress/customize-widgets 4.32.0 → 4.34.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.
Files changed (90) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/block-appender/index.js.map +1 -1
  3. package/build/components/block-inspector-button/index.js.map +1 -1
  4. package/build/components/customize-widgets/index.js.map +1 -1
  5. package/build/components/customize-widgets/use-clear-selected-block.js.map +1 -1
  6. package/build/components/error-boundary/index.js.map +1 -1
  7. package/build/components/focus-control/index.js.map +1 -1
  8. package/build/components/focus-control/use-blocks-focus-control.js.map +1 -1
  9. package/build/components/header/index.js.map +1 -1
  10. package/build/components/inserter/index.js.map +1 -1
  11. package/build/components/inserter/use-inserter.js.map +1 -1
  12. package/build/components/keyboard-shortcut-help-modal/config.js +4 -0
  13. package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  14. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +1 -1
  15. package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  16. package/build/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -1
  17. package/build/components/keyboard-shortcuts/index.js +0 -59
  18. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  19. package/build/components/more-menu/index.js.map +1 -1
  20. package/build/components/sidebar-block-editor/index.js +5 -1
  21. package/build/components/sidebar-block-editor/index.js.map +1 -1
  22. package/build/components/sidebar-block-editor/sidebar-adapter.js.map +1 -1
  23. package/build/components/sidebar-block-editor/sidebar-editor-provider.js.map +1 -1
  24. package/build/components/sidebar-block-editor/use-sidebar-block-editor.js.map +1 -1
  25. package/build/components/sidebar-controls/index.js.map +1 -1
  26. package/build/components/welcome-guide/index.js.map +1 -1
  27. package/build/controls/inserter-outer-section.js.map +1 -1
  28. package/build/controls/inspector-section.js.map +1 -1
  29. package/build/controls/sidebar-control.js.map +1 -1
  30. package/build/controls/sidebar-section.js.map +1 -1
  31. package/build/filters/index.js.map +1 -1
  32. package/build/filters/move-to-sidebar.js.map +1 -1
  33. package/build/filters/replace-media-upload.js.map +1 -1
  34. package/build/filters/wide-widget-display.js.map +1 -1
  35. package/build/index.js.map +1 -1
  36. package/build/lock-unlock.js.map +1 -1
  37. package/build/store/actions.js.map +1 -1
  38. package/build/store/constants.js.map +1 -1
  39. package/build/store/index.js +1 -1
  40. package/build/store/index.js.map +1 -1
  41. package/build/store/reducer.js.map +1 -1
  42. package/build/store/selectors.js.map +1 -1
  43. package/build/utils.js.map +1 -1
  44. package/build-module/components/block-appender/index.js.map +1 -1
  45. package/build-module/components/block-inspector-button/index.js.map +1 -1
  46. package/build-module/components/customize-widgets/index.js.map +1 -1
  47. package/build-module/components/customize-widgets/use-clear-selected-block.js.map +1 -1
  48. package/build-module/components/error-boundary/index.js.map +1 -1
  49. package/build-module/components/focus-control/index.js.map +1 -1
  50. package/build-module/components/focus-control/use-blocks-focus-control.js.map +1 -1
  51. package/build-module/components/header/index.js.map +1 -1
  52. package/build-module/components/inserter/index.js.map +1 -1
  53. package/build-module/components/inserter/use-inserter.js.map +1 -1
  54. package/build-module/components/keyboard-shortcut-help-modal/config.js +4 -0
  55. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  56. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +1 -1
  57. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  58. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -1
  59. package/build-module/components/keyboard-shortcuts/index.js +1 -60
  60. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  61. package/build-module/components/more-menu/index.js.map +1 -1
  62. package/build-module/components/sidebar-block-editor/index.js +5 -1
  63. package/build-module/components/sidebar-block-editor/index.js.map +1 -1
  64. package/build-module/components/sidebar-block-editor/sidebar-adapter.js.map +1 -1
  65. package/build-module/components/sidebar-block-editor/sidebar-editor-provider.js.map +1 -1
  66. package/build-module/components/sidebar-block-editor/use-sidebar-block-editor.js.map +1 -1
  67. package/build-module/components/sidebar-controls/index.js.map +1 -1
  68. package/build-module/components/welcome-guide/index.js.map +1 -1
  69. package/build-module/controls/inserter-outer-section.js.map +1 -1
  70. package/build-module/controls/inspector-section.js.map +1 -1
  71. package/build-module/controls/sidebar-control.js.map +1 -1
  72. package/build-module/controls/sidebar-section.js.map +1 -1
  73. package/build-module/filters/index.js.map +1 -1
  74. package/build-module/filters/move-to-sidebar.js.map +1 -1
  75. package/build-module/filters/replace-media-upload.js.map +1 -1
  76. package/build-module/filters/wide-widget-display.js.map +1 -1
  77. package/build-module/index.js.map +1 -1
  78. package/build-module/lock-unlock.js.map +1 -1
  79. package/build-module/store/actions.js.map +1 -1
  80. package/build-module/store/constants.js.map +1 -1
  81. package/build-module/store/index.js.map +1 -1
  82. package/build-module/store/reducer.js.map +1 -1
  83. package/build-module/store/selectors.js.map +1 -1
  84. package/build-module/utils.js.map +1 -1
  85. package/build-style/style-rtl.css +1 -1
  86. package/build-style/style.css +1 -1
  87. package/package.json +22 -22
  88. package/src/components/keyboard-shortcut-help-modal/config.js +10 -1
  89. package/src/components/keyboard-shortcuts/index.js +1 -72
  90. package/src/components/sidebar-block-editor/index.js +4 -0
@@ -1 +1 @@
1
- {"version":3,"names":["EMPTY_INSERTION_POINT","rootClientId","undefined","insertionIndex","isInserterOpened","state","blockInserterPanel","__experimentalGetInsertionPoint"],"sources":["@wordpress/customize-widgets/src/store/selectors.js"],"sourcesContent":["const EMPTY_INSERTION_POINT = {\n\trootClientId: undefined,\n\tinsertionIndex: undefined,\n};\n\n/**\n * Returns true if the inserter is opened.\n *\n * @param {Object} state Global application state.\n *\n * @example\n * ```js\n * import { store as customizeWidgetsStore } from '@wordpress/customize-widgets';\n * import { __ } from '@wordpress/i18n';\n * import { useSelect } from '@wordpress/data';\n *\n * const ExampleComponent = () => {\n * const { isInserterOpened } = useSelect(\n * ( select ) => select( customizeWidgetsStore ),\n * []\n * );\n *\n * return isInserterOpened()\n * ? __( 'Inserter is open' )\n * : __( 'Inserter is closed.' );\n * };\n * ```\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport function isInserterOpened( state ) {\n\treturn !! state.blockInserterPanel;\n}\n\n/**\n * Get the insertion point for the inserter.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID and index to insert at.\n */\nexport function __experimentalGetInsertionPoint( state ) {\n\tif ( typeof state.blockInserterPanel === 'boolean' ) {\n\t\treturn EMPTY_INSERTION_POINT;\n\t}\n\n\treturn state.blockInserterPanel;\n}\n"],"mappings":";;;;;;;AAAA,MAAMA,qBAAqB,GAAG;EAC7BC,YAAY,EAAEC,SAAS;EACvBC,cAAc,EAAED;AACjB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,gBAAgBA,CAAEC,KAAK,EAAG;EACzC,OAAO,CAAC,CAAEA,KAAK,CAACC,kBAAkB;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,+BAA+BA,CAAEF,KAAK,EAAG;EACxD,IAAK,OAAOA,KAAK,CAACC,kBAAkB,KAAK,SAAS,EAAG;IACpD,OAAON,qBAAqB;EAC7B;EAEA,OAAOK,KAAK,CAACC,kBAAkB;AAChC"}
1
+ {"version":3,"names":["EMPTY_INSERTION_POINT","rootClientId","undefined","insertionIndex","isInserterOpened","state","blockInserterPanel","__experimentalGetInsertionPoint"],"sources":["@wordpress/customize-widgets/src/store/selectors.js"],"sourcesContent":["const EMPTY_INSERTION_POINT = {\n\trootClientId: undefined,\n\tinsertionIndex: undefined,\n};\n\n/**\n * Returns true if the inserter is opened.\n *\n * @param {Object} state Global application state.\n *\n * @example\n * ```js\n * import { store as customizeWidgetsStore } from '@wordpress/customize-widgets';\n * import { __ } from '@wordpress/i18n';\n * import { useSelect } from '@wordpress/data';\n *\n * const ExampleComponent = () => {\n * const { isInserterOpened } = useSelect(\n * ( select ) => select( customizeWidgetsStore ),\n * []\n * );\n *\n * return isInserterOpened()\n * ? __( 'Inserter is open' )\n * : __( 'Inserter is closed.' );\n * };\n * ```\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport function isInserterOpened( state ) {\n\treturn !! state.blockInserterPanel;\n}\n\n/**\n * Get the insertion point for the inserter.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID and index to insert at.\n */\nexport function __experimentalGetInsertionPoint( state ) {\n\tif ( typeof state.blockInserterPanel === 'boolean' ) {\n\t\treturn EMPTY_INSERTION_POINT;\n\t}\n\n\treturn state.blockInserterPanel;\n}\n"],"mappings":";;;;;;;AAAA,MAAMA,qBAAqB,GAAG;EAC7BC,YAAY,EAAEC,SAAS;EACvBC,cAAc,EAAED;AACjB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,gBAAgBA,CAAEC,KAAK,EAAG;EACzC,OAAO,CAAC,CAAEA,KAAK,CAACC,kBAAkB;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,+BAA+BA,CAAEF,KAAK,EAAG;EACxD,IAAK,OAAOA,KAAK,CAACC,kBAAkB,KAAK,SAAS,EAAG;IACpD,OAAON,qBAAqB;EAC7B;EAEA,OAAOK,KAAK,CAACC,kBAAkB;AAChC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_blocks","require","_widgets","settingIdToWidgetId","settingId","matches","match","idBase","number","parseInt","blockToWidget","block","existingWidget","widget","isValidLegacyWidgetBlock","name","attributes","id","instance","encoded","hash","raw","rest","is_widget_customizer_js_value","encoded_serialized_instance","instance_hash_key","raw_instance","content","serialize","widgetClass","form","rendered","restExistingWidget","widgetToBlock","_raw$content","parsedBlocks","parse","__unstableSkipAutop","length","createBlock","addWidgetIdToBlock"],"sources":["@wordpress/customize-widgets/src/utils.js"],"sourcesContent":["// @ts-check\n/**\n * WordPress dependencies\n */\nimport { serialize, parse, createBlock } from '@wordpress/blocks';\nimport { addWidgetIdToBlock } from '@wordpress/widgets';\n\n/**\n * Convert settingId to widgetId.\n *\n * @param {string} settingId The setting id.\n * @return {string} The widget id.\n */\nexport function settingIdToWidgetId( settingId ) {\n\tconst matches = settingId.match( /^widget_(.+)(?:\\[(\\d+)\\])$/ );\n\n\tif ( matches ) {\n\t\tconst idBase = matches[ 1 ];\n\t\tconst number = parseInt( matches[ 2 ], 10 );\n\n\t\treturn `${ idBase }-${ number }`;\n\t}\n\n\treturn settingId;\n}\n\n/**\n * Transform a block to a customizable widget.\n *\n * @param {WPBlock} block The block to be transformed from.\n * @param {Object} existingWidget The widget to be extended from.\n * @return {Object} The transformed widget.\n */\nexport function blockToWidget( block, existingWidget = null ) {\n\tlet widget;\n\n\tconst isValidLegacyWidgetBlock =\n\t\tblock.name === 'core/legacy-widget' &&\n\t\t( block.attributes.id || block.attributes.instance );\n\n\tif ( isValidLegacyWidgetBlock ) {\n\t\tif ( block.attributes.id ) {\n\t\t\t// Widget that does not extend WP_Widget.\n\t\t\twidget = {\n\t\t\t\tid: block.attributes.id,\n\t\t\t};\n\t\t} else {\n\t\t\tconst { encoded, hash, raw, ...rest } = block.attributes.instance;\n\n\t\t\t// Widget that extends WP_Widget.\n\t\t\twidget = {\n\t\t\t\tidBase: block.attributes.idBase,\n\t\t\t\tinstance: {\n\t\t\t\t\t...existingWidget?.instance,\n\t\t\t\t\t// Required only for the customizer.\n\t\t\t\t\tis_widget_customizer_js_value: true,\n\t\t\t\t\tencoded_serialized_instance: encoded,\n\t\t\t\t\tinstance_hash_key: hash,\n\t\t\t\t\traw_instance: raw,\n\t\t\t\t\t...rest,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t} else {\n\t\tconst instance = {\n\t\t\tcontent: serialize( block ),\n\t\t};\n\t\twidget = {\n\t\t\tidBase: 'block',\n\t\t\twidgetClass: 'WP_Widget_Block',\n\t\t\tinstance: {\n\t\t\t\traw_instance: instance,\n\t\t\t},\n\t\t};\n\t}\n\n\tconst { form, rendered, ...restExistingWidget } = existingWidget || {};\n\n\treturn {\n\t\t...restExistingWidget,\n\t\t...widget,\n\t};\n}\n\n/**\n * Transform a widget to a block.\n *\n * @param {Object} widget The widget to be transformed from.\n * @param {string} widget.id The widget id.\n * @param {string} widget.idBase The id base of the widget.\n * @param {number} widget.number The number/index of the widget.\n * @param {Object} widget.instance The instance of the widget.\n * @return {WPBlock} The transformed block.\n */\nexport function widgetToBlock( { id, idBase, number, instance } ) {\n\tlet block;\n\n\tconst {\n\t\tencoded_serialized_instance: encoded,\n\t\tinstance_hash_key: hash,\n\t\traw_instance: raw,\n\t\t...rest\n\t} = instance;\n\n\tif ( idBase === 'block' ) {\n\t\tconst parsedBlocks = parse( raw.content ?? '', {\n\t\t\t__unstableSkipAutop: true,\n\t\t} );\n\t\tblock = parsedBlocks.length\n\t\t\t? parsedBlocks[ 0 ]\n\t\t\t: createBlock( 'core/paragraph', {} );\n\t} else if ( number ) {\n\t\t// Widget that extends WP_Widget.\n\t\tblock = createBlock( 'core/legacy-widget', {\n\t\t\tidBase,\n\t\t\tinstance: {\n\t\t\t\tencoded,\n\t\t\t\thash,\n\t\t\t\traw,\n\t\t\t\t...rest,\n\t\t\t},\n\t\t} );\n\t} else {\n\t\t// Widget that does not extend WP_Widget.\n\t\tblock = createBlock( 'core/legacy-widget', {\n\t\t\tid,\n\t\t} );\n\t}\n\n\treturn addWidgetIdToBlock( block, id );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_blocks","require","_widgets","settingIdToWidgetId","settingId","matches","match","idBase","number","parseInt","blockToWidget","block","existingWidget","widget","isValidLegacyWidgetBlock","name","attributes","id","instance","encoded","hash","raw","rest","is_widget_customizer_js_value","encoded_serialized_instance","instance_hash_key","raw_instance","content","serialize","widgetClass","form","rendered","restExistingWidget","widgetToBlock","_raw$content","parsedBlocks","parse","__unstableSkipAutop","length","createBlock","addWidgetIdToBlock"],"sources":["@wordpress/customize-widgets/src/utils.js"],"sourcesContent":["// @ts-check\n/**\n * WordPress dependencies\n */\nimport { serialize, parse, createBlock } from '@wordpress/blocks';\nimport { addWidgetIdToBlock } from '@wordpress/widgets';\n\n/**\n * Convert settingId to widgetId.\n *\n * @param {string} settingId The setting id.\n * @return {string} The widget id.\n */\nexport function settingIdToWidgetId( settingId ) {\n\tconst matches = settingId.match( /^widget_(.+)(?:\\[(\\d+)\\])$/ );\n\n\tif ( matches ) {\n\t\tconst idBase = matches[ 1 ];\n\t\tconst number = parseInt( matches[ 2 ], 10 );\n\n\t\treturn `${ idBase }-${ number }`;\n\t}\n\n\treturn settingId;\n}\n\n/**\n * Transform a block to a customizable widget.\n *\n * @param {WPBlock} block The block to be transformed from.\n * @param {Object} existingWidget The widget to be extended from.\n * @return {Object} The transformed widget.\n */\nexport function blockToWidget( block, existingWidget = null ) {\n\tlet widget;\n\n\tconst isValidLegacyWidgetBlock =\n\t\tblock.name === 'core/legacy-widget' &&\n\t\t( block.attributes.id || block.attributes.instance );\n\n\tif ( isValidLegacyWidgetBlock ) {\n\t\tif ( block.attributes.id ) {\n\t\t\t// Widget that does not extend WP_Widget.\n\t\t\twidget = {\n\t\t\t\tid: block.attributes.id,\n\t\t\t};\n\t\t} else {\n\t\t\tconst { encoded, hash, raw, ...rest } = block.attributes.instance;\n\n\t\t\t// Widget that extends WP_Widget.\n\t\t\twidget = {\n\t\t\t\tidBase: block.attributes.idBase,\n\t\t\t\tinstance: {\n\t\t\t\t\t...existingWidget?.instance,\n\t\t\t\t\t// Required only for the customizer.\n\t\t\t\t\tis_widget_customizer_js_value: true,\n\t\t\t\t\tencoded_serialized_instance: encoded,\n\t\t\t\t\tinstance_hash_key: hash,\n\t\t\t\t\traw_instance: raw,\n\t\t\t\t\t...rest,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t} else {\n\t\tconst instance = {\n\t\t\tcontent: serialize( block ),\n\t\t};\n\t\twidget = {\n\t\t\tidBase: 'block',\n\t\t\twidgetClass: 'WP_Widget_Block',\n\t\t\tinstance: {\n\t\t\t\traw_instance: instance,\n\t\t\t},\n\t\t};\n\t}\n\n\tconst { form, rendered, ...restExistingWidget } = existingWidget || {};\n\n\treturn {\n\t\t...restExistingWidget,\n\t\t...widget,\n\t};\n}\n\n/**\n * Transform a widget to a block.\n *\n * @param {Object} widget The widget to be transformed from.\n * @param {string} widget.id The widget id.\n * @param {string} widget.idBase The id base of the widget.\n * @param {number} widget.number The number/index of the widget.\n * @param {Object} widget.instance The instance of the widget.\n * @return {WPBlock} The transformed block.\n */\nexport function widgetToBlock( { id, idBase, number, instance } ) {\n\tlet block;\n\n\tconst {\n\t\tencoded_serialized_instance: encoded,\n\t\tinstance_hash_key: hash,\n\t\traw_instance: raw,\n\t\t...rest\n\t} = instance;\n\n\tif ( idBase === 'block' ) {\n\t\tconst parsedBlocks = parse( raw.content ?? '', {\n\t\t\t__unstableSkipAutop: true,\n\t\t} );\n\t\tblock = parsedBlocks.length\n\t\t\t? parsedBlocks[ 0 ]\n\t\t\t: createBlock( 'core/paragraph', {} );\n\t} else if ( number ) {\n\t\t// Widget that extends WP_Widget.\n\t\tblock = createBlock( 'core/legacy-widget', {\n\t\t\tidBase,\n\t\t\tinstance: {\n\t\t\t\tencoded,\n\t\t\t\thash,\n\t\t\t\traw,\n\t\t\t\t...rest,\n\t\t\t},\n\t\t} );\n\t} else {\n\t\t// Widget that does not extend WP_Widget.\n\t\tblock = createBlock( 'core/legacy-widget', {\n\t\t\tid,\n\t\t} );\n\t}\n\n\treturn addWidgetIdToBlock( block, id );\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useEffect","ButtonBlockAppender","store","blockEditorStore","useSelect","BlockAppender","props","ref","isBlocksListEmpty","select","getBlockCount","current","ownerDocument","activeElement","body","focus","createElement"],"sources":["@wordpress/customize-widgets/src/components/block-appender/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useEffect } from '@wordpress/element';\nimport {\n\tButtonBlockAppender,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nexport default function BlockAppender( props ) {\n\tconst ref = useRef();\n\tconst isBlocksListEmpty = useSelect(\n\t\t( select ) => select( blockEditorStore ).getBlockCount() === 0\n\t);\n\n\t// Move the focus to the block appender to prevent focus from\n\t// being lost when emptying the widget area.\n\tuseEffect( () => {\n\t\tif ( isBlocksListEmpty && ref.current ) {\n\t\t\tconst { ownerDocument } = ref.current;\n\n\t\t\tif (\n\t\t\t\t! ownerDocument.activeElement ||\n\t\t\t\townerDocument.activeElement === ownerDocument.body\n\t\t\t) {\n\t\t\t\tref.current.focus();\n\t\t\t}\n\t\t}\n\t}, [ isBlocksListEmpty ] );\n\n\treturn <ButtonBlockAppender { ...props } ref={ ref } />;\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AACtD,SACCC,mBAAmB,EACnBC,KAAK,IAAIC,gBAAgB,QACnB,yBAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAiB;AAE3C,eAAe,SAASC,aAAaA,CAAEC,KAAK,EAAG;EAC9C,MAAMC,GAAG,GAAGR,MAAM,CAAC,CAAC;EACpB,MAAMS,iBAAiB,GAAGJ,SAAS,CAChCK,MAAM,IAAMA,MAAM,CAAEN,gBAAiB,CAAC,CAACO,aAAa,CAAC,CAAC,KAAK,CAC9D,CAAC;;EAED;EACA;EACAV,SAAS,CAAE,MAAM;IAChB,IAAKQ,iBAAiB,IAAID,GAAG,CAACI,OAAO,EAAG;MACvC,MAAM;QAAEC;MAAc,CAAC,GAAGL,GAAG,CAACI,OAAO;MAErC,IACC,CAAEC,aAAa,CAACC,aAAa,IAC7BD,aAAa,CAACC,aAAa,KAAKD,aAAa,CAACE,IAAI,EACjD;QACDP,GAAG,CAACI,OAAO,CAACI,KAAK,CAAC,CAAC;MACpB;IACD;EACD,CAAC,EAAE,CAAEP,iBAAiB,CAAG,CAAC;EAE1B,OAAOQ,aAAA,CAACf,mBAAmB;IAAA,GAAMK,KAAK;IAAGC,GAAG,EAAGA;EAAK,CAAE,CAAC;AACxD"}
1
+ {"version":3,"names":["useRef","useEffect","ButtonBlockAppender","store","blockEditorStore","useSelect","BlockAppender","props","ref","isBlocksListEmpty","select","getBlockCount","current","ownerDocument","activeElement","body","focus","createElement"],"sources":["@wordpress/customize-widgets/src/components/block-appender/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useEffect } from '@wordpress/element';\nimport {\n\tButtonBlockAppender,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nexport default function BlockAppender( props ) {\n\tconst ref = useRef();\n\tconst isBlocksListEmpty = useSelect(\n\t\t( select ) => select( blockEditorStore ).getBlockCount() === 0\n\t);\n\n\t// Move the focus to the block appender to prevent focus from\n\t// being lost when emptying the widget area.\n\tuseEffect( () => {\n\t\tif ( isBlocksListEmpty && ref.current ) {\n\t\t\tconst { ownerDocument } = ref.current;\n\n\t\t\tif (\n\t\t\t\t! ownerDocument.activeElement ||\n\t\t\t\townerDocument.activeElement === ownerDocument.body\n\t\t\t) {\n\t\t\t\tref.current.focus();\n\t\t\t}\n\t\t}\n\t}, [ isBlocksListEmpty ] );\n\n\treturn <ButtonBlockAppender { ...props } ref={ ref } />;\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AACtD,SACCC,mBAAmB,EACnBC,KAAK,IAAIC,gBAAgB,QACnB,yBAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAiB;AAE3C,eAAe,SAASC,aAAaA,CAAEC,KAAK,EAAG;EAC9C,MAAMC,GAAG,GAAGR,MAAM,CAAC,CAAC;EACpB,MAAMS,iBAAiB,GAAGJ,SAAS,CAChCK,MAAM,IAAMA,MAAM,CAAEN,gBAAiB,CAAC,CAACO,aAAa,CAAC,CAAC,KAAK,CAC9D,CAAC;;EAED;EACA;EACAV,SAAS,CAAE,MAAM;IAChB,IAAKQ,iBAAiB,IAAID,GAAG,CAACI,OAAO,EAAG;MACvC,MAAM;QAAEC;MAAc,CAAC,GAAGL,GAAG,CAACI,OAAO;MAErC,IACC,CAAEC,aAAa,CAACC,aAAa,IAC7BD,aAAa,CAACC,aAAa,KAAKD,aAAa,CAACE,IAAI,EACjD;QACDP,GAAG,CAACI,OAAO,CAACI,KAAK,CAAC,CAAC;MACpB;IACD;EACD,CAAC,EAAE,CAAEP,iBAAiB,CAAG,CAAC;EAE1B,OAAOQ,aAAA,CAACf,mBAAmB;IAAA,GAAMK,KAAK;IAAGC,GAAG,EAAGA;EAAK,CAAE,CAAC;AACxD","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","__","MenuItem","useSelect","store","blockEditorStore","BlockInspectorButton","inspector","closeMenu","props","selectedBlockClientId","select","getSelectedBlockClientId","selectedBlock","document","getElementById","createElement","onClick","open","returnFocusWhenClose"],"sources":["@wordpress/customize-widgets/src/components/block-inspector-button/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nfunction BlockInspectorButton( { inspector, closeMenu, ...props } ) {\n\tconst selectedBlockClientId = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSelectedBlockClientId(),\n\t\t[]\n\t);\n\n\tconst selectedBlock = useMemo(\n\t\t() => document.getElementById( `block-${ selectedBlockClientId }` ),\n\t\t[ selectedBlockClientId ]\n\t);\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () => {\n\t\t\t\t// Open the inspector.\n\t\t\t\tinspector.open( {\n\t\t\t\t\treturnFocusWhenClose: selectedBlock,\n\t\t\t\t} );\n\t\t\t\t// Then close the dropdown menu.\n\t\t\t\tcloseMenu();\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ __( 'Show more settings' ) }\n\t\t</MenuItem>\n\t);\n}\n\nexport default BlockInspectorButton;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AAEnE,SAASC,oBAAoBA,CAAE;EAAEC,SAAS;EAAEC,SAAS;EAAE,GAAGC;AAAM,CAAC,EAAG;EACnE,MAAMC,qBAAqB,GAAGP,SAAS,CACpCQ,MAAM,IAAMA,MAAM,CAAEN,gBAAiB,CAAC,CAACO,wBAAwB,CAAC,CAAC,EACnE,EACD,CAAC;EAED,MAAMC,aAAa,GAAGb,OAAO,CAC5B,MAAMc,QAAQ,CAACC,cAAc,CAAG,SAASL,qBAAuB,EAAE,CAAC,EACnE,CAAEA,qBAAqB,CACxB,CAAC;EAED,OACCM,aAAA,CAACd,QAAQ;IACRe,OAAO,EAAGA,CAAA,KAAM;MACf;MACAV,SAAS,CAACW,IAAI,CAAE;QACfC,oBAAoB,EAAEN;MACvB,CAAE,CAAC;MACH;MACAL,SAAS,CAAC,CAAC;IACZ,CAAG;IAAA,GACEC;EAAK,GAERR,EAAE,CAAE,oBAAqB,CAClB,CAAC;AAEb;AAEA,eAAeK,oBAAoB"}
1
+ {"version":3,"names":["useMemo","__","MenuItem","useSelect","store","blockEditorStore","BlockInspectorButton","inspector","closeMenu","props","selectedBlockClientId","select","getSelectedBlockClientId","selectedBlock","document","getElementById","createElement","onClick","open","returnFocusWhenClose"],"sources":["@wordpress/customize-widgets/src/components/block-inspector-button/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nfunction BlockInspectorButton( { inspector, closeMenu, ...props } ) {\n\tconst selectedBlockClientId = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSelectedBlockClientId(),\n\t\t[]\n\t);\n\n\tconst selectedBlock = useMemo(\n\t\t() => document.getElementById( `block-${ selectedBlockClientId }` ),\n\t\t[ selectedBlockClientId ]\n\t);\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () => {\n\t\t\t\t// Open the inspector.\n\t\t\t\tinspector.open( {\n\t\t\t\t\treturnFocusWhenClose: selectedBlock,\n\t\t\t\t} );\n\t\t\t\t// Then close the dropdown menu.\n\t\t\t\tcloseMenu();\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ __( 'Show more settings' ) }\n\t\t</MenuItem>\n\t);\n}\n\nexport default BlockInspectorButton;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AAEnE,SAASC,oBAAoBA,CAAE;EAAEC,SAAS;EAAEC,SAAS;EAAE,GAAGC;AAAM,CAAC,EAAG;EACnE,MAAMC,qBAAqB,GAAGP,SAAS,CACpCQ,MAAM,IAAMA,MAAM,CAAEN,gBAAiB,CAAC,CAACO,wBAAwB,CAAC,CAAC,EACnE,EACD,CAAC;EAED,MAAMC,aAAa,GAAGb,OAAO,CAC5B,MAAMc,QAAQ,CAACC,cAAc,CAAG,SAASL,qBAAuB,EAAE,CAAC,EACnE,CAAEA,qBAAqB,CACxB,CAAC;EAED,OACCM,aAAA,CAACd,QAAQ;IACRe,OAAO,EAAGA,CAAA,KAAM;MACf;MACAV,SAAS,CAACW,IAAI,CAAE;QACfC,oBAAoB,EAAEN;MACvB,CAAE,CAAC;MACH;MACAL,SAAS,CAAC,CAAC;IACZ,CAAG;IAAA,GACEC;EAAK,GAERR,EAAE,CAAE,oBAAqB,CAClB,CAAC;AAEb;AAEA,eAAeK,oBAAoB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useEffect","useRef","createPortal","SlotFillProvider","Popover","ErrorBoundary","SidebarBlockEditor","FocusControl","SidebarControls","useClearSelectedBlock","CustomizeWidgets","api","sidebarControls","blockEditorSettings","activeSidebarControl","setActiveSidebarControl","parentContainer","document","getElementById","popoverRef","unsubscribers","map","sidebarControl","subscribe","expanded","forEach","unsubscriber","activeSidebar","createElement","key","id","sidebar","sidebarAdapter","inserter","inspector","container","popover","className","ref","Slot"],"sources":["@wordpress/customize-widgets/src/components/customize-widgets/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useEffect, useRef, createPortal } from '@wordpress/element';\nimport { SlotFillProvider, Popover } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ErrorBoundary from '../error-boundary';\nimport SidebarBlockEditor from '../sidebar-block-editor';\nimport FocusControl from '../focus-control';\nimport SidebarControls from '../sidebar-controls';\nimport useClearSelectedBlock from './use-clear-selected-block';\n\nexport default function CustomizeWidgets( {\n\tapi,\n\tsidebarControls,\n\tblockEditorSettings,\n} ) {\n\tconst [ activeSidebarControl, setActiveSidebarControl ] = useState( null );\n\tconst parentContainer = document.getElementById(\n\t\t'customize-theme-controls'\n\t);\n\tconst popoverRef = useRef();\n\n\tuseClearSelectedBlock( activeSidebarControl, popoverRef );\n\n\tuseEffect( () => {\n\t\tconst unsubscribers = sidebarControls.map( ( sidebarControl ) =>\n\t\t\tsidebarControl.subscribe( ( expanded ) => {\n\t\t\t\tif ( expanded ) {\n\t\t\t\t\tsetActiveSidebarControl( sidebarControl );\n\t\t\t\t}\n\t\t\t} )\n\t\t);\n\n\t\treturn () => {\n\t\t\tunsubscribers.forEach( ( unsubscriber ) => unsubscriber() );\n\t\t};\n\t}, [ sidebarControls ] );\n\n\tconst activeSidebar =\n\t\tactiveSidebarControl &&\n\t\tcreatePortal(\n\t\t\t<ErrorBoundary>\n\t\t\t\t<SidebarBlockEditor\n\t\t\t\t\tkey={ activeSidebarControl.id }\n\t\t\t\t\tblockEditorSettings={ blockEditorSettings }\n\t\t\t\t\tsidebar={ activeSidebarControl.sidebarAdapter }\n\t\t\t\t\tinserter={ activeSidebarControl.inserter }\n\t\t\t\t\tinspector={ activeSidebarControl.inspector }\n\t\t\t\t/>\n\t\t\t</ErrorBoundary>,\n\t\t\tactiveSidebarControl.container[ 0 ]\n\t\t);\n\n\t// We have to portal this to the parent of both the editor and the inspector,\n\t// so that the popovers will appear above both of them.\n\tconst popover =\n\t\tparentContainer &&\n\t\tcreatePortal(\n\t\t\t<div className=\"customize-widgets-popover\" ref={ popoverRef }>\n\t\t\t\t<Popover.Slot />\n\t\t\t</div>,\n\t\t\tparentContainer\n\t\t);\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<SidebarControls\n\t\t\t\tsidebarControls={ sidebarControls }\n\t\t\t\tactiveSidebarControl={ activeSidebarControl }\n\t\t\t>\n\t\t\t\t<FocusControl api={ api } sidebarControls={ sidebarControls }>\n\t\t\t\t\t{ activeSidebar }\n\t\t\t\t\t{ popover }\n\t\t\t\t</FocusControl>\n\t\t\t</SidebarControls>\n\t\t</SlotFillProvider>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,EAAEC,SAAS,EAAEC,MAAM,EAAEC,YAAY,QAAQ,oBAAoB;AAC9E,SAASC,gBAAgB,EAAEC,OAAO,QAAQ,uBAAuB;;AAEjE;AACA;AACA;AACA,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,kBAAkB,MAAM,yBAAyB;AACxD,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,qBAAqB,MAAM,4BAA4B;AAE9D,eAAe,SAASC,gBAAgBA,CAAE;EACzCC,GAAG;EACHC,eAAe;EACfC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,oBAAoB,EAAEC,uBAAuB,CAAE,GAAGhB,QAAQ,CAAE,IAAK,CAAC;EAC1E,MAAMiB,eAAe,GAAGC,QAAQ,CAACC,cAAc,CAC9C,0BACD,CAAC;EACD,MAAMC,UAAU,GAAGlB,MAAM,CAAC,CAAC;EAE3BQ,qBAAqB,CAAEK,oBAAoB,EAAEK,UAAW,CAAC;EAEzDnB,SAAS,CAAE,MAAM;IAChB,MAAMoB,aAAa,GAAGR,eAAe,CAACS,GAAG,CAAIC,cAAc,IAC1DA,cAAc,CAACC,SAAS,CAAIC,QAAQ,IAAM;MACzC,IAAKA,QAAQ,EAAG;QACfT,uBAAuB,CAAEO,cAAe,CAAC;MAC1C;IACD,CAAE,CACH,CAAC;IAED,OAAO,MAAM;MACZF,aAAa,CAACK,OAAO,CAAIC,YAAY,IAAMA,YAAY,CAAC,CAAE,CAAC;IAC5D,CAAC;EACF,CAAC,EAAE,CAAEd,eAAe,CAAG,CAAC;EAExB,MAAMe,aAAa,GAClBb,oBAAoB,IACpBZ,YAAY,CACX0B,aAAA,CAACvB,aAAa,QACbuB,aAAA,CAACtB,kBAAkB;IAClBuB,GAAG,EAAGf,oBAAoB,CAACgB,EAAI;IAC/BjB,mBAAmB,EAAGA,mBAAqB;IAC3CkB,OAAO,EAAGjB,oBAAoB,CAACkB,cAAgB;IAC/CC,QAAQ,EAAGnB,oBAAoB,CAACmB,QAAU;IAC1CC,SAAS,EAAGpB,oBAAoB,CAACoB;EAAW,CAC5C,CACa,CAAC,EAChBpB,oBAAoB,CAACqB,SAAS,CAAE,CAAC,CAClC,CAAC;;EAEF;EACA;EACA,MAAMC,OAAO,GACZpB,eAAe,IACfd,YAAY,CACX0B,aAAA;IAAKS,SAAS,EAAC,2BAA2B;IAACC,GAAG,EAAGnB;EAAY,GAC5DS,aAAA,CAACxB,OAAO,CAACmC,IAAI,MAAE,CACX,CAAC,EACNvB,eACD,CAAC;EAEF,OACCY,aAAA,CAACzB,gBAAgB,QAChByB,aAAA,CAACpB,eAAe;IACfI,eAAe,EAAGA,eAAiB;IACnCE,oBAAoB,EAAGA;EAAsB,GAE7Cc,aAAA,CAACrB,YAAY;IAACI,GAAG,EAAGA,GAAK;IAACC,eAAe,EAAGA;EAAiB,GAC1De,aAAa,EACbS,OACW,CACE,CACA,CAAC;AAErB"}
1
+ {"version":3,"names":["useState","useEffect","useRef","createPortal","SlotFillProvider","Popover","ErrorBoundary","SidebarBlockEditor","FocusControl","SidebarControls","useClearSelectedBlock","CustomizeWidgets","api","sidebarControls","blockEditorSettings","activeSidebarControl","setActiveSidebarControl","parentContainer","document","getElementById","popoverRef","unsubscribers","map","sidebarControl","subscribe","expanded","forEach","unsubscriber","activeSidebar","createElement","key","id","sidebar","sidebarAdapter","inserter","inspector","container","popover","className","ref","Slot"],"sources":["@wordpress/customize-widgets/src/components/customize-widgets/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useEffect, useRef, createPortal } from '@wordpress/element';\nimport { SlotFillProvider, Popover } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ErrorBoundary from '../error-boundary';\nimport SidebarBlockEditor from '../sidebar-block-editor';\nimport FocusControl from '../focus-control';\nimport SidebarControls from '../sidebar-controls';\nimport useClearSelectedBlock from './use-clear-selected-block';\n\nexport default function CustomizeWidgets( {\n\tapi,\n\tsidebarControls,\n\tblockEditorSettings,\n} ) {\n\tconst [ activeSidebarControl, setActiveSidebarControl ] = useState( null );\n\tconst parentContainer = document.getElementById(\n\t\t'customize-theme-controls'\n\t);\n\tconst popoverRef = useRef();\n\n\tuseClearSelectedBlock( activeSidebarControl, popoverRef );\n\n\tuseEffect( () => {\n\t\tconst unsubscribers = sidebarControls.map( ( sidebarControl ) =>\n\t\t\tsidebarControl.subscribe( ( expanded ) => {\n\t\t\t\tif ( expanded ) {\n\t\t\t\t\tsetActiveSidebarControl( sidebarControl );\n\t\t\t\t}\n\t\t\t} )\n\t\t);\n\n\t\treturn () => {\n\t\t\tunsubscribers.forEach( ( unsubscriber ) => unsubscriber() );\n\t\t};\n\t}, [ sidebarControls ] );\n\n\tconst activeSidebar =\n\t\tactiveSidebarControl &&\n\t\tcreatePortal(\n\t\t\t<ErrorBoundary>\n\t\t\t\t<SidebarBlockEditor\n\t\t\t\t\tkey={ activeSidebarControl.id }\n\t\t\t\t\tblockEditorSettings={ blockEditorSettings }\n\t\t\t\t\tsidebar={ activeSidebarControl.sidebarAdapter }\n\t\t\t\t\tinserter={ activeSidebarControl.inserter }\n\t\t\t\t\tinspector={ activeSidebarControl.inspector }\n\t\t\t\t/>\n\t\t\t</ErrorBoundary>,\n\t\t\tactiveSidebarControl.container[ 0 ]\n\t\t);\n\n\t// We have to portal this to the parent of both the editor and the inspector,\n\t// so that the popovers will appear above both of them.\n\tconst popover =\n\t\tparentContainer &&\n\t\tcreatePortal(\n\t\t\t<div className=\"customize-widgets-popover\" ref={ popoverRef }>\n\t\t\t\t<Popover.Slot />\n\t\t\t</div>,\n\t\t\tparentContainer\n\t\t);\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<SidebarControls\n\t\t\t\tsidebarControls={ sidebarControls }\n\t\t\t\tactiveSidebarControl={ activeSidebarControl }\n\t\t\t>\n\t\t\t\t<FocusControl api={ api } sidebarControls={ sidebarControls }>\n\t\t\t\t\t{ activeSidebar }\n\t\t\t\t\t{ popover }\n\t\t\t\t</FocusControl>\n\t\t\t</SidebarControls>\n\t\t</SlotFillProvider>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,EAAEC,SAAS,EAAEC,MAAM,EAAEC,YAAY,QAAQ,oBAAoB;AAC9E,SAASC,gBAAgB,EAAEC,OAAO,QAAQ,uBAAuB;;AAEjE;AACA;AACA;AACA,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,kBAAkB,MAAM,yBAAyB;AACxD,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,qBAAqB,MAAM,4BAA4B;AAE9D,eAAe,SAASC,gBAAgBA,CAAE;EACzCC,GAAG;EACHC,eAAe;EACfC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,oBAAoB,EAAEC,uBAAuB,CAAE,GAAGhB,QAAQ,CAAE,IAAK,CAAC;EAC1E,MAAMiB,eAAe,GAAGC,QAAQ,CAACC,cAAc,CAC9C,0BACD,CAAC;EACD,MAAMC,UAAU,GAAGlB,MAAM,CAAC,CAAC;EAE3BQ,qBAAqB,CAAEK,oBAAoB,EAAEK,UAAW,CAAC;EAEzDnB,SAAS,CAAE,MAAM;IAChB,MAAMoB,aAAa,GAAGR,eAAe,CAACS,GAAG,CAAIC,cAAc,IAC1DA,cAAc,CAACC,SAAS,CAAIC,QAAQ,IAAM;MACzC,IAAKA,QAAQ,EAAG;QACfT,uBAAuB,CAAEO,cAAe,CAAC;MAC1C;IACD,CAAE,CACH,CAAC;IAED,OAAO,MAAM;MACZF,aAAa,CAACK,OAAO,CAAIC,YAAY,IAAMA,YAAY,CAAC,CAAE,CAAC;IAC5D,CAAC;EACF,CAAC,EAAE,CAAEd,eAAe,CAAG,CAAC;EAExB,MAAMe,aAAa,GAClBb,oBAAoB,IACpBZ,YAAY,CACX0B,aAAA,CAACvB,aAAa,QACbuB,aAAA,CAACtB,kBAAkB;IAClBuB,GAAG,EAAGf,oBAAoB,CAACgB,EAAI;IAC/BjB,mBAAmB,EAAGA,mBAAqB;IAC3CkB,OAAO,EAAGjB,oBAAoB,CAACkB,cAAgB;IAC/CC,QAAQ,EAAGnB,oBAAoB,CAACmB,QAAU;IAC1CC,SAAS,EAAGpB,oBAAoB,CAACoB;EAAW,CAC5C,CACa,CAAC,EAChBpB,oBAAoB,CAACqB,SAAS,CAAE,CAAC,CAClC,CAAC;;EAEF;EACA;EACA,MAAMC,OAAO,GACZpB,eAAe,IACfd,YAAY,CACX0B,aAAA;IAAKS,SAAS,EAAC,2BAA2B;IAACC,GAAG,EAAGnB;EAAY,GAC5DS,aAAA,CAACxB,OAAO,CAACmC,IAAI,MAAE,CACX,CAAC,EACNvB,eACD,CAAC;EAEF,OACCY,aAAA,CAACzB,gBAAgB,QAChByB,aAAA,CAACpB,eAAe;IACfI,eAAe,EAAGA,eAAiB;IACnCE,oBAAoB,EAAGA;EAAsB,GAE7Cc,aAAA,CAACrB,YAAY;IAACI,GAAG,EAAGA,GAAK;IAACC,eAAe,EAAGA;EAAiB,GAC1De,aAAa,EACbS,OACW,CACE,CACA,CAAC;AAErB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useDispatch","useSelect","store","blockEditorStore","useClearSelectedBlock","sidebarControl","popoverRef","hasSelectedBlock","hasMultiSelection","clearSelectedBlock","current","inspector","container","ownerDocument","ownerWindow","defaultView","handleClearSelectedBlock","element","contains","closest","expanded","handleMouseDown","event","target","handleBlur","activeElement","addEventListener","removeEventListener"],"sources":["@wordpress/customize-widgets/src/components/customize-widgets/use-clear-selected-block.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * We can't just use <BlockSelectionClearer> because the customizer has\n * many root nodes rather than just one in the post editor.\n * We need to listen to the focus events in all those roots, and also in\n * the preview iframe.\n * This hook will clear the selected block when focusing outside the editor,\n * with a few exceptions:\n * 1. Focusing on popovers.\n * 2. Focusing on the inspector.\n * 3. Focusing on any modals/dialogs.\n * These cases are normally triggered by user interactions from the editor,\n * not by explicitly focusing outside the editor, hence no need for clearing.\n *\n * @param {Object} sidebarControl The sidebar control instance.\n * @param {Object} popoverRef The ref object of the popover node container.\n */\nexport default function useClearSelectedBlock( sidebarControl, popoverRef ) {\n\tconst { hasSelectedBlock, hasMultiSelection } =\n\t\tuseSelect( blockEditorStore );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( popoverRef.current && sidebarControl ) {\n\t\t\tconst inspector = sidebarControl.inspector;\n\t\t\tconst container = sidebarControl.container[ 0 ];\n\t\t\tconst ownerDocument = container.ownerDocument;\n\t\t\tconst ownerWindow = ownerDocument.defaultView;\n\n\t\t\tfunction handleClearSelectedBlock( element ) {\n\t\t\t\tif (\n\t\t\t\t\t// 1. Make sure there are blocks being selected.\n\t\t\t\t\t( hasSelectedBlock() || hasMultiSelection() ) &&\n\t\t\t\t\t// 2. The element should exist in the DOM (not deleted).\n\t\t\t\t\telement &&\n\t\t\t\t\townerDocument.contains( element ) &&\n\t\t\t\t\t// 3. It should also not exist in the container, the popover, nor the dialog.\n\t\t\t\t\t! container.contains( element ) &&\n\t\t\t\t\t! popoverRef.current.contains( element ) &&\n\t\t\t\t\t! element.closest( '[role=\"dialog\"]' ) &&\n\t\t\t\t\t// 4. The inspector should not be opened.\n\t\t\t\t\t! inspector.expanded()\n\t\t\t\t) {\n\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Handle mouse down in the same document.\n\t\t\tfunction handleMouseDown( event ) {\n\t\t\t\thandleClearSelectedBlock( event.target );\n\t\t\t}\n\t\t\t// Handle focusing outside the current document, like to iframes.\n\t\t\tfunction handleBlur() {\n\t\t\t\thandleClearSelectedBlock( ownerDocument.activeElement );\n\t\t\t}\n\n\t\t\townerDocument.addEventListener( 'mousedown', handleMouseDown );\n\t\t\townerWindow.addEventListener( 'blur', handleBlur );\n\n\t\t\treturn () => {\n\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t'mousedown',\n\t\t\t\t\thandleMouseDown\n\t\t\t\t);\n\t\t\t\townerWindow.removeEventListener( 'blur', handleBlur );\n\t\t\t};\n\t\t}\n\t}, [\n\t\tpopoverRef,\n\t\tsidebarControl,\n\t\thasSelectedBlock,\n\t\thasMultiSelection,\n\t\tclearSelectedBlock,\n\t] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,qBAAqBA,CAAEC,cAAc,EAAEC,UAAU,EAAG;EAC3E,MAAM;IAAEC,gBAAgB;IAAEC;EAAkB,CAAC,GAC5CP,SAAS,CAAEE,gBAAiB,CAAC;EAC9B,MAAM;IAAEM;EAAmB,CAAC,GAAGT,WAAW,CAAEG,gBAAiB,CAAC;EAE9DJ,SAAS,CAAE,MAAM;IAChB,IAAKO,UAAU,CAACI,OAAO,IAAIL,cAAc,EAAG;MAC3C,MAAMM,SAAS,GAAGN,cAAc,CAACM,SAAS;MAC1C,MAAMC,SAAS,GAAGP,cAAc,CAACO,SAAS,CAAE,CAAC,CAAE;MAC/C,MAAMC,aAAa,GAAGD,SAAS,CAACC,aAAa;MAC7C,MAAMC,WAAW,GAAGD,aAAa,CAACE,WAAW;MAE7C,SAASC,wBAAwBA,CAAEC,OAAO,EAAG;QAC5C;QACC;QACA,CAAEV,gBAAgB,CAAC,CAAC,IAAIC,iBAAiB,CAAC,CAAC;QAC3C;QACAS,OAAO,IACPJ,aAAa,CAACK,QAAQ,CAAED,OAAQ,CAAC;QACjC;QACA,CAAEL,SAAS,CAACM,QAAQ,CAAED,OAAQ,CAAC,IAC/B,CAAEX,UAAU,CAACI,OAAO,CAACQ,QAAQ,CAAED,OAAQ,CAAC,IACxC,CAAEA,OAAO,CAACE,OAAO,CAAE,iBAAkB,CAAC;QACtC;QACA,CAAER,SAAS,CAACS,QAAQ,CAAC,CAAC,EACrB;UACDX,kBAAkB,CAAC,CAAC;QACrB;MACD;;MAEA;MACA,SAASY,eAAeA,CAAEC,KAAK,EAAG;QACjCN,wBAAwB,CAAEM,KAAK,CAACC,MAAO,CAAC;MACzC;MACA;MACA,SAASC,UAAUA,CAAA,EAAG;QACrBR,wBAAwB,CAAEH,aAAa,CAACY,aAAc,CAAC;MACxD;MAEAZ,aAAa,CAACa,gBAAgB,CAAE,WAAW,EAAEL,eAAgB,CAAC;MAC9DP,WAAW,CAACY,gBAAgB,CAAE,MAAM,EAAEF,UAAW,CAAC;MAElD,OAAO,MAAM;QACZX,aAAa,CAACc,mBAAmB,CAChC,WAAW,EACXN,eACD,CAAC;QACDP,WAAW,CAACa,mBAAmB,CAAE,MAAM,EAAEH,UAAW,CAAC;MACtD,CAAC;IACF;EACD,CAAC,EAAE,CACFlB,UAAU,EACVD,cAAc,EACdE,gBAAgB,EAChBC,iBAAiB,EACjBC,kBAAkB,CACjB,CAAC;AACJ"}
1
+ {"version":3,"names":["useEffect","useDispatch","useSelect","store","blockEditorStore","useClearSelectedBlock","sidebarControl","popoverRef","hasSelectedBlock","hasMultiSelection","clearSelectedBlock","current","inspector","container","ownerDocument","ownerWindow","defaultView","handleClearSelectedBlock","element","contains","closest","expanded","handleMouseDown","event","target","handleBlur","activeElement","addEventListener","removeEventListener"],"sources":["@wordpress/customize-widgets/src/components/customize-widgets/use-clear-selected-block.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * We can't just use <BlockSelectionClearer> because the customizer has\n * many root nodes rather than just one in the post editor.\n * We need to listen to the focus events in all those roots, and also in\n * the preview iframe.\n * This hook will clear the selected block when focusing outside the editor,\n * with a few exceptions:\n * 1. Focusing on popovers.\n * 2. Focusing on the inspector.\n * 3. Focusing on any modals/dialogs.\n * These cases are normally triggered by user interactions from the editor,\n * not by explicitly focusing outside the editor, hence no need for clearing.\n *\n * @param {Object} sidebarControl The sidebar control instance.\n * @param {Object} popoverRef The ref object of the popover node container.\n */\nexport default function useClearSelectedBlock( sidebarControl, popoverRef ) {\n\tconst { hasSelectedBlock, hasMultiSelection } =\n\t\tuseSelect( blockEditorStore );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( popoverRef.current && sidebarControl ) {\n\t\t\tconst inspector = sidebarControl.inspector;\n\t\t\tconst container = sidebarControl.container[ 0 ];\n\t\t\tconst ownerDocument = container.ownerDocument;\n\t\t\tconst ownerWindow = ownerDocument.defaultView;\n\n\t\t\tfunction handleClearSelectedBlock( element ) {\n\t\t\t\tif (\n\t\t\t\t\t// 1. Make sure there are blocks being selected.\n\t\t\t\t\t( hasSelectedBlock() || hasMultiSelection() ) &&\n\t\t\t\t\t// 2. The element should exist in the DOM (not deleted).\n\t\t\t\t\telement &&\n\t\t\t\t\townerDocument.contains( element ) &&\n\t\t\t\t\t// 3. It should also not exist in the container, the popover, nor the dialog.\n\t\t\t\t\t! container.contains( element ) &&\n\t\t\t\t\t! popoverRef.current.contains( element ) &&\n\t\t\t\t\t! element.closest( '[role=\"dialog\"]' ) &&\n\t\t\t\t\t// 4. The inspector should not be opened.\n\t\t\t\t\t! inspector.expanded()\n\t\t\t\t) {\n\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Handle mouse down in the same document.\n\t\t\tfunction handleMouseDown( event ) {\n\t\t\t\thandleClearSelectedBlock( event.target );\n\t\t\t}\n\t\t\t// Handle focusing outside the current document, like to iframes.\n\t\t\tfunction handleBlur() {\n\t\t\t\thandleClearSelectedBlock( ownerDocument.activeElement );\n\t\t\t}\n\n\t\t\townerDocument.addEventListener( 'mousedown', handleMouseDown );\n\t\t\townerWindow.addEventListener( 'blur', handleBlur );\n\n\t\t\treturn () => {\n\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t'mousedown',\n\t\t\t\t\thandleMouseDown\n\t\t\t\t);\n\t\t\t\townerWindow.removeEventListener( 'blur', handleBlur );\n\t\t\t};\n\t\t}\n\t}, [\n\t\tpopoverRef,\n\t\tsidebarControl,\n\t\thasSelectedBlock,\n\t\thasMultiSelection,\n\t\tclearSelectedBlock,\n\t] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,qBAAqBA,CAAEC,cAAc,EAAEC,UAAU,EAAG;EAC3E,MAAM;IAAEC,gBAAgB;IAAEC;EAAkB,CAAC,GAC5CP,SAAS,CAAEE,gBAAiB,CAAC;EAC9B,MAAM;IAAEM;EAAmB,CAAC,GAAGT,WAAW,CAAEG,gBAAiB,CAAC;EAE9DJ,SAAS,CAAE,MAAM;IAChB,IAAKO,UAAU,CAACI,OAAO,IAAIL,cAAc,EAAG;MAC3C,MAAMM,SAAS,GAAGN,cAAc,CAACM,SAAS;MAC1C,MAAMC,SAAS,GAAGP,cAAc,CAACO,SAAS,CAAE,CAAC,CAAE;MAC/C,MAAMC,aAAa,GAAGD,SAAS,CAACC,aAAa;MAC7C,MAAMC,WAAW,GAAGD,aAAa,CAACE,WAAW;MAE7C,SAASC,wBAAwBA,CAAEC,OAAO,EAAG;QAC5C;QACC;QACA,CAAEV,gBAAgB,CAAC,CAAC,IAAIC,iBAAiB,CAAC,CAAC;QAC3C;QACAS,OAAO,IACPJ,aAAa,CAACK,QAAQ,CAAED,OAAQ,CAAC;QACjC;QACA,CAAEL,SAAS,CAACM,QAAQ,CAAED,OAAQ,CAAC,IAC/B,CAAEX,UAAU,CAACI,OAAO,CAACQ,QAAQ,CAAED,OAAQ,CAAC,IACxC,CAAEA,OAAO,CAACE,OAAO,CAAE,iBAAkB,CAAC;QACtC;QACA,CAAER,SAAS,CAACS,QAAQ,CAAC,CAAC,EACrB;UACDX,kBAAkB,CAAC,CAAC;QACrB;MACD;;MAEA;MACA,SAASY,eAAeA,CAAEC,KAAK,EAAG;QACjCN,wBAAwB,CAAEM,KAAK,CAACC,MAAO,CAAC;MACzC;MACA;MACA,SAASC,UAAUA,CAAA,EAAG;QACrBR,wBAAwB,CAAEH,aAAa,CAACY,aAAc,CAAC;MACxD;MAEAZ,aAAa,CAACa,gBAAgB,CAAE,WAAW,EAAEL,eAAgB,CAAC;MAC9DP,WAAW,CAACY,gBAAgB,CAAE,MAAM,EAAEF,UAAW,CAAC;MAElD,OAAO,MAAM;QACZX,aAAa,CAACc,mBAAmB,CAChC,WAAW,EACXN,eACD,CAAC;QACDP,WAAW,CAACa,mBAAmB,CAAE,MAAM,EAAEH,UAAW,CAAC;MACtD,CAAC;IACF;EACD,CAAC,EAAE,CACFlB,UAAU,EACVD,cAAc,EACdE,gBAAgB,EAChBC,iBAAiB,EACjBC,kBAAkB,CACjB,CAAC;AACJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Component","__","Button","Warning","useCopyToClipboard","doAction","CopyButton","text","children","ref","createElement","variant","ErrorBoundary","constructor","arguments","state","error","componentDidCatch","setState","render","props","className","actions","key","stack"],"sources":["@wordpress/customize-widgets/src/components/error-boundary/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { Warning } from '@wordpress/block-editor';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { doAction } from '@wordpress/hooks';\n\nfunction CopyButton( { text, children } ) {\n\tconst ref = useCopyToClipboard( text );\n\treturn (\n\t\t<Button variant=\"secondary\" ref={ ref }>\n\t\t\t{ children }\n\t\t</Button>\n\t);\n}\n\nexport default class ErrorBoundary extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.state = {\n\t\t\terror: null,\n\t\t};\n\t}\n\n\tcomponentDidCatch( error ) {\n\t\tthis.setState( { error } );\n\n\t\tdoAction( 'editor.ErrorBoundary.errorLogged', error );\n\t}\n\n\trender() {\n\t\tconst { error } = this.state;\n\t\tif ( ! error ) {\n\t\t\treturn this.props.children;\n\t\t}\n\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tclassName=\"customize-widgets-error-boundary\"\n\t\t\t\tactions={ [\n\t\t\t\t\t<CopyButton key=\"copy-error\" text={ error.stack }>\n\t\t\t\t\t\t{ __( 'Copy Error' ) }\n\t\t\t\t\t</CopyButton>,\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ __( 'The editor has encountered an unexpected error.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,kBAAkB,QAAQ,oBAAoB;AACvD,SAASC,QAAQ,QAAQ,kBAAkB;AAE3C,SAASC,UAAUA,CAAE;EAAEC,IAAI;EAAEC;AAAS,CAAC,EAAG;EACzC,MAAMC,GAAG,GAAGL,kBAAkB,CAAEG,IAAK,CAAC;EACtC,OACCG,aAAA,CAACR,MAAM;IAACS,OAAO,EAAC,WAAW;IAACF,GAAG,EAAGA;EAAK,GACpCD,QACK,CAAC;AAEX;AAEA,eAAe,MAAMI,aAAa,SAASZ,SAAS,CAAC;EACpDa,WAAWA,CAAA,EAAG;IACb,KAAK,CAAE,GAAGC,SAAU,CAAC;IACrB,IAAI,CAACC,KAAK,GAAG;MACZC,KAAK,EAAE;IACR,CAAC;EACF;EAEAC,iBAAiBA,CAAED,KAAK,EAAG;IAC1B,IAAI,CAACE,QAAQ,CAAE;MAAEF;IAAM,CAAE,CAAC;IAE1BX,QAAQ,CAAE,kCAAkC,EAAEW,KAAM,CAAC;EACtD;EAEAG,MAAMA,CAAA,EAAG;IACR,MAAM;MAAEH;IAAM,CAAC,GAAG,IAAI,CAACD,KAAK;IAC5B,IAAK,CAAEC,KAAK,EAAG;MACd,OAAO,IAAI,CAACI,KAAK,CAACZ,QAAQ;IAC3B;IAEA,OACCE,aAAA,CAACP,OAAO;MACPkB,SAAS,EAAC,kCAAkC;MAC5CC,OAAO,EAAG,CACTZ,aAAA,CAACJ,UAAU;QAACiB,GAAG,EAAC,YAAY;QAAChB,IAAI,EAAGS,KAAK,CAACQ;MAAO,GAC9CvB,EAAE,CAAE,YAAa,CACR,CAAC;IACX,GAEDA,EAAE,CAAE,iDAAkD,CAChD,CAAC;EAEZ;AACD"}
1
+ {"version":3,"names":["Component","__","Button","Warning","useCopyToClipboard","doAction","CopyButton","text","children","ref","createElement","variant","ErrorBoundary","constructor","arguments","state","error","componentDidCatch","setState","render","props","className","actions","key","stack"],"sources":["@wordpress/customize-widgets/src/components/error-boundary/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { Warning } from '@wordpress/block-editor';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { doAction } from '@wordpress/hooks';\n\nfunction CopyButton( { text, children } ) {\n\tconst ref = useCopyToClipboard( text );\n\treturn (\n\t\t<Button variant=\"secondary\" ref={ ref }>\n\t\t\t{ children }\n\t\t</Button>\n\t);\n}\n\nexport default class ErrorBoundary extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.state = {\n\t\t\terror: null,\n\t\t};\n\t}\n\n\tcomponentDidCatch( error ) {\n\t\tthis.setState( { error } );\n\n\t\tdoAction( 'editor.ErrorBoundary.errorLogged', error );\n\t}\n\n\trender() {\n\t\tconst { error } = this.state;\n\t\tif ( ! error ) {\n\t\t\treturn this.props.children;\n\t\t}\n\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tclassName=\"customize-widgets-error-boundary\"\n\t\t\t\tactions={ [\n\t\t\t\t\t<CopyButton key=\"copy-error\" text={ error.stack }>\n\t\t\t\t\t\t{ __( 'Copy Error' ) }\n\t\t\t\t\t</CopyButton>,\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ __( 'The editor has encountered an unexpected error.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,kBAAkB,QAAQ,oBAAoB;AACvD,SAASC,QAAQ,QAAQ,kBAAkB;AAE3C,SAASC,UAAUA,CAAE;EAAEC,IAAI;EAAEC;AAAS,CAAC,EAAG;EACzC,MAAMC,GAAG,GAAGL,kBAAkB,CAAEG,IAAK,CAAC;EACtC,OACCG,aAAA,CAACR,MAAM;IAACS,OAAO,EAAC,WAAW;IAACF,GAAG,EAAGA;EAAK,GACpCD,QACK,CAAC;AAEX;AAEA,eAAe,MAAMI,aAAa,SAASZ,SAAS,CAAC;EACpDa,WAAWA,CAAA,EAAG;IACb,KAAK,CAAE,GAAGC,SAAU,CAAC;IACrB,IAAI,CAACC,KAAK,GAAG;MACZC,KAAK,EAAE;IACR,CAAC;EACF;EAEAC,iBAAiBA,CAAED,KAAK,EAAG;IAC1B,IAAI,CAACE,QAAQ,CAAE;MAAEF;IAAM,CAAE,CAAC;IAE1BX,QAAQ,CAAE,kCAAkC,EAAEW,KAAM,CAAC;EACtD;EAEAG,MAAMA,CAAA,EAAG;IACR,MAAM;MAAEH;IAAM,CAAC,GAAG,IAAI,CAACD,KAAK;IAC5B,IAAK,CAAEC,KAAK,EAAG;MACd,OAAO,IAAI,CAACI,KAAK,CAACZ,QAAQ;IAC3B;IAEA,OACCE,aAAA,CAACP,OAAO;MACPkB,SAAS,EAAC,kCAAkC;MAC5CC,OAAO,EAAG,CACTZ,aAAA,CAACJ,UAAU;QAACiB,GAAG,EAAC,YAAY;QAAChB,IAAI,EAAGS,KAAK,CAACQ;MAAO,GAC9CvB,EAAE,CAAE,YAAa,CACR,CAAC;IACX,GAEDA,EAAE,CAAE,iDAAkD,CAChD,CAAC;EAEZ;AACD","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useState","useEffect","useContext","useCallback","useMemo","settingIdToWidgetId","FocusControlContext","FocusControl","api","sidebarControls","children","focusedWidgetIdRef","setFocusedWidgetIdRef","current","focusWidget","widgetId","sidebarControl","widgets","setting","get","includes","sectionInstance","expand","completeCallback","handleFocus","settingId","previewBound","handleReady","previewer","preview","bind","unbind","context","createElement","Provider","value","useFocusControl"],"sources":["@wordpress/customize-widgets/src/components/focus-control/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcreateContext,\n\tuseState,\n\tuseEffect,\n\tuseContext,\n\tuseCallback,\n\tuseMemo,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { settingIdToWidgetId } from '../../utils';\n\nconst FocusControlContext = createContext();\n\nexport default function FocusControl( { api, sidebarControls, children } ) {\n\tconst [ focusedWidgetIdRef, setFocusedWidgetIdRef ] = useState( {\n\t\tcurrent: null,\n\t} );\n\n\tconst focusWidget = useCallback(\n\t\t( widgetId ) => {\n\t\t\tfor ( const sidebarControl of sidebarControls ) {\n\t\t\t\tconst widgets = sidebarControl.setting.get();\n\n\t\t\t\tif ( widgets.includes( widgetId ) ) {\n\t\t\t\t\tsidebarControl.sectionInstance.expand( {\n\t\t\t\t\t\t// Schedule it after the complete callback so that\n\t\t\t\t\t\t// it won't be overridden by the \"Back\" button focus.\n\t\t\t\t\t\tcompleteCallback() {\n\t\t\t\t\t\t\t// Create a \"ref-like\" object every time to ensure\n\t\t\t\t\t\t\t// the same widget id can also triggers the focus control.\n\t\t\t\t\t\t\tsetFocusedWidgetIdRef( { current: widgetId } );\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[ sidebarControls ]\n\t);\n\n\tuseEffect( () => {\n\t\tfunction handleFocus( settingId ) {\n\t\t\tconst widgetId = settingIdToWidgetId( settingId );\n\n\t\t\tfocusWidget( widgetId );\n\t\t}\n\n\t\tlet previewBound = false;\n\n\t\tfunction handleReady() {\n\t\t\tapi.previewer.preview.bind(\n\t\t\t\t'focus-control-for-setting',\n\t\t\t\thandleFocus\n\t\t\t);\n\t\t\tpreviewBound = true;\n\t\t}\n\n\t\tapi.previewer.bind( 'ready', handleReady );\n\n\t\treturn () => {\n\t\t\tapi.previewer.unbind( 'ready', handleReady );\n\t\t\tif ( previewBound ) {\n\t\t\t\tapi.previewer.preview.unbind(\n\t\t\t\t\t'focus-control-for-setting',\n\t\t\t\t\thandleFocus\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\t}, [ api, focusWidget ] );\n\n\tconst context = useMemo(\n\t\t() => [ focusedWidgetIdRef, focusWidget ],\n\t\t[ focusedWidgetIdRef, focusWidget ]\n\t);\n\n\treturn (\n\t\t<FocusControlContext.Provider value={ context }>\n\t\t\t{ children }\n\t\t</FocusControlContext.Provider>\n\t);\n}\n\nexport const useFocusControl = () => useContext( FocusControlContext );\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,aAAa,EACbC,QAAQ,EACRC,SAAS,EACTC,UAAU,EACVC,WAAW,EACXC,OAAO,QACD,oBAAoB;;AAE3B;AACA;AACA;AACA,SAASC,mBAAmB,QAAQ,aAAa;AAEjD,MAAMC,mBAAmB,GAAGP,aAAa,CAAC,CAAC;AAE3C,eAAe,SAASQ,YAAYA,CAAE;EAAEC,GAAG;EAAEC,eAAe;EAAEC;AAAS,CAAC,EAAG;EAC1E,MAAM,CAAEC,kBAAkB,EAAEC,qBAAqB,CAAE,GAAGZ,QAAQ,CAAE;IAC/Da,OAAO,EAAE;EACV,CAAE,CAAC;EAEH,MAAMC,WAAW,GAAGX,WAAW,CAC5BY,QAAQ,IAAM;IACf,KAAM,MAAMC,cAAc,IAAIP,eAAe,EAAG;MAC/C,MAAMQ,OAAO,GAAGD,cAAc,CAACE,OAAO,CAACC,GAAG,CAAC,CAAC;MAE5C,IAAKF,OAAO,CAACG,QAAQ,CAAEL,QAAS,CAAC,EAAG;QACnCC,cAAc,CAACK,eAAe,CAACC,MAAM,CAAE;UACtC;UACA;UACAC,gBAAgBA,CAAA,EAAG;YAClB;YACA;YACAX,qBAAqB,CAAE;cAAEC,OAAO,EAAEE;YAAS,CAAE,CAAC;UAC/C;QACD,CAAE,CAAC;QAEH;MACD;IACD;EACD,CAAC,EACD,CAAEN,eAAe,CAClB,CAAC;EAEDR,SAAS,CAAE,MAAM;IAChB,SAASuB,WAAWA,CAAEC,SAAS,EAAG;MACjC,MAAMV,QAAQ,GAAGV,mBAAmB,CAAEoB,SAAU,CAAC;MAEjDX,WAAW,CAAEC,QAAS,CAAC;IACxB;IAEA,IAAIW,YAAY,GAAG,KAAK;IAExB,SAASC,WAAWA,CAAA,EAAG;MACtBnB,GAAG,CAACoB,SAAS,CAACC,OAAO,CAACC,IAAI,CACzB,2BAA2B,EAC3BN,WACD,CAAC;MACDE,YAAY,GAAG,IAAI;IACpB;IAEAlB,GAAG,CAACoB,SAAS,CAACE,IAAI,CAAE,OAAO,EAAEH,WAAY,CAAC;IAE1C,OAAO,MAAM;MACZnB,GAAG,CAACoB,SAAS,CAACG,MAAM,CAAE,OAAO,EAAEJ,WAAY,CAAC;MAC5C,IAAKD,YAAY,EAAG;QACnBlB,GAAG,CAACoB,SAAS,CAACC,OAAO,CAACE,MAAM,CAC3B,2BAA2B,EAC3BP,WACD,CAAC;MACF;IACD,CAAC;EACF,CAAC,EAAE,CAAEhB,GAAG,EAAEM,WAAW,CAAG,CAAC;EAEzB,MAAMkB,OAAO,GAAG5B,OAAO,CACtB,MAAM,CAAEO,kBAAkB,EAAEG,WAAW,CAAE,EACzC,CAAEH,kBAAkB,EAAEG,WAAW,CAClC,CAAC;EAED,OACCmB,aAAA,CAAC3B,mBAAmB,CAAC4B,QAAQ;IAACC,KAAK,EAAGH;EAAS,GAC5CtB,QAC2B,CAAC;AAEjC;AAEA,OAAO,MAAM0B,eAAe,GAAGA,CAAA,KAAMlC,UAAU,CAAEI,mBAAoB,CAAC"}
1
+ {"version":3,"names":["createContext","useState","useEffect","useContext","useCallback","useMemo","settingIdToWidgetId","FocusControlContext","FocusControl","api","sidebarControls","children","focusedWidgetIdRef","setFocusedWidgetIdRef","current","focusWidget","widgetId","sidebarControl","widgets","setting","get","includes","sectionInstance","expand","completeCallback","handleFocus","settingId","previewBound","handleReady","previewer","preview","bind","unbind","context","createElement","Provider","value","useFocusControl"],"sources":["@wordpress/customize-widgets/src/components/focus-control/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcreateContext,\n\tuseState,\n\tuseEffect,\n\tuseContext,\n\tuseCallback,\n\tuseMemo,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { settingIdToWidgetId } from '../../utils';\n\nconst FocusControlContext = createContext();\n\nexport default function FocusControl( { api, sidebarControls, children } ) {\n\tconst [ focusedWidgetIdRef, setFocusedWidgetIdRef ] = useState( {\n\t\tcurrent: null,\n\t} );\n\n\tconst focusWidget = useCallback(\n\t\t( widgetId ) => {\n\t\t\tfor ( const sidebarControl of sidebarControls ) {\n\t\t\t\tconst widgets = sidebarControl.setting.get();\n\n\t\t\t\tif ( widgets.includes( widgetId ) ) {\n\t\t\t\t\tsidebarControl.sectionInstance.expand( {\n\t\t\t\t\t\t// Schedule it after the complete callback so that\n\t\t\t\t\t\t// it won't be overridden by the \"Back\" button focus.\n\t\t\t\t\t\tcompleteCallback() {\n\t\t\t\t\t\t\t// Create a \"ref-like\" object every time to ensure\n\t\t\t\t\t\t\t// the same widget id can also triggers the focus control.\n\t\t\t\t\t\t\tsetFocusedWidgetIdRef( { current: widgetId } );\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[ sidebarControls ]\n\t);\n\n\tuseEffect( () => {\n\t\tfunction handleFocus( settingId ) {\n\t\t\tconst widgetId = settingIdToWidgetId( settingId );\n\n\t\t\tfocusWidget( widgetId );\n\t\t}\n\n\t\tlet previewBound = false;\n\n\t\tfunction handleReady() {\n\t\t\tapi.previewer.preview.bind(\n\t\t\t\t'focus-control-for-setting',\n\t\t\t\thandleFocus\n\t\t\t);\n\t\t\tpreviewBound = true;\n\t\t}\n\n\t\tapi.previewer.bind( 'ready', handleReady );\n\n\t\treturn () => {\n\t\t\tapi.previewer.unbind( 'ready', handleReady );\n\t\t\tif ( previewBound ) {\n\t\t\t\tapi.previewer.preview.unbind(\n\t\t\t\t\t'focus-control-for-setting',\n\t\t\t\t\thandleFocus\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\t}, [ api, focusWidget ] );\n\n\tconst context = useMemo(\n\t\t() => [ focusedWidgetIdRef, focusWidget ],\n\t\t[ focusedWidgetIdRef, focusWidget ]\n\t);\n\n\treturn (\n\t\t<FocusControlContext.Provider value={ context }>\n\t\t\t{ children }\n\t\t</FocusControlContext.Provider>\n\t);\n}\n\nexport const useFocusControl = () => useContext( FocusControlContext );\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,aAAa,EACbC,QAAQ,EACRC,SAAS,EACTC,UAAU,EACVC,WAAW,EACXC,OAAO,QACD,oBAAoB;;AAE3B;AACA;AACA;AACA,SAASC,mBAAmB,QAAQ,aAAa;AAEjD,MAAMC,mBAAmB,GAAGP,aAAa,CAAC,CAAC;AAE3C,eAAe,SAASQ,YAAYA,CAAE;EAAEC,GAAG;EAAEC,eAAe;EAAEC;AAAS,CAAC,EAAG;EAC1E,MAAM,CAAEC,kBAAkB,EAAEC,qBAAqB,CAAE,GAAGZ,QAAQ,CAAE;IAC/Da,OAAO,EAAE;EACV,CAAE,CAAC;EAEH,MAAMC,WAAW,GAAGX,WAAW,CAC5BY,QAAQ,IAAM;IACf,KAAM,MAAMC,cAAc,IAAIP,eAAe,EAAG;MAC/C,MAAMQ,OAAO,GAAGD,cAAc,CAACE,OAAO,CAACC,GAAG,CAAC,CAAC;MAE5C,IAAKF,OAAO,CAACG,QAAQ,CAAEL,QAAS,CAAC,EAAG;QACnCC,cAAc,CAACK,eAAe,CAACC,MAAM,CAAE;UACtC;UACA;UACAC,gBAAgBA,CAAA,EAAG;YAClB;YACA;YACAX,qBAAqB,CAAE;cAAEC,OAAO,EAAEE;YAAS,CAAE,CAAC;UAC/C;QACD,CAAE,CAAC;QAEH;MACD;IACD;EACD,CAAC,EACD,CAAEN,eAAe,CAClB,CAAC;EAEDR,SAAS,CAAE,MAAM;IAChB,SAASuB,WAAWA,CAAEC,SAAS,EAAG;MACjC,MAAMV,QAAQ,GAAGV,mBAAmB,CAAEoB,SAAU,CAAC;MAEjDX,WAAW,CAAEC,QAAS,CAAC;IACxB;IAEA,IAAIW,YAAY,GAAG,KAAK;IAExB,SAASC,WAAWA,CAAA,EAAG;MACtBnB,GAAG,CAACoB,SAAS,CAACC,OAAO,CAACC,IAAI,CACzB,2BAA2B,EAC3BN,WACD,CAAC;MACDE,YAAY,GAAG,IAAI;IACpB;IAEAlB,GAAG,CAACoB,SAAS,CAACE,IAAI,CAAE,OAAO,EAAEH,WAAY,CAAC;IAE1C,OAAO,MAAM;MACZnB,GAAG,CAACoB,SAAS,CAACG,MAAM,CAAE,OAAO,EAAEJ,WAAY,CAAC;MAC5C,IAAKD,YAAY,EAAG;QACnBlB,GAAG,CAACoB,SAAS,CAACC,OAAO,CAACE,MAAM,CAC3B,2BAA2B,EAC3BP,WACD,CAAC;MACF;IACD,CAAC;EACF,CAAC,EAAE,CAAEhB,GAAG,EAAEM,WAAW,CAAG,CAAC;EAEzB,MAAMkB,OAAO,GAAG5B,OAAO,CACtB,MAAM,CAAEO,kBAAkB,EAAEG,WAAW,CAAE,EACzC,CAAEH,kBAAkB,EAAEG,WAAW,CAClC,CAAC;EAED,OACCmB,aAAA,CAAC3B,mBAAmB,CAAC4B,QAAQ;IAACC,KAAK,EAAGH;EAAS,GAC5CtB,QAC2B,CAAC;AAEjC;AAEA,OAAO,MAAM0B,eAAe,GAAGA,CAAA,KAAMlC,UAAU,CAAEI,mBAAoB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useEffect","useDispatch","store","blockEditorStore","getWidgetIdFromBlock","useFocusControl","useBlocksFocusControl","blocks","selectBlock","focusedWidgetIdRef","blocksRef","current","focusedBlock","find","block","clientId","blockNode","document","querySelector","focus"],"sources":["@wordpress/customize-widgets/src/components/focus-control/use-blocks-focus-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { getWidgetIdFromBlock } from '@wordpress/widgets';\n\n/**\n * Internal dependencies\n */\nimport { useFocusControl } from '.';\n\nexport default function useBlocksFocusControl( blocks ) {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst [ focusedWidgetIdRef ] = useFocusControl();\n\n\tconst blocksRef = useRef( blocks );\n\n\tuseEffect( () => {\n\t\tblocksRef.current = blocks;\n\t}, [ blocks ] );\n\n\tuseEffect( () => {\n\t\tif ( focusedWidgetIdRef.current ) {\n\t\t\tconst focusedBlock = blocksRef.current.find(\n\t\t\t\t( block ) =>\n\t\t\t\t\tgetWidgetIdFromBlock( block ) === focusedWidgetIdRef.current\n\t\t\t);\n\n\t\t\tif ( focusedBlock ) {\n\t\t\t\tselectBlock( focusedBlock.clientId );\n\t\t\t\t// If the block is already being selected, the DOM node won't\n\t\t\t\t// get focused again automatically.\n\t\t\t\t// We select the DOM and focus it manually here.\n\t\t\t\tconst blockNode = document.querySelector(\n\t\t\t\t\t`[data-block=\"${ focusedBlock.clientId }\"]`\n\t\t\t\t);\n\t\t\t\tblockNode?.focus();\n\t\t\t}\n\t\t}\n\t}, [ focusedWidgetIdRef, selectBlock ] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AACtD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASC,oBAAoB,QAAQ,oBAAoB;;AAEzD;AACA;AACA;AACA,SAASC,eAAe,QAAQ,GAAG;AAEnC,eAAe,SAASC,qBAAqBA,CAAEC,MAAM,EAAG;EACvD,MAAM;IAAEC;EAAY,CAAC,GAAGP,WAAW,CAAEE,gBAAiB,CAAC;EACvD,MAAM,CAAEM,kBAAkB,CAAE,GAAGJ,eAAe,CAAC,CAAC;EAEhD,MAAMK,SAAS,GAAGX,MAAM,CAAEQ,MAAO,CAAC;EAElCP,SAAS,CAAE,MAAM;IAChBU,SAAS,CAACC,OAAO,GAAGJ,MAAM;EAC3B,CAAC,EAAE,CAAEA,MAAM,CAAG,CAAC;EAEfP,SAAS,CAAE,MAAM;IAChB,IAAKS,kBAAkB,CAACE,OAAO,EAAG;MACjC,MAAMC,YAAY,GAAGF,SAAS,CAACC,OAAO,CAACE,IAAI,CACxCC,KAAK,IACNV,oBAAoB,CAAEU,KAAM,CAAC,KAAKL,kBAAkB,CAACE,OACvD,CAAC;MAED,IAAKC,YAAY,EAAG;QACnBJ,WAAW,CAAEI,YAAY,CAACG,QAAS,CAAC;QACpC;QACA;QACA;QACA,MAAMC,SAAS,GAAGC,QAAQ,CAACC,aAAa,CACtC,gBAAgBN,YAAY,CAACG,QAAU,IACzC,CAAC;QACDC,SAAS,EAAEG,KAAK,CAAC,CAAC;MACnB;IACD;EACD,CAAC,EAAE,CAAEV,kBAAkB,EAAED,WAAW,CAAG,CAAC;AACzC"}
1
+ {"version":3,"names":["useRef","useEffect","useDispatch","store","blockEditorStore","getWidgetIdFromBlock","useFocusControl","useBlocksFocusControl","blocks","selectBlock","focusedWidgetIdRef","blocksRef","current","focusedBlock","find","block","clientId","blockNode","document","querySelector","focus"],"sources":["@wordpress/customize-widgets/src/components/focus-control/use-blocks-focus-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { getWidgetIdFromBlock } from '@wordpress/widgets';\n\n/**\n * Internal dependencies\n */\nimport { useFocusControl } from '.';\n\nexport default function useBlocksFocusControl( blocks ) {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst [ focusedWidgetIdRef ] = useFocusControl();\n\n\tconst blocksRef = useRef( blocks );\n\n\tuseEffect( () => {\n\t\tblocksRef.current = blocks;\n\t}, [ blocks ] );\n\n\tuseEffect( () => {\n\t\tif ( focusedWidgetIdRef.current ) {\n\t\t\tconst focusedBlock = blocksRef.current.find(\n\t\t\t\t( block ) =>\n\t\t\t\t\tgetWidgetIdFromBlock( block ) === focusedWidgetIdRef.current\n\t\t\t);\n\n\t\t\tif ( focusedBlock ) {\n\t\t\t\tselectBlock( focusedBlock.clientId );\n\t\t\t\t// If the block is already being selected, the DOM node won't\n\t\t\t\t// get focused again automatically.\n\t\t\t\t// We select the DOM and focus it manually here.\n\t\t\t\tconst blockNode = document.querySelector(\n\t\t\t\t\t`[data-block=\"${ focusedBlock.clientId }\"]`\n\t\t\t\t);\n\t\t\t\tblockNode?.focus();\n\t\t\t}\n\t\t}\n\t}, [ focusedWidgetIdRef, selectBlock ] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AACtD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASC,oBAAoB,QAAQ,oBAAoB;;AAEzD;AACA;AACA;AACA,SAASC,eAAe,QAAQ,GAAG;AAEnC,eAAe,SAASC,qBAAqBA,CAAEC,MAAM,EAAG;EACvD,MAAM;IAAEC;EAAY,CAAC,GAAGP,WAAW,CAAEE,gBAAiB,CAAC;EACvD,MAAM,CAAEM,kBAAkB,CAAE,GAAGJ,eAAe,CAAC,CAAC;EAEhD,MAAMK,SAAS,GAAGX,MAAM,CAAEQ,MAAO,CAAC;EAElCP,SAAS,CAAE,MAAM;IAChBU,SAAS,CAACC,OAAO,GAAGJ,MAAM;EAC3B,CAAC,EAAE,CAAEA,MAAM,CAAG,CAAC;EAEfP,SAAS,CAAE,MAAM;IAChB,IAAKS,kBAAkB,CAACE,OAAO,EAAG;MACjC,MAAMC,YAAY,GAAGF,SAAS,CAACC,OAAO,CAACE,IAAI,CACxCC,KAAK,IACNV,oBAAoB,CAAEU,KAAM,CAAC,KAAKL,kBAAkB,CAACE,OACvD,CAAC;MAED,IAAKC,YAAY,EAAG;QACnBJ,WAAW,CAAEI,YAAY,CAACG,QAAS,CAAC;QACpC;QACA;QACA;QACA,MAAMC,SAAS,GAAGC,QAAQ,CAACC,aAAa,CACtC,gBAAgBN,YAAY,CAACG,QAAU,IACzC,CAAC;QACDC,SAAS,EAAEG,KAAK,CAAC,CAAC;MACnB;IACD;EACD,CAAC,EAAE,CAAEV,kBAAkB,EAAED,WAAW,CAAG,CAAC;AACzC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","ToolbarButton","NavigableToolbar","createPortal","useEffect","useState","displayShortcut","isAppleOS","__","_x","isRTL","plus","undo","undoIcon","redo","redoIcon","Inserter","MoreMenu","Header","sidebar","inserter","isInserterOpened","setIsInserterOpened","isFixedToolbarActive","hasUndo","hasRedo","setUndoRedo","shortcut","primaryShift","primary","subscribeHistory","createElement","Fragment","className","icon","label","onClick","isPressed","variant","isOpen","setIsOpened","contentContainer"],"sources":["@wordpress/customize-widgets/src/components/header/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { ToolbarButton } from '@wordpress/components';\nimport { NavigableToolbar } from '@wordpress/block-editor';\nimport { createPortal, useEffect, useState } from '@wordpress/element';\nimport { displayShortcut, isAppleOS } from '@wordpress/keycodes';\nimport { __, _x, isRTL } from '@wordpress/i18n';\nimport { plus, undo as undoIcon, redo as redoIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Inserter from '../inserter';\nimport MoreMenu from '../more-menu';\n\nfunction Header( {\n\tsidebar,\n\tinserter,\n\tisInserterOpened,\n\tsetIsInserterOpened,\n\tisFixedToolbarActive,\n} ) {\n\tconst [ [ hasUndo, hasRedo ], setUndoRedo ] = useState( [\n\t\tsidebar.hasUndo(),\n\t\tsidebar.hasRedo(),\n\t] );\n\n\tconst shortcut = isAppleOS()\n\t\t? displayShortcut.primaryShift( 'z' )\n\t\t: displayShortcut.primary( 'y' );\n\n\tuseEffect( () => {\n\t\treturn sidebar.subscribeHistory( () => {\n\t\t\tsetUndoRedo( [ sidebar.hasUndo(), sidebar.hasRedo() ] );\n\t\t} );\n\t}, [ sidebar ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'customize-widgets-header', {\n\t\t\t\t\t'is-fixed-toolbar-active': isFixedToolbarActive,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<NavigableToolbar\n\t\t\t\t\tclassName=\"customize-widgets-header-toolbar\"\n\t\t\t\t\taria-label={ __( 'Document tools' ) }\n\t\t\t\t>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ ! isRTL() ? undoIcon : redoIcon }\n\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\tlabel={ __( 'Undo' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'z' ) }\n\t\t\t\t\t\t// If there are no undo levels we don't want to actually disable this\n\t\t\t\t\t\t// button, because it will remove focus for keyboard users.\n\t\t\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/3486\n\t\t\t\t\t\taria-disabled={ ! hasUndo }\n\t\t\t\t\t\tonClick={ sidebar.undo }\n\t\t\t\t\t\tclassName=\"customize-widgets-editor-history-button undo-button\"\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ ! isRTL() ? redoIcon : undoIcon }\n\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\tlabel={ __( 'Redo' ) }\n\t\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t\t\t// If there are no undo levels we don't want to actually disable this\n\t\t\t\t\t\t// button, because it will remove focus for keyboard users.\n\t\t\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/3486\n\t\t\t\t\t\taria-disabled={ ! hasRedo }\n\t\t\t\t\t\tonClick={ sidebar.redo }\n\t\t\t\t\t\tclassName=\"customize-widgets-editor-history-button redo-button\"\n\t\t\t\t\t/>\n\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tclassName=\"customize-widgets-header-toolbar__inserter-toggle\"\n\t\t\t\t\t\tisPressed={ isInserterOpened }\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t'Add block',\n\t\t\t\t\t\t\t'Generic label for block inserter button'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetIsInserterOpened( ( isOpen ) => ! isOpen );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t<MoreMenu />\n\t\t\t\t</NavigableToolbar>\n\t\t\t</div>\n\n\t\t\t{ createPortal(\n\t\t\t\t<Inserter setIsOpened={ setIsInserterOpened } />,\n\t\t\t\tinserter.contentContainer[ 0 ]\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default Header;\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","ToolbarButton","NavigableToolbar","createPortal","useEffect","useState","displayShortcut","isAppleOS","__","_x","isRTL","plus","undo","undoIcon","redo","redoIcon","Inserter","MoreMenu","Header","sidebar","inserter","isInserterOpened","setIsInserterOpened","isFixedToolbarActive","hasUndo","hasRedo","setUndoRedo","shortcut","primaryShift","primary","subscribeHistory","createElement","Fragment","className","icon","label","onClick","isPressed","variant","isOpen","setIsOpened","contentContainer"],"sources":["@wordpress/customize-widgets/src/components/header/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { ToolbarButton } from '@wordpress/components';\nimport { NavigableToolbar } from '@wordpress/block-editor';\nimport { createPortal, useEffect, useState } from '@wordpress/element';\nimport { displayShortcut, isAppleOS } from '@wordpress/keycodes';\nimport { __, _x, isRTL } from '@wordpress/i18n';\nimport { plus, undo as undoIcon, redo as redoIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Inserter from '../inserter';\nimport MoreMenu from '../more-menu';\n\nfunction Header( {\n\tsidebar,\n\tinserter,\n\tisInserterOpened,\n\tsetIsInserterOpened,\n\tisFixedToolbarActive,\n} ) {\n\tconst [ [ hasUndo, hasRedo ], setUndoRedo ] = useState( [\n\t\tsidebar.hasUndo(),\n\t\tsidebar.hasRedo(),\n\t] );\n\n\tconst shortcut = isAppleOS()\n\t\t? displayShortcut.primaryShift( 'z' )\n\t\t: displayShortcut.primary( 'y' );\n\n\tuseEffect( () => {\n\t\treturn sidebar.subscribeHistory( () => {\n\t\t\tsetUndoRedo( [ sidebar.hasUndo(), sidebar.hasRedo() ] );\n\t\t} );\n\t}, [ sidebar ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'customize-widgets-header', {\n\t\t\t\t\t'is-fixed-toolbar-active': isFixedToolbarActive,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<NavigableToolbar\n\t\t\t\t\tclassName=\"customize-widgets-header-toolbar\"\n\t\t\t\t\taria-label={ __( 'Document tools' ) }\n\t\t\t\t>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ ! isRTL() ? undoIcon : redoIcon }\n\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\tlabel={ __( 'Undo' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'z' ) }\n\t\t\t\t\t\t// If there are no undo levels we don't want to actually disable this\n\t\t\t\t\t\t// button, because it will remove focus for keyboard users.\n\t\t\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/3486\n\t\t\t\t\t\taria-disabled={ ! hasUndo }\n\t\t\t\t\t\tonClick={ sidebar.undo }\n\t\t\t\t\t\tclassName=\"customize-widgets-editor-history-button undo-button\"\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ ! isRTL() ? redoIcon : undoIcon }\n\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\tlabel={ __( 'Redo' ) }\n\t\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t\t\t// If there are no undo levels we don't want to actually disable this\n\t\t\t\t\t\t// button, because it will remove focus for keyboard users.\n\t\t\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/3486\n\t\t\t\t\t\taria-disabled={ ! hasRedo }\n\t\t\t\t\t\tonClick={ sidebar.redo }\n\t\t\t\t\t\tclassName=\"customize-widgets-editor-history-button redo-button\"\n\t\t\t\t\t/>\n\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tclassName=\"customize-widgets-header-toolbar__inserter-toggle\"\n\t\t\t\t\t\tisPressed={ isInserterOpened }\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t'Add block',\n\t\t\t\t\t\t\t'Generic label for block inserter button'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetIsInserterOpened( ( isOpen ) => ! isOpen );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t<MoreMenu />\n\t\t\t\t</NavigableToolbar>\n\t\t\t</div>\n\n\t\t\t{ createPortal(\n\t\t\t\t<Inserter setIsOpened={ setIsInserterOpened } />,\n\t\t\t\tinserter.contentContainer[ 0 ]\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default Header;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["__","__experimentalLibrary","Library","Button","useInstanceId","useSelect","closeSmall","store","customizeWidgetsStore","Inserter","setIsOpened","inserterTitleId","insertionPoint","select","__experimentalGetInsertionPoint","createElement","className","id","icon","onClick","rootClientId","__experimentalInsertionIndex","insertionIndex","showInserterHelpPanel","onSelect"],"sources":["@wordpress/customize-widgets/src/components/inserter/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalLibrary as Library } from '@wordpress/block-editor';\nimport { Button } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { store as customizeWidgetsStore } from '../../store';\n\nfunction Inserter( { setIsOpened } ) {\n\tconst inserterTitleId = useInstanceId(\n\t\tInserter,\n\t\t'customize-widget-layout__inserter-panel-title'\n\t);\n\tconst insertionPoint = useSelect(\n\t\t( select ) =>\n\t\t\tselect( customizeWidgetsStore ).__experimentalGetInsertionPoint(),\n\t\t[]\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"customize-widgets-layout__inserter-panel\"\n\t\t\taria-labelledby={ inserterTitleId }\n\t\t>\n\t\t\t<div className=\"customize-widgets-layout__inserter-panel-header\">\n\t\t\t\t<h2\n\t\t\t\t\tid={ inserterTitleId }\n\t\t\t\t\tclassName=\"customize-widgets-layout__inserter-panel-header-title\"\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Add a block' ) }\n\t\t\t\t</h2>\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"customize-widgets-layout__inserter-panel-header-close-button\"\n\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\tonClick={ () => setIsOpened( false ) }\n\t\t\t\t\taria-label={ __( 'Close inserter' ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div className=\"customize-widgets-layout__inserter-panel-content\">\n\t\t\t\t<Library\n\t\t\t\t\trootClientId={ insertionPoint.rootClientId }\n\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\tinsertionPoint.insertionIndex\n\t\t\t\t\t}\n\t\t\t\t\tshowInserterHelpPanel\n\t\t\t\t\tonSelect={ () => setIsOpened( false ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport default Inserter;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,qBAAqB,IAAIC,OAAO,QAAQ,yBAAyB;AAC1E,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,UAAU,QAAQ,kBAAkB;;AAE7C;AACA;AACA;AACA,SAASC,KAAK,IAAIC,qBAAqB,QAAQ,aAAa;AAE5D,SAASC,QAAQA,CAAE;EAAEC;AAAY,CAAC,EAAG;EACpC,MAAMC,eAAe,GAAGP,aAAa,CACpCK,QAAQ,EACR,+CACD,CAAC;EACD,MAAMG,cAAc,GAAGP,SAAS,CAC7BQ,MAAM,IACPA,MAAM,CAAEL,qBAAsB,CAAC,CAACM,+BAA+B,CAAC,CAAC,EAClE,EACD,CAAC;EAED,OACCC,aAAA;IACCC,SAAS,EAAC,0CAA0C;IACpD,mBAAkBL;EAAiB,GAEnCI,aAAA;IAAKC,SAAS,EAAC;EAAiD,GAC/DD,aAAA;IACCE,EAAE,EAAGN,eAAiB;IACtBK,SAAS,EAAC;EAAuD,GAE/DhB,EAAE,CAAE,aAAc,CACjB,CAAC,EACLe,aAAA,CAACZ,MAAM;IACNa,SAAS,EAAC,8DAA8D;IACxEE,IAAI,EAAGZ,UAAY;IACnBa,OAAO,EAAGA,CAAA,KAAMT,WAAW,CAAE,KAAM,CAAG;IACtC,cAAaV,EAAE,CAAE,gBAAiB;EAAG,CACrC,CACG,CAAC,EACNe,aAAA;IAAKC,SAAS,EAAC;EAAkD,GAChED,aAAA,CAACb,OAAO;IACPkB,YAAY,EAAGR,cAAc,CAACQ,YAAc;IAC5CC,4BAA4B,EAC3BT,cAAc,CAACU,cACf;IACDC,qBAAqB;IACrBC,QAAQ,EAAGA,CAAA,KAAMd,WAAW,CAAE,KAAM;EAAG,CACvC,CACG,CACD,CAAC;AAER;AAEA,eAAeD,QAAQ"}
1
+ {"version":3,"names":["__","__experimentalLibrary","Library","Button","useInstanceId","useSelect","closeSmall","store","customizeWidgetsStore","Inserter","setIsOpened","inserterTitleId","insertionPoint","select","__experimentalGetInsertionPoint","createElement","className","id","icon","onClick","rootClientId","__experimentalInsertionIndex","insertionIndex","showInserterHelpPanel","onSelect"],"sources":["@wordpress/customize-widgets/src/components/inserter/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalLibrary as Library } from '@wordpress/block-editor';\nimport { Button } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { store as customizeWidgetsStore } from '../../store';\n\nfunction Inserter( { setIsOpened } ) {\n\tconst inserterTitleId = useInstanceId(\n\t\tInserter,\n\t\t'customize-widget-layout__inserter-panel-title'\n\t);\n\tconst insertionPoint = useSelect(\n\t\t( select ) =>\n\t\t\tselect( customizeWidgetsStore ).__experimentalGetInsertionPoint(),\n\t\t[]\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"customize-widgets-layout__inserter-panel\"\n\t\t\taria-labelledby={ inserterTitleId }\n\t\t>\n\t\t\t<div className=\"customize-widgets-layout__inserter-panel-header\">\n\t\t\t\t<h2\n\t\t\t\t\tid={ inserterTitleId }\n\t\t\t\t\tclassName=\"customize-widgets-layout__inserter-panel-header-title\"\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Add a block' ) }\n\t\t\t\t</h2>\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"customize-widgets-layout__inserter-panel-header-close-button\"\n\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\tonClick={ () => setIsOpened( false ) }\n\t\t\t\t\taria-label={ __( 'Close inserter' ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div className=\"customize-widgets-layout__inserter-panel-content\">\n\t\t\t\t<Library\n\t\t\t\t\trootClientId={ insertionPoint.rootClientId }\n\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\tinsertionPoint.insertionIndex\n\t\t\t\t\t}\n\t\t\t\t\tshowInserterHelpPanel\n\t\t\t\t\tonSelect={ () => setIsOpened( false ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport default Inserter;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,qBAAqB,IAAIC,OAAO,QAAQ,yBAAyB;AAC1E,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,UAAU,QAAQ,kBAAkB;;AAE7C;AACA;AACA;AACA,SAASC,KAAK,IAAIC,qBAAqB,QAAQ,aAAa;AAE5D,SAASC,QAAQA,CAAE;EAAEC;AAAY,CAAC,EAAG;EACpC,MAAMC,eAAe,GAAGP,aAAa,CACpCK,QAAQ,EACR,+CACD,CAAC;EACD,MAAMG,cAAc,GAAGP,SAAS,CAC7BQ,MAAM,IACPA,MAAM,CAAEL,qBAAsB,CAAC,CAACM,+BAA+B,CAAC,CAAC,EAClE,EACD,CAAC;EAED,OACCC,aAAA;IACCC,SAAS,EAAC,0CAA0C;IACpD,mBAAkBL;EAAiB,GAEnCI,aAAA;IAAKC,SAAS,EAAC;EAAiD,GAC/DD,aAAA;IACCE,EAAE,EAAGN,eAAiB;IACtBK,SAAS,EAAC;EAAuD,GAE/DhB,EAAE,CAAE,aAAc,CACjB,CAAC,EACLe,aAAA,CAACZ,MAAM;IACNa,SAAS,EAAC,8DAA8D;IACxEE,IAAI,EAAGZ,UAAY;IACnBa,OAAO,EAAGA,CAAA,KAAMT,WAAW,CAAE,KAAM,CAAG;IACtC,cAAaV,EAAE,CAAE,gBAAiB;EAAG,CACrC,CACG,CAAC,EACNe,aAAA;IAAKC,SAAS,EAAC;EAAkD,GAChED,aAAA,CAACb,OAAO;IACPkB,YAAY,EAAGR,cAAc,CAACQ,YAAc;IAC5CC,4BAA4B,EAC3BT,cAAc,CAACU,cACf;IACDC,qBAAqB;IACrBC,QAAQ,EAAGA,CAAA,KAAMd,WAAW,CAAE,KAAM;EAAG,CACvC,CACG,CACD,CAAC;AAER;AAEA,eAAeD,QAAQ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useCallback","useSelect","useDispatch","select","selectStore","store","customizeWidgetsStore","useInserter","inserter","isInserterOpened","setIsInserterOpened","open","close","updater","isOpen"],"sources":["@wordpress/customize-widgets/src/components/inserter/use-inserter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, select as selectStore } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as customizeWidgetsStore } from '../../store';\n\nexport default function useInserter( inserter ) {\n\tconst isInserterOpened = useSelect(\n\t\t( select ) => select( customizeWidgetsStore ).isInserterOpened(),\n\t\t[]\n\t);\n\tconst { setIsInserterOpened } = useDispatch( customizeWidgetsStore );\n\n\tuseEffect( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\tinserter.open();\n\t\t} else {\n\t\t\tinserter.close();\n\t\t}\n\t}, [ inserter, isInserterOpened ] );\n\n\treturn [\n\t\tisInserterOpened,\n\t\tuseCallback(\n\t\t\t( updater ) => {\n\t\t\t\tlet isOpen = updater;\n\t\t\t\tif ( typeof updater === 'function' ) {\n\t\t\t\t\tisOpen = updater(\n\t\t\t\t\t\tselectStore( customizeWidgetsStore ).isInserterOpened()\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tsetIsInserterOpened( isOpen );\n\t\t\t},\n\t\t\t[ setIsInserterOpened ]\n\t\t),\n\t];\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,oBAAoB;AAC3D,SAASC,SAAS,EAAEC,WAAW,EAAEC,MAAM,IAAIC,WAAW,QAAQ,iBAAiB;;AAE/E;AACA;AACA;AACA,SAASC,KAAK,IAAIC,qBAAqB,QAAQ,aAAa;AAE5D,eAAe,SAASC,WAAWA,CAAEC,QAAQ,EAAG;EAC/C,MAAMC,gBAAgB,GAAGR,SAAS,CAC/BE,MAAM,IAAMA,MAAM,CAAEG,qBAAsB,CAAC,CAACG,gBAAgB,CAAC,CAAC,EAChE,EACD,CAAC;EACD,MAAM;IAAEC;EAAoB,CAAC,GAAGR,WAAW,CAAEI,qBAAsB,CAAC;EAEpEP,SAAS,CAAE,MAAM;IAChB,IAAKU,gBAAgB,EAAG;MACvBD,QAAQ,CAACG,IAAI,CAAC,CAAC;IAChB,CAAC,MAAM;MACNH,QAAQ,CAACI,KAAK,CAAC,CAAC;IACjB;EACD,CAAC,EAAE,CAAEJ,QAAQ,EAAEC,gBAAgB,CAAG,CAAC;EAEnC,OAAO,CACNA,gBAAgB,EAChBT,WAAW,CACRa,OAAO,IAAM;IACd,IAAIC,MAAM,GAAGD,OAAO;IACpB,IAAK,OAAOA,OAAO,KAAK,UAAU,EAAG;MACpCC,MAAM,GAAGD,OAAO,CACfT,WAAW,CAAEE,qBAAsB,CAAC,CAACG,gBAAgB,CAAC,CACvD,CAAC;IACF;IAEAC,mBAAmB,CAAEI,MAAO,CAAC;EAC9B,CAAC,EACD,CAAEJ,mBAAmB,CACtB,CAAC,CACD;AACF"}
1
+ {"version":3,"names":["useEffect","useCallback","useSelect","useDispatch","select","selectStore","store","customizeWidgetsStore","useInserter","inserter","isInserterOpened","setIsInserterOpened","open","close","updater","isOpen"],"sources":["@wordpress/customize-widgets/src/components/inserter/use-inserter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, select as selectStore } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as customizeWidgetsStore } from '../../store';\n\nexport default function useInserter( inserter ) {\n\tconst isInserterOpened = useSelect(\n\t\t( select ) => select( customizeWidgetsStore ).isInserterOpened(),\n\t\t[]\n\t);\n\tconst { setIsInserterOpened } = useDispatch( customizeWidgetsStore );\n\n\tuseEffect( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\tinserter.open();\n\t\t} else {\n\t\t\tinserter.close();\n\t\t}\n\t}, [ inserter, isInserterOpened ] );\n\n\treturn [\n\t\tisInserterOpened,\n\t\tuseCallback(\n\t\t\t( updater ) => {\n\t\t\t\tlet isOpen = updater;\n\t\t\t\tif ( typeof updater === 'function' ) {\n\t\t\t\t\tisOpen = updater(\n\t\t\t\t\t\tselectStore( customizeWidgetsStore ).isInserterOpened()\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tsetIsInserterOpened( isOpen );\n\t\t\t},\n\t\t\t[ setIsInserterOpened ]\n\t\t),\n\t];\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,oBAAoB;AAC3D,SAASC,SAAS,EAAEC,WAAW,EAAEC,MAAM,IAAIC,WAAW,QAAQ,iBAAiB;;AAE/E;AACA;AACA;AACA,SAASC,KAAK,IAAIC,qBAAqB,QAAQ,aAAa;AAE5D,eAAe,SAASC,WAAWA,CAAEC,QAAQ,EAAG;EAC/C,MAAMC,gBAAgB,GAAGR,SAAS,CAC/BE,MAAM,IAAMA,MAAM,CAAEG,qBAAsB,CAAC,CAACG,gBAAgB,CAAC,CAAC,EAChE,EACD,CAAC;EACD,MAAM;IAAEC;EAAoB,CAAC,GAAGR,WAAW,CAAEI,qBAAsB,CAAC;EAEpEP,SAAS,CAAE,MAAM;IAChB,IAAKU,gBAAgB,EAAG;MACvBD,QAAQ,CAACG,IAAI,CAAC,CAAC;IAChB,CAAC,MAAM;MACNH,QAAQ,CAACI,KAAK,CAAC,CAAC;IACjB;EACD,CAAC,EAAE,CAAEJ,QAAQ,EAAEC,gBAAgB,CAAG,CAAC;EAEnC,OAAO,CACNA,gBAAgB,EAChBT,WAAW,CACRa,OAAO,IAAM;IACd,IAAIC,MAAM,GAAGD,OAAO;IACpB,IAAK,OAAOA,OAAO,KAAK,UAAU,EAAG;MACpCC,MAAM,GAAGD,OAAO,CACfT,WAAW,CAAEE,qBAAsB,CAAC,CAACG,gBAAgB,CAAC,CACvD,CAAC;IACF;IAEAC,mBAAmB,CAAEI,MAAO,CAAC;EAC9B,CAAC,EACD,CAAEJ,mBAAmB,CACtB,CAAC,CACD;AACF","ignoreList":[]}
@@ -54,6 +54,10 @@ export const textFormattingShortcuts = [{
54
54
  modifier: 'access',
55
55
  character: '0'
56
56
  },
57
+ aliases: [{
58
+ modifier: 'access',
59
+ character: '7'
60
+ }],
57
61
  description: __('Convert the current heading to a paragraph.')
58
62
  }, {
59
63
  keyCombination: {
@@ -1 +1 @@
1
- {"version":3,"names":["__","textFormattingShortcuts","keyCombination","modifier","character","description"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/config.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const textFormattingShortcuts = [\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'b' },\n\t\tdescription: __( 'Make the selected text bold.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'i' },\n\t\tdescription: __( 'Make the selected text italic.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'k' },\n\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'k' },\n\t\tdescription: __( 'Remove a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { character: '[[' },\n\t\tdescription: __( 'Insert a link to a post or page.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'u' },\n\t\tdescription: __( 'Underline the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'd' },\n\t\tdescription: __( 'Strikethrough the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'x' },\n\t\tdescription: __( 'Make the selected text inline code.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: '0' },\n\t\tdescription: __( 'Convert the current heading to a paragraph.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: '1-6' },\n\t\tdescription: __(\n\t\t\t'Convert the current paragraph or heading to a heading of level 1 to 6.'\n\t\t),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'SPACE' },\n\t\tdescription: __( 'Add non breaking space.' ),\n\t},\n];\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AAEpC,OAAO,MAAMC,uBAAuB,GAAG,CACtC;EACCC,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,8BAA+B;AACjD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,gCAAiC;AACnD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,wCAAyC;AAC3D,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,cAAc;IAAEC,SAAS,EAAE;EAAI,CAAC;EAC5DC,WAAW,EAAEL,EAAE,CAAE,gBAAiB;AACnC,CAAC,EACD;EACCE,cAAc,EAAE;IAAEE,SAAS,EAAE;EAAK,CAAC;EACnCC,WAAW,EAAEL,EAAE,CAAE,kCAAmC;AACrD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,8BAA+B;AACjD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,SAAS,EAAE;EAAI,CAAC;EACtDC,WAAW,EAAEL,EAAE,CAAE,kCAAmC;AACrD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,SAAS,EAAE;EAAI,CAAC;EACtDC,WAAW,EAAEL,EAAE,CAAE,qCAAsC;AACxD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,SAAS,EAAE;EAAI,CAAC;EACtDC,WAAW,EAAEL,EAAE,CAAE,6CAA8C;AAChE,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,SAAS,EAAE;EAAM,CAAC;EACxDC,WAAW,EAAEL,EAAE,CACd,wEACD;AACD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,cAAc;IAAEC,SAAS,EAAE;EAAQ,CAAC;EAChEC,WAAW,EAAEL,EAAE,CAAE,yBAA0B;AAC5C,CAAC,CACD"}
1
+ {"version":3,"names":["__","textFormattingShortcuts","keyCombination","modifier","character","description","aliases"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/config.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const textFormattingShortcuts = [\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'b' },\n\t\tdescription: __( 'Make the selected text bold.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'i' },\n\t\tdescription: __( 'Make the selected text italic.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'k' },\n\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'k' },\n\t\tdescription: __( 'Remove a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { character: '[[' },\n\t\tdescription: __( 'Insert a link to a post or page.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'u' },\n\t\tdescription: __( 'Underline the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'd' },\n\t\tdescription: __( 'Strikethrough the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'x' },\n\t\tdescription: __( 'Make the selected text inline code.' ),\n\t},\n\t{\n\t\tkeyCombination: {\n\t\t\tmodifier: 'access',\n\t\t\tcharacter: '0',\n\t\t},\n\t\taliases: [\n\t\t\t{\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: '7',\n\t\t\t},\n\t\t],\n\t\tdescription: __( 'Convert the current heading to a paragraph.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: '1-6' },\n\t\tdescription: __(\n\t\t\t'Convert the current paragraph or heading to a heading of level 1 to 6.'\n\t\t),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'SPACE' },\n\t\tdescription: __( 'Add non breaking space.' ),\n\t},\n];\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AAEpC,OAAO,MAAMC,uBAAuB,GAAG,CACtC;EACCC,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,8BAA+B;AACjD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,gCAAiC;AACnD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,wCAAyC;AAC3D,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,cAAc;IAAEC,SAAS,EAAE;EAAI,CAAC;EAC5DC,WAAW,EAAEL,EAAE,CAAE,gBAAiB;AACnC,CAAC,EACD;EACCE,cAAc,EAAE;IAAEE,SAAS,EAAE;EAAK,CAAC;EACnCC,WAAW,EAAEL,EAAE,CAAE,kCAAmC;AACrD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,SAAS;IAAEC,SAAS,EAAE;EAAI,CAAC;EACvDC,WAAW,EAAEL,EAAE,CAAE,8BAA+B;AACjD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,SAAS,EAAE;EAAI,CAAC;EACtDC,WAAW,EAAEL,EAAE,CAAE,kCAAmC;AACrD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,SAAS,EAAE;EAAI,CAAC;EACtDC,WAAW,EAAEL,EAAE,CAAE,qCAAsC;AACxD,CAAC,EACD;EACCE,cAAc,EAAE;IACfC,QAAQ,EAAE,QAAQ;IAClBC,SAAS,EAAE;EACZ,CAAC;EACDE,OAAO,EAAE,CACR;IACCH,QAAQ,EAAE,QAAQ;IAClBC,SAAS,EAAE;EACZ,CAAC,CACD;EACDC,WAAW,EAAEL,EAAE,CAAE,6CAA8C;AAChE,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,QAAQ;IAAEC,SAAS,EAAE;EAAM,CAAC;EACxDC,WAAW,EAAEL,EAAE,CACd,wEACD;AACD,CAAC,EACD;EACCE,cAAc,EAAE;IAAEC,QAAQ,EAAE,cAAc;IAAEC,SAAS,EAAE;EAAQ,CAAC;EAChEC,WAAW,EAAEL,EAAE,CAAE,yBAA0B;AAC5C,CAAC,CACD","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","store","keyboardShortcutsStore","Shortcut","DynamicShortcut","name","keyCombination","description","aliases","select","getShortcutKeyCombination","getShortcutDescription","getShortcutAliases","createElement"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/dynamic-shortcut.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport Shortcut from './shortcut';\n\nfunction DynamicShortcut( { name } ) {\n\tconst { keyCombination, description, aliases } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetShortcutKeyCombination,\n\t\t\t\tgetShortcutDescription,\n\t\t\t\tgetShortcutAliases,\n\t\t\t} = select( keyboardShortcutsStore );\n\n\t\t\treturn {\n\t\t\t\tkeyCombination: getShortcutKeyCombination( name ),\n\t\t\t\taliases: getShortcutAliases( name ),\n\t\t\t\tdescription: getShortcutDescription( name ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\n\tif ( ! keyCombination ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Shortcut\n\t\t\tkeyCombination={ keyCombination }\n\t\t\tdescription={ description }\n\t\t\taliases={ aliases }\n\t\t/>\n\t);\n}\n\nexport default DynamicShortcut;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,sBAAsB,QAAQ,+BAA+B;;AAE/E;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,YAAY;AAEjC,SAASC,eAAeA,CAAE;EAAEC;AAAK,CAAC,EAAG;EACpC,MAAM;IAAEC,cAAc;IAAEC,WAAW;IAAEC;EAAQ,CAAC,GAAGR,SAAS,CACvDS,MAAM,IAAM;IACb,MAAM;MACLC,yBAAyB;MACzBC,sBAAsB;MACtBC;IACD,CAAC,GAAGH,MAAM,CAAEP,sBAAuB,CAAC;IAEpC,OAAO;MACNI,cAAc,EAAEI,yBAAyB,CAAEL,IAAK,CAAC;MACjDG,OAAO,EAAEI,kBAAkB,CAAEP,IAAK,CAAC;MACnCE,WAAW,EAAEI,sBAAsB,CAAEN,IAAK;IAC3C,CAAC;EACF,CAAC,EACD,CAAEA,IAAI,CACP,CAAC;EAED,IAAK,CAAEC,cAAc,EAAG;IACvB,OAAO,IAAI;EACZ;EAEA,OACCO,aAAA,CAACV,QAAQ;IACRG,cAAc,EAAGA,cAAgB;IACjCC,WAAW,EAAGA,WAAa;IAC3BC,OAAO,EAAGA;EAAS,CACnB,CAAC;AAEJ;AAEA,eAAeJ,eAAe"}
1
+ {"version":3,"names":["useSelect","store","keyboardShortcutsStore","Shortcut","DynamicShortcut","name","keyCombination","description","aliases","select","getShortcutKeyCombination","getShortcutDescription","getShortcutAliases","createElement"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/dynamic-shortcut.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport Shortcut from './shortcut';\n\nfunction DynamicShortcut( { name } ) {\n\tconst { keyCombination, description, aliases } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetShortcutKeyCombination,\n\t\t\t\tgetShortcutDescription,\n\t\t\t\tgetShortcutAliases,\n\t\t\t} = select( keyboardShortcutsStore );\n\n\t\t\treturn {\n\t\t\t\tkeyCombination: getShortcutKeyCombination( name ),\n\t\t\t\taliases: getShortcutAliases( name ),\n\t\t\t\tdescription: getShortcutDescription( name ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\n\tif ( ! keyCombination ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Shortcut\n\t\t\tkeyCombination={ keyCombination }\n\t\t\tdescription={ description }\n\t\t\taliases={ aliases }\n\t\t/>\n\t);\n}\n\nexport default DynamicShortcut;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,sBAAsB,QAAQ,+BAA+B;;AAE/E;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,YAAY;AAEjC,SAASC,eAAeA,CAAE;EAAEC;AAAK,CAAC,EAAG;EACpC,MAAM;IAAEC,cAAc;IAAEC,WAAW;IAAEC;EAAQ,CAAC,GAAGR,SAAS,CACvDS,MAAM,IAAM;IACb,MAAM;MACLC,yBAAyB;MACzBC,sBAAsB;MACtBC;IACD,CAAC,GAAGH,MAAM,CAAEP,sBAAuB,CAAC;IAEpC,OAAO;MACNI,cAAc,EAAEI,yBAAyB,CAAEL,IAAK,CAAC;MACjDG,OAAO,EAAEI,kBAAkB,CAAEP,IAAK,CAAC;MACnCE,WAAW,EAAEI,sBAAsB,CAAEN,IAAK;IAC3C,CAAC;EACF,CAAC,EACD,CAAEA,IAAI,CACP,CAAC;EAED,IAAK,CAAEC,cAAc,EAAG;IACvB,OAAO,IAAI;EACZ;EAEA,OACCO,aAAA,CAACV,QAAQ;IACRG,cAAc,EAAGA,cAAgB;IACjCC,WAAW,EAAGA,WAAa;IAC3BC,OAAO,EAAGA;EAAS,CACnB,CAAC;AAEJ;AAEA,eAAeJ,eAAe","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","Modal","__","useShortcut","store","keyboardShortcutsStore","useDispatch","useSelect","textFormattingShortcuts","Shortcut","DynamicShortcut","ShortcutList","shortcuts","createElement","className","role","map","shortcut","index","key","name","ShortcutSection","title","ShortcutCategorySection","categoryName","additionalShortcuts","categoryShortcuts","select","getCategoryShortcuts","concat","KeyboardShortcutHelpModal","isModalActive","toggleModal","registerShortcut","category","description","keyCombination","modifier","character","onRequestClose","ariaLabel"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { textFormattingShortcuts } from './config';\nimport Shortcut from './shortcut';\nimport DynamicShortcut from './dynamic-shortcut';\n\nconst ShortcutList = ( { shortcuts } ) => (\n\t/*\n\t * Disable reason: The `list` ARIA role is redundant but\n\t * Safari+VoiceOver won't announce the list otherwise.\n\t */\n\t/* eslint-disable jsx-a11y/no-redundant-roles */\n\t<ul\n\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-list\"\n\t\trole=\"list\"\n\t>\n\t\t{ shortcuts.map( ( shortcut, index ) => (\n\t\t\t<li\n\t\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut\"\n\t\t\t\tkey={ index }\n\t\t\t>\n\t\t\t\t{ typeof shortcut === 'string' ? (\n\t\t\t\t\t<DynamicShortcut name={ shortcut } />\n\t\t\t\t) : (\n\t\t\t\t\t<Shortcut { ...shortcut } />\n\t\t\t\t) }\n\t\t\t</li>\n\t\t) ) }\n\t</ul>\n\t/* eslint-enable jsx-a11y/no-redundant-roles */\n);\n\nconst ShortcutSection = ( { title, shortcuts, className } ) => (\n\t<section\n\t\tclassName={ classnames(\n\t\t\t'customize-widgets-keyboard-shortcut-help-modal__section',\n\t\t\tclassName\n\t\t) }\n\t>\n\t\t{ !! title && (\n\t\t\t<h2 className=\"customize-widgets-keyboard-shortcut-help-modal__section-title\">\n\t\t\t\t{ title }\n\t\t\t</h2>\n\t\t) }\n\t\t<ShortcutList shortcuts={ shortcuts } />\n\t</section>\n);\n\nconst ShortcutCategorySection = ( {\n\ttitle,\n\tcategoryName,\n\tadditionalShortcuts = [],\n} ) => {\n\tconst categoryShortcuts = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( keyboardShortcutsStore ).getCategoryShortcuts(\n\t\t\t\tcategoryName\n\t\t\t);\n\t\t},\n\t\t[ categoryName ]\n\t);\n\n\treturn (\n\t\t<ShortcutSection\n\t\t\ttitle={ title }\n\t\t\tshortcuts={ categoryShortcuts.concat( additionalShortcuts ) }\n\t\t/>\n\t);\n};\n\nexport default function KeyboardShortcutHelpModal( {\n\tisModalActive,\n\ttoggleModal,\n} ) {\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tregisterShortcut( {\n\t\tname: 'core/customize-widgets/keyboard-shortcuts',\n\t\tcategory: 'main',\n\t\tdescription: __( 'Display these keyboard shortcuts.' ),\n\t\tkeyCombination: {\n\t\t\tmodifier: 'access',\n\t\t\tcharacter: 'h',\n\t\t},\n\t} );\n\n\tuseShortcut( 'core/customize-widgets/keyboard-shortcuts', toggleModal );\n\n\tif ( ! isModalActive ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal\"\n\t\t\ttitle={ __( 'Keyboard shortcuts' ) }\n\t\t\tonRequestClose={ toggleModal }\n\t\t>\n\t\t\t<ShortcutSection\n\t\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__main-shortcuts\"\n\t\t\t\tshortcuts={ [ 'core/customize-widgets/keyboard-shortcuts' ] }\n\t\t\t/>\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Global shortcuts' ) }\n\t\t\t\tcategoryName=\"global\"\n\t\t\t/>\n\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Selection shortcuts' ) }\n\t\t\t\tcategoryName=\"selection\"\n\t\t\t/>\n\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Block shortcuts' ) }\n\t\t\t\tcategoryName=\"block\"\n\t\t\t\tadditionalShortcuts={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tkeyCombination: { character: '/' },\n\t\t\t\t\t\tdescription: __(\n\t\t\t\t\t\t\t'Change the block type after adding a new paragraph.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t/* translators: The forward-slash character. e.g. '/'. */\n\t\t\t\t\t\tariaLabel: __( 'Forward-slash' ),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t/>\n\t\t\t<ShortcutSection\n\t\t\t\ttitle={ __( 'Text formatting' ) }\n\t\t\t\tshortcuts={ textFormattingShortcuts }\n\t\t\t/>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","Modal","__","useShortcut","store","keyboardShortcutsStore","useDispatch","useSelect","textFormattingShortcuts","Shortcut","DynamicShortcut","ShortcutList","shortcuts","createElement","className","role","map","shortcut","index","key","name","ShortcutSection","title","ShortcutCategorySection","categoryName","additionalShortcuts","categoryShortcuts","select","getCategoryShortcuts","concat","KeyboardShortcutHelpModal","isModalActive","toggleModal","registerShortcut","category","description","keyCombination","modifier","character","onRequestClose","ariaLabel"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { textFormattingShortcuts } from './config';\nimport Shortcut from './shortcut';\nimport DynamicShortcut from './dynamic-shortcut';\n\nconst ShortcutList = ( { shortcuts } ) => (\n\t/*\n\t * Disable reason: The `list` ARIA role is redundant but\n\t * Safari+VoiceOver won't announce the list otherwise.\n\t */\n\t/* eslint-disable jsx-a11y/no-redundant-roles */\n\t<ul\n\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-list\"\n\t\trole=\"list\"\n\t>\n\t\t{ shortcuts.map( ( shortcut, index ) => (\n\t\t\t<li\n\t\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut\"\n\t\t\t\tkey={ index }\n\t\t\t>\n\t\t\t\t{ typeof shortcut === 'string' ? (\n\t\t\t\t\t<DynamicShortcut name={ shortcut } />\n\t\t\t\t) : (\n\t\t\t\t\t<Shortcut { ...shortcut } />\n\t\t\t\t) }\n\t\t\t</li>\n\t\t) ) }\n\t</ul>\n\t/* eslint-enable jsx-a11y/no-redundant-roles */\n);\n\nconst ShortcutSection = ( { title, shortcuts, className } ) => (\n\t<section\n\t\tclassName={ classnames(\n\t\t\t'customize-widgets-keyboard-shortcut-help-modal__section',\n\t\t\tclassName\n\t\t) }\n\t>\n\t\t{ !! title && (\n\t\t\t<h2 className=\"customize-widgets-keyboard-shortcut-help-modal__section-title\">\n\t\t\t\t{ title }\n\t\t\t</h2>\n\t\t) }\n\t\t<ShortcutList shortcuts={ shortcuts } />\n\t</section>\n);\n\nconst ShortcutCategorySection = ( {\n\ttitle,\n\tcategoryName,\n\tadditionalShortcuts = [],\n} ) => {\n\tconst categoryShortcuts = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( keyboardShortcutsStore ).getCategoryShortcuts(\n\t\t\t\tcategoryName\n\t\t\t);\n\t\t},\n\t\t[ categoryName ]\n\t);\n\n\treturn (\n\t\t<ShortcutSection\n\t\t\ttitle={ title }\n\t\t\tshortcuts={ categoryShortcuts.concat( additionalShortcuts ) }\n\t\t/>\n\t);\n};\n\nexport default function KeyboardShortcutHelpModal( {\n\tisModalActive,\n\ttoggleModal,\n} ) {\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tregisterShortcut( {\n\t\tname: 'core/customize-widgets/keyboard-shortcuts',\n\t\tcategory: 'main',\n\t\tdescription: __( 'Display these keyboard shortcuts.' ),\n\t\tkeyCombination: {\n\t\t\tmodifier: 'access',\n\t\t\tcharacter: 'h',\n\t\t},\n\t} );\n\n\tuseShortcut( 'core/customize-widgets/keyboard-shortcuts', toggleModal );\n\n\tif ( ! isModalActive ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal\"\n\t\t\ttitle={ __( 'Keyboard shortcuts' ) }\n\t\t\tonRequestClose={ toggleModal }\n\t\t>\n\t\t\t<ShortcutSection\n\t\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__main-shortcuts\"\n\t\t\t\tshortcuts={ [ 'core/customize-widgets/keyboard-shortcuts' ] }\n\t\t\t/>\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Global shortcuts' ) }\n\t\t\t\tcategoryName=\"global\"\n\t\t\t/>\n\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Selection shortcuts' ) }\n\t\t\t\tcategoryName=\"selection\"\n\t\t\t/>\n\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Block shortcuts' ) }\n\t\t\t\tcategoryName=\"block\"\n\t\t\t\tadditionalShortcuts={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tkeyCombination: { character: '/' },\n\t\t\t\t\t\tdescription: __(\n\t\t\t\t\t\t\t'Change the block type after adding a new paragraph.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t/* translators: The forward-slash character. e.g. '/'. */\n\t\t\t\t\t\tariaLabel: __( 'Forward-slash' ),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t/>\n\t\t\t<ShortcutSection\n\t\t\t\ttitle={ __( 'Text formatting' ) }\n\t\t\t\tshortcuts={ textFormattingShortcuts }\n\t\t\t/>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Fragment","displayShortcutList","shortcutAriaLabel","KeyCombination","keyCombination","forceAriaLabel","shortcut","modifier","character","ariaLabel","createElement","className","Array","isArray","map","index","key","Shortcut","description","aliases","alias"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/shortcut.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Fragment } from '@wordpress/element';\nimport { displayShortcutList, shortcutAriaLabel } from '@wordpress/keycodes';\n\nfunction KeyCombination( { keyCombination, forceAriaLabel } ) {\n\tconst shortcut = keyCombination.modifier\n\t\t? displayShortcutList[ keyCombination.modifier ](\n\t\t\t\tkeyCombination.character\n\t\t )\n\t\t: keyCombination.character;\n\tconst ariaLabel = keyCombination.modifier\n\t\t? shortcutAriaLabel[ keyCombination.modifier ](\n\t\t\t\tkeyCombination.character\n\t\t )\n\t\t: keyCombination.character;\n\n\treturn (\n\t\t<kbd\n\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination\"\n\t\t\taria-label={ forceAriaLabel || ariaLabel }\n\t\t>\n\t\t\t{ ( Array.isArray( shortcut ) ? shortcut : [ shortcut ] ).map(\n\t\t\t\t( character, index ) => {\n\t\t\t\t\tif ( character === '+' ) {\n\t\t\t\t\t\treturn <Fragment key={ index }>{ character }</Fragment>;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<kbd\n\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-key\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ character }\n\t\t\t\t\t\t</kbd>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t) }\n\t\t</kbd>\n\t);\n}\n\nfunction Shortcut( { description, keyCombination, aliases = [], ariaLabel } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-description\">\n\t\t\t\t{ description }\n\t\t\t</div>\n\t\t\t<div className=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-term\">\n\t\t\t\t<KeyCombination\n\t\t\t\t\tkeyCombination={ keyCombination }\n\t\t\t\t\tforceAriaLabel={ ariaLabel }\n\t\t\t\t/>\n\t\t\t\t{ aliases.map( ( alias, index ) => (\n\t\t\t\t\t<KeyCombination\n\t\t\t\t\t\tkeyCombination={ alias }\n\t\t\t\t\t\tforceAriaLabel={ ariaLabel }\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default Shortcut;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,mBAAmB,EAAEC,iBAAiB,QAAQ,qBAAqB;AAE5E,SAASC,cAAcA,CAAE;EAAEC,cAAc;EAAEC;AAAe,CAAC,EAAG;EAC7D,MAAMC,QAAQ,GAAGF,cAAc,CAACG,QAAQ,GACrCN,mBAAmB,CAAEG,cAAc,CAACG,QAAQ,CAAE,CAC9CH,cAAc,CAACI,SACf,CAAC,GACDJ,cAAc,CAACI,SAAS;EAC3B,MAAMC,SAAS,GAAGL,cAAc,CAACG,QAAQ,GACtCL,iBAAiB,CAAEE,cAAc,CAACG,QAAQ,CAAE,CAC5CH,cAAc,CAACI,SACf,CAAC,GACDJ,cAAc,CAACI,SAAS;EAE3B,OACCE,aAAA;IACCC,SAAS,EAAC,0EAA0E;IACpF,cAAaN,cAAc,IAAII;EAAW,GAExC,CAAEG,KAAK,CAACC,OAAO,CAAEP,QAAS,CAAC,GAAGA,QAAQ,GAAG,CAAEA,QAAQ,CAAE,EAAGQ,GAAG,CAC5D,CAAEN,SAAS,EAAEO,KAAK,KAAM;IACvB,IAAKP,SAAS,KAAK,GAAG,EAAG;MACxB,OAAOE,aAAA,CAACV,QAAQ;QAACgB,GAAG,EAAGD;MAAO,GAAGP,SAAqB,CAAC;IACxD;IAEA,OACCE,aAAA;MACCM,GAAG,EAAGD,KAAO;MACbJ,SAAS,EAAC;IAA8D,GAEtEH,SACE,CAAC;EAER,CACD,CACI,CAAC;AAER;AAEA,SAASS,QAAQA,CAAE;EAAEC,WAAW;EAAEd,cAAc;EAAEe,OAAO,GAAG,EAAE;EAAEV;AAAU,CAAC,EAAG;EAC7E,OACCC,aAAA,CAAAV,QAAA,QACCU,aAAA;IAAKC,SAAS,EAAC;EAAsE,GAClFO,WACE,CAAC,EACNR,aAAA;IAAKC,SAAS,EAAC;EAA+D,GAC7ED,aAAA,CAACP,cAAc;IACdC,cAAc,EAAGA,cAAgB;IACjCC,cAAc,EAAGI;EAAW,CAC5B,CAAC,EACAU,OAAO,CAACL,GAAG,CAAE,CAAEM,KAAK,EAAEL,KAAK,KAC5BL,aAAA,CAACP,cAAc;IACdC,cAAc,EAAGgB,KAAO;IACxBf,cAAc,EAAGI,SAAW;IAC5BO,GAAG,EAAGD;EAAO,CACb,CACA,CACE,CACJ,CAAC;AAEL;AAEA,eAAeE,QAAQ"}
1
+ {"version":3,"names":["Fragment","displayShortcutList","shortcutAriaLabel","KeyCombination","keyCombination","forceAriaLabel","shortcut","modifier","character","ariaLabel","createElement","className","Array","isArray","map","index","key","Shortcut","description","aliases","alias"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcut-help-modal/shortcut.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Fragment } from '@wordpress/element';\nimport { displayShortcutList, shortcutAriaLabel } from '@wordpress/keycodes';\n\nfunction KeyCombination( { keyCombination, forceAriaLabel } ) {\n\tconst shortcut = keyCombination.modifier\n\t\t? displayShortcutList[ keyCombination.modifier ](\n\t\t\t\tkeyCombination.character\n\t\t )\n\t\t: keyCombination.character;\n\tconst ariaLabel = keyCombination.modifier\n\t\t? shortcutAriaLabel[ keyCombination.modifier ](\n\t\t\t\tkeyCombination.character\n\t\t )\n\t\t: keyCombination.character;\n\n\treturn (\n\t\t<kbd\n\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination\"\n\t\t\taria-label={ forceAriaLabel || ariaLabel }\n\t\t>\n\t\t\t{ ( Array.isArray( shortcut ) ? shortcut : [ shortcut ] ).map(\n\t\t\t\t( character, index ) => {\n\t\t\t\t\tif ( character === '+' ) {\n\t\t\t\t\t\treturn <Fragment key={ index }>{ character }</Fragment>;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<kbd\n\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\tclassName=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-key\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ character }\n\t\t\t\t\t\t</kbd>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t) }\n\t\t</kbd>\n\t);\n}\n\nfunction Shortcut( { description, keyCombination, aliases = [], ariaLabel } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-description\">\n\t\t\t\t{ description }\n\t\t\t</div>\n\t\t\t<div className=\"customize-widgets-keyboard-shortcut-help-modal__shortcut-term\">\n\t\t\t\t<KeyCombination\n\t\t\t\t\tkeyCombination={ keyCombination }\n\t\t\t\t\tforceAriaLabel={ ariaLabel }\n\t\t\t\t/>\n\t\t\t\t{ aliases.map( ( alias, index ) => (\n\t\t\t\t\t<KeyCombination\n\t\t\t\t\t\tkeyCombination={ alias }\n\t\t\t\t\t\tforceAriaLabel={ ariaLabel }\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default Shortcut;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,mBAAmB,EAAEC,iBAAiB,QAAQ,qBAAqB;AAE5E,SAASC,cAAcA,CAAE;EAAEC,cAAc;EAAEC;AAAe,CAAC,EAAG;EAC7D,MAAMC,QAAQ,GAAGF,cAAc,CAACG,QAAQ,GACrCN,mBAAmB,CAAEG,cAAc,CAACG,QAAQ,CAAE,CAC9CH,cAAc,CAACI,SACf,CAAC,GACDJ,cAAc,CAACI,SAAS;EAC3B,MAAMC,SAAS,GAAGL,cAAc,CAACG,QAAQ,GACtCL,iBAAiB,CAAEE,cAAc,CAACG,QAAQ,CAAE,CAC5CH,cAAc,CAACI,SACf,CAAC,GACDJ,cAAc,CAACI,SAAS;EAE3B,OACCE,aAAA;IACCC,SAAS,EAAC,0EAA0E;IACpF,cAAaN,cAAc,IAAII;EAAW,GAExC,CAAEG,KAAK,CAACC,OAAO,CAAEP,QAAS,CAAC,GAAGA,QAAQ,GAAG,CAAEA,QAAQ,CAAE,EAAGQ,GAAG,CAC5D,CAAEN,SAAS,EAAEO,KAAK,KAAM;IACvB,IAAKP,SAAS,KAAK,GAAG,EAAG;MACxB,OAAOE,aAAA,CAACV,QAAQ;QAACgB,GAAG,EAAGD;MAAO,GAAGP,SAAqB,CAAC;IACxD;IAEA,OACCE,aAAA;MACCM,GAAG,EAAGD,KAAO;MACbJ,SAAS,EAAC;IAA8D,GAEtEH,SACE,CAAC;EAER,CACD,CACI,CAAC;AAER;AAEA,SAASS,QAAQA,CAAE;EAAEC,WAAW;EAAEd,cAAc;EAAEe,OAAO,GAAG,EAAE;EAAEV;AAAU,CAAC,EAAG;EAC7E,OACCC,aAAA,CAAAV,QAAA,QACCU,aAAA;IAAKC,SAAS,EAAC;EAAsE,GAClFO,WACE,CAAC,EACNR,aAAA;IAAKC,SAAS,EAAC;EAA+D,GAC7ED,aAAA,CAACP,cAAc;IACdC,cAAc,EAAGA,cAAgB;IACjCC,cAAc,EAAGI;EAAW,CAC5B,CAAC,EACAU,OAAO,CAACL,GAAG,CAAE,CAAEM,KAAK,EAAEL,KAAK,KAC5BL,aAAA,CAACP,cAAc;IACdC,cAAc,EAAGgB,KAAO;IACxBf,cAAc,EAAGI,SAAW;IAC5BO,GAAG,EAAGD;EAAO,CACb,CACA,CACE,CACJ,CAAC;AAEL;AAEA,eAAeE,QAAQ","ignoreList":[]}
@@ -4,45 +4,13 @@
4
4
  import { useEffect } from '@wordpress/element';
5
5
  import { useShortcut, store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
6
6
  import { isAppleOS } from '@wordpress/keycodes';
7
- import { useDispatch, useSelect } from '@wordpress/data';
7
+ import { useDispatch } from '@wordpress/data';
8
8
  import { __ } from '@wordpress/i18n';
9
- import { store as blockEditorStore } from '@wordpress/block-editor';
10
- import { createBlock } from '@wordpress/blocks';
11
9
  function KeyboardShortcuts({
12
10
  undo,
13
11
  redo,
14
12
  save
15
13
  }) {
16
- const {
17
- replaceBlocks
18
- } = useDispatch(blockEditorStore);
19
- const {
20
- getBlockName,
21
- getSelectedBlockClientId,
22
- getBlockAttributes
23
- } = useSelect(blockEditorStore);
24
- const handleTextLevelShortcut = (event, level) => {
25
- event.preventDefault();
26
- const destinationBlockName = level === 0 ? 'core/paragraph' : 'core/heading';
27
- const currentClientId = getSelectedBlockClientId();
28
- if (currentClientId === null) {
29
- return;
30
- }
31
- const blockName = getBlockName(currentClientId);
32
- if (blockName !== 'core/paragraph' && blockName !== 'core/heading') {
33
- return;
34
- }
35
- const attributes = getBlockAttributes(currentClientId);
36
- const textAlign = blockName === 'core/paragraph' ? 'align' : 'textAlign';
37
- const destinationTextAlign = destinationBlockName === 'core/paragraph' ? 'align' : 'textAlign';
38
- replaceBlocks(currentClientId, createBlock(destinationBlockName, {
39
- level,
40
- content: attributes.content,
41
- ...{
42
- [destinationTextAlign]: attributes[textAlign]
43
- }
44
- }));
45
- };
46
14
  useShortcut('core/customize-widgets/undo', event => {
47
15
  undo();
48
16
  event.preventDefault();
@@ -55,13 +23,6 @@ function KeyboardShortcuts({
55
23
  event.preventDefault();
56
24
  save();
57
25
  });
58
- useShortcut('core/customize-widgets/transform-heading-to-paragraph', event => handleTextLevelShortcut(event, 0));
59
- [1, 2, 3, 4, 5, 6].forEach(level => {
60
- //the loop is based off on a constant therefore
61
- //the hook will execute the same way every time
62
- //eslint-disable-next-line react-hooks/rules-of-hooks
63
- useShortcut(`core/customize-widgets/transform-paragraph-to-heading-${level}`, event => handleTextLevelShortcut(event, level));
64
- });
65
26
  return null;
66
27
  }
67
28
  function KeyboardShortcutsRegister() {
@@ -105,26 +66,6 @@ function KeyboardShortcutsRegister() {
105
66
  character: 's'
106
67
  }
107
68
  });
108
- registerShortcut({
109
- name: 'core/customize-widgets/transform-heading-to-paragraph',
110
- category: 'block-library',
111
- description: __('Transform heading to paragraph.'),
112
- keyCombination: {
113
- modifier: 'access',
114
- character: `0`
115
- }
116
- });
117
- [1, 2, 3, 4, 5, 6].forEach(level => {
118
- registerShortcut({
119
- name: `core/customize-widgets/transform-paragraph-to-heading-${level}`,
120
- category: 'block-library',
121
- description: __('Transform paragraph to heading.'),
122
- keyCombination: {
123
- modifier: 'access',
124
- character: `${level}`
125
- }
126
- });
127
- });
128
69
  return () => {
129
70
  unregisterShortcut('core/customize-widgets/undo');
130
71
  unregisterShortcut('core/customize-widgets/redo');
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useShortcut","store","keyboardShortcutsStore","isAppleOS","useDispatch","useSelect","__","blockEditorStore","createBlock","KeyboardShortcuts","undo","redo","save","replaceBlocks","getBlockName","getSelectedBlockClientId","getBlockAttributes","handleTextLevelShortcut","event","level","preventDefault","destinationBlockName","currentClientId","blockName","attributes","textAlign","destinationTextAlign","content","forEach","KeyboardShortcutsRegister","registerShortcut","unregisterShortcut","name","category","description","keyCombination","modifier","character","aliases","Register"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcuts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { isAppleOS } from '@wordpress/keycodes';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { createBlock } from '@wordpress/blocks';\n\nfunction KeyboardShortcuts( { undo, redo, save } ) {\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\tconst { getBlockName, getSelectedBlockClientId, getBlockAttributes } =\n\t\tuseSelect( blockEditorStore );\n\n\tconst handleTextLevelShortcut = ( event, level ) => {\n\t\tevent.preventDefault();\n\t\tconst destinationBlockName =\n\t\t\tlevel === 0 ? 'core/paragraph' : 'core/heading';\n\t\tconst currentClientId = getSelectedBlockClientId();\n\t\tif ( currentClientId === null ) {\n\t\t\treturn;\n\t\t}\n\t\tconst blockName = getBlockName( currentClientId );\n\t\tif ( blockName !== 'core/paragraph' && blockName !== 'core/heading' ) {\n\t\t\treturn;\n\t\t}\n\t\tconst attributes = getBlockAttributes( currentClientId );\n\t\tconst textAlign =\n\t\t\tblockName === 'core/paragraph' ? 'align' : 'textAlign';\n\t\tconst destinationTextAlign =\n\t\t\tdestinationBlockName === 'core/paragraph' ? 'align' : 'textAlign';\n\n\t\treplaceBlocks(\n\t\t\tcurrentClientId,\n\t\t\tcreateBlock( destinationBlockName, {\n\t\t\t\tlevel,\n\t\t\t\tcontent: attributes.content,\n\t\t\t\t...{ [ destinationTextAlign ]: attributes[ textAlign ] },\n\t\t\t} )\n\t\t);\n\t};\n\n\tuseShortcut( 'core/customize-widgets/undo', ( event ) => {\n\t\tundo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/customize-widgets/redo', ( event ) => {\n\t\tredo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/customize-widgets/save', ( event ) => {\n\t\tevent.preventDefault();\n\t\tsave();\n\t} );\n\n\tuseShortcut(\n\t\t'core/customize-widgets/transform-heading-to-paragraph',\n\t\t( event ) => handleTextLevelShortcut( event, 0 )\n\t);\n\n\t[ 1, 2, 3, 4, 5, 6 ].forEach( ( level ) => {\n\t\t//the loop is based off on a constant therefore\n\t\t//the hook will execute the same way every time\n\t\t//eslint-disable-next-line react-hooks/rules-of-hooks\n\t\tuseShortcut(\n\t\t\t`core/customize-widgets/transform-paragraph-to-heading-${ level }`,\n\t\t\t( event ) => handleTextLevelShortcut( event, level )\n\t\t);\n\t} );\n\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\tconst { registerShortcut, unregisterShortcut } = useDispatch(\n\t\tkeyboardShortcutsStore\n\t);\n\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/customize-widgets/undo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Undo your last changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/customize-widgets/redo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Redo your last undo.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t\t// Disable on Apple OS because it conflicts with the browser's\n\t\t\t// history shortcut. It's a fine alias for both Windows and Linux.\n\t\t\t// Since there's no conflict for Ctrl+Shift+Z on both Windows and\n\t\t\t// Linux, we keep it as the default for consistency.\n\t\t\taliases: isAppleOS()\n\t\t\t\t? []\n\t\t\t\t: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmodifier: 'primary',\n\t\t\t\t\t\t\tcharacter: 'y',\n\t\t\t\t\t\t},\n\t\t\t\t ],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/customize-widgets/save',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Save your changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 's',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/customize-widgets/transform-heading-to-paragraph',\n\t\t\tcategory: 'block-library',\n\t\t\tdescription: __( 'Transform heading to paragraph.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: `0`,\n\t\t\t},\n\t\t} );\n\n\t\t[ 1, 2, 3, 4, 5, 6 ].forEach( ( level ) => {\n\t\t\tregisterShortcut( {\n\t\t\t\tname: `core/customize-widgets/transform-paragraph-to-heading-${ level }`,\n\t\t\t\tcategory: 'block-library',\n\t\t\t\tdescription: __( 'Transform paragraph to heading.' ),\n\t\t\t\tkeyCombination: {\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: `${ level }`,\n\t\t\t\t},\n\t\t\t} );\n\t\t} );\n\n\t\treturn () => {\n\t\t\tunregisterShortcut( 'core/customize-widgets/undo' );\n\t\t\tunregisterShortcut( 'core/customize-widgets/redo' );\n\t\t\tunregisterShortcut( 'core/customize-widgets/save' );\n\t\t};\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\nexport default KeyboardShortcuts;\n"],"mappings":"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"}
1
+ {"version":3,"names":["useEffect","useShortcut","store","keyboardShortcutsStore","isAppleOS","useDispatch","__","KeyboardShortcuts","undo","redo","save","event","preventDefault","KeyboardShortcutsRegister","registerShortcut","unregisterShortcut","name","category","description","keyCombination","modifier","character","aliases","Register"],"sources":["@wordpress/customize-widgets/src/components/keyboard-shortcuts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { isAppleOS } from '@wordpress/keycodes';\nimport { useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\nfunction KeyboardShortcuts( { undo, redo, save } ) {\n\tuseShortcut( 'core/customize-widgets/undo', ( event ) => {\n\t\tundo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/customize-widgets/redo', ( event ) => {\n\t\tredo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/customize-widgets/save', ( event ) => {\n\t\tevent.preventDefault();\n\t\tsave();\n\t} );\n\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\tconst { registerShortcut, unregisterShortcut } = useDispatch(\n\t\tkeyboardShortcutsStore\n\t);\n\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/customize-widgets/undo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Undo your last changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/customize-widgets/redo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Redo your last undo.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t\t// Disable on Apple OS because it conflicts with the browser's\n\t\t\t// history shortcut. It's a fine alias for both Windows and Linux.\n\t\t\t// Since there's no conflict for Ctrl+Shift+Z on both Windows and\n\t\t\t// Linux, we keep it as the default for consistency.\n\t\t\taliases: isAppleOS()\n\t\t\t\t? []\n\t\t\t\t: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmodifier: 'primary',\n\t\t\t\t\t\t\tcharacter: 'y',\n\t\t\t\t\t\t},\n\t\t\t\t ],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/customize-widgets/save',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Save your changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 's',\n\t\t\t},\n\t\t} );\n\n\t\treturn () => {\n\t\t\tunregisterShortcut( 'core/customize-widgets/undo' );\n\t\t\tunregisterShortcut( 'core/customize-widgets/redo' );\n\t\t\tunregisterShortcut( 'core/customize-widgets/save' );\n\t\t};\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\nexport default KeyboardShortcuts;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SACCC,WAAW,EACXC,KAAK,IAAIC,sBAAsB,QACzB,+BAA+B;AACtC,SAASC,SAAS,QAAQ,qBAAqB;AAC/C,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,SAASC,iBAAiBA,CAAE;EAAEC,IAAI;EAAEC,IAAI;EAAEC;AAAK,CAAC,EAAG;EAClDT,WAAW,CAAE,6BAA6B,EAAIU,KAAK,IAAM;IACxDH,IAAI,CAAC,CAAC;IACNG,KAAK,CAACC,cAAc,CAAC,CAAC;EACvB,CAAE,CAAC;EAEHX,WAAW,CAAE,6BAA6B,EAAIU,KAAK,IAAM;IACxDF,IAAI,CAAC,CAAC;IACNE,KAAK,CAACC,cAAc,CAAC,CAAC;EACvB,CAAE,CAAC;EAEHX,WAAW,CAAE,6BAA6B,EAAIU,KAAK,IAAM;IACxDA,KAAK,CAACC,cAAc,CAAC,CAAC;IACtBF,IAAI,CAAC,CAAC;EACP,CAAE,CAAC;EAEH,OAAO,IAAI;AACZ;AAEA,SAASG,yBAAyBA,CAAA,EAAG;EACpC,MAAM;IAAEC,gBAAgB;IAAEC;EAAmB,CAAC,GAAGV,WAAW,CAC3DF,sBACD,CAAC;EAEDH,SAAS,CAAE,MAAM;IAChBc,gBAAgB,CAAE;MACjBE,IAAI,EAAE,6BAA6B;MACnCC,QAAQ,EAAE,QAAQ;MAClBC,WAAW,EAAEZ,EAAE,CAAE,yBAA0B,CAAC;MAC5Ca,cAAc,EAAE;QACfC,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHP,gBAAgB,CAAE;MACjBE,IAAI,EAAE,6BAA6B;MACnCC,QAAQ,EAAE,QAAQ;MAClBC,WAAW,EAAEZ,EAAE,CAAE,sBAAuB,CAAC;MACzCa,cAAc,EAAE;QACfC,QAAQ,EAAE,cAAc;QACxBC,SAAS,EAAE;MACZ,CAAC;MACD;MACA;MACA;MACA;MACAC,OAAO,EAAElB,SAAS,CAAC,CAAC,GACjB,EAAE,GACF,CACA;QACCgB,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ,CAAC;IAEL,CAAE,CAAC;IAEHP,gBAAgB,CAAE;MACjBE,IAAI,EAAE,6BAA6B;MACnCC,QAAQ,EAAE,QAAQ;MAClBC,WAAW,EAAEZ,EAAE,CAAE,oBAAqB,CAAC;MACvCa,cAAc,EAAE;QACfC,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEH,OAAO,MAAM;MACZN,kBAAkB,CAAE,6BAA8B,CAAC;MACnDA,kBAAkB,CAAE,6BAA8B,CAAC;MACnDA,kBAAkB,CAAE,6BAA8B,CAAC;IACpD,CAAC;EACF,CAAC,EAAE,CAAED,gBAAgB,CAAG,CAAC;EAEzB,OAAO,IAAI;AACZ;AAEAP,iBAAiB,CAACgB,QAAQ,GAAGV,yBAAyB;AACtD,eAAeN,iBAAiB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["MenuGroup","MenuItem","ToolbarDropdownMenu","VisuallyHidden","useState","__","_x","external","moreVertical","displayShortcut","useShortcut","PreferenceToggleMenuItem","KeyboardShortcutHelpModal","MoreMenu","isKeyboardShortcutsModalActive","setIsKeyboardShortcutsModalVisible","toggleKeyboardShortcutsModal","createElement","Fragment","icon","label","popoverProps","placement","className","toggleProps","tooltipPosition","size","scope","name","info","messageActivated","messageDeactivated","onClick","shortcut","access","role","href","target","rel","as","isModalActive","toggleModal"],"sources":["@wordpress/customize-widgets/src/components/more-menu/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tToolbarDropdownMenu,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __, _x } from '@wordpress/i18n';\nimport { external, moreVertical } from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\nimport { PreferenceToggleMenuItem } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\n\nexport default function MoreMenu() {\n\tconst [\n\t\tisKeyboardShortcutsModalActive,\n\t\tsetIsKeyboardShortcutsModalVisible,\n\t] = useState( false );\n\tconst toggleKeyboardShortcutsModal = () =>\n\t\tsetIsKeyboardShortcutsModalVisible( ! isKeyboardShortcutsModalActive );\n\n\tuseShortcut(\n\t\t'core/customize-widgets/keyboard-shortcuts',\n\t\ttoggleKeyboardShortcutsModal\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarDropdownMenu\n\t\t\t\ticon={ moreVertical }\n\t\t\t\tlabel={ __( 'Options' ) }\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tplacement: 'bottom-end',\n\t\t\t\t\tclassName: 'more-menu-dropdown__content',\n\t\t\t\t} }\n\t\t\t\ttoggleProps={ {\n\t\t\t\t\ttooltipPosition: 'bottom',\n\t\t\t\t\tsize: 'compact',\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ () => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<MenuGroup label={ _x( 'View', 'noun' ) }>\n\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/customize-widgets\"\n\t\t\t\t\t\t\t\tname=\"fixedToolbar\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Top toolbar' ) }\n\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t'Access all block and document tools in a single place'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t'Top toolbar activated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t'Top toolbar deactivated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetIsKeyboardShortcutsModalVisible( true );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tshortcut={ displayShortcut.access( 'h' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Keyboard shortcuts' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/customize-widgets\"\n\t\t\t\t\t\t\t\tname=\"welcomeGuide\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Welcome Guide' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/block-based-widgets-editor/'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Help' ) }\n\t\t\t\t\t\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t/* translators: accessibility text */\n\t\t\t\t\t\t\t\t\t\t__( '(opens in a new tab)' )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup label={ __( 'Preferences' ) }>\n\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/customize-widgets\"\n\t\t\t\t\t\t\t\tname=\"keepCaretInsideBlock\"\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t'Aids screen readers by stopping text caret from leaving blocks.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block activated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block deactivated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</ToolbarDropdownMenu>\n\t\t\t<KeyboardShortcutHelpModal\n\t\t\t\tisModalActive={ isKeyboardShortcutsModalActive }\n\t\t\t\ttoggleModal={ toggleKeyboardShortcutsModal }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["MenuGroup","MenuItem","ToolbarDropdownMenu","VisuallyHidden","useState","__","_x","external","moreVertical","displayShortcut","useShortcut","PreferenceToggleMenuItem","KeyboardShortcutHelpModal","MoreMenu","isKeyboardShortcutsModalActive","setIsKeyboardShortcutsModalVisible","toggleKeyboardShortcutsModal","createElement","Fragment","icon","label","popoverProps","placement","className","toggleProps","tooltipPosition","size","scope","name","info","messageActivated","messageDeactivated","onClick","shortcut","access","role","href","target","rel","as","isModalActive","toggleModal"],"sources":["@wordpress/customize-widgets/src/components/more-menu/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tToolbarDropdownMenu,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __, _x } from '@wordpress/i18n';\nimport { external, moreVertical } from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\nimport { PreferenceToggleMenuItem } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\n\nexport default function MoreMenu() {\n\tconst [\n\t\tisKeyboardShortcutsModalActive,\n\t\tsetIsKeyboardShortcutsModalVisible,\n\t] = useState( false );\n\tconst toggleKeyboardShortcutsModal = () =>\n\t\tsetIsKeyboardShortcutsModalVisible( ! isKeyboardShortcutsModalActive );\n\n\tuseShortcut(\n\t\t'core/customize-widgets/keyboard-shortcuts',\n\t\ttoggleKeyboardShortcutsModal\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarDropdownMenu\n\t\t\t\ticon={ moreVertical }\n\t\t\t\tlabel={ __( 'Options' ) }\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tplacement: 'bottom-end',\n\t\t\t\t\tclassName: 'more-menu-dropdown__content',\n\t\t\t\t} }\n\t\t\t\ttoggleProps={ {\n\t\t\t\t\ttooltipPosition: 'bottom',\n\t\t\t\t\tsize: 'compact',\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ () => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<MenuGroup label={ _x( 'View', 'noun' ) }>\n\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/customize-widgets\"\n\t\t\t\t\t\t\t\tname=\"fixedToolbar\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Top toolbar' ) }\n\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t'Access all block and document tools in a single place'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t'Top toolbar activated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t'Top toolbar deactivated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetIsKeyboardShortcutsModalVisible( true );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tshortcut={ displayShortcut.access( 'h' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Keyboard shortcuts' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/customize-widgets\"\n\t\t\t\t\t\t\t\tname=\"welcomeGuide\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Welcome Guide' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/block-based-widgets-editor/'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Help' ) }\n\t\t\t\t\t\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t/* translators: accessibility text */\n\t\t\t\t\t\t\t\t\t\t__( '(opens in a new tab)' )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup label={ __( 'Preferences' ) }>\n\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/customize-widgets\"\n\t\t\t\t\t\t\t\tname=\"keepCaretInsideBlock\"\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t'Aids screen readers by stopping text caret from leaving blocks.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block activated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block deactivated'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</ToolbarDropdownMenu>\n\t\t\t<KeyboardShortcutHelpModal\n\t\t\t\tisModalActive={ isKeyboardShortcutsModalActive }\n\t\t\t\ttoggleModal={ toggleKeyboardShortcutsModal }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ import { useMemo, createPortal } from '@wordpress/element';
9
9
  import { BlockList, BlockToolbar, BlockInspector, privateApis as blockEditorPrivateApis, __unstableBlockSettingsMenuFirstItem } from '@wordpress/block-editor';
10
10
  import { uploadMedia } from '@wordpress/media-utils';
11
11
  import { store as preferencesStore } from '@wordpress/preferences';
12
+ import { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';
12
13
 
13
14
  /**
14
15
  * Internal dependencies
@@ -24,6 +25,9 @@ import { unlock } from '../../lock-unlock';
24
25
  const {
25
26
  ExperimentalBlockCanvas: BlockCanvas
26
27
  } = unlock(blockEditorPrivateApis);
28
+ const {
29
+ BlockKeyboardShortcuts
30
+ } = unlock(blockLibraryPrivateApis);
27
31
  export default function SidebarBlockEditor({
28
32
  blockEditorSettings,
29
33
  sidebar,
@@ -79,7 +83,7 @@ export default function SidebarBlockEditor({
79
83
  sidebar: sidebar
80
84
  });
81
85
  }
82
- return createElement(Fragment, null, createElement(KeyboardShortcuts.Register, null), createElement(SidebarEditorProvider, {
86
+ return createElement(Fragment, null, createElement(KeyboardShortcuts.Register, null), createElement(BlockKeyboardShortcuts, null), createElement(SidebarEditorProvider, {
83
87
  sidebar: sidebar,
84
88
  settings: settings
85
89
  }, createElement(KeyboardShortcuts, {