WordPress/wp-includes/js/dist/edit-post.js.map

1 line
250 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"version":3,"sources":["webpack://wp.[name]/webpack/bootstrap","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/extends.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/objectSpread.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://wp.[name]/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-group.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-item.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/browser-url/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/fullscreen-mode/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/feature-toggle/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/fullscreen-mode-close/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/header-toolbar/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/mode-switcher/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/more-menu/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/options-menu-item/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/pinned-plugins/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/plugin-sidebar-more-menu-item/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/plugins-more-menu-group/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/post-publish-button-or-toggle.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/tools-more-menu-group/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/header/writing-menu/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/keyboard-shortcut-help-modal/config.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/keyboard-shortcut-help-modal/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/keyboard-shortcuts/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/layout/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/meta-boxes/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/meta-boxes/meta-box-visibility.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/meta-boxes/meta-boxes-area/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/meta-boxes-section.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/options/base.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/options/deferred.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/options/enable-custom-fields.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/options/enable-panel.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/options/enable-publish-sidebar.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/options/enable-tips.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/options/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/options-modal/section.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/discussion-panel/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/featured-image/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/last-revision/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/page-attributes/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/plugin-post-publish-panel/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/plugin-post-status-info/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/plugin-pre-publish-panel/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/plugin-sidebar/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-author/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-excerpt/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-format/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-pending-status/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-schedule/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-status/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-sticky/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-taxonomies/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-taxonomies/taxonomy-panel.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-trash/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/post-visibility/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/settings-header/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/settings-sidebar/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/sidebar/sidebar-header/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/text-editor/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/visual-editor/block-inspector-button.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/components/visual-editor/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/editor.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/hooks/components/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/hooks/components/media-upload/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/hooks/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/hooks/validate-multiple-use/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/keyboard-shortcuts.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/plugins/copy-content-menu-item/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/plugins/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/plugins/keyboard-shortcuts-help-menu-item/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/actions.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/defaults.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/effects.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/index.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/middlewares.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/reducer.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/selectors.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/store/utils.js","webpack://wp.[name]//Users/pento/Projects/gutenberg/packages/edit-post/src/utils/meta-boxes.js","webpack://wp.[name]/./node_modules/classnames/index.js","webpack://wp.[name]/./node_modules/refx/refx.js","webpack://wp.[name]/./node_modules/rememo/es/rememo.js","webpack://wp.[name]/external {\"this\":[\"wp\",\"a11y\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"apiFetch\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"blockLibrary\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"blocks\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"components\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"compose\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"coreData\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"data\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"deprecated\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"editor\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"element\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"hooks\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"i18n\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"keycodes\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"nux\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"plugins\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"url\"]}","webpack://wp.[name]/external {\"this\":[\"wp\",\"viewport\"]}","webpack://wp.[name]/external \"lodash\""],"names":["createSlotFill","PluginBlockSettingsMenuGroup","Fill","Slot","PluginBlockSettingsMenuGroupSlot","fillProps","selectedBlocks","map","block","name","fills","isEmpty","withSelect","select","clientIds","getBlocksByClientId","isEverySelectedBlockAllowed","selected","allowed","difference","length","shouldRenderItem","selectedBlockNames","allowedBlockNames","Array","isArray","PluginBlockSettingsMenuItem","allowedBlocks","icon","label","onClick","small","role","onClose","compose","undefined","getPostEditURL","postId","addQueryArgs","post","action","getPostTrashedURL","postType","trashed","post_type","ids","BrowserURL","arguments","state","historyId","prevProps","props","postStatus","setTrashURL","setBrowserURL","window","location","href","history","replaceState","id","setState","Component","getCurrentPost","status","type","FullscreenMode","sync","isActive","document","body","classList","add","remove","isFeatureActive","FeatureToggle","onToggle","info","feature","withDispatch","dispatch","ownProps","toggleFeature","FullscreenModeClose","slug","get","__","getCurrentPostType","getPostType","HeaderToolbar","hasFixedToolbar","isLargeViewport","mode","toolbarAriaLabel","getEditorMode","withViewportMatch","Header","closeGeneralSidebar","hasActiveMetaboxes","isEditorSidebarOpened","isPublishSidebarOpened","isSaving","openGeneralSidebar","toggleGeneralSidebar","shortcuts","toggleSidebar","hasMetaBoxes","hasBlockSelection","getBlockSelectionStart","isSavingMetaBoxes","sidebarToOpen","MODES","value","ModeSwitcher","onSwitch","choices","choice","shortcut","toggleEditorMode","display","switchEditorMode","onSelect","ariaClosed","ariaOpen","MoreMenu","isOpen","OptionsMenuItem","openModal","PinnedPlugins","PluginSidebarMoreMenuItem","children","isSelected","withPluginContext","context","sidebarName","target","getActiveGeneralSidebarName","PluginsMoreMenuGroup","PostPublishButtonOrToggle","forceIsDirty","forceIsSaving","hasPublishAction","isBeingScheduled","isLessThanMediumViewport","isPending","isPublished","isPublishSidebarEnabled","isScheduled","togglePublishSidebar","button","toggle","isEditedPostBeingScheduled","isCurrentPostPending","isCurrentPostPublished","isCurrentPostScheduled","ToolsMoreMenuGroup","WritingMenu","_x","ifViewportMatches","primary","displayShortcutList","primaryShift","primaryAlt","secondary","access","ctrl","alt","ctrlShift","shiftAlt","globalShortcuts","title","keyCombination","description","ariaLabel","shortcutAriaLabel","selectionShortcuts","blockShortcuts","textFormattingShortcuts","MODAL_NAME","mapKeyCombination","character","index","ShortcutList","castArray","ShortcutSection","KeyboardShortcutHelpModal","isModalActive","toggleModal","rawShortcut","shortcutConfig","config","closeModal","EditorModeKeyboardShortcuts","toggleMode","bind","switchMode","event","preventDefault","isEditorSidebarOpen","closeSidebar","openSidebar","raw","Layout","editorSidebarOpened","pluginSidebarOpened","publishSidebarOpened","closePublishSidebar","isMobileViewport","sidebarIsOpened","className","classnames","publishLandmarkProps","tabIndex","PluginPrePublishPanel","PluginPostPublishPanel","isPluginSidebarOpened","navigateRegions","MetaBoxes","isVisible","metaBoxes","isMetaBoxLocationVisible","getMetaBoxesPerLocation","MetaBoxVisibility","updateDOM","element","getElementById","style","isEditorPanelEnabled","MetaBoxesArea","bindContainerNode","form","querySelector","container","appendChild","node","classes","OptionsModal","content","taxonomy","MetaBoxesSection","hasCustomFieldsSupport","sectionProps","getEditedPostAttribute","getAllMetaBoxes","supports","BaseOption","isChecked","onChange","DeferredOption","EnableCustomFieldsOption","toggleCustomFields","submit","getEditorSettings","enableCustomFields","panelName","toggleEditorPanelEnabled","enablePublishSidebar","disablePublishSidebar","isEnabled","areTipsEnabled","enableTips","disableTips","Section","PANEL_NAME","DiscussionPanel","isOpened","onTogglePanel","isEditorPanelOpened","toggleEditorPanelOpened","FeaturedImage","applyWithSelect","applyWithDispatch","partial","Sidebar","WrappedSidebar","ifCondition","withFocusReturn","LastRevision","PageAttributes","initialOpen","PluginPostStatusInfo","PluginSidebar","isPinnable","isPinned","togglePin","isPluginItemPinned","togglePinnedPluginItem","PostAuthor","PostExcerpt","PostFormat","PostPendingStatus","PostSchedule","instanceId","withInstanceId","PostStatus","PostSticky","PostTaxonomies","TaxonomyPanel","taxonomyMenuName","PostTrash","PostVisibility","canEdit","SettingsHeader","count","openDocumentSettings","openBlockSettings","blockCount","blockLabel","sprintf","_n","documentAriaLabel","documentActiveClass","blockAriaLabel","blockActiveClass","getSelectedBlockCount","clearSelectedBlock","SettingsSidebar","SidebarHeader","closeLabel","TextEditor","onExit","displayShortcut","BlockInspectorButton","areAdvancedSettingsOpened","openEditorSidebar","noop","speak","speakMessage","flow","withSpokenMessages","VisualEditor","Editor","settings","focusMode","overridePost","onError","editorSettings","getEntityRecord","replaceMediaUpload","MediaUpload","addFilter","getGalleryDetailsMediaFrame","wp","media","view","MediaFrame","Post","extend","createStates","states","controller","Library","l10n","createGalleryTitle","priority","toolbar","filterable","multiple","editable","library","query","_","defaults","options","GalleryEdit","selection","editing","menu","displaySettings","GalleryAdd","slimImageObject","img","attrSet","pick","getAttachmentsCollection","order","orderby","post__in","per_page","allowedTypes","gallery","modalClass","onOpen","onUpdate","currentState","GalleryDetailsMediaFrame","attachments","model","Selection","models","toJSON","frame","mimeType","frameConfig","text","$el","addClass","on","selections","selectedImages","attachment","more","open","render","enhance","blocks","getBlocks","hasBlockSupport","firstOfSameType","find","isInvalid","clientId","originalBlockClientId","selectFirst","selectBlock","withMultipleValidation","createHigherOrderComponent","BlockEdit","blockType","getBlockType","outboundType","getOutboundType","minHeight","onReplace","createBlock","attributes","blockName","transform","findTransform","getBlockTransforms","reinitializeEditor","unmountComponentAtNode","reboot","initializeEditor","registerCoreBlocks","triggerGuide","CopyContentMenuItem","editedPostContent","hasCopied","withState","registerPlugin","KeyboardShortcutsHelpMenuItem","openPublishSidebar","toggleGeneralSidebarEditorPanel","deprecated","alternative","plugin","version","pluginName","setAvailableMetaBoxesPerLocation","metaBoxesPerLocation","requestMetaBoxUpdates","metaBoxUpdatesSuccess","PREFERENCES_DEFAULTS","editorMode","isGeneralSidebarDismissed","panels","opened","features","fixedToolbar","pinnedPluginItems","effects","SET_META_BOXES_PER_LOCATIONS","store","setTimeout","postboxes","page","add_postbox_toggles","wasSavingPost","isSavingPost","wasAutosavingPost","isAutosavingPost","subscribe","hasActiveMetaBoxes","shouldTriggerMetaboxesSave","REQUEST_META_BOX_UPDATES","getState","additionalData","comment_status","ping_status","sticky","author","filter","Boolean","baseFormData","FormData","formDataToMerge","getActiveMetaBoxLocations","getMetaBoxContainer","formData","reduce","memo","currentFormData","key","append","forEach","apiFetch","url","_wpMetaBoxUrl","method","parse","then","SWITCH_MODE","message","INIT","onChangeListener","isMobileViewPort","isViewportMatch","adjustSidebar","sidebarToReOpenOnExpand","isSmall","registerStore","reducer","actions","selectors","persist","applyMiddlewares","middlewares","refx","enhancedDispatch","Error","chain","middlewareAPI","middleware","flowRight","DEFAULT_ACTIVE_GENERAL_SIDEBAR","preferences","combineReducers","enabled","activeGeneralSidebar","panel","activeModal","publishSidebarActive","metaBoxLocations","locations","getPreference","includes","isDismissed","getPreferences","preferenceKey","defaultValue","isEditorSidebarPanelOpened","modalName","createSelector","Object","keys","isMetaBoxLocationActive","some","flatten","values","selector","listener","previousValue","selectedValue","area"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kDAA0C,gCAAgC;AAC1E;AACA;;AAEA;AACA;AACA;AACA,gEAAwD,kBAAkB;AAC1E;AACA,yDAAiD,cAAc;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAyC,iCAAiC;AAC1E,wHAAgH,mBAAmB,EAAE;AACrI;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;;AAGA;AACA;;;;;;;;;;;;;AClFA;AAAA;AAAe;AACf;AACA,C;;;;;;;;;;;;ACFA;AAAA;AAAe;AACf;AACA,iDAAiD,gBAAgB;AACjE;AACA;;AAEA;AACA;AACA,C;;;;;;;;;;;;ACRA;AAAA;AAAe;AACf;AACA;AACA;;AAEA;AACA,C;;;;;;;;;;;;ACNA;AAAA;AAAe;AACf;AACA;AACA;AACA,C;;;;;;;;;;;;ACJA;AAAA;AAAA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA,C;;;;;;;;;;;;ACdA;AAAA;AAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA,C;;;;;;;;;;;;ACbA;AAAA;AAAe;AACf;AACA,mBAAmB,sBAAsB;AACzC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,C;;;;;;;;;;;;AChBA;AAAA;AAAe;AACf;AACA;AACA;AACA;AACA,C;;;;;;;;;;;;ACLA;AAAA;AAAA;AAA8C;AAC/B;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,kBAAkB,+DAAc;AAChC,C;;;;;;;;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ACA;;AAEA;;AAEA;AACA;;AAEA;;;;;;;;;;;;;AC/CA;AAAa;;AAEb;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA,WAAW,EAAE;AACb;AACA,YAAY,MAAM;AAClB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,EAAE;AACb;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,MAAM;AACjB,WAAW,MAAM;AACjB,WAAW,OAAO;AAClB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACe;AACf;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,MAAM;AAClB;AACA,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA,cAAc,uBAAuB;AACrC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,KAAK;AACjB;AACA,aAAa,EAAE;AACf;AACA;AACA;AACA;;AAEA;AACA;AACA,cAAc,SAAS;AACvB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,CAAC;;;;;;;;;;;;ACjRD,aAAa,qCAAqC,EAAE,I;;;;;;;;;;;ACApD,aAAa,yCAAyC,EAAE,I;;;;;;;;;;;ACAxD,aAAa,6CAA6C,EAAE,I;;;;;;;;;;;ACA5D,aAAa,uCAAuC,EAAE,I;;;;;;;;;;;ACAtD,aAAa,2CAA2C,EAAE,I;;;;;;;;;;;ACA1D,aAAa,wCAAwC,EAAE,I;;;;;;;;;;;ACAvD,aAAa,yCAAyC,EAAE,I;;;;;;;;;;;ACAxD,aAAa,qCAAqC,EAAE,I;;;;;;;;;;;ACApD,aAAa,2CAA2C,EAAE,I;;;;;;;;;;;ACA1D,aAAa,uCAAuC,EAAE,I;;;;;;;;;;;ACAtD,aAAa,wCAAwC,EAAE,I;;;;;;;;;;;ACAvD,aAAa,sCAAsC,EAAE,I;;;;;;;;;;;ACArD,aAAa,qCAAqC,EAAE,I;;;;;;;;;;;ACApD,aAAa,yCAAyC,EAAE,I;;;;;;;;;;;ACAxD,aAAa,oCAAoC,EAAE,I;;;;;;;;;;;ACAnD,aAAa,wCAAwC,EAAE,I;;;;;;;;;;;ACAvD,aAAa,oCAAoC,EAAE,I;;;;;;;;;;;ACAnD,aAAa,yCAAyC,EAAE,I;;;;;;;;;;;ACAxD,aAAa,iCAAiC,EAAE,I","file":"edit-post.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./node_modules/@wordpress/edit-post/build-module/index.js\");\n","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}","export default function _iterableToArrayLimit(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}","import defineProperty from \"./defineProperty\";\nexport default function _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","import _typeof from \"../../helpers/esm/typeof\";\nimport assertThisInitialized from \"./assertThisInitialized\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}","import arrayWithHoles from \"./arrayWithHoles\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit\";\nimport nonIterableRest from \"./nonIterableRest\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || nonIterableRest();\n}","import arrayWithoutHoles from \"./arrayWithoutHoles\";\nimport iterableToArray from \"./iterableToArray\";\nimport nonIterableSpread from \"./nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();\n}","function _typeof2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof2(obj); }\n\nexport default function _typeof(obj) {\n if (typeof Symbol === \"function\" && _typeof2(Symbol.iterator) === \"symbol\") {\n _typeof = function _typeof(obj) {\n return _typeof2(obj);\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : _typeof2(obj);\n };\n }\n\n return _typeof(obj);\n}","/**\n * External dependencies\n */\nimport { isEmpty, map } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\nimport { Fragment } from '@wordpress/element';\nimport { withSelect } from '@wordpress/data';\n\nconst { Fill: PluginBlockSettingsMenuGroup, Slot } = createSlotFill( 'PluginBlockSettingsMenuGroup' );\n\nconst PluginBlockSettingsMenuGroupSlot = ( { fillProps, selectedBlocks } ) => {\n\tselectedBlocks = map( selectedBlocks, ( block ) => block.name );\n\treturn (\n\t\t<Slot fillProps={ { ...fillProps, selectedBlocks } } >\n\t\t\t{ ( fills ) => ! isEmpty( fills ) && (\n\t\t\t\t<Fragment>\n\t\t\t\t\t<div className=\"editor-block-settings-menu__separator\" />\n\t\t\t\t\t{ fills }\n\t\t\t\t</Fragment>\n\t\t\t) }\n\t\t</Slot>\n\t);\n};\n\nPluginBlockSettingsMenuGroup.Slot = withSelect( ( select, { fillProps: { clientIds } } ) => ( {\n\tselectedBlocks: select( 'core/editor' ).getBlocksByClientId( clientIds ),\n} ) )( PluginBlockSettingsMenuGroupSlot );\n\nexport default PluginBlockSettingsMenuGroup;\n","/**\n * External dependencies\n */\nimport { difference } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { IconButton } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport PluginBlockSettingsMenuGroup from './plugin-block-settings-menu-group';\n\nconst isEverySelectedBlockAllowed = ( selected, allowed ) => difference( selected, allowed ).length === 0;\n\n/**\n * Plugins may want to add an item to the menu either for every block\n * or only for the specific ones provided in the `allowedBlocks` component property.\n *\n * If there are multiple blocks selected the item will be rendered if every block\n * is of one allowed type (not necessarily the same).\n *\n * @param {string[]} selectedBlockNames Array containing the names of the blocks selected\n * @param {string[]} allowedBlockNames Array containing the names of the blocks allowed\n * @return {boolean} Whether the item will be rendered or not.\n */\nconst shouldRenderItem = ( selectedBlockNames, allowedBlockNames ) => ! Array.isArray( allowedBlockNames ) ||\n\tisEverySelectedBlockAllowed( selectedBlockNames, allowedBlockNames );\n\nconst PluginBlockSettingsMenuItem = ( { allowedBlocks, icon, label, onClick, small, role } ) => (\n\t<PluginBlockSettingsMenuGroup>\n\t\t{ ( { selectedBlocks, onClose } ) => {\n\t\t\tif ( ! shouldRenderItem( selectedBlocks, allowedBlocks ) ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn ( <IconButton\n\t\t\t\tclassName=\"editor-block-settings-menu__control\"\n\t\t\t\tonClick={ compose( onClick, onClose ) }\n\t\t\t\ticon={ icon || 'admin-plugins' }\n\t\t\t\tlabel={ small ? label : undefined }\n\t\t\t\trole={ role }\n\t\t\t>\n\t\t\t\t{ ! small && label }\n\t\t\t</IconButton> );\n\t\t} }\n\t</PluginBlockSettingsMenuGroup>\n);\n\nexport default PluginBlockSettingsMenuItem;\n","/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { withSelect } from '@wordpress/data';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Returns the Post's Edit URL.\n *\n * @param {number} postId Post ID.\n *\n * @return {string} Post edit URL.\n */\nexport function getPostEditURL( postId ) {\n\treturn addQueryArgs( 'post.php', { post: postId, action: 'edit' } );\n}\n\n/**\n * Returns the Post's Trashed URL.\n *\n * @param {number} postId Post ID.\n * @param {string} postType Post Type.\n *\n * @return {string} Post trashed URL.\n */\nexport function getPostTrashedURL( postId, postType ) {\n\treturn addQueryArgs( 'edit.php', {\n\t\ttrashed: 1,\n\t\tpost_type: postType,\n\t\tids: postId,\n\t} );\n}\n\nexport class BrowserURL extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.state = {\n\t\t\thistoryId: null,\n\t\t};\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tconst { postId, postStatus, postType } = this.props;\n\t\tconst { historyId } = this.state;\n\n\t\tif ( postStatus === 'trash' ) {\n\t\t\tthis.setTrashURL( postId, postType );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ( postId !== prevProps.postId || postId !== historyId ) && postStatus !== 'auto-draft' ) {\n\t\t\tthis.setBrowserURL( postId );\n\t\t}\n\t}\n\n\t/**\n\t * Navigates the browser to the post trashed URL to show a notice about the trashed post.\n\t *\n\t * @param {number} postId Post ID.\n\t * @param {string} postType Post Type.\n\t */\n\tsetTrashURL( postId, postType ) {\n\t\twindow.location.href = getPostTrashedURL( postId, postType );\n\t}\n\n\t/**\n\t * Replaces the browser URL with a post editor link for the given post ID.\n\t *\n\t * Note it is important that, since this function may be called when the\n\t * editor first loads, the result generated `getPostEditURL` matches that\n\t * produced by the server. Otherwise, the URL will change unexpectedly.\n\t *\n\t * @param {number} postId Post ID for which to generate post editor URL.\n\t */\n\tsetBrowserURL( postId ) {\n\t\twindow.history.replaceState(\n\t\t\t{ id: postId },\n\t\t\t'Post ' + postId,\n\t\t\tgetPostEditURL( postId )\n\t\t);\n\n\t\tthis.setState( () => ( {\n\t\t\thistoryId: postId,\n\t\t} ) );\n\t}\n\n\trender() {\n\t\treturn null;\n\t}\n}\n\nexport default withSelect( ( select ) => {\n\tconst { getCurrentPost } = select( 'core/editor' );\n\tconst { id, status, type } = getCurrentPost();\n\n\treturn {\n\t\tpostId: id,\n\t\tpostStatus: status,\n\t\tpostType: type,\n\t};\n} )( BrowserURL );\n","/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { withSelect } from '@wordpress/data';\n\nclass FullscreenMode extends Component {\n\tcomponentDidMount() {\n\t\tthis.sync();\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tif ( this.props.isActive !== prevProps.isActive ) {\n\t\t\tthis.sync();\n\t\t}\n\t}\n\n\tsync() {\n\t\tconst { isActive } = this.props;\n\t\tif ( isActive ) {\n\t\t\tdocument.body.classList.add( 'is-fullscreen-mode' );\n\t\t} else {\n\t\t\tdocument.body.classList.remove( 'is-fullscreen-mode' );\n\t\t}\n\t}\n\n\trender() {\n\t\treturn null;\n\t}\n}\n\nexport default withSelect( ( select ) => ( {\n\tisActive: select( 'core/edit-post' ).isFeatureActive( 'fullscreenMode' ),\n} ) )( FullscreenMode );\n","/**\n * WordPress Dependencies\n */\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { MenuItem } from '@wordpress/components';\n\nfunction FeatureToggle( { onToggle, isActive, label, info } ) {\n\treturn (\n\t\t<MenuItem\n\t\t\ticon={ isActive && 'yes' }\n\t\t\tisSelected={ isActive }\n\t\t\tonClick={ onToggle }\n\t\t\trole=\"menuitemcheckbox\"\n\t\t\tlabel={ label }\n\t\t\tinfo={ info }\n\t\t>\n\t\t\t{ label }\n\t\t</MenuItem>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select, { feature } ) => ( {\n\t\tisActive: select( 'core/edit-post' ).isFeatureActive( feature ),\n\t} ) ),\n\twithDispatch( ( dispatch, ownProps ) => ( {\n\t\tonToggle() {\n\t\t\tdispatch( 'core/edit-post' ).toggleFeature( ownProps.feature );\n\t\t\townProps.onToggle();\n\t\t},\n\t} ) ),\n] )( FeatureToggle );\n","/**\n * External Dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress Dependencies\n */\nimport { withSelect } from '@wordpress/data';\nimport { IconButton, Toolbar } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { addQueryArgs } from '@wordpress/url';\n\nfunction FullscreenModeClose( { isActive, postType } ) {\n\tif ( ! isActive || ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Toolbar className=\"edit-post-fullscreen-mode-close__toolbar\">\n\t\t\t<IconButton\n\t\t\t\ticon=\"exit\"\n\t\t\t\thref={ addQueryArgs( 'edit.php', { post_type: postType.slug } ) }\n\t\t\t\tlabel={ get(\n\t\t\t\t\tpostType,\n\t\t\t\t\t[ 'labels', 'view_items' ],\n\t\t\t\t\t__( 'View Posts' )\n\t\t\t\t) }\n\t\t\t/>\n\t\t</Toolbar>\n\t);\n}\n\nexport default withSelect( ( select ) => {\n\tconst { getCurrentPostType } = select( 'core/editor' );\n\tconst { isFeatureActive } = select( 'core/edit-post' );\n\tconst { getPostType } = select( 'core' );\n\n\treturn {\n\t\tisActive: isFeatureActive( 'fullscreenMode' ),\n\t\tpostType: getPostType( getCurrentPostType() ),\n\t};\n} )( FullscreenModeClose );\n","/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\nimport { withViewportMatch } from '@wordpress/viewport';\nimport { DotTip } from '@wordpress/nux';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInserter,\n\tBlockToolbar,\n\tTableOfContents,\n\tEditorHistoryRedo,\n\tEditorHistoryUndo,\n\tNavigableToolbar,\n\tBlockNavigationDropdown,\n} from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport FullscreenModeClose from '../fullscreen-mode-close';\n\nfunction HeaderToolbar( { hasFixedToolbar, isLargeViewport, mode } ) {\n\tconst toolbarAriaLabel = hasFixedToolbar ? __( 'Document and block tools' ) : __( 'Document tools' );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tclassName=\"edit-post-header-toolbar\"\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t>\n\t\t\t<FullscreenModeClose />\n\t\t\t<div>\n\t\t\t\t<Inserter disabled={ mode !== 'visual' } position=\"bottom right\" />\n\t\t\t\t<DotTip tipId=\"core/editor.inserter\">\n\t\t\t\t\t{ __( 'Welcome to the wonderful world of blocks! Click the “+” (“Add block”) button to add a new block. There are blocks available for all kinds of content: you can insert text, headings, images, lists, and lots more!' ) }\n\t\t\t\t</DotTip>\n\t\t\t</div>\n\t\t\t<EditorHistoryUndo />\n\t\t\t<EditorHistoryRedo />\n\t\t\t<TableOfContents />\n\t\t\t<BlockNavigationDropdown />\n\t\t\t{ hasFixedToolbar && isLargeViewport && (\n\t\t\t\t<div className=\"edit-post-header-toolbar__block-toolbar\">\n\t\t\t\t\t<BlockToolbar />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => ( {\n\t\thasFixedToolbar: select( 'core/edit-post' ).isFeatureActive( 'fixedToolbar' ),\n\t\tmode: select( 'core/edit-post' ).getEditorMode(),\n\t} ) ),\n\twithViewportMatch( { isLargeViewport: 'medium' } ),\n] )( HeaderToolbar );\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { IconButton } from '@wordpress/components';\nimport {\n\tPostPreviewButton,\n\tPostSavedState,\n} from '@wordpress/editor';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { DotTip } from '@wordpress/nux';\n\n/**\n * Internal dependencies\n */\nimport MoreMenu from './more-menu';\nimport HeaderToolbar from './header-toolbar';\nimport PinnedPlugins from './pinned-plugins';\nimport shortcuts from '../../keyboard-shortcuts';\nimport PostPublishButtonOrToggle from './post-publish-button-or-toggle';\n\nfunction Header( {\n\tcloseGeneralSidebar,\n\thasActiveMetaboxes,\n\tisEditorSidebarOpened,\n\tisPublishSidebarOpened,\n\tisSaving,\n\topenGeneralSidebar,\n} ) {\n\tconst toggleGeneralSidebar = isEditorSidebarOpened ? closeGeneralSidebar : openGeneralSidebar;\n\n\treturn (\n\t\t<div\n\t\t\trole=\"region\"\n\t\t\t/* translators: accessibility text for the top bar landmark region. */\n\t\t\taria-label={ __( 'Editor top bar' ) }\n\t\t\tclassName=\"edit-post-header\"\n\t\t\ttabIndex=\"-1\"\n\t\t>\n\t\t\t<HeaderToolbar />\n\t\t\t{ ! isPublishSidebarOpened && (\n\t\t\t\t<div className=\"edit-post-header__settings\">\n\t\t\t\t\t<PostSavedState\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tforceIsSaving={ isSaving }\n\t\t\t\t\t/>\n\t\t\t\t\t<PostPreviewButton />\n\t\t\t\t\t<PostPublishButtonOrToggle\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tforceIsSaving={ isSaving }\n\t\t\t\t\t/>\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\ticon=\"admin-generic\"\n\t\t\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\t\t\tonClick={ toggleGeneralSidebar }\n\t\t\t\t\t\t\tisToggled={ isEditorSidebarOpened }\n\t\t\t\t\t\t\taria-expanded={ isEditorSidebarOpened }\n\t\t\t\t\t\t\tshortcut={ shortcuts.toggleSidebar }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<DotTip tipId=\"core/editor.settings\">\n\t\t\t\t\t\t\t{ __( 'Youll find more settings for your page and blocks in the sidebar. Click “Settings” to open it.' ) }\n\t\t\t\t\t\t</DotTip>\n\t\t\t\t\t</div>\n\t\t\t\t\t<PinnedPlugins.Slot />\n\t\t\t\t\t<MoreMenu />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\thasActiveMetaboxes: select( 'core/edit-post' ).hasMetaBoxes(),\n\t\thasBlockSelection: !! select( 'core/editor' ).getBlockSelectionStart(),\n\t\tisEditorSidebarOpened: select( 'core/edit-post' ).isEditorSidebarOpened(),\n\t\tisPublishSidebarOpened: select( 'core/edit-post' ).isPublishSidebarOpened(),\n\t\tisSaving: select( 'core/edit-post' ).isSavingMetaBoxes(),\n\t} ) ),\n\twithDispatch( ( dispatch, { hasBlockSelection } ) => {\n\t\tconst { openGeneralSidebar, closeGeneralSidebar } = dispatch( 'core/edit-post' );\n\t\tconst sidebarToOpen = hasBlockSelection ? 'edit-post/block' : 'edit-post/document';\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( sidebarToOpen ),\n\t\t\tcloseGeneralSidebar: closeGeneralSidebar,\n\t\t\thasBlockSelection: undefined,\n\t\t};\n\t} ),\n)( Header );\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { MenuItemsChoice, MenuGroup } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport shortcuts from '../../../keyboard-shortcuts';\n/**\n * Set of available mode options.\n *\n * @type {Array}\n */\nconst MODES = [\n\t{\n\t\tvalue: 'visual',\n\t\tlabel: __( 'Visual Editor' ),\n\t},\n\t{\n\t\tvalue: 'text',\n\t\tlabel: __( 'Code Editor' ),\n\t},\n];\n\nfunction ModeSwitcher( { onSwitch, mode } ) {\n\tconst choices = MODES.map( ( choice ) => {\n\t\tif ( choice.value !== mode ) {\n\t\t\treturn { ...choice, shortcut: shortcuts.toggleEditorMode.display };\n\t\t}\n\t\treturn choice;\n\t} );\n\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Editor' ) }\n\t\t>\n\t\t\t<MenuItemsChoice\n\t\t\t\tchoices={ choices }\n\t\t\t\tvalue={ mode }\n\t\t\t\tonSelect={ onSwitch }\n\t\t\t/>\n\t\t</MenuGroup>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => ( {\n\t\tmode: select( 'core/edit-post' ).getEditorMode(),\n\t} ) ),\n\twithDispatch( ( dispatch, ownProps ) => ( {\n\t\tonSwitch( mode ) {\n\t\t\tdispatch( 'core/edit-post' ).switchEditorMode( mode );\n\t\t\townProps.onSelect( mode );\n\t\t},\n\t} ) ),\n] )( ModeSwitcher );\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { IconButton, Dropdown, MenuGroup } from '@wordpress/components';\nimport { Fragment } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ModeSwitcher from '../mode-switcher';\nimport PluginMoreMenuGroup from '../plugins-more-menu-group';\nimport ToolsMoreMenuGroup from '../tools-more-menu-group';\nimport OptionsMenuItem from '../options-menu-item';\nimport WritingMenu from '../writing-menu';\n\nconst ariaClosed = __( 'Show more tools & options' );\nconst ariaOpen = __( 'Hide more tools & options' );\n\nconst MoreMenu = () => (\n\t<Dropdown\n\t\tclassName=\"edit-post-more-menu\"\n\t\tcontentClassName=\"edit-post-more-menu__content\"\n\t\tposition=\"bottom left\"\n\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t<IconButton\n\t\t\t\ticon=\"ellipsis\"\n\t\t\t\tlabel={ isOpen ? ariaOpen : ariaClosed }\n\t\t\t\tonClick={ onToggle }\n\t\t\t\taria-expanded={ isOpen }\n\t\t\t/>\n\t\t) }\n\t\trenderContent={ ( { onClose } ) => (\n\t\t\t<Fragment>\n\t\t\t\t<WritingMenu onClose={ onClose } />\n\t\t\t\t<ModeSwitcher onSelect={ onClose } />\n\t\t\t\t<PluginMoreMenuGroup.Slot fillProps={ { onClose } } />\n\t\t\t\t<ToolsMoreMenuGroup.Slot fillProps={ { onClose } } />\n\t\t\t\t<MenuGroup>\n\t\t\t\t\t<OptionsMenuItem onSelect={ onClose } />\n\t\t\t\t</MenuGroup>\n\t\t\t</Fragment>\n\t\t) }\n\t/>\n);\n\nexport default MoreMenu;\n","/**\n * WordPress Dependencies\n */\nimport { withDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\n\nexport function OptionsMenuItem( { openModal, onSelect } ) {\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () => {\n\t\t\t\tonSelect();\n\t\t\t\topenModal( 'edit-post/options' );\n\t\t\t} }\n\t\t>\n\t\t\t{ __( 'Options' ) }\n\t\t</MenuItem>\n\t);\n}\n\nexport default withDispatch( ( dispatch ) => {\n\tconst { openModal } = dispatch( 'core/edit-post' );\n\n\treturn {\n\t\topenModal,\n\t};\n} )( OptionsMenuItem );\n","/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\n\nconst { Fill: PinnedPlugins, Slot } = createSlotFill( 'PinnedPlugins' );\n\nPinnedPlugins.Slot = ( props ) => (\n\t<Slot { ...props }>\n\t\t{ ( fills ) => ! isEmpty( fills ) && (\n\t\t\t<div className=\"edit-post-pinned-plugins\">\n\t\t\t\t{ fills }\n\t\t\t</div>\n\t\t) }\n\t</Slot>\n);\n\nexport default PinnedPlugins;\n","/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { MenuItem } from '@wordpress/components';\nimport { withPluginContext } from '@wordpress/plugins';\n\n/**\n * Internal dependencies\n */\nimport PluginsMoreMenuGroup from '../plugins-more-menu-group';\n\nconst PluginSidebarMoreMenuItem = ( { children, icon, isSelected, onClick } ) => (\n\t<PluginsMoreMenuGroup>\n\t\t{ ( fillProps ) => (\n\t\t\t<MenuItem\n\t\t\t\ticon={ isSelected ? 'yes' : icon }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonClick={ compose( onClick, fillProps.onClose ) }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</MenuItem>\n\t\t) }\n\t</PluginsMoreMenuGroup>\n);\n\nexport default compose(\n\twithPluginContext( ( context, ownProps ) => {\n\t\treturn {\n\t\t\ticon: ownProps.icon || context.icon,\n\t\t\tsidebarName: `${ context.name }/${ ownProps.target }`,\n\t\t};\n\t} ),\n\twithSelect( ( select, { sidebarName } ) => {\n\t\tconst {\n\t\t\tgetActiveGeneralSidebarName,\n\t\t} = select( 'core/edit-post' );\n\n\t\treturn {\n\t\t\tisSelected: getActiveGeneralSidebarName() === sidebarName,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { isSelected, sidebarName } ) => {\n\t\tconst {\n\t\t\tcloseGeneralSidebar,\n\t\t\topenGeneralSidebar,\n\t\t} = dispatch( 'core/edit-post' );\n\t\tconst onClick = isSelected ?\n\t\t\tcloseGeneralSidebar :\n\t\t\t() => openGeneralSidebar( sidebarName );\n\n\t\treturn { onClick };\n\t} ),\n)( PluginSidebarMoreMenuItem );\n","/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill, MenuGroup } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst { Fill: PluginsMoreMenuGroup, Slot } = createSlotFill( 'PluginsMoreMenuGroup' );\n\nPluginsMoreMenuGroup.Slot = ( { fillProps } ) => (\n\t<Slot fillProps={ fillProps }>\n\t\t{ ( fills ) => ! isEmpty( fills ) && (\n\t\t\t<MenuGroup label={ __( 'Plugins' ) }>\n\t\t\t\t{ fills }\n\t\t\t</MenuGroup>\n\t\t) }\n\t</Slot>\n);\n\nexport default PluginsMoreMenuGroup;\n","/**\n * External Dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies.\n */\nimport { PostPublishPanelToggle, PostPublishButton } from '@wordpress/editor';\nimport { compose } from '@wordpress/compose';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { withViewportMatch } from '@wordpress/viewport';\n\nexport function PostPublishButtonOrToggle( {\n\tforceIsDirty,\n\tforceIsSaving,\n\thasPublishAction,\n\tisBeingScheduled,\n\tisLessThanMediumViewport,\n\tisPending,\n\tisPublished,\n\tisPublishSidebarEnabled,\n\tisPublishSidebarOpened,\n\tisScheduled,\n\ttogglePublishSidebar,\n} ) {\n\tconst button = (\n\t\t<PostPublishButton\n\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\tforceIsSaving={ forceIsSaving }\n\t\t/>\n\t);\n\tconst toggle = (\n\t\t<PostPublishPanelToggle\n\t\t\tisOpen={ isPublishSidebarOpened }\n\t\t\tonToggle={ togglePublishSidebar }\n\t\t\tforceIsSaving={ forceIsSaving }\n\t\t/>\n\t);\n\n\t/**\n\t * We want to show a BUTTON when the post status is at the _final stage_\n\t * for a particular role (see https://codex.wordpress.org/Post_Status):\n\t *\n\t * - is published\n\t * - is scheduled to be published\n\t * - is pending and can't be published (but only for viewports >= medium)\n\t *\n\t * Originally we considered showing a button for pending posts\n\t * that couldn't be published (for ex, for a contributor role).\n\t * Some languages can have really long translations for \"Submit for review\",\n\t * so given the lack of UI real state we decided to take into account the viewport\n\t * in that particular case.\n\t */\n\tif (\n\t\tisPublished ||\n\t\t( isScheduled && isBeingScheduled ) ||\n\t\t( isPending && ! hasPublishAction && ! isLessThanMediumViewport )\n\t) {\n\t\treturn button;\n\t}\n\n\t/**\n\t * Then, we take other things into account:\n\t *\n\t * - Show TOGGLE if it is small viewport.\n\t * - Otherwise, use publish sidebar status to decide - TOGGLE if enabled, BUTTON if not.\n\t */\n\tif ( isLessThanMediumViewport ) {\n\t\treturn toggle;\n\t}\n\n\treturn isPublishSidebarEnabled ? toggle : button;\n}\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\thasPublishAction: get(\n\t\t\tselect( 'core/editor' ).getCurrentPost(),\n\t\t\t[ '_links', 'wp:action-publish' ],\n\t\t\tfalse\n\t\t),\n\t\tisBeingScheduled: select( 'core/editor' ).isEditedPostBeingScheduled(),\n\t\tisPending: select( 'core/editor' ).isCurrentPostPending(),\n\t\tisPublished: select( 'core/editor' ).isCurrentPostPublished(),\n\t\tisPublishSidebarEnabled: select( 'core/editor' ).isPublishSidebarEnabled(),\n\t\tisPublishSidebarOpened: select( 'core/edit-post' ).isPublishSidebarOpened(),\n\t\tisScheduled: select( 'core/editor' ).isCurrentPostScheduled(),\n\t} ) ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { togglePublishSidebar } = dispatch( 'core/edit-post' );\n\t\treturn {\n\t\t\ttogglePublishSidebar,\n\t\t};\n\t} ),\n\twithViewportMatch( { isLessThanMediumViewport: '< medium' } ),\n)( PostPublishButtonOrToggle );\n","/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill, MenuGroup } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst { Fill: ToolsMoreMenuGroup, Slot } = createSlotFill( 'ToolsMoreMenuGroup' );\n\nToolsMoreMenuGroup.Slot = ( { fillProps } ) => (\n\t<Slot fillProps={ fillProps }>\n\t\t{ ( fills ) => ! isEmpty( fills ) && (\n\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t{ fills }\n\t\t\t</MenuGroup>\n\t\t) }\n\t</Slot>\n);\n\nexport default ToolsMoreMenuGroup;\n","/**\n * WordPress Dependencies\n */\nimport { MenuGroup } from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { ifViewportMatches } from '@wordpress/viewport';\n\n/**\n * Internal dependencies\n */\nimport FeatureToggle from '../feature-toggle';\n\nfunction WritingMenu( { onClose } ) {\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ _x( 'View', 'noun' ) }\n\t\t>\n\t\t\t<FeatureToggle\n\t\t\t\tfeature=\"fixedToolbar\"\n\t\t\t\tlabel={ __( 'Unified Toolbar' ) }\n\t\t\t\tinfo={ __( 'Access all block and document tools in a single place' ) }\n\t\t\t\tonToggle={ onClose } />\n\t\t\t<FeatureToggle\n\t\t\t\tfeature=\"focusMode\"\n\t\t\t\tlabel={ __( 'Spotlight Mode' ) }\n\t\t\t\tinfo={ __( 'Focus on one block at a time' ) }\n\t\t\t\tonToggle={ onClose } />\n\t\t\t<FeatureToggle\n\t\t\t\tfeature=\"fullscreenMode\"\n\t\t\t\tlabel={ __( 'Fullscreen Mode' ) }\n\t\t\t\tinfo={ __( 'Work without distraction' ) }\n\t\t\t\tonToggle={ onClose } />\n\t\t</MenuGroup>\n\t);\n}\n\nexport default ifViewportMatches( 'medium' )( WritingMenu );\n","/**\n * WordPress dependencies\n */\nimport { displayShortcutList, shortcutAriaLabel } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\n\nconst {\n\t// Cmd+<key> on a mac, Ctrl+<key> elsewhere.\n\tprimary,\n\t// Shift+Cmd+<key> on a mac, Ctrl+Shift+<key> elsewhere.\n\tprimaryShift,\n\t// Option+Cmd+<key> on a mac, Ctrl+Alt+<key> elsewhere.\n\tprimaryAlt,\n\t// Shift+Alt+Cmd+<key> on a mac, Ctrl+Shift+Akt+<key> elsewhere.\n\tsecondary,\n\t// Ctrl+Alt+<key> on a mac, Shift+Alt+<key> elsewhere.\n\taccess,\n\tctrl,\n\talt,\n\tctrlShift,\n\tshiftAlt,\n} = displayShortcutList;\n\nconst globalShortcuts = {\n\ttitle: __( 'Global shortcuts' ),\n\tshortcuts: [\n\t\t{\n\t\t\tkeyCombination: access( 'h' ),\n\t\t\tdescription: __( 'Display this help.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primary( 's' ),\n\t\t\tdescription: __( 'Save your changes.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primary( 'z' ),\n\t\t\tdescription: __( 'Undo your last changes.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primaryShift( 'z' ),\n\t\t\tdescription: __( 'Redo your last undo.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primaryShift( ',' ),\n\t\t\tdescription: __( 'Show or hide the settings sidebar.' ),\n\t\t\tariaLabel: shortcutAriaLabel.primaryShift( ',' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: access( 'o' ),\n\t\t\tdescription: __( 'Open the block navigation menu.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: ctrl( '`' ),\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tariaLabel: shortcutAriaLabel.ctrl( '`' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: ctrlShift( '`' ),\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tariaLabel: shortcutAriaLabel.ctrlShift( '`' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: shiftAlt( 'n' ),\n\t\t\tdescription: __( 'Navigate to the next part of the editor (alternative).' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: shiftAlt( 'p' ),\n\t\t\tdescription: __( 'Navigate to the previous part of the editor (alternative).' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: alt( 'F10' ),\n\t\t\tdescription: __( 'Navigate to the nearest toolbar.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: secondary( 'm' ),\n\t\t\tdescription: __( 'Switch between Visual Editor and Code Editor.' ),\n\t\t},\n\t],\n};\n\nconst selectionShortcuts = {\n\ttitle: __( 'Selection shortcuts' ),\n\tshortcuts: [\n\t\t{\n\t\t\tkeyCombination: primary( 'a' ),\n\t\t\tdescription: __( 'Select all text when typing. Press again to select all blocks.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: 'Esc',\n\t\t\tdescription: __( 'Clear selection.' ),\n\t\t\t/* translators: The 'escape' key on a keyboard. */\n\t\t\tariaLabel: __( 'Escape' ),\n\t\t},\n\t],\n};\n\nconst blockShortcuts = {\n\ttitle: __( 'Block shortcuts' ),\n\tshortcuts: [\n\t\t{\n\t\t\tkeyCombination: primaryShift( 'd' ),\n\t\t\tdescription: __( 'Duplicate the selected block(s).' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: access( 'z' ),\n\t\t\tdescription: __( 'Remove the selected block(s).' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primaryAlt( 't' ),\n\t\t\tdescription: __( 'Insert a new block before the selected block(s).' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primaryAlt( 'y' ),\n\t\t\tdescription: __( 'Insert a new block after the selected block(s).' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: '/',\n\t\t\tdescription: __( 'Change the block type after adding a new paragraph.' ),\n\t\t\t/* translators: The forward-slash character. e.g. '/'. */\n\t\t\tariaLabel: __( 'Forward-slash' ),\n\t\t},\n\t],\n};\n\nconst textFormattingShortcuts = {\n\ttitle: __( 'Text formatting' ),\n\tshortcuts: [\n\t\t{\n\t\t\tkeyCombination: primary( 'b' ),\n\t\t\tdescription: __( 'Make the selected text bold.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primary( 'i' ),\n\t\t\tdescription: __( 'Make the selected text italic.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primary( 'u' ),\n\t\t\tdescription: __( 'Underline the selected text.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primary( 'k' ),\n\t\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: primaryShift( 'k' ),\n\t\t\tdescription: __( 'Remove a link.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: access( 'd' ),\n\t\t\tdescription: __( 'Add a strikethrough to the selected text.' ),\n\t\t},\n\t\t{\n\t\t\tkeyCombination: access( 'x' ),\n\t\t\tdescription: __( 'Display the selected text in a monospaced font.' ),\n\t\t},\n\t],\n};\n\nexport default [\n\tglobalShortcuts,\n\tselectionShortcuts,\n\tblockShortcuts,\n\ttextFormattingShortcuts,\n];\n","/**\n * External dependencies\n */\nimport { castArray } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Fragment } from '@wordpress/element';\nimport { Modal, KeyboardShortcuts } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { rawShortcut } from '@wordpress/keycodes';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport shortcutConfig from './config';\n\nconst MODAL_NAME = 'edit-post/keyboard-shortcut-help';\n\nconst mapKeyCombination = ( keyCombination ) => keyCombination.map( ( character, index ) => {\n\tif ( character === '+' ) {\n\t\treturn (\n\t\t\t<Fragment key={ index }>\n\t\t\t\t{ character }\n\t\t\t</Fragment>\n\t\t);\n\t}\n\n\treturn (\n\t\t<kbd\n\t\t\tkey={ index }\n\t\t\tclassName=\"edit-post-keyboard-shortcut-help__shortcut-key\"\n\t\t>\n\t\t\t{ character }\n\t\t</kbd>\n\t);\n} );\n\nconst ShortcutList = ( { shortcuts } ) => (\n\t<dl className=\"edit-post-keyboard-shortcut-help__shortcut-list\">\n\t\t{ shortcuts.map( ( { keyCombination, description, ariaLabel }, index ) => (\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-keyboard-shortcut-help__shortcut\"\n\t\t\t\tkey={ index }\n\t\t\t>\n\t\t\t\t<dt className=\"edit-post-keyboard-shortcut-help__shortcut-term\">\n\t\t\t\t\t<kbd className=\"edit-post-keyboard-shortcut-help__shortcut-key-combination\" aria-label={ ariaLabel }>\n\t\t\t\t\t\t{ mapKeyCombination( castArray( keyCombination ) ) }\n\t\t\t\t\t</kbd>\n\t\t\t\t</dt>\n\t\t\t\t<dd className=\"edit-post-keyboard-shortcut-help__shortcut-description\">\n\t\t\t\t\t{ description }\n\t\t\t\t</dd>\n\t\t\t</div>\n\t\t) ) }\n\t</dl>\n);\n\nconst ShortcutSection = ( { title, shortcuts } ) => (\n\t<section className=\"edit-post-keyboard-shortcut-help__section\">\n\t\t<h2 className=\"edit-post-keyboard-shortcut-help__section-title\">\n\t\t\t{ title }\n\t\t</h2>\n\t\t<ShortcutList shortcuts={ shortcuts } />\n\t</section>\n);\n\nexport function KeyboardShortcutHelpModal( { isModalActive, toggleModal } ) {\n\tconst title = (\n\t\t<span className=\"edit-post-keyboard-shortcut-help__title\">\n\t\t\t{ __( 'Keyboard Shortcuts' ) }\n\t\t</span>\n\t);\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<KeyboardShortcuts\n\t\t\t\tbindGlobal\n\t\t\t\tshortcuts={ {\n\t\t\t\t\t[ rawShortcut.access( 'h' ) ]: toggleModal,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isModalActive && (\n\t\t\t\t<Modal\n\t\t\t\t\tclassName=\"edit-post-keyboard-shortcut-help\"\n\t\t\t\t\ttitle={ title }\n\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\tonRequestClose={ toggleModal }\n\t\t\t\t>\n\t\t\t\t\t{ shortcutConfig.map( ( config, index ) => (\n\t\t\t\t\t\t<ShortcutSection key={ index } { ...config } />\n\t\t\t\t\t) ) }\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</Fragment>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => ( {\n\t\tisModalActive: select( 'core/edit-post' ).isModalActive( MODAL_NAME ),\n\t} ) ),\n\twithDispatch( ( dispatch, { isModalActive } ) => {\n\t\tconst {\n\t\t\topenModal,\n\t\t\tcloseModal,\n\t\t} = dispatch( 'core/edit-post' );\n\n\t\treturn {\n\t\t\ttoggleModal: () => isModalActive ? closeModal() : openModal( MODAL_NAME ),\n\t\t};\n\t} ),\n] )( KeyboardShortcutHelpModal );\n","/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { KeyboardShortcuts } from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport shortcuts from '../../keyboard-shortcuts';\n\nclass EditorModeKeyboardShortcuts extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.toggleMode = this.toggleMode.bind( this );\n\t\tthis.toggleSidebar = this.toggleSidebar.bind( this );\n\t}\n\n\ttoggleMode() {\n\t\tconst { mode, switchMode } = this.props;\n\t\tswitchMode( mode === 'visual' ? 'text' : 'visual' );\n\t}\n\n\ttoggleSidebar( event ) {\n\t\t// This shortcut has no known clashes, but use preventDefault to prevent any\n\t\t// obscure shortcuts from triggering.\n\t\tevent.preventDefault();\n\t\tconst { isEditorSidebarOpen, closeSidebar, openSidebar } = this.props;\n\n\t\tif ( isEditorSidebarOpen ) {\n\t\t\tcloseSidebar();\n\t\t} else {\n\t\t\topenSidebar();\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<KeyboardShortcuts\n\t\t\t\tbindGlobal\n\t\t\t\tshortcuts={ {\n\t\t\t\t\t[ shortcuts.toggleEditorMode.raw ]: this.toggleMode,\n\t\t\t\t\t[ shortcuts.toggleSidebar.raw ]: this.toggleSidebar,\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select ) => ( {\n\t\tmode: select( 'core/edit-post' ).getEditorMode(),\n\t\tisEditorSidebarOpen: select( 'core/edit-post' ).isEditorSidebarOpened(),\n\t\thasBlockSelection: !! select( 'core/editor' ).getBlockSelectionStart(),\n\t} ) ),\n\twithDispatch( ( dispatch, { hasBlockSelection } ) => ( {\n\t\tswitchMode( mode ) {\n\t\t\tdispatch( 'core/edit-post' ).switchEditorMode( mode );\n\t\t},\n\t\topenSidebar() {\n\t\t\tconst sidebarToOpen = hasBlockSelection ? 'edit-post/block' : 'edit-post/document';\n\t\t\tdispatch( 'core/edit-post' ).openGeneralSidebar( sidebarToOpen );\n\t\t},\n\t\tcloseSidebar: dispatch( 'core/edit-post' ).closeGeneralSidebar,\n\t} ) ),\n] )( EditorModeKeyboardShortcuts );\n","/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Popover, ScrollLock, navigateRegions } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorNotices,\n\tPostPublishPanel,\n\tPreserveScrollInReorder,\n} from '@wordpress/editor';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { Fragment } from '@wordpress/element';\nimport { PluginArea } from '@wordpress/plugins';\nimport { withViewportMatch } from '@wordpress/viewport';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BrowserURL from '../browser-url';\nimport Header from '../header';\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditorModeKeyboardShortcuts from '../keyboard-shortcuts';\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\nimport OptionsModal from '../options-modal';\nimport MetaBoxes from '../meta-boxes';\nimport SettingsSidebar from '../sidebar/settings-sidebar';\nimport Sidebar from '../sidebar';\nimport PluginPostPublishPanel from '../sidebar/plugin-post-publish-panel';\nimport PluginPrePublishPanel from '../sidebar/plugin-pre-publish-panel';\nimport FullscreenMode from '../fullscreen-mode';\n\nfunction Layout( {\n\tmode,\n\teditorSidebarOpened,\n\tpluginSidebarOpened,\n\tpublishSidebarOpened,\n\thasFixedToolbar,\n\tclosePublishSidebar,\n\ttogglePublishSidebar,\n\thasActiveMetaboxes,\n\tisSaving,\n\tisMobileViewport,\n} ) {\n\tconst sidebarIsOpened = editorSidebarOpened || pluginSidebarOpened || publishSidebarOpened;\n\n\tconst className = classnames( 'edit-post-layout', {\n\t\t'is-sidebar-opened': sidebarIsOpened,\n\t\t'has-fixed-toolbar': hasFixedToolbar,\n\t} );\n\n\tconst publishLandmarkProps = {\n\t\trole: 'region',\n\t\t/* translators: accessibility text for the publish landmark region. */\n\t\t'aria-label': __( 'Editor publish' ),\n\t\ttabIndex: -1,\n\t};\n\treturn (\n\t\t<div className={ className }>\n\t\t\t<FullscreenMode />\n\t\t\t<BrowserURL />\n\t\t\t<UnsavedChangesWarning />\n\t\t\t<AutosaveMonitor />\n\t\t\t<Header />\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-layout__content\"\n\t\t\t\trole=\"region\"\n\t\t\t\t/* translators: accessibility text for the content landmark region. */\n\t\t\t\taria-label={ __( 'Editor content' ) }\n\t\t\t\ttabIndex=\"-1\"\n\t\t\t>\n\t\t\t\t<EditorNotices />\n\t\t\t\t<PreserveScrollInReorder />\n\t\t\t\t<EditorModeKeyboardShortcuts />\n\t\t\t\t<KeyboardShortcutHelpModal />\n\t\t\t\t<OptionsModal />\n\t\t\t\t{ mode === 'text' && <TextEditor /> }\n\t\t\t\t{ mode === 'visual' && <VisualEditor /> }\n\t\t\t\t<div className=\"edit-post-layout__metaboxes\">\n\t\t\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t\t</div>\n\t\t\t\t<div className=\"edit-post-layout__metaboxes\">\n\t\t\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t{ publishSidebarOpened ? (\n\t\t\t\t<PostPublishPanel\n\t\t\t\t\t{ ...publishLandmarkProps }\n\t\t\t\t\tonClose={ closePublishSidebar }\n\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\tforceIsSaving={ isSaving }\n\t\t\t\t\tPrePublishExtension={ PluginPrePublishPanel.Slot }\n\t\t\t\t\tPostPublishExtension={ PluginPostPublishPanel.Slot }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<Fragment>\n\t\t\t\t\t<div className=\"edit-post-toggle-publish-panel\" { ...publishLandmarkProps }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tisDefault\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tclassName=\"edit-post-toggle-publish-panel__button\"\n\t\t\t\t\t\t\tonClick={ togglePublishSidebar }\n\t\t\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Open publish panel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t\t<SettingsSidebar />\n\t\t\t\t\t<Sidebar.Slot />\n\t\t\t\t\t{\n\t\t\t\t\t\tisMobileViewport && sidebarIsOpened && <ScrollLock />\n\t\t\t\t\t}\n\t\t\t\t</Fragment>\n\t\t\t) }\n\t\t\t<Popover.Slot />\n\t\t\t<PluginArea />\n\t\t</div>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\tmode: select( 'core/edit-post' ).getEditorMode(),\n\t\teditorSidebarOpened: select( 'core/edit-post' ).isEditorSidebarOpened(),\n\t\tpluginSidebarOpened: select( 'core/edit-post' ).isPluginSidebarOpened(),\n\t\tpublishSidebarOpened: select( 'core/edit-post' ).isPublishSidebarOpened(),\n\t\thasFixedToolbar: select( 'core/edit-post' ).isFeatureActive( 'fixedToolbar' ),\n\t\thasActiveMetaboxes: select( 'core/edit-post' ).hasMetaBoxes(),\n\t\tisSaving: select( 'core/edit-post' ).isSavingMetaBoxes(),\n\t} ) ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { closePublishSidebar, togglePublishSidebar } = dispatch( 'core/edit-post' );\n\t\treturn {\n\t\t\tclosePublishSidebar,\n\t\t\ttogglePublishSidebar,\n\t\t};\n\t} ),\n\tnavigateRegions,\n\twithViewportMatch( { isMobileViewport: '< small' } ),\n)( Layout );\n","/**\n * External dependencies\n */\nimport { map } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { withSelect } from '@wordpress/data';\nimport { Fragment } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport MetaBoxesArea from './meta-boxes-area';\nimport MetaBoxVisibility from './meta-box-visibility';\n\nfunction MetaBoxes( { location, isVisible, metaBoxes } ) {\n\treturn (\n\t\t<Fragment>\n\t\t\t{ map( metaBoxes, ( { id } ) => (\n\t\t\t\t<MetaBoxVisibility key={ id } id={ id } />\n\t\t\t) ) }\n\t\t\t{ isVisible && <MetaBoxesArea location={ location } /> }\n\t\t</Fragment>\n\t);\n}\n\nexport default withSelect( ( select, { location } ) => {\n\tconst { isMetaBoxLocationVisible, getMetaBoxesPerLocation } = select( 'core/edit-post' );\n\n\treturn {\n\t\tmetaBoxes: getMetaBoxesPerLocation( location ),\n\t\tisVisible: isMetaBoxLocationVisible( location ),\n\t};\n} )( MetaBoxes );\n","/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { withSelect } from '@wordpress/data';\n\nclass MetaBoxVisibility extends Component {\n\tcomponentDidMount() {\n\t\tthis.updateDOM();\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tif ( this.props.isVisible !== prevProps.isVisible ) {\n\t\t\tthis.updateDOM();\n\t\t}\n\t}\n\n\tupdateDOM() {\n\t\tconst { id, isVisible } = this.props;\n\t\tconst element = document.getElementById( id );\n\t\tif ( element ) {\n\t\t\telement.style.display = isVisible ? '' : 'none';\n\t\t}\n\t}\n\n\trender() {\n\t\treturn null;\n\t}\n}\n\nexport default withSelect( ( select, { id } ) => ( {\n\tisVisible: select( 'core/edit-post' ).isEditorPanelEnabled( `meta-box-${ id }` ),\n} ) )( MetaBoxVisibility );\n","/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { Spinner } from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\n\nclass MetaBoxesArea extends Component {\n\t/**\n\t * @inheritdoc\n\t */\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.bindContainerNode = this.bindContainerNode.bind( this );\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\tcomponentDidMount() {\n\t\tthis.form = document.querySelector( '.metabox-location-' + this.props.location );\n\t\tif ( this.form ) {\n\t\t\tthis.container.appendChild( this.form );\n\t\t}\n\t}\n\n\t/**\n\t * Get the meta box location form from the original location.\n\t */\n\tcomponentWillUnmount() {\n\t\tif ( this.form ) {\n\t\t\tdocument.querySelector( '#metaboxes' ).appendChild( this.form );\n\t\t}\n\t}\n\n\t/**\n\t * Binds the metabox area container node.\n\t *\n\t * @param {Element} node DOM Node.\n\t */\n\tbindContainerNode( node ) {\n\t\tthis.container = node;\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\trender() {\n\t\tconst { location, isSaving } = this.props;\n\n\t\tconst classes = classnames(\n\t\t\t'edit-post-meta-boxes-area',\n\t\t\t`is-${ location }`,\n\t\t\t{\n\t\t\t\t'is-loading': isSaving,\n\t\t\t}\n\t\t);\n\n\t\treturn (\n\t\t\t<div className={ classes }>\n\t\t\t\t{ isSaving && <Spinner /> }\n\t\t\t\t<div className=\"edit-post-meta-boxes-area__container\" ref={ this.bindContainerNode } />\n\t\t\t\t<div className=\"edit-post-meta-boxes-area__clear\" />\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nexport default withSelect( ( select ) => {\n\treturn {\n\t\tisSaving: select( 'core/edit-post' ).isSavingMetaBoxes(),\n\t};\n} )( MetaBoxesArea );\n","/**\n * External dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { PostTaxonomies, PostExcerptCheck, PageAttributesCheck } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport Section from './section';\nimport {\n\tEnablePublishSidebarOption,\n\tEnableTipsOption,\n\tEnablePanelOption,\n} from './options';\nimport MetaBoxesSection from './meta-boxes-section';\n\nconst MODAL_NAME = 'edit-post/options';\n\nexport function OptionsModal( { isModalActive, closeModal } ) {\n\tif ( ! isModalActive ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-post-options-modal\"\n\t\t\ttitle={ <span className=\"edit-post-options-modal__title\">{ __( 'Options' ) }</span> }\n\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\tonRequestClose={ closeModal }\n\t\t>\n\t\t\t<Section title={ __( 'General' ) }>\n\t\t\t\t<EnablePublishSidebarOption label={ __( 'Enable Pre-publish Checks' ) } />\n\t\t\t\t<EnableTipsOption label={ __( 'Enable Tips' ) } />\n\t\t\t</Section>\n\t\t\t<Section title={ __( 'Document Panels' ) }>\n\t\t\t\t<PostTaxonomies\n\t\t\t\t\ttaxonomyWrapper={ ( content, taxonomy ) => (\n\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\tlabel={ get( taxonomy, [ 'labels', 'menu_name' ] ) }\n\t\t\t\t\t\t\tpanelName={ `taxonomy-panel-${ taxonomy.slug }` }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t\t<EnablePanelOption label={ __( 'Featured Image' ) } panelName=\"featured-image\" />\n\t\t\t\t<PostExcerptCheck>\n\t\t\t\t\t<EnablePanelOption label={ __( 'Excerpt' ) } panelName=\"post-excerpt\" />\n\t\t\t\t</PostExcerptCheck>\n\t\t\t\t<EnablePanelOption label={ __( 'Discussion' ) } panelName=\"discussion-panel\" />\n\t\t\t\t<PageAttributesCheck>\n\t\t\t\t\t<EnablePanelOption label={ __( 'Page Attributes' ) } panelName=\"page-attributes\" />\n\t\t\t\t</PageAttributesCheck>\n\t\t\t</Section>\n\t\t\t<MetaBoxesSection title={ __( 'Advanced Panels' ) } />\n\t\t</Modal>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\tisModalActive: select( 'core/edit-post' ).isModalActive( MODAL_NAME ),\n\t} ) ),\n\twithDispatch( ( dispatch ) => {\n\t\treturn {\n\t\t\tcloseModal: () => dispatch( 'core/edit-post' ).closeModal(),\n\t\t};\n\t} )\n)( OptionsModal );\n","/**\n * External dependencies\n */\nimport { map } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Section from './section';\nimport { EnableCustomFieldsOption, EnablePanelOption } from './options';\n\nfunction MetaBoxesSection( { hasCustomFieldsSupport, metaBoxes, ...sectionProps } ) {\n\tif ( ! hasCustomFieldsSupport && metaBoxes.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Section { ...sectionProps }>\n\t\t\t{ hasCustomFieldsSupport && (\n\t\t\t\t<EnableCustomFieldsOption label={ __( 'Custom Fields' ) } />\n\t\t\t) }\n\t\t\t{ map(\n\t\t\t\tmetaBoxes,\n\t\t\t\t( { id, title } ) =>\n\t\t\t\t\t// The 'Custom Fields' meta box is a special case handled above.\n\t\t\t\t\tid !== 'postcustom' && (\n\t\t\t\t\t\t<EnablePanelOption key={ id } label={ title } panelName={ `meta-box-${ id }` } />\n\t\t\t\t\t)\n\t\t\t) }\n\t\t</Section>\n\t);\n}\n\nexport default withSelect( ( select ) => {\n\tconst { getEditedPostAttribute } = select( 'core/editor' );\n\tconst { getPostType } = select( 'core' );\n\tconst { getAllMetaBoxes } = select( 'core/edit-post' );\n\n\tconst postType = getPostType( getEditedPostAttribute( 'type' ) );\n\treturn {\n\t\thasCustomFieldsSupport: postType.supports[ 'custom-fields' ],\n\t\tmetaBoxes: getAllMetaBoxes(),\n\t};\n} )( MetaBoxesSection );\n","/**\n * WordPress dependencies\n */\nimport { CheckboxControl } from '@wordpress/components';\n\nfunction BaseOption( { label, isChecked, onChange } ) {\n\treturn (\n\t\t<CheckboxControl\n\t\t\tclassName=\"edit-post-options-modal__option\"\n\t\t\tlabel={ label }\n\t\t\tchecked={ isChecked }\n\t\t\tonChange={ onChange }\n\t\t/>\n\t);\n}\n\nexport default BaseOption;\n","/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport BaseOption from './base';\n\nclass DeferredOption extends Component {\n\tconstructor( { isChecked } ) {\n\t\tsuper( ...arguments );\n\t\tthis.state = {\n\t\t\tisChecked,\n\t\t};\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.state.isChecked !== this.props.isChecked ) {\n\t\t\tthis.props.onChange( this.state.isChecked );\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<BaseOption\n\t\t\t\tlabel={ this.props.label }\n\t\t\t\tisChecked={ this.state.isChecked }\n\t\t\t\tonChange={ ( isChecked ) => this.setState( { isChecked } ) }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default DeferredOption;\n","/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BaseOption from './base';\n\nclass EnableCustomFieldsOption extends Component {\n\tconstructor( { isChecked } ) {\n\t\tsuper( ...arguments );\n\n\t\tthis.toggleCustomFields = this.toggleCustomFields.bind( this );\n\n\t\tthis.state = { isChecked };\n\t}\n\n\ttoggleCustomFields() {\n\t\t// Submit a hidden form which triggers the toggle_custom_fields admin action.\n\t\t// This action will toggle the setting and reload the editor with the meta box\n\t\t// assets included on the page.\n\t\tdocument.getElementById( 'toggle-custom-fields-form' ).submit();\n\n\t\t// Make it look like something happened while the page reloads.\n\t\tthis.setState( { isChecked: ! this.props.isChecked } );\n\t}\n\n\trender() {\n\t\tconst { label } = this.props;\n\t\tconst { isChecked } = this.state;\n\n\t\treturn (\n\t\t\t<BaseOption\n\t\t\t\tlabel={ label }\n\t\t\t\tisChecked={ isChecked }\n\t\t\t\tonChange={ this.toggleCustomFields }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default withSelect( ( select ) => ( {\n\tisChecked: select( 'core/editor' ).getEditorSettings().enableCustomFields,\n} ) )( EnableCustomFieldsOption );\n","/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BaseOption from './base';\n\nexport default compose(\n\twithSelect( ( select, { panelName } ) => ( {\n\t\tisChecked: select( 'core/edit-post' ).isEditorPanelEnabled( panelName ),\n\t} ) ),\n\twithDispatch( ( dispatch, { panelName } ) => ( {\n\t\tonChange: () => dispatch( 'core/edit-post' ).toggleEditorPanelEnabled( panelName ),\n\t} ) )\n)( BaseOption );\n","/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { ifViewportMatches } from '@wordpress/viewport';\n\n/**\n * Internal dependencies\n */\nimport BaseOption from './base';\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\tisChecked: select( 'core/editor' ).isPublishSidebarEnabled(),\n\t} ) ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { enablePublishSidebar, disablePublishSidebar } = dispatch( 'core/editor' );\n\t\treturn {\n\t\t\tonChange: ( isEnabled ) => ( isEnabled ? enablePublishSidebar() : disablePublishSidebar() ),\n\t\t};\n\t} ),\n\t// In < medium viewports we override this option and always show the publish sidebar.\n\t// See the edit-post's header component for the specific logic.\n\tifViewportMatches( 'medium' ),\n)( BaseOption );\n","/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport DeferredOption from './deferred';\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\tisChecked: select( 'core/nux' ).areTipsEnabled(),\n\t} ) ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { enableTips, disableTips } = dispatch( 'core/nux' );\n\t\treturn {\n\t\t\tonChange: ( isEnabled ) => ( isEnabled ? enableTips() : disableTips() ),\n\t\t};\n\t} )\n)(\n\t// Using DeferredOption here means enableTips() is called when the Options\n\t// modal is dismissed. This stops the NUX guide from appearing above the\n\t// Options modal, which looks totally weird.\n\tDeferredOption\n);\n","export { default as EnableCustomFieldsOption } from './enable-custom-fields';\nexport { default as EnablePanelOption } from './enable-panel';\nexport { default as EnablePublishSidebarOption } from './enable-publish-sidebar';\nexport { default as EnableTipsOption } from './enable-tips';\n","const Section = ( { title, children } ) => (\n\t<section className=\"edit-post-options-modal__section\">\n\t\t<h2 className=\"edit-post-options-modal__section-title\">{ title }</h2>\n\t\t{ children }\n\t</section>\n);\n\nexport default Section;\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelBody, PanelRow } from '@wordpress/components';\nimport { PostComments, PostPingbacks, PostTypeSupportCheck } from '@wordpress/editor';\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'discussion-panel';\n\nfunction DiscussionPanel( { isEnabled, isOpened, onTogglePanel } ) {\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PostTypeSupportCheck supportKeys={ [ 'comments', 'trackbacks' ] }>\n\t\t\t<PanelBody title={ __( 'Discussion' ) } opened={ isOpened } onToggle={ onTogglePanel }>\n\t\t\t\t<PostTypeSupportCheck supportKeys=\"comments\">\n\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t<PostComments />\n\t\t\t\t\t</PanelRow>\n\t\t\t\t</PostTypeSupportCheck>\n\n\t\t\t\t<PostTypeSupportCheck supportKeys=\"trackbacks\">\n\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t<PostPingbacks />\n\t\t\t\t\t</PanelRow>\n\t\t\t\t</PostTypeSupportCheck>\n\t\t\t</PanelBody>\n\t\t</PostTypeSupportCheck>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\treturn {\n\t\t\tisEnabled: select( 'core/edit-post' ).isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tisOpened: select( 'core/edit-post' ).isEditorPanelOpened( PANEL_NAME ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => ( {\n\t\tonTogglePanel() {\n\t\t\treturn dispatch( 'core/edit-post' ).toggleEditorPanelOpened( PANEL_NAME );\n\t\t},\n\t} ) ),\n] )( DiscussionPanel );\n\n","/**\n * External dependencies\n */\nimport { get, partial } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelBody } from '@wordpress/components';\nimport { PostFeaturedImage, PostFeaturedImageCheck } from '@wordpress/editor';\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'featured-image';\n\nfunction FeaturedImage( { isEnabled, isOpened, postType, onTogglePanel } ) {\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PostFeaturedImageCheck>\n\t\t\t<PanelBody\n\t\t\t\ttitle={ get(\n\t\t\t\t\tpostType,\n\t\t\t\t\t[ 'labels', 'featured_image' ],\n\t\t\t\t\t__( 'Featured Image' )\n\t\t\t\t) }\n\t\t\t\topened={ isOpened }\n\t\t\t\tonToggle={ onTogglePanel }\n\t\t\t>\n\t\t\t\t<PostFeaturedImage />\n\t\t\t</PanelBody>\n\t\t</PostFeaturedImageCheck>\n\t);\n}\n\nconst applyWithSelect = withSelect( ( select ) => {\n\tconst { getEditedPostAttribute } = select( 'core/editor' );\n\tconst { getPostType } = select( 'core' );\n\tconst { isEditorPanelEnabled, isEditorPanelOpened } = select( 'core/edit-post' );\n\n\treturn {\n\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\tisOpened: isEditorPanelOpened( PANEL_NAME ),\n\t};\n} );\n\nconst applyWithDispatch = withDispatch( ( dispatch ) => {\n\tconst { toggleEditorPanelOpened } = dispatch( 'core/edit-post' );\n\n\treturn {\n\t\tonTogglePanel: partial( toggleEditorPanelOpened, PANEL_NAME ),\n\t};\n} );\n\nexport default compose(\n\tapplyWithSelect,\n\tapplyWithDispatch,\n)( FeaturedImage );\n","/**\n * WordPress Dependencies\n */\nimport { createSlotFill, withFocusReturn } from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { ifCondition, compose } from '@wordpress/compose';\n\nconst { Fill, Slot } = createSlotFill( 'Sidebar' );\n\n/**\n * Renders a sidebar with its content.\n *\n * @return {Object} The rendered sidebar.\n */\nconst Sidebar = ( { children, label } ) => {\n\treturn (\n\t\t<Fill>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-sidebar\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-label={ label }\n\t\t\t\ttabIndex=\"-1\"\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</Fill>\n\t);\n};\n\nconst WrappedSidebar = compose(\n\twithSelect( ( select, { name } ) => ( {\n\t\tisActive: select( 'core/edit-post' ).getActiveGeneralSidebarName() === name,\n\t} ) ),\n\tifCondition( ( { isActive } ) => isActive ),\n\twithFocusReturn,\n)( Sidebar );\n\nWrappedSidebar.Slot = Slot;\n\nexport default WrappedSidebar;\n","/**\n * WordPress dependencies\n */\nimport { PanelBody } from '@wordpress/components';\nimport { PostLastRevision, PostLastRevisionCheck } from '@wordpress/editor';\n\nfunction LastRevision() {\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<PanelBody className=\"edit-post-last-revision__panel\">\n\t\t\t\t<PostLastRevision />\n\t\t\t</PanelBody>\n\t\t</PostLastRevisionCheck>\n\t);\n}\n\nexport default LastRevision;\n","/**\n * External dependencies\n */\nimport { get, partial } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelBody, PanelRow } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\nimport { PageAttributesCheck, PageAttributesOrder, PageAttributesParent, PageTemplate } from '@wordpress/editor';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'page-attributes';\n\nexport function PageAttributes( { isEnabled, isOpened, onTogglePanel, postType } ) {\n\tif ( ! isEnabled || ! postType ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<PageAttributesCheck>\n\t\t\t<PanelBody\n\t\t\t\ttitle={ get( postType, [ 'labels', 'attributes' ], __( 'Page Attributes' ) ) }\n\t\t\t\topened={ isOpened }\n\t\t\t\tonToggle={ onTogglePanel }\n\t\t\t>\n\t\t\t\t<PageTemplate />\n\t\t\t\t<PageAttributesParent />\n\t\t\t\t<PanelRow>\n\t\t\t\t\t<PageAttributesOrder />\n\t\t\t\t</PanelRow>\n\t\t\t</PanelBody>\n\t\t</PageAttributesCheck>\n\t);\n}\n\nconst applyWithSelect = withSelect( ( select ) => {\n\tconst { getEditedPostAttribute } = select( 'core/editor' );\n\tconst { isEditorPanelEnabled, isEditorPanelOpened } = select( 'core/edit-post' );\n\tconst { getPostType } = select( 'core' );\n\treturn {\n\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\tisOpened: isEditorPanelOpened( PANEL_NAME ),\n\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t};\n} );\n\nconst applyWithDispatch = withDispatch( ( dispatch ) => {\n\tconst { toggleEditorPanelOpened } = dispatch( 'core/edit-post' );\n\n\treturn {\n\t\tonTogglePanel: partial( toggleEditorPanelOpened, PANEL_NAME ),\n\t};\n} );\n\nexport default compose(\n\tapplyWithSelect,\n\tapplyWithDispatch,\n)( PageAttributes );\n","/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\n\nconst { Fill, Slot } = createSlotFill( 'PluginPostPublishPanel' );\n\nconst PluginPostPublishPanel = ( { children, className, title, initialOpen = false } ) => (\n\t<Fill>\n\t\t<PanelBody\n\t\t\tclassName={ className }\n\t\t\tinitialOpen={ initialOpen || ! title }\n\t\t\ttitle={ title }\n\t\t>\n\t\t\t{ children }\n\t\t</PanelBody>\n\t</Fill>\n);\n\nPluginPostPublishPanel.Slot = Slot;\n\nexport default PluginPostPublishPanel;\n","/**\n * Defines as extensibility slot for the Status & Visibility panel.\n */\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelRow } from '@wordpress/components';\n\nexport const { Fill, Slot } = createSlotFill( 'PluginPostStatusInfo' );\n\nconst PluginPostStatusInfo = ( { children, className } ) => (\n\t<Fill>\n\t\t<PanelRow className={ className }>\n\t\t\t{ children }\n\t\t</PanelRow>\n\t</Fill>\n);\n\nPluginPostStatusInfo.Slot = Slot;\n\nexport default PluginPostStatusInfo;\n","/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\n\nconst { Fill, Slot } = createSlotFill( 'PluginPrePublishPanel' );\n\nconst PluginPrePublishPanel = ( { children, className, title, initialOpen = false } ) => (\n\t<Fill>\n\t\t<PanelBody\n\t\t\tclassName={ className }\n\t\t\tinitialOpen={ initialOpen || ! title }\n\t\t\ttitle={ title }\n\t\t>\n\t\t\t{ children }\n\t\t</PanelBody>\n\t</Fill>\n);\n\nPluginPrePublishPanel.Slot = Slot;\n\nexport default PluginPrePublishPanel;\n","/**\n * WordPress dependencies\n */\nimport { IconButton, Panel } from '@wordpress/components';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { Fragment } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { withPluginContext } from '@wordpress/plugins';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport PinnedPlugins from '../../header/pinned-plugins';\nimport Sidebar from '../';\nimport SidebarHeader from '../sidebar-header';\n\n/**\n * Renders the plugin sidebar component.\n *\n * @param {Object} props Element props.\n *\n * @return {WPElement} Plugin sidebar component.\n */\nfunction PluginSidebar( props ) {\n\tconst {\n\t\tchildren,\n\t\ticon,\n\t\tisActive,\n\t\tisPinnable = true,\n\t\tisPinned,\n\t\tsidebarName,\n\t\ttitle,\n\t\ttogglePin,\n\t\ttoggleSidebar,\n\t} = props;\n\n\treturn (\n\t\t<Fragment>\n\t\t\t{ isPinnable && (\n\t\t\t\t<PinnedPlugins>\n\t\t\t\t\t{ isPinned && <IconButton\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tlabel={ title }\n\t\t\t\t\t\tonClick={ toggleSidebar }\n\t\t\t\t\t\tisToggled={ isActive }\n\t\t\t\t\t\taria-expanded={ isActive }\n\t\t\t\t\t/> }\n\t\t\t\t</PinnedPlugins>\n\t\t\t) }\n\t\t\t<Sidebar\n\t\t\t\tname={ sidebarName }\n\t\t\t\tlabel={ __( 'Editor plugins' ) }\n\t\t\t>\n\t\t\t\t<SidebarHeader\n\t\t\t\t\tcloseLabel={ __( 'Close plugin' ) }\n\t\t\t\t>\n\t\t\t\t\t<strong>{ title }</strong>\n\t\t\t\t\t{ isPinnable && (\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\ticon={ isPinned ? 'star-filled' : 'star-empty' }\n\t\t\t\t\t\t\tlabel={ isPinned ? __( 'Unpin from toolbar' ) : __( 'Pin to toolbar' ) }\n\t\t\t\t\t\t\tonClick={ togglePin }\n\t\t\t\t\t\t\tisToggled={ isPinned }\n\t\t\t\t\t\t\taria-expanded={ isPinned }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</SidebarHeader>\n\t\t\t\t<Panel>\n\t\t\t\t\t{ children }\n\t\t\t\t</Panel>\n\t\t\t</Sidebar>\n\t\t</Fragment>\n\t);\n}\n\nexport default compose(\n\twithPluginContext( ( context, ownProps ) => {\n\t\treturn {\n\t\t\ticon: ownProps.icon || context.icon,\n\t\t\tsidebarName: `${ context.name }/${ ownProps.name }`,\n\t\t};\n\t} ),\n\twithSelect( ( select, { sidebarName } ) => {\n\t\tconst {\n\t\t\tgetActiveGeneralSidebarName,\n\t\t\tisPluginItemPinned,\n\t\t} = select( 'core/edit-post' );\n\n\t\treturn {\n\t\t\tisActive: getActiveGeneralSidebarName() === sidebarName,\n\t\t\tisPinned: isPluginItemPinned( sidebarName ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { isActive, sidebarName } ) => {\n\t\tconst {\n\t\t\tcloseGeneralSidebar,\n\t\t\topenGeneralSidebar,\n\t\t\ttogglePinnedPluginItem,\n\t\t} = dispatch( 'core/edit-post' );\n\n\t\treturn {\n\t\t\ttogglePin() {\n\t\t\t\ttogglePinnedPluginItem( sidebarName );\n\t\t\t},\n\t\t\ttoggleSidebar() {\n\t\t\t\tif ( isActive ) {\n\t\t\t\t\tcloseGeneralSidebar();\n\t\t\t\t} else {\n\t\t\t\t\topenGeneralSidebar( sidebarName );\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t} ),\n)( PluginSidebar );\n","/**\n * WordPress dependencies\n */\nimport { PanelRow } from '@wordpress/components';\nimport { PostAuthor as PostAuthorForm, PostAuthorCheck } from '@wordpress/editor';\n\nexport function PostAuthor() {\n\treturn (\n\t\t<PostAuthorCheck>\n\t\t\t<PanelRow>\n\t\t\t\t<PostAuthorForm />\n\t\t\t</PanelRow>\n\t\t</PostAuthorCheck>\n\t);\n}\n\nexport default PostAuthor;\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelBody } from '@wordpress/components';\nimport { PostExcerpt as PostExcerptForm, PostExcerptCheck } from '@wordpress/editor';\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'post-excerpt';\n\nfunction PostExcerpt( { isEnabled, isOpened, onTogglePanel } ) {\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PostExcerptCheck>\n\t\t\t<PanelBody title={ __( 'Excerpt' ) } opened={ isOpened } onToggle={ onTogglePanel }>\n\t\t\t\t<PostExcerptForm />\n\t\t\t</PanelBody>\n\t\t</PostExcerptCheck>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\treturn {\n\t\t\tisEnabled: select( 'core/edit-post' ).isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tisOpened: select( 'core/edit-post' ).isEditorPanelOpened( PANEL_NAME ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => ( {\n\t\tonTogglePanel() {\n\t\t\treturn dispatch( 'core/edit-post' ).toggleEditorPanelOpened( PANEL_NAME );\n\t\t},\n\t} ) ),\n] )( PostExcerpt );\n\n","/**\n * WordPress dependencies\n */\nimport { PanelRow } from '@wordpress/components';\nimport { PostFormat as PostFormatForm, PostFormatCheck } from '@wordpress/editor';\n\nexport function PostFormat() {\n\treturn (\n\t\t<PostFormatCheck>\n\t\t\t<PanelRow>\n\t\t\t\t<PostFormatForm />\n\t\t\t</PanelRow>\n\t\t</PostFormatCheck>\n\t);\n}\n\nexport default PostFormat;\n","/**\n * WordPress dependencies\n */\nimport { PanelRow } from '@wordpress/components';\nimport { PostPendingStatus as PostPendingStatusForm, PostPendingStatusCheck } from '@wordpress/editor';\n\nexport function PostPendingStatus() {\n\treturn (\n\t\t<PostPendingStatusCheck>\n\t\t\t<PanelRow>\n\t\t\t\t<PostPendingStatusForm />\n\t\t\t</PanelRow>\n\t\t</PostPendingStatusCheck>\n\t);\n}\n\nexport default PostPendingStatus;\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelRow, Dropdown, Button } from '@wordpress/components';\nimport { withInstanceId } from '@wordpress/compose';\nimport { PostSchedule as PostScheduleForm, PostScheduleLabel, PostScheduleCheck } from '@wordpress/editor';\nimport { Fragment } from '@wordpress/element';\n\nexport function PostSchedule( { instanceId } ) {\n\treturn (\n\t\t<PostScheduleCheck>\n\t\t\t<PanelRow className=\"edit-post-post-schedule\">\n\t\t\t\t<label\n\t\t\t\t\thtmlFor={ `edit-post-post-schedule__toggle-${ instanceId }` }\n\t\t\t\t\tid={ `edit-post-post-schedule__heading-${ instanceId }` }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Publish' ) }\n\t\t\t\t</label>\n\t\t\t\t<Dropdown\n\t\t\t\t\tposition=\"bottom left\"\n\t\t\t\t\tcontentClassName=\"edit-post-post-schedule__dialog\"\n\t\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => (\n\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t<label\n\t\t\t\t\t\t\t\tclassName=\"edit-post-post-schedule__label\"\n\t\t\t\t\t\t\t\thtmlFor={ `edit-post-post-schedule__toggle-${ instanceId }` }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostScheduleLabel /> { __( 'Click to change' ) }\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tid={ `edit-post-post-schedule__toggle-${ instanceId }` }\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tclassName=\"edit-post-post-schedule__toggle\"\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\taria-live=\"polite\"\n\t\t\t\t\t\t\t\tisLink\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostScheduleLabel />\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t) }\n\t\t\t\t\trenderContent={ () => <PostScheduleForm /> }\n\t\t\t\t/>\n\t\t\t</PanelRow>\n\t\t</PostScheduleCheck>\n\t);\n}\n\nexport default withInstanceId( PostSchedule );\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelBody } from '@wordpress/components';\nimport { Fragment } from '@wordpress/element';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal Dependencies\n */\nimport PostVisibility from '../post-visibility';\nimport PostTrash from '../post-trash';\nimport PostSchedule from '../post-schedule';\nimport PostSticky from '../post-sticky';\nimport PostAuthor from '../post-author';\nimport PostFormat from '../post-format';\nimport PostPendingStatus from '../post-pending-status';\nimport PluginPostStatusInfo from '../plugin-post-status-info';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'post-status';\n\nfunction PostStatus( { isOpened, onTogglePanel } ) {\n\treturn (\n\t\t<PanelBody className=\"edit-post-post-status\" title={ __( 'Status & Visibility' ) } opened={ isOpened } onToggle={ onTogglePanel }>\n\t\t\t<PluginPostStatusInfo.Slot>\n\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t<PostVisibility />\n\t\t\t\t\t\t<PostSchedule />\n\t\t\t\t\t\t<PostFormat />\n\t\t\t\t\t\t<PostSticky />\n\t\t\t\t\t\t<PostPendingStatus />\n\t\t\t\t\t\t<PostAuthor />\n\t\t\t\t\t\t{ fills }\n\t\t\t\t\t\t<PostTrash />\n\t\t\t\t\t</Fragment>\n\t\t\t\t) }\n\t\t\t</PluginPostStatusInfo.Slot>\n\t\t</PanelBody>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => ( {\n\t\tisOpened: select( 'core/edit-post' ).isEditorPanelOpened( PANEL_NAME ),\n\t} ) ),\n\twithDispatch( ( dispatch ) => ( {\n\t\tonTogglePanel() {\n\t\t\treturn dispatch( 'core/edit-post' ).toggleEditorPanelOpened( PANEL_NAME );\n\t\t},\n\t} ) ),\n] )( PostStatus );\n\n","/**\n * WordPress dependencies\n */\nimport { PanelRow } from '@wordpress/components';\nimport { PostSticky as PostStickyForm, PostStickyCheck } from '@wordpress/editor';\n\nexport function PostSticky() {\n\treturn (\n\t\t<PostStickyCheck>\n\t\t\t<PanelRow>\n\t\t\t\t<PostStickyForm />\n\t\t\t</PanelRow>\n\t\t</PostStickyCheck>\n\t);\n}\n\nexport default PostSticky;\n","/**\n * WordPress dependencies\n */\nimport { PostTaxonomies as PostTaxonomiesForm, PostTaxonomiesCheck } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport TaxonomyPanel from './taxonomy-panel';\n\nfunction PostTaxonomies() {\n\treturn (\n\t\t<PostTaxonomiesCheck>\n\t\t\t<PostTaxonomiesForm\n\t\t\t\ttaxonomyWrapper={ ( content, taxonomy ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<TaxonomyPanel taxonomy={ taxonomy }>\n\t\t\t\t\t\t\t{ content }\n\t\t\t\t\t\t</TaxonomyPanel>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PostTaxonomiesCheck>\n\t);\n}\n\nexport default PostTaxonomies;\n","/**\n * External Dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { PanelBody } from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\nfunction TaxonomyPanel( { isEnabled, taxonomy, isOpened, onTogglePanel, children } ) {\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\tconst taxonomyMenuName = get( taxonomy, [ 'labels', 'menu_name' ] );\n\tif ( ! taxonomyMenuName ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ taxonomyMenuName }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ onTogglePanel }\n\t\t>\n\t\t\t{ children }\n\t\t</PanelBody>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select, ownProps ) => {\n\t\tconst slug = get( ownProps.taxonomy, [ 'slug' ] );\n\t\tconst panelName = slug ? `taxonomy-panel-${ slug }` : '';\n\t\treturn {\n\t\t\tpanelName,\n\t\t\tisEnabled: slug ?\n\t\t\t\tselect( 'core/edit-post' ).isEditorPanelEnabled( panelName ) :\n\t\t\t\tfalse,\n\t\t\tisOpened: slug ?\n\t\t\t\tselect( 'core/edit-post' ).isEditorPanelOpened( panelName ) :\n\t\t\t\tfalse,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => ( {\n\t\tonTogglePanel: () => {\n\t\t\tdispatch( 'core/edit-post' ).toggleEditorPanelOpened( ownProps.panelName );\n\t\t},\n\t} ) ),\n)( TaxonomyPanel );\n","/**\n * WordPress dependencies\n */\nimport { PanelRow } from '@wordpress/components';\nimport { PostTrash as PostTrashLink, PostTrashCheck } from '@wordpress/editor';\n\nexport default function PostTrash() {\n\treturn (\n\t\t<PostTrashCheck>\n\t\t\t<PanelRow>\n\t\t\t\t<PostTrashLink />\n\t\t\t</PanelRow>\n\t\t</PostTrashCheck>\n\t);\n}\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelRow, Dropdown, Button } from '@wordpress/components';\nimport { PostVisibility as PostVisibilityForm, PostVisibilityLabel, PostVisibilityCheck } from '@wordpress/editor';\n\nexport function PostVisibility() {\n\treturn (\n\t\t<PostVisibilityCheck render={ ( { canEdit } ) => (\n\t\t\t<PanelRow className=\"edit-post-post-visibility\">\n\t\t\t\t<span>{ __( 'Visibility' ) }</span>\n\t\t\t\t{ ! canEdit && <span><PostVisibilityLabel /></span> }\n\t\t\t\t{ canEdit && (\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tposition=\"bottom left\"\n\t\t\t\t\t\tcontentClassName=\"edit-post-post-visibility__dialog\"\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tclassName=\"edit-post-post-visibility__toggle\"\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\tisLink\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostVisibilityLabel />\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => <PostVisibilityForm /> }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelRow>\n\t\t) } />\n\t);\n}\n\nexport default PostVisibility;\n","/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { withDispatch, withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport SidebarHeader from '../sidebar-header';\n\nconst SettingsHeader = ( { count, openDocumentSettings, openBlockSettings, sidebarName } ) => {\n\t// Do not display \"0 Blocks\".\n\tconst blockCount = count === 0 ? 1 : count;\n\tconst blockLabel = blockCount === 1 ?\n\t\t__( 'Block' ) :\n\t\tsprintf( _n( '%d Block', '%d Blocks', blockCount ), blockCount );\n\n\tconst [ documentAriaLabel, documentActiveClass ] = sidebarName === 'edit-post/document' ?\n\t\t// translators: ARIA label for the Document Settings sidebar tab, selected.\n\t\t[ __( 'Document settings (selected)' ), 'is-active' ] :\n\t\t// translators: ARIA label for the Document Settings sidebar tab, not selected.\n\t\t[ __( 'Document settings' ), '' ];\n\n\tconst [ blockAriaLabel, blockActiveClass ] = sidebarName === 'edit-post/block' ?\n\t\t// translators: ARIA label for the Block Settings sidebar tab, selected.\n\t\t[ __( 'Block settings (selected)' ), 'is-active' ] :\n\t\t// translators: ARIA label for the Block Settings sidebar tab, not selected.\n\t\t[ __( 'Block settings' ), '' ];\n\n\treturn (\n\t\t<SidebarHeader\n\t\t\tclassName=\"edit-post-sidebar__panel-tabs\"\n\t\t\tcloseLabel={ __( 'Close settings' ) }\n\t\t>\n\t\t\t{ /* Use a list so screen readers will announce how many tabs there are. */ }\n\t\t\t<ul>\n\t\t\t\t<li>\n\t\t\t\t\t<button\n\t\t\t\t\t\tonClick={ openDocumentSettings }\n\t\t\t\t\t\tclassName={ `edit-post-sidebar__panel-tab ${ documentActiveClass }` }\n\t\t\t\t\t\taria-label={ documentAriaLabel }\n\t\t\t\t\t\tdata-label={ __( 'Document' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Document' ) }\n\t\t\t\t\t</button>\n\t\t\t\t</li>\n\t\t\t\t<li>\n\t\t\t\t\t<button\n\t\t\t\t\t\tonClick={ openBlockSettings }\n\t\t\t\t\t\tclassName={ `edit-post-sidebar__panel-tab ${ blockActiveClass }` }\n\t\t\t\t\t\taria-label={ blockAriaLabel }\n\t\t\t\t\t\tdata-label={ blockLabel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ blockLabel }\n\t\t\t\t\t</button>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</SidebarHeader>\n\t);\n};\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\tcount: select( 'core/editor' ).getSelectedBlockCount(),\n\t} ) ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { openGeneralSidebar } = dispatch( 'core/edit-post' );\n\t\tconst { clearSelectedBlock } = dispatch( 'core/editor' );\n\t\treturn {\n\t\t\topenDocumentSettings() {\n\t\t\t\topenGeneralSidebar( 'edit-post/document' );\n\t\t\t\tclearSelectedBlock();\n\t\t\t},\n\t\t\topenBlockSettings() {\n\t\t\t\topenGeneralSidebar( 'edit-post/block' );\n\t\t\t},\n\t\t};\n\t} ),\n)( SettingsHeader );\n","/**\n * WordPress dependencies\n */\nimport { Panel, PanelBody } from '@wordpress/components';\nimport { compose, ifCondition } from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\nimport { BlockInspector } from '@wordpress/editor';\nimport { Fragment } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n/**\n * Internal Dependencies\n */\nimport Sidebar from '../';\nimport SettingsHeader from '../settings-header';\nimport PostStatus from '../post-status';\nimport LastRevision from '../last-revision';\nimport PostTaxonomies from '../post-taxonomies';\nimport FeaturedImage from '../featured-image';\nimport PostExcerpt from '../post-excerpt';\nimport DiscussionPanel from '../discussion-panel';\nimport PageAttributes from '../page-attributes';\nimport MetaBoxes from '../../meta-boxes';\n\nconst SettingsSidebar = ( { sidebarName } ) => (\n\t<Sidebar\n\t\tname={ sidebarName }\n\t\tlabel={ __( 'Editor settings' ) }\n\t>\n\t\t<SettingsHeader sidebarName={ sidebarName } />\n\t\t<Panel>\n\t\t\t{ sidebarName === 'edit-post/document' && (\n\t\t\t\t<Fragment>\n\t\t\t\t\t<PostStatus />\n\t\t\t\t\t<LastRevision />\n\t\t\t\t\t<PostTaxonomies />\n\t\t\t\t\t<FeaturedImage />\n\t\t\t\t\t<PostExcerpt />\n\t\t\t\t\t<DiscussionPanel />\n\t\t\t\t\t<PageAttributes />\n\t\t\t\t\t<MetaBoxes location=\"side\" />\n\t\t\t\t</Fragment>\n\t\t\t) }\n\t\t\t{ sidebarName === 'edit-post/block' && (\n\t\t\t\t<PanelBody className=\"edit-post-settings-sidebar__panel-block\">\n\t\t\t\t\t<BlockInspector />\n\t\t\t\t</PanelBody>\n\t\t\t) }\n\t\t</Panel>\n\t</Sidebar>\n);\n\nexport default compose(\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetActiveGeneralSidebarName,\n\t\t\tisEditorSidebarOpened,\n\t\t} = select( 'core/edit-post' );\n\n\t\treturn {\n\t\t\tisEditorSidebarOpened: isEditorSidebarOpened(),\n\t\t\tsidebarName: getActiveGeneralSidebarName(),\n\t\t};\n\t} ),\n\tifCondition( ( { isEditorSidebarOpened } ) => isEditorSidebarOpened ),\n)( SettingsSidebar );\n","/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Fragment } from '@wordpress/element';\nimport { compose } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { IconButton } from '@wordpress/components';\nimport { withDispatch, withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport shortcuts from '../../../keyboard-shortcuts';\n\nconst SidebarHeader = ( { children, className, closeLabel, closeSidebar, title } ) => {\n\treturn (\n\t\t<Fragment>\n\t\t\t<div className=\"components-panel__header edit-post-sidebar-header__small\">\n\t\t\t\t<span className=\"edit-post-sidebar-header__title\">\n\t\t\t\t\t{ title || __( '(no title)' ) }\n\t\t\t\t</span>\n\t\t\t\t<IconButton\n\t\t\t\t\tonClick={ closeSidebar }\n\t\t\t\t\ticon=\"no-alt\"\n\t\t\t\t\tlabel={ closeLabel }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div className={ classnames( 'components-panel__header edit-post-sidebar-header', className ) }>\n\t\t\t\t{ children }\n\t\t\t\t<IconButton\n\t\t\t\t\tonClick={ closeSidebar }\n\t\t\t\t\ticon=\"no-alt\"\n\t\t\t\t\tlabel={ closeLabel }\n\t\t\t\t\tshortcut={ shortcuts.toggleSidebar }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</Fragment>\n\t);\n};\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\ttitle: select( 'core/editor' ).getEditedPostAttribute( 'title' ),\n\t} ) ),\n\twithDispatch( ( dispatch ) => ( {\n\t\tcloseSidebar: dispatch( 'core/edit-post' ).closeGeneralSidebar,\n\t} ) ),\n)( SidebarHeader );\n","/**\n * WordPress dependencies\n */\nimport { PostTextEditor, PostTitle } from '@wordpress/editor';\nimport { IconButton } from '@wordpress/components';\nimport { withDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { displayShortcut } from '@wordpress/keycodes';\n\nfunction TextEditor( { onExit } ) {\n\treturn (\n\t\t<div className=\"edit-post-text-editor\">\n\t\t\t<div className=\"edit-post-text-editor__toolbar\">\n\t\t\t\t<h2>{ __( 'Editing Code' ) }</h2>\n\t\t\t\t<IconButton\n\t\t\t\t\tonClick={ onExit }\n\t\t\t\t\ticon=\"no-alt\"\n\t\t\t\t\tshortcut={ displayShortcut.secondary( 'm' ) }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Exit Code Editor' ) }\n\t\t\t\t</IconButton>\n\t\t\t</div>\n\t\t\t<div className=\"edit-post-text-editor__body\">\n\t\t\t\t<PostTitle />\n\t\t\t\t<PostTextEditor />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport default withDispatch( ( dispatch ) => {\n\treturn {\n\t\tonExit() {\n\t\t\tdispatch( 'core/edit-post' ).switchEditorMode( 'visual' );\n\t\t},\n\t};\n} )( TextEditor );\n","/**\n * External dependencies\n */\nimport { flow, noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem, withSpokenMessages } from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport shortcuts from '../../keyboard-shortcuts';\n\nexport function BlockInspectorButton( {\n\tareAdvancedSettingsOpened,\n\tcloseSidebar,\n\topenEditorSidebar,\n\tonClick = noop,\n\tsmall = false,\n\tspeak,\n} ) {\n\tconst speakMessage = () => {\n\t\tif ( areAdvancedSettingsOpened ) {\n\t\t\tspeak( __( 'Block settings closed' ) );\n\t\t} else {\n\t\t\tspeak( __( 'Additional settings are now available in the Editor block settings sidebar' ) );\n\t\t}\n\t};\n\n\tconst label = areAdvancedSettingsOpened ? __( 'Hide Block Settings' ) : __( 'Show Block Settings' );\n\n\treturn (\n\t\t<MenuItem\n\t\t\tclassName=\"editor-block-settings-menu__control\"\n\t\t\tonClick={ flow( areAdvancedSettingsOpened ? closeSidebar : openEditorSidebar, speakMessage, onClick ) }\n\t\t\ticon=\"admin-generic\"\n\t\t\tlabel={ small ? label : undefined }\n\t\t\tshortcut={ shortcuts.toggleSidebar }\n\t\t>\n\t\t\t{ ! small && label }\n\t\t</MenuItem>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\tareAdvancedSettingsOpened: select( 'core/edit-post' ).getActiveGeneralSidebarName() === 'edit-post/block',\n\t} ) ),\n\twithDispatch( ( dispatch ) => ( {\n\t\topenEditorSidebar: () => dispatch( 'core/edit-post' ).openGeneralSidebar( 'edit-post/block' ),\n\t\tcloseSidebar: dispatch( 'core/edit-post' ).closeGeneralSidebar,\n\t} ) ),\n\twithSpokenMessages,\n)( BlockInspectorButton );\n","/**\n * WordPress dependencies\n */\nimport {\n\tBlockList,\n\tCopyHandler,\n\tPostTitle,\n\tWritingFlow,\n\tObserveTyping,\n\tEditorGlobalKeyboardShortcuts,\n\tBlockSelectionClearer,\n\tMultiSelectScrollIntoView,\n\t_BlockSettingsMenuFirstItem,\n\t_BlockSettingsMenuPluginsExtension,\n} from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport PluginBlockSettingsMenuGroup from '../block-settings-menu/plugin-block-settings-menu-group';\n\nfunction VisualEditor() {\n\treturn (\n\t\t<BlockSelectionClearer className=\"edit-post-visual-editor editor-styles-wrapper\">\n\t\t\t<EditorGlobalKeyboardShortcuts />\n\t\t\t<CopyHandler />\n\t\t\t<MultiSelectScrollIntoView />\n\t\t\t<WritingFlow>\n\t\t\t\t<ObserveTyping>\n\t\t\t\t\t<PostTitle />\n\t\t\t\t\t<BlockList />\n\t\t\t\t</ObserveTyping>\n\t\t\t</WritingFlow>\n\t\t\t<_BlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => <BlockInspectorButton onClick={ onClose } /> }\n\t\t\t</_BlockSettingsMenuFirstItem>\n\t\t\t<_BlockSettingsMenuPluginsExtension>\n\t\t\t\t{ ( { clientIds, onClose } ) => <PluginBlockSettingsMenuGroup.Slot fillProps={ { clientIds, onClose } } /> }\n\t\t\t</_BlockSettingsMenuPluginsExtension>\n\t\t</BlockSelectionClearer>\n\t);\n}\n\nexport default VisualEditor;\n","/**\n * WordPress dependencies\n */\nimport { withSelect } from '@wordpress/data';\nimport { EditorProvider, ErrorBoundary, PostLockedModal } from '@wordpress/editor';\nimport { StrictMode } from '@wordpress/element';\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\n\nfunction Editor( {\n\tsettings,\n\thasFixedToolbar,\n\tfocusMode,\n\tpost,\n\toverridePost,\n\tonError,\n\t...props\n} ) {\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\tconst editorSettings = {\n\t\t...settings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t};\n\n\treturn (\n\t\t<StrictMode>\n\t\t\t<EditorProvider\n\t\t\t\tsettings={ editorSettings }\n\t\t\t\tpost={ { ...post, ...overridePost } }\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t<ErrorBoundary onError={ onError }>\n\t\t\t\t\t<Layout />\n\t\t\t\t</ErrorBoundary>\n\t\t\t\t<PostLockedModal />\n\t\t\t</EditorProvider>\n\t\t</StrictMode>\n\t);\n}\n\nexport default withSelect( ( select, { postId, postType } ) => ( {\n\thasFixedToolbar: select( 'core/edit-post' ).isFeatureActive( 'fixedToolbar' ),\n\tfocusMode: select( 'core/edit-post' ).isFeatureActive( 'focusMode' ),\n\tpost: select( 'core' ).getEntityRecord( 'postType', postType, postId ),\n} ) )( Editor );\n","/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport MediaUpload from './media-upload';\n\nconst replaceMediaUpload = () => MediaUpload;\n\naddFilter(\n\t'editor.MediaUpload',\n\t'core/edit-post/components/media-upload/replace-media-upload',\n\treplaceMediaUpload\n);\n","/**\n * External Dependencies\n */\nimport { castArray, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n// Getter for the sake of unit tests.\nconst getGalleryDetailsMediaFrame = () => {\n\t/**\n\t * Custom gallery details frame.\n\t *\n\t * @link https://github.com/xwp/wp-core-media-widgets/blob/905edbccfc2a623b73a93dac803c5335519d7837/wp-admin/js/widgets/media-gallery-widget.js\n\t * @class GalleryDetailsMediaFrame\n\t * @constructor\n\t */\n\treturn wp.media.view.MediaFrame.Post.extend( {\n\n\t\t/**\n\t\t * Create the default states.\n\t\t *\n\t\t * @return {void}\n\t\t */\n\t\tcreateStates: function createStates() {\n\t\t\tthis.states.add( [\n\t\t\t\tnew wp.media.controller.Library( {\n\t\t\t\t\tid: 'gallery',\n\t\t\t\t\ttitle: wp.media.view.l10n.createGalleryTitle,\n\t\t\t\t\tpriority: 40,\n\t\t\t\t\ttoolbar: 'main-gallery',\n\t\t\t\t\tfilterable: 'uploaded',\n\t\t\t\t\tmultiple: 'add',\n\t\t\t\t\teditable: false,\n\n\t\t\t\t\tlibrary: wp.media.query( _.defaults( {\n\t\t\t\t\t\ttype: 'image',\n\t\t\t\t\t}, this.options.library ) ),\n\t\t\t\t} ),\n\n\t\t\t\tnew wp.media.controller.GalleryEdit( {\n\t\t\t\t\tlibrary: this.options.selection,\n\t\t\t\t\tediting: this.options.editing,\n\t\t\t\t\tmenu: 'gallery',\n\t\t\t\t\tdisplaySettings: false,\n\t\t\t\t\tmultiple: true,\n\t\t\t\t} ),\n\n\t\t\t\tnew wp.media.controller.GalleryAdd(),\n\t\t\t] );\n\t\t},\n\t} );\n};\n\n// the media library image object contains numerous attributes\n// we only need this set to display the image in the library\nconst slimImageObject = ( img ) => {\n\tconst attrSet = [ 'sizes', 'mime', 'type', 'subtype', 'id', 'url', 'alt', 'link', 'caption' ];\n\treturn pick( img, attrSet );\n};\n\nconst getAttachmentsCollection = ( ids ) => {\n\treturn wp.media.query( {\n\t\torder: 'ASC',\n\t\torderby: 'post__in',\n\t\tpost__in: ids,\n\t\tper_page: 100,\n\t\tquery: true,\n\t\ttype: 'image',\n\t} );\n};\n\nclass MediaUpload extends Component {\n\tconstructor( {\n\t\tallowedTypes,\n\t\tmultiple = false,\n\t\tgallery = false,\n\t\ttitle = __( 'Select or Upload Media' ),\n\t\tmodalClass,\n\t\tvalue,\n\t} ) {\n\t\tsuper( ...arguments );\n\t\tthis.openModal = this.openModal.bind( this );\n\t\tthis.onOpen = this.onOpen.bind( this );\n\t\tthis.onSelect = this.onSelect.bind( this );\n\t\tthis.onUpdate = this.onUpdate.bind( this );\n\t\tthis.onClose = this.onClose.bind( this );\n\n\t\tif ( gallery ) {\n\t\t\tconst currentState = value ? 'gallery-edit' : 'gallery';\n\t\t\tconst GalleryDetailsMediaFrame = getGalleryDetailsMediaFrame();\n\t\t\tconst attachments = getAttachmentsCollection( value );\n\t\t\tconst selection = new wp.media.model.Selection( attachments.models, {\n\t\t\t\tprops: attachments.props.toJSON(),\n\t\t\t\tmultiple,\n\t\t\t} );\n\t\t\tthis.frame = new GalleryDetailsMediaFrame( {\n\t\t\t\tmimeType: allowedTypes,\n\t\t\t\tstate: currentState,\n\t\t\t\tmultiple,\n\t\t\t\tselection,\n\t\t\t\tediting: ( value ) ? true : false,\n\t\t\t} );\n\t\t\twp.media.frame = this.frame;\n\t\t} else {\n\t\t\tconst frameConfig = {\n\t\t\t\ttitle,\n\t\t\t\tbutton: {\n\t\t\t\t\ttext: __( 'Select' ),\n\t\t\t\t},\n\t\t\t\tmultiple,\n\t\t\t};\n\t\t\tif ( !! allowedTypes ) {\n\t\t\t\tframeConfig.library = { type: allowedTypes };\n\t\t\t}\n\n\t\t\tthis.frame = wp.media( frameConfig );\n\t\t}\n\n\t\tif ( modalClass ) {\n\t\t\tthis.frame.$el.addClass( modalClass );\n\t\t}\n\n\t\t// When an image is selected in the media frame...\n\t\tthis.frame.on( 'select', this.onSelect );\n\t\tthis.frame.on( 'update', this.onUpdate );\n\t\tthis.frame.on( 'open', this.onOpen );\n\t\tthis.frame.on( 'close', this.onClose );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.frame.remove();\n\t}\n\n\tonUpdate( selections ) {\n\t\tconst { onSelect, multiple = false } = this.props;\n\t\tconst state = this.frame.state();\n\t\tconst selectedImages = selections || state.get( 'selection' );\n\n\t\tif ( ! selectedImages || ! selectedImages.models.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( multiple ) {\n\t\t\tonSelect( selectedImages.models.map( ( model ) => slimImageObject( model.toJSON() ) ) );\n\t\t} else {\n\t\t\tonSelect( slimImageObject( ( selectedImages.models[ 0 ].toJSON() ) ) );\n\t\t}\n\t}\n\n\tonSelect() {\n\t\tconst { onSelect, multiple = false } = this.props;\n\t\t// Get media attachment details from the frame state\n\t\tconst attachment = this.frame.state().get( 'selection' ).toJSON();\n\t\tonSelect(\n\t\t\tmultiple ?\n\t\t\t\tattachment :\n\t\t\t\tattachment[ 0 ]\n\t\t);\n\t}\n\n\tonOpen() {\n\t\tif ( ! this.props.value ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( ! this.props.gallery ) {\n\t\t\tconst selection = this.frame.state().get( 'selection' );\n\t\t\tcastArray( this.props.value ).map( ( id ) => {\n\t\t\t\tselection.add( wp.media.attachment( id ) );\n\t\t\t} );\n\t\t}\n\t\t// load the images so they are available in the media modal.\n\t\tgetAttachmentsCollection( castArray( this.props.value ) ).more();\n\t}\n\n\tonClose() {\n\t\tconst { onClose } = this.props;\n\n\t\tif ( onClose ) {\n\t\t\tonClose();\n\t\t}\n\t}\n\n\topenModal() {\n\t\tthis.frame.open();\n\t}\n\n\trender() {\n\t\treturn this.props.render( { open: this.openModal } );\n\t}\n}\n\nexport default MediaUpload;\n\n","/**\n * Internal dependencies\n */\nimport './components';\nimport './validate-multiple-use';\n","/**\n * External dependencies\n */\nimport { find } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tcreateBlock,\n\tfindTransform,\n\tgetBlockTransforms,\n\tgetBlockType,\n\thasBlockSupport,\n} from '@wordpress/blocks';\nimport { Button } from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { Warning } from '@wordpress/editor';\nimport { addFilter } from '@wordpress/hooks';\nimport { __ } from '@wordpress/i18n';\nimport { compose, createHigherOrderComponent } from '@wordpress/compose';\n\nconst enhance = compose(\n\t/**\n\t * For blocks whose block type doesn't support `multiple`, provides the\n\t * wrapped component with `originalBlockClientId` -- a reference to the\n\t * first block of the same type in the content -- if and only if that\n\t * \"original\" block is not the current one. Thus, an inexisting\n\t * `originalBlockClientId` prop signals that the block is valid.\n\t *\n\t * @param {Component} WrappedBlockEdit A filtered BlockEdit instance.\n\t *\n\t * @return {Component} Enhanced component with merged state data props.\n\t */\n\twithSelect( ( select, block ) => {\n\t\tconst blocks = select( 'core/editor' ).getBlocks();\n\t\tconst multiple = hasBlockSupport( block.name, 'multiple', true );\n\n\t\t// For block types with `multiple` support, there is no \"original\n\t\t// block\" to be found in the content, as the block itself is valid.\n\t\tif ( multiple ) {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Otherwise, only pass `originalBlockClientId` if it refers to a different\n\t\t// block from the current one.\n\t\tconst firstOfSameType = find( blocks, ( { name } ) => block.name === name );\n\t\tconst isInvalid = firstOfSameType && firstOfSameType.clientId !== block.clientId;\n\t\treturn {\n\t\t\toriginalBlockClientId: isInvalid && firstOfSameType.clientId,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { originalBlockClientId } ) => ( {\n\t\tselectFirst: () => dispatch( 'core/editor' ).selectBlock( originalBlockClientId ),\n\t} ) ),\n);\n\nconst withMultipleValidation = createHigherOrderComponent( ( BlockEdit ) => {\n\treturn enhance( ( {\n\t\toriginalBlockClientId,\n\t\tselectFirst,\n\t\t...props\n\t} ) => {\n\t\tif ( ! originalBlockClientId ) {\n\t\t\treturn <BlockEdit { ...props } />;\n\t\t}\n\n\t\tconst blockType = getBlockType( props.name );\n\t\tconst outboundType = getOutboundType( props.name );\n\n\t\treturn [\n\t\t\t<div key=\"invalid-preview\" style={ { minHeight: '60px' } }>\n\t\t\t\t<BlockEdit key=\"block-edit\" { ...props } />\n\t\t\t</div>,\n\t\t\t<Warning\n\t\t\t\tkey=\"multiple-use-warning\"\n\t\t\t\tactions={ [\n\t\t\t\t\t<Button key=\"find-original\" isLarge onClick={ selectFirst }>\n\t\t\t\t\t\t{ __( 'Find original' ) }\n\t\t\t\t\t</Button>,\n\t\t\t\t\t<Button key=\"remove\" isLarge onClick={ () => props.onReplace( [] ) }>\n\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t</Button>,\n\t\t\t\t\toutboundType && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey=\"transform\"\n\t\t\t\t\t\t\tisLarge\n\t\t\t\t\t\t\tonClick={ () => props.onReplace(\n\t\t\t\t\t\t\t\tcreateBlock( outboundType.name, props.attributes )\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Transform into:' ) }{ ' ' }\n\t\t\t\t\t\t\t{ outboundType.title }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t),\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t<strong>{ blockType.title }: </strong>\n\t\t\t\t{ __( 'This block can only be used once.' ) }\n\t\t\t</Warning>,\n\t\t];\n\t} );\n}, 'withMultipleValidation' );\n\n/**\n * Given a base block name, returns the default block type to which to offer\n * transforms.\n *\n * @param {string} blockName Base block name.\n *\n * @return {?Object} The chosen default block type.\n */\nfunction getOutboundType( blockName ) {\n\t// Grab the first outbound transform\n\tconst transform = findTransform(\n\t\tgetBlockTransforms( 'to', blockName ),\n\t\t( { type, blocks } ) => type === 'block' && blocks.length === 1 // What about when .length > 1?\n\t);\n\n\tif ( ! transform ) {\n\t\treturn null;\n\t}\n\n\treturn getBlockType( transform.blocks[ 0 ] );\n}\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/edit-post/validate-multiple-use/with-multiple-validation',\n\twithMultipleValidation\n);\n","/**\n * WordPress dependencies\n */\nimport '@wordpress/core-data';\nimport '@wordpress/editor';\nimport '@wordpress/nux';\nimport '@wordpress/viewport';\nimport { registerCoreBlocks } from '@wordpress/block-library';\nimport { render, unmountComponentAtNode } from '@wordpress/element';\nimport { dispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport './hooks';\nimport './plugins';\nimport './store';\nimport Editor from './editor';\n\n/**\n * Reinitializes the editor after the user chooses to reboot the editor after\n * an unhandled error occurs, replacing previously mounted editor element using\n * an initial state from prior to the crash.\n *\n * @param {Object} postType Post type of the post to edit.\n * @param {Object} postId ID of the post to edit.\n * @param {Element} target DOM node in which editor is rendered.\n * @param {?Object} settings Editor settings object.\n * @param {Object} overridePost Post properties to override.\n */\nexport function reinitializeEditor( postType, postId, target, settings, overridePost ) {\n\tunmountComponentAtNode( target );\n\tconst reboot = reinitializeEditor.bind( null, postType, postId, target, settings, overridePost );\n\n\trender(\n\t\t<Editor settings={ settings } onError={ reboot } postId={ postId } postType={ postType } overridePost={ overridePost } recovery />,\n\t\ttarget\n\t);\n}\n\n/**\n * Initializes and returns an instance of Editor.\n *\n * The return value of this function is not necessary if we change where we\n * call initializeEditor(). This is due to metaBox timing.\n *\n * @param {string} id Unique identifier for editor instance.\n * @param {Object} postType Post type of the post to edit.\n * @param {Object} postId ID of the post to edit.\n * @param {?Object} settings Editor settings object.\n * @param {Object} overridePost Post properties to override.\n */\nexport function initializeEditor( id, postType, postId, settings, overridePost ) {\n\tconst target = document.getElementById( id );\n\tconst reboot = reinitializeEditor.bind( null, postType, postId, target, settings, overridePost );\n\n\tregisterCoreBlocks();\n\n\tdispatch( 'core/nux' ).triggerGuide( [\n\t\t'core/editor.inserter',\n\t\t'core/editor.settings',\n\t\t'core/editor.preview',\n\t\t'core/editor.publish',\n\t] );\n\n\trender(\n\t\t<Editor settings={ settings } onError={ reboot } postId={ postId } postType={ postType } overridePost={ overridePost } />,\n\t\ttarget\n\t);\n}\n\nexport { default as PluginBlockSettingsMenuItem } from './components/block-settings-menu/plugin-block-settings-menu-item';\nexport { default as PluginPostPublishPanel } from './components/sidebar/plugin-post-publish-panel';\nexport { default as PluginPostStatusInfo } from './components/sidebar/plugin-post-status-info';\nexport { default as PluginPrePublishPanel } from './components/sidebar/plugin-pre-publish-panel';\nexport { default as PluginSidebar } from './components/sidebar/plugin-sidebar';\nexport { default as PluginSidebarMoreMenuItem } from './components/header/plugin-sidebar-more-menu-item';\n","/**\n * WordPress dependencies\n */\nimport { rawShortcut, displayShortcut, shortcutAriaLabel } from '@wordpress/keycodes';\n\nexport default {\n\ttoggleEditorMode: {\n\t\traw: rawShortcut.secondary( 'm' ),\n\t\tdisplay: displayShortcut.secondary( 'm' ),\n\t},\n\ttoggleSidebar: {\n\t\traw: rawShortcut.primaryShift( ',' ),\n\t\tdisplay: displayShortcut.primaryShift( ',' ),\n\t\tariaLabel: shortcutAriaLabel.primaryShift( ',' ),\n\t},\n};\n","/**\n * WordPress dependencies\n */\nimport { ClipboardButton } from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { withState, compose } from '@wordpress/compose';\n\nfunction CopyContentMenuItem( { editedPostContent, hasCopied, setState } ) {\n\treturn (\n\t\t<ClipboardButton\n\t\t\ttext={ editedPostContent }\n\t\t\tclassName=\"components-menu-item__button\"\n\t\t\tonCopy={ () => setState( { hasCopied: true } ) }\n\t\t\tonFinishCopy={ () => setState( { hasCopied: false } ) }\n\t\t>\n\t\t\t{ hasCopied ?\n\t\t\t\t__( 'Copied!' ) :\n\t\t\t\t__( 'Copy All Content' ) }\n\t\t</ClipboardButton>\n\t);\n}\n\nexport default compose(\n\twithSelect( ( select ) => ( {\n\t\teditedPostContent: select( 'core/editor' ).getEditedPostAttribute( 'content' ),\n\t} ) ),\n\twithState( { hasCopied: false } )\n)( CopyContentMenuItem );\n","/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { Fragment } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { registerPlugin } from '@wordpress/plugins';\n\n/**\n * Internal dependencies\n */\nimport CopyContentMenuItem from './copy-content-menu-item';\nimport KeyboardShortcutsHelpMenuItem from './keyboard-shortcuts-help-menu-item';\nimport ToolsMoreMenuGroup from '../components/header/tools-more-menu-group';\n\nregisterPlugin( 'edit-post', {\n\trender() {\n\t\treturn (\n\t\t\t<Fragment>\n\t\t\t\t<ToolsMoreMenuGroup>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<Fragment>\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\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Manage All Reusable Blocks' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t<KeyboardShortcutsHelpMenuItem onSelect={ onClose } />\n\t\t\t\t\t\t\t<CopyContentMenuItem />\n\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsMoreMenuGroup>\n\t\t\t</Fragment>\n\t\t);\n\t},\n} );\n","/**\n * WordPress Dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { withDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { displayShortcut } from '@wordpress/keycodes';\n\nexport function KeyboardShortcutsHelpMenuItem( { openModal, onSelect } ) {\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () => {\n\t\t\t\tonSelect();\n\t\t\t\topenModal( 'edit-post/keyboard-shortcut-help' );\n\t\t\t} }\n\t\t\tshortcut={ displayShortcut.access( 'h' ) }\n\t\t>\n\t\t\t{ __( 'Keyboard Shortcuts' ) }\n\t\t</MenuItem>\n\t);\n}\n\nexport default withDispatch( ( dispatch, ) => {\n\tconst {\n\t\topenModal,\n\t} = dispatch( 'core/edit-post' );\n\n\treturn {\n\t\topenModal,\n\t};\n} )( KeyboardShortcutsHelpMenuItem );\n","/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Returns an action object used in signalling that the user opened an editor sidebar.\n *\n * @param {string} name Sidebar name to be opened.\n *\n * @return {Object} Action object.\n */\nexport function openGeneralSidebar( name ) {\n\treturn {\n\t\ttype: 'OPEN_GENERAL_SIDEBAR',\n\t\tname,\n\t};\n}\n\n/**\n * Returns an action object signalling that the user closed the sidebar.\n *\n * @return {Object} Action object.\n */\nexport function closeGeneralSidebar() {\n\treturn {\n\t\ttype: 'CLOSE_GENERAL_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user opened a modal.\n *\n * @param {string} name A string that uniquely identifies the modal.\n *\n * @return {Object} Action object.\n */\nexport function openModal( name ) {\n\treturn {\n\t\ttype: 'OPEN_MODAL',\n\t\tname,\n\t};\n}\n\n/**\n * Returns an action object signalling that the user closed a modal.\n *\n * @return {Object} Action object.\n */\nexport function closeModal() {\n\treturn {\n\t\ttype: 'CLOSE_MODAL',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user opened the publish\n * sidebar.\n *\n * @return {Object} Action object\n */\nexport function openPublishSidebar() {\n\treturn {\n\t\ttype: 'OPEN_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user closed the\n * publish sidebar.\n *\n * @return {Object} Action object.\n */\nexport function closePublishSidebar() {\n\treturn {\n\t\ttype: 'CLOSE_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user toggles the publish sidebar.\n *\n * @return {Object} Action object\n */\nexport function togglePublishSidebar() {\n\treturn {\n\t\ttype: 'TOGGLE_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used to enable or disable a panel in the editor.\n *\n * @param {string} panelName A string that identifies the panel to enable or disable.\n *\n * @return {Object} Action object.\n */\nexport function toggleEditorPanelEnabled( panelName ) {\n\treturn {\n\t\ttype: 'TOGGLE_PANEL_ENABLED',\n\t\tpanelName,\n\t};\n}\n\n/**\n * Returns an action object used to open or close a panel in the editor.\n *\n * @param {string} panelName A string that identifies the panel to open or close.\n *\n * @return {Object} Action object.\n*/\nexport function toggleEditorPanelOpened( panelName ) {\n\treturn {\n\t\ttype: 'TOGGLE_PANEL_OPENED',\n\t\tpanelName,\n\t};\n}\n\n/**\n * Returns an action object used to open or close a panel in the editor.\n *\n * @param {string} panelName A string that identifies the panel to open or close.\n *\n * @return {Object} Action object.\n*/\nexport function toggleGeneralSidebarEditorPanel( panelName ) {\n\tdeprecated( 'toggleGeneralSidebarEditorPanel', {\n\t\talternative: 'toggleEditorPanelOpened',\n\t\tplugin: 'Gutenberg',\n\t\tversion: '4.3.0',\n\t} );\n\treturn toggleEditorPanelOpened( panelName );\n}\n\n/**\n * Returns an action object used to toggle a feature flag.\n *\n * @param {string} feature Feature name.\n *\n * @return {Object} Action object.\n */\nexport function toggleFeature( feature ) {\n\treturn {\n\t\ttype: 'TOGGLE_FEATURE',\n\t\tfeature,\n\t};\n}\n\nexport function switchEditorMode( mode ) {\n\treturn {\n\t\ttype: 'SWITCH_MODE',\n\t\tmode,\n\t};\n}\n\n/**\n * Returns an action object used to toggle a plugin name flag.\n *\n * @param {string} pluginName Plugin name.\n *\n * @return {Object} Action object.\n */\nexport function togglePinnedPluginItem( pluginName ) {\n\treturn {\n\t\ttype: 'TOGGLE_PINNED_PLUGIN_ITEM',\n\t\tpluginName,\n\t};\n}\n\n/**\n * Returns an action object used in signaling\n * what Meta boxes are available in which location.\n *\n * @param {Object} metaBoxesPerLocation Meta boxes per location.\n *\n * @return {Object} Action object.\n */\nexport function setAvailableMetaBoxesPerLocation( metaBoxesPerLocation ) {\n\treturn {\n\t\ttype: 'SET_META_BOXES_PER_LOCATIONS',\n\t\tmetaBoxesPerLocation,\n\t};\n}\n\n/**\n * Returns an action object used to request meta box update.\n *\n * @return {Object} Action object.\n */\nexport function requestMetaBoxUpdates() {\n\treturn {\n\t\ttype: 'REQUEST_META_BOX_UPDATES',\n\t};\n}\n\n/**\n * Returns an action object used signal a successful meta box update.\n *\n * @return {Object} Action object.\n */\nexport function metaBoxUpdatesSuccess() {\n\treturn {\n\t\ttype: 'META_BOX_UPDATES_SUCCESS',\n\t};\n}\n\n","export const PREFERENCES_DEFAULTS = {\n\teditorMode: 'visual',\n\tisGeneralSidebarDismissed: false,\n\tpanels: {\n\t\t'post-status': {\n\t\t\topened: true,\n\t\t},\n\t},\n\tfeatures: {\n\t\tfixedToolbar: false,\n\t},\n\tpinnedPluginItems: {},\n};\n","/**\n * External dependencies\n */\nimport { reduce } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { select, subscribe, dispatch } from '@wordpress/data';\nimport { speak } from '@wordpress/a11y';\nimport { __ } from '@wordpress/i18n';\nimport apiFetch from '@wordpress/api-fetch';\n\n/**\n * Internal dependencies\n */\nimport {\n\tmetaBoxUpdatesSuccess,\n\trequestMetaBoxUpdates,\n\topenGeneralSidebar,\n\tcloseGeneralSidebar,\n} from './actions';\nimport {\n\tgetActiveMetaBoxLocations,\n\tgetActiveGeneralSidebarName,\n} from './selectors';\nimport { getMetaBoxContainer } from '../utils/meta-boxes';\nimport { onChangeListener } from './utils';\n\nconst effects = {\n\tSET_META_BOXES_PER_LOCATIONS( action, store ) {\n\t\t// Allow toggling metaboxes panels\n\t\t// We need to wait for all scripts to load\n\t\t// If the meta box loads the post script, it will already trigger this.\n\t\t// After merge in Core, make sure to drop the timeout and update the postboxes script\n\t\t// to avoid the double binding.\n\t\tsetTimeout( () => {\n\t\t\tconst postType = select( 'core/editor' ).getCurrentPostType();\n\t\t\tif ( window.postboxes.page !== postType ) {\n\t\t\t\twindow.postboxes.add_postbox_toggles( postType );\n\t\t\t}\n\t\t} );\n\n\t\tlet wasSavingPost = select( 'core/editor' ).isSavingPost();\n\t\tlet wasAutosavingPost = select( 'core/editor' ).isAutosavingPost();\n\t\t// Save metaboxes when performing a full save on the post.\n\t\tsubscribe( () => {\n\t\t\tconst isSavingPost = select( 'core/editor' ).isSavingPost();\n\t\t\tconst isAutosavingPost = select( 'core/editor' ).isAutosavingPost();\n\t\t\tconst hasActiveMetaBoxes = select( 'core/edit-post' ).hasMetaBoxes();\n\n\t\t\t// Save metaboxes on save completion when past save wasn't an autosave.\n\t\t\tconst shouldTriggerMetaboxesSave = (\n\t\t\t\thasActiveMetaBoxes &&\n\t\t\t\twasSavingPost &&\n\t\t\t\t! wasAutosavingPost &&\n\t\t\t\t! isSavingPost &&\n\t\t\t\t! isAutosavingPost\n\t\t\t);\n\n\t\t\t// Save current state for next inspection.\n\t\t\twasSavingPost = isSavingPost;\n\t\t\twasAutosavingPost = isAutosavingPost;\n\n\t\t\tif ( shouldTriggerMetaboxesSave ) {\n\t\t\t\tstore.dispatch( requestMetaBoxUpdates() );\n\t\t\t}\n\t\t} );\n\t},\n\tREQUEST_META_BOX_UPDATES( action, store ) {\n\t\tconst state = store.getState();\n\n\t\t// Additional data needed for backwards compatibility.\n\t\t// If we do not provide this data, the post will be overridden with the default values.\n\t\tconst post = select( 'core/editor' ).getCurrentPost( state );\n\t\tconst additionalData = [\n\t\t\tpost.comment_status ? [ 'comment_status', post.comment_status ] : false,\n\t\t\tpost.ping_status ? [ 'ping_status', post.ping_status ] : false,\n\t\t\tpost.sticky ? [ 'sticky', post.sticky ] : false,\n\t\t\t[ 'post_author', post.author ],\n\t\t].filter( Boolean );\n\n\t\t// We gather all the metaboxes locations data and the base form data\n\t\tconst baseFormData = new window.FormData( document.querySelector( '.metabox-base-form' ) );\n\t\tconst formDataToMerge = [\n\t\t\tbaseFormData,\n\t\t\t...getActiveMetaBoxLocations( state ).map( ( location ) => (\n\t\t\t\tnew window.FormData( getMetaBoxContainer( location ) )\n\t\t\t) ),\n\t\t];\n\n\t\t// Merge all form data objects into a single one.\n\t\tconst formData = reduce( formDataToMerge, ( memo, currentFormData ) => {\n\t\t\tfor ( const [ key, value ] of currentFormData ) {\n\t\t\t\tmemo.append( key, value );\n\t\t\t}\n\t\t\treturn memo;\n\t\t}, new window.FormData() );\n\t\tadditionalData.forEach( ( [ key, value ] ) => formData.append( key, value ) );\n\n\t\t// Save the metaboxes\n\t\tapiFetch( {\n\t\t\turl: window._wpMetaBoxUrl,\n\t\t\tmethod: 'POST',\n\t\t\tbody: formData,\n\t\t\tparse: false,\n\t\t} )\n\t\t\t.then( () => store.dispatch( metaBoxUpdatesSuccess() ) );\n\t},\n\tSWITCH_MODE( action ) {\n\t\t// Unselect blocks when we switch to the code editor.\n\t\tif ( action.mode !== 'visual' ) {\n\t\t\tdispatch( 'core/editor' ).clearSelectedBlock();\n\t\t}\n\n\t\tconst message = action.mode === 'visual' ? __( 'Visual editor selected' ) : __( 'Code editor selected' );\n\t\tspeak( message, 'assertive' );\n\t},\n\tINIT( _, store ) {\n\t\t// Select the block settings tab when the selected block changes\n\t\tsubscribe( onChangeListener(\n\t\t\t() => !! select( 'core/editor' ).getBlockSelectionStart(),\n\t\t\t( hasBlockSelection ) => {\n\t\t\t\tif ( ! select( 'core/edit-post' ).isEditorSidebarOpened() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif ( hasBlockSelection ) {\n\t\t\t\t\tstore.dispatch( openGeneralSidebar( 'edit-post/block' ) );\n\t\t\t\t} else {\n\t\t\t\t\tstore.dispatch( openGeneralSidebar( 'edit-post/document' ) );\n\t\t\t\t}\n\t\t\t} )\n\t\t);\n\n\t\tconst isMobileViewPort = () => select( 'core/viewport' ).isViewportMatch( '< medium' );\n\t\tconst adjustSidebar = ( () => {\n\t\t\t// contains the sidebar we close when going to viewport sizes lower than medium.\n\t\t\t// This allows to reopen it when going again to viewport sizes greater than medium.\n\t\t\tlet sidebarToReOpenOnExpand = null;\n\t\t\treturn ( isSmall ) => {\n\t\t\t\tif ( isSmall ) {\n\t\t\t\t\tsidebarToReOpenOnExpand = getActiveGeneralSidebarName( store.getState() );\n\t\t\t\t\tif ( sidebarToReOpenOnExpand ) {\n\t\t\t\t\t\tstore.dispatch( closeGeneralSidebar() );\n\t\t\t\t\t}\n\t\t\t\t} else if ( sidebarToReOpenOnExpand && ! getActiveGeneralSidebarName( store.getState() ) ) {\n\t\t\t\t\tstore.dispatch( openGeneralSidebar( sidebarToReOpenOnExpand ) );\n\t\t\t\t}\n\t\t\t};\n\t\t} )();\n\n\t\tadjustSidebar( isMobileViewPort() );\n\n\t\t// Collapse sidebar when viewport shrinks.\n\t\t// Reopen sidebar it if viewport expands and it was closed because of a previous shrink.\n\t\tsubscribe( onChangeListener( isMobileViewPort, adjustSidebar ) );\n\t},\n\n};\n\nexport default effects;\n","/**\n * WordPress Dependencies\n */\nimport { registerStore } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport reducer from './reducer';\nimport applyMiddlewares from './middlewares';\nimport * as actions from './actions';\nimport * as selectors from './selectors';\n\nconst store = registerStore( 'core/edit-post', {\n\treducer,\n\tactions,\n\tselectors,\n\tpersist: [ 'preferences' ],\n} );\n\napplyMiddlewares( store );\nstore.dispatch( { type: 'INIT' } );\n\nexport default store;\n","/**\n * External dependencies\n */\nimport { flowRight } from 'lodash';\nimport refx from 'refx';\n\n/**\n * Internal dependencies\n */\nimport effects from './effects';\n\n/**\n * Applies the custom middlewares used specifically in the editor module.\n *\n * @param {Object} store Store Object.\n *\n * @return {Object} Update Store Object.\n */\nfunction applyMiddlewares( store ) {\n\tconst middlewares = [\n\t\trefx( effects ),\n\t];\n\n\tlet enhancedDispatch = () => {\n\t\tthrow new Error(\n\t\t\t'Dispatching while constructing your middleware is not allowed. ' +\n\t\t\t'Other middleware would not be applied to this dispatch.'\n\t\t);\n\t};\n\tlet chain = [];\n\n\tconst middlewareAPI = {\n\t\tgetState: store.getState,\n\t\tdispatch: ( ...args ) => enhancedDispatch( ...args ),\n\t};\n\tchain = middlewares.map( ( middleware ) => middleware( middlewareAPI ) );\n\tenhancedDispatch = flowRight( ...chain )( store.dispatch );\n\n\tstore.dispatch = enhancedDispatch;\n\treturn store;\n}\n\nexport default applyMiddlewares;\n","/**\n * External dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { combineReducers } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { PREFERENCES_DEFAULTS } from './defaults';\n\n/**\n * The default active general sidebar: The \"Document\" tab.\n *\n * @type {string}\n */\nexport const DEFAULT_ACTIVE_GENERAL_SIDEBAR = 'edit-post/document';\n\n/**\n * Reducer returning the user preferences.\n *\n * @param {Object} state Current state.\n * @param {string} state.mode Current editor mode, either\n * \"visual\" or \"text\".\n * @param {boolean} state.isGeneralSidebarDismissed Whether general sidebar is\n * dismissed. False by default\n * or when closing general\n * sidebar, true when opening\n * sidebar.\n * @param {boolean} state.isSidebarOpened Whether the sidebar is\n * opened or closed.\n * @param {Object} state.panels The state of the different\n * sidebar panels.\n * @param {Object} action Dispatched action.\n *\n * @return {Object} Updated state.\n */\nexport const preferences = combineReducers( {\n\tisGeneralSidebarDismissed( state = false, action ) {\n\t\tswitch ( action.type ) {\n\t\t\tcase 'OPEN_GENERAL_SIDEBAR':\n\t\t\tcase 'CLOSE_GENERAL_SIDEBAR':\n\t\t\t\treturn action.type === 'CLOSE_GENERAL_SIDEBAR';\n\t\t}\n\n\t\treturn state;\n\t},\n\tpanels( state = PREFERENCES_DEFAULTS.panels, action ) {\n\t\tswitch ( action.type ) {\n\t\t\tcase 'TOGGLE_PANEL_ENABLED': {\n\t\t\t\tconst { panelName } = action;\n\t\t\t\treturn {\n\t\t\t\t\t...state,\n\t\t\t\t\t[ panelName ]: {\n\t\t\t\t\t\t...state[ panelName ],\n\t\t\t\t\t\tenabled: ! get( state, [ panelName, 'enabled' ], true ),\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tcase 'TOGGLE_PANEL_OPENED': {\n\t\t\t\tconst { panelName } = action;\n\t\t\t\tconst isOpen = state[ panelName ] === true || get( state, [ panelName, 'opened' ], false );\n\t\t\t\treturn {\n\t\t\t\t\t...state,\n\t\t\t\t\t[ panelName ]: {\n\t\t\t\t\t\t...state[ panelName ],\n\t\t\t\t\t\topened: ! isOpen,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\treturn state;\n\t},\n\tfeatures( state = PREFERENCES_DEFAULTS.features, action ) {\n\t\tif ( action.type === 'TOGGLE_FEATURE' ) {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\t[ action.feature ]: ! state[ action.feature ],\n\t\t\t};\n\t\t}\n\n\t\treturn state;\n\t},\n\teditorMode( state = PREFERENCES_DEFAULTS.editorMode, action ) {\n\t\tif ( action.type === 'SWITCH_MODE' ) {\n\t\t\treturn action.mode;\n\t\t}\n\n\t\treturn state;\n\t},\n\tpinnedPluginItems( state = PREFERENCES_DEFAULTS.pinnedPluginItems, action ) {\n\t\tif ( action.type === 'TOGGLE_PINNED_PLUGIN_ITEM' ) {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\t[ action.pluginName ]: ! get( state, [ action.pluginName ], true ),\n\t\t\t};\n\t\t}\n\t\treturn state;\n\t},\n} );\n\n/**\n * Reducer returning the next active general sidebar state. The active general\n * sidebar is a unique name to identify either an editor or plugin sidebar.\n *\n * @param {?string} state Current state.\n * @param {Object} action Action object.\n *\n * @return {?string} Updated state.\n */\nexport function activeGeneralSidebar( state = DEFAULT_ACTIVE_GENERAL_SIDEBAR, action ) {\n\tswitch ( action.type ) {\n\t\tcase 'OPEN_GENERAL_SIDEBAR':\n\t\t\treturn action.name;\n\t}\n\n\treturn state;\n}\n\nexport function panel( state = 'document', action ) {\n\tswitch ( action.type ) {\n\t\tcase 'SET_ACTIVE_PANEL':\n\t\t\treturn action.panel;\n\t}\n\n\treturn state;\n}\n\n/**\n * Reducer for storing the name of the open modal, or null if no modal is open.\n *\n * @param {Object} state Previous state.\n * @param {Object} action Action object containing the `name` of the modal\n *\n * @return {Object} Updated state\n */\nexport function activeModal( state = null, action ) {\n\tswitch ( action.type ) {\n\t\tcase 'OPEN_MODAL':\n\t\t\treturn action.name;\n\t\tcase 'CLOSE_MODAL':\n\t\t\treturn null;\n\t}\n\n\treturn state;\n}\n\nexport function publishSidebarActive( state = false, action ) {\n\tswitch ( action.type ) {\n\t\tcase 'OPEN_PUBLISH_SIDEBAR':\n\t\t\treturn true;\n\t\tcase 'CLOSE_PUBLISH_SIDEBAR':\n\t\t\treturn false;\n\t\tcase 'TOGGLE_PUBLISH_SIDEBAR':\n\t\t\treturn ! state;\n\t}\n\treturn state;\n}\n\n/**\n * Reducer keeping track of the meta boxes isSaving state.\n * A \"true\" value means the meta boxes saving request is in-flight.\n *\n *\n * @param {boolean} state Previous state.\n * @param {Object} action Action Object.\n *\n * @return {Object} Updated state.\n */\nexport function isSavingMetaBoxes( state = false, action ) {\n\tswitch ( action.type ) {\n\t\tcase 'REQUEST_META_BOX_UPDATES':\n\t\t\treturn true;\n\t\tcase 'META_BOX_UPDATES_SUCCESS':\n\t\t\treturn false;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n}\n\n/**\n * Reducer keeping track of the meta boxes per location.\n *\n * @param {boolean} state Previous state.\n * @param {Object} action Action Object.\n *\n * @return {Object} Updated state.\n */\nexport function metaBoxLocations( state = {}, action ) {\n\tswitch ( action.type ) {\n\t\tcase 'SET_META_BOXES_PER_LOCATIONS':\n\t\t\treturn action.metaBoxesPerLocation;\n\t}\n\n\treturn state;\n}\n\nconst metaBoxes = combineReducers( {\n\tisSaving: isSavingMetaBoxes,\n\tlocations: metaBoxLocations,\n} );\n\nexport default combineReducers( {\n\tpreferences,\n\tactiveGeneralSidebar,\n\tpanel,\n\tactiveModal,\n\tpublishSidebarActive,\n\tmetaBoxes,\n} );\n","/**\n * External dependencies\n */\nimport createSelector from 'rememo';\nimport { get, includes, some, flatten, values } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Returns the current editing mode.\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Editing mode.\n */\nexport function getEditorMode( state ) {\n\treturn getPreference( state, 'editorMode', 'visual' );\n}\n\n/**\n * Returns true if the editor sidebar is opened.\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether the editor sidebar is opened.\n */\nexport function isEditorSidebarOpened( state ) {\n\tconst activeGeneralSidebar = getActiveGeneralSidebarName( state );\n\n\treturn includes( [ 'edit-post/document', 'edit-post/block' ], activeGeneralSidebar );\n}\n\n/**\n * Returns true if the plugin sidebar is opened.\n *\n * @param {Object} state Global application state\n * @return {boolean} Whether the plugin sidebar is opened.\n */\nexport function isPluginSidebarOpened( state ) {\n\tconst activeGeneralSidebar = getActiveGeneralSidebarName( state );\n\treturn !! activeGeneralSidebar && ! isEditorSidebarOpened( state );\n}\n\n/**\n * Returns the current active general sidebar name, or null if there is no\n * general sidebar active. The active general sidebar is a unique name to\n * identify either an editor or plugin sidebar.\n *\n * Examples:\n *\n * - `edit-post/document`\n * - `my-plugin/insert-image-sidebar`\n *\n * @param {Object} state Global application state.\n *\n * @return {?string} Active general sidebar name.\n */\nexport function getActiveGeneralSidebarName( state ) {\n\t// Dismissal takes precedent.\n\tconst isDismissed = getPreference( state, 'isGeneralSidebarDismissed', false );\n\tif ( isDismissed ) {\n\t\treturn null;\n\t}\n\n\treturn state.activeGeneralSidebar;\n}\n\n/**\n * Returns the preferences (these preferences are persisted locally).\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} Preferences Object.\n */\nexport function getPreferences( state ) {\n\treturn state.preferences;\n}\n\n/**\n *\n * @param {Object} state Global application state.\n * @param {string} preferenceKey Preference Key.\n * @param {Mixed} defaultValue Default Value.\n *\n * @return {Mixed} Preference Value.\n */\nexport function getPreference( state, preferenceKey, defaultValue ) {\n\tconst preferences = getPreferences( state );\n\tconst value = preferences[ preferenceKey ];\n\treturn value === undefined ? defaultValue : value;\n}\n\n/**\n * Returns true if the publish sidebar is opened.\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether the publish sidebar is open.\n */\nexport function isPublishSidebarOpened( state ) {\n\treturn state.publishSidebarActive;\n}\n\n/**\n * Returns true if the given panel is enabled, or false otherwise. Panels are\n * enabled by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is enabled.\n */\nexport function isEditorPanelEnabled( state, panelName ) {\n\tconst panels = getPreference( state, 'panels' );\n\treturn get( panels, [ panelName, 'enabled' ], true );\n}\n\n/**\n * Returns true if the given panel is enabled, or false otherwise. Panels are\n * enabled by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panel A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is enabled.\n */\nexport function isEditorSidebarPanelOpened( state, panel ) {\n\tdeprecated( 'isEditorSidebarPanelOpened', {\n\t\talternative: 'isEditorPanelEnabled',\n\t\tplugin: 'Gutenberg',\n\t\tversion: '4.3',\n\t} );\n\treturn isEditorPanelEnabled( state, panel );\n}\n\n/**\n * Returns true if the given panel is open, or false otherwise. Panels are\n * closed by default.\n *\n * @param {Object} state Global application state.\n * @param {string} panelName A string that identifies the panel.\n *\n * @return {boolean} Whether or not the panel is open.\n */\nexport function isEditorPanelOpened( state, panelName ) {\n\tconst panels = getPreference( state, 'panels' );\n\treturn panels[ panelName ] === true || get( panels, [ panelName, 'opened' ], false );\n}\n\n/**\n * Returns true if a modal is active, or false otherwise.\n *\n * @param {Object} state \t Global application state.\n * @param {string} modalName A string that uniquely identifies the modal.\n *\n * @return {boolean} Whether the modal is active.\n */\nexport function isModalActive( state, modalName ) {\n\treturn state.activeModal === modalName;\n}\n\n/**\n * Returns whether the given feature is enabled or not.\n *\n * @param {Object} state Global application state.\n * @param {string} feature Feature slug.\n *\n * @return {boolean} Is active.\n */\nexport function isFeatureActive( state, feature ) {\n\treturn !! state.preferences.features[ feature ];\n}\n\n/**\n * Returns true if the plugin item is pinned to the header.\n * When the value is not set it defaults to true.\n *\n * @param {Object} state Global application state.\n * @param {string} pluginName Plugin item name.\n *\n * @return {boolean} Whether the plugin item is pinned.\n */\nexport function isPluginItemPinned( state, pluginName ) {\n\tconst pinnedPluginItems = getPreference( state, 'pinnedPluginItems', {} );\n\n\treturn get( pinnedPluginItems, [ pluginName ], true );\n}\n\n/**\n * Returns an array of active meta box locations.\n *\n * @param {Object} state Post editor state.\n *\n * @return {string[]} Active meta box locations.\n */\nexport const getActiveMetaBoxLocations = createSelector(\n\t( state ) => {\n\t\treturn Object.keys( state.metaBoxes.locations )\n\t\t\t.filter( ( location ) => isMetaBoxLocationActive( state, location ) );\n\t},\n\t( state ) => [\n\t\tstate.metaBoxes.locations,\n\t]\n);\n\n/**\n * Returns true if a metabox location is active and visible\n *\n * @param {Object} state Post editor state.\n * @param {string} location Meta box location to test.\n *\n * @return {boolean} Whether the meta box location is active and visible.\n */\nexport function isMetaBoxLocationVisible( state, location ) {\n\treturn (\n\t\tisMetaBoxLocationActive( state, location ) &&\n\t\tsome( getMetaBoxesPerLocation( state, location ), ( { id } ) => {\n\t\t\treturn isEditorPanelEnabled( state, `meta-box-${ id }` );\n\t\t} )\n\t);\n}\n\n/**\n * Returns true if there is an active meta box in the given location, or false\n * otherwise.\n *\n * @param {Object} state Post editor state.\n * @param {string} location Meta box location to test.\n *\n * @return {boolean} Whether the meta box location is active.\n */\nexport function isMetaBoxLocationActive( state, location ) {\n\tconst metaBoxes = getMetaBoxesPerLocation( state, location );\n\treturn !! metaBoxes && metaBoxes.length !== 0;\n}\n\n/**\n * Returns the list of all the available meta boxes for a given location.\n *\n * @param {Object} state Global application state.\n * @param {string} location Meta box location to test.\n *\n * @return {?Array} List of meta boxes.\n */\nexport function getMetaBoxesPerLocation( state, location ) {\n\treturn state.metaBoxes.locations[ location ];\n}\n\n/**\n * Returns the list of all the available meta boxes.\n *\n * @param {Object} state Global application state.\n *\n * @return {Array} List of meta boxes.\n */\nexport const getAllMetaBoxes = createSelector(\n\t( state ) => {\n\t\treturn flatten( values( state.metaBoxes.locations ) );\n\t},\n\t( state ) => [\n\t\tstate.metaBoxes.locations,\n\t]\n);\n\n/**\n * Returns true if the post is using Meta Boxes\n *\n * @param {Object} state Global application state\n *\n * @return {boolean} Whether there are metaboxes or not.\n */\nexport function hasMetaBoxes( state ) {\n\treturn getActiveMetaBoxLocations( state ).length > 0;\n}\n\n/**\n * Returns true if the Meta Boxes are being saved.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the metaboxes are being saved.\n */\nexport function isSavingMetaBoxes( state ) {\n\treturn state.metaBoxes.isSaving;\n}\n","/**\n * Given a selector returns a functions that returns the listener only\n * if the returned value from the selector changes.\n *\n * @param {function} selector Selector.\n * @param {function} listener Listener.\n * @return {function} Listener creator.\n */\nexport const onChangeListener = ( selector, listener ) => {\n\tlet previousValue = selector();\n\treturn () => {\n\t\tconst selectedValue = selector();\n\t\tif ( selectedValue !== previousValue ) {\n\t\t\tpreviousValue = selectedValue;\n\t\t\tlistener( selectedValue );\n\t\t}\n\t};\n};\n","/**\n * Function returning the current Meta Boxes DOM Node in the editor\n * whether the meta box area is opened or not.\n * If the MetaBox Area is visible returns it, and returns the original container instead.\n *\n * @param {string} location Meta Box location.\n * @return {string} HTML content.\n */\nexport const getMetaBoxContainer = ( location ) => {\n\tconst area = document.querySelector( `.edit-post-meta-boxes-area.is-${ location } .metabox-location-${ location }` );\n\tif ( area ) {\n\t\treturn area;\n\t}\n\n\treturn document.querySelector( '#metaboxes .metabox-location-' + location );\n};\n","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","'use strict';\n\nfunction flattenIntoMap( map, effects ) {\n\tvar i;\n\tif ( Array.isArray( effects ) ) {\n\t\tfor ( i = 0; i < effects.length; i++ ) {\n\t\t\tflattenIntoMap( map, effects[ i ] );\n\t\t}\n\t} else {\n\t\tfor ( i in effects ) {\n\t\t\tmap[ i ] = ( map[ i ] || [] ).concat( effects[ i ] );\n\t\t}\n\t}\n}\n\nfunction refx( effects ) {\n\tvar map = {},\n\t\tmiddleware;\n\n\tflattenIntoMap( map, effects );\n\n\tmiddleware = function( store ) {\n\t\treturn function( next ) {\n\t\t\treturn function( action ) {\n\t\t\t\tvar handlers = map[ action.type ],\n\t\t\t\t\tresult = next( action ),\n\t\t\t\t\ti, handlerAction;\n\n\t\t\t\tif ( handlers ) {\n\t\t\t\t\tfor ( i = 0; i < handlers.length; i++ ) {\n\t\t\t\t\t\thandlerAction = handlers[ i ]( action, store );\n\t\t\t\t\t\tif ( handlerAction ) {\n\t\t\t\t\t\t\tstore.dispatch( handlerAction );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t};\n\t\t};\n\t};\n\n\tmiddleware.effects = map;\n\n\treturn middleware;\n}\n\nmodule.exports = refx;\n","'use strict';\n\nvar LEAF_KEY, hasWeakMap;\n\n/**\n * Arbitrary value used as key for referencing cache object in WeakMap tree.\n *\n * @type {Object}\n */\nLEAF_KEY = {};\n\n/**\n * Whether environment supports WeakMap.\n *\n * @type {boolean}\n */\nhasWeakMap = typeof WeakMap !== 'undefined';\n\n/**\n * Returns the first argument as the sole entry in an array.\n *\n * @param {*} value Value to return.\n *\n * @return {Array} Value returned as entry in array.\n */\nfunction arrayOf( value ) {\n\treturn [ value ];\n}\n\n/**\n * Returns true if the value passed is object-like, or false otherwise. A value\n * is object-like if it can support property assignment, e.g. object or array.\n *\n * @param {*} value Value to test.\n *\n * @return {boolean} Whether value is object-like.\n */\nfunction isObjectLike( value ) {\n\treturn !! value && 'object' === typeof value;\n}\n\n/**\n * Creates and returns a new cache object.\n *\n * @return {Object} Cache object.\n */\nfunction createCache() {\n\tvar cache = {\n\t\tclear: function() {\n\t\t\tcache.head = null;\n\t\t},\n\t};\n\n\treturn cache;\n}\n\n/**\n * Returns true if entries within the two arrays are strictly equal by\n * reference from a starting index.\n *\n * @param {Array} a First array.\n * @param {Array} b Second array.\n * @param {number} fromIndex Index from which to start comparison.\n *\n * @return {boolean} Whether arrays are shallowly equal.\n */\nfunction isShallowEqual( a, b, fromIndex ) {\n\tvar i;\n\n\tif ( a.length !== b.length ) {\n\t\treturn false;\n\t}\n\n\tfor ( i = fromIndex; i < a.length; i++ ) {\n\t\tif ( a[ i ] !== b[ i ] ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn true;\n}\n\n/**\n * Returns a memoized selector function. The getDependants function argument is\n * called before the memoized selector and is expected to return an immutable\n * reference or array of references on which the selector depends for computing\n * its own return value. The memoize cache is preserved only as long as those\n * dependant references remain the same. If getDependants returns a different\n * reference(s), the cache is cleared and the selector value regenerated.\n *\n * @param {Function} selector Selector function.\n * @param {Function} getDependants Dependant getter returning an immutable\n * reference or array of reference used in\n * cache bust consideration.\n *\n * @return {Function} Memoized selector.\n */\nexport default function( selector, getDependants ) {\n\tvar rootCache, getCache;\n\n\t// Use object source as dependant if getter not provided\n\tif ( ! getDependants ) {\n\t\tgetDependants = arrayOf;\n\t}\n\n\t/**\n\t * Returns the root cache. If WeakMap is supported, this is assigned to the\n\t * root WeakMap cache set, otherwise it is a shared instance of the default\n\t * cache object.\n\t *\n\t * @return {(WeakMap|Object)} Root cache object.\n\t */\n\tfunction getRootCache() {\n\t\treturn rootCache;\n\t}\n\n\t/**\n\t * Returns the cache for a given dependants array. When possible, a WeakMap\n\t * will be used to create a unique cache for each set of dependants. This\n\t * is feasible due to the nature of WeakMap in allowing garbage collection\n\t * to occur on entries where the key object is no longer referenced. Since\n\t * WeakMap requires the key to be an object, this is only possible when the\n\t * dependant is object-like. The root cache is created as a hierarchy where\n\t * each top-level key is the first entry in a dependants set, the value a\n\t * WeakMap where each key is the next dependant, and so on. This continues\n\t * so long as the dependants are object-like. If no dependants are object-\n\t * like, then the cache is shared across all invocations.\n\t *\n\t * @see isObjectLike\n\t *\n\t * @param {Array} dependants Selector dependants.\n\t *\n\t * @return {Object} Cache object.\n\t */\n\tfunction getWeakMapCache( dependants ) {\n\t\tvar caches = rootCache,\n\t\t\tisUniqueByDependants = true,\n\t\t\ti, dependant, map, cache;\n\n\t\tfor ( i = 0; i < dependants.length; i++ ) {\n\t\t\tdependant = dependants[ i ];\n\n\t\t\t// Can only compose WeakMap from object-like key.\n\t\t\tif ( ! isObjectLike( dependant ) ) {\n\t\t\t\tisUniqueByDependants = false;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// Does current segment of cache already have a WeakMap?\n\t\t\tif ( caches.has( dependant ) ) {\n\t\t\t\t// Traverse into nested WeakMap.\n\t\t\t\tcaches = caches.get( dependant );\n\t\t\t} else {\n\t\t\t\t// Create, set, and traverse into a new one.\n\t\t\t\tmap = new WeakMap();\n\t\t\t\tcaches.set( dependant, map );\n\t\t\t\tcaches = map;\n\t\t\t}\n\t\t}\n\n\t\t// We use an arbitrary (but consistent) object as key for the last item\n\t\t// in the WeakMap to serve as our running cache.\n\t\tif ( ! caches.has( LEAF_KEY ) ) {\n\t\t\tcache = createCache();\n\t\t\tcache.isUniqueByDependants = isUniqueByDependants;\n\t\t\tcaches.set( LEAF_KEY, cache );\n\t\t}\n\n\t\treturn caches.get( LEAF_KEY );\n\t}\n\n\t// Assign cache handler by availability of WeakMap\n\tgetCache = hasWeakMap ? getWeakMapCache : getRootCache;\n\n\t/**\n\t * Resets root memoization cache.\n\t */\n\tfunction clear() {\n\t\trootCache = hasWeakMap ? new WeakMap() : createCache();\n\t}\n\n\t// eslint-disable-next-line jsdoc/check-param-names\n\t/**\n\t * The augmented selector call, considering first whether dependants have\n\t * changed before passing it to underlying memoize function.\n\t *\n\t * @param {Object} source Source object for derivation.\n\t * @param {...*} extraArgs Additional arguments to pass to selector.\n\t *\n\t * @return {*} Selector result.\n\t */\n\tfunction callSelector( /* source, ...extraArgs */ ) {\n\t\tvar len = arguments.length,\n\t\t\tcache, node, i, args, dependants;\n\n\t\t// Create copy of arguments (avoid leaking deoptimization).\n\t\targs = new Array( len );\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tdependants = getDependants.apply( null, args );\n\t\tcache = getCache( dependants );\n\n\t\t// If not guaranteed uniqueness by dependants (primitive type or lack\n\t\t// of WeakMap support), shallow compare against last dependants and, if\n\t\t// references have changed, destroy cache to recalculate result.\n\t\tif ( ! cache.isUniqueByDependants ) {\n\t\t\tif ( cache.lastDependants && ! isShallowEqual( dependants, cache.lastDependants, 0 ) ) {\n\t\t\t\tcache.clear();\n\t\t\t}\n\n\t\t\tcache.lastDependants = dependants;\n\t\t}\n\n\t\tnode = cache.head;\n\t\twhile ( node ) {\n\t\t\t// Check whether node arguments match arguments\n\t\t\tif ( ! isShallowEqual( node.args, args, 1 ) ) {\n\t\t\t\tnode = node.next;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// At this point we can assume we've found a match\n\n\t\t\t// Surface matched node to head if not already\n\t\t\tif ( node !== cache.head ) {\n\t\t\t\t// Adjust siblings to point to each other.\n\t\t\t\tnode.prev.next = node.next;\n\t\t\t\tif ( node.next ) {\n\t\t\t\t\tnode.next.prev = node.prev;\n\t\t\t\t}\n\n\t\t\t\tnode.next = cache.head;\n\t\t\t\tnode.prev = null;\n\t\t\t\tcache.head.prev = node;\n\t\t\t\tcache.head = node;\n\t\t\t}\n\n\t\t\t// Return immediately\n\t\t\treturn node.val;\n\t\t}\n\n\t\t// No cached value found. Continue to insertion phase:\n\n\t\tnode = {\n\t\t\t// Generate the result from original function\n\t\t\tval: selector.apply( null, args ),\n\t\t};\n\n\t\t// Avoid including the source object in the cache.\n\t\targs[ 0 ] = null;\n\t\tnode.args = args;\n\n\t\t// Don't need to check whether node is already head, since it would\n\t\t// have been returned above already if it was\n\n\t\t// Shift existing head down list\n\t\tif ( cache.head ) {\n\t\t\tcache.head.prev = node;\n\t\t\tnode.next = cache.head;\n\t\t}\n\n\t\tcache.head = node;\n\n\t\treturn node.val;\n\t}\n\n\tcallSelector.getDependants = getDependants;\n\tcallSelector.clear = clear;\n\tclear();\n\n\treturn callSelector;\n}\n","(function() { module.exports = this[\"wp\"][\"a11y\"]; }());","(function() { module.exports = this[\"wp\"][\"apiFetch\"]; }());","(function() { module.exports = this[\"wp\"][\"blockLibrary\"]; }());","(function() { module.exports = this[\"wp\"][\"blocks\"]; }());","(function() { module.exports = this[\"wp\"][\"components\"]; }());","(function() { module.exports = this[\"wp\"][\"compose\"]; }());","(function() { module.exports = this[\"wp\"][\"coreData\"]; }());","(function() { module.exports = this[\"wp\"][\"data\"]; }());","(function() { module.exports = this[\"wp\"][\"deprecated\"]; }());","(function() { module.exports = this[\"wp\"][\"editor\"]; }());","(function() { module.exports = this[\"wp\"][\"element\"]; }());","(function() { module.exports = this[\"wp\"][\"hooks\"]; }());","(function() { module.exports = this[\"wp\"][\"i18n\"]; }());","(function() { module.exports = this[\"wp\"][\"keycodes\"]; }());","(function() { module.exports = this[\"wp\"][\"nux\"]; }());","(function() { module.exports = this[\"wp\"][\"plugins\"]; }());","(function() { module.exports = this[\"wp\"][\"url\"]; }());","(function() { module.exports = this[\"wp\"][\"viewport\"]; }());","(function() { module.exports = this[\"lodash\"]; }());"],"sourceRoot":""}