@elementor/editor-app-bar 0.22.2 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Change Log
2
2
 
3
+ ## 0.23.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 34c8447: Swap history and site settings buttons
8
+
3
9
  ## 0.22.2
4
10
 
5
11
  ### Patch Changes
package/dist/index.js CHANGED
@@ -28,8 +28,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
29
 
30
30
  // src/index.ts
31
- var src_exports = {};
32
- __export(src_exports, {
31
+ var index_exports = {};
32
+ __export(index_exports, {
33
33
  documentOptionsMenu: () => documentOptionsMenu,
34
34
  injectIntoPageIndication: () => injectIntoPageIndication,
35
35
  injectIntoPrimaryAction: () => injectIntoPrimaryAction,
@@ -39,7 +39,7 @@ __export(src_exports, {
39
39
  toolsMenu: () => toolsMenu,
40
40
  utilitiesMenu: () => utilitiesMenu
41
41
  });
42
- module.exports = __toCommonJS(src_exports);
42
+ module.exports = __toCommonJS(index_exports);
43
43
 
44
44
  // src/locations.ts
45
45
  var import_locations = require("@elementor/locations");
@@ -290,7 +290,7 @@ var StyledElementorLogo = (0, import_ui5.styled)(ElementorLogo, {
290
290
  transform: showMenuIcon && "translateY(-9px) scaleY(0)"
291
291
  },
292
292
  "&:not(:first-of-type)": {
293
- // Emotion automatically change 4 to -4 in RTL moode.
293
+ // Emotion automatically change 4 to -4 in RTL mode.
294
294
  transform: !showMenuIcon && `translateX(${theme.direction === "rtl" ? "4" : "9"}px) scaleX(0.6)`
295
295
  },
296
296
  "&:nth-of-type(2)": {
@@ -955,9 +955,9 @@ function useActionProps4() {
955
955
 
956
956
  // src/extensions/history/index.ts
957
957
  function init7() {
958
- mainMenu.registerToggleAction({
958
+ toolsMenu.registerToggleAction({
959
959
  id: "open-history",
960
- priority: 20,
960
+ priority: 2,
961
961
  useProps: useActionProps4
962
962
  });
963
963
  }
@@ -1199,9 +1199,9 @@ function init10() {
1199
1199
  id: "site-settings-primary-action-portal",
1200
1200
  component: PortalledPrimaryAction
1201
1201
  });
1202
- toolsMenu.registerToggleAction({
1202
+ mainMenu.registerToggleAction({
1203
1203
  id: "toggle-site-settings",
1204
- priority: 2,
1204
+ priority: 20,
1205
1205
  useProps: useActionProps6
1206
1206
  });
1207
1207
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/locations.ts","../src/components/actions/action.tsx","../src/contexts/menu-context.tsx","../src/components/ui/popover-menu-item.tsx","../src/components/ui/toolbar-menu-item.tsx","../src/components/actions/link.tsx","../src/components/actions/toggle-action.tsx","../src/components/ui/toolbar-menu-toggle-item.tsx","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/components/app-bar.tsx","../src/components/locations/main-menu-location.tsx","../src/components/ui/popover-menu.tsx","../src/components/ui/toolbar-logo.tsx","../src/components/locations/page-indication-location.tsx","../src/components/locations/primary-action-location.tsx","../src/components/locations/responsive-location.tsx","../src/components/locations/tools-menu-location.tsx","../src/components/ui/toolbar-menu.tsx","../src/components/ui/toolbar-menu-more.tsx","../src/components/locations/integrations-menu-location.tsx","../src/components/locations/utilities-menu-location.tsx","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-preview/index.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/help/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/history/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/responsive/components/breakpoints-switcher.tsx","../src/extensions/responsive/index.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts","../src/sync/redirect-old-menus.ts"],"sourcesContent":["export {\n\tmainMenu,\n\ttoolsMenu,\n\tutilitiesMenu,\n\tintegrationsMenu,\n\tinjectIntoPageIndication,\n\tinjectIntoResponsive,\n\tinjectIntoPrimaryAction,\n} from './locations';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nexport type { ActionProps, LinkProps, ToggleActionProps } from './types';\n\nimport init from './init';\n\ninit();\n","import { createLocation } from '@elementor/locations';\nimport { createMenu } from '@elementor/menus';\n\nimport Action from './components/actions/action';\nimport Link from './components/actions/link';\nimport ToggleAction from './components/actions/toggle-action';\n\nexport const { inject: injectIntoPageIndication, Slot: PageIndicationSlot } = createLocation();\n\nexport const { inject: injectIntoResponsive, Slot: ResponsiveSlot } = createLocation();\n\nexport const { inject: injectIntoPrimaryAction, Slot: PrimaryActionSlot } = createLocation();\n\nconst components = {\n\tAction,\n\tToggleAction,\n\tLink,\n};\n\nexport const mainMenu = createMenu( {\n\tgroups: [ 'exits' ],\n\tcomponents,\n} );\n\nexport const toolsMenu = createMenu( { components } );\n\nexport const utilitiesMenu = createMenu( { components } );\n\nexport const integrationsMenu = createMenu( { components } );\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n};\n\nexport default function Action( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { createContext, type PropsWithChildren, useContext } from 'react';\nimport { type PopupState } from '@elementor/ui';\n\ntype MenuContextValue = {\n\ttype: 'toolbar' | 'popover';\n\tpopupState?: PopupState;\n};\n\nconst MenuContext = createContext< MenuContextValue >( {\n\ttype: 'toolbar',\n} );\n\nexport function MenuContextProvider( { type, popupState, children }: PropsWithChildren< MenuContextValue > ) {\n\treturn <MenuContext.Provider value={ { type, popupState } }>{ children }</MenuContext.Provider>;\n}\n\nexport function useMenuContext() {\n\treturn useContext( MenuContext );\n}\n","import * as React from 'react';\nimport { ArrowUpRightIcon, ChevronRightIcon } from '@elementor/icons';\nimport { ListItemIcon, ListItemText, MenuItem, type MenuItemProps, withDirection } from '@elementor/ui';\n\ntype ExtraProps = {\n\thref?: string;\n\ttarget?: string;\n\ttext?: string;\n\ticon?: JSX.Element;\n\tisGroupParent?: boolean;\n};\n\nexport type PopoverMenuItemProps = MenuItemProps & ExtraProps;\n\nconst DirectionalArrowIcon = withDirection( ArrowUpRightIcon );\nconst DirectionalChevronIcon = withDirection( ChevronRightIcon );\n\nexport default function PopoverMenuItem( {\n\ttext,\n\ticon,\n\tonClick,\n\thref,\n\ttarget,\n\tdisabled,\n\tisGroupParent,\n\t...props\n}: PopoverMenuItemProps ) {\n\tconst isExternalLink = href && target === '_blank';\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...props }\n\t\t\tdisabled={ disabled }\n\t\t\tonClick={ onClick }\n\t\t\tcomponent={ href ? 'a' : 'div' }\n\t\t\thref={ href }\n\t\t\ttarget={ target }\n\t\t\tsx={ {\n\t\t\t\t'&:hover': {\n\t\t\t\t\tcolor: 'text.primary', // Overriding global CSS from the editor.\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t<ListItemIcon>{ icon }</ListItemIcon>\n\t\t\t<ListItemText primary={ text } />\n\t\t\t{ isExternalLink && <DirectionalArrowIcon /> }\n\t\t\t{ isGroupParent && <DirectionalChevronIcon /> }\n\t\t</MenuItem>\n\t);\n}\n","import * as React from 'react';\nimport { Box, IconButton, type IconButtonProps, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\n\nexport type ToolbarMenuItemProps = IconButtonProps & {\n\ttitle?: string;\n\tselected?: boolean;\n};\n\nexport default function ToolbarMenuItem( { title, ...props }: ToolbarMenuItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<IconButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tcolor: 'text.primary',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\thref?: string;\n\tvisible?: boolean;\n\ttarget?: string;\n};\n\nexport default function Link( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuToggleItem from '../ui/toolbar-menu-toggle-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tselected?: boolean;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n\tvalue?: string;\n};\n\nexport default function ToggleAction( { icon: Icon, title, value, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuToggleItem value={ value || title } title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuToggleItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, type ToggleButtonProps, Tooltip } from '@elementor/ui';\n\nexport type ToolbarMenuToggleItemProps = Omit< ToggleButtonProps, 'onChange' > & {\n\ttitle?: string;\n\tonClick?: () => void;\n};\n\nexport default function ToolbarMenuToggleItem( { title, onClick, ...props }: ToolbarMenuToggleItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tonChange={ onClick }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n","import { createMenu } from '@elementor/menus';\n\nimport Action from '../../components/actions/action';\nimport Link from '../../components/actions/link';\nimport ToggleAction from '../../components/actions/toggle-action';\n\nexport const documentOptionsMenu = createMenu( {\n\tgroups: [ 'save' ],\n\tcomponents: {\n\t\tAction,\n\t\tToggleAction,\n\t\tLink,\n\t},\n} );\n","import { injectIntoTop } from '@elementor/editor';\n\nimport AppBar from './components/app-bar';\nimport { init as initExtensions } from './extensions';\nimport redirectOldMenus from './sync/redirect-old-menus';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { AppBar as BaseAppBar, Box, Divider, Grid, ThemeProvider, Toolbar } from '@elementor/ui';\n\nimport MainMenuLocation from './locations/main-menu-location';\nimport PageIndicationLocation from './locations/page-indication-location';\nimport PrimaryActionLocation from './locations/primary-action-location';\nimport ResponsiveLocation from './locations/responsive-location';\nimport ToolsMenuLocation from './locations/tools-menu-location';\nimport UtilitiesMenuLocation from './locations/utilities-menu-location';\nimport ToolbarMenu from './ui/toolbar-menu';\n\nexport default function AppBar() {\n\tconst document = useActiveDocument();\n\treturn (\n\t\t<ThemeProvider colorScheme=\"dark\">\n\t\t\t<BaseAppBar position=\"sticky\">\n\t\t\t\t<Toolbar disableGutters variant=\"dense\">\n\t\t\t\t\t<Box display=\"grid\" gridTemplateColumns=\"repeat(3, 1fr)\" flexGrow={ 1 }>\n\t\t\t\t\t\t<Grid container>\n\t\t\t\t\t\t\t<MainMenuLocation />\n\t\t\t\t\t\t\t{ document?.permissions?.allowAddingWidgets && <ToolsMenuLocation /> }\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"center\">\n\t\t\t\t\t\t\t<ToolbarMenu spacing={ 1.5 }>\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<PageIndicationLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<ResponsiveLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t</ToolbarMenu>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"flex-end\">\n\t\t\t\t\t\t\t<UtilitiesMenuLocation />\n\t\t\t\t\t\t\t<PrimaryActionLocation />\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t</Box>\n\t\t\t\t</Toolbar>\n\t\t\t</BaseAppBar>\n\t\t</ThemeProvider>\n\t);\n}\n","import * as React from 'react';\nimport { bindMenu, bindTrigger, Divider, Stack, usePopupState } from '@elementor/ui';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarLogo from '../ui/toolbar-logo';\n\nconst { useMenuItems } = mainMenu;\n\nexport default function MainMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-main-menu',\n\t} );\n\n\tconst toolbarLogoProps = bindTrigger( popupState );\n\n\tconst onToolbarClick: React.MouseEventHandler = ( e ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.elementorLogoDropdown, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\ttrigger: config.triggers.dropdownClick,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t} );\n\t\t}\n\n\t\ttoolbarLogoProps.onClick( e );\n\t};\n\n\treturn (\n\t\t<Stack sx={ { paddingInlineStart: 3 } } direction=\"row\" alignItems=\"center\">\n\t\t\t<ToolbarLogo { ...toolbarLogoProps } onClick={ onToolbarClick } selected={ popupState.isOpen } />\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) } marginThreshold={ 8 }>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t\t{ menuItems.exits.length > 0 && <Divider /> }\n\t\t\t\t{ menuItems.exits.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</Stack>\n\t);\n}\n","import * as React from 'react';\nimport { Menu, type MenuProps, type PopupState } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type PopoverMenuProps = MenuProps & {\n\tpopupState?: PopupState;\n};\n\nexport default function PopoverMenu( { children, popupState, ...props }: PopoverMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'popover' } popupState={ popupState }>\n\t\t\t<Menu\n\t\t\t\tPaperProps={ {\n\t\t\t\t\tsx: { mt: 1.5 },\n\t\t\t\t} }\n\t\t\t\t{ ...props }\n\t\t\t\tMenuListProps={ {\n\t\t\t\t\tcomponent: 'div',\n\t\t\t\t\tdense: true,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</Menu>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { useState } from 'react';\nimport { styled, SvgIcon, type SvgIconProps, ToggleButton, type ToggleButtonProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\ninterface StyledElementorLogoProps extends SvgIconProps {\n\tshowMenuIcon?: boolean;\n}\n\ntype ToolbarLogoProps = Omit< ToggleButtonProps, 'value' >;\n\nconst ElementorLogo = ( props: SvgIconProps ) => {\n\treturn (\n\t\t<SvgIcon viewBox=\"0 0 32 32\" { ...props }>\n\t\t\t<g>\n\t\t\t\t<circle cx=\"16\" cy=\"16\" r=\"16\" />\n\t\t\t\t<path d=\"M11.7 9H9V22.3H11.7V9Z\" />\n\t\t\t\t<path d=\"M22.4 9H9V11.7H22.4V9Z\" />\n\t\t\t\t<path d=\"M22.4 14.4004H9V17.1004H22.4V14.4004Z\" />\n\t\t\t\t<path d=\"M22.4 19.6992H9V22.3992H22.4V19.6992Z\" />\n\t\t\t</g>\n\t\t</SvgIcon>\n\t);\n};\n\nconst StyledToggleButton = styled( ToggleButton )( ( { theme } ) => ( {\n\tpadding: 0,\n\tborder: 0,\n\tcolor: theme.palette.text.primary,\n\t'&.MuiToggleButton-root:hover': {\n\t\tbackgroundColor: 'initial',\n\t},\n\t'&.MuiToggleButton-root.Mui-selected': {\n\t\tbackgroundColor: 'initial',\n\t},\n} ) );\n\nconst StyledElementorLogo = styled( ElementorLogo, {\n\tshouldForwardProp: ( prop ) => prop !== 'showMenuIcon',\n} )< StyledElementorLogoProps >( ( { theme, showMenuIcon } ) => ( {\n\t'& path': {\n\t\tfill: theme.palette.background.default,\n\t\ttransition: 'all 0.2s linear',\n\t\ttransformOrigin: 'bottom left',\n\t\t'&:first-of-type': {\n\t\t\ttransitionDelay: ! showMenuIcon && '0.2s',\n\t\t\ttransform: showMenuIcon && 'translateY(-9px) scaleY(0)',\n\t\t},\n\t\t'&:not(:first-of-type)': {\n\t\t\t// Emotion automatically change 4 to -4 in RTL moode.\n\t\t\ttransform: ! showMenuIcon && `translateX(${ theme.direction === 'rtl' ? '4' : '9' }px) scaleX(0.6)`,\n\t\t},\n\t\t'&:nth-of-type(2)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0' : '0.2s',\n\t\t},\n\t\t'&:nth-of-type(3)': {\n\t\t\ttransitionDelay: '0.1s',\n\t\t},\n\t\t'&:nth-of-type(4)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0.2s' : '0',\n\t\t},\n\t},\n} ) );\n\nexport default function ToolbarLogo( props: ToolbarLogoProps ) {\n\tconst [ isHoverState, setIsHoverState ] = useState( false );\n\tconst showMenuIcon = props.selected || isHoverState;\n\n\treturn (\n\t\t<StyledToggleButton\n\t\t\t{ ...props }\n\t\t\tvalue=\"selected\"\n\t\t\tsize=\"large\"\n\t\t\tonMouseEnter={ () => setIsHoverState( true ) }\n\t\t\tonMouseLeave={ () => setIsHoverState( false ) }\n\t\t>\n\t\t\t<StyledElementorLogo\n\t\t\t\tfontSize=\"large\"\n\t\t\t\tshowMenuIcon={ showMenuIcon }\n\t\t\t\ttitleAccess={ __( 'Elementor Logo', 'elementor' ) }\n\t\t\t/>\n\t\t</StyledToggleButton>\n\t);\n}\n","import * as React from 'react';\n\nimport { PageIndicationSlot } from '../../locations';\n\nexport default function PageIndicationLocation() {\n\treturn <PageIndicationSlot />;\n}\n","import * as React from 'react';\n\nimport { PrimaryActionSlot } from '../../locations';\n\nexport default function PrimaryActionLocation() {\n\treturn <PrimaryActionSlot />;\n}\n","import * as React from 'react';\n\nimport { ResponsiveSlot } from '../../locations';\n\nexport default function ResponsiveLocation() {\n\treturn <ResponsiveSlot />;\n}\n","import * as React from 'react';\n\nimport { toolsMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\nimport IntegrationsMenuLocation from './integrations-menu-location';\n\nconst MAX_TOOLBAR_ACTIONS = 5;\n\nconst { useMenuItems } = toolsMenu;\n\nexport default function ToolsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst toolbarMenuItems = menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS );\n\tconst popoverMenuItems = menuItems.default.slice( MAX_TOOLBAR_ACTIONS );\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t<MenuItem key={ id } />\n\t\t\t) ) }\n\t\t\t<IntegrationsMenuLocation />\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-tools-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport { Stack, type StackProps } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type ToolbarMenuProps = StackProps;\n\nexport default function ToolbarMenu( { children, ...props }: ToolbarMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'toolbar' }>\n\t\t\t<Stack sx={ { px: 1.5 } } spacing={ 1.5 } direction=\"row\" alignItems=\"center\" { ...props }>\n\t\t\t\t{ children }\n\t\t\t</Stack>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { type PropsWithChildren } from 'react';\nimport { DotsVerticalIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport PopoverMenu from './popover-menu';\nimport ToolbarMenuItem from './toolbar-menu-item';\n\nexport type ToolbarMenuMoreProps = PropsWithChildren< {\n\tid: string;\n} >;\n\nexport default function ToolbarMenuMore( { children, id }: ToolbarMenuMoreProps ) {\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: id,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'More', 'elementor' ) }>\n\t\t\t\t<DotsVerticalIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) }>\n\t\t\t\t{ children }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { PlugIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { integrationsMenu } from '../../locations';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nconst { useMenuItems } = integrationsMenu;\n\nexport default function IntegrationsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-integrations',\n\t} );\n\n\tif ( menuItems.default.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'Integrations', 'elementor' ) }>\n\t\t\t\t<PlugIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu\n\t\t\t\tonClick={ popupState.close }\n\t\t\t\t{ ...bindMenu( popupState ) }\n\t\t\t\tmarginThreshold={ 8 }\n\t\t\t\topen={ popupState.isOpen }\n\t\t\t>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem: IntegrationsMenuItem, id } ) => (\n\t\t\t\t\t<IntegrationsMenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { Divider } from '@elementor/ui';\n\nimport { utilitiesMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\n\nconst MAX_TOOLBAR_ACTIONS = 4;\n\nconst { useMenuItems } = utilitiesMenu;\n\nexport default function UtilitiesMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\t// If there are more than 5 items, show the first 4 inline and the rest in the popover.\n\t// Otherwise, display all items inline.\n\tconst shouldUsePopover = menuItems.default.length > MAX_TOOLBAR_ACTIONS + 1;\n\n\tconst toolbarMenuItems = shouldUsePopover ? menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS ) : menuItems.default;\n\tconst popoverMenuItems = shouldUsePopover ? menuItems.default.slice( MAX_TOOLBAR_ACTIONS ) : [];\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id }, index ) => (\n\t\t\t\t<Fragment key={ id }>\n\t\t\t\t\t{ index === 0 && <Divider orientation=\"vertical\" /> }\n\t\t\t\t\t<MenuItem />\n\t\t\t\t</Fragment>\n\t\t\t) ) }\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-utilities-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useHostDocument as useHostDocument,\n} from '@elementor/editor-documents';\nimport {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit' ? activeDocument : hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' ).replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.documentSettings, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'document-settings' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\topenRoute( 'panel/page-settings/settings' );\n\t\t\t\t\t} }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 1.7,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import { injectIntoPageIndication } from '../../locations';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.previewPage, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'preview-page' ],\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( document ) {\n\t\t\t\trunCommand( 'editor/documents/preview', {\n\t\t\t\t\tid: document.id,\n\t\t\t\t\tforce: true,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n\ttype Document,\n} from '@elementor/editor-documents';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\nimport PrimaryActionMenu from './primary-action-menu';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.publishButton, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'publish-button' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.mainCta,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( ! document.isSaving ) {\n\t\t\t\t\t\t\tsave();\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish ? __( 'Publish', 'elementor' ) : __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\n\nimport { default as PopoverMenu, type PopoverMenuProps } from '../../../components/ui/popover-menu';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers for empty menu items, due to a limitation in the locations' mechanism.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root {\n\t\t& > .MuiDivider-root {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > *:not( .MuiDivider-root ):not( :last-of-type ) + .MuiDivider-root {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\n\t\t\t{ saveActions.length > 0 && defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { LinkIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentCopyAndShareProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { copyAndShare } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: LinkIcon,\n\t\ttitle: __( 'Copy and Share', 'elementor' ),\n\t\tonClick: copyAndShare,\n\t\tdisabled:\n\t\t\t! document || document.isSaving || document.isSavingDraft || ! ( 'publish' === document.status.value ),\n\t\tvisible: document?.permissions?.showCopyAndShare,\n\t};\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { FolderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () =>\n\t\t\tdocument?.id &&\n\t\t\trunCommand( 'editor/documents/view', {\n\t\t\t\tid: document.id,\n\t\t\t} ),\n\t};\n}\n","import { injectIntoPrimaryAction } from '../../locations';\nimport PrimaryAction from './components/primary-action';\nimport useDocumentCopyAndShareProps from './hooks/use-document-copy-and-share-props';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport { documentOptionsMenu } from './locations';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20,\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-copy-and-share',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentCopyAndShareProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-view-page',\n\t\tpriority: 50,\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.widgetPanel, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'widget-panel' ],\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/elements/categories' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateListenTo as listenTo,\n\trouteOpenEvent,\n\tv1ReadyEvent,\n} from '@elementor/editor-v1-adapters';\nimport { __ } from '@wordpress/i18n';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t};\n\t\t};\n\t};\n};\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo( routeOpenEvent( 'panel/elements' ), () => {\n\t\tsetPanelTitle( panelTitle );\n\t\tsetTabTitle( tabTitle );\n\t} );\n\n\tlistenTo( v1ReadyEvent(), () => {\n\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t} );\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\nimport syncPanelTitle from './sync/sync-panel-title';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SearchIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.finder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.finder,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'finder/toggle' );\n\t\t},\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 15, // Before Preview.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HelpIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { utilitiesMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 25, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.help, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.help,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.history, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/history/actions' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.keyboardShortcuts, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'shortcuts/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\ttype BreakpointId,\n\tuseActivateBreakpoint,\n\tuseActiveBreakpoint,\n\tuseBreakpoints,\n} from '@elementor/editor-responsive';\nimport {\n\tDesktopIcon,\n\tLaptopIcon,\n\tMobileLandscapeIcon,\n\tMobilePortraitIcon,\n\tTabletLandscapeIcon,\n\tTabletPortraitIcon,\n\tWidescreenIcon,\n} from '@elementor/icons';\nimport { Tab, Tabs, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function BreakpointsSwitcher() {\n\tconst breakpoints = useBreakpoints();\n\tconst activeBreakpoint = useActiveBreakpoint();\n\tconst activateBreakpoint = useActivateBreakpoint();\n\n\tif ( ! breakpoints.length || ! activeBreakpoint ) {\n\t\treturn null;\n\t}\n\n\tconst onChange = ( _: unknown, value: BreakpointId ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.responsiveControls, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.responsiveControls,\n\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\tmode: value,\n\t\t\t} );\n\t\t}\n\n\t\tactivateBreakpoint( value );\n\t};\n\n\treturn (\n\t\t<Tabs\n\t\t\ttextColor=\"inherit\"\n\t\t\tindicatorColor=\"secondary\"\n\t\t\tvalue={ activeBreakpoint }\n\t\t\tonChange={ onChange }\n\t\t\taria-label={ __( 'Switch Device', 'elementor' ) }\n\t\t\tsx={ {\n\t\t\t\t'& .MuiTabs-indicator': {\n\t\t\t\t\tbackgroundColor: 'text.primary',\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t{ breakpoints.map( ( { id, label, type, width } ) => {\n\t\t\t\tconst Icon = iconsMap[ id ];\n\n\t\t\t\tconst title = labelsMap[ type || 'default' ]\n\t\t\t\t\t.replace( '%s', label )\n\t\t\t\t\t.replace( '%d', width?.toString() || '' );\n\n\t\t\t\treturn (\n\t\t\t\t\t<Tab\n\t\t\t\t\t\tvalue={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\taria-label={ title }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<Tooltip title={ title }>\n\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsx={ { minWidth: 'auto' } }\n\t\t\t\t\t\tdata-testid={ `switch-device-to-${ id }` }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</Tabs>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2.5,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nconst iconsMap = {\n\twidescreen: WidescreenIcon,\n\tdesktop: DesktopIcon,\n\tlaptop: LaptopIcon,\n\ttablet_extra: TabletLandscapeIcon,\n\ttablet: TabletPortraitIcon,\n\tmobile_extra: MobileLandscapeIcon,\n\tmobile: MobilePortraitIcon,\n};\n\nconst labelsMap = {\n\tdefault: '%s',\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'min-width': __( '%s (%dpx and up)', 'elementor' ),\n\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'max-width': __( '%s (up to %dpx)', 'elementor' ),\n} as const;\n","import { injectIntoResponsive } from '../../locations';\nimport BreakpointsSwitcher from './components/breakpoints-switcher';\n\nexport function init() {\n\tinjectIntoResponsive( {\n\t\tid: 'responsive-breakpoints-switcher',\n\t\tcomponent: BreakpointsSwitcher,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indication.\n\t\t},\n\t} );\n}\n","import { injectIntoTop } from '@elementor/editor';\n\nimport { toolsMenu } from '../../locations';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\n\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateUseListenTo as useListenTo,\n\trouteCloseEvent,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\nimport { Portal as BasePortal, type PortalProps } from '@elementor/ui';\n\nexport default function Portal( props: Omit< PortalProps, 'container' > ) {\n\tconst containerRef = useListenTo(\n\t\t[ routeOpenEvent( 'panel/global' ), routeCloseEvent( 'panel/global' ) ],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn <BasePortal container={ containerRef.current } { ...props } />;\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper\n\t\t\tsx={ {\n\t\t\t\tpx: 5,\n\t\t\t\tpy: 4,\n\t\t\t\tborderTop: 1,\n\t\t\t\tborderColor: 'divider',\n\t\t\t} }\n\t\t>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => ( document && ! document.isSaving ? save() : null ) }\n\t\t\t>\n\t\t\t\t{ document?.isSaving ? <CircularProgress /> : __( 'Save Changes', 'elementor' ) }\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.siteSettings, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.siteSettings,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( isActive ) {\n\t\t\t\trunCommand( 'panel/global/close' );\n\t\t\t} else {\n\t\t\t\trunCommand( 'panel/global/open' );\n\t\t\t}\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.structure, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.structure,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'navigator/toggle' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.themeBuilder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'app/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.userPreferences, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/editor-preferences' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.exitToWordpress, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.link,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initResponsive } from './responsive';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitResponsive();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n","import {\n\t__privateListenTo as listenTo,\n\t__privateOpenRoute as openRoute,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n"],"mappings":"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","names":["React","React","React","import_ui","BaseTooltip","React","React","React","import_ui","import_menus","import_editor","React","import_ui","React","import_ui","React","import_ui","React","import_react","import_ui","MenuItem","React","React","React","React","React","import_ui","React","import_icons","import_ui","import_i18n","React","import_icons","import_ui","import_i18n","useMenuItems","useMenuItems","MenuItem","React","import_react","import_ui","MAX_TOOLBAR_ACTIONS","useMenuItems","MenuItem","document","useActiveDocument","BaseAppBar","React","import_editor_documents","import_icons","import_ui","import_i18n","useActiveDocument","useHostDocument","document","useRouteStatus","Tooltip","openRoute","BaseTooltip","import_editor_documents","import_editor_v1_adapters","import_icons","import_i18n","document","useActiveDocument","runCommand","init","React","import_editor_documents","import_editor_v1_adapters","import_icons","import_ui","import_i18n","React","import_ui","useMenuItems","MenuItem","document","useActiveDocument","useActiveDocumentActions","useIsPreviewMode","import_editor_documents","import_icons","import_i18n","document","useActiveDocument","useActiveDocumentActions","import_editor_documents","import_icons","import_i18n","document","useActiveDocument","useActiveDocumentActions","import_editor_documents","import_icons","import_i18n","useActiveDocumentActions","import_editor_documents","import_editor_v1_adapters","import_icons","import_i18n","document","useActiveDocument","runCommand","init","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","openRoute","import_editor_v1_adapters","import_i18n","listenTo","isRouteActive","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","runCommand","init","useActionProps","import_icons","import_i18n","init","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","openRoute","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","runCommand","init","useActionProps","React","import_icons","import_ui","import_i18n","Tooltip","BaseTooltip","init","React","React","import_editor_v1_adapters","import_ui","useListenTo","BasePortal","isRouteActive","React","import_editor_documents","import_ui","import_i18n","PrimaryAction","document","useActiveDocument","useActiveDocumentActions","PrimaryAction","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","runCommand","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","runCommand","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","runCommand","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","openRoute","init","useActionProps","import_editor_documents","import_icons","import_i18n","init","document","useActiveDocument","init","import_editor_v1_adapters","listenTo","openRoute","init","init"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/locations.ts","../src/components/actions/action.tsx","../src/contexts/menu-context.tsx","../src/components/ui/popover-menu-item.tsx","../src/components/ui/toolbar-menu-item.tsx","../src/components/actions/link.tsx","../src/components/actions/toggle-action.tsx","../src/components/ui/toolbar-menu-toggle-item.tsx","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/components/app-bar.tsx","../src/components/locations/main-menu-location.tsx","../src/components/ui/popover-menu.tsx","../src/components/ui/toolbar-logo.tsx","../src/components/locations/page-indication-location.tsx","../src/components/locations/primary-action-location.tsx","../src/components/locations/responsive-location.tsx","../src/components/locations/tools-menu-location.tsx","../src/components/ui/toolbar-menu.tsx","../src/components/ui/toolbar-menu-more.tsx","../src/components/locations/integrations-menu-location.tsx","../src/components/locations/utilities-menu-location.tsx","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-preview/index.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/help/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/history/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/responsive/components/breakpoints-switcher.tsx","../src/extensions/responsive/index.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts","../src/sync/redirect-old-menus.ts"],"sourcesContent":["export {\n\tmainMenu,\n\ttoolsMenu,\n\tutilitiesMenu,\n\tintegrationsMenu,\n\tinjectIntoPageIndication,\n\tinjectIntoResponsive,\n\tinjectIntoPrimaryAction,\n} from './locations';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nexport type { ActionProps, LinkProps, ToggleActionProps } from './types';\n\nimport init from './init';\n\ninit();\n","import { createLocation } from '@elementor/locations';\nimport { createMenu } from '@elementor/menus';\n\nimport Action from './components/actions/action';\nimport Link from './components/actions/link';\nimport ToggleAction from './components/actions/toggle-action';\n\nexport const { inject: injectIntoPageIndication, Slot: PageIndicationSlot } = createLocation();\n\nexport const { inject: injectIntoResponsive, Slot: ResponsiveSlot } = createLocation();\n\nexport const { inject: injectIntoPrimaryAction, Slot: PrimaryActionSlot } = createLocation();\n\nconst components = {\n\tAction,\n\tToggleAction,\n\tLink,\n};\n\nexport const mainMenu = createMenu( {\n\tgroups: [ 'exits' ],\n\tcomponents,\n} );\n\nexport const toolsMenu = createMenu( { components } );\n\nexport const utilitiesMenu = createMenu( { components } );\n\nexport const integrationsMenu = createMenu( { components } );\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n};\n\nexport default function Action( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { createContext, type PropsWithChildren, useContext } from 'react';\nimport { type PopupState } from '@elementor/ui';\n\ntype MenuContextValue = {\n\ttype: 'toolbar' | 'popover';\n\tpopupState?: PopupState;\n};\n\nconst MenuContext = createContext< MenuContextValue >( {\n\ttype: 'toolbar',\n} );\n\nexport function MenuContextProvider( { type, popupState, children }: PropsWithChildren< MenuContextValue > ) {\n\treturn <MenuContext.Provider value={ { type, popupState } }>{ children }</MenuContext.Provider>;\n}\n\nexport function useMenuContext() {\n\treturn useContext( MenuContext );\n}\n","import * as React from 'react';\nimport { ArrowUpRightIcon, ChevronRightIcon } from '@elementor/icons';\nimport { ListItemIcon, ListItemText, MenuItem, type MenuItemProps, withDirection } from '@elementor/ui';\n\ntype ExtraProps = {\n\thref?: string;\n\ttarget?: string;\n\ttext?: string;\n\ticon?: JSX.Element;\n\tisGroupParent?: boolean;\n};\n\nexport type PopoverMenuItemProps = MenuItemProps & ExtraProps;\n\nconst DirectionalArrowIcon = withDirection( ArrowUpRightIcon );\nconst DirectionalChevronIcon = withDirection( ChevronRightIcon );\n\nexport default function PopoverMenuItem( {\n\ttext,\n\ticon,\n\tonClick,\n\thref,\n\ttarget,\n\tdisabled,\n\tisGroupParent,\n\t...props\n}: PopoverMenuItemProps ) {\n\tconst isExternalLink = href && target === '_blank';\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...props }\n\t\t\tdisabled={ disabled }\n\t\t\tonClick={ onClick }\n\t\t\tcomponent={ href ? 'a' : 'div' }\n\t\t\thref={ href }\n\t\t\ttarget={ target }\n\t\t\tsx={ {\n\t\t\t\t'&:hover': {\n\t\t\t\t\tcolor: 'text.primary', // Overriding global CSS from the editor.\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t<ListItemIcon>{ icon }</ListItemIcon>\n\t\t\t<ListItemText primary={ text } />\n\t\t\t{ isExternalLink && <DirectionalArrowIcon /> }\n\t\t\t{ isGroupParent && <DirectionalChevronIcon /> }\n\t\t</MenuItem>\n\t);\n}\n","import * as React from 'react';\nimport { Box, IconButton, type IconButtonProps, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\n\nexport type ToolbarMenuItemProps = IconButtonProps & {\n\ttitle?: string;\n\tselected?: boolean;\n};\n\nexport default function ToolbarMenuItem( { title, ...props }: ToolbarMenuItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<IconButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tcolor: 'text.primary',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\thref?: string;\n\tvisible?: boolean;\n\ttarget?: string;\n};\n\nexport default function Link( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuToggleItem from '../ui/toolbar-menu-toggle-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tselected?: boolean;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n\tvalue?: string;\n};\n\nexport default function ToggleAction( { icon: Icon, title, value, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuToggleItem value={ value || title } title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuToggleItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, type ToggleButtonProps, Tooltip } from '@elementor/ui';\n\nexport type ToolbarMenuToggleItemProps = Omit< ToggleButtonProps, 'onChange' > & {\n\ttitle?: string;\n\tonClick?: () => void;\n};\n\nexport default function ToolbarMenuToggleItem( { title, onClick, ...props }: ToolbarMenuToggleItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tonChange={ onClick }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n","import { createMenu } from '@elementor/menus';\n\nimport Action from '../../components/actions/action';\nimport Link from '../../components/actions/link';\nimport ToggleAction from '../../components/actions/toggle-action';\n\nexport const documentOptionsMenu = createMenu( {\n\tgroups: [ 'save' ],\n\tcomponents: {\n\t\tAction,\n\t\tToggleAction,\n\t\tLink,\n\t},\n} );\n","import { injectIntoTop } from '@elementor/editor';\n\nimport AppBar from './components/app-bar';\nimport { init as initExtensions } from './extensions';\nimport redirectOldMenus from './sync/redirect-old-menus';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { AppBar as BaseAppBar, Box, Divider, Grid, ThemeProvider, Toolbar } from '@elementor/ui';\n\nimport MainMenuLocation from './locations/main-menu-location';\nimport PageIndicationLocation from './locations/page-indication-location';\nimport PrimaryActionLocation from './locations/primary-action-location';\nimport ResponsiveLocation from './locations/responsive-location';\nimport ToolsMenuLocation from './locations/tools-menu-location';\nimport UtilitiesMenuLocation from './locations/utilities-menu-location';\nimport ToolbarMenu from './ui/toolbar-menu';\n\nexport default function AppBar() {\n\tconst document = useActiveDocument();\n\treturn (\n\t\t<ThemeProvider colorScheme=\"dark\">\n\t\t\t<BaseAppBar position=\"sticky\">\n\t\t\t\t<Toolbar disableGutters variant=\"dense\">\n\t\t\t\t\t<Box display=\"grid\" gridTemplateColumns=\"repeat(3, 1fr)\" flexGrow={ 1 }>\n\t\t\t\t\t\t<Grid container>\n\t\t\t\t\t\t\t<MainMenuLocation />\n\t\t\t\t\t\t\t{ document?.permissions?.allowAddingWidgets && <ToolsMenuLocation /> }\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"center\">\n\t\t\t\t\t\t\t<ToolbarMenu spacing={ 1.5 }>\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<PageIndicationLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<ResponsiveLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t</ToolbarMenu>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"flex-end\">\n\t\t\t\t\t\t\t<UtilitiesMenuLocation />\n\t\t\t\t\t\t\t<PrimaryActionLocation />\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t</Box>\n\t\t\t\t</Toolbar>\n\t\t\t</BaseAppBar>\n\t\t</ThemeProvider>\n\t);\n}\n","import * as React from 'react';\nimport { bindMenu, bindTrigger, Divider, Stack, usePopupState } from '@elementor/ui';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarLogo from '../ui/toolbar-logo';\n\nconst { useMenuItems } = mainMenu;\n\nexport default function MainMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-main-menu',\n\t} );\n\n\tconst toolbarLogoProps = bindTrigger( popupState );\n\n\tconst onToolbarClick: React.MouseEventHandler = ( e ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.elementorLogoDropdown, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\ttrigger: config.triggers.dropdownClick,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t} );\n\t\t}\n\n\t\ttoolbarLogoProps.onClick( e );\n\t};\n\n\treturn (\n\t\t<Stack sx={ { paddingInlineStart: 3 } } direction=\"row\" alignItems=\"center\">\n\t\t\t<ToolbarLogo { ...toolbarLogoProps } onClick={ onToolbarClick } selected={ popupState.isOpen } />\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) } marginThreshold={ 8 }>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t\t{ menuItems.exits.length > 0 && <Divider /> }\n\t\t\t\t{ menuItems.exits.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</Stack>\n\t);\n}\n","import * as React from 'react';\nimport { Menu, type MenuProps, type PopupState } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type PopoverMenuProps = MenuProps & {\n\tpopupState?: PopupState;\n};\n\nexport default function PopoverMenu( { children, popupState, ...props }: PopoverMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'popover' } popupState={ popupState }>\n\t\t\t<Menu\n\t\t\t\tPaperProps={ {\n\t\t\t\t\tsx: { mt: 1.5 },\n\t\t\t\t} }\n\t\t\t\t{ ...props }\n\t\t\t\tMenuListProps={ {\n\t\t\t\t\tcomponent: 'div',\n\t\t\t\t\tdense: true,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</Menu>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { useState } from 'react';\nimport { styled, SvgIcon, type SvgIconProps, ToggleButton, type ToggleButtonProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\ninterface StyledElementorLogoProps extends SvgIconProps {\n\tshowMenuIcon?: boolean;\n}\n\ntype ToolbarLogoProps = Omit< ToggleButtonProps, 'value' >;\n\nconst ElementorLogo = ( props: SvgIconProps ) => {\n\treturn (\n\t\t<SvgIcon viewBox=\"0 0 32 32\" { ...props }>\n\t\t\t<g>\n\t\t\t\t<circle cx=\"16\" cy=\"16\" r=\"16\" />\n\t\t\t\t<path d=\"M11.7 9H9V22.3H11.7V9Z\" />\n\t\t\t\t<path d=\"M22.4 9H9V11.7H22.4V9Z\" />\n\t\t\t\t<path d=\"M22.4 14.4004H9V17.1004H22.4V14.4004Z\" />\n\t\t\t\t<path d=\"M22.4 19.6992H9V22.3992H22.4V19.6992Z\" />\n\t\t\t</g>\n\t\t</SvgIcon>\n\t);\n};\n\nconst StyledToggleButton = styled( ToggleButton )( ( { theme } ) => ( {\n\tpadding: 0,\n\tborder: 0,\n\tcolor: theme.palette.text.primary,\n\t'&.MuiToggleButton-root:hover': {\n\t\tbackgroundColor: 'initial',\n\t},\n\t'&.MuiToggleButton-root.Mui-selected': {\n\t\tbackgroundColor: 'initial',\n\t},\n} ) );\n\nconst StyledElementorLogo = styled( ElementorLogo, {\n\tshouldForwardProp: ( prop ) => prop !== 'showMenuIcon',\n} )< StyledElementorLogoProps >( ( { theme, showMenuIcon } ) => ( {\n\t'& path': {\n\t\tfill: theme.palette.background.default,\n\t\ttransition: 'all 0.2s linear',\n\t\ttransformOrigin: 'bottom left',\n\t\t'&:first-of-type': {\n\t\t\ttransitionDelay: ! showMenuIcon && '0.2s',\n\t\t\ttransform: showMenuIcon && 'translateY(-9px) scaleY(0)',\n\t\t},\n\t\t'&:not(:first-of-type)': {\n\t\t\t// Emotion automatically change 4 to -4 in RTL mode.\n\t\t\ttransform: ! showMenuIcon && `translateX(${ theme.direction === 'rtl' ? '4' : '9' }px) scaleX(0.6)`,\n\t\t},\n\t\t'&:nth-of-type(2)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0' : '0.2s',\n\t\t},\n\t\t'&:nth-of-type(3)': {\n\t\t\ttransitionDelay: '0.1s',\n\t\t},\n\t\t'&:nth-of-type(4)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0.2s' : '0',\n\t\t},\n\t},\n} ) );\n\nexport default function ToolbarLogo( props: ToolbarLogoProps ) {\n\tconst [ isHoverState, setIsHoverState ] = useState( false );\n\tconst showMenuIcon = props.selected || isHoverState;\n\n\treturn (\n\t\t<StyledToggleButton\n\t\t\t{ ...props }\n\t\t\tvalue=\"selected\"\n\t\t\tsize=\"large\"\n\t\t\tonMouseEnter={ () => setIsHoverState( true ) }\n\t\t\tonMouseLeave={ () => setIsHoverState( false ) }\n\t\t>\n\t\t\t<StyledElementorLogo\n\t\t\t\tfontSize=\"large\"\n\t\t\t\tshowMenuIcon={ showMenuIcon }\n\t\t\t\ttitleAccess={ __( 'Elementor Logo', 'elementor' ) }\n\t\t\t/>\n\t\t</StyledToggleButton>\n\t);\n}\n","import * as React from 'react';\n\nimport { PageIndicationSlot } from '../../locations';\n\nexport default function PageIndicationLocation() {\n\treturn <PageIndicationSlot />;\n}\n","import * as React from 'react';\n\nimport { PrimaryActionSlot } from '../../locations';\n\nexport default function PrimaryActionLocation() {\n\treturn <PrimaryActionSlot />;\n}\n","import * as React from 'react';\n\nimport { ResponsiveSlot } from '../../locations';\n\nexport default function ResponsiveLocation() {\n\treturn <ResponsiveSlot />;\n}\n","import * as React from 'react';\n\nimport { toolsMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\nimport IntegrationsMenuLocation from './integrations-menu-location';\n\nconst MAX_TOOLBAR_ACTIONS = 5;\n\nconst { useMenuItems } = toolsMenu;\n\nexport default function ToolsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst toolbarMenuItems = menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS );\n\tconst popoverMenuItems = menuItems.default.slice( MAX_TOOLBAR_ACTIONS );\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t<MenuItem key={ id } />\n\t\t\t) ) }\n\t\t\t<IntegrationsMenuLocation />\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-tools-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport { Stack, type StackProps } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type ToolbarMenuProps = StackProps;\n\nexport default function ToolbarMenu( { children, ...props }: ToolbarMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'toolbar' }>\n\t\t\t<Stack sx={ { px: 1.5 } } spacing={ 1.5 } direction=\"row\" alignItems=\"center\" { ...props }>\n\t\t\t\t{ children }\n\t\t\t</Stack>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { type PropsWithChildren } from 'react';\nimport { DotsVerticalIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport PopoverMenu from './popover-menu';\nimport ToolbarMenuItem from './toolbar-menu-item';\n\nexport type ToolbarMenuMoreProps = PropsWithChildren< {\n\tid: string;\n} >;\n\nexport default function ToolbarMenuMore( { children, id }: ToolbarMenuMoreProps ) {\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: id,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'More', 'elementor' ) }>\n\t\t\t\t<DotsVerticalIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) }>\n\t\t\t\t{ children }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { PlugIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { integrationsMenu } from '../../locations';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nconst { useMenuItems } = integrationsMenu;\n\nexport default function IntegrationsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-integrations',\n\t} );\n\n\tif ( menuItems.default.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'Integrations', 'elementor' ) }>\n\t\t\t\t<PlugIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu\n\t\t\t\tonClick={ popupState.close }\n\t\t\t\t{ ...bindMenu( popupState ) }\n\t\t\t\tmarginThreshold={ 8 }\n\t\t\t\topen={ popupState.isOpen }\n\t\t\t>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem: IntegrationsMenuItem, id } ) => (\n\t\t\t\t\t<IntegrationsMenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { Divider } from '@elementor/ui';\n\nimport { utilitiesMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\n\nconst MAX_TOOLBAR_ACTIONS = 4;\n\nconst { useMenuItems } = utilitiesMenu;\n\nexport default function UtilitiesMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\t// If there are more than 5 items, show the first 4 inline and the rest in the popover.\n\t// Otherwise, display all items inline.\n\tconst shouldUsePopover = menuItems.default.length > MAX_TOOLBAR_ACTIONS + 1;\n\n\tconst toolbarMenuItems = shouldUsePopover ? menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS ) : menuItems.default;\n\tconst popoverMenuItems = shouldUsePopover ? menuItems.default.slice( MAX_TOOLBAR_ACTIONS ) : [];\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id }, index ) => (\n\t\t\t\t<Fragment key={ id }>\n\t\t\t\t\t{ index === 0 && <Divider orientation=\"vertical\" /> }\n\t\t\t\t\t<MenuItem />\n\t\t\t\t</Fragment>\n\t\t\t) ) }\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-utilities-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useHostDocument as useHostDocument,\n} from '@elementor/editor-documents';\nimport {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit' ? activeDocument : hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' ).replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.documentSettings, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'document-settings' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\topenRoute( 'panel/page-settings/settings' );\n\t\t\t\t\t} }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 1.7,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import { injectIntoPageIndication } from '../../locations';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.previewPage, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'preview-page' ],\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( document ) {\n\t\t\t\trunCommand( 'editor/documents/preview', {\n\t\t\t\t\tid: document.id,\n\t\t\t\t\tforce: true,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n\ttype Document,\n} from '@elementor/editor-documents';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\nimport PrimaryActionMenu from './primary-action-menu';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.publishButton, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'publish-button' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.mainCta,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( ! document.isSaving ) {\n\t\t\t\t\t\t\tsave();\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish ? __( 'Publish', 'elementor' ) : __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\n\nimport { default as PopoverMenu, type PopoverMenuProps } from '../../../components/ui/popover-menu';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers for empty menu items, due to a limitation in the locations' mechanism.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root {\n\t\t& > .MuiDivider-root {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > *:not( .MuiDivider-root ):not( :last-of-type ) + .MuiDivider-root {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\n\t\t\t{ saveActions.length > 0 && defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { LinkIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentCopyAndShareProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { copyAndShare } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: LinkIcon,\n\t\ttitle: __( 'Copy and Share', 'elementor' ),\n\t\tonClick: copyAndShare,\n\t\tdisabled:\n\t\t\t! document || document.isSaving || document.isSavingDraft || ! ( 'publish' === document.status.value ),\n\t\tvisible: document?.permissions?.showCopyAndShare,\n\t};\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { FolderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () =>\n\t\t\tdocument?.id &&\n\t\t\trunCommand( 'editor/documents/view', {\n\t\t\t\tid: document.id,\n\t\t\t} ),\n\t};\n}\n","import { injectIntoPrimaryAction } from '../../locations';\nimport PrimaryAction from './components/primary-action';\nimport useDocumentCopyAndShareProps from './hooks/use-document-copy-and-share-props';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport { documentOptionsMenu } from './locations';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20,\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-copy-and-share',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentCopyAndShareProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-view-page',\n\t\tpriority: 50,\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.widgetPanel, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'widget-panel' ],\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/elements/categories' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateListenTo as listenTo,\n\trouteOpenEvent,\n\tv1ReadyEvent,\n} from '@elementor/editor-v1-adapters';\nimport { __ } from '@wordpress/i18n';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t};\n\t\t};\n\t};\n};\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo( routeOpenEvent( 'panel/elements' ), () => {\n\t\tsetPanelTitle( panelTitle );\n\t\tsetTabTitle( tabTitle );\n\t} );\n\n\tlistenTo( v1ReadyEvent(), () => {\n\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t} );\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\nimport syncPanelTitle from './sync/sync-panel-title';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SearchIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.finder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.finder,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'finder/toggle' );\n\t\t},\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 15, // Before Preview.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HelpIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { utilitiesMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 25, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.help, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.help,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.history, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/history/actions' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.keyboardShortcuts, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'shortcuts/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\ttype BreakpointId,\n\tuseActivateBreakpoint,\n\tuseActiveBreakpoint,\n\tuseBreakpoints,\n} from '@elementor/editor-responsive';\nimport {\n\tDesktopIcon,\n\tLaptopIcon,\n\tMobileLandscapeIcon,\n\tMobilePortraitIcon,\n\tTabletLandscapeIcon,\n\tTabletPortraitIcon,\n\tWidescreenIcon,\n} from '@elementor/icons';\nimport { Tab, Tabs, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function BreakpointsSwitcher() {\n\tconst breakpoints = useBreakpoints();\n\tconst activeBreakpoint = useActiveBreakpoint();\n\tconst activateBreakpoint = useActivateBreakpoint();\n\n\tif ( ! breakpoints.length || ! activeBreakpoint ) {\n\t\treturn null;\n\t}\n\n\tconst onChange = ( _: unknown, value: BreakpointId ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.responsiveControls, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.responsiveControls,\n\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\tmode: value,\n\t\t\t} );\n\t\t}\n\n\t\tactivateBreakpoint( value );\n\t};\n\n\treturn (\n\t\t<Tabs\n\t\t\ttextColor=\"inherit\"\n\t\t\tindicatorColor=\"secondary\"\n\t\t\tvalue={ activeBreakpoint }\n\t\t\tonChange={ onChange }\n\t\t\taria-label={ __( 'Switch Device', 'elementor' ) }\n\t\t\tsx={ {\n\t\t\t\t'& .MuiTabs-indicator': {\n\t\t\t\t\tbackgroundColor: 'text.primary',\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t{ breakpoints.map( ( { id, label, type, width } ) => {\n\t\t\t\tconst Icon = iconsMap[ id ];\n\n\t\t\t\tconst title = labelsMap[ type || 'default' ]\n\t\t\t\t\t.replace( '%s', label )\n\t\t\t\t\t.replace( '%d', width?.toString() || '' );\n\n\t\t\t\treturn (\n\t\t\t\t\t<Tab\n\t\t\t\t\t\tvalue={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\taria-label={ title }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<Tooltip title={ title }>\n\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsx={ { minWidth: 'auto' } }\n\t\t\t\t\t\tdata-testid={ `switch-device-to-${ id }` }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</Tabs>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2.5,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nconst iconsMap = {\n\twidescreen: WidescreenIcon,\n\tdesktop: DesktopIcon,\n\tlaptop: LaptopIcon,\n\ttablet_extra: TabletLandscapeIcon,\n\ttablet: TabletPortraitIcon,\n\tmobile_extra: MobileLandscapeIcon,\n\tmobile: MobilePortraitIcon,\n};\n\nconst labelsMap = {\n\tdefault: '%s',\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'min-width': __( '%s (%dpx and up)', 'elementor' ),\n\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'max-width': __( '%s (up to %dpx)', 'elementor' ),\n} as const;\n","import { injectIntoResponsive } from '../../locations';\nimport BreakpointsSwitcher from './components/breakpoints-switcher';\n\nexport function init() {\n\tinjectIntoResponsive( {\n\t\tid: 'responsive-breakpoints-switcher',\n\t\tcomponent: BreakpointsSwitcher,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indication.\n\t\t},\n\t} );\n}\n","import { injectIntoTop } from '@elementor/editor';\n\nimport { mainMenu } from '../../locations';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\tmainMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\n\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateUseListenTo as useListenTo,\n\trouteCloseEvent,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\nimport { Portal as BasePortal, type PortalProps } from '@elementor/ui';\n\nexport default function Portal( props: Omit< PortalProps, 'container' > ) {\n\tconst containerRef = useListenTo(\n\t\t[ routeOpenEvent( 'panel/global' ), routeCloseEvent( 'panel/global' ) ],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn <BasePortal container={ containerRef.current } { ...props } />;\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper\n\t\t\tsx={ {\n\t\t\t\tpx: 5,\n\t\t\t\tpy: 4,\n\t\t\t\tborderTop: 1,\n\t\t\t\tborderColor: 'divider',\n\t\t\t} }\n\t\t>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => ( document && ! document.isSaving ? save() : null ) }\n\t\t\t>\n\t\t\t\t{ document?.isSaving ? <CircularProgress /> : __( 'Save Changes', 'elementor' ) }\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.siteSettings, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.siteSettings,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( isActive ) {\n\t\t\t\trunCommand( 'panel/global/close' );\n\t\t\t} else {\n\t\t\t\trunCommand( 'panel/global/open' );\n\t\t\t}\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.structure, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.structure,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'navigator/toggle' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.themeBuilder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'app/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.userPreferences, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/editor-preferences' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.exitToWordpress, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.link,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initResponsive } from './responsive';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitResponsive();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n","import {\n\t__privateListenTo as listenTo,\n\t__privateOpenRoute as openRoute,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n"],"mappings":"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","names":["React","React","React","import_ui","BaseTooltip","React","React","React","import_ui","import_menus","import_editor","React","import_ui","React","import_ui","React","import_ui","React","import_react","import_ui","MenuItem","React","React","React","React","React","import_ui","React","import_icons","import_ui","import_i18n","React","import_icons","import_ui","import_i18n","useMenuItems","useMenuItems","MenuItem","React","import_react","import_ui","MAX_TOOLBAR_ACTIONS","useMenuItems","MenuItem","document","useActiveDocument","BaseAppBar","React","import_editor_documents","import_icons","import_ui","import_i18n","useActiveDocument","useHostDocument","document","useRouteStatus","Tooltip","openRoute","BaseTooltip","import_editor_documents","import_editor_v1_adapters","import_icons","import_i18n","document","useActiveDocument","runCommand","init","React","import_editor_documents","import_editor_v1_adapters","import_icons","import_ui","import_i18n","React","import_ui","useMenuItems","MenuItem","document","useActiveDocument","useActiveDocumentActions","useIsPreviewMode","import_editor_documents","import_icons","import_i18n","document","useActiveDocument","useActiveDocumentActions","import_editor_documents","import_icons","import_i18n","document","useActiveDocument","useActiveDocumentActions","import_editor_documents","import_icons","import_i18n","useActiveDocumentActions","import_editor_documents","import_editor_v1_adapters","import_icons","import_i18n","document","useActiveDocument","runCommand","init","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","openRoute","import_editor_v1_adapters","import_i18n","listenTo","isRouteActive","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","runCommand","init","useActionProps","import_icons","import_i18n","init","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","openRoute","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","runCommand","init","useActionProps","React","import_icons","import_ui","import_i18n","Tooltip","BaseTooltip","init","React","React","import_editor_v1_adapters","import_ui","useListenTo","BasePortal","isRouteActive","React","import_editor_documents","import_ui","import_i18n","PrimaryAction","document","useActiveDocument","useActiveDocumentActions","PrimaryAction","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","runCommand","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","runCommand","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","runCommand","init","useActionProps","import_editor_v1_adapters","import_icons","import_i18n","useActionProps","useRouteStatus","openRoute","init","useActionProps","import_editor_documents","import_icons","import_i18n","init","document","useActiveDocument","init","import_editor_v1_adapters","listenTo","openRoute","init","init"]}
package/dist/index.mjs CHANGED
@@ -247,7 +247,7 @@ var StyledElementorLogo = styled(ElementorLogo, {
247
247
  transform: showMenuIcon && "translateY(-9px) scaleY(0)"
248
248
  },
249
249
  "&:not(:first-of-type)": {
250
- // Emotion automatically change 4 to -4 in RTL moode.
250
+ // Emotion automatically change 4 to -4 in RTL mode.
251
251
  transform: !showMenuIcon && `translateX(${theme.direction === "rtl" ? "4" : "9"}px) scaleX(0.6)`
252
252
  },
253
253
  "&:nth-of-type(2)": {
@@ -950,9 +950,9 @@ function useActionProps4() {
950
950
 
951
951
  // src/extensions/history/index.ts
952
952
  function init7() {
953
- mainMenu.registerToggleAction({
953
+ toolsMenu.registerToggleAction({
954
954
  id: "open-history",
955
- priority: 20,
955
+ priority: 2,
956
956
  useProps: useActionProps4
957
957
  });
958
958
  }
@@ -1217,9 +1217,9 @@ function init10() {
1217
1217
  id: "site-settings-primary-action-portal",
1218
1218
  component: PortalledPrimaryAction
1219
1219
  });
1220
- toolsMenu.registerToggleAction({
1220
+ mainMenu.registerToggleAction({
1221
1221
  id: "toggle-site-settings",
1222
- priority: 2,
1222
+ priority: 20,
1223
1223
  useProps: useActionProps6
1224
1224
  });
1225
1225
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/locations.ts","../src/components/actions/action.tsx","../src/contexts/menu-context.tsx","../src/components/ui/popover-menu-item.tsx","../src/components/ui/toolbar-menu-item.tsx","../src/components/actions/link.tsx","../src/components/actions/toggle-action.tsx","../src/components/ui/toolbar-menu-toggle-item.tsx","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/components/app-bar.tsx","../src/components/locations/main-menu-location.tsx","../src/components/ui/popover-menu.tsx","../src/components/ui/toolbar-logo.tsx","../src/components/locations/page-indication-location.tsx","../src/components/locations/primary-action-location.tsx","../src/components/locations/responsive-location.tsx","../src/components/locations/tools-menu-location.tsx","../src/components/ui/toolbar-menu.tsx","../src/components/ui/toolbar-menu-more.tsx","../src/components/locations/integrations-menu-location.tsx","../src/components/locations/utilities-menu-location.tsx","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-preview/index.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/help/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/history/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/responsive/components/breakpoints-switcher.tsx","../src/extensions/responsive/index.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts","../src/sync/redirect-old-menus.ts","../src/index.ts"],"sourcesContent":["import { createLocation } from '@elementor/locations';\nimport { createMenu } from '@elementor/menus';\n\nimport Action from './components/actions/action';\nimport Link from './components/actions/link';\nimport ToggleAction from './components/actions/toggle-action';\n\nexport const { inject: injectIntoPageIndication, Slot: PageIndicationSlot } = createLocation();\n\nexport const { inject: injectIntoResponsive, Slot: ResponsiveSlot } = createLocation();\n\nexport const { inject: injectIntoPrimaryAction, Slot: PrimaryActionSlot } = createLocation();\n\nconst components = {\n\tAction,\n\tToggleAction,\n\tLink,\n};\n\nexport const mainMenu = createMenu( {\n\tgroups: [ 'exits' ],\n\tcomponents,\n} );\n\nexport const toolsMenu = createMenu( { components } );\n\nexport const utilitiesMenu = createMenu( { components } );\n\nexport const integrationsMenu = createMenu( { components } );\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n};\n\nexport default function Action( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { createContext, type PropsWithChildren, useContext } from 'react';\nimport { type PopupState } from '@elementor/ui';\n\ntype MenuContextValue = {\n\ttype: 'toolbar' | 'popover';\n\tpopupState?: PopupState;\n};\n\nconst MenuContext = createContext< MenuContextValue >( {\n\ttype: 'toolbar',\n} );\n\nexport function MenuContextProvider( { type, popupState, children }: PropsWithChildren< MenuContextValue > ) {\n\treturn <MenuContext.Provider value={ { type, popupState } }>{ children }</MenuContext.Provider>;\n}\n\nexport function useMenuContext() {\n\treturn useContext( MenuContext );\n}\n","import * as React from 'react';\nimport { ArrowUpRightIcon, ChevronRightIcon } from '@elementor/icons';\nimport { ListItemIcon, ListItemText, MenuItem, type MenuItemProps, withDirection } from '@elementor/ui';\n\ntype ExtraProps = {\n\thref?: string;\n\ttarget?: string;\n\ttext?: string;\n\ticon?: JSX.Element;\n\tisGroupParent?: boolean;\n};\n\nexport type PopoverMenuItemProps = MenuItemProps & ExtraProps;\n\nconst DirectionalArrowIcon = withDirection( ArrowUpRightIcon );\nconst DirectionalChevronIcon = withDirection( ChevronRightIcon );\n\nexport default function PopoverMenuItem( {\n\ttext,\n\ticon,\n\tonClick,\n\thref,\n\ttarget,\n\tdisabled,\n\tisGroupParent,\n\t...props\n}: PopoverMenuItemProps ) {\n\tconst isExternalLink = href && target === '_blank';\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...props }\n\t\t\tdisabled={ disabled }\n\t\t\tonClick={ onClick }\n\t\t\tcomponent={ href ? 'a' : 'div' }\n\t\t\thref={ href }\n\t\t\ttarget={ target }\n\t\t\tsx={ {\n\t\t\t\t'&:hover': {\n\t\t\t\t\tcolor: 'text.primary', // Overriding global CSS from the editor.\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t<ListItemIcon>{ icon }</ListItemIcon>\n\t\t\t<ListItemText primary={ text } />\n\t\t\t{ isExternalLink && <DirectionalArrowIcon /> }\n\t\t\t{ isGroupParent && <DirectionalChevronIcon /> }\n\t\t</MenuItem>\n\t);\n}\n","import * as React from 'react';\nimport { Box, IconButton, type IconButtonProps, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\n\nexport type ToolbarMenuItemProps = IconButtonProps & {\n\ttitle?: string;\n\tselected?: boolean;\n};\n\nexport default function ToolbarMenuItem( { title, ...props }: ToolbarMenuItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<IconButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tcolor: 'text.primary',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\thref?: string;\n\tvisible?: boolean;\n\ttarget?: string;\n};\n\nexport default function Link( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuToggleItem from '../ui/toolbar-menu-toggle-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tselected?: boolean;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n\tvalue?: string;\n};\n\nexport default function ToggleAction( { icon: Icon, title, value, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuToggleItem value={ value || title } title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuToggleItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, type ToggleButtonProps, Tooltip } from '@elementor/ui';\n\nexport type ToolbarMenuToggleItemProps = Omit< ToggleButtonProps, 'onChange' > & {\n\ttitle?: string;\n\tonClick?: () => void;\n};\n\nexport default function ToolbarMenuToggleItem( { title, onClick, ...props }: ToolbarMenuToggleItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tonChange={ onClick }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n","import { createMenu } from '@elementor/menus';\n\nimport Action from '../../components/actions/action';\nimport Link from '../../components/actions/link';\nimport ToggleAction from '../../components/actions/toggle-action';\n\nexport const documentOptionsMenu = createMenu( {\n\tgroups: [ 'save' ],\n\tcomponents: {\n\t\tAction,\n\t\tToggleAction,\n\t\tLink,\n\t},\n} );\n","import { injectIntoTop } from '@elementor/editor';\n\nimport AppBar from './components/app-bar';\nimport { init as initExtensions } from './extensions';\nimport redirectOldMenus from './sync/redirect-old-menus';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { AppBar as BaseAppBar, Box, Divider, Grid, ThemeProvider, Toolbar } from '@elementor/ui';\n\nimport MainMenuLocation from './locations/main-menu-location';\nimport PageIndicationLocation from './locations/page-indication-location';\nimport PrimaryActionLocation from './locations/primary-action-location';\nimport ResponsiveLocation from './locations/responsive-location';\nimport ToolsMenuLocation from './locations/tools-menu-location';\nimport UtilitiesMenuLocation from './locations/utilities-menu-location';\nimport ToolbarMenu from './ui/toolbar-menu';\n\nexport default function AppBar() {\n\tconst document = useActiveDocument();\n\treturn (\n\t\t<ThemeProvider colorScheme=\"dark\">\n\t\t\t<BaseAppBar position=\"sticky\">\n\t\t\t\t<Toolbar disableGutters variant=\"dense\">\n\t\t\t\t\t<Box display=\"grid\" gridTemplateColumns=\"repeat(3, 1fr)\" flexGrow={ 1 }>\n\t\t\t\t\t\t<Grid container>\n\t\t\t\t\t\t\t<MainMenuLocation />\n\t\t\t\t\t\t\t{ document?.permissions?.allowAddingWidgets && <ToolsMenuLocation /> }\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"center\">\n\t\t\t\t\t\t\t<ToolbarMenu spacing={ 1.5 }>\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<PageIndicationLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<ResponsiveLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t</ToolbarMenu>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"flex-end\">\n\t\t\t\t\t\t\t<UtilitiesMenuLocation />\n\t\t\t\t\t\t\t<PrimaryActionLocation />\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t</Box>\n\t\t\t\t</Toolbar>\n\t\t\t</BaseAppBar>\n\t\t</ThemeProvider>\n\t);\n}\n","import * as React from 'react';\nimport { bindMenu, bindTrigger, Divider, Stack, usePopupState } from '@elementor/ui';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarLogo from '../ui/toolbar-logo';\n\nconst { useMenuItems } = mainMenu;\n\nexport default function MainMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-main-menu',\n\t} );\n\n\tconst toolbarLogoProps = bindTrigger( popupState );\n\n\tconst onToolbarClick: React.MouseEventHandler = ( e ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.elementorLogoDropdown, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\ttrigger: config.triggers.dropdownClick,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t} );\n\t\t}\n\n\t\ttoolbarLogoProps.onClick( e );\n\t};\n\n\treturn (\n\t\t<Stack sx={ { paddingInlineStart: 3 } } direction=\"row\" alignItems=\"center\">\n\t\t\t<ToolbarLogo { ...toolbarLogoProps } onClick={ onToolbarClick } selected={ popupState.isOpen } />\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) } marginThreshold={ 8 }>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t\t{ menuItems.exits.length > 0 && <Divider /> }\n\t\t\t\t{ menuItems.exits.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</Stack>\n\t);\n}\n","import * as React from 'react';\nimport { Menu, type MenuProps, type PopupState } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type PopoverMenuProps = MenuProps & {\n\tpopupState?: PopupState;\n};\n\nexport default function PopoverMenu( { children, popupState, ...props }: PopoverMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'popover' } popupState={ popupState }>\n\t\t\t<Menu\n\t\t\t\tPaperProps={ {\n\t\t\t\t\tsx: { mt: 1.5 },\n\t\t\t\t} }\n\t\t\t\t{ ...props }\n\t\t\t\tMenuListProps={ {\n\t\t\t\t\tcomponent: 'div',\n\t\t\t\t\tdense: true,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</Menu>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { useState } from 'react';\nimport { styled, SvgIcon, type SvgIconProps, ToggleButton, type ToggleButtonProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\ninterface StyledElementorLogoProps extends SvgIconProps {\n\tshowMenuIcon?: boolean;\n}\n\ntype ToolbarLogoProps = Omit< ToggleButtonProps, 'value' >;\n\nconst ElementorLogo = ( props: SvgIconProps ) => {\n\treturn (\n\t\t<SvgIcon viewBox=\"0 0 32 32\" { ...props }>\n\t\t\t<g>\n\t\t\t\t<circle cx=\"16\" cy=\"16\" r=\"16\" />\n\t\t\t\t<path d=\"M11.7 9H9V22.3H11.7V9Z\" />\n\t\t\t\t<path d=\"M22.4 9H9V11.7H22.4V9Z\" />\n\t\t\t\t<path d=\"M22.4 14.4004H9V17.1004H22.4V14.4004Z\" />\n\t\t\t\t<path d=\"M22.4 19.6992H9V22.3992H22.4V19.6992Z\" />\n\t\t\t</g>\n\t\t</SvgIcon>\n\t);\n};\n\nconst StyledToggleButton = styled( ToggleButton )( ( { theme } ) => ( {\n\tpadding: 0,\n\tborder: 0,\n\tcolor: theme.palette.text.primary,\n\t'&.MuiToggleButton-root:hover': {\n\t\tbackgroundColor: 'initial',\n\t},\n\t'&.MuiToggleButton-root.Mui-selected': {\n\t\tbackgroundColor: 'initial',\n\t},\n} ) );\n\nconst StyledElementorLogo = styled( ElementorLogo, {\n\tshouldForwardProp: ( prop ) => prop !== 'showMenuIcon',\n} )< StyledElementorLogoProps >( ( { theme, showMenuIcon } ) => ( {\n\t'& path': {\n\t\tfill: theme.palette.background.default,\n\t\ttransition: 'all 0.2s linear',\n\t\ttransformOrigin: 'bottom left',\n\t\t'&:first-of-type': {\n\t\t\ttransitionDelay: ! showMenuIcon && '0.2s',\n\t\t\ttransform: showMenuIcon && 'translateY(-9px) scaleY(0)',\n\t\t},\n\t\t'&:not(:first-of-type)': {\n\t\t\t// Emotion automatically change 4 to -4 in RTL moode.\n\t\t\ttransform: ! showMenuIcon && `translateX(${ theme.direction === 'rtl' ? '4' : '9' }px) scaleX(0.6)`,\n\t\t},\n\t\t'&:nth-of-type(2)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0' : '0.2s',\n\t\t},\n\t\t'&:nth-of-type(3)': {\n\t\t\ttransitionDelay: '0.1s',\n\t\t},\n\t\t'&:nth-of-type(4)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0.2s' : '0',\n\t\t},\n\t},\n} ) );\n\nexport default function ToolbarLogo( props: ToolbarLogoProps ) {\n\tconst [ isHoverState, setIsHoverState ] = useState( false );\n\tconst showMenuIcon = props.selected || isHoverState;\n\n\treturn (\n\t\t<StyledToggleButton\n\t\t\t{ ...props }\n\t\t\tvalue=\"selected\"\n\t\t\tsize=\"large\"\n\t\t\tonMouseEnter={ () => setIsHoverState( true ) }\n\t\t\tonMouseLeave={ () => setIsHoverState( false ) }\n\t\t>\n\t\t\t<StyledElementorLogo\n\t\t\t\tfontSize=\"large\"\n\t\t\t\tshowMenuIcon={ showMenuIcon }\n\t\t\t\ttitleAccess={ __( 'Elementor Logo', 'elementor' ) }\n\t\t\t/>\n\t\t</StyledToggleButton>\n\t);\n}\n","import * as React from 'react';\n\nimport { PageIndicationSlot } from '../../locations';\n\nexport default function PageIndicationLocation() {\n\treturn <PageIndicationSlot />;\n}\n","import * as React from 'react';\n\nimport { PrimaryActionSlot } from '../../locations';\n\nexport default function PrimaryActionLocation() {\n\treturn <PrimaryActionSlot />;\n}\n","import * as React from 'react';\n\nimport { ResponsiveSlot } from '../../locations';\n\nexport default function ResponsiveLocation() {\n\treturn <ResponsiveSlot />;\n}\n","import * as React from 'react';\n\nimport { toolsMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\nimport IntegrationsMenuLocation from './integrations-menu-location';\n\nconst MAX_TOOLBAR_ACTIONS = 5;\n\nconst { useMenuItems } = toolsMenu;\n\nexport default function ToolsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst toolbarMenuItems = menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS );\n\tconst popoverMenuItems = menuItems.default.slice( MAX_TOOLBAR_ACTIONS );\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t<MenuItem key={ id } />\n\t\t\t) ) }\n\t\t\t<IntegrationsMenuLocation />\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-tools-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport { Stack, type StackProps } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type ToolbarMenuProps = StackProps;\n\nexport default function ToolbarMenu( { children, ...props }: ToolbarMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'toolbar' }>\n\t\t\t<Stack sx={ { px: 1.5 } } spacing={ 1.5 } direction=\"row\" alignItems=\"center\" { ...props }>\n\t\t\t\t{ children }\n\t\t\t</Stack>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { type PropsWithChildren } from 'react';\nimport { DotsVerticalIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport PopoverMenu from './popover-menu';\nimport ToolbarMenuItem from './toolbar-menu-item';\n\nexport type ToolbarMenuMoreProps = PropsWithChildren< {\n\tid: string;\n} >;\n\nexport default function ToolbarMenuMore( { children, id }: ToolbarMenuMoreProps ) {\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: id,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'More', 'elementor' ) }>\n\t\t\t\t<DotsVerticalIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) }>\n\t\t\t\t{ children }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { PlugIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { integrationsMenu } from '../../locations';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nconst { useMenuItems } = integrationsMenu;\n\nexport default function IntegrationsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-integrations',\n\t} );\n\n\tif ( menuItems.default.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'Integrations', 'elementor' ) }>\n\t\t\t\t<PlugIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu\n\t\t\t\tonClick={ popupState.close }\n\t\t\t\t{ ...bindMenu( popupState ) }\n\t\t\t\tmarginThreshold={ 8 }\n\t\t\t\topen={ popupState.isOpen }\n\t\t\t>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem: IntegrationsMenuItem, id } ) => (\n\t\t\t\t\t<IntegrationsMenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { Divider } from '@elementor/ui';\n\nimport { utilitiesMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\n\nconst MAX_TOOLBAR_ACTIONS = 4;\n\nconst { useMenuItems } = utilitiesMenu;\n\nexport default function UtilitiesMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\t// If there are more than 5 items, show the first 4 inline and the rest in the popover.\n\t// Otherwise, display all items inline.\n\tconst shouldUsePopover = menuItems.default.length > MAX_TOOLBAR_ACTIONS + 1;\n\n\tconst toolbarMenuItems = shouldUsePopover ? menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS ) : menuItems.default;\n\tconst popoverMenuItems = shouldUsePopover ? menuItems.default.slice( MAX_TOOLBAR_ACTIONS ) : [];\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id }, index ) => (\n\t\t\t\t<Fragment key={ id }>\n\t\t\t\t\t{ index === 0 && <Divider orientation=\"vertical\" /> }\n\t\t\t\t\t<MenuItem />\n\t\t\t\t</Fragment>\n\t\t\t) ) }\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-utilities-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useHostDocument as useHostDocument,\n} from '@elementor/editor-documents';\nimport {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit' ? activeDocument : hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' ).replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.documentSettings, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'document-settings' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\topenRoute( 'panel/page-settings/settings' );\n\t\t\t\t\t} }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 1.7,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import { injectIntoPageIndication } from '../../locations';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.previewPage, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'preview-page' ],\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( document ) {\n\t\t\t\trunCommand( 'editor/documents/preview', {\n\t\t\t\t\tid: document.id,\n\t\t\t\t\tforce: true,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n\ttype Document,\n} from '@elementor/editor-documents';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\nimport PrimaryActionMenu from './primary-action-menu';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.publishButton, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'publish-button' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.mainCta,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( ! document.isSaving ) {\n\t\t\t\t\t\t\tsave();\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish ? __( 'Publish', 'elementor' ) : __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\n\nimport { default as PopoverMenu, type PopoverMenuProps } from '../../../components/ui/popover-menu';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers for empty menu items, due to a limitation in the locations' mechanism.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root {\n\t\t& > .MuiDivider-root {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > *:not( .MuiDivider-root ):not( :last-of-type ) + .MuiDivider-root {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\n\t\t\t{ saveActions.length > 0 && defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { LinkIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentCopyAndShareProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { copyAndShare } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: LinkIcon,\n\t\ttitle: __( 'Copy and Share', 'elementor' ),\n\t\tonClick: copyAndShare,\n\t\tdisabled:\n\t\t\t! document || document.isSaving || document.isSavingDraft || ! ( 'publish' === document.status.value ),\n\t\tvisible: document?.permissions?.showCopyAndShare,\n\t};\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { FolderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () =>\n\t\t\tdocument?.id &&\n\t\t\trunCommand( 'editor/documents/view', {\n\t\t\t\tid: document.id,\n\t\t\t} ),\n\t};\n}\n","import { injectIntoPrimaryAction } from '../../locations';\nimport PrimaryAction from './components/primary-action';\nimport useDocumentCopyAndShareProps from './hooks/use-document-copy-and-share-props';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport { documentOptionsMenu } from './locations';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20,\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-copy-and-share',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentCopyAndShareProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-view-page',\n\t\tpriority: 50,\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.widgetPanel, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'widget-panel' ],\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/elements/categories' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateListenTo as listenTo,\n\trouteOpenEvent,\n\tv1ReadyEvent,\n} from '@elementor/editor-v1-adapters';\nimport { __ } from '@wordpress/i18n';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t};\n\t\t};\n\t};\n};\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo( routeOpenEvent( 'panel/elements' ), () => {\n\t\tsetPanelTitle( panelTitle );\n\t\tsetTabTitle( tabTitle );\n\t} );\n\n\tlistenTo( v1ReadyEvent(), () => {\n\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t} );\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\nimport syncPanelTitle from './sync/sync-panel-title';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SearchIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.finder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.finder,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'finder/toggle' );\n\t\t},\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 15, // Before Preview.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HelpIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { utilitiesMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 25, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.help, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.help,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.history, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/history/actions' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.keyboardShortcuts, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'shortcuts/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\ttype BreakpointId,\n\tuseActivateBreakpoint,\n\tuseActiveBreakpoint,\n\tuseBreakpoints,\n} from '@elementor/editor-responsive';\nimport {\n\tDesktopIcon,\n\tLaptopIcon,\n\tMobileLandscapeIcon,\n\tMobilePortraitIcon,\n\tTabletLandscapeIcon,\n\tTabletPortraitIcon,\n\tWidescreenIcon,\n} from '@elementor/icons';\nimport { Tab, Tabs, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function BreakpointsSwitcher() {\n\tconst breakpoints = useBreakpoints();\n\tconst activeBreakpoint = useActiveBreakpoint();\n\tconst activateBreakpoint = useActivateBreakpoint();\n\n\tif ( ! breakpoints.length || ! activeBreakpoint ) {\n\t\treturn null;\n\t}\n\n\tconst onChange = ( _: unknown, value: BreakpointId ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.responsiveControls, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.responsiveControls,\n\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\tmode: value,\n\t\t\t} );\n\t\t}\n\n\t\tactivateBreakpoint( value );\n\t};\n\n\treturn (\n\t\t<Tabs\n\t\t\ttextColor=\"inherit\"\n\t\t\tindicatorColor=\"secondary\"\n\t\t\tvalue={ activeBreakpoint }\n\t\t\tonChange={ onChange }\n\t\t\taria-label={ __( 'Switch Device', 'elementor' ) }\n\t\t\tsx={ {\n\t\t\t\t'& .MuiTabs-indicator': {\n\t\t\t\t\tbackgroundColor: 'text.primary',\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t{ breakpoints.map( ( { id, label, type, width } ) => {\n\t\t\t\tconst Icon = iconsMap[ id ];\n\n\t\t\t\tconst title = labelsMap[ type || 'default' ]\n\t\t\t\t\t.replace( '%s', label )\n\t\t\t\t\t.replace( '%d', width?.toString() || '' );\n\n\t\t\t\treturn (\n\t\t\t\t\t<Tab\n\t\t\t\t\t\tvalue={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\taria-label={ title }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<Tooltip title={ title }>\n\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsx={ { minWidth: 'auto' } }\n\t\t\t\t\t\tdata-testid={ `switch-device-to-${ id }` }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</Tabs>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2.5,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nconst iconsMap = {\n\twidescreen: WidescreenIcon,\n\tdesktop: DesktopIcon,\n\tlaptop: LaptopIcon,\n\ttablet_extra: TabletLandscapeIcon,\n\ttablet: TabletPortraitIcon,\n\tmobile_extra: MobileLandscapeIcon,\n\tmobile: MobilePortraitIcon,\n};\n\nconst labelsMap = {\n\tdefault: '%s',\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'min-width': __( '%s (%dpx and up)', 'elementor' ),\n\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'max-width': __( '%s (up to %dpx)', 'elementor' ),\n} as const;\n","import { injectIntoResponsive } from '../../locations';\nimport BreakpointsSwitcher from './components/breakpoints-switcher';\n\nexport function init() {\n\tinjectIntoResponsive( {\n\t\tid: 'responsive-breakpoints-switcher',\n\t\tcomponent: BreakpointsSwitcher,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indication.\n\t\t},\n\t} );\n}\n","import { injectIntoTop } from '@elementor/editor';\n\nimport { toolsMenu } from '../../locations';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\n\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateUseListenTo as useListenTo,\n\trouteCloseEvent,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\nimport { Portal as BasePortal, type PortalProps } from '@elementor/ui';\n\nexport default function Portal( props: Omit< PortalProps, 'container' > ) {\n\tconst containerRef = useListenTo(\n\t\t[ routeOpenEvent( 'panel/global' ), routeCloseEvent( 'panel/global' ) ],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn <BasePortal container={ containerRef.current } { ...props } />;\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper\n\t\t\tsx={ {\n\t\t\t\tpx: 5,\n\t\t\t\tpy: 4,\n\t\t\t\tborderTop: 1,\n\t\t\t\tborderColor: 'divider',\n\t\t\t} }\n\t\t>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => ( document && ! document.isSaving ? save() : null ) }\n\t\t\t>\n\t\t\t\t{ document?.isSaving ? <CircularProgress /> : __( 'Save Changes', 'elementor' ) }\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.siteSettings, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.siteSettings,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( isActive ) {\n\t\t\t\trunCommand( 'panel/global/close' );\n\t\t\t} else {\n\t\t\t\trunCommand( 'panel/global/open' );\n\t\t\t}\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.structure, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.structure,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'navigator/toggle' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.themeBuilder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'app/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.userPreferences, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/editor-preferences' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.exitToWordpress, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.link,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initResponsive } from './responsive';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitResponsive();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n","import {\n\t__privateListenTo as listenTo,\n\t__privateOpenRoute as openRoute,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n","export {\n\tmainMenu,\n\ttoolsMenu,\n\tutilitiesMenu,\n\tintegrationsMenu,\n\tinjectIntoPageIndication,\n\tinjectIntoResponsive,\n\tinjectIntoPrimaryAction,\n} from './locations';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nexport type { ActionProps, LinkProps, ToggleActionProps } from './types';\n\nimport init from './init';\n\ninit();\n"],"mappings":"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","names":["React","React","React","React","React","React","Box","Tooltip","createMenu","createMenu","injectIntoTop","React","Box","Divider","React","React","React","ToggleButton","MenuItem","React","React","React","React","React","Stack","Stack","React","bindMenu","bindTrigger","usePopupState","__","usePopupState","bindTrigger","__","bindMenu","React","bindMenu","bindTrigger","usePopupState","__","useMenuItems","usePopupState","bindTrigger","__","bindMenu","useMenuItems","MenuItem","React","Fragment","Divider","MAX_TOOLBAR_ACTIONS","useMenuItems","MenuItem","Fragment","Divider","document","Box","Divider","React","useActiveDocument","Box","ToggleButton","BaseTooltip","__","document","Tooltip","useActiveDocument","__","document","init","React","useActiveDocument","bindMenu","bindTrigger","Box","Tooltip","usePopupState","__","React","Divider","styled","useMenuItems","styled","MenuItem","Divider","document","useActiveDocument","usePopupState","Tooltip","__","Box","bindTrigger","bindMenu","useActiveDocument","useActiveDocumentActions","__","document","useActiveDocument","useActiveDocumentActions","__","document","useActiveDocumentActions","__","useActiveDocument","runCommand","EyeIcon","__","document","init","openRoute","useRouteStatus","__","useActionProps","__","init","useActionProps","runCommand","useRouteStatus","__","useActionProps","init","useActionProps","__","init","__","openRoute","useRouteStatus","__","useActionProps","init","useActionProps","runCommand","__","useActionProps","init","useActionProps","React","BaseTooltip","__","Tooltip","init","React","React","isRouteActive","routeOpenEvent","React","useActiveDocument","useActiveDocumentActions","Button","CircularProgress","__","PrimaryAction","document","PrimaryAction","runCommand","useRouteStatus","__","useActionProps","init","useActionProps","runCommand","useRouteStatus","__","useActionProps","init","useActionProps","runCommand","__","useActionProps","init","useActionProps","openRoute","useRouteStatus","__","useActionProps","init","useActionProps","useActiveDocument","__","init","document","useActiveDocument","__","init","listenTo","openRoute","routeOpenEvent","init","injectIntoTop","init"]}
1
+ {"version":3,"sources":["../src/locations.ts","../src/components/actions/action.tsx","../src/contexts/menu-context.tsx","../src/components/ui/popover-menu-item.tsx","../src/components/ui/toolbar-menu-item.tsx","../src/components/actions/link.tsx","../src/components/actions/toggle-action.tsx","../src/components/ui/toolbar-menu-toggle-item.tsx","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/components/app-bar.tsx","../src/components/locations/main-menu-location.tsx","../src/components/ui/popover-menu.tsx","../src/components/ui/toolbar-logo.tsx","../src/components/locations/page-indication-location.tsx","../src/components/locations/primary-action-location.tsx","../src/components/locations/responsive-location.tsx","../src/components/locations/tools-menu-location.tsx","../src/components/ui/toolbar-menu.tsx","../src/components/ui/toolbar-menu-more.tsx","../src/components/locations/integrations-menu-location.tsx","../src/components/locations/utilities-menu-location.tsx","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-preview/index.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/help/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/history/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/responsive/components/breakpoints-switcher.tsx","../src/extensions/responsive/index.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts","../src/sync/redirect-old-menus.ts","../src/index.ts"],"sourcesContent":["import { createLocation } from '@elementor/locations';\nimport { createMenu } from '@elementor/menus';\n\nimport Action from './components/actions/action';\nimport Link from './components/actions/link';\nimport ToggleAction from './components/actions/toggle-action';\n\nexport const { inject: injectIntoPageIndication, Slot: PageIndicationSlot } = createLocation();\n\nexport const { inject: injectIntoResponsive, Slot: ResponsiveSlot } = createLocation();\n\nexport const { inject: injectIntoPrimaryAction, Slot: PrimaryActionSlot } = createLocation();\n\nconst components = {\n\tAction,\n\tToggleAction,\n\tLink,\n};\n\nexport const mainMenu = createMenu( {\n\tgroups: [ 'exits' ],\n\tcomponents,\n} );\n\nexport const toolsMenu = createMenu( { components } );\n\nexport const utilitiesMenu = createMenu( { components } );\n\nexport const integrationsMenu = createMenu( { components } );\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n};\n\nexport default function Action( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { createContext, type PropsWithChildren, useContext } from 'react';\nimport { type PopupState } from '@elementor/ui';\n\ntype MenuContextValue = {\n\ttype: 'toolbar' | 'popover';\n\tpopupState?: PopupState;\n};\n\nconst MenuContext = createContext< MenuContextValue >( {\n\ttype: 'toolbar',\n} );\n\nexport function MenuContextProvider( { type, popupState, children }: PropsWithChildren< MenuContextValue > ) {\n\treturn <MenuContext.Provider value={ { type, popupState } }>{ children }</MenuContext.Provider>;\n}\n\nexport function useMenuContext() {\n\treturn useContext( MenuContext );\n}\n","import * as React from 'react';\nimport { ArrowUpRightIcon, ChevronRightIcon } from '@elementor/icons';\nimport { ListItemIcon, ListItemText, MenuItem, type MenuItemProps, withDirection } from '@elementor/ui';\n\ntype ExtraProps = {\n\thref?: string;\n\ttarget?: string;\n\ttext?: string;\n\ticon?: JSX.Element;\n\tisGroupParent?: boolean;\n};\n\nexport type PopoverMenuItemProps = MenuItemProps & ExtraProps;\n\nconst DirectionalArrowIcon = withDirection( ArrowUpRightIcon );\nconst DirectionalChevronIcon = withDirection( ChevronRightIcon );\n\nexport default function PopoverMenuItem( {\n\ttext,\n\ticon,\n\tonClick,\n\thref,\n\ttarget,\n\tdisabled,\n\tisGroupParent,\n\t...props\n}: PopoverMenuItemProps ) {\n\tconst isExternalLink = href && target === '_blank';\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...props }\n\t\t\tdisabled={ disabled }\n\t\t\tonClick={ onClick }\n\t\t\tcomponent={ href ? 'a' : 'div' }\n\t\t\thref={ href }\n\t\t\ttarget={ target }\n\t\t\tsx={ {\n\t\t\t\t'&:hover': {\n\t\t\t\t\tcolor: 'text.primary', // Overriding global CSS from the editor.\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t<ListItemIcon>{ icon }</ListItemIcon>\n\t\t\t<ListItemText primary={ text } />\n\t\t\t{ isExternalLink && <DirectionalArrowIcon /> }\n\t\t\t{ isGroupParent && <DirectionalChevronIcon /> }\n\t\t</MenuItem>\n\t);\n}\n","import * as React from 'react';\nimport { Box, IconButton, type IconButtonProps, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\n\nexport type ToolbarMenuItemProps = IconButtonProps & {\n\ttitle?: string;\n\tselected?: boolean;\n};\n\nexport default function ToolbarMenuItem( { title, ...props }: ToolbarMenuItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<IconButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tcolor: 'text.primary',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\thref?: string;\n\tvisible?: boolean;\n\ttarget?: string;\n};\n\nexport default function Link( { icon: Icon, title, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuItem title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { type ElementType } from 'react';\n\nimport { useMenuContext } from '../../contexts/menu-context';\nimport PopoverMenuItem from '../ui/popover-menu-item';\nimport ToolbarMenuToggleItem from '../ui/toolbar-menu-toggle-item';\n\nexport type Props = {\n\ttitle: string;\n\ticon: ElementType;\n\tselected?: boolean;\n\tdisabled?: boolean;\n\tvisible?: boolean;\n\tonClick?: () => void;\n\tvalue?: string;\n};\n\nexport default function ToggleAction( { icon: Icon, title, value, visible = true, ...props }: Props ) {\n\tconst { type } = useMenuContext();\n\n\tif ( ! visible ) {\n\t\treturn null;\n\t}\n\n\treturn type === 'toolbar' ? (\n\t\t<ToolbarMenuToggleItem value={ value || title } title={ title } { ...props }>\n\t\t\t<Icon />\n\t\t</ToolbarMenuToggleItem>\n\t) : (\n\t\t<PopoverMenuItem { ...props } text={ title } icon={ <Icon /> } />\n\t);\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, type ToggleButtonProps, Tooltip } from '@elementor/ui';\n\nexport type ToolbarMenuToggleItemProps = Omit< ToggleButtonProps, 'onChange' > & {\n\ttitle?: string;\n\tonClick?: () => void;\n};\n\nexport default function ToolbarMenuToggleItem( { title, onClick, ...props }: ToolbarMenuToggleItemProps ) {\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tonChange={ onClick }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'& svg': {\n\t\t\t\t\t\t\tfontSize: '1.25rem',\n\t\t\t\t\t\t\theight: '1em',\n\t\t\t\t\t\t\twidth: '1em',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n","import { createMenu } from '@elementor/menus';\n\nimport Action from '../../components/actions/action';\nimport Link from '../../components/actions/link';\nimport ToggleAction from '../../components/actions/toggle-action';\n\nexport const documentOptionsMenu = createMenu( {\n\tgroups: [ 'save' ],\n\tcomponents: {\n\t\tAction,\n\t\tToggleAction,\n\t\tLink,\n\t},\n} );\n","import { injectIntoTop } from '@elementor/editor';\n\nimport AppBar from './components/app-bar';\nimport { init as initExtensions } from './extensions';\nimport redirectOldMenus from './sync/redirect-old-menus';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { AppBar as BaseAppBar, Box, Divider, Grid, ThemeProvider, Toolbar } from '@elementor/ui';\n\nimport MainMenuLocation from './locations/main-menu-location';\nimport PageIndicationLocation from './locations/page-indication-location';\nimport PrimaryActionLocation from './locations/primary-action-location';\nimport ResponsiveLocation from './locations/responsive-location';\nimport ToolsMenuLocation from './locations/tools-menu-location';\nimport UtilitiesMenuLocation from './locations/utilities-menu-location';\nimport ToolbarMenu from './ui/toolbar-menu';\n\nexport default function AppBar() {\n\tconst document = useActiveDocument();\n\treturn (\n\t\t<ThemeProvider colorScheme=\"dark\">\n\t\t\t<BaseAppBar position=\"sticky\">\n\t\t\t\t<Toolbar disableGutters variant=\"dense\">\n\t\t\t\t\t<Box display=\"grid\" gridTemplateColumns=\"repeat(3, 1fr)\" flexGrow={ 1 }>\n\t\t\t\t\t\t<Grid container>\n\t\t\t\t\t\t\t<MainMenuLocation />\n\t\t\t\t\t\t\t{ document?.permissions?.allowAddingWidgets && <ToolsMenuLocation /> }\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"center\">\n\t\t\t\t\t\t\t<ToolbarMenu spacing={ 1.5 }>\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<PageIndicationLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t\t<ResponsiveLocation />\n\t\t\t\t\t\t\t\t<Divider orientation=\"vertical\" />\n\t\t\t\t\t\t\t</ToolbarMenu>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid container justifyContent=\"flex-end\">\n\t\t\t\t\t\t\t<UtilitiesMenuLocation />\n\t\t\t\t\t\t\t<PrimaryActionLocation />\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t</Box>\n\t\t\t\t</Toolbar>\n\t\t\t</BaseAppBar>\n\t\t</ThemeProvider>\n\t);\n}\n","import * as React from 'react';\nimport { bindMenu, bindTrigger, Divider, Stack, usePopupState } from '@elementor/ui';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarLogo from '../ui/toolbar-logo';\n\nconst { useMenuItems } = mainMenu;\n\nexport default function MainMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-main-menu',\n\t} );\n\n\tconst toolbarLogoProps = bindTrigger( popupState );\n\n\tconst onToolbarClick: React.MouseEventHandler = ( e ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.elementorLogoDropdown, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\ttrigger: config.triggers.dropdownClick,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t} );\n\t\t}\n\n\t\ttoolbarLogoProps.onClick( e );\n\t};\n\n\treturn (\n\t\t<Stack sx={ { paddingInlineStart: 3 } } direction=\"row\" alignItems=\"center\">\n\t\t\t<ToolbarLogo { ...toolbarLogoProps } onClick={ onToolbarClick } selected={ popupState.isOpen } />\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) } marginThreshold={ 8 }>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t\t{ menuItems.exits.length > 0 && <Divider /> }\n\t\t\t\t{ menuItems.exits.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</Stack>\n\t);\n}\n","import * as React from 'react';\nimport { Menu, type MenuProps, type PopupState } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type PopoverMenuProps = MenuProps & {\n\tpopupState?: PopupState;\n};\n\nexport default function PopoverMenu( { children, popupState, ...props }: PopoverMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'popover' } popupState={ popupState }>\n\t\t\t<Menu\n\t\t\t\tPaperProps={ {\n\t\t\t\t\tsx: { mt: 1.5 },\n\t\t\t\t} }\n\t\t\t\t{ ...props }\n\t\t\t\tMenuListProps={ {\n\t\t\t\t\tcomponent: 'div',\n\t\t\t\t\tdense: true,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</Menu>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { useState } from 'react';\nimport { styled, SvgIcon, type SvgIconProps, ToggleButton, type ToggleButtonProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\ninterface StyledElementorLogoProps extends SvgIconProps {\n\tshowMenuIcon?: boolean;\n}\n\ntype ToolbarLogoProps = Omit< ToggleButtonProps, 'value' >;\n\nconst ElementorLogo = ( props: SvgIconProps ) => {\n\treturn (\n\t\t<SvgIcon viewBox=\"0 0 32 32\" { ...props }>\n\t\t\t<g>\n\t\t\t\t<circle cx=\"16\" cy=\"16\" r=\"16\" />\n\t\t\t\t<path d=\"M11.7 9H9V22.3H11.7V9Z\" />\n\t\t\t\t<path d=\"M22.4 9H9V11.7H22.4V9Z\" />\n\t\t\t\t<path d=\"M22.4 14.4004H9V17.1004H22.4V14.4004Z\" />\n\t\t\t\t<path d=\"M22.4 19.6992H9V22.3992H22.4V19.6992Z\" />\n\t\t\t</g>\n\t\t</SvgIcon>\n\t);\n};\n\nconst StyledToggleButton = styled( ToggleButton )( ( { theme } ) => ( {\n\tpadding: 0,\n\tborder: 0,\n\tcolor: theme.palette.text.primary,\n\t'&.MuiToggleButton-root:hover': {\n\t\tbackgroundColor: 'initial',\n\t},\n\t'&.MuiToggleButton-root.Mui-selected': {\n\t\tbackgroundColor: 'initial',\n\t},\n} ) );\n\nconst StyledElementorLogo = styled( ElementorLogo, {\n\tshouldForwardProp: ( prop ) => prop !== 'showMenuIcon',\n} )< StyledElementorLogoProps >( ( { theme, showMenuIcon } ) => ( {\n\t'& path': {\n\t\tfill: theme.palette.background.default,\n\t\ttransition: 'all 0.2s linear',\n\t\ttransformOrigin: 'bottom left',\n\t\t'&:first-of-type': {\n\t\t\ttransitionDelay: ! showMenuIcon && '0.2s',\n\t\t\ttransform: showMenuIcon && 'translateY(-9px) scaleY(0)',\n\t\t},\n\t\t'&:not(:first-of-type)': {\n\t\t\t// Emotion automatically change 4 to -4 in RTL mode.\n\t\t\ttransform: ! showMenuIcon && `translateX(${ theme.direction === 'rtl' ? '4' : '9' }px) scaleX(0.6)`,\n\t\t},\n\t\t'&:nth-of-type(2)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0' : '0.2s',\n\t\t},\n\t\t'&:nth-of-type(3)': {\n\t\t\ttransitionDelay: '0.1s',\n\t\t},\n\t\t'&:nth-of-type(4)': {\n\t\t\ttransitionDelay: showMenuIcon ? '0.2s' : '0',\n\t\t},\n\t},\n} ) );\n\nexport default function ToolbarLogo( props: ToolbarLogoProps ) {\n\tconst [ isHoverState, setIsHoverState ] = useState( false );\n\tconst showMenuIcon = props.selected || isHoverState;\n\n\treturn (\n\t\t<StyledToggleButton\n\t\t\t{ ...props }\n\t\t\tvalue=\"selected\"\n\t\t\tsize=\"large\"\n\t\t\tonMouseEnter={ () => setIsHoverState( true ) }\n\t\t\tonMouseLeave={ () => setIsHoverState( false ) }\n\t\t>\n\t\t\t<StyledElementorLogo\n\t\t\t\tfontSize=\"large\"\n\t\t\t\tshowMenuIcon={ showMenuIcon }\n\t\t\t\ttitleAccess={ __( 'Elementor Logo', 'elementor' ) }\n\t\t\t/>\n\t\t</StyledToggleButton>\n\t);\n}\n","import * as React from 'react';\n\nimport { PageIndicationSlot } from '../../locations';\n\nexport default function PageIndicationLocation() {\n\treturn <PageIndicationSlot />;\n}\n","import * as React from 'react';\n\nimport { PrimaryActionSlot } from '../../locations';\n\nexport default function PrimaryActionLocation() {\n\treturn <PrimaryActionSlot />;\n}\n","import * as React from 'react';\n\nimport { ResponsiveSlot } from '../../locations';\n\nexport default function ResponsiveLocation() {\n\treturn <ResponsiveSlot />;\n}\n","import * as React from 'react';\n\nimport { toolsMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\nimport IntegrationsMenuLocation from './integrations-menu-location';\n\nconst MAX_TOOLBAR_ACTIONS = 5;\n\nconst { useMenuItems } = toolsMenu;\n\nexport default function ToolsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst toolbarMenuItems = menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS );\n\tconst popoverMenuItems = menuItems.default.slice( MAX_TOOLBAR_ACTIONS );\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t<MenuItem key={ id } />\n\t\t\t) ) }\n\t\t\t<IntegrationsMenuLocation />\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-tools-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport { Stack, type StackProps } from '@elementor/ui';\n\nimport { MenuContextProvider } from '../../contexts/menu-context';\n\nexport type ToolbarMenuProps = StackProps;\n\nexport default function ToolbarMenu( { children, ...props }: ToolbarMenuProps ) {\n\treturn (\n\t\t<MenuContextProvider type={ 'toolbar' }>\n\t\t\t<Stack sx={ { px: 1.5 } } spacing={ 1.5 } direction=\"row\" alignItems=\"center\" { ...props }>\n\t\t\t\t{ children }\n\t\t\t</Stack>\n\t\t</MenuContextProvider>\n\t);\n}\n","import * as React from 'react';\nimport { type PropsWithChildren } from 'react';\nimport { DotsVerticalIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport PopoverMenu from './popover-menu';\nimport ToolbarMenuItem from './toolbar-menu-item';\n\nexport type ToolbarMenuMoreProps = PropsWithChildren< {\n\tid: string;\n} >;\n\nexport default function ToolbarMenuMore( { children, id }: ToolbarMenuMoreProps ) {\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: id,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'More', 'elementor' ) }>\n\t\t\t\t<DotsVerticalIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu onClick={ popupState.close } { ...bindMenu( popupState ) }>\n\t\t\t\t{ children }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { PlugIcon } from '@elementor/icons';\nimport { bindMenu, bindTrigger, usePopupState } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { integrationsMenu } from '../../locations';\nimport PopoverMenu from '../ui/popover-menu';\nimport ToolbarMenuItem from '../ui/toolbar-menu-item';\n\nconst { useMenuItems } = integrationsMenu;\n\nexport default function IntegrationsMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'elementor-v2-app-bar-integrations',\n\t} );\n\n\tif ( menuItems.default.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarMenuItem { ...bindTrigger( popupState ) } title={ __( 'Integrations', 'elementor' ) }>\n\t\t\t\t<PlugIcon />\n\t\t\t</ToolbarMenuItem>\n\t\t\t<PopoverMenu\n\t\t\t\tonClick={ popupState.close }\n\t\t\t\t{ ...bindMenu( popupState ) }\n\t\t\t\tmarginThreshold={ 8 }\n\t\t\t\topen={ popupState.isOpen }\n\t\t\t>\n\t\t\t\t{ menuItems.default.map( ( { MenuItem: IntegrationsMenuItem, id } ) => (\n\t\t\t\t\t<IntegrationsMenuItem key={ id } />\n\t\t\t\t) ) }\n\t\t\t</PopoverMenu>\n\t\t</>\n\t);\n}\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { Divider } from '@elementor/ui';\n\nimport { utilitiesMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\n\nconst MAX_TOOLBAR_ACTIONS = 4;\n\nconst { useMenuItems } = utilitiesMenu;\n\nexport default function UtilitiesMenuLocation() {\n\tconst menuItems = useMenuItems();\n\n\t// If there are more than 5 items, show the first 4 inline and the rest in the popover.\n\t// Otherwise, display all items inline.\n\tconst shouldUsePopover = menuItems.default.length > MAX_TOOLBAR_ACTIONS + 1;\n\n\tconst toolbarMenuItems = shouldUsePopover ? menuItems.default.slice( 0, MAX_TOOLBAR_ACTIONS ) : menuItems.default;\n\tconst popoverMenuItems = shouldUsePopover ? menuItems.default.slice( MAX_TOOLBAR_ACTIONS ) : [];\n\n\treturn (\n\t\t<ToolbarMenu>\n\t\t\t{ toolbarMenuItems.map( ( { MenuItem, id }, index ) => (\n\t\t\t\t<Fragment key={ id }>\n\t\t\t\t\t{ index === 0 && <Divider orientation=\"vertical\" /> }\n\t\t\t\t\t<MenuItem />\n\t\t\t\t</Fragment>\n\t\t\t) ) }\n\t\t\t{ popoverMenuItems.length > 0 && (\n\t\t\t\t<ToolbarMenuMore id=\"elementor-editor-app-bar-utilities-more\">\n\t\t\t\t\t{ popoverMenuItems.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t\t) ) }\n\t\t\t\t</ToolbarMenuMore>\n\t\t\t) }\n\t\t</ToolbarMenu>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useHostDocument as useHostDocument,\n} from '@elementor/editor-documents';\nimport {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit' ? activeDocument : hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' ).replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.documentSettings, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'document-settings' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\topenRoute( 'panel/page-settings/settings' );\n\t\t\t\t\t} }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 1.7,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n","import { injectIntoPageIndication } from '../../locations';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.previewPage, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'preview-page' ],\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( document ) {\n\t\t\t\trunCommand( 'editor/documents/preview', {\n\t\t\t\t\tid: document.id,\n\t\t\t\t\tforce: true,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n\ttype Document,\n} from '@elementor/editor-documents';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\nimport PrimaryActionMenu from './primary-action-menu';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.publishButton, {\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'publish-button' ],\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.mainCta,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( ! document.isSaving ) {\n\t\t\t\t\t\t\tsave();\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish ? __( 'Publish', 'elementor' ) : __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\n\nimport { default as PopoverMenu, type PopoverMenuProps } from '../../../components/ui/popover-menu';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers for empty menu items, due to a limitation in the locations' mechanism.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root {\n\t\t& > .MuiDivider-root {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > *:not( .MuiDivider-root ):not( :last-of-type ) + .MuiDivider-root {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\n\t\t\t{ saveActions.length > 0 && defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id }, index ) => [\n\t\t\t\tindex > 0 && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { LinkIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentCopyAndShareProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { copyAndShare } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: LinkIcon,\n\t\ttitle: __( 'Copy and Share', 'elementor' ),\n\t\tonClick: copyAndShare,\n\t\tdisabled:\n\t\t\t! document || document.isSaving || document.isSavingDraft || ! ( 'publish' === document.status.value ),\n\t\tvisible: document?.permissions?.showCopyAndShare,\n\t};\n}\n","import {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { FolderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps } from '../../../types';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () =>\n\t\t\tdocument?.id &&\n\t\t\trunCommand( 'editor/documents/view', {\n\t\t\t\tid: document.id,\n\t\t\t} ),\n\t};\n}\n","import { injectIntoPrimaryAction } from '../../locations';\nimport PrimaryAction from './components/primary-action';\nimport useDocumentCopyAndShareProps from './hooks/use-document-copy-and-share-props';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport { documentOptionsMenu } from './locations';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20,\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-copy-and-share',\n\t\tpriority: 10,\n\t\tuseProps: useDocumentCopyAndShareProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tid: 'document-view-page',\n\t\tpriority: 50,\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.widgetPanel, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'widget-panel' ],\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/elements/categories' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateListenTo as listenTo,\n\trouteOpenEvent,\n\tv1ReadyEvent,\n} from '@elementor/editor-v1-adapters';\nimport { __ } from '@wordpress/i18n';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t};\n\t\t};\n\t};\n};\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo( routeOpenEvent( 'panel/elements' ), () => {\n\t\tsetPanelTitle( panelTitle );\n\t\tsetTabTitle( tabTitle );\n\t} );\n\n\tlistenTo( v1ReadyEvent(), () => {\n\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t} );\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\nimport syncPanelTitle from './sync/sync-panel-title';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { SearchIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.finder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.finder,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'finder/toggle' );\n\t\t},\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { utilitiesMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 15, // Before Preview.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HelpIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { utilitiesMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 25, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.help, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.help,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.history, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/history/actions' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.keyboardShortcuts, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'shortcuts/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport {\n\ttype BreakpointId,\n\tuseActivateBreakpoint,\n\tuseActiveBreakpoint,\n\tuseBreakpoints,\n} from '@elementor/editor-responsive';\nimport {\n\tDesktopIcon,\n\tLaptopIcon,\n\tMobileLandscapeIcon,\n\tMobilePortraitIcon,\n\tTabletLandscapeIcon,\n\tTabletPortraitIcon,\n\tWidescreenIcon,\n} from '@elementor/icons';\nimport { Tab, Tabs, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function BreakpointsSwitcher() {\n\tconst breakpoints = useBreakpoints();\n\tconst activeBreakpoint = useActiveBreakpoint();\n\tconst activateBreakpoint = useActivateBreakpoint();\n\n\tif ( ! breakpoints.length || ! activeBreakpoint ) {\n\t\treturn null;\n\t}\n\n\tconst onChange = ( _: unknown, value: BreakpointId ) => {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.responsiveControls, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.responsiveControls,\n\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\tmode: value,\n\t\t\t} );\n\t\t}\n\n\t\tactivateBreakpoint( value );\n\t};\n\n\treturn (\n\t\t<Tabs\n\t\t\ttextColor=\"inherit\"\n\t\t\tindicatorColor=\"secondary\"\n\t\t\tvalue={ activeBreakpoint }\n\t\t\tonChange={ onChange }\n\t\t\taria-label={ __( 'Switch Device', 'elementor' ) }\n\t\t\tsx={ {\n\t\t\t\t'& .MuiTabs-indicator': {\n\t\t\t\t\tbackgroundColor: 'text.primary',\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t{ breakpoints.map( ( { id, label, type, width } ) => {\n\t\t\t\tconst Icon = iconsMap[ id ];\n\n\t\t\t\tconst title = labelsMap[ type || 'default' ]\n\t\t\t\t\t.replace( '%s', label )\n\t\t\t\t\t.replace( '%d', width?.toString() || '' );\n\n\t\t\t\treturn (\n\t\t\t\t\t<Tab\n\t\t\t\t\t\tvalue={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\taria-label={ title }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<Tooltip title={ title }>\n\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsx={ { minWidth: 'auto' } }\n\t\t\t\t\t\tdata-testid={ `switch-device-to-${ id }` }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</Tabs>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2.5,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nconst iconsMap = {\n\twidescreen: WidescreenIcon,\n\tdesktop: DesktopIcon,\n\tlaptop: LaptopIcon,\n\ttablet_extra: TabletLandscapeIcon,\n\ttablet: TabletPortraitIcon,\n\tmobile_extra: MobileLandscapeIcon,\n\tmobile: MobilePortraitIcon,\n};\n\nconst labelsMap = {\n\tdefault: '%s',\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'min-width': __( '%s (%dpx and up)', 'elementor' ),\n\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'max-width': __( '%s (up to %dpx)', 'elementor' ),\n} as const;\n","import { injectIntoResponsive } from '../../locations';\nimport BreakpointsSwitcher from './components/breakpoints-switcher';\n\nexport function init() {\n\tinjectIntoResponsive( {\n\t\tid: 'responsive-breakpoints-switcher',\n\t\tcomponent: BreakpointsSwitcher,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indication.\n\t\t},\n\t} );\n}\n","import { injectIntoTop } from '@elementor/editor';\n\nimport { mainMenu } from '../../locations';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\tmainMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\n\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport {\n\t__privateIsRouteActive as isRouteActive,\n\t__privateUseListenTo as useListenTo,\n\trouteCloseEvent,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\nimport { Portal as BasePortal, type PortalProps } from '@elementor/ui';\n\nexport default function Portal( props: Omit< PortalProps, 'container' > ) {\n\tconst containerRef = useListenTo(\n\t\t[ routeOpenEvent( 'panel/global' ), routeCloseEvent( 'panel/global' ) ],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn <BasePortal container={ containerRef.current } { ...props } />;\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport {\n\t__useActiveDocument as useActiveDocument,\n\t__useActiveDocumentActions as useActiveDocumentActions,\n} from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper\n\t\t\tsx={ {\n\t\t\t\tpx: 5,\n\t\t\t\tpy: 4,\n\t\t\t\tborderTop: 1,\n\t\t\t\tborderColor: 'divider',\n\t\t\t} }\n\t\t>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => ( document && ! document.isSaving ? save() : null ) }\n\t\t\t>\n\t\t\t\t{ document?.isSaving ? <CircularProgress /> : __( 'Save Changes', 'elementor' ) }\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.siteSettings, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.siteSettings,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( isActive ) {\n\t\t\t\trunCommand( 'panel/global/close' );\n\t\t\t} else {\n\t\t\t\trunCommand( 'panel/global/open' );\n\t\t\t}\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import {\n\t__privateRunCommand as runCommand,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.structure, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.structure,\n\t\t\t\t\ttrigger: config.triggers.toggleClick,\n\t\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'navigator/toggle' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.themeBuilder, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\trunCommand( 'app/open' );\n\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import {\n\t__privateOpenRoute as openRoute,\n\t__privateUseRouteStatus as useRouteStatus,\n} from '@elementor/editor-v1-adapters';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow, type ToggleActionProps } from '../../../types';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.userPreferences, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/editor-preferences' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { mainMenu } from '../../locations';\nimport { type ExtendedWindow } from '../../types';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t\tonClick: () => {\n\t\t\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\t\t\tconst config = extendedWindow?.elementor?.editorEvents?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementor.editorEvents.dispatchEvent( config.names.topBar.exitToWordpress, {\n\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\telement: config.elements.link,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initResponsive } from './responsive';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitResponsive();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n","import {\n\t__privateListenTo as listenTo,\n\t__privateOpenRoute as openRoute,\n\trouteOpenEvent,\n} from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n","export {\n\tmainMenu,\n\ttoolsMenu,\n\tutilitiesMenu,\n\tintegrationsMenu,\n\tinjectIntoPageIndication,\n\tinjectIntoResponsive,\n\tinjectIntoPrimaryAction,\n} from './locations';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nexport type { ActionProps, LinkProps, ToggleActionProps } from './types';\n\nimport init from './init';\n\ninit();\n"],"mappings":"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","names":["React","React","React","React","React","React","Box","Tooltip","createMenu","createMenu","injectIntoTop","React","Box","Divider","React","React","React","ToggleButton","MenuItem","React","React","React","React","React","Stack","Stack","React","bindMenu","bindTrigger","usePopupState","__","usePopupState","bindTrigger","__","bindMenu","React","bindMenu","bindTrigger","usePopupState","__","useMenuItems","usePopupState","bindTrigger","__","bindMenu","useMenuItems","MenuItem","React","Fragment","Divider","MAX_TOOLBAR_ACTIONS","useMenuItems","MenuItem","Fragment","Divider","document","Box","Divider","React","useActiveDocument","Box","ToggleButton","BaseTooltip","__","document","Tooltip","useActiveDocument","__","document","init","React","useActiveDocument","bindMenu","bindTrigger","Box","Tooltip","usePopupState","__","React","Divider","styled","useMenuItems","styled","MenuItem","Divider","document","useActiveDocument","usePopupState","Tooltip","__","Box","bindTrigger","bindMenu","useActiveDocument","useActiveDocumentActions","__","document","useActiveDocument","useActiveDocumentActions","__","document","useActiveDocumentActions","__","useActiveDocument","runCommand","EyeIcon","__","document","init","openRoute","useRouteStatus","__","useActionProps","__","init","useActionProps","runCommand","useRouteStatus","__","useActionProps","init","useActionProps","__","init","__","openRoute","useRouteStatus","__","useActionProps","init","useActionProps","runCommand","__","useActionProps","init","useActionProps","React","BaseTooltip","__","Tooltip","init","React","React","isRouteActive","routeOpenEvent","React","useActiveDocument","useActiveDocumentActions","Button","CircularProgress","__","PrimaryAction","document","PrimaryAction","runCommand","useRouteStatus","__","useActionProps","init","useActionProps","runCommand","useRouteStatus","__","useActionProps","init","useActionProps","runCommand","__","useActionProps","init","useActionProps","openRoute","useRouteStatus","__","useActionProps","init","useActionProps","useActiveDocument","__","init","document","useActiveDocument","__","init","listenTo","openRoute","routeOpenEvent","init","injectIntoTop","init"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@elementor/editor-app-bar",
3
3
  "description": "App Bar extension for @elementor/editor",
4
- "version": "0.22.2",
4
+ "version": "0.23.0",
5
5
  "private": false,
6
6
  "author": "Elementor Team",
7
7
  "homepage": "https://elementor.com/",
@@ -47,7 +47,7 @@ const StyledElementorLogo = styled( ElementorLogo, {
47
47
  transform: showMenuIcon && 'translateY(-9px) scaleY(0)',
48
48
  },
49
49
  '&:not(:first-of-type)': {
50
- // Emotion automatically change 4 to -4 in RTL moode.
50
+ // Emotion automatically change 4 to -4 in RTL mode.
51
51
  transform: ! showMenuIcon && `translateX(${ theme.direction === 'rtl' ? '4' : '9' }px) scaleX(0.6)`,
52
52
  },
53
53
  '&:nth-of-type(2)': {
@@ -1,10 +1,10 @@
1
- import { mainMenu } from '../../locations';
1
+ import { toolsMenu } from '../../locations';
2
2
  import useActionProps from './hooks/use-action-props';
3
3
 
4
4
  export function init() {
5
- mainMenu.registerToggleAction( {
5
+ toolsMenu.registerToggleAction( {
6
6
  id: 'open-history',
7
- priority: 20,
7
+ priority: 2,
8
8
  useProps: useActionProps,
9
9
  } );
10
10
  }
@@ -1,6 +1,6 @@
1
1
  import { injectIntoTop } from '@elementor/editor';
2
2
 
3
- import { toolsMenu } from '../../locations';
3
+ import { mainMenu } from '../../locations';
4
4
  import PortalledPrimaryAction from './components/portalled-primary-action';
5
5
  import useActionProps from './hooks/use-action-props';
6
6
 
@@ -11,9 +11,9 @@ export function init() {
11
11
  component: PortalledPrimaryAction,
12
12
  } );
13
13
 
14
- toolsMenu.registerToggleAction( {
14
+ mainMenu.registerToggleAction( {
15
15
  id: 'toggle-site-settings',
16
- priority: 2,
16
+ priority: 20,
17
17
  useProps: useActionProps,
18
18
  } );
19
19
  }