{"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/extensions/angie/components/angie-guide-location.tsx","../src/extensions/angie/angie-consts.ts","../src/extensions/angie/components/angie-guide-card.tsx","../src/extensions/angie/hooks/use-auto-show.ts","../src/components/ui/toolbar-menu.tsx","../src/components/ui/toolbar-menu-more.tsx","../src/components/locations/integrations-menu-location.tsx","../src/components/locations/send-feedback-popup-location.tsx","../src/extensions/feedback/feedback-consts.ts","../src/components/locations/utilities-menu-location.tsx","../src/extensions/angie/hooks/use-action-props.ts","../src/extensions/angie/index.ts","../src/extensions/connect/hooks/use-connect-link-config.tsx","../src/extensions/connect/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/documents-settings/hooks/use-action-props.ts","../src/extensions/documents-settings/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/feedback/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/help/hooks/use-action-props.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":["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: [ 'help', '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\tshowExternalLinkIcon?: 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\tshowExternalLinkIcon,\n\t...props\n}: PopoverMenuItemProps ) {\n\tconst isExternalLink = href && target === '_blank' && showExternalLinkIcon;\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\tshowExternalLinkIcon?: boolean;\n\tonClick?: ( event: React.MouseEvent< HTMLElement > ) => void;\n};\n\nexport default function Link( { icon: Icon, title, visible = true, showExternalLinkIcon = false, ...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 /> } showExternalLinkIcon={ showExternalLinkIcon } />\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 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?.elementorCommon?.eventsManager?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent( config.names.topBar.elementorLogoDropdown, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.eLogoMenu,\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<Divider />\n\t\t\t\t{ menuItems.help.map( ( { MenuItem, id } ) => (\n\t\t\t\t\t<MenuItem key={ id } />\n\t\t\t\t) ) }\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 { AngieGuideLocation } from '../../extensions/angie/components/angie-guide-location';\nimport { toolsMenu } from '../../locations';\nimport ToolbarMenu from '../ui/toolbar-menu';\nimport ToolbarMenuMore from '../ui/toolbar-menu-more';\nimport IntegrationsMenuLocation from './integrations-menu-location';\nimport SendFeedbackPopupLocation from './send-feedback-popup-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<AngieGuideLocation />\n\t\t\t<SendFeedbackPopupLocation />\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 { useEffect, useState } from 'react';\nimport { useCurrentUserCapabilities } from '@elementor/editor-current-user';\nimport { ThemeProvider } from '@elementor/editor-ui';\nimport { useMixpanel } from '@elementor/events';\nimport { Infotip } from '@elementor/ui';\n\nimport {\n\tAI_WIDGET_CTA_VIEWED_EVENT,\n\tANGIE_BUTTON_ARIA_LABEL,\n\tANGIE_GUIDE_TOGGLE_EVENT,\n\tANGIE_LEARN_MORE_URL,\n\tANGIE_TOP_BAR_DESCRIPTION,\n\tANGIE_TOP_BAR_PROMOTION_IMAGE_URL,\n\tCREATE_WIDGET_EVENT,\n} from '../angie-consts';\nimport { AngieGuideCard } from '../components/angie-guide-card';\nimport { useAutoShow } from '../hooks/use-auto-show';\n\nexport function AngieGuideLocation() {\n\tuseAutoShow();\n\tconst [ anchorEl, setAnchorEl ] = useState< Element | null >( null );\n\tconst { dispatchEvent } = useMixpanel();\n\tconst { isAdmin } = useCurrentUserCapabilities();\n\n\tconst isOpen = Boolean( anchorEl );\n\n\tuseEffect( () => {\n\t\tconst handleToggle = () => {\n\t\t\tsetAnchorEl( ( prev ) => {\n\t\t\t\tif ( prev ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn document.querySelector( `[aria-label=\"${ ANGIE_BUTTON_ARIA_LABEL }\"]` );\n\t\t\t} );\n\t\t};\n\n\t\twindow.addEventListener( ANGIE_GUIDE_TOGGLE_EVENT, handleToggle );\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener( ANGIE_GUIDE_TOGGLE_EVENT, handleToggle );\n\t\t};\n\t}, [] );\n\n\tconst handleClose = () => setAnchorEl( null );\n\n\tconst handleInstall = async () => {\n\t\tdispatchEvent?.( AI_WIDGET_CTA_VIEWED_EVENT, {\n\t\t\tentry_point: 'top_bar_icon',\n\t\t} );\n\t\twindow.dispatchEvent(\n\t\t\tnew CustomEvent( CREATE_WIDGET_EVENT, {\n\t\t\t\tdetail: {\n\t\t\t\t\tentry_point: 'top_bar_icon',\n\t\t\t\t},\n\t\t\t} )\n\t\t);\n\t\thandleClose();\n\t};\n\n\treturn (\n\t\t<ThemeProvider>\n\t\t\t<Infotip\n\t\t\t\tcontent={\n\t\t\t\t\t<AngieGuideCard\n\t\t\t\t\t\timageUrl={ ANGIE_TOP_BAR_PROMOTION_IMAGE_URL }\n\t\t\t\t\t\tdescription={ ANGIE_TOP_BAR_DESCRIPTION }\n\t\t\t\t\t\tlearnMoreUrl={ ANGIE_LEARN_MORE_URL }\n\t\t\t\t\t\tonInstall={ isAdmin ? handleInstall : undefined }\n\t\t\t\t\t\tonClose={ handleClose }\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tplacement=\"bottom-start\"\n\t\t\t\topen={ isOpen }\n\t\t\t\tdisableHoverListener={ true }\n\t\t\t\tPopperProps={ {\n\t\t\t\t\tanchorEl,\n\t\t\t\t\tmodifiers: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'offset',\n\t\t\t\t\t\t\toptions: { offset: [ -4, -4 ] },\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\t\t<span />\n\t\t\t</Infotip>\n\t\t</ThemeProvider>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\n\nexport const ANGIE_GUIDE_TOGGLE_EVENT = 'elementor/editor/toggle-angie-guide';\nexport const CREATE_WIDGET_EVENT = 'elementor/editor/create-widget';\n\nexport const ANGIE_BUTTON_ARIA_LABEL = __( 'Angie', 'elementor' );\n\nexport const ANGIE_PROMOTION_IMAGE_URL = 'https://assets.elementor.com/packages/v1/images/angie-promotion.svg';\n\nexport const ANGIE_LEARN_MORE_URL = 'https://go.elementor.com/angie-learn-more';\n\nexport const ANGIE_DESCRIPTION = __(\n\t'Angie lets you generate custom widgets, sections, and code using simple instructions.',\n\t'elementor'\n);\n\nexport const AI_WIDGET_CTA_VIEWED_EVENT = 'ai_widget_cta_viewed' as const;\nexport const ANGIE_TOP_BAR_PROMOTION_IMAGE_URL =\n\t'https://assets.elementor.com/packages/v1/images/angie-top-bar-promotion.svg';\nexport const ANGIE_TOP_BAR_DESCRIPTION = __( 'Build custom widgets using simple instructions.', 'elementor' );\n","import * as React from 'react';\nimport { Button, Chip, ClickAwayListener, CloseButton, Image, Stack, Typography } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\ntype Props = {\n\timageUrl: string;\n\tdescription: string;\n\tlearnMoreUrl: string;\n\tonInstall?: () => void;\n\tonClose: () => void;\n};\n\nexport function AngieGuideCard( { imageUrl, description, learnMoreUrl, onInstall, onClose }: Props ) {\n\treturn (\n\t\t<ClickAwayListener onClickAway={ onClose }>\n\t\t\t<Stack sx={ { width: 296 } } data-testid=\"e-angie-guide-card\">\n\t\t\t\t<Stack direction=\"row\" alignItems=\"center\" gap={ 1 } py={ 1 } px={ 2 }>\n\t\t\t\t\t<Typography variant=\"subtitle2\">{ __( 'Meet Angie', 'elementor' ) }</Typography>\n\t\t\t\t\t<Chip label={ __( 'New', 'elementor' ) } size=\"small\" color=\"info\" variant=\"standard\" />\n\t\t\t\t\t<CloseButton\n\t\t\t\t\t\tedge=\"end\"\n\t\t\t\t\t\tsx={ { ml: 'auto' } }\n\t\t\t\t\t\tslotProps={ { icon: { fontSize: 'small' } } }\n\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t</Stack>\n\t\t\t\t<Image src={ imageUrl } alt={ __( 'Angie', 'elementor' ) } sx={ { height: 150, width: '100%' } } />\n\t\t\t\t<Stack px={ 2 } pt={ 1.5 } pb={ 1 }>\n\t\t\t\t\t<Typography variant=\"body2\" color=\"secondary\">\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t</Typography>\n\t\t\t\t</Stack>\n\t\t\t\t<Stack direction=\"row\" justifyContent=\"flex-end\" gap={ 1 } pt={ 1 } pb={ 1.5 } px={ 2 }>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"text\"\n\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\tcolor=\"secondary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\twindow.open( learnMoreUrl, '_blank', 'noopener,noreferrer' );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Learn More', 'elementor' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t{ onInstall && (\n\t\t\t\t\t\t<Button variant=\"contained\" size=\"small\" color=\"accent\" onClick={ onInstall }>\n\t\t\t\t\t\t\t{ __( 'Try for free', 'elementor' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t</Stack>\n\t\t\t</Stack>\n\t\t</ClickAwayListener>\n\t);\n}\n","import { useEffect } from 'react';\n\nimport { ANGIE_GUIDE_TOGGLE_EVENT } from '../angie-consts';\n\nexport function useAutoShow() {\n\tuseEffect( () => {\n\t\tif ( ! window.elementor?.config?.angie?.autoShow ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst id = setTimeout( () => {\n\t\t\twindow.dispatchEvent( new CustomEvent( ANGIE_GUIDE_TOGGLE_EVENT ) );\n\t\t}, 0 );\n\n\t\treturn () => clearTimeout( id );\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 { useEffect, useState } from 'react';\nimport { ThemeProvider } from '@elementor/editor-ui';\nimport { isExperimentActive } from '@elementor/editor-v1-adapters';\nimport { useMixpanel } from '@elementor/events';\nimport { httpService } from '@elementor/http-client';\nimport { AlertCircleIcon, CheckIcon } from '@elementor/icons';\nimport {\n\tbindDialog,\n\tButton,\n\tCloseButton,\n\tDialog,\n\tDialogContent,\n\tDialogHeader,\n\tDialogTitle,\n\tPopover,\n\tStack,\n\tTextField,\n\tusePopupState,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { EXPERIMENT_NAME, FEEDBACK_TOGGLE_EVENT } from '../../extensions/feedback/feedback-consts';\nimport { type ExtendedWindow } from '../../types';\n\nconst checkIfUserIsConnected = () => {\n\tconst extendedWindow = window as unknown as ExtendedWindow;\n\treturn (\n\t\textendedWindow?.elementorCommon?.config.library_connect.is_connected ||\n\t\textendedWindow?.elementorPro?.config.isActive\n\t);\n};\n\ntype FeedbackResult = {\n\tsuccess: boolean;\n\tmessage: string;\n};\n\nexport default function SendFeedbackPopupLocation() {\n\tconst isActive = isExperimentActive( EXPERIMENT_NAME );\n\tconst extendedWindow = window as unknown as ExtendedWindow;\n\tconst [ isUserConnected, setIsUserConnected ] = useState< boolean >( checkIfUserIsConnected() );\n\tconst connectUrl = extendedWindow?.elementor?.config.user.top_bar.connect_url;\n\tconst [ feedbackContent, setFeedbackContent ] = useState( '' );\n\tconst [ feedbackResult, setFeedbackResult ] = useState< FeedbackResult | null >( null );\n\tconst [ submitDisabled, setSubmitDisabled ] = useState( true );\n\tconst { dispatchEvent: trackEvent = ( ...args: unknown[] ) => void args } = useMixpanel();\n\tconst popupState = usePopupState( {\n\t\tvariant: 'dialog',\n\t\tpopupId: FEEDBACK_TOGGLE_EVENT,\n\t} );\n\tconst [ isFetching, setIsFetching ] = useState( false );\n\tuseEffect( () => {\n\t\tconst handler = () => {\n\t\t\tpopupState.toggle();\n\t\t\t// reason to re-check: clicking \"connect to elementor\" closes the dialog. At this time the user can perform connect, and the state might change externally.\n\t\t\tsetIsUserConnected( checkIfUserIsConnected() );\n\t\t\tsetFeedbackResult( null );\n\t\t\ttrackEvent( 'feedback_modal_opened', {\n\t\t\t\tsource: 'top_bar',\n\t\t\t\tcontext: 'v4_beta',\n\t\t\t} );\n\t\t};\n\t\twindow.addEventListener( FEEDBACK_TOGGLE_EVENT, handler );\n\t\treturn () => {\n\t\t\twindow.removeEventListener( FEEDBACK_TOGGLE_EVENT, handler );\n\t\t};\n\t}, [ popupState, trackEvent ] );\n\n\tuseEffect( () => {\n\t\tsetSubmitDisabled( feedbackContent.trim().length < 10 || ! isUserConnected || isFetching );\n\t}, [ feedbackContent, feedbackResult, isUserConnected, isFetching ] );\n\n\tconst handleClose = () => {\n\t\tpopupState.close();\n\t\ttrackEvent( 'feedback_modal_closed', {\n\t\t\tfeedback_text: feedbackContent,\n\t\t} );\n\t};\n\tconst handleStartAntoher = () => {\n\t\tsetFeedbackContent( '' );\n\t\tsetFeedbackResult( null );\n\t};\n\tconst submitFeedback = () => {\n\t\tsetIsFetching( true );\n\t\thttpService()\n\t\t\t.post( 'elementor/v1/feedback/submit', {\n\t\t\t\tdescription: feedbackContent.trim(),\n\t\t\t} )\n\t\t\t.then( ( response ) => {\n\t\t\t\tsetFeedbackResult( {\n\t\t\t\t\tmessage: response.data.message,\n\t\t\t\t\tsuccess: response.data.success,\n\t\t\t\t} );\n\t\t\t\t// check if unauthorized - not signed in or expired, needs to reconnect to my-elementor account\n\t\t\t\tif (\n\t\t\t\t\t( ! response.data.success && response.data.code.toString() === '401' ) ||\n\t\t\t\t\tresponse.data.code.toString() === '403'\n\t\t\t\t) {\n\t\t\t\t\tsetIsUserConnected( false );\n\t\t\t\t}\n\t\t\t\ttrackEvent( response.data.success ? 'feedback_submitted' : 'feedback_error', {\n\t\t\t\t\tfeedback_length: feedbackContent.length,\n\t\t\t\t\terror_type: response.data.success ? undefined : 'server',\n\t\t\t\t\terror_message: response.data.success ? undefined : response.data.message,\n\t\t\t\t} );\n\t\t\t} )\n\t\t\t.finally( () => setIsFetching( false ) );\n\t};\n\n\tif ( ! isActive ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ThemeProvider>\n\t\t\t<Popover { ...bindDialog( popupState ) } onClose={ () => handleClose() }>\n\t\t\t\t<Dialog open={ popupState.isOpen }>\n\t\t\t\t\t<DialogHeader style={ { width: '100%', minWidth: '35rem' } }>\n\t\t\t\t\t\t<DialogTitle style={ { width: '100%' } }>\n\t\t\t\t\t\t\t<Stack\n\t\t\t\t\t\t\t\tdisplay=\"flex\"\n\t\t\t\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\t\t\t\talignItems=\"center\"\n\t\t\t\t\t\t\t\tjustifyContent=\"space-between\"\n\t\t\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Submit Feedback', 'elementor' ) }\n\t\t\t\t\t\t\t\t<CloseButton onClick={ popupState.close } />\n\t\t\t\t\t\t\t</Stack>\n\t\t\t\t\t\t</DialogTitle>\n\t\t\t\t\t</DialogHeader>\n\t\t\t\t\t<DialogContent>\n\t\t\t\t\t\t<Stack direction=\"column\" gap={ 2 }>\n\t\t\t\t\t\t\t{ isUserConnected ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<TextField\n\t\t\t\t\t\t\t\t\t\tautofocus\n\t\t\t\t\t\t\t\t\t\tplaceholder={ __(\n\t\t\t\t\t\t\t\t\t\t\t'E.g. Can you add ABC features? I want to do ABC and it’s important because …',\n\t\t\t\t\t\t\t\t\t\t\t'elementor'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tfullwith\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Your Feedback', 'elementor' ) }\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tid=\"elementor-feedback-usercontent\"\n\t\t\t\t\t\t\t\t\t\trows={ 6 }\n\t\t\t\t\t\t\t\t\t\tcols={ 80 }\n\t\t\t\t\t\t\t\t\t\tdisabled={ isFetching || feedbackResult?.success }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( event: React.ChangeEvent< HTMLInputElement > ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetFeedbackContent( event.target.value )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tvalue={ feedbackContent }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Stack direction=\"row\" justifyContent=\"flex-end\" alignItems=\"center\" gap={ 2 }>\n\t\t\t\t\t\t\t\t\t\t{ feedbackResult && (\n\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t{ feedbackResult.success ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<CheckIcon color=\"success\" />\n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<AlertCircleIcon color=\"error\" />\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t{ feedbackResult.message }\n\t\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t{ feedbackResult?.success ? (\n\t\t\t\t\t\t\t\t\t\t\t<Button variant=\"text\" onClick={ () => handleStartAntoher() }>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Submit Another Feedback', 'elementor' ) }\n\t\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled={ submitDisabled }\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={ submitFeedback }\n\t\t\t\t\t\t\t\t\t\t\t\tvariant=\"contained\"\n\t\t\t\t\t\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Submit', 'elementor' ) }\n\t\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Stack>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"contained\"\n\t\t\t\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\t\t\t\tsize=\"large\"\n\t\t\t\t\t\t\t\t\t\thref={ connectUrl }\n\t\t\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\t\t\trel=\"noopener\"\n\t\t\t\t\t\t\t\t\t\tonClick={ popupState.close }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Connect to Elementor', 'elementor' ) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Stack>\n\t\t\t\t\t</DialogContent>\n\t\t\t\t</Dialog>\n\t\t\t</Popover>\n\t\t</ThemeProvider>\n\t);\n}\n","export const EXPERIMENT_NAME = 'in_editor_feedback';\nexport const FEEDBACK_TOGGLE_EVENT = 'elementor/open-feedback';\n","import * as React from 'react';\nimport { Fragment } from 'react';\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 } ) => (\n\t\t\t\t<Fragment key={ id }>\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 { useEffect } from 'react';\nimport { isAngieAvailable } from '@elementor/editor-mcp';\nimport { trackEvent } from '@elementor/events';\nimport { AngieIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { AI_WIDGET_CTA_VIEWED_EVENT, ANGIE_GUIDE_TOGGLE_EVENT } from '../angie-consts';\n\nexport function useActionProps() {\n\tconst hasAngieInstalled = isAngieAvailable();\n\tconst visible = ! hasAngieInstalled;\n\n\tuseEffect( () => {\n\t\tif ( ! visible ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttrackEvent( {\n\t\t\teventName: AI_WIDGET_CTA_VIEWED_EVENT,\n\t\t\tentry_point: 'top_bar_icon',\n\t\t\thas_angie_installed: false,\n\t\t} );\n\t}, [ visible ] );\n\n\treturn {\n\t\ttitle: __( 'Angie', 'elementor' ),\n\t\ticon: AngieIcon,\n\t\tonClick: () => {\n\t\t\twindow.dispatchEvent( new CustomEvent( ANGIE_GUIDE_TOGGLE_EVENT ) );\n\t\t},\n\t\tselected: false,\n\t\tvisible,\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-angie',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { useCallback } from 'react';\nimport { UserIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nconst dispatchConnectClickEvent = ( eventName: string ) => {\n\ttry {\n\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\tconst config = extendedWindow?.elementorCommon?.eventsManager?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent( config.names.topBar[ eventName ], {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.eLogoMenu,\n\t\t\t\ttrigger: config.triggers.dropdownClick,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t} );\n\t\t}\n\t} catch ( error ) {\n\t\t// eslint-disable-next-line no-console\n\t\tconsole.warn( error );\n\t}\n};\n\nexport default function useConnectLinkConfig() {\n\tconst extendedWindow = window as unknown as ExtendedWindow;\n\tlet isUserConnected = false;\n\tconst isPro = extendedWindow?.elementor?.helpers.hasPro();\n\tlet target = '_blank';\n\tif ( isPro ) {\n\t\tisUserConnected = extendedWindow?.elementorPro?.config.isActive ?? false;\n\t} else {\n\t\tisUserConnected = extendedWindow?.elementorCommon?.config.library_connect.is_connected ?? false;\n\t\ttarget = '_self';\n\t}\n\n\tconst handleConnectClick = useCallback(\n\t\t( event: React.MouseEvent< HTMLElement > ) => {\n\t\t\tevent.preventDefault();\n\n\t\t\tif ( extendedWindow.jQuery && extendedWindow.jQuery.fn?.elementorConnect ) {\n\t\t\t\tconst connectUrl = extendedWindow?.elementor?.config.user.top_bar.connect_url;\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t\tconst $tempButton = ( extendedWindow as any ).jQuery( '<a>' );\n\t\t\t\t$tempButton\n\t\t\t\t\t?.attr( 'href', connectUrl )\n\t\t\t\t\t?.attr( 'target', '_blank' )\n\t\t\t\t\t?.attr( 'rel', 'opener' )\n\t\t\t\t\t?.css( 'display', 'none' )\n\t\t\t\t\t?.appendTo( 'body' );\n\n\t\t\t\t$tempButton.elementorConnect( {\n\t\t\t\t\tsuccess: () => {\n\t\t\t\t\t\tdispatchConnectClickEvent( 'accountConnected' );\n\n\t\t\t\t\t\tsetTimeout( () => {\n\t\t\t\t\t\t\textendedWindow.location.reload();\n\t\t\t\t\t\t}, 200 );\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\t$tempButton[ 0 ].click();\n\t\t\t\tdispatchConnectClickEvent( 'connectAccount' );\n\n\t\t\t\tsetTimeout( () => {\n\t\t\t\t\t$tempButton.remove();\n\t\t\t\t}, 1000 );\n\t\t\t}\n\t\t},\n\t\t[ extendedWindow ]\n\t);\n\n\treturn isUserConnected\n\t\t? {\n\t\t\t\ttitle: __( 'My Elementor', 'elementor' ),\n\t\t\t\thref: extendedWindow?.elementor?.config.user.top_bar.my_elementor_url,\n\t\t\t\ticon: UserIcon,\n\t\t\t\ttarget: '_blank',\n\t\t  }\n\t\t: {\n\t\t\t\ttitle: __( 'Connect my account', 'elementor' ),\n\t\t\t\thref: extendedWindow?.elementor?.config.user.top_bar.connect_url,\n\t\t\t\ticon: UserIcon,\n\t\t\t\ttarget,\n\t\t\t\tonClick: handleConnectClick,\n\t\t  };\n}\n","import { mainMenu } from '../../locations';\nimport useConnectLinkConfig from './hooks/use-connect-link-config';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'app-bar-connect',\n\t\tgroup: 'exits',\n\t\tpriority: 10,\n\t\tuseProps: useConnectLinkConfig,\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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,\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 { useEditMode } 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 editMode = useEditMode();\n\n\tconst isEditMode = editMode === 'edit';\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 = ! isEditMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = ! isEditMode || 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?.elementorCommon?.eventsManager?.config;\n\n\t\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent(\n\t\t\t\t\t\t\t\tconfig.names.topBar.publishButton,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'publish-button' ],\n\t\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\t\telement: config.elements.mainCta,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\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 { useMixpanel } from '@elementor/events';\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\tconst { dispatchEvent, config } = useMixpanel();\n\n\treturn {\n\t\ticon: LinkIcon,\n\t\ttitle: __( 'Copy and Share', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst eventName = config?.names?.editorOne?.topBarPublishDropdown;\n\t\t\tif ( eventName ) {\n\t\t\t\tdispatchEvent?.( eventName, {\n\t\t\t\t\tapp_type: config?.appTypes?.editor,\n\t\t\t\t\twindow_name: config?.appTypes?.editor,\n\t\t\t\t\tinteraction_type: config?.triggers?.click?.toLowerCase(),\n\t\t\t\t\ttarget_type: config?.targetTypes?.dropdownItem,\n\t\t\t\t\ttarget_name: config?.targetNames?.publishDropdown?.copyAndShare,\n\t\t\t\t\tinteraction_result: config?.interactionResults?.actionSelected,\n\t\t\t\t\ttarget_location: config?.locations?.topBar?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l1: config?.secondaryLocations?.publishDropdown?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l2: config?.targetTypes?.dropdownItem,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tcopyAndShare();\n\t\t},\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 { useMixpanel } from '@elementor/events';\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\tconst { dispatchEvent, config } = useMixpanel();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst eventName = config?.names?.editorOne?.topBarPublishDropdown;\n\t\t\tif ( eventName ) {\n\t\t\t\tdispatchEvent?.( eventName, {\n\t\t\t\t\tapp_type: config?.appTypes?.editor,\n\t\t\t\t\twindow_name: config?.appTypes?.editor,\n\t\t\t\t\tinteraction_type: config?.triggers?.click?.toLowerCase(),\n\t\t\t\t\ttarget_type: config?.targetTypes?.dropdownItem,\n\t\t\t\t\ttarget_name: config?.targetNames?.publishDropdown?.saveDraft,\n\t\t\t\t\tinteraction_result: config?.interactionResults?.actionSelected,\n\t\t\t\t\ttarget_location: config?.locations?.topBar?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l1: config?.secondaryLocations?.publishDropdown?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l2: config?.targetTypes?.dropdownItem,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsaveDraft();\n\t\t},\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { useMixpanel } from '@elementor/events';\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\tconst { dispatchEvent, config } = useMixpanel();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst eventName = config?.names?.editorOne?.topBarPublishDropdown;\n\t\t\tif ( eventName ) {\n\t\t\t\tdispatchEvent?.( eventName, {\n\t\t\t\t\tapp_type: config?.appTypes?.editor,\n\t\t\t\t\twindow_name: config?.appTypes?.editor,\n\t\t\t\t\tinteraction_type: config?.triggers?.click?.toLowerCase(),\n\t\t\t\t\ttarget_type: config?.targetTypes?.dropdownItem,\n\t\t\t\t\ttarget_name: config?.targetNames?.publishDropdown?.saveAsTemplate,\n\t\t\t\t\tinteraction_result: config?.interactionResults?.actionSelected,\n\t\t\t\t\ttarget_location: config?.locations?.topBar?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l1: config?.secondaryLocations?.publishDropdown?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l2: config?.targetTypes?.dropdownItem,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsaveTemplate();\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 { useMixpanel } from '@elementor/events';\nimport { EyeIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\tconst { dispatchEvent, config } = useMixpanel();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () => {\n\t\t\tconst eventName = config?.names?.editorOne?.topBarPublishDropdown;\n\t\t\tif ( eventName ) {\n\t\t\t\tdispatchEvent?.( eventName, {\n\t\t\t\t\tapp_type: config?.appTypes?.editor,\n\t\t\t\t\twindow_name: config?.appTypes?.editor,\n\t\t\t\t\tinteraction_type: config?.triggers?.click?.toLowerCase(),\n\t\t\t\t\ttarget_type: config?.targetTypes?.dropdownItem,\n\t\t\t\t\ttarget_name: config?.targetNames?.publishDropdown?.viewPage,\n\t\t\t\t\tinteraction_result: config?.interactionResults?.actionSelected,\n\t\t\t\t\ttarget_location: config?.locations?.topBar?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l1: config?.secondaryLocations?.publishDropdown?.replace( /\\s+/g, '_' ).toLowerCase(),\n\t\t\t\t\tlocation_l2: config?.targetTypes?.dropdownItem,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tif ( document?.id ) {\n\t\t\t\trunCommand( 'editor/documents/view', {\n\t\t\t\t\tid: document.id,\n\t\t\t\t} );\n\t\t\t}\n\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__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 { FileSettingsIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit' ? activeDocument : hostDocument;\n\n\tconst ButtonTitle = document\n\t\t? /* translators: %s: Post type label. */\n\t\t  __( '%s Settings', 'elementor' ).replace( '%s', document.type.label )\n\t\t: __( 'Document Settings', 'elementor' );\n\n\treturn {\n\t\ttitle: ButtonTitle,\n\t\ticon: FileSettingsIcon,\n\t\tonClick: () => {\n\t\t\tif ( ! document ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent( config.names.topBar.documentSettings, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations[ 'document-settings' ],\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\topenRoute( 'panel/page-settings/settings' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked || ! document,\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: 'document-settings-button',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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 { isExperimentActive } from '@elementor/editor-v1-adapters';\nimport { MessageLinesIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { mainMenu } from '../../locations';\nimport { EXPERIMENT_NAME, FEEDBACK_TOGGLE_EVENT } from './feedback-consts';\n\nexport function init() {\n\tconst isActive = isExperimentActive( EXPERIMENT_NAME );\n\tif ( ! isActive ) {\n\t\treturn;\n\t}\n\tmainMenu.registerAction( {\n\t\tid: 'open-send-feedback',\n\t\tgroup: 'help',\n\t\tpriority: 20,\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ticon: MessageLinesIcon,\n\t\t\t\ttitle: __( 'Send Feedback', 'elementor' ),\n\t\t\t\tonClick: () => {\n\t\t\t\t\tdispatchEvent( new CustomEvent( FEEDBACK_TOGGLE_EVENT ) );\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} );\n}\n","import { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { SearchIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ActionProps, type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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} satisfies ActionProps;\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,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HelpIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { type ExtendedWindow } from '../../../types';\n\nexport default function useActionProps() {\n\treturn {\n\t\ttitle: __( 'Help Center', 'elementor' ),\n\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\ticon: HelpIcon,\n\t\ttarget: '_blank',\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent( config.names.topBar.help, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.help,\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\t\t},\n\t};\n}\n","import { mainMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tgroup: 'help',\n\t\tpriority: 10,\n\t\tuseProps: useActionProps,\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent( config.names.topBar.history, {\n\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\telement: config.elements.link,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\topenRoute( 'panel/history/actions' );\n\t\t},\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { toolsMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 15,\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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,\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?.elementorCommon?.eventsManager?.config;\n\n\t\tif ( config ) {\n\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent( config.names.topBar.responsiveControls, {\n\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\tsecondaryLocation: config.secondaryLocations.responsiveControls,\n\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\telement: config.elements.buttonIcon,\n\t\t\t\tmode: value,\n\t\t\t} );\n\t\t}\n\n\t\tactivateBreakpoint( value );\n\t};\n\n\treturn (\n\t\t<Tabs\n\t\t\ttextColor=\"inherit\"\n\t\t\tindicatorColor=\"secondary\"\n\t\t\tvalue={ activeBreakpoint }\n\t\t\tonChange={ onChange }\n\t\t\taria-label={ __( 'Switch Device', 'elementor' ) }\n\t\t\tsx={ {\n\t\t\t\t'& .MuiTabs-indicator': {\n\t\t\t\t\tbackgroundColor: 'text.primary',\n\t\t\t\t},\n\t\t\t} }\n\t\t>\n\t\t\t{ breakpoints.map( ( { id, label, type, width } ) => {\n\t\t\t\tconst Icon = iconsMap[ id ];\n\n\t\t\t\tconst title = labelsMap[ type || 'default' ]\n\t\t\t\t\t.replace( '%s', label )\n\t\t\t\t\t.replace( '%d', width?.toString() || '' );\n\n\t\t\t\treturn (\n\t\t\t\t\t<Tab\n\t\t\t\t\t\tvalue={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\taria-label={ title }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<Tooltip title={ title }>\n\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsx={ { minWidth: 'auto' } }\n\t\t\t\t\t\tdata-testid={ `switch-device-to-${ id }` }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</Tabs>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn (\n\t\t<BaseTooltip\n\t\t\tPopperProps={ {\n\t\t\t\tsx: {\n\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\tmt: 2.5,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nconst iconsMap = {\n\twidescreen: WidescreenIcon,\n\tdesktop: DesktopIcon,\n\tlaptop: LaptopIcon,\n\ttablet_extra: TabletLandscapeIcon,\n\ttablet: TabletPortraitIcon,\n\tmobile_extra: MobileLandscapeIcon,\n\tmobile: MobilePortraitIcon,\n};\n\nconst labelsMap = {\n\tdefault: '%s',\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'min-width': __( '%s (%dpx and up)', 'elementor' ),\n\n\t// translators: %s: Breakpoint label, %d: Breakpoint size.\n\t'max-width': __( '%s (up to %dpx)', 'elementor' ),\n} as const;\n","import { injectIntoResponsive } from '../../locations';\nimport BreakpointsSwitcher from './components/breakpoints-switcher';\n\nexport function init() {\n\tinjectIntoResponsive( {\n\t\tid: 'responsive-breakpoints-switcher',\n\t\tcomponent: BreakpointsSwitcher,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indication.\n\t\t},\n\t} );\n}\n","import { injectIntoTop } from '@elementor/editor';\n\nimport { mainMenu } from '../../locations';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\tmainMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tgroup: 'default',\n\t\tpriority: 1,\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 { SettingsIcon } 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: SettingsIcon,\n\t\tonClick: () => {\n\t\t\tconst extendedWindow = window as unknown as ExtendedWindow;\n\t\t\tconst config = extendedWindow?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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 { utilitiesMenu } from '../../locations';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 25,\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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\tgroup: 'default',\n\t\tpriority: 10,\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\tif ( config ) {\n\t\t\t\textendedWindow.elementorCommon.eventsManager.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\tgroup: 'default',\n\t\tpriority: 30,\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\tpriority: 20,\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?.elementorCommon?.eventsManager?.config;\n\n\t\t\t\t\tif ( config ) {\n\t\t\t\t\t\textendedWindow.elementorCommon.eventsManager.dispatchEvent(\n\t\t\t\t\t\t\tconfig.names.topBar.exitToWordpress,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlocation: config.locations.topBar,\n\t\t\t\t\t\t\t\tsecondaryLocation: config.secondaryLocations.elementorLogo,\n\t\t\t\t\t\t\t\ttrigger: config.triggers.click,\n\t\t\t\t\t\t\t\telement: config.elements.link,\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};\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 initAngie } from './angie';\nimport { init as initConnect } from './connect';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initDocumentsSettings } from './documents-settings';\nimport { init as initElements } from './elements';\nimport { init as initFeedback } from './feedback';\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\tinitAngie();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitDocumentsSettings();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitResponsive();\n\tinitSiteSettings();\n\tinitFeedback();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n\tinitConnect();\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","React","React","React","Box","Tooltip","createMenu","createMenu","injectIntoTop","React","Box","Divider","ThemeProvider","React","React","React","ToggleButton","MenuItem","React","React","React","React","React","useEffect","useState","__","__","React","Stack","__","useState","dispatchEvent","useEffect","React","Stack","Stack","React","bindMenu","bindTrigger","usePopupState","__","usePopupState","bindTrigger","__","bindMenu","React","bindMenu","bindTrigger","usePopupState","__","useMenuItems","usePopupState","bindTrigger","__","bindMenu","React","useEffect","useState","ThemeProvider","useMixpanel","Button","CloseButton","Stack","usePopupState","__","useState","trackEvent","useMixpanel","usePopupState","useEffect","ThemeProvider","Stack","__","CloseButton","Button","useMenuItems","MenuItem","React","Fragment","MAX_TOOLBAR_ACTIONS","useMenuItems","MenuItem","Fragment","document","ThemeProvider","Box","Divider","useEffect","__","useEffect","__","__","init","useActiveDocument","__","useActionProps","document","init","useActionProps","React","useActiveDocument","bindMenu","bindTrigger","Box","Button","Tooltip","usePopupState","__","React","Divider","styled","useMenuItems","styled","MenuItem","Divider","document","useActiveDocument","usePopupState","Button","Tooltip","__","Box","bindTrigger","bindMenu","useActiveDocument","useActiveDocumentActions","useMixpanel","__","document","dispatchEvent","useActiveDocument","useActiveDocumentActions","useMixpanel","__","document","dispatchEvent","useActiveDocumentActions","useMixpanel","__","dispatchEvent","useActiveDocument","runCommand","useMixpanel","EyeIcon","__","document","dispatchEvent","init","useActiveDocument","__","useActionProps","document","init","useActionProps","openRoute","useRouteStatus","__","useActionProps","__","init","useActionProps","isExperimentActive","__","init","isExperimentActive","__","runCommand","__","useActionProps","init","useActionProps","__","useActionProps","init","useActionProps","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"]}