@elementor/editor-app-bar 0.26.0 → 0.27.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 +24 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +10 -7
- package/src/components/app-bar.tsx +2 -2
- package/src/components/ui/popover-menu-item.tsx +1 -1
- package/src/components/ui/toolbar-menu-item.tsx +1 -1
- package/src/components/ui/toolbar-menu-more.tsx +1 -1
- package/src/components/ui/toolbar-menu-toggle-item.tsx +1 -1
- package/src/components/ui/toolbar-menu.tsx +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 0.27.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 910044c: update `@elementor/icons` and `@elementor/ui` packages.
|
|
8
|
+
- 6676018: Removed flex wrap from menus wrappers
|
|
9
|
+
- 5caf78d: update `@elementor/ui` package.
|
|
10
|
+
- c162e6c: Update '@elementor/icons' version
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- da38fa9: Remove unused exports and add missing dependencies.
|
|
15
|
+
- Updated dependencies [1e4f28b]
|
|
16
|
+
- Updated dependencies [da38fa9]
|
|
17
|
+
- Updated dependencies [910044c]
|
|
18
|
+
- Updated dependencies [5caf78d]
|
|
19
|
+
- Updated dependencies [ad6fde0]
|
|
20
|
+
- Updated dependencies [d99471a]
|
|
21
|
+
- Updated dependencies [b8e2a85]
|
|
22
|
+
- @elementor/editor-documents@0.11.18
|
|
23
|
+
- @elementor/editor-v1-adapters@0.10.0
|
|
24
|
+
- @elementor/editor-responsive@0.13.0
|
|
25
|
+
- @elementor/editor@0.18.0
|
|
26
|
+
|
|
3
27
|
## 0.26.0
|
|
4
28
|
|
|
5
29
|
### Minor Changes
|
package/dist/index.js
CHANGED
|
@@ -447,7 +447,7 @@ function UtilitiesMenuLocation() {
|
|
|
447
447
|
// src/components/app-bar.tsx
|
|
448
448
|
function AppBar() {
|
|
449
449
|
const document2 = (0, import_editor_documents.__useActiveDocument)();
|
|
450
|
-
return /* @__PURE__ */ React19.createElement(import_ui11.ThemeProvider, { colorScheme: "dark" }, /* @__PURE__ */ React19.createElement(import_ui11.AppBar, { position: "sticky" }, /* @__PURE__ */ React19.createElement(import_ui11.Toolbar, { disableGutters: true, variant: "dense" }, /* @__PURE__ */ React19.createElement(import_ui11.Box, { display: "grid", gridTemplateColumns: "repeat(3, 1fr)", flexGrow: 1 }, /* @__PURE__ */ React19.createElement(import_ui11.Grid, { container: true }, /* @__PURE__ */ React19.createElement(MainMenuLocation, null), document2?.permissions?.allowAddingWidgets && /* @__PURE__ */ React19.createElement(ToolsMenuLocation, null)), /* @__PURE__ */ React19.createElement(import_ui11.Grid, { container: true, justifyContent: "center" }, /* @__PURE__ */ React19.createElement(ToolbarMenu, { spacing: 1.5 }, /* @__PURE__ */ React19.createElement(import_ui11.Divider, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(PageIndicationLocation, null), /* @__PURE__ */ React19.createElement(import_ui11.Divider, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(ResponsiveLocation, null), /* @__PURE__ */ React19.createElement(import_ui11.Divider, { orientation: "vertical" }))), /* @__PURE__ */ React19.createElement(import_ui11.Grid, { container: true, justifyContent: "flex-end" }, /* @__PURE__ */ React19.createElement(UtilitiesMenuLocation, null), /* @__PURE__ */ React19.createElement(PrimaryActionLocation, null))))));
|
|
450
|
+
return /* @__PURE__ */ React19.createElement(import_ui11.ThemeProvider, { colorScheme: "dark" }, /* @__PURE__ */ React19.createElement(import_ui11.AppBar, { position: "sticky" }, /* @__PURE__ */ React19.createElement(import_ui11.Toolbar, { disableGutters: true, variant: "dense" }, /* @__PURE__ */ React19.createElement(import_ui11.Box, { display: "grid", gridTemplateColumns: "repeat(3, 1fr)", flexGrow: 1 }, /* @__PURE__ */ React19.createElement(import_ui11.Grid, { container: true, flexWrap: "nowrap" }, /* @__PURE__ */ React19.createElement(MainMenuLocation, null), document2?.permissions?.allowAddingWidgets && /* @__PURE__ */ React19.createElement(ToolsMenuLocation, null)), /* @__PURE__ */ React19.createElement(import_ui11.Grid, { container: true, justifyContent: "center" }, /* @__PURE__ */ React19.createElement(ToolbarMenu, { spacing: 1.5 }, /* @__PURE__ */ React19.createElement(import_ui11.Divider, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(PageIndicationLocation, null), /* @__PURE__ */ React19.createElement(import_ui11.Divider, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(ResponsiveLocation, null), /* @__PURE__ */ React19.createElement(import_ui11.Divider, { orientation: "vertical" }))), /* @__PURE__ */ React19.createElement(import_ui11.Grid, { container: true, justifyContent: "flex-end", flexWrap: "nowrap" }, /* @__PURE__ */ React19.createElement(UtilitiesMenuLocation, null), /* @__PURE__ */ React19.createElement(PrimaryActionLocation, null))))));
|
|
451
451
|
}
|
|
452
452
|
|
|
453
453
|
// src/extensions/documents-indicator/components/settings-button.tsx
|
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 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 { 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\ntype 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\ntype 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\ntype 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 flexWrap=\"nowrap\">\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\" flexWrap=\"nowrap\">\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\ntype 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\ntype 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"]}
|
package/dist/index.mjs
CHANGED
|
@@ -404,7 +404,7 @@ function UtilitiesMenuLocation() {
|
|
|
404
404
|
// src/components/app-bar.tsx
|
|
405
405
|
function AppBar() {
|
|
406
406
|
const document2 = useActiveDocument();
|
|
407
|
-
return /* @__PURE__ */ React19.createElement(ThemeProvider, { colorScheme: "dark" }, /* @__PURE__ */ React19.createElement(BaseAppBar, { position: "sticky" }, /* @__PURE__ */ React19.createElement(Toolbar, { disableGutters: true, variant: "dense" }, /* @__PURE__ */ React19.createElement(Box3, { display: "grid", gridTemplateColumns: "repeat(3, 1fr)", flexGrow: 1 }, /* @__PURE__ */ React19.createElement(Grid, { container: true }, /* @__PURE__ */ React19.createElement(MainMenuLocation, null), document2?.permissions?.allowAddingWidgets && /* @__PURE__ */ React19.createElement(ToolsMenuLocation, null)), /* @__PURE__ */ React19.createElement(Grid, { container: true, justifyContent: "center" }, /* @__PURE__ */ React19.createElement(ToolbarMenu, { spacing: 1.5 }, /* @__PURE__ */ React19.createElement(Divider3, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(PageIndicationLocation, null), /* @__PURE__ */ React19.createElement(Divider3, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(ResponsiveLocation, null), /* @__PURE__ */ React19.createElement(Divider3, { orientation: "vertical" }))), /* @__PURE__ */ React19.createElement(Grid, { container: true, justifyContent: "flex-end" }, /* @__PURE__ */ React19.createElement(UtilitiesMenuLocation, null), /* @__PURE__ */ React19.createElement(PrimaryActionLocation, null))))));
|
|
407
|
+
return /* @__PURE__ */ React19.createElement(ThemeProvider, { colorScheme: "dark" }, /* @__PURE__ */ React19.createElement(BaseAppBar, { position: "sticky" }, /* @__PURE__ */ React19.createElement(Toolbar, { disableGutters: true, variant: "dense" }, /* @__PURE__ */ React19.createElement(Box3, { display: "grid", gridTemplateColumns: "repeat(3, 1fr)", flexGrow: 1 }, /* @__PURE__ */ React19.createElement(Grid, { container: true, flexWrap: "nowrap" }, /* @__PURE__ */ React19.createElement(MainMenuLocation, null), document2?.permissions?.allowAddingWidgets && /* @__PURE__ */ React19.createElement(ToolsMenuLocation, null)), /* @__PURE__ */ React19.createElement(Grid, { container: true, justifyContent: "center" }, /* @__PURE__ */ React19.createElement(ToolbarMenu, { spacing: 1.5 }, /* @__PURE__ */ React19.createElement(Divider3, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(PageIndicationLocation, null), /* @__PURE__ */ React19.createElement(Divider3, { orientation: "vertical" }), /* @__PURE__ */ React19.createElement(ResponsiveLocation, null), /* @__PURE__ */ React19.createElement(Divider3, { orientation: "vertical" }))), /* @__PURE__ */ React19.createElement(Grid, { container: true, justifyContent: "flex-end", flexWrap: "nowrap" }, /* @__PURE__ */ React19.createElement(UtilitiesMenuLocation, null), /* @__PURE__ */ React19.createElement(PrimaryActionLocation, null))))));
|
|
408
408
|
}
|
|
409
409
|
|
|
410
410
|
// src/extensions/documents-indicator/components/settings-button.tsx
|
package/dist/index.mjs.map
CHANGED
|
@@ -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 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 { 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\ntype 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\ntype 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\ntype 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 flexWrap=\"nowrap\">\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\" flexWrap=\"nowrap\">\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\ntype 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\ntype 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"]}
|
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.
|
|
4
|
+
"version": "0.27.0",
|
|
5
5
|
"private": false,
|
|
6
6
|
"author": "Elementor Team",
|
|
7
7
|
"homepage": "https://elementor.com/",
|
|
@@ -40,16 +40,19 @@
|
|
|
40
40
|
"dev": "tsup --config=../../tsup.dev.ts"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@elementor/editor": "0.
|
|
44
|
-
"@elementor/editor-documents": "0.11.
|
|
45
|
-
"@elementor/editor-responsive": "0.
|
|
46
|
-
"@elementor/editor-v1-adapters": "0.
|
|
47
|
-
"@elementor/icons": "1.
|
|
43
|
+
"@elementor/editor": "0.18.0",
|
|
44
|
+
"@elementor/editor-documents": "0.11.18",
|
|
45
|
+
"@elementor/editor-responsive": "0.13.0",
|
|
46
|
+
"@elementor/editor-v1-adapters": "0.10.0",
|
|
47
|
+
"@elementor/icons": "1.31.0",
|
|
48
48
|
"@elementor/locations": "0.7.6",
|
|
49
49
|
"@elementor/menus": "0.1.3",
|
|
50
|
-
"@elementor/ui": "1.
|
|
50
|
+
"@elementor/ui": "1.26.0",
|
|
51
51
|
"@wordpress/i18n": "^5.13.0"
|
|
52
52
|
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"tsup": "^8.3.5"
|
|
55
|
+
},
|
|
53
56
|
"peerDependencies": {
|
|
54
57
|
"react": "^18.3.1"
|
|
55
58
|
}
|
|
@@ -17,7 +17,7 @@ export default function AppBar() {
|
|
|
17
17
|
<BaseAppBar position="sticky">
|
|
18
18
|
<Toolbar disableGutters variant="dense">
|
|
19
19
|
<Box display="grid" gridTemplateColumns="repeat(3, 1fr)" flexGrow={ 1 }>
|
|
20
|
-
<Grid container>
|
|
20
|
+
<Grid container flexWrap="nowrap">
|
|
21
21
|
<MainMenuLocation />
|
|
22
22
|
{ document?.permissions?.allowAddingWidgets && <ToolsMenuLocation /> }
|
|
23
23
|
</Grid>
|
|
@@ -30,7 +30,7 @@ export default function AppBar() {
|
|
|
30
30
|
<Divider orientation="vertical" />
|
|
31
31
|
</ToolbarMenu>
|
|
32
32
|
</Grid>
|
|
33
|
-
<Grid container justifyContent="flex-end">
|
|
33
|
+
<Grid container justifyContent="flex-end" flexWrap="nowrap">
|
|
34
34
|
<UtilitiesMenuLocation />
|
|
35
35
|
<PrimaryActionLocation />
|
|
36
36
|
</Grid>
|
|
@@ -10,7 +10,7 @@ type ExtraProps = {
|
|
|
10
10
|
isGroupParent?: boolean;
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
type PopoverMenuItemProps = MenuItemProps & ExtraProps;
|
|
14
14
|
|
|
15
15
|
const DirectionalArrowIcon = withDirection( ArrowUpRightIcon );
|
|
16
16
|
const DirectionalChevronIcon = withDirection( ChevronRightIcon );
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Box, IconButton, type IconButtonProps, Tooltip as BaseTooltip, type TooltipProps } from '@elementor/ui';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
type ToolbarMenuItemProps = IconButtonProps & {
|
|
5
5
|
title?: string;
|
|
6
6
|
selected?: boolean;
|
|
7
7
|
};
|
|
@@ -7,7 +7,7 @@ import { __ } from '@wordpress/i18n';
|
|
|
7
7
|
import PopoverMenu from './popover-menu';
|
|
8
8
|
import ToolbarMenuItem from './toolbar-menu-item';
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
type ToolbarMenuMoreProps = PropsWithChildren< {
|
|
11
11
|
id: string;
|
|
12
12
|
} >;
|
|
13
13
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Box, ToggleButton, type ToggleButtonProps, Tooltip } from '@elementor/ui';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
type ToolbarMenuToggleItemProps = Omit< ToggleButtonProps, 'onChange' > & {
|
|
5
5
|
title?: string;
|
|
6
6
|
onClick?: () => void;
|
|
7
7
|
};
|
|
@@ -3,7 +3,7 @@ import { Stack, type StackProps } from '@elementor/ui';
|
|
|
3
3
|
|
|
4
4
|
import { MenuContextProvider } from '../../contexts/menu-context';
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
type ToolbarMenuProps = StackProps;
|
|
7
7
|
|
|
8
8
|
export default function ToolbarMenu( { children, ...props }: ToolbarMenuProps ) {
|
|
9
9
|
return (
|