@wordpress/edit-widgets 4.0.2 → 4.1.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 (56) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/header/index.js +1 -1
  3. package/build/components/header/index.js.map +1 -1
  4. package/build/components/keyboard-shortcuts/index.js +1 -1
  5. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  6. package/build/components/layout/interface.js +3 -1
  7. package/build/components/layout/interface.js.map +1 -1
  8. package/build/components/more-menu/index.js +12 -10
  9. package/build/components/more-menu/index.js.map +1 -1
  10. package/build/components/welcome-guide/index.js +5 -5
  11. package/build/components/welcome-guide/index.js.map +1 -1
  12. package/build/components/widget-areas-block-editor-content/index.js +2 -2
  13. package/build/components/widget-areas-block-editor-content/index.js.map +1 -1
  14. package/build/components/widget-areas-block-editor-provider/index.js +4 -4
  15. package/build/components/widget-areas-block-editor-provider/index.js.map +1 -1
  16. package/build/index.js +2 -2
  17. package/build/index.js.map +1 -1
  18. package/build/store/actions.js +1 -1
  19. package/build/store/actions.js.map +1 -1
  20. package/build/store/index.js +3 -5
  21. package/build/store/index.js.map +1 -1
  22. package/build-module/components/header/index.js +1 -1
  23. package/build-module/components/header/index.js.map +1 -1
  24. package/build-module/components/keyboard-shortcuts/index.js +1 -1
  25. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  26. package/build-module/components/layout/interface.js +2 -1
  27. package/build-module/components/layout/interface.js.map +1 -1
  28. package/build-module/components/more-menu/index.js +12 -11
  29. package/build-module/components/more-menu/index.js.map +1 -1
  30. package/build-module/components/welcome-guide/index.js +5 -5
  31. package/build-module/components/welcome-guide/index.js.map +1 -1
  32. package/build-module/components/widget-areas-block-editor-content/index.js +2 -2
  33. package/build-module/components/widget-areas-block-editor-content/index.js.map +1 -1
  34. package/build-module/components/widget-areas-block-editor-provider/index.js +3 -3
  35. package/build-module/components/widget-areas-block-editor-provider/index.js.map +1 -1
  36. package/build-module/index.js +2 -2
  37. package/build-module/index.js.map +1 -1
  38. package/build-module/store/actions.js +1 -1
  39. package/build-module/store/actions.js.map +1 -1
  40. package/build-module/store/index.js +4 -6
  41. package/build-module/store/index.js.map +1 -1
  42. package/build-style/style-rtl.css +90 -34
  43. package/build-style/style.css +90 -34
  44. package/package.json +29 -24
  45. package/src/components/header/index.js +1 -1
  46. package/src/components/keyboard-shortcuts/index.js +1 -1
  47. package/src/components/layout/interface.js +5 -3
  48. package/src/components/more-menu/index.js +12 -11
  49. package/src/components/welcome-guide/index.js +4 -6
  50. package/src/components/widget-areas-block-editor-content/index.js +2 -2
  51. package/src/components/widget-areas-block-editor-provider/index.js +3 -3
  52. package/src/index.js +2 -2
  53. package/src/store/actions.js +1 -1
  54. package/src/store/index.js +3 -6
  55. package/src/style.scss +0 -1
  56. package/src/components/more-menu/style.scss +0 -35
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/store/actions.js"],"names":["persistStubPost","id","blocks","registry","stubPost","dispatch","coreStore","receiveEntityRecords","KIND","POST_TYPE","saveEditedWidgetAreas","select","editedWidgetAreas","getEditedWidgetAreas","length","saveWidgetAreas","noticesStore","createSuccessNotice","type","e","createErrorNotice","message","widgetAreas","widgetArea","saveWidgetArea","finishResolution","WIDGET_AREA_ENTITY_TYPE","widgetAreaId","widgets","getWidgets","post","getEditedEntityRecord","areaWidgets","Object","values","filter","sidebar","usedReferenceWidgets","widgetsBlocks","block","attributes","name","includes","push","deletedWidgets","widget","widgetsNewArea","getWidgetAreaForWidgetId","batchMeta","batchTasks","sidebarWidgetsIds","i","widgetId","oldWidget","editEntityRecord","undoIgnore","hasEdits","hasEditsForEntityRecord","saveEditedEntityRecord","saveEntityRecord","position","clientId","deleteEntityRecord","force","records","__experimentalBatch","preservedRecords","record","hasOwnProperty","failedWidgetNames","__internalWidgetId","error","getLastEntitySaveError","Error","join","trySaveWidgetArea","undefined","saveErrorBefore","saveErrorAfter","setWidgetIdForClientId","setWidgetAreasOpenState","widgetAreasOpenState","setIsWidgetAreaOpen","isOpen","setIsInserterOpened","value","setIsListViewOpened","closeGeneralSidebar","interfaceStore","disableComplementaryArea","editWidgetsStoreName","moveBlockToWidgetArea","sourceRootClientId","blockEditorStore","getBlockRootClientId","getBlocks","destinationWidgetAreaBlock","find","destinationRootClientId","destinationInnerBlocksClientIds","getBlockOrder","destinationIndex","isDestinationWidgetAreaOpen","getIsWidgetAreaOpen","moveBlocksToPosition"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { getWidgetIdFromBlock } from '@wordpress/widgets';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { transformBlockToWidget } from './transformers';\nimport {\n\tbuildWidgetAreaPostId,\n\tbuildWidgetAreasQuery,\n\tcreateStubPost,\n\tKIND,\n\tPOST_TYPE,\n\tWIDGET_AREA_ENTITY_TYPE,\n} from './utils';\nimport { STORE_NAME as editWidgetsStoreName } from './constants';\n\n/**\n * Persists a stub post with given ID to core data store. The post is meant to be in-memory only and\n * shouldn't be saved via the API.\n *\n * @param {string} id Post ID.\n * @param {Array} blocks Blocks the post should consist of.\n * @return {Object} The post object.\n */\nexport const persistStubPost = ( id, blocks ) => ( { registry } ) => {\n\tconst stubPost = createStubPost( id, blocks );\n\tregistry\n\t\t.dispatch( coreStore )\n\t\t.receiveEntityRecords(\n\t\t\tKIND,\n\t\t\tPOST_TYPE,\n\t\t\tstubPost,\n\t\t\t{ id: stubPost.id },\n\t\t\tfalse\n\t\t);\n\treturn stubPost;\n};\n\n/**\n * Converts all the blocks from edited widget areas into widgets,\n * and submits a batch request to save everything at once.\n *\n * Creates a snackbar notice on either success or error.\n *\n * @return {Function} An action creator.\n */\nexport const saveEditedWidgetAreas = () => async ( {\n\tselect,\n\tdispatch,\n\tregistry,\n} ) => {\n\tconst editedWidgetAreas = select.getEditedWidgetAreas();\n\tif ( ! editedWidgetAreas?.length ) {\n\t\treturn;\n\t}\n\ttry {\n\t\tawait dispatch.saveWidgetAreas( editedWidgetAreas );\n\t\tregistry\n\t\t\t.dispatch( noticesStore )\n\t\t\t.createSuccessNotice( __( 'Widgets saved.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t} catch ( e ) {\n\t\tregistry.dispatch( noticesStore ).createErrorNotice(\n\t\t\t/* translators: %s: The error message. */\n\t\t\tsprintf( __( 'There was an error. %s' ), e.message ),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n};\n\n/**\n * Converts all the blocks from specified widget areas into widgets,\n * and submits a batch request to save everything at once.\n *\n * @param {Object[]} widgetAreas Widget areas to save.\n * @return {Function} An action creator.\n */\nexport const saveWidgetAreas = ( widgetAreas ) => async ( {\n\tdispatch,\n\tregistry,\n} ) => {\n\ttry {\n\t\tfor ( const widgetArea of widgetAreas ) {\n\t\t\tawait dispatch.saveWidgetArea( widgetArea.id );\n\t\t}\n\t} finally {\n\t\t// saveEditedEntityRecord resets the resolution status, let's fix it manually\n\t\tawait registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.finishResolution(\n\t\t\t\t'getEntityRecord',\n\t\t\t\tKIND,\n\t\t\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\t\t\tbuildWidgetAreasQuery()\n\t\t\t);\n\t}\n};\n\n/**\n * Converts all the blocks from a widget area specified by ID into widgets,\n * and submits a batch request to save everything at once.\n *\n * @param {string} widgetAreaId ID of the widget area to process.\n * @return {Function} An action creator.\n */\nexport const saveWidgetArea = ( widgetAreaId ) => async ( {\n\tdispatch,\n\tselect,\n\tregistry,\n} ) => {\n\tconst widgets = select.getWidgets();\n\n\tconst post = registry\n\t\t.select( coreStore )\n\t\t.getEditedEntityRecord(\n\t\t\tKIND,\n\t\t\tPOST_TYPE,\n\t\t\tbuildWidgetAreaPostId( widgetAreaId )\n\t\t);\n\n\t// Get all widgets from this area\n\tconst areaWidgets = Object.values( widgets ).filter(\n\t\t( { sidebar } ) => sidebar === widgetAreaId\n\t);\n\n\t// Remove all duplicate reference widget instances for legacy widgets.\n\t// Why? We filter out the widgets with duplicate IDs to prevent adding more than one instance of a widget\n\t// implemented using a function. WordPress doesn't support having more than one instance of these, if you try to\n\t// save multiple instances of these in different sidebars you will run into undefined behaviors.\n\tconst usedReferenceWidgets = [];\n\tconst widgetsBlocks = post.blocks.filter( ( block ) => {\n\t\tconst { id } = block.attributes;\n\n\t\tif ( block.name === 'core/legacy-widget' && id ) {\n\t\t\tif ( usedReferenceWidgets.includes( id ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tusedReferenceWidgets.push( id );\n\t\t}\n\t\treturn true;\n\t} );\n\n\t// Determine which widgets have been deleted. We can tell if a widget is\n\t// deleted and not just moved to a different area by looking to see if\n\t// getWidgetAreaForWidgetId() finds something.\n\tconst deletedWidgets = [];\n\tfor ( const widget of areaWidgets ) {\n\t\tconst widgetsNewArea = select.getWidgetAreaForWidgetId( widget.id );\n\t\tif ( ! widgetsNewArea ) {\n\t\t\tdeletedWidgets.push( widget );\n\t\t}\n\t}\n\n\tconst batchMeta = [];\n\tconst batchTasks = [];\n\tconst sidebarWidgetsIds = [];\n\tfor ( let i = 0; i < widgetsBlocks.length; i++ ) {\n\t\tconst block = widgetsBlocks[ i ];\n\t\tconst widgetId = getWidgetIdFromBlock( block );\n\t\tconst oldWidget = widgets[ widgetId ];\n\t\tconst widget = transformBlockToWidget( block, oldWidget );\n\n\t\t// We'll replace the null widgetId after save, but we track it here\n\t\t// since order is important.\n\t\tsidebarWidgetsIds.push( widgetId );\n\n\t\t// Check oldWidget as widgetId might refer to an ID which has been\n\t\t// deleted, e.g. if a deleted block is restored via undo after saving.\n\t\tif ( oldWidget ) {\n\t\t\t// Update an existing widget.\n\t\t\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'root',\n\t\t\t\t'widget',\n\t\t\t\twidgetId,\n\t\t\t\t{\n\t\t\t\t\t...widget,\n\t\t\t\t\tsidebar: widgetAreaId,\n\t\t\t\t},\n\t\t\t\t{ undoIgnore: true }\n\t\t\t);\n\n\t\t\tconst hasEdits = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.hasEditsForEntityRecord( 'root', 'widget', widgetId );\n\n\t\t\tif ( ! hasEdits ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tbatchTasks.push( ( { saveEditedEntityRecord } ) =>\n\t\t\t\tsaveEditedEntityRecord( 'root', 'widget', widgetId )\n\t\t\t);\n\t\t} else {\n\t\t\t// Create a new widget.\n\t\t\tbatchTasks.push( ( { saveEntityRecord } ) =>\n\t\t\t\tsaveEntityRecord( 'root', 'widget', {\n\t\t\t\t\t...widget,\n\t\t\t\t\tsidebar: widgetAreaId,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\n\n\t\tbatchMeta.push( {\n\t\t\tblock,\n\t\t\tposition: i,\n\t\t\tclientId: block.clientId,\n\t\t} );\n\t}\n\tfor ( const widget of deletedWidgets ) {\n\t\tbatchTasks.push( ( { deleteEntityRecord } ) =>\n\t\t\tdeleteEntityRecord( 'root', 'widget', widget.id, {\n\t\t\t\tforce: true,\n\t\t\t} )\n\t\t);\n\t}\n\n\tconst records = await registry\n\t\t.dispatch( coreStore )\n\t\t.__experimentalBatch( batchTasks );\n\tconst preservedRecords = records.filter(\n\t\t( record ) => ! record.hasOwnProperty( 'deleted' )\n\t);\n\n\tconst failedWidgetNames = [];\n\n\tfor ( let i = 0; i < preservedRecords.length; i++ ) {\n\t\tconst widget = preservedRecords[ i ];\n\t\tconst { block, position } = batchMeta[ i ];\n\n\t\t// Set __internalWidgetId on the block. This will be persisted to the\n\t\t// store when we dispatch receiveEntityRecords( post ) below.\n\t\tpost.blocks[ position ].attributes.__internalWidgetId = widget.id;\n\n\t\tconst error = registry\n\t\t\t.select( coreStore )\n\t\t\t.getLastEntitySaveError( 'root', 'widget', widget.id );\n\t\tif ( error ) {\n\t\t\tfailedWidgetNames.push( block.attributes?.name || block?.name );\n\t\t}\n\n\t\tif ( ! sidebarWidgetsIds[ position ] ) {\n\t\t\tsidebarWidgetsIds[ position ] = widget.id;\n\t\t}\n\t}\n\n\tif ( failedWidgetNames.length ) {\n\t\tthrow new Error(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: List of widget names */\n\t\t\t\t__( 'Could not save the following widgets: %s.' ),\n\t\t\t\tfailedWidgetNames.join( ', ' )\n\t\t\t)\n\t\t);\n\t}\n\n\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\tKIND,\n\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\twidgetAreaId,\n\t\t{\n\t\t\twidgets: sidebarWidgetsIds,\n\t\t},\n\t\t{ undoIgnore: true }\n\t);\n\n\tdispatch( trySaveWidgetArea( widgetAreaId ) );\n\n\tregistry\n\t\t.dispatch( coreStore )\n\t\t.receiveEntityRecords( KIND, POST_TYPE, post, undefined );\n};\n\nconst trySaveWidgetArea = ( widgetAreaId ) => ( { registry } ) => {\n\tconst saveErrorBefore = registry\n\t\t.select( coreStore )\n\t\t.getLastEntitySaveError( KIND, WIDGET_AREA_ENTITY_TYPE, widgetAreaId );\n\tregistry\n\t\t.dispatch( coreStore )\n\t\t.saveEditedEntityRecord( KIND, WIDGET_AREA_ENTITY_TYPE, widgetAreaId );\n\tconst saveErrorAfter = registry\n\t\t.select( coreStore )\n\t\t.getLastEntitySaveError( KIND, WIDGET_AREA_ENTITY_TYPE, widgetAreaId );\n\tif ( saveErrorAfter && saveErrorBefore !== saveErrorAfter ) {\n\t\tthrow new Error( saveErrorAfter );\n\t}\n};\n\n/**\n * Sets the clientId stored for a particular widgetId.\n *\n * @param {number} clientId Client id.\n * @param {number} widgetId Widget id.\n *\n * @return {Object} Action.\n */\nexport function setWidgetIdForClientId( clientId, widgetId ) {\n\treturn {\n\t\ttype: 'SET_WIDGET_ID_FOR_CLIENT_ID',\n\t\tclientId,\n\t\twidgetId,\n\t};\n}\n\n/**\n * Sets the open state of all the widget areas.\n *\n * @param {Object} widgetAreasOpenState The open states of all the widget areas.\n *\n * @return {Object} Action.\n */\nexport function setWidgetAreasOpenState( widgetAreasOpenState ) {\n\treturn {\n\t\ttype: 'SET_WIDGET_AREAS_OPEN_STATE',\n\t\twidgetAreasOpenState,\n\t};\n}\n\n/**\n * Sets the open state of the widget area.\n *\n * @param {string} clientId The clientId of the widget area.\n * @param {boolean} isOpen Whether the widget area should be opened.\n *\n * @return {Object} Action.\n */\nexport function setIsWidgetAreaOpen( clientId, isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_WIDGET_AREA_OPEN',\n\t\tclientId,\n\t\tisOpen,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the inserter.\n *\n * @param {boolean|Object} value Whether the inserter should be\n * opened (true) or closed (false).\n * To specify an insertion point,\n * use an object.\n * @param {string} value.rootClientId The root client ID to insert at.\n * @param {number} value.insertionIndex The index to insert at.\n *\n * @return {Object} Action object.\n */\nexport function setIsInserterOpened( value ) {\n\treturn {\n\t\ttype: 'SET_IS_INSERTER_OPENED',\n\t\tvalue,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the list view.\n *\n * @param {boolean} isOpen A boolean representing whether the list view should be opened or closed.\n * @return {Object} Action object.\n */\nexport function setIsListViewOpened( isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_LIST_VIEW_OPENED',\n\t\tisOpen,\n\t};\n}\n\n/**\n * Returns an action object signalling that the user closed the sidebar.\n *\n * @return {Object} Action creator.\n */\nexport const closeGeneralSidebar = () => ( { registry } ) => {\n\tregistry\n\t\t.dispatch( interfaceStore )\n\t\t.disableComplementaryArea( editWidgetsStoreName );\n};\n\n/**\n * Action that handles moving a block between widget areas\n *\n * @param {string} clientId The clientId of the block to move.\n * @param {string} widgetAreaId The id of the widget area to move the block to.\n */\nexport const moveBlockToWidgetArea = ( clientId, widgetAreaId ) => async ( {\n\tdispatch,\n\tselect,\n\tregistry,\n} ) => {\n\tconst sourceRootClientId = registry\n\t\t.select( blockEditorStore )\n\t\t.getBlockRootClientId( [ clientId ] );\n\n\t// Search the top level blocks (widget areas) for the one with the matching\n\t// id attribute. Makes the assumption that all top-level blocks are widget\n\t// areas.\n\tconst widgetAreas = registry.select( blockEditorStore ).getBlocks();\n\tconst destinationWidgetAreaBlock = widgetAreas.find(\n\t\t( { attributes } ) => attributes.id === widgetAreaId\n\t);\n\tconst destinationRootClientId = destinationWidgetAreaBlock.clientId;\n\n\t// Get the index for moving to the end of the the destination widget area.\n\tconst destinationInnerBlocksClientIds = registry\n\t\t.select( blockEditorStore )\n\t\t.getBlockOrder( destinationRootClientId );\n\tconst destinationIndex = destinationInnerBlocksClientIds.length;\n\n\t// Reveal the widget area, if it's not open.\n\tconst isDestinationWidgetAreaOpen = select.getIsWidgetAreaOpen(\n\t\tdestinationRootClientId\n\t);\n\n\tif ( ! isDestinationWidgetAreaOpen ) {\n\t\tdispatch.setIsWidgetAreaOpen( destinationRootClientId, true );\n\t}\n\n\t// Move the block.\n\tregistry\n\t\t.dispatch( blockEditorStore )\n\t\t.moveBlocksToPosition(\n\t\t\t[ clientId ],\n\t\t\tsourceRootClientId,\n\t\t\tdestinationRootClientId,\n\t\t\tdestinationIndex\n\t\t);\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/store/actions.js"],"names":["persistStubPost","id","blocks","registry","stubPost","dispatch","coreStore","receiveEntityRecords","KIND","POST_TYPE","saveEditedWidgetAreas","select","editedWidgetAreas","getEditedWidgetAreas","length","saveWidgetAreas","noticesStore","createSuccessNotice","type","e","createErrorNotice","message","widgetAreas","widgetArea","saveWidgetArea","finishResolution","WIDGET_AREA_ENTITY_TYPE","widgetAreaId","widgets","getWidgets","post","getEditedEntityRecord","areaWidgets","Object","values","filter","sidebar","usedReferenceWidgets","widgetsBlocks","block","attributes","name","includes","push","deletedWidgets","widget","widgetsNewArea","getWidgetAreaForWidgetId","batchMeta","batchTasks","sidebarWidgetsIds","i","widgetId","oldWidget","editEntityRecord","undoIgnore","hasEdits","hasEditsForEntityRecord","saveEditedEntityRecord","saveEntityRecord","position","clientId","deleteEntityRecord","force","records","__experimentalBatch","preservedRecords","record","hasOwnProperty","failedWidgetNames","__internalWidgetId","error","getLastEntitySaveError","Error","join","trySaveWidgetArea","undefined","saveErrorBefore","saveErrorAfter","setWidgetIdForClientId","setWidgetAreasOpenState","widgetAreasOpenState","setIsWidgetAreaOpen","isOpen","setIsInserterOpened","value","setIsListViewOpened","closeGeneralSidebar","interfaceStore","disableComplementaryArea","editWidgetsStoreName","moveBlockToWidgetArea","sourceRootClientId","blockEditorStore","getBlockRootClientId","getBlocks","destinationWidgetAreaBlock","find","destinationRootClientId","destinationInnerBlocksClientIds","getBlockOrder","destinationIndex","isDestinationWidgetAreaOpen","getIsWidgetAreaOpen","moveBlocksToPosition"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { getWidgetIdFromBlock } from '@wordpress/widgets';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { transformBlockToWidget } from './transformers';\nimport {\n\tbuildWidgetAreaPostId,\n\tbuildWidgetAreasQuery,\n\tcreateStubPost,\n\tKIND,\n\tPOST_TYPE,\n\tWIDGET_AREA_ENTITY_TYPE,\n} from './utils';\nimport { STORE_NAME as editWidgetsStoreName } from './constants';\n\n/**\n * Persists a stub post with given ID to core data store. The post is meant to be in-memory only and\n * shouldn't be saved via the API.\n *\n * @param {string} id Post ID.\n * @param {Array} blocks Blocks the post should consist of.\n * @return {Object} The post object.\n */\nexport const persistStubPost = ( id, blocks ) => ( { registry } ) => {\n\tconst stubPost = createStubPost( id, blocks );\n\tregistry\n\t\t.dispatch( coreStore )\n\t\t.receiveEntityRecords(\n\t\t\tKIND,\n\t\t\tPOST_TYPE,\n\t\t\tstubPost,\n\t\t\t{ id: stubPost.id },\n\t\t\tfalse\n\t\t);\n\treturn stubPost;\n};\n\n/**\n * Converts all the blocks from edited widget areas into widgets,\n * and submits a batch request to save everything at once.\n *\n * Creates a snackbar notice on either success or error.\n *\n * @return {Function} An action creator.\n */\nexport const saveEditedWidgetAreas = () => async ( {\n\tselect,\n\tdispatch,\n\tregistry,\n} ) => {\n\tconst editedWidgetAreas = select.getEditedWidgetAreas();\n\tif ( ! editedWidgetAreas?.length ) {\n\t\treturn;\n\t}\n\ttry {\n\t\tawait dispatch.saveWidgetAreas( editedWidgetAreas );\n\t\tregistry\n\t\t\t.dispatch( noticesStore )\n\t\t\t.createSuccessNotice( __( 'Widgets saved.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t} catch ( e ) {\n\t\tregistry.dispatch( noticesStore ).createErrorNotice(\n\t\t\t/* translators: %s: The error message. */\n\t\t\tsprintf( __( 'There was an error. %s' ), e.message ),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n};\n\n/**\n * Converts all the blocks from specified widget areas into widgets,\n * and submits a batch request to save everything at once.\n *\n * @param {Object[]} widgetAreas Widget areas to save.\n * @return {Function} An action creator.\n */\nexport const saveWidgetAreas = ( widgetAreas ) => async ( {\n\tdispatch,\n\tregistry,\n} ) => {\n\ttry {\n\t\tfor ( const widgetArea of widgetAreas ) {\n\t\t\tawait dispatch.saveWidgetArea( widgetArea.id );\n\t\t}\n\t} finally {\n\t\t// saveEditedEntityRecord resets the resolution status, let's fix it manually.\n\t\tawait registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.finishResolution(\n\t\t\t\t'getEntityRecord',\n\t\t\t\tKIND,\n\t\t\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\t\t\tbuildWidgetAreasQuery()\n\t\t\t);\n\t}\n};\n\n/**\n * Converts all the blocks from a widget area specified by ID into widgets,\n * and submits a batch request to save everything at once.\n *\n * @param {string} widgetAreaId ID of the widget area to process.\n * @return {Function} An action creator.\n */\nexport const saveWidgetArea = ( widgetAreaId ) => async ( {\n\tdispatch,\n\tselect,\n\tregistry,\n} ) => {\n\tconst widgets = select.getWidgets();\n\n\tconst post = registry\n\t\t.select( coreStore )\n\t\t.getEditedEntityRecord(\n\t\t\tKIND,\n\t\t\tPOST_TYPE,\n\t\t\tbuildWidgetAreaPostId( widgetAreaId )\n\t\t);\n\n\t// Get all widgets from this area\n\tconst areaWidgets = Object.values( widgets ).filter(\n\t\t( { sidebar } ) => sidebar === widgetAreaId\n\t);\n\n\t// Remove all duplicate reference widget instances for legacy widgets.\n\t// Why? We filter out the widgets with duplicate IDs to prevent adding more than one instance of a widget\n\t// implemented using a function. WordPress doesn't support having more than one instance of these, if you try to\n\t// save multiple instances of these in different sidebars you will run into undefined behaviors.\n\tconst usedReferenceWidgets = [];\n\tconst widgetsBlocks = post.blocks.filter( ( block ) => {\n\t\tconst { id } = block.attributes;\n\n\t\tif ( block.name === 'core/legacy-widget' && id ) {\n\t\t\tif ( usedReferenceWidgets.includes( id ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tusedReferenceWidgets.push( id );\n\t\t}\n\t\treturn true;\n\t} );\n\n\t// Determine which widgets have been deleted. We can tell if a widget is\n\t// deleted and not just moved to a different area by looking to see if\n\t// getWidgetAreaForWidgetId() finds something.\n\tconst deletedWidgets = [];\n\tfor ( const widget of areaWidgets ) {\n\t\tconst widgetsNewArea = select.getWidgetAreaForWidgetId( widget.id );\n\t\tif ( ! widgetsNewArea ) {\n\t\t\tdeletedWidgets.push( widget );\n\t\t}\n\t}\n\n\tconst batchMeta = [];\n\tconst batchTasks = [];\n\tconst sidebarWidgetsIds = [];\n\tfor ( let i = 0; i < widgetsBlocks.length; i++ ) {\n\t\tconst block = widgetsBlocks[ i ];\n\t\tconst widgetId = getWidgetIdFromBlock( block );\n\t\tconst oldWidget = widgets[ widgetId ];\n\t\tconst widget = transformBlockToWidget( block, oldWidget );\n\n\t\t// We'll replace the null widgetId after save, but we track it here\n\t\t// since order is important.\n\t\tsidebarWidgetsIds.push( widgetId );\n\n\t\t// Check oldWidget as widgetId might refer to an ID which has been\n\t\t// deleted, e.g. if a deleted block is restored via undo after saving.\n\t\tif ( oldWidget ) {\n\t\t\t// Update an existing widget.\n\t\t\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'root',\n\t\t\t\t'widget',\n\t\t\t\twidgetId,\n\t\t\t\t{\n\t\t\t\t\t...widget,\n\t\t\t\t\tsidebar: widgetAreaId,\n\t\t\t\t},\n\t\t\t\t{ undoIgnore: true }\n\t\t\t);\n\n\t\t\tconst hasEdits = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.hasEditsForEntityRecord( 'root', 'widget', widgetId );\n\n\t\t\tif ( ! hasEdits ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tbatchTasks.push( ( { saveEditedEntityRecord } ) =>\n\t\t\t\tsaveEditedEntityRecord( 'root', 'widget', widgetId )\n\t\t\t);\n\t\t} else {\n\t\t\t// Create a new widget.\n\t\t\tbatchTasks.push( ( { saveEntityRecord } ) =>\n\t\t\t\tsaveEntityRecord( 'root', 'widget', {\n\t\t\t\t\t...widget,\n\t\t\t\t\tsidebar: widgetAreaId,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\n\n\t\tbatchMeta.push( {\n\t\t\tblock,\n\t\t\tposition: i,\n\t\t\tclientId: block.clientId,\n\t\t} );\n\t}\n\tfor ( const widget of deletedWidgets ) {\n\t\tbatchTasks.push( ( { deleteEntityRecord } ) =>\n\t\t\tdeleteEntityRecord( 'root', 'widget', widget.id, {\n\t\t\t\tforce: true,\n\t\t\t} )\n\t\t);\n\t}\n\n\tconst records = await registry\n\t\t.dispatch( coreStore )\n\t\t.__experimentalBatch( batchTasks );\n\tconst preservedRecords = records.filter(\n\t\t( record ) => ! record.hasOwnProperty( 'deleted' )\n\t);\n\n\tconst failedWidgetNames = [];\n\n\tfor ( let i = 0; i < preservedRecords.length; i++ ) {\n\t\tconst widget = preservedRecords[ i ];\n\t\tconst { block, position } = batchMeta[ i ];\n\n\t\t// Set __internalWidgetId on the block. This will be persisted to the\n\t\t// store when we dispatch receiveEntityRecords( post ) below.\n\t\tpost.blocks[ position ].attributes.__internalWidgetId = widget.id;\n\n\t\tconst error = registry\n\t\t\t.select( coreStore )\n\t\t\t.getLastEntitySaveError( 'root', 'widget', widget.id );\n\t\tif ( error ) {\n\t\t\tfailedWidgetNames.push( block.attributes?.name || block?.name );\n\t\t}\n\n\t\tif ( ! sidebarWidgetsIds[ position ] ) {\n\t\t\tsidebarWidgetsIds[ position ] = widget.id;\n\t\t}\n\t}\n\n\tif ( failedWidgetNames.length ) {\n\t\tthrow new Error(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: List of widget names */\n\t\t\t\t__( 'Could not save the following widgets: %s.' ),\n\t\t\t\tfailedWidgetNames.join( ', ' )\n\t\t\t)\n\t\t);\n\t}\n\n\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\tKIND,\n\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\twidgetAreaId,\n\t\t{\n\t\t\twidgets: sidebarWidgetsIds,\n\t\t},\n\t\t{ undoIgnore: true }\n\t);\n\n\tdispatch( trySaveWidgetArea( widgetAreaId ) );\n\n\tregistry\n\t\t.dispatch( coreStore )\n\t\t.receiveEntityRecords( KIND, POST_TYPE, post, undefined );\n};\n\nconst trySaveWidgetArea = ( widgetAreaId ) => ( { registry } ) => {\n\tconst saveErrorBefore = registry\n\t\t.select( coreStore )\n\t\t.getLastEntitySaveError( KIND, WIDGET_AREA_ENTITY_TYPE, widgetAreaId );\n\tregistry\n\t\t.dispatch( coreStore )\n\t\t.saveEditedEntityRecord( KIND, WIDGET_AREA_ENTITY_TYPE, widgetAreaId );\n\tconst saveErrorAfter = registry\n\t\t.select( coreStore )\n\t\t.getLastEntitySaveError( KIND, WIDGET_AREA_ENTITY_TYPE, widgetAreaId );\n\tif ( saveErrorAfter && saveErrorBefore !== saveErrorAfter ) {\n\t\tthrow new Error( saveErrorAfter );\n\t}\n};\n\n/**\n * Sets the clientId stored for a particular widgetId.\n *\n * @param {number} clientId Client id.\n * @param {number} widgetId Widget id.\n *\n * @return {Object} Action.\n */\nexport function setWidgetIdForClientId( clientId, widgetId ) {\n\treturn {\n\t\ttype: 'SET_WIDGET_ID_FOR_CLIENT_ID',\n\t\tclientId,\n\t\twidgetId,\n\t};\n}\n\n/**\n * Sets the open state of all the widget areas.\n *\n * @param {Object} widgetAreasOpenState The open states of all the widget areas.\n *\n * @return {Object} Action.\n */\nexport function setWidgetAreasOpenState( widgetAreasOpenState ) {\n\treturn {\n\t\ttype: 'SET_WIDGET_AREAS_OPEN_STATE',\n\t\twidgetAreasOpenState,\n\t};\n}\n\n/**\n * Sets the open state of the widget area.\n *\n * @param {string} clientId The clientId of the widget area.\n * @param {boolean} isOpen Whether the widget area should be opened.\n *\n * @return {Object} Action.\n */\nexport function setIsWidgetAreaOpen( clientId, isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_WIDGET_AREA_OPEN',\n\t\tclientId,\n\t\tisOpen,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the inserter.\n *\n * @param {boolean|Object} value Whether the inserter should be\n * opened (true) or closed (false).\n * To specify an insertion point,\n * use an object.\n * @param {string} value.rootClientId The root client ID to insert at.\n * @param {number} value.insertionIndex The index to insert at.\n *\n * @return {Object} Action object.\n */\nexport function setIsInserterOpened( value ) {\n\treturn {\n\t\ttype: 'SET_IS_INSERTER_OPENED',\n\t\tvalue,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the list view.\n *\n * @param {boolean} isOpen A boolean representing whether the list view should be opened or closed.\n * @return {Object} Action object.\n */\nexport function setIsListViewOpened( isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_LIST_VIEW_OPENED',\n\t\tisOpen,\n\t};\n}\n\n/**\n * Returns an action object signalling that the user closed the sidebar.\n *\n * @return {Object} Action creator.\n */\nexport const closeGeneralSidebar = () => ( { registry } ) => {\n\tregistry\n\t\t.dispatch( interfaceStore )\n\t\t.disableComplementaryArea( editWidgetsStoreName );\n};\n\n/**\n * Action that handles moving a block between widget areas\n *\n * @param {string} clientId The clientId of the block to move.\n * @param {string} widgetAreaId The id of the widget area to move the block to.\n */\nexport const moveBlockToWidgetArea = ( clientId, widgetAreaId ) => async ( {\n\tdispatch,\n\tselect,\n\tregistry,\n} ) => {\n\tconst sourceRootClientId = registry\n\t\t.select( blockEditorStore )\n\t\t.getBlockRootClientId( [ clientId ] );\n\n\t// Search the top level blocks (widget areas) for the one with the matching\n\t// id attribute. Makes the assumption that all top-level blocks are widget\n\t// areas.\n\tconst widgetAreas = registry.select( blockEditorStore ).getBlocks();\n\tconst destinationWidgetAreaBlock = widgetAreas.find(\n\t\t( { attributes } ) => attributes.id === widgetAreaId\n\t);\n\tconst destinationRootClientId = destinationWidgetAreaBlock.clientId;\n\n\t// Get the index for moving to the end of the the destination widget area.\n\tconst destinationInnerBlocksClientIds = registry\n\t\t.select( blockEditorStore )\n\t\t.getBlockOrder( destinationRootClientId );\n\tconst destinationIndex = destinationInnerBlocksClientIds.length;\n\n\t// Reveal the widget area, if it's not open.\n\tconst isDestinationWidgetAreaOpen = select.getIsWidgetAreaOpen(\n\t\tdestinationRootClientId\n\t);\n\n\tif ( ! isDestinationWidgetAreaOpen ) {\n\t\tdispatch.setIsWidgetAreaOpen( destinationRootClientId, true );\n\t}\n\n\t// Move the block.\n\tregistry\n\t\t.dispatch( blockEditorStore )\n\t\t.moveBlocksToPosition(\n\t\t\t[ clientId ],\n\t\t\tsourceRootClientId,\n\t\t\tdestinationRootClientId,\n\t\t\tdestinationIndex\n\t\t);\n};\n"]}
@@ -36,7 +36,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
36
36
  /**
37
37
  * Block editor data store configuration.
38
38
  *
39
- * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#registerStore
39
+ * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#register
40
40
  *
41
41
  * @type {Object}
42
42
  */
@@ -54,11 +54,9 @@ const storeConfig = {
54
54
  * @type {Object}
55
55
  */
56
56
 
57
- const store = (0, _data.createReduxStore)(_constants.STORE_NAME, storeConfig); // Once we build a more generic persistence plugin that works across types of stores
58
- // we'd be able to replace this with a register call.
59
-
57
+ const store = (0, _data.createReduxStore)(_constants.STORE_NAME, storeConfig);
60
58
  exports.store = store;
61
- (0, _data.registerStore)(_constants.STORE_NAME, storeConfig); // This package uses a few in-memory post types as wrappers for convenience.
59
+ (0, _data.register)(store); // This package uses a few in-memory post types as wrappers for convenience.
62
60
  // This middleware prevents any network requests related to these types as they are
63
61
  // bound to fail anyway.
64
62
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/store/index.js"],"names":["storeConfig","reducer","selectors","resolvers","actions","store","STORE_NAME","apiFetch","use","options","next","path","indexOf","Promise","resolve"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;;;;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG;AACnBC,EAAAA,OAAO,EAAPA,gBADmB;AAEnBC,EAAAA,SAFmB;AAGnBC,EAAAA,SAHmB;AAInBC,EAAAA;AAJmB,CAApB;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,MAAMC,KAAK,GAAG,4BAAkBC,qBAAlB,EAA8BN,WAA9B,CAAd,C,CAEP;AACA;;;AACA,yBAAeM,qBAAf,EAA2BN,WAA3B,E,CAEA;AACA;AACA;;AACAO,kBAASC,GAAT,CAAc,UAAWC,OAAX,EAAoBC,IAApB,EAA2B;AAAA;;AACxC,MAAK,kBAAAD,OAAO,CAACE,IAAR,gEAAcC,OAAd,CAAuB,0BAAvB,OAAwD,CAA7D,EAAiE;AAChE,WAAOC,OAAO,CAACC,OAAR,CAAiB,EAAjB,CAAP;AACA;;AAED,SAAOJ,IAAI,CAAED,OAAF,CAAX;AACA,CAND","sourcesContent":["/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\nimport { createReduxStore, registerStore } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport reducer from './reducer';\nimport * as resolvers from './resolvers';\nimport * as selectors from './selectors';\nimport * as actions from './actions';\nimport { STORE_NAME } from './constants';\n\n/**\n * Block editor data store configuration.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#registerStore\n *\n * @type {Object}\n */\nconst storeConfig = {\n\treducer,\n\tselectors,\n\tresolvers,\n\tactions,\n};\n\n/**\n * Store definition for the edit widgets namespace.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#createReduxStore\n *\n * @type {Object}\n */\nexport const store = createReduxStore( STORE_NAME, storeConfig );\n\n// Once we build a more generic persistence plugin that works across types of stores\n// we'd be able to replace this with a register call.\nregisterStore( STORE_NAME, storeConfig );\n\n// This package uses a few in-memory post types as wrappers for convenience.\n// This middleware prevents any network requests related to these types as they are\n// bound to fail anyway.\napiFetch.use( function ( options, next ) {\n\tif ( options.path?.indexOf( '/wp/v2/types/widget-area' ) === 0 ) {\n\t\treturn Promise.resolve( {} );\n\t}\n\n\treturn next( options );\n} );\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/store/index.js"],"names":["storeConfig","reducer","selectors","resolvers","actions","store","STORE_NAME","apiFetch","use","options","next","path","indexOf","Promise","resolve"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;;;;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG;AACnBC,EAAAA,OAAO,EAAPA,gBADmB;AAEnBC,EAAAA,SAFmB;AAGnBC,EAAAA,SAHmB;AAInBC,EAAAA;AAJmB,CAApB;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,MAAMC,KAAK,GAAG,4BAAkBC,qBAAlB,EAA8BN,WAA9B,CAAd;;AACP,oBAAUK,KAAV,E,CAEA;AACA;AACA;;AACAE,kBAASC,GAAT,CAAc,UAAWC,OAAX,EAAoBC,IAApB,EAA2B;AAAA;;AACxC,MAAK,kBAAAD,OAAO,CAACE,IAAR,gEAAcC,OAAd,CAAuB,0BAAvB,OAAwD,CAA7D,EAAiE;AAChE,WAAOC,OAAO,CAACC,OAAR,CAAiB,EAAjB,CAAP;AACA;;AAED,SAAOJ,IAAI,CAAED,OAAF,CAAX;AACA,CAND","sourcesContent":["/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\nimport { createReduxStore, register } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport reducer from './reducer';\nimport * as resolvers from './resolvers';\nimport * as selectors from './selectors';\nimport * as actions from './actions';\nimport { STORE_NAME } from './constants';\n\n/**\n * Block editor data store configuration.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#register\n *\n * @type {Object}\n */\nconst storeConfig = {\n\treducer,\n\tselectors,\n\tresolvers,\n\tactions,\n};\n\n/**\n * Store definition for the edit widgets namespace.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#createReduxStore\n *\n * @type {Object}\n */\nexport const store = createReduxStore( STORE_NAME, storeConfig );\nregister( store );\n\n// This package uses a few in-memory post types as wrappers for convenience.\n// This middleware prevents any network requests related to these types as they are\n// bound to fail anyway.\napiFetch.use( function ( options, next ) {\n\tif ( options.path?.indexOf( '/wp/v2/types/widget-area' ) === 0 ) {\n\t\treturn Promise.resolve( {} );\n\t}\n\n\treturn next( options );\n} );\n"]}
@@ -51,7 +51,7 @@ function Header() {
51
51
 
52
52
  const handleClick = () => {
53
53
  if (isInserterOpen) {
54
- // Focusing the inserter button closes the inserter popover
54
+ // Focusing the inserter button closes the inserter popover.
55
55
  setIsInserterOpened(false);
56
56
  } else {
57
57
  if (!isLastSelectedWidgetAreaOpen) {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/header/index.js"],"names":["useSelect","useDispatch","__","_x","Button","ToolbarItem","VisuallyHidden","NavigableToolbar","store","blockEditorStore","PinnedItems","listView","plus","useCallback","useRef","useViewportMatch","SaveButton","UndoButton","RedoButton","MoreMenu","useLastSelectedWidgetArea","editWidgetsStore","Header","isMediumViewport","inserterButton","widgetAreaClientId","isLastSelectedWidgetAreaOpen","select","getIsWidgetAreaOpen","isInserterOpen","isListViewOpen","isInserterOpened","isListViewOpened","setIsWidgetAreaOpen","setIsInserterOpened","setIsListViewOpened","selectBlock","handleClick","window","requestAnimationFrame","toggleListView","event","preventDefault"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport { Button, ToolbarItem, VisuallyHidden } from '@wordpress/components';\nimport {\n\tNavigableToolbar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { PinnedItems } from '@wordpress/interface';\nimport { listView, plus } from '@wordpress/icons';\nimport { useCallback, useRef } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SaveButton from '../save-button';\nimport UndoButton from './undo-redo/undo';\nimport RedoButton from './undo-redo/redo';\nimport MoreMenu from '../more-menu';\nimport useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';\nimport { store as editWidgetsStore } from '../../store';\n\nfunction Header() {\n\tconst isMediumViewport = useViewportMatch( 'medium' );\n\tconst inserterButton = useRef();\n\tconst widgetAreaClientId = useLastSelectedWidgetArea();\n\tconst isLastSelectedWidgetAreaOpen = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editWidgetsStore ).getIsWidgetAreaOpen(\n\t\t\t\twidgetAreaClientId\n\t\t\t),\n\t\t[ widgetAreaClientId ]\n\t);\n\tconst { isInserterOpen, isListViewOpen } = useSelect( ( select ) => {\n\t\tconst { isInserterOpened, isListViewOpened } = select(\n\t\t\teditWidgetsStore\n\t\t);\n\t\treturn {\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t};\n\t}, [] );\n\tconst {\n\t\tsetIsWidgetAreaOpen,\n\t\tsetIsInserterOpened,\n\t\tsetIsListViewOpened,\n\t} = useDispatch( editWidgetsStore );\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst handleClick = () => {\n\t\tif ( isInserterOpen ) {\n\t\t\t// Focusing the inserter button closes the inserter popover\n\t\t\tsetIsInserterOpened( false );\n\t\t} else {\n\t\t\tif ( ! isLastSelectedWidgetAreaOpen ) {\n\t\t\t\t// Select the last selected block if hasn't already.\n\t\t\t\tselectBlock( widgetAreaClientId );\n\t\t\t\t// Open the last selected widget area when opening the inserter.\n\t\t\t\tsetIsWidgetAreaOpen( widgetAreaClientId, true );\n\t\t\t}\n\t\t\t// The DOM updates resulting from selectBlock() and setIsInserterOpened() calls are applied the\n\t\t\t// same tick and pretty much in a random order. The inserter is closed if any other part of the\n\t\t\t// app receives focus. If selectBlock() happens to take effect after setIsInserterOpened() then\n\t\t\t// the inserter is visible for a brief moment and then gets auto-closed due to focus moving to\n\t\t\t// the selected block.\n\t\t\twindow.requestAnimationFrame( () => setIsInserterOpened( true ) );\n\t\t}\n\t};\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-widgets-header\">\n\t\t\t\t<div className=\"edit-widgets-header__navigable-toolbar-wrapper\">\n\t\t\t\t\t{ isMediumViewport && (\n\t\t\t\t\t\t<h1 className=\"edit-widgets-header__title\">\n\t\t\t\t\t\t\t{ __( 'Widgets' ) }\n\t\t\t\t\t\t</h1>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isMediumViewport && (\n\t\t\t\t\t\t<VisuallyHidden\n\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\tclassName=\"edit-widgets-header__title\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Widgets' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t) }\n\t\t\t\t\t<NavigableToolbar\n\t\t\t\t\t\tclassName=\"edit-widgets-header-toolbar\"\n\t\t\t\t\t\taria-label={ __( 'Document tools' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tclassName=\"edit-widgets-header-toolbar__inserter-toggle\"\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tisPressed={ isInserterOpen }\n\t\t\t\t\t\t\tonMouseDown={ ( event ) => {\n\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClick={ handleClick }\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16\n\t\t\t\t\tcharacters. */\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Toggle block inserter',\n\t\t\t\t\t\t\t\t'Generic label for block inserter button'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ isMediumViewport && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<UndoButton />\n\t\t\t\t\t\t\t\t<RedoButton />\n\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-widgets-header-toolbar__list-view-toggle\"\n\t\t\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</NavigableToolbar>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"edit-widgets-header__actions\">\n\t\t\t\t\t<SaveButton />\n\t\t\t\t\t<PinnedItems.Slot scope=\"core/edit-widgets\" />\n\t\t\t\t\t<MoreMenu />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default Header;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/header/index.js"],"names":["useSelect","useDispatch","__","_x","Button","ToolbarItem","VisuallyHidden","NavigableToolbar","store","blockEditorStore","PinnedItems","listView","plus","useCallback","useRef","useViewportMatch","SaveButton","UndoButton","RedoButton","MoreMenu","useLastSelectedWidgetArea","editWidgetsStore","Header","isMediumViewport","inserterButton","widgetAreaClientId","isLastSelectedWidgetAreaOpen","select","getIsWidgetAreaOpen","isInserterOpen","isListViewOpen","isInserterOpened","isListViewOpened","setIsWidgetAreaOpen","setIsInserterOpened","setIsListViewOpened","selectBlock","handleClick","window","requestAnimationFrame","toggleListView","event","preventDefault"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport { Button, ToolbarItem, VisuallyHidden } from '@wordpress/components';\nimport {\n\tNavigableToolbar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { PinnedItems } from '@wordpress/interface';\nimport { listView, plus } from '@wordpress/icons';\nimport { useCallback, useRef } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SaveButton from '../save-button';\nimport UndoButton from './undo-redo/undo';\nimport RedoButton from './undo-redo/redo';\nimport MoreMenu from '../more-menu';\nimport useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';\nimport { store as editWidgetsStore } from '../../store';\n\nfunction Header() {\n\tconst isMediumViewport = useViewportMatch( 'medium' );\n\tconst inserterButton = useRef();\n\tconst widgetAreaClientId = useLastSelectedWidgetArea();\n\tconst isLastSelectedWidgetAreaOpen = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editWidgetsStore ).getIsWidgetAreaOpen(\n\t\t\t\twidgetAreaClientId\n\t\t\t),\n\t\t[ widgetAreaClientId ]\n\t);\n\tconst { isInserterOpen, isListViewOpen } = useSelect( ( select ) => {\n\t\tconst { isInserterOpened, isListViewOpened } = select(\n\t\t\teditWidgetsStore\n\t\t);\n\t\treturn {\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t};\n\t}, [] );\n\tconst {\n\t\tsetIsWidgetAreaOpen,\n\t\tsetIsInserterOpened,\n\t\tsetIsListViewOpened,\n\t} = useDispatch( editWidgetsStore );\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst handleClick = () => {\n\t\tif ( isInserterOpen ) {\n\t\t\t// Focusing the inserter button closes the inserter popover.\n\t\t\tsetIsInserterOpened( false );\n\t\t} else {\n\t\t\tif ( ! isLastSelectedWidgetAreaOpen ) {\n\t\t\t\t// Select the last selected block if hasn't already.\n\t\t\t\tselectBlock( widgetAreaClientId );\n\t\t\t\t// Open the last selected widget area when opening the inserter.\n\t\t\t\tsetIsWidgetAreaOpen( widgetAreaClientId, true );\n\t\t\t}\n\t\t\t// The DOM updates resulting from selectBlock() and setIsInserterOpened() calls are applied the\n\t\t\t// same tick and pretty much in a random order. The inserter is closed if any other part of the\n\t\t\t// app receives focus. If selectBlock() happens to take effect after setIsInserterOpened() then\n\t\t\t// the inserter is visible for a brief moment and then gets auto-closed due to focus moving to\n\t\t\t// the selected block.\n\t\t\twindow.requestAnimationFrame( () => setIsInserterOpened( true ) );\n\t\t}\n\t};\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-widgets-header\">\n\t\t\t\t<div className=\"edit-widgets-header__navigable-toolbar-wrapper\">\n\t\t\t\t\t{ isMediumViewport && (\n\t\t\t\t\t\t<h1 className=\"edit-widgets-header__title\">\n\t\t\t\t\t\t\t{ __( 'Widgets' ) }\n\t\t\t\t\t\t</h1>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isMediumViewport && (\n\t\t\t\t\t\t<VisuallyHidden\n\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\tclassName=\"edit-widgets-header__title\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Widgets' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t) }\n\t\t\t\t\t<NavigableToolbar\n\t\t\t\t\t\tclassName=\"edit-widgets-header-toolbar\"\n\t\t\t\t\t\taria-label={ __( 'Document tools' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tclassName=\"edit-widgets-header-toolbar__inserter-toggle\"\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tisPressed={ isInserterOpen }\n\t\t\t\t\t\t\tonMouseDown={ ( event ) => {\n\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClick={ handleClick }\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16\n\t\t\t\t\tcharacters. */\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Toggle block inserter',\n\t\t\t\t\t\t\t\t'Generic label for block inserter button'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ isMediumViewport && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<UndoButton />\n\t\t\t\t\t\t\t\t<RedoButton />\n\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-widgets-header-toolbar__list-view-toggle\"\n\t\t\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</NavigableToolbar>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"edit-widgets-header__actions\">\n\t\t\t\t\t<SaveButton />\n\t\t\t\t\t<PinnedItems.Slot scope=\"core/edit-widgets\" />\n\t\t\t\t\t<MoreMenu />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default Header;\n"]}
@@ -36,7 +36,7 @@ function KeyboardShortcuts() {
36
36
  }
37
37
 
38
38
  function KeyboardShortcutsRegister() {
39
- // Registering the shortcuts
39
+ // Registering the shortcuts.
40
40
  const {
41
41
  registerShortcut
42
42
  } = useDispatch(keyboardShortcutsStore);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/keyboard-shortcuts/index.js"],"names":["useEffect","useShortcut","store","keyboardShortcutsStore","useDispatch","__","coreStore","editWidgetsStore","KeyboardShortcuts","redo","undo","saveEditedWidgetAreas","event","preventDefault","KeyboardShortcutsRegister","registerShortcut","name","category","description","keyCombination","modifier","character","aliases","Register"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editWidgetsStore } from '../../store';\n\nfunction KeyboardShortcuts() {\n\tconst { redo, undo } = useDispatch( coreStore );\n\tconst { saveEditedWidgetAreas } = useDispatch( editWidgetsStore );\n\n\tuseShortcut( 'core/edit-widgets/undo', ( event ) => {\n\t\tundo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-widgets/redo', ( event ) => {\n\t\tredo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-widgets/save', ( event ) => {\n\t\tevent.preventDefault();\n\t\tsaveEditedWidgetAreas();\n\t} );\n\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\t// Registering the shortcuts\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-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/edit-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} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-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/edit-widgets/keyboard-shortcuts',\n\t\t\tcategory: 'main',\n\t\t\tdescription: __( 'Display these keyboard shortcuts.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'h',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-widgets/next-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrl',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'n',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-widgets/previous-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'p',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\nexport default KeyboardShortcuts;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/keyboard-shortcuts/index.js"],"names":["useEffect","useShortcut","store","keyboardShortcutsStore","useDispatch","__","coreStore","editWidgetsStore","KeyboardShortcuts","redo","undo","saveEditedWidgetAreas","event","preventDefault","KeyboardShortcutsRegister","registerShortcut","name","category","description","keyCombination","modifier","character","aliases","Register"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editWidgetsStore } from '../../store';\n\nfunction KeyboardShortcuts() {\n\tconst { redo, undo } = useDispatch( coreStore );\n\tconst { saveEditedWidgetAreas } = useDispatch( editWidgetsStore );\n\n\tuseShortcut( 'core/edit-widgets/undo', ( event ) => {\n\t\tundo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-widgets/redo', ( event ) => {\n\t\tredo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-widgets/save', ( event ) => {\n\t\tevent.preventDefault();\n\t\tsaveEditedWidgetAreas();\n\t} );\n\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\t// Registering the shortcuts.\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-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/edit-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} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-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/edit-widgets/keyboard-shortcuts',\n\t\t\tcategory: 'main',\n\t\t\tdescription: __( 'Display these keyboard shortcuts.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'h',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-widgets/next-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrl',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'n',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-widgets/previous-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'p',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\nexport default KeyboardShortcuts;\n"]}
@@ -10,6 +10,7 @@ import { useDispatch, useSelect } from '@wordpress/data';
10
10
  import { InterfaceSkeleton, ComplementaryArea, store as interfaceStore } from '@wordpress/interface';
11
11
  import { __ } from '@wordpress/i18n';
12
12
  import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
13
+ import { store as preferencesStore } from '@wordpress/preferences';
13
14
  /**
14
15
  * Internal dependencies
15
16
  */
@@ -54,7 +55,7 @@ function Interface(_ref) {
54
55
  hasSidebarEnabled: !!select(interfaceStore).getActiveComplementaryArea(editWidgetsStore.name),
55
56
  isInserterOpened: !!select(editWidgetsStore).isInserterOpened(),
56
57
  isListViewOpened: !!select(editWidgetsStore).isListViewOpened(),
57
- hasBlockBreadCrumbsEnabled: select(interfaceStore).isFeatureActive('core/edit-widgets', 'showBlockBreadcrumbs'),
58
+ hasBlockBreadCrumbsEnabled: !!select(preferencesStore).get('core/edit-widgets', 'showBlockBreadcrumbs'),
58
59
  previousShortcut: select(keyboardShortcutsStore).getAllShortcutKeyCombinations('core/edit-widgets/previous-region'),
59
60
  nextShortcut: select(keyboardShortcutsStore).getAllShortcutKeyCombinations('core/edit-widgets/next-region')
60
61
  }), []); // Inserter and Sidebars are mutually exclusive
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/layout/interface.js"],"names":["useViewportMatch","BlockBreadcrumb","BlockStyles","useEffect","useDispatch","useSelect","InterfaceSkeleton","ComplementaryArea","store","interfaceStore","__","keyboardShortcutsStore","Header","WidgetAreasBlockEditorContent","editWidgetsStore","SecondarySidebar","interfaceLabels","header","body","sidebar","footer","Interface","blockEditorSettings","isMobileViewport","isHugeViewport","setIsInserterOpened","setIsListViewOpened","closeGeneralSidebar","hasBlockBreadCrumbsEnabled","hasSidebarEnabled","isInserterOpened","isListViewOpened","previousShortcut","nextShortcut","select","getActiveComplementaryArea","name","isFeatureActive","getAllShortcutKeyCombinations","hasSecondarySidebar","previous","next"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { BlockBreadcrumb, BlockStyles } from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport Header from '../header';\nimport WidgetAreasBlockEditorContent from '../widget-areas-block-editor-content';\nimport { store as editWidgetsStore } from '../../store';\nimport SecondarySidebar from '../secondary-sidebar';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the widgets screen top bar landmark region. */\n\theader: __( 'Widgets top bar' ),\n\t/* translators: accessibility text for the widgets screen content landmark region. */\n\tbody: __( 'Widgets and blocks' ),\n\t/* translators: accessibility text for the widgets screen settings landmark region. */\n\tsidebar: __( 'Widgets settings' ),\n\t/* translators: accessibility text for the widgets screen footer landmark region. */\n\tfooter: __( 'Widgets footer' ),\n};\n\nfunction Interface( { blockEditorSettings } ) {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isHugeViewport = useViewportMatch( 'huge', '>=' );\n\tconst {\n\t\tsetIsInserterOpened,\n\t\tsetIsListViewOpened,\n\t\tcloseGeneralSidebar,\n\t} = useDispatch( editWidgetsStore );\n\tconst {\n\t\thasBlockBreadCrumbsEnabled,\n\t\thasSidebarEnabled,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t} = useSelect(\n\t\t( select ) => ( {\n\t\t\thasSidebarEnabled: !! select(\n\t\t\t\tinterfaceStore\n\t\t\t).getActiveComplementaryArea( editWidgetsStore.name ),\n\t\t\tisInserterOpened: !! select( editWidgetsStore ).isInserterOpened(),\n\t\t\tisListViewOpened: !! select( editWidgetsStore ).isListViewOpened(),\n\t\t\thasBlockBreadCrumbsEnabled: select(\n\t\t\t\tinterfaceStore\n\t\t\t).isFeatureActive( 'core/edit-widgets', 'showBlockBreadcrumbs' ),\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations(\n\t\t\t\t'core/edit-widgets/previous-region'\n\t\t\t),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-widgets/next-region' ),\n\t\t} ),\n\t\t[]\n\t);\n\n\t// Inserter and Sidebars are mutually exclusive\n\tuseEffect( () => {\n\t\tif ( hasSidebarEnabled && ! isHugeViewport ) {\n\t\t\tsetIsInserterOpened( false );\n\t\t\tsetIsListViewOpened( false );\n\t\t}\n\t}, [ hasSidebarEnabled, isHugeViewport ] );\n\n\tuseEffect( () => {\n\t\tif ( ( isInserterOpened || isListViewOpened ) && ! isHugeViewport ) {\n\t\t\tcloseGeneralSidebar();\n\t\t}\n\t}, [ isInserterOpened, isListViewOpened, isHugeViewport ] );\n\n\tconst hasSecondarySidebar = isListViewOpened || isInserterOpened;\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tlabels={ interfaceLabels }\n\t\t\theader={ <Header /> }\n\t\t\tsecondarySidebar={ hasSecondarySidebar && <SecondarySidebar /> }\n\t\t\tsidebar={\n\t\t\t\thasSidebarEnabled && (\n\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-widgets\" />\n\t\t\t\t)\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t<WidgetAreasBlockEditorContent\n\t\t\t\t\t\tblockEditorSettings={ blockEditorSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<BlockStyles.Slot scope=\"core/block-inspector\" />\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\thasBlockBreadCrumbsEnabled &&\n\t\t\t\t! isMobileViewport && (\n\t\t\t\t\t<div className=\"edit-widgets-layout__footer\">\n\t\t\t\t\t\t<BlockBreadcrumb rootLabelText={ __( 'Widgets' ) } />\n\t\t\t\t\t</div>\n\t\t\t\t)\n\t\t\t}\n\t\t\tshortcuts={ {\n\t\t\t\tprevious: previousShortcut,\n\t\t\t\tnext: nextShortcut,\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nexport default Interface;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/layout/interface.js"],"names":["useViewportMatch","BlockBreadcrumb","BlockStyles","useEffect","useDispatch","useSelect","InterfaceSkeleton","ComplementaryArea","store","interfaceStore","__","keyboardShortcutsStore","preferencesStore","Header","WidgetAreasBlockEditorContent","editWidgetsStore","SecondarySidebar","interfaceLabels","header","body","sidebar","footer","Interface","blockEditorSettings","isMobileViewport","isHugeViewport","setIsInserterOpened","setIsListViewOpened","closeGeneralSidebar","hasBlockBreadCrumbsEnabled","hasSidebarEnabled","isInserterOpened","isListViewOpened","previousShortcut","nextShortcut","select","getActiveComplementaryArea","name","get","getAllShortcutKeyCombinations","hasSecondarySidebar","previous","next"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,gBAAT,QAAiC,oBAAjC;AACA,SAASC,eAAT,EAA0BC,WAA1B,QAA6C,yBAA7C;AACA,SAASC,SAAT,QAA0B,oBAA1B;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SACCC,iBADD,EAECC,iBAFD,EAGCC,KAAK,IAAIC,cAHV,QAIO,sBAJP;AAKA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASF,KAAK,IAAIG,sBAAlB,QAAgD,+BAAhD;AACA,SAASH,KAAK,IAAII,gBAAlB,QAA0C,wBAA1C;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,6BAAP,MAA0C,sCAA1C;AACA,SAASN,KAAK,IAAIO,gBAAlB,QAA0C,aAA1C;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AAEA,MAAMC,eAAe,GAAG;AACvB;AACAC,EAAAA,MAAM,EAAER,EAAE,CAAE,iBAAF,CAFa;;AAGvB;AACAS,EAAAA,IAAI,EAAET,EAAE,CAAE,oBAAF,CAJe;;AAKvB;AACAU,EAAAA,OAAO,EAAEV,EAAE,CAAE,kBAAF,CANY;;AAOvB;AACAW,EAAAA,MAAM,EAAEX,EAAE,CAAE,gBAAF;AARa,CAAxB;;AAWA,SAASY,SAAT,OAA8C;AAAA,MAA1B;AAAEC,IAAAA;AAAF,GAA0B;AAC7C,QAAMC,gBAAgB,GAAGxB,gBAAgB,CAAE,QAAF,EAAY,GAAZ,CAAzC;AACA,QAAMyB,cAAc,GAAGzB,gBAAgB,CAAE,MAAF,EAAU,IAAV,CAAvC;AACA,QAAM;AACL0B,IAAAA,mBADK;AAELC,IAAAA,mBAFK;AAGLC,IAAAA;AAHK,MAIFxB,WAAW,CAAEW,gBAAF,CAJf;AAKA,QAAM;AACLc,IAAAA,0BADK;AAELC,IAAAA,iBAFK;AAGLC,IAAAA,gBAHK;AAILC,IAAAA,gBAJK;AAKLC,IAAAA,gBALK;AAMLC,IAAAA;AANK,MAOF7B,SAAS,CACV8B,MAAF,KAAgB;AACfL,IAAAA,iBAAiB,EAAE,CAAC,CAAEK,MAAM,CAC3B1B,cAD2B,CAAN,CAEpB2B,0BAFoB,CAEQrB,gBAAgB,CAACsB,IAFzB,CADP;AAIfN,IAAAA,gBAAgB,EAAE,CAAC,CAAEI,MAAM,CAAEpB,gBAAF,CAAN,CAA2BgB,gBAA3B,EAJN;AAKfC,IAAAA,gBAAgB,EAAE,CAAC,CAAEG,MAAM,CAAEpB,gBAAF,CAAN,CAA2BiB,gBAA3B,EALN;AAMfH,IAAAA,0BAA0B,EAAE,CAAC,CAAEM,MAAM,CAAEvB,gBAAF,CAAN,CAA2B0B,GAA3B,CAC9B,mBAD8B,EAE9B,sBAF8B,CANhB;AAUfL,IAAAA,gBAAgB,EAAEE,MAAM,CACvBxB,sBADuB,CAAN,CAEhB4B,6BAFgB,CAGjB,mCAHiB,CAVH;AAefL,IAAAA,YAAY,EAAEC,MAAM,CACnBxB,sBADmB,CAAN,CAEZ4B,6BAFY,CAEmB,+BAFnB;AAfC,GAAhB,CADY,EAoBZ,EApBY,CAPb,CAR6C,CAsC7C;;AACApC,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAK2B,iBAAiB,IAAI,CAAEL,cAA5B,EAA6C;AAC5CC,MAAAA,mBAAmB,CAAE,KAAF,CAAnB;AACAC,MAAAA,mBAAmB,CAAE,KAAF,CAAnB;AACA;AACD,GALQ,EAKN,CAAEG,iBAAF,EAAqBL,cAArB,CALM,CAAT;AAOAtB,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAK,CAAE4B,gBAAgB,IAAIC,gBAAtB,KAA4C,CAAEP,cAAnD,EAAoE;AACnEG,MAAAA,mBAAmB;AACnB;AACD,GAJQ,EAIN,CAAEG,gBAAF,EAAoBC,gBAApB,EAAsCP,cAAtC,CAJM,CAAT;AAMA,QAAMe,mBAAmB,GAAGR,gBAAgB,IAAID,gBAAhD;AAEA,SACC,cAAC,iBAAD;AACC,IAAA,MAAM,EAAGd,eADV;AAEC,IAAA,MAAM,EAAG,cAAC,MAAD,OAFV;AAGC,IAAA,gBAAgB,EAAGuB,mBAAmB,IAAI,cAAC,gBAAD,OAH3C;AAIC,IAAA,OAAO,EACNV,iBAAiB,IAChB,cAAC,iBAAD,CAAmB,IAAnB;AAAwB,MAAA,KAAK,EAAC;AAA9B,MANH;AASC,IAAA,OAAO,EACN,8BACC,cAAC,6BAAD;AACC,MAAA,mBAAmB,EAAGP;AADvB,MADD,EAIC,cAAC,WAAD,CAAa,IAAb;AAAkB,MAAA,KAAK,EAAC;AAAxB,MAJD,CAVF;AAiBC,IAAA,MAAM,EACLM,0BAA0B,IAC1B,CAAEL,gBADF,IAEC;AAAK,MAAA,SAAS,EAAC;AAAf,OACC,cAAC,eAAD;AAAiB,MAAA,aAAa,EAAGd,EAAE,CAAE,SAAF;AAAnC,MADD,CApBH;AAyBC,IAAA,SAAS,EAAG;AACX+B,MAAAA,QAAQ,EAAER,gBADC;AAEXS,MAAAA,IAAI,EAAER;AAFK;AAzBb,IADD;AAgCA;;AAED,eAAeZ,SAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { BlockBreadcrumb, BlockStyles } from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport Header from '../header';\nimport WidgetAreasBlockEditorContent from '../widget-areas-block-editor-content';\nimport { store as editWidgetsStore } from '../../store';\nimport SecondarySidebar from '../secondary-sidebar';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the widgets screen top bar landmark region. */\n\theader: __( 'Widgets top bar' ),\n\t/* translators: accessibility text for the widgets screen content landmark region. */\n\tbody: __( 'Widgets and blocks' ),\n\t/* translators: accessibility text for the widgets screen settings landmark region. */\n\tsidebar: __( 'Widgets settings' ),\n\t/* translators: accessibility text for the widgets screen footer landmark region. */\n\tfooter: __( 'Widgets footer' ),\n};\n\nfunction Interface( { blockEditorSettings } ) {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isHugeViewport = useViewportMatch( 'huge', '>=' );\n\tconst {\n\t\tsetIsInserterOpened,\n\t\tsetIsListViewOpened,\n\t\tcloseGeneralSidebar,\n\t} = useDispatch( editWidgetsStore );\n\tconst {\n\t\thasBlockBreadCrumbsEnabled,\n\t\thasSidebarEnabled,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t} = useSelect(\n\t\t( select ) => ( {\n\t\t\thasSidebarEnabled: !! select(\n\t\t\t\tinterfaceStore\n\t\t\t).getActiveComplementaryArea( editWidgetsStore.name ),\n\t\t\tisInserterOpened: !! select( editWidgetsStore ).isInserterOpened(),\n\t\t\tisListViewOpened: !! select( editWidgetsStore ).isListViewOpened(),\n\t\t\thasBlockBreadCrumbsEnabled: !! select( preferencesStore ).get(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations(\n\t\t\t\t'core/edit-widgets/previous-region'\n\t\t\t),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-widgets/next-region' ),\n\t\t} ),\n\t\t[]\n\t);\n\n\t// Inserter and Sidebars are mutually exclusive\n\tuseEffect( () => {\n\t\tif ( hasSidebarEnabled && ! isHugeViewport ) {\n\t\t\tsetIsInserterOpened( false );\n\t\t\tsetIsListViewOpened( false );\n\t\t}\n\t}, [ hasSidebarEnabled, isHugeViewport ] );\n\n\tuseEffect( () => {\n\t\tif ( ( isInserterOpened || isListViewOpened ) && ! isHugeViewport ) {\n\t\t\tcloseGeneralSidebar();\n\t\t}\n\t}, [ isInserterOpened, isListViewOpened, isHugeViewport ] );\n\n\tconst hasSecondarySidebar = isListViewOpened || isInserterOpened;\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tlabels={ interfaceLabels }\n\t\t\theader={ <Header /> }\n\t\t\tsecondarySidebar={ hasSecondarySidebar && <SecondarySidebar /> }\n\t\t\tsidebar={\n\t\t\t\thasSidebarEnabled && (\n\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-widgets\" />\n\t\t\t\t)\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t<WidgetAreasBlockEditorContent\n\t\t\t\t\t\tblockEditorSettings={ blockEditorSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<BlockStyles.Slot scope=\"core/block-inspector\" />\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\thasBlockBreadCrumbsEnabled &&\n\t\t\t\t! isMobileViewport && (\n\t\t\t\t\t<div className=\"edit-widgets-layout__footer\">\n\t\t\t\t\t\t<BlockBreadcrumb rootLabelText={ __( 'Widgets' ) } />\n\t\t\t\t\t</div>\n\t\t\t\t)\n\t\t\t}\n\t\t\tshortcuts={ {\n\t\t\t\tprevious: previousShortcut,\n\t\t\t\tnext: nextShortcut,\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nexport default Interface;\n"]}
@@ -7,7 +7,8 @@ import { MenuGroup, MenuItem, VisuallyHidden } from '@wordpress/components';
7
7
  import { useState } from '@wordpress/element';
8
8
  import { __, _x } from '@wordpress/i18n';
9
9
  import { external } from '@wordpress/icons';
10
- import { MoreMenuDropdown, MoreMenuFeatureToggle } from '@wordpress/interface';
10
+ import { MoreMenuDropdown } from '@wordpress/interface';
11
+ import { PreferenceToggleMenuItem } from '@wordpress/preferences';
11
12
  import { displayShortcut } from '@wordpress/keycodes';
12
13
  import { useShortcut } from '@wordpress/keyboard-shortcuts';
13
14
  import { useViewportMatch } from '@wordpress/compose';
@@ -26,9 +27,9 @@ export default function MoreMenu() {
26
27
  const isLargeViewport = useViewportMatch('medium');
27
28
  return createElement(Fragment, null, createElement(MoreMenuDropdown, null, onClose => createElement(Fragment, null, isLargeViewport && createElement(MenuGroup, {
28
29
  label: _x('View', 'noun')
29
- }, createElement(MoreMenuFeatureToggle, {
30
+ }, createElement(PreferenceToggleMenuItem, {
30
31
  scope: "core/edit-widgets",
31
- feature: "fixedToolbar",
32
+ name: "fixedToolbar",
32
33
  label: __('Top toolbar'),
33
34
  info: __('Access all block and document tools in a single place'),
34
35
  messageActivated: __('Top toolbar activated'),
@@ -40,9 +41,9 @@ export default function MoreMenu() {
40
41
  setIsKeyboardShortcutsModalVisible(true);
41
42
  },
42
43
  shortcut: displayShortcut.access('h')
43
- }, __('Keyboard shortcuts')), createElement(MoreMenuFeatureToggle, {
44
+ }, __('Keyboard shortcuts')), createElement(PreferenceToggleMenuItem, {
44
45
  scope: "core/edit-widgets",
45
- feature: "welcomeGuide",
46
+ name: "welcomeGuide",
46
47
  label: __('Welcome Guide')
47
48
  }), createElement(MenuItem, {
48
49
  role: "menuitem",
@@ -60,21 +61,21 @@ export default function MoreMenu() {
60
61
  }
61
62
  })), createElement(MenuGroup, {
62
63
  label: __('Preferences')
63
- }, createElement(MoreMenuFeatureToggle, {
64
+ }, createElement(PreferenceToggleMenuItem, {
64
65
  scope: "core/edit-widgets",
65
- feature: "keepCaretInsideBlock",
66
+ name: "keepCaretInsideBlock",
66
67
  label: __('Contain text cursor inside block'),
67
68
  info: __('Aids screen readers by stopping text caret from leaving blocks.'),
68
69
  messageActivated: __('Contain text cursor inside block activated'),
69
70
  messageDeactivated: __('Contain text cursor inside block deactivated')
70
- }), createElement(MoreMenuFeatureToggle, {
71
+ }), createElement(PreferenceToggleMenuItem, {
71
72
  scope: "core/edit-widgets",
72
- feature: "themeStyles",
73
+ name: "themeStyles",
73
74
  info: __('Make the editor look like your theme.'),
74
75
  label: __('Use theme styles')
75
- }), isLargeViewport && createElement(MoreMenuFeatureToggle, {
76
+ }), isLargeViewport && createElement(PreferenceToggleMenuItem, {
76
77
  scope: "core/edit-widgets",
77
- feature: "showBlockBreadcrumbs",
78
+ name: "showBlockBreadcrumbs",
78
79
  label: __('Display block breadcrumbs'),
79
80
  info: __('Shows block breadcrumbs at the bottom of the editor.'),
80
81
  messageActivated: __('Display block breadcrumbs activated'),
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/more-menu/index.js"],"names":["MenuGroup","MenuItem","VisuallyHidden","useState","__","_x","external","MoreMenuDropdown","MoreMenuFeatureToggle","displayShortcut","useShortcut","useViewportMatch","KeyboardShortcutHelpModal","ToolsMoreMenuGroup","MoreMenu","isKeyboardShortcutsModalActive","setIsKeyboardShortcutsModalVisible","toggleKeyboardShortcutsModal","isLargeViewport","onClose","access"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { MenuGroup, MenuItem, VisuallyHidden } from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __, _x } from '@wordpress/i18n';\nimport { external } from '@wordpress/icons';\nimport { MoreMenuDropdown, MoreMenuFeatureToggle } from '@wordpress/interface';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\nimport ToolsMoreMenuGroup from './tools-more-menu-group';\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/edit-widgets/keyboard-shortcuts',\n\t\ttoggleKeyboardShortcutsModal\n\t);\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\n\treturn (\n\t\t<>\n\t\t\t<MoreMenuDropdown>\n\t\t\t\t{ ( onClose ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<MenuGroup label={ _x( 'View', 'noun' ) }>\n\t\t\t\t\t\t\t\t<MoreMenuFeatureToggle\n\t\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\t\tfeature=\"fixedToolbar\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Top toolbar' ) }\n\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\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\t) }\n\t\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Top toolbar activated'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Top toolbar deactivated'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\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<MoreMenuFeatureToggle\n\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\tfeature=\"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/support/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\t<ToolsMoreMenuGroup.Slot\n\t\t\t\t\t\t\t\tfillProps={ { onClose } }\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={ __( 'Preferences' ) }>\n\t\t\t\t\t\t\t<MoreMenuFeatureToggle\n\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\tfeature=\"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\t<MoreMenuFeatureToggle\n\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\tfeature=\"themeStyles\"\n\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t'Make the editor look like your theme.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Use theme styles' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t\t<MoreMenuFeatureToggle\n\t\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\t\tfeature=\"showBlockBreadcrumbs\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Display block breadcrumbs' ) }\n\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t\t'Shows block breadcrumbs at the bottom of the editor.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Display block breadcrumbs activated'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Display block breadcrumbs deactivated'\n\t\t\t\t\t\t\t\t\t) }\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</MoreMenuDropdown>\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"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/more-menu/index.js"],"names":["MenuGroup","MenuItem","VisuallyHidden","useState","__","_x","external","MoreMenuDropdown","PreferenceToggleMenuItem","displayShortcut","useShortcut","useViewportMatch","KeyboardShortcutHelpModal","ToolsMoreMenuGroup","MoreMenu","isKeyboardShortcutsModalActive","setIsKeyboardShortcutsModalVisible","toggleKeyboardShortcutsModal","isLargeViewport","onClose","access"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { MenuGroup, MenuItem, VisuallyHidden } from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __, _x } from '@wordpress/i18n';\nimport { external } from '@wordpress/icons';\nimport { MoreMenuDropdown } from '@wordpress/interface';\nimport { PreferenceToggleMenuItem } from '@wordpress/preferences';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\nimport ToolsMoreMenuGroup from './tools-more-menu-group';\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/edit-widgets/keyboard-shortcuts',\n\t\ttoggleKeyboardShortcutsModal\n\t);\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\n\treturn (\n\t\t<>\n\t\t\t<MoreMenuDropdown>\n\t\t\t\t{ ( onClose ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<MenuGroup label={ _x( 'View', 'noun' ) }>\n\t\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\t\tname=\"fixedToolbar\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Top toolbar' ) }\n\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\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\t) }\n\t\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Top toolbar activated'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Top toolbar deactivated'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\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/edit-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/support/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\t<ToolsMoreMenuGroup.Slot\n\t\t\t\t\t\t\t\tfillProps={ { onClose } }\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={ __( 'Preferences' ) }>\n\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/edit-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\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\tname=\"themeStyles\"\n\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t'Make the editor look like your theme.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Use theme styles' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t\t<PreferenceToggleMenuItem\n\t\t\t\t\t\t\t\t\tscope=\"core/edit-widgets\"\n\t\t\t\t\t\t\t\t\tname=\"showBlockBreadcrumbs\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Display block breadcrumbs' ) }\n\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t\t'Shows block breadcrumbs at the bottom of the editor.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tmessageActivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Display block breadcrumbs activated'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tmessageDeactivated={ __(\n\t\t\t\t\t\t\t\t\t\t'Display block breadcrumbs deactivated'\n\t\t\t\t\t\t\t\t\t) }\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</MoreMenuDropdown>\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"]}
@@ -7,7 +7,7 @@ import { useSelect, useDispatch } from '@wordpress/data';
7
7
  import { ExternalLink, Guide } from '@wordpress/components';
8
8
  import { __, sprintf, _n } from '@wordpress/i18n';
9
9
  import { createInterpolateElement } from '@wordpress/element';
10
- import { store as interfaceStore } from '@wordpress/interface';
10
+ import { store as preferencesStore } from '@wordpress/preferences';
11
11
  /**
12
12
  * Internal dependencies
13
13
  */
@@ -16,10 +16,10 @@ import { store as editWidgetsStore } from '../../store';
16
16
  export default function WelcomeGuide() {
17
17
  var _widgetAreas$filter$l;
18
18
 
19
- const isActive = useSelect(select => select(interfaceStore).isFeatureActive('core/edit-widgets', 'welcomeGuide'), []);
19
+ const isActive = useSelect(select => !!select(preferencesStore).get('core/edit-widgets', 'welcomeGuide'), []);
20
20
  const {
21
- toggleFeature
22
- } = useDispatch(interfaceStore);
21
+ toggle
22
+ } = useDispatch(preferencesStore);
23
23
  const widgetAreas = useSelect(select => select(editWidgetsStore).getWidgetAreas({
24
24
  per_page: -1
25
25
  }), []);
@@ -34,7 +34,7 @@ export default function WelcomeGuide() {
34
34
  className: "edit-widgets-welcome-guide",
35
35
  contentLabel: __('Welcome to block Widgets'),
36
36
  finishButtonText: __('Get started'),
37
- onFinish: () => toggleFeature('core/edit-widgets', 'welcomeGuide'),
37
+ onFinish: () => toggle('core/edit-widgets', 'welcomeGuide'),
38
38
  pages: [{
39
39
  image: createElement(WelcomeGuideImage, {
40
40
  nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-canvas.svg",
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/welcome-guide/index.js"],"names":["useSelect","useDispatch","ExternalLink","Guide","__","sprintf","_n","createInterpolateElement","store","interfaceStore","editWidgetsStore","WelcomeGuide","isActive","select","isFeatureActive","toggleFeature","widgetAreas","getWidgetAreas","per_page","isEntirelyBlockWidgets","every","widgetArea","id","widgets","widgetId","startsWith","numWidgetAreas","filter","length","image","content","InserterIconImage","WelcomeGuideImage","nonAnimatedSrc","animatedSrc"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { ExternalLink, Guide } from '@wordpress/components';\nimport { __, sprintf, _n } from '@wordpress/i18n';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editWidgetsStore } from '../../store';\n\nexport default function WelcomeGuide() {\n\tconst isActive = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).isFeatureActive(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'welcomeGuide'\n\t\t\t),\n\t\t[]\n\t);\n\n\tconst { toggleFeature } = useDispatch( interfaceStore );\n\n\tconst widgetAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editWidgetsStore ).getWidgetAreas( { per_page: -1 } ),\n\t\t[]\n\t);\n\n\tif ( ! isActive ) {\n\t\treturn null;\n\t}\n\n\tconst isEntirelyBlockWidgets = widgetAreas?.every(\n\t\t( widgetArea ) =>\n\t\t\twidgetArea.id === 'wp_inactive_widgets' ||\n\t\t\twidgetArea.widgets.every( ( widgetId ) =>\n\t\t\t\twidgetId.startsWith( 'block-' )\n\t\t\t)\n\t);\n\n\tconst numWidgetAreas =\n\t\twidgetAreas?.filter(\n\t\t\t( widgetArea ) => widgetArea.id !== 'wp_inactive_widgets'\n\t\t).length ?? 0;\n\n\treturn (\n\t\t<Guide\n\t\t\tclassName=\"edit-widgets-welcome-guide\"\n\t\t\tcontentLabel={ __( 'Welcome to block Widgets' ) }\n\t\t\tfinishButtonText={ __( 'Get started' ) }\n\t\t\tonFinish={ () =>\n\t\t\t\ttoggleFeature( 'core/edit-widgets', 'welcomeGuide' )\n\t\t\t}\n\t\t\tpages={ [\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-canvas.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-canvas.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Welcome to block Widgets' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t{ isEntirelyBlockWidgets ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t\t// Translators: %s: Number of block areas in the current theme.\n\t\t\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t\t\t'Your theme provides %s “block” area for you to add and edit content. Try adding a search bar, social icons, or other types of blocks here and see how they’ll look on your site.',\n\t\t\t\t\t\t\t\t\t\t\t\t'Your theme provides %s different “block” areas for you to add and edit content. Try adding a search bar, social icons, or other types of blocks here and see how they’ll look on your site.',\n\t\t\t\t\t\t\t\t\t\t\t\tnumWidgetAreas\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tnumWidgetAreas\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'You can now add any block to your site’s widget areas. Don’t worry, all of your favorite widgets still work flawlessly.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t\t\t<strong>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Want to stick with the old widgets?'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</strong>{ ' ' }\n\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/plugins/classic-widgets/'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Get the Classic Widgets plugin.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-editor.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-editor.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Make each block your own' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Each block comes with its own set of controls for changing things like color, width, and alignment. These will show and hide automatically when you have a block selected.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-library.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-library.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Get to know the block library' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'All of the blocks available to you live in the block library. You’ll find it wherever you see the <InserterIconImage /> icon.'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tInserterIconImage: (\n\t\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-widgets-welcome-guide__inserter-icon\"\n\t\t\t\t\t\t\t\t\t\t\t\talt={ __( 'inserter' ) }\n\t\t\t\t\t\t\t\t\t\t\t\tsrc=\"data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='18' height='18' rx='2' fill='%231E1E1E'/%3E%3Cpath d='M9.22727 4V14M4 8.77273H14' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E%0A\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-documentation.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-documentation.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Learn how to use the block editor' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'New to the block editor? Want to learn more about using it? '\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/support/article/wordpress-editor/'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( \"Here's a detailed guide.\" ) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t] }\n\t\t/>\n\t);\n}\n\nfunction WelcomeGuideImage( { nonAnimatedSrc, animatedSrc } ) {\n\treturn (\n\t\t<picture className=\"edit-widgets-welcome-guide__image\">\n\t\t\t<source\n\t\t\t\tsrcSet={ nonAnimatedSrc }\n\t\t\t\tmedia=\"(prefers-reduced-motion: reduce)\"\n\t\t\t/>\n\t\t\t<img src={ animatedSrc } width=\"312\" height=\"240\" alt=\"\" />\n\t\t</picture>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/welcome-guide/index.js"],"names":["useSelect","useDispatch","ExternalLink","Guide","__","sprintf","_n","createInterpolateElement","store","preferencesStore","editWidgetsStore","WelcomeGuide","isActive","select","get","toggle","widgetAreas","getWidgetAreas","per_page","isEntirelyBlockWidgets","every","widgetArea","id","widgets","widgetId","startsWith","numWidgetAreas","filter","length","image","content","InserterIconImage","WelcomeGuideImage","nonAnimatedSrc","animatedSrc"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { ExternalLink, Guide } from '@wordpress/components';\nimport { __, sprintf, _n } from '@wordpress/i18n';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { store as editWidgetsStore } from '../../store';\n\nexport default function WelcomeGuide() {\n\tconst isActive = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( preferencesStore ).get(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'welcomeGuide'\n\t\t\t),\n\t\t[]\n\t);\n\n\tconst { toggle } = useDispatch( preferencesStore );\n\n\tconst widgetAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editWidgetsStore ).getWidgetAreas( { per_page: -1 } ),\n\t\t[]\n\t);\n\n\tif ( ! isActive ) {\n\t\treturn null;\n\t}\n\n\tconst isEntirelyBlockWidgets = widgetAreas?.every(\n\t\t( widgetArea ) =>\n\t\t\twidgetArea.id === 'wp_inactive_widgets' ||\n\t\t\twidgetArea.widgets.every( ( widgetId ) =>\n\t\t\t\twidgetId.startsWith( 'block-' )\n\t\t\t)\n\t);\n\n\tconst numWidgetAreas =\n\t\twidgetAreas?.filter(\n\t\t\t( widgetArea ) => widgetArea.id !== 'wp_inactive_widgets'\n\t\t).length ?? 0;\n\n\treturn (\n\t\t<Guide\n\t\t\tclassName=\"edit-widgets-welcome-guide\"\n\t\t\tcontentLabel={ __( 'Welcome to block Widgets' ) }\n\t\t\tfinishButtonText={ __( 'Get started' ) }\n\t\t\tonFinish={ () => toggle( 'core/edit-widgets', 'welcomeGuide' ) }\n\t\t\tpages={ [\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-canvas.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-canvas.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Welcome to block Widgets' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t{ isEntirelyBlockWidgets ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t\t// Translators: %s: Number of block areas in the current theme.\n\t\t\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t\t\t'Your theme provides %s “block” area for you to add and edit content. Try adding a search bar, social icons, or other types of blocks here and see how they’ll look on your site.',\n\t\t\t\t\t\t\t\t\t\t\t\t'Your theme provides %s different “block” areas for you to add and edit content. Try adding a search bar, social icons, or other types of blocks here and see how they’ll look on your site.',\n\t\t\t\t\t\t\t\t\t\t\t\tnumWidgetAreas\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tnumWidgetAreas\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'You can now add any block to your site’s widget areas. Don’t worry, all of your favorite widgets still work flawlessly.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t\t\t<strong>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Want to stick with the old widgets?'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</strong>{ ' ' }\n\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/plugins/classic-widgets/'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Get the Classic Widgets plugin.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-editor.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-editor.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Make each block your own' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Each block comes with its own set of controls for changing things like color, width, and alignment. These will show and hide automatically when you have a block selected.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-library.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-library.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Get to know the block library' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'All of the blocks available to you live in the block library. You’ll find it wherever you see the <InserterIconImage /> icon.'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tInserterIconImage: (\n\t\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-widgets-welcome-guide__inserter-icon\"\n\t\t\t\t\t\t\t\t\t\t\t\talt={ __( 'inserter' ) }\n\t\t\t\t\t\t\t\t\t\t\t\tsrc=\"data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='18' height='18' rx='2' fill='%231E1E1E'/%3E%3Cpath d='M9.22727 4V14M4 8.77273H14' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E%0A\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-documentation.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-documentation.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-widgets-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Learn how to use the block editor' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-widgets-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'New to the block editor? Want to learn more about using it? '\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/support/article/wordpress-editor/'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( \"Here's a detailed guide.\" ) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t] }\n\t\t/>\n\t);\n}\n\nfunction WelcomeGuideImage( { nonAnimatedSrc, animatedSrc } ) {\n\treturn (\n\t\t<picture className=\"edit-widgets-welcome-guide__image\">\n\t\t\t<source\n\t\t\t\tsrcSet={ nonAnimatedSrc }\n\t\t\t\tmedia=\"(prefers-reduced-motion: reduce)\"\n\t\t\t/>\n\t\t\t<img src={ animatedSrc } width=\"312\" height=\"240\" alt=\"\" />\n\t\t</picture>\n\t);\n}\n"]}
@@ -6,7 +6,7 @@ import { createElement } from "@wordpress/element";
6
6
  import { BlockList, BlockTools, BlockSelectionClearer, WritingFlow, ObserveTyping, __unstableEditorStyles as EditorStyles } from '@wordpress/block-editor';
7
7
  import { useSelect } from '@wordpress/data';
8
8
  import { useMemo } from '@wordpress/element';
9
- import { store as interfaceStore } from '@wordpress/interface';
9
+ import { store as preferencesStore } from '@wordpress/preferences';
10
10
  /**
11
11
  * Internal dependencies
12
12
  */
@@ -17,7 +17,7 @@ export default function WidgetAreasBlockEditorContent(_ref) {
17
17
  let {
18
18
  blockEditorSettings
19
19
  } = _ref;
20
- const hasThemeStyles = useSelect(select => select(interfaceStore).isFeatureActive('core/edit-widgets', 'themeStyles'), []);
20
+ const hasThemeStyles = useSelect(select => !!select(preferencesStore).get('core/edit-widgets', 'themeStyles'), []);
21
21
  const styles = useMemo(() => {
22
22
  return hasThemeStyles ? blockEditorSettings.styles : [];
23
23
  }, [blockEditorSettings, hasThemeStyles]);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/widget-areas-block-editor-content/index.js"],"names":["BlockList","BlockTools","BlockSelectionClearer","WritingFlow","ObserveTyping","__unstableEditorStyles","EditorStyles","useSelect","useMemo","store","interfaceStore","Notices","KeyboardShortcuts","WidgetAreasBlockEditorContent","blockEditorSettings","hasThemeStyles","select","isFeatureActive","styles"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,SADD,EAECC,UAFD,EAGCC,qBAHD,EAICC,WAJD,EAKCC,aALD,EAMCC,sBAAsB,IAAIC,YAN3B,QAOO,yBAPP;AAQA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SAASC,KAAK,IAAIC,cAAlB,QAAwC,sBAAxC;AAEA;AACA;AACA;;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,iBAAP,MAA8B,uBAA9B;AAEA,eAAe,SAASC,6BAAT,OAEX;AAAA,MAFmD;AACtDC,IAAAA;AADsD,GAEnD;AACH,QAAMC,cAAc,GAAGR,SAAS,CAC7BS,MAAF,IACCA,MAAM,CAAEN,cAAF,CAAN,CAAyBO,eAAzB,CACC,mBADD,EAEC,aAFD,CAF8B,EAM/B,EAN+B,CAAhC;AASA,QAAMC,MAAM,GAAGV,OAAO,CAAE,MAAM;AAC7B,WAAOO,cAAc,GAAGD,mBAAmB,CAACI,MAAvB,GAAgC,EAArD;AACA,GAFqB,EAEnB,CAAEJ,mBAAF,EAAuBC,cAAvB,CAFmB,CAAtB;AAIA,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,OAAD,OADD,EAEC,cAAC,UAAD,QACC,cAAC,iBAAD,OADD,EAEC,cAAC,YAAD;AAAc,IAAA,MAAM,EAAGG;AAAvB,IAFD,EAGC,cAAC,qBAAD,QACC,cAAC,WAAD,QACC,cAAC,aAAD,QACC,cAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,IADD,CADD,CADD,CAHD,CAFD,CADD;AAgBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockList,\n\tBlockTools,\n\tBlockSelectionClearer,\n\tWritingFlow,\n\tObserveTyping,\n\t__unstableEditorStyles as EditorStyles,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport Notices from '../notices';\nimport KeyboardShortcuts from '../keyboard-shortcuts';\n\nexport default function WidgetAreasBlockEditorContent( {\n\tblockEditorSettings,\n} ) {\n\tconst hasThemeStyles = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).isFeatureActive(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'themeStyles'\n\t\t\t),\n\t\t[]\n\t);\n\n\tconst styles = useMemo( () => {\n\t\treturn hasThemeStyles ? blockEditorSettings.styles : [];\n\t}, [ blockEditorSettings, hasThemeStyles ] );\n\n\treturn (\n\t\t<div className=\"edit-widgets-block-editor\">\n\t\t\t<Notices />\n\t\t\t<BlockTools>\n\t\t\t\t<KeyboardShortcuts />\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<BlockSelectionClearer>\n\t\t\t\t\t<WritingFlow>\n\t\t\t\t\t\t<ObserveTyping>\n\t\t\t\t\t\t\t<BlockList className=\"edit-widgets-main-block-list\" />\n\t\t\t\t\t\t</ObserveTyping>\n\t\t\t\t\t</WritingFlow>\n\t\t\t\t</BlockSelectionClearer>\n\t\t\t</BlockTools>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/widget-areas-block-editor-content/index.js"],"names":["BlockList","BlockTools","BlockSelectionClearer","WritingFlow","ObserveTyping","__unstableEditorStyles","EditorStyles","useSelect","useMemo","store","preferencesStore","Notices","KeyboardShortcuts","WidgetAreasBlockEditorContent","blockEditorSettings","hasThemeStyles","select","get","styles"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,SADD,EAECC,UAFD,EAGCC,qBAHD,EAICC,WAJD,EAKCC,aALD,EAMCC,sBAAsB,IAAIC,YAN3B,QAOO,yBAPP;AAQA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,wBAA1C;AAEA;AACA;AACA;;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,iBAAP,MAA8B,uBAA9B;AAEA,eAAe,SAASC,6BAAT,OAEX;AAAA,MAFmD;AACtDC,IAAAA;AADsD,GAEnD;AACH,QAAMC,cAAc,GAAGR,SAAS,CAC7BS,MAAF,IACC,CAAC,CAAEA,MAAM,CAAEN,gBAAF,CAAN,CAA2BO,GAA3B,CACF,mBADE,EAEF,aAFE,CAF2B,EAM/B,EAN+B,CAAhC;AASA,QAAMC,MAAM,GAAGV,OAAO,CAAE,MAAM;AAC7B,WAAOO,cAAc,GAAGD,mBAAmB,CAACI,MAAvB,GAAgC,EAArD;AACA,GAFqB,EAEnB,CAAEJ,mBAAF,EAAuBC,cAAvB,CAFmB,CAAtB;AAIA,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,OAAD,OADD,EAEC,cAAC,UAAD,QACC,cAAC,iBAAD,OADD,EAEC,cAAC,YAAD;AAAc,IAAA,MAAM,EAAGG;AAAvB,IAFD,EAGC,cAAC,qBAAD,QACC,cAAC,WAAD,QACC,cAAC,aAAD,QACC,cAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,IADD,CADD,CADD,CAHD,CAFD,CADD;AAgBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockList,\n\tBlockTools,\n\tBlockSelectionClearer,\n\tWritingFlow,\n\tObserveTyping,\n\t__unstableEditorStyles as EditorStyles,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport Notices from '../notices';\nimport KeyboardShortcuts from '../keyboard-shortcuts';\n\nexport default function WidgetAreasBlockEditorContent( {\n\tblockEditorSettings,\n} ) {\n\tconst hasThemeStyles = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( preferencesStore ).get(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'themeStyles'\n\t\t\t),\n\t\t[]\n\t);\n\n\tconst styles = useMemo( () => {\n\t\treturn hasThemeStyles ? blockEditorSettings.styles : [];\n\t}, [ blockEditorSettings, hasThemeStyles ] );\n\n\treturn (\n\t\t<div className=\"edit-widgets-block-editor\">\n\t\t\t<Notices />\n\t\t\t<BlockTools>\n\t\t\t\t<KeyboardShortcuts />\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<BlockSelectionClearer>\n\t\t\t\t\t<WritingFlow>\n\t\t\t\t\t\t<ObserveTyping>\n\t\t\t\t\t\t\t<BlockList className=\"edit-widgets-main-block-list\" />\n\t\t\t\t\t\t</ObserveTyping>\n\t\t\t\t\t</WritingFlow>\n\t\t\t\t</BlockSelectionClearer>\n\t\t\t</BlockTools>\n\t\t</div>\n\t);\n}\n"]}
@@ -15,8 +15,8 @@ import { useDispatch, useSelect } from '@wordpress/data';
15
15
  import { useMemo } from '@wordpress/element';
16
16
  import { BlockEditorProvider, BlockEditorKeyboardShortcuts, CopyHandler } from '@wordpress/block-editor';
17
17
  import { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';
18
- import { store as interfaceStore } from '@wordpress/interface';
19
18
  import { ShortcutProvider } from '@wordpress/keyboard-shortcuts';
19
+ import { store as preferencesStore } from '@wordpress/preferences';
20
20
  /**
21
21
  * Internal dependencies
22
22
  */
@@ -43,8 +43,8 @@ export default function WidgetAreasBlockEditorProvider(_ref) {
43
43
  widgetAreas: select(editWidgetsStore).getWidgetAreas(),
44
44
  widgets: select(editWidgetsStore).getWidgets(),
45
45
  reusableBlocks: ALLOW_REUSABLE_BLOCKS ? select(coreStore).getEntityRecords('postType', 'wp_block') : [],
46
- isFixedToolbarActive: select(interfaceStore).isFeatureActive('core/edit-widgets', 'fixedToolbar'),
47
- keepCaretInsideBlock: select(interfaceStore).isFeatureActive('core/edit-widgets', 'keepCaretInsideBlock')
46
+ isFixedToolbarActive: !!select(preferencesStore).get('core/edit-widgets', 'fixedToolbar'),
47
+ keepCaretInsideBlock: !!select(preferencesStore).get('core/edit-widgets', 'keepCaretInsideBlock')
48
48
  }), []);
49
49
  const {
50
50
  setIsInserterOpened