1 line
244 KiB
Plaintext
1 line
244 KiB
Plaintext
{"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/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-group.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-item.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/browser-url/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/fullscreen-mode/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/feature-toggle/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/fullscreen-mode-close/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/header-toolbar/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/mode-switcher/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/more-menu/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/options-menu-item/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/pinned-plugins/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/plugin-sidebar-more-menu-item/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/plugins-more-menu-group/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/tools-more-menu-group/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/header/writing-menu/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/keyboard-shortcut-help-modal/config.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/keyboard-shortcut-help-modal/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/keyboard-shortcuts/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/layout/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/meta-boxes/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/meta-boxes/meta-box-visibility.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/meta-boxes/meta-boxes-area/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/options-modal/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/options-modal/options.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/options-modal/section.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/block-sidebar/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/discussion-panel/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/document-sidebar/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/featured-image/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/last-revision/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/page-attributes/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/plugin-post-publish-panel/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/plugin-post-status-info/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/plugin-pre-publish-panel/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/plugin-sidebar/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-author/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-excerpt/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-format/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-pending-status/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-schedule/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-status/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-sticky/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-taxonomies/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-taxonomies/taxonomy-panel.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-trash/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/post-visibility/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/settings-header/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/sidebar/sidebar-header/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/text-editor/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/visual-editor/block-inspector-button.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/components/visual-editor/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/editor.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/hooks/components/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/hooks/components/media-upload/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/hooks/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/hooks/validate-multiple-use/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/keyboard-shortcuts.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/plugins/copy-content-menu-item/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/plugins/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/plugins/keyboard-shortcuts-help-menu-item/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/actions.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/defaults.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/effects.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/index.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/middlewares.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/reducer.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/selectors.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/gutenberg/packages/edit-post/src/store/utils.js","webpack://wp.[name]//Users/gziolo/PhpstormProjects/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","getEditorMode","withViewportMatch","Header","isEditorSidebarOpened","openGeneralSidebar","closeGeneralSidebar","isPublishSidebarOpened","isPublishSidebarEnabled","togglePublishSidebar","hasActiveMetaboxes","isSaving","toggleGeneralSidebar","shortcuts","toggleSidebar","hasMetaBoxes","isSavingMetaBoxes","hasBlockSelection","getBlockSelectionStart","sidebarToOpen","MODES","value","ModeSwitcher","onSwitch","choices","choice","shortcut","toggleEditorMode","display","switchEditorMode","onSelect","MoreMenu","isOpen","_x","OptionsMenuItem","openModal","PinnedPlugins","PluginSidebarMoreMenuItem","children","isSelected","withPluginContext","context","sidebarName","target","getActiveGeneralSidebarName","PluginsMoreMenuGroup","ToolsMoreMenuGroup","WritingMenu","ifViewportMatches","primary","displayShortcutList","primaryShift","primaryAlt","secondary","access","ctrl","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","getAllMetaBoxes","Option","isChecked","onChange","DeferredOption","EnablePublishSidebarOption","enablePublishSidebar","disablePublishSidebar","isEnabled","EnableTipsOption","areTipsEnabled","enableTips","disableTips","EnablePanelOption","panelName","toggleEditorPanelEnabled","Section","SIDEBAR_NAME","BlockSidebar","PANEL_NAME","DiscussionPanel","isOpened","onTogglePanel","isEditorPanelOpened","toggleEditorPanelOpened","DocumentSidebar","FeaturedImage","applyWithSelect","getEditedPostAttribute","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","getSelectedBlockCount","clearSelectedBlock","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","deprecatedType","gallery","modalClass","onOpen","onUpdate","allowedTypesToUse","deprecated","version","alternative","currentState","GalleryDetailsMediaFrame","attachments","model","Selection","models","toJSON","frame","mimeType","frameConfig","button","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","initializeMetaBoxes","plugin","store","initializeMetaBoxState","CopyContentMenuItem","editedPostContent","hasCopied","withState","registerPlugin","KeyboardShortcutsHelpMenuItem","openPublishSidebar","toggleGeneralSidebarEditorPanel","pluginName","setActiveMetaBoxLocations","setAvailableMetaBoxesPerLocation","metaBoxesPerLocation","requestMetaBoxUpdates","metaBoxUpdatesSuccess","setMetaBoxSavedData","dataPerLocation","PREFERENCES_DEFAULTS","editorMode","isGeneralSidebarDismissed","panels","opened","features","fixedToolbar","pinnedPluginItems","effects","SET_META_BOXES_PER_LOCATIONS","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","getMetaBoxes","result","isMetaBoxLocationActive","createSelector","Object","keys","some","flatten","values","getMetaBox","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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AG;AAAA,oGAAC;AACJ,EAAE,MAAM,EAEN;AACF,CAAC;;;;;;;;;;;;;ACnDY;;AAEb;AACA;AACA;AACA,cAAc,oBAAoB;AAClC;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa;AACb;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;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\treturn (\n\t\t<NavigableToolbar\n\t\t\tclassName=\"edit-post-header-toolbar\"\n\t\t\taria-label={ __( 'Editor Toolbar' ) }\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 id=\"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\tPostPublishPanelToggle,\n\tPostPublishButton,\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';\n\nfunction Header( {\n\tisEditorSidebarOpened,\n\topenGeneralSidebar,\n\tcloseGeneralSidebar,\n\tisPublishSidebarOpened,\n\tisPublishSidebarEnabled,\n\ttogglePublishSidebar,\n\thasActiveMetaboxes,\n\tisSaving,\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{ isPublishSidebarEnabled ? (\n\t\t\t\t\t\t<PostPublishPanelToggle\n\t\t\t\t\t\t\tisOpen={ isPublishSidebarOpened }\n\t\t\t\t\t\t\tonToggle={ togglePublishSidebar }\n\t\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\t\tforceIsSaving={ isSaving }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<PostPublishButton\n\t\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\t\tforceIsSaving={ isSaving }\n\t\t\t\t\t\t/>\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 id=\"core/editor.settings\">\n\t\t\t\t\t\t\t{ __( 'You’ll 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\tisEditorSidebarOpened: select( 'core/edit-post' ).isEditorSidebarOpened(),\n\t\tisPublishSidebarOpened: select( 'core/edit-post' ).isPublishSidebarOpened(),\n\t\tisPublishSidebarEnabled: select( 'core/editor' ).isPublishSidebarEnabled(),\n\t\thasActiveMetaboxes: select( 'core/edit-post' ).hasMetaBoxes(),\n\t\tisSaving: select( 'core/edit-post' ).isSavingMetaBoxes(),\n\t\thasBlockSelection: !! select( 'core/editor' ).getBlockSelectionStart(),\n\t} ) ),\n\twithDispatch( ( dispatch, { hasBlockSelection } ) => {\n\t\tconst { openGeneralSidebar, closeGeneralSidebar, togglePublishSidebar } = 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\ttogglePublishSidebar: togglePublishSidebar,\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 { _x } 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 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={ _x( 'More', 'button to expand options' ) }\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 { 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\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: 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: access( 's' ),\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 BlockSidebar from '../sidebar/block-sidebar';\nimport DocumentSidebar from '../sidebar/document-sidebar';\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 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<DocumentSidebar />\n\t\t\t\t\t<BlockSidebar />\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, map } 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 { EnablePublishSidebarOption, EnableTipsOption, EnablePanelOption } from './options';\n\nconst MODAL_NAME = 'edit-post/options';\n\nexport function OptionsModal( { isModalActive, closeModal, metaBoxes = [] } ) {\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{ metaBoxes.length !== 0 && (\n\t\t\t\t<Section title={ __( 'Advanced Panels' ) }>\n\t\t\t\t\t{ map( metaBoxes, ( { title, id } ) => (\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\t</Section>\n\t\t\t) }\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\tmetaBoxes: select( 'core/edit-post' ).getAllMetaBoxes(),\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 * WordPress dependencies\n */\nimport { CheckboxControl } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\nfunction Option( { 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\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<Option\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 const EnablePublishSidebarOption = 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)( Option );\n\nexport const EnableTipsOption = 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\nexport const EnablePanelOption = 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)( Option );\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 { Panel, PanelBody } from '@wordpress/components';\nimport { BlockInspector } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal Dependencies\n */\nimport SettingsHeader from '../settings-header';\nimport Sidebar from '../';\n\nconst SIDEBAR_NAME = 'edit-post/block';\n\nconst BlockSidebar = () => (\n\t<Sidebar\n\t\tname={ SIDEBAR_NAME }\n\t\tlabel={ __( 'Editor settings' ) }\n\t>\n\t\t<SettingsHeader sidebarName={ SIDEBAR_NAME } />\n\t\t<Panel>\n\t\t\t<PanelBody className=\"edit-post-block-sidebar__panel\">\n\t\t\t\t<BlockInspector />\n\t\t\t</PanelBody>\n\t\t</Panel>\n\t</Sidebar>\n);\n\nexport default BlockSidebar;\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 * WordPress dependencies\n */\nimport { Panel } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal Dependencies\n */\nimport PostStatus from '../post-status';\nimport PostExcerpt from '../post-excerpt';\nimport PostTaxonomies from '../post-taxonomies';\nimport FeaturedImage from '../featured-image';\nimport DiscussionPanel from '../discussion-panel';\nimport LastRevision from '../last-revision';\nimport PageAttributes from '../page-attributes';\nimport MetaBoxes from '../../meta-boxes';\nimport SettingsHeader from '../settings-header';\nimport Sidebar from '../';\n\nconst SIDEBAR_NAME = 'edit-post/document';\n\nconst DocumentSidebar = () => (\n\t<Sidebar\n\t\tname={ SIDEBAR_NAME }\n\t\tlabel={ __( 'Editor settings' ) }\n\t>\n\t\t<SettingsHeader sidebarName={ SIDEBAR_NAME } />\n\t\t<Panel>\n\t\t\t<PostStatus />\n\t\t\t<LastRevision />\n\t\t\t<PostTaxonomies />\n\t\t\t<FeaturedImage />\n\t\t\t<PostExcerpt />\n\t\t\t<DiscussionPanel />\n\t\t\t<PageAttributes />\n\t\t\t<MetaBoxes location=\"side\" />\n\t\t</Panel>\n\t</Sidebar>\n);\n\nexport default DocumentSidebar;\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\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<button\n\t\t\t\tonClick={ openDocumentSettings }\n\t\t\t\tclassName={ `edit-post-sidebar__panel-tab ${ sidebarName === 'edit-post/document' ? 'is-active' : '' }` }\n\t\t\t\taria-label={ __( 'Document settings' ) }\n\t\t\t\tdata-label={ __( 'Document' ) }\n\t\t\t>\n\t\t\t\t{ __( 'Document' ) }\n\t\t\t</button>\n\t\t\t<button\n\t\t\t\tonClick={ openBlockSettings }\n\t\t\t\tclassName={ `edit-post-sidebar__panel-tab ${ sidebarName === 'edit-post/block' ? 'is-active' : '' }` }\n\t\t\t\taria-label={ __( 'Block settings' ) }\n\t\t\t\tdata-label={ blockLabel }\n\t\t\t>\n\t\t\t\t{ blockLabel }\n\t\t\t</button>\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 * 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\">\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';\nimport deprecated from '@wordpress/deprecated';\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\ttype: deprecatedType,\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\tlet allowedTypesToUse = allowedTypes;\n\t\tif ( ! allowedTypes && deprecatedType ) {\n\t\t\tdeprecated( 'type property of wp.editor.MediaUpload', {\n\t\t\t\tversion: '4.2',\n\t\t\t\talternative: 'allowedTypes property containing an array with the allowedTypes or do not pass any property if all types are allowed',\n\t\t\t} );\n\t\t\tif ( deprecatedType === '*' ) {\n\t\t\t\tallowedTypesToUse = undefined;\n\t\t\t} else {\n\t\t\t\tallowedTypesToUse = [ deprecatedType ];\n\t\t\t}\n\t\t}\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: allowedTypesToUse,\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 ( !! allowedTypesToUse ) {\n\t\t\t\tframeConfig.library = { type: allowedTypesToUse };\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';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport './hooks';\nimport './plugins';\nimport store from './store';\nimport { initializeMetaBoxState } from './store/actions';\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 *\n * @return {Object} Editor interface.\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\treturn {\n\t\tinitializeMetaBoxes( metaBoxes ) {\n\t\t\tdeprecated( 'editor.initializeMetaBoxes', {\n\t\t\t\talternative: 'setActiveMetaBoxLocations action (`core/edit-post`)',\n\t\t\t\tplugin: 'Gutenberg',\n\t\t\t\tversion: '4.2',\n\t\t\t} );\n\n\t\t\tstore.dispatch( initializeMetaBoxState( metaBoxes ) );\n\t\t},\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 an editor sidebar.\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 the sidebar.\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\nexport function initializeMetaBoxState() {\n\tdeprecated( 'initializeMetaBoxState action (`core/edit-post`)', {\n\t\tplugin: 'Gutenberg',\n\t\tversion: '4.2',\n\t} );\n\treturn {\n\t\ttype: 'DO_NOTHING',\n\t};\n}\n\nexport function setActiveMetaBoxLocations() {\n\tdeprecated( 'setActiveMetaBoxLocations action (`core/edit-post`)', {\n\t\tplugin: 'Gutenberg',\n\t\tversion: '4.2',\n\t} );\n\treturn {\n\t\ttype: 'DO_NOTHING',\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/**\n * Returns an action object used to set the saved meta boxes data.\n * This is used to check if the meta boxes have been touched when leaving the editor.\n *\n * @param {Object} dataPerLocation Meta Boxes Data per location.\n *\n * @return {Object} Action object.\n */\nexport function setMetaBoxSavedData( dataPerLocation ) {\n\tdeprecated( 'setMetaBoxSavedData action (`core/edit-post`)', {\n\t\tplugin: 'Gutenberg',\n\t\tversion: '4.2',\n\t} );\n\n\treturn {\n\t\ttype: 'META_BOX_SET_SAVED_DATA',\n\t\tdataPerLocation,\n\t};\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 the state of legacy meta boxes.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} State of meta boxes.\n */\nexport function getMetaBoxes( state ) {\n\tdeprecated( 'getMetaBox selector (`core/edit-post`)', {\n\t\talternative: 'getActiveMetaBoxLocations selector',\n\t\tplugin: 'Gutenberg',\n\t\tversion: '4.2',\n\t} );\n\n\treturn [\n\t\t'normal',\n\t\t'side',\n\t\t'advanced',\n\t].reduce( ( result, location ) => {\n\t\tresult[ location ] = {\n\t\t\tisActive: isMetaBoxLocationActive( state, location ),\n\t\t};\n\n\t\treturn result;\n\t}, {} );\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 the state of legacy meta boxes.\n *\n * @param {Object} state Global application state.\n * @param {string} location Location of the meta box.\n *\n * @return {Object} State of meta box at specified location.\n */\nexport function getMetaBox( state, location ) {\n\tdeprecated( 'getMetaBox selector (`core/edit-post`)', {\n\t\talternative: 'isMetaBoxLocationActive selector',\n\t\tplugin: 'Gutenberg',\n\t\tversion: '4.2',\n\t} );\n\n\treturn getMetaBoxes( state )[ location ];\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":""} |