PluginProbe
Elementor Website Builder – more than just a page builder / 3.8.0-beta1
Elementor Website Builder – more than just a page builder v3.8.0-beta1
4.3.4 4.3.3 4.3.2 4.3.1 4.3.0 4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 All 457 releases
elementor / app / modules / site-editor / assets / js / organisms / menu.js

menu.js in Elementor Website Builder – more than just a page builder 3.8.0-beta1, at app/modules/site-editor/assets/js/organisms/menu.js

42 lines 1.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import UiMenu from 'elementor-app/ui/menu/menu';
2 import { Context as TemplateTypesContext } from '../context/template-types';
3 import Button from 'elementor-app/ui/molecules/button';
4 import AddNewButton from 'elementor-app/ui/molecules/add-new-button';
5
6 import './menu.scss';
7
8 export default function Menu( props ) {
9 const { templateTypes } = React.useContext( TemplateTypesContext ),
10 actionButton = ( itemProps ) => {
11 const className = 'eps-menu-item__action-button';
12
13 if ( props.promotion ) {
14 return <Button text={ __( 'Go Pro', 'elementor' ) } hideText icon="eicon-lock" className={ className } />;
15 }
16
17 const goToCreate = () => {
18 location.href = itemProps.urls.create;
19 };
20
21 return (
22 <span className={ className }>
23 <AddNewButton hideText={ true } size="sm" onClick={ () => goToCreate() } />
24 </span>
25 );
26 };
27
28 return (
29 <UiMenu menuItems={ templateTypes } actionButton={ actionButton } promotion={ props.promotion }>
30 { props.allPartsButton }
31 <div className="eps-menu__title">
32 { __( 'Site Parts', 'elementor' ) }
33 </div>
34 </UiMenu>
35 );
36 }
37
38 Menu.propTypes = {
39 allPartsButton: PropTypes.element.isRequired,
40 promotion: PropTypes.bool,
41 };
42