@elementor/editor-app-bar 4.0.5 → 4.0.8

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/dist/index.js CHANGED
@@ -31,7 +31,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
31
31
  var index_exports = {};
32
32
  __export(index_exports, {
33
33
  documentOptionsMenu: () => documentOptionsMenu,
34
- init: () => init18,
34
+ init: () => init19,
35
35
  injectIntoPageIndication: () => injectIntoPageIndication,
36
36
  injectIntoPrimaryAction: () => injectIntoPrimaryAction,
37
37
  injectIntoResponsive: () => injectIntoResponsive,
@@ -233,9 +233,9 @@ var documentOptionsMenu = (0, import_menus2.createMenu)({
233
233
  var import_editor2 = require("@elementor/editor");
234
234
 
235
235
  // src/components/app-bar.tsx
236
- var React20 = __toESM(require("react"));
236
+ var React22 = __toESM(require("react"));
237
237
  var import_editor_documents = require("@elementor/editor-documents");
238
- var import_ui11 = require("@elementor/ui");
238
+ var import_ui13 = require("@elementor/ui");
239
239
 
240
240
  // src/components/locations/main-menu-location.tsx
241
241
  var React10 = __toESM(require("react"));
@@ -373,65 +373,177 @@ function ResponsiveLocation() {
373
373
  }
374
374
 
375
375
  // src/components/locations/tools-menu-location.tsx
376
- var React18 = __toESM(require("react"));
376
+ var React20 = __toESM(require("react"));
377
377
 
378
- // src/components/ui/toolbar-menu.tsx
378
+ // src/extensions/angie/components/angie-guide-location.tsx
379
+ var React15 = __toESM(require("react"));
380
+ var import_react3 = require("react");
381
+ var import_editor_ui = require("@elementor/editor-ui");
382
+ var import_events = require("@elementor/events");
383
+ var import_ui8 = require("@elementor/ui");
384
+
385
+ // src/extensions/angie/angie-consts.ts
386
+ var import_i18n2 = require("@wordpress/i18n");
387
+ var ANGIE_GUIDE_TOGGLE_EVENT = "elementor/editor/toggle-angie-guide";
388
+ var CREATE_WIDGET_EVENT = "elementor/editor/create-widget";
389
+ var ANGIE_BUTTON_ARIA_LABEL = (0, import_i18n2.__)("Angie", "elementor");
390
+ var ANGIE_LEARN_MORE_URL = "https://go.elementor.com/angie-learn-more";
391
+ var ANGIE_DESCRIPTION = (0, import_i18n2.__)(
392
+ "Angie lets you generate custom widgets, sections, and code using simple instructions.",
393
+ "elementor"
394
+ );
395
+ var AI_WIDGET_CTA_VIEWED_EVENT = "ai_widget_cta_viewed";
396
+ var ANGIE_TOP_BAR_PROMOTION_IMAGE_URL = "https://assets.elementor.com/packages/v1/images/angie-top-bar-promotion.svg";
397
+ var ANGIE_TOP_BAR_DESCRIPTION = (0, import_i18n2.__)("Build custom widgets using simple instructions.", "elementor");
398
+
399
+ // src/extensions/angie/components/angie-guide-card.tsx
379
400
  var React14 = __toESM(require("react"));
380
401
  var import_ui7 = require("@elementor/ui");
402
+ var import_i18n3 = require("@wordpress/i18n");
403
+ function AngieGuideCard({ imageUrl, description, learnMoreUrl, onInstall, onClose }) {
404
+ return /* @__PURE__ */ React14.createElement(import_ui7.ClickAwayListener, { onClickAway: onClose }, /* @__PURE__ */ React14.createElement(import_ui7.Stack, { sx: { width: 296 }, "data-testid": "e-angie-guide-card" }, /* @__PURE__ */ React14.createElement(import_ui7.Stack, { direction: "row", alignItems: "center", gap: 1, py: 1, px: 2 }, /* @__PURE__ */ React14.createElement(import_ui7.Typography, { variant: "subtitle2" }, (0, import_i18n3.__)("Meet Angie", "elementor")), /* @__PURE__ */ React14.createElement(import_ui7.Chip, { label: (0, import_i18n3.__)("New", "elementor"), size: "small", color: "info", variant: "standard" }), /* @__PURE__ */ React14.createElement(
405
+ import_ui7.CloseButton,
406
+ {
407
+ edge: "end",
408
+ sx: { ml: "auto" },
409
+ slotProps: { icon: { fontSize: "small" } },
410
+ onClick: onClose
411
+ }
412
+ )), /* @__PURE__ */ React14.createElement(import_ui7.Image, { src: imageUrl, alt: (0, import_i18n3.__)("Angie", "elementor"), sx: { height: 150, width: "100%" } }), /* @__PURE__ */ React14.createElement(import_ui7.Stack, { px: 2, pt: 1.5, pb: 1 }, /* @__PURE__ */ React14.createElement(import_ui7.Typography, { variant: "body2", color: "secondary" }, description)), /* @__PURE__ */ React14.createElement(import_ui7.Stack, { direction: "row", justifyContent: "flex-end", gap: 1, pt: 1, pb: 1.5, px: 2 }, /* @__PURE__ */ React14.createElement(
413
+ import_ui7.Button,
414
+ {
415
+ variant: "text",
416
+ size: "small",
417
+ color: "secondary",
418
+ onClick: () => {
419
+ window.open(learnMoreUrl, "_blank", "noopener,noreferrer");
420
+ onClose();
421
+ }
422
+ },
423
+ (0, import_i18n3.__)("Learn More", "elementor")
424
+ ), /* @__PURE__ */ React14.createElement(import_ui7.Button, { variant: "contained", size: "small", color: "accent", onClick: onInstall }, (0, import_i18n3.__)("Try for free", "elementor")))));
425
+ }
426
+
427
+ // src/extensions/angie/components/angie-guide-location.tsx
428
+ function AngieGuideLocation() {
429
+ const [anchorEl, setAnchorEl] = (0, import_react3.useState)(null);
430
+ const { dispatchEvent: dispatchEvent2 } = (0, import_events.useMixpanel)();
431
+ const isOpen = Boolean(anchorEl);
432
+ (0, import_react3.useEffect)(() => {
433
+ const handleToggle = () => {
434
+ setAnchorEl((prev) => {
435
+ if (prev) {
436
+ return null;
437
+ }
438
+ return document.querySelector(`[aria-label="${ANGIE_BUTTON_ARIA_LABEL}"]`);
439
+ });
440
+ };
441
+ window.addEventListener(ANGIE_GUIDE_TOGGLE_EVENT, handleToggle);
442
+ return () => {
443
+ window.removeEventListener(ANGIE_GUIDE_TOGGLE_EVENT, handleToggle);
444
+ };
445
+ }, []);
446
+ const handleClose = () => setAnchorEl(null);
447
+ const handleInstall = async () => {
448
+ dispatchEvent2?.(AI_WIDGET_CTA_VIEWED_EVENT, {
449
+ entry_point: "top_bar_icon"
450
+ });
451
+ window.dispatchEvent(
452
+ new CustomEvent(CREATE_WIDGET_EVENT, {
453
+ detail: {
454
+ entry_point: "top_bar_icon"
455
+ }
456
+ })
457
+ );
458
+ handleClose();
459
+ };
460
+ return /* @__PURE__ */ React15.createElement(import_editor_ui.ThemeProvider, null, /* @__PURE__ */ React15.createElement(
461
+ import_ui8.Infotip,
462
+ {
463
+ content: /* @__PURE__ */ React15.createElement(
464
+ AngieGuideCard,
465
+ {
466
+ imageUrl: ANGIE_TOP_BAR_PROMOTION_IMAGE_URL,
467
+ description: ANGIE_TOP_BAR_DESCRIPTION,
468
+ learnMoreUrl: ANGIE_LEARN_MORE_URL,
469
+ onInstall: handleInstall,
470
+ onClose: handleClose
471
+ }
472
+ ),
473
+ placement: "bottom-start",
474
+ open: isOpen,
475
+ disableHoverListener: true,
476
+ PopperProps: {
477
+ anchorEl,
478
+ modifiers: [
479
+ {
480
+ name: "offset",
481
+ options: { offset: [-4, -4] }
482
+ }
483
+ ]
484
+ }
485
+ },
486
+ /* @__PURE__ */ React15.createElement("span", null)
487
+ ));
488
+ }
489
+
490
+ // src/components/ui/toolbar-menu.tsx
491
+ var React16 = __toESM(require("react"));
492
+ var import_ui9 = require("@elementor/ui");
381
493
  function ToolbarMenu({ children, ...props }) {
382
- return /* @__PURE__ */ React14.createElement(MenuContextProvider, { type: "toolbar" }, /* @__PURE__ */ React14.createElement(import_ui7.Stack, { sx: { px: 1.5 }, spacing: 1.5, direction: "row", alignItems: "center", ...props }, children));
494
+ return /* @__PURE__ */ React16.createElement(MenuContextProvider, { type: "toolbar" }, /* @__PURE__ */ React16.createElement(import_ui9.Stack, { sx: { px: 1.5 }, spacing: 1.5, direction: "row", alignItems: "center", ...props }, children));
383
495
  }
384
496
 
385
497
  // src/components/ui/toolbar-menu-more.tsx
386
- var React15 = __toESM(require("react"));
498
+ var React17 = __toESM(require("react"));
387
499
  var import_icons2 = require("@elementor/icons");
388
- var import_ui8 = require("@elementor/ui");
389
- var import_i18n2 = require("@wordpress/i18n");
500
+ var import_ui10 = require("@elementor/ui");
501
+ var import_i18n4 = require("@wordpress/i18n");
390
502
  function ToolbarMenuMore({ children, id }) {
391
- const popupState = (0, import_ui8.usePopupState)({
503
+ const popupState = (0, import_ui10.usePopupState)({
392
504
  variant: "popover",
393
505
  popupId: id
394
506
  });
395
- return /* @__PURE__ */ React15.createElement(React15.Fragment, null, /* @__PURE__ */ React15.createElement(ToolbarMenuItem, { ...(0, import_ui8.bindTrigger)(popupState), title: (0, import_i18n2.__)("More", "elementor") }, /* @__PURE__ */ React15.createElement(import_icons2.DotsVerticalIcon, null)), /* @__PURE__ */ React15.createElement(PopoverMenu, { onClick: popupState.close, ...(0, import_ui8.bindMenu)(popupState) }, children));
507
+ return /* @__PURE__ */ React17.createElement(React17.Fragment, null, /* @__PURE__ */ React17.createElement(ToolbarMenuItem, { ...(0, import_ui10.bindTrigger)(popupState), title: (0, import_i18n4.__)("More", "elementor") }, /* @__PURE__ */ React17.createElement(import_icons2.DotsVerticalIcon, null)), /* @__PURE__ */ React17.createElement(PopoverMenu, { onClick: popupState.close, ...(0, import_ui10.bindMenu)(popupState) }, children));
396
508
  }
397
509
 
398
510
  // src/components/locations/integrations-menu-location.tsx
399
- var React16 = __toESM(require("react"));
511
+ var React18 = __toESM(require("react"));
400
512
  var import_icons3 = require("@elementor/icons");
401
- var import_ui9 = require("@elementor/ui");
402
- var import_i18n3 = require("@wordpress/i18n");
513
+ var import_ui11 = require("@elementor/ui");
514
+ var import_i18n5 = require("@wordpress/i18n");
403
515
  var { useMenuItems: useMenuItems2 } = integrationsMenu;
404
516
  function IntegrationsMenuLocation() {
405
517
  const menuItems = useMenuItems2();
406
- const popupState = (0, import_ui9.usePopupState)({
518
+ const popupState = (0, import_ui11.usePopupState)({
407
519
  variant: "popover",
408
520
  popupId: "elementor-v2-app-bar-integrations"
409
521
  });
410
522
  if (menuItems.default.length === 0) {
411
523
  return null;
412
524
  }
413
- return /* @__PURE__ */ React16.createElement(React16.Fragment, null, /* @__PURE__ */ React16.createElement(ToolbarMenuItem, { ...(0, import_ui9.bindTrigger)(popupState), title: (0, import_i18n3.__)("Integrations", "elementor") }, /* @__PURE__ */ React16.createElement(import_icons3.PlugIcon, null)), /* @__PURE__ */ React16.createElement(
525
+ return /* @__PURE__ */ React18.createElement(React18.Fragment, null, /* @__PURE__ */ React18.createElement(ToolbarMenuItem, { ...(0, import_ui11.bindTrigger)(popupState), title: (0, import_i18n5.__)("Integrations", "elementor") }, /* @__PURE__ */ React18.createElement(import_icons3.PlugIcon, null)), /* @__PURE__ */ React18.createElement(
414
526
  PopoverMenu,
415
527
  {
416
528
  onClick: popupState.close,
417
- ...(0, import_ui9.bindMenu)(popupState),
529
+ ...(0, import_ui11.bindMenu)(popupState),
418
530
  marginThreshold: 8,
419
531
  open: popupState.isOpen
420
532
  },
421
- menuItems.default.map(({ MenuItem: IntegrationsMenuItem, id }) => /* @__PURE__ */ React16.createElement(IntegrationsMenuItem, { key: id }))
533
+ menuItems.default.map(({ MenuItem: IntegrationsMenuItem, id }) => /* @__PURE__ */ React18.createElement(IntegrationsMenuItem, { key: id }))
422
534
  ));
423
535
  }
424
536
 
425
537
  // src/components/locations/send-feedback-popup-location.tsx
426
- var React17 = __toESM(require("react"));
427
- var import_react3 = require("react");
428
- var import_editor_ui = require("@elementor/editor-ui");
538
+ var React19 = __toESM(require("react"));
539
+ var import_react4 = require("react");
540
+ var import_editor_ui2 = require("@elementor/editor-ui");
429
541
  var import_editor_v1_adapters = require("@elementor/editor-v1-adapters");
430
- var import_events = require("@elementor/events");
542
+ var import_events2 = require("@elementor/events");
431
543
  var import_http_client = require("@elementor/http-client");
432
544
  var import_icons4 = require("@elementor/icons");
433
- var import_ui10 = require("@elementor/ui");
434
- var import_i18n4 = require("@wordpress/i18n");
545
+ var import_ui12 = require("@elementor/ui");
546
+ var import_i18n6 = require("@wordpress/i18n");
435
547
 
436
548
  // src/extensions/feedback/feedback-consts.ts
437
549
  var EXPERIMENT_NAME = "in_editor_feedback";
@@ -445,23 +557,23 @@ var checkIfUserIsConnected = () => {
445
557
  function SendFeedbackPopupLocation() {
446
558
  const isActive = (0, import_editor_v1_adapters.isExperimentActive)(EXPERIMENT_NAME);
447
559
  const extendedWindow = window;
448
- const [isUserConnected, setIsUserConnected] = (0, import_react3.useState)(checkIfUserIsConnected());
560
+ const [isUserConnected, setIsUserConnected] = (0, import_react4.useState)(checkIfUserIsConnected());
449
561
  const connectUrl = extendedWindow?.elementor?.config.user.top_bar.connect_url;
450
- const [feedbackContent, setFeedbackContent] = (0, import_react3.useState)("");
451
- const [feedbackResult, setFeedbackResult] = (0, import_react3.useState)(null);
452
- const [submitDisabled, setSubmitDisabled] = (0, import_react3.useState)(true);
453
- const { dispatchEvent: trackEvent = (...args) => void args } = (0, import_events.useMixpanel)();
454
- const popupState = (0, import_ui10.usePopupState)({
562
+ const [feedbackContent, setFeedbackContent] = (0, import_react4.useState)("");
563
+ const [feedbackResult, setFeedbackResult] = (0, import_react4.useState)(null);
564
+ const [submitDisabled, setSubmitDisabled] = (0, import_react4.useState)(true);
565
+ const { dispatchEvent: trackEvent2 = (...args) => void args } = (0, import_events2.useMixpanel)();
566
+ const popupState = (0, import_ui12.usePopupState)({
455
567
  variant: "dialog",
456
568
  popupId: FEEDBACK_TOGGLE_EVENT
457
569
  });
458
- const [isFetching, setIsFetching] = (0, import_react3.useState)(false);
459
- (0, import_react3.useEffect)(() => {
570
+ const [isFetching, setIsFetching] = (0, import_react4.useState)(false);
571
+ (0, import_react4.useEffect)(() => {
460
572
  const handler = () => {
461
573
  popupState.toggle();
462
574
  setIsUserConnected(checkIfUserIsConnected());
463
575
  setFeedbackResult(null);
464
- trackEvent("feedback_modal_opened", {
576
+ trackEvent2("feedback_modal_opened", {
465
577
  source: "top_bar",
466
578
  context: "v4_beta"
467
579
  });
@@ -470,13 +582,13 @@ function SendFeedbackPopupLocation() {
470
582
  return () => {
471
583
  window.removeEventListener(FEEDBACK_TOGGLE_EVENT, handler);
472
584
  };
473
- }, [popupState, trackEvent]);
474
- (0, import_react3.useEffect)(() => {
585
+ }, [popupState, trackEvent2]);
586
+ (0, import_react4.useEffect)(() => {
475
587
  setSubmitDisabled(feedbackContent.trim().length < 10 || !isUserConnected || isFetching);
476
588
  }, [feedbackContent, feedbackResult, isUserConnected, isFetching]);
477
589
  const handleClose = () => {
478
590
  popupState.close();
479
- trackEvent("feedback_modal_closed", {
591
+ trackEvent2("feedback_modal_closed", {
480
592
  feedback_text: feedbackContent
481
593
  });
482
594
  };
@@ -496,7 +608,7 @@ function SendFeedbackPopupLocation() {
496
608
  if (!response.data.success && response.data.code.toString() === "401" || response.data.code.toString() === "403") {
497
609
  setIsUserConnected(false);
498
610
  }
499
- trackEvent(response.data.success ? "feedback_submitted" : "feedback_error", {
611
+ trackEvent2(response.data.success ? "feedback_submitted" : "feedback_error", {
500
612
  feedback_length: feedbackContent.length,
501
613
  error_type: response.data.success ? void 0 : "server",
502
614
  error_message: response.data.success ? void 0 : response.data.message
@@ -506,8 +618,8 @@ function SendFeedbackPopupLocation() {
506
618
  if (!isActive) {
507
619
  return null;
508
620
  }
509
- return /* @__PURE__ */ React17.createElement(import_editor_ui.ThemeProvider, null, /* @__PURE__ */ React17.createElement(import_ui10.Popover, { ...(0, import_ui10.bindDialog)(popupState), onClose: () => handleClose() }, /* @__PURE__ */ React17.createElement(import_ui10.Dialog, { open: popupState.isOpen }, /* @__PURE__ */ React17.createElement(import_ui10.DialogHeader, { style: { width: "100%", minWidth: "35rem" } }, /* @__PURE__ */ React17.createElement(import_ui10.DialogTitle, { style: { width: "100%" } }, /* @__PURE__ */ React17.createElement(
510
- import_ui10.Stack,
621
+ return /* @__PURE__ */ React19.createElement(import_editor_ui2.ThemeProvider, null, /* @__PURE__ */ React19.createElement(import_ui12.Popover, { ...(0, import_ui12.bindDialog)(popupState), onClose: () => handleClose() }, /* @__PURE__ */ React19.createElement(import_ui12.Dialog, { open: popupState.isOpen }, /* @__PURE__ */ React19.createElement(import_ui12.DialogHeader, { style: { width: "100%", minWidth: "35rem" } }, /* @__PURE__ */ React19.createElement(import_ui12.DialogTitle, { style: { width: "100%" } }, /* @__PURE__ */ React19.createElement(
622
+ import_ui12.Stack,
511
623
  {
512
624
  display: "flex",
513
625
  direction: "row",
@@ -515,18 +627,18 @@ function SendFeedbackPopupLocation() {
515
627
  justifyContent: "space-between",
516
628
  width: "100%"
517
629
  },
518
- (0, import_i18n4.__)("Submit Feedback", "elementor"),
519
- /* @__PURE__ */ React17.createElement(import_ui10.CloseButton, { onClick: popupState.close })
520
- ))), /* @__PURE__ */ React17.createElement(import_ui10.DialogContent, null, /* @__PURE__ */ React17.createElement(import_ui10.Stack, { direction: "column", gap: 2 }, isUserConnected ? /* @__PURE__ */ React17.createElement(React17.Fragment, null, /* @__PURE__ */ React17.createElement(
521
- import_ui10.TextField,
630
+ (0, import_i18n6.__)("Submit Feedback", "elementor"),
631
+ /* @__PURE__ */ React19.createElement(import_ui12.CloseButton, { onClick: popupState.close })
632
+ ))), /* @__PURE__ */ React19.createElement(import_ui12.DialogContent, null, /* @__PURE__ */ React19.createElement(import_ui12.Stack, { direction: "column", gap: 2 }, isUserConnected ? /* @__PURE__ */ React19.createElement(React19.Fragment, null, /* @__PURE__ */ React19.createElement(
633
+ import_ui12.TextField,
522
634
  {
523
635
  autofocus: true,
524
- placeholder: (0, import_i18n4.__)(
636
+ placeholder: (0, import_i18n6.__)(
525
637
  "E.g. Can you add ABC features? I want to do ABC and it\u2019s important because \u2026",
526
638
  "elementor"
527
639
  ),
528
640
  fullwith: true,
529
- label: (0, import_i18n4.__)("Your Feedback", "elementor"),
641
+ label: (0, import_i18n6.__)("Your Feedback", "elementor"),
530
642
  multiline: true,
531
643
  id: "elementor-feedback-usercontent",
532
644
  rows: 6,
@@ -535,8 +647,8 @@ function SendFeedbackPopupLocation() {
535
647
  onChange: (event) => setFeedbackContent(event.target.value),
536
648
  value: feedbackContent
537
649
  }
538
- ), /* @__PURE__ */ React17.createElement(import_ui10.Stack, { direction: "row", justifyContent: "flex-end", alignItems: "center", gap: 2 }, feedbackResult && /* @__PURE__ */ React17.createElement(React17.Fragment, null, feedbackResult.success ? /* @__PURE__ */ React17.createElement(import_icons4.CheckIcon, { color: "success" }) : /* @__PURE__ */ React17.createElement(import_icons4.AlertCircleIcon, { color: "error" }), feedbackResult.message), feedbackResult?.success ? /* @__PURE__ */ React17.createElement(import_ui10.Button, { variant: "text", onClick: () => handleStartAntoher() }, (0, import_i18n4.__)("Submit Another Feedback", "elementor")) : /* @__PURE__ */ React17.createElement(
539
- import_ui10.Button,
650
+ ), /* @__PURE__ */ React19.createElement(import_ui12.Stack, { direction: "row", justifyContent: "flex-end", alignItems: "center", gap: 2 }, feedbackResult && /* @__PURE__ */ React19.createElement(React19.Fragment, null, feedbackResult.success ? /* @__PURE__ */ React19.createElement(import_icons4.CheckIcon, { color: "success" }) : /* @__PURE__ */ React19.createElement(import_icons4.AlertCircleIcon, { color: "error" }), feedbackResult.message), feedbackResult?.success ? /* @__PURE__ */ React19.createElement(import_ui12.Button, { variant: "text", onClick: () => handleStartAntoher() }, (0, import_i18n6.__)("Submit Another Feedback", "elementor")) : /* @__PURE__ */ React19.createElement(
651
+ import_ui12.Button,
540
652
  {
541
653
  disabled: submitDisabled,
542
654
  onClick: submitFeedback,
@@ -544,9 +656,9 @@ function SendFeedbackPopupLocation() {
544
656
  color: "primary",
545
657
  size: "small"
546
658
  },
547
- (0, import_i18n4.__)("Submit", "elementor")
548
- ))) : /* @__PURE__ */ React17.createElement(React17.Fragment, null, /* @__PURE__ */ React17.createElement(
549
- import_ui10.Button,
659
+ (0, import_i18n6.__)("Submit", "elementor")
660
+ ))) : /* @__PURE__ */ React19.createElement(React19.Fragment, null, /* @__PURE__ */ React19.createElement(
661
+ import_ui12.Button,
550
662
  {
551
663
  variant: "contained",
552
664
  color: "primary",
@@ -556,7 +668,7 @@ function SendFeedbackPopupLocation() {
556
668
  rel: "noopener",
557
669
  onClick: popupState.close
558
670
  },
559
- (0, import_i18n4.__)("Connect to Elementor", "elementor")
671
+ (0, import_i18n6.__)("Connect to Elementor", "elementor")
560
672
  )))))));
561
673
  }
562
674
 
@@ -567,12 +679,12 @@ function ToolsMenuLocation() {
567
679
  const menuItems = useMenuItems3();
568
680
  const toolbarMenuItems = menuItems.default.slice(0, MAX_TOOLBAR_ACTIONS);
569
681
  const popoverMenuItems = menuItems.default.slice(MAX_TOOLBAR_ACTIONS);
570
- return /* @__PURE__ */ React18.createElement(ToolbarMenu, null, toolbarMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React18.createElement(MenuItem2, { key: id })), /* @__PURE__ */ React18.createElement(SendFeedbackPopupLocation, null), /* @__PURE__ */ React18.createElement(IntegrationsMenuLocation, null), popoverMenuItems.length > 0 && /* @__PURE__ */ React18.createElement(ToolbarMenuMore, { id: "elementor-editor-app-bar-tools-more" }, popoverMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React18.createElement(MenuItem2, { key: id }))));
682
+ return /* @__PURE__ */ React20.createElement(ToolbarMenu, null, toolbarMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React20.createElement(MenuItem2, { key: id })), /* @__PURE__ */ React20.createElement(AngieGuideLocation, null), /* @__PURE__ */ React20.createElement(SendFeedbackPopupLocation, null), /* @__PURE__ */ React20.createElement(IntegrationsMenuLocation, null), popoverMenuItems.length > 0 && /* @__PURE__ */ React20.createElement(ToolbarMenuMore, { id: "elementor-editor-app-bar-tools-more" }, popoverMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React20.createElement(MenuItem2, { key: id }))));
571
683
  }
572
684
 
573
685
  // src/components/locations/utilities-menu-location.tsx
574
- var React19 = __toESM(require("react"));
575
- var import_react4 = require("react");
686
+ var React21 = __toESM(require("react"));
687
+ var import_react5 = require("react");
576
688
  var MAX_TOOLBAR_ACTIONS2 = 4;
577
689
  var { useMenuItems: useMenuItems4 } = utilitiesMenu;
578
690
  function UtilitiesMenuLocation() {
@@ -580,19 +692,58 @@ function UtilitiesMenuLocation() {
580
692
  const shouldUsePopover = menuItems.default.length > MAX_TOOLBAR_ACTIONS2 + 1;
581
693
  const toolbarMenuItems = shouldUsePopover ? menuItems.default.slice(0, MAX_TOOLBAR_ACTIONS2) : menuItems.default;
582
694
  const popoverMenuItems = shouldUsePopover ? menuItems.default.slice(MAX_TOOLBAR_ACTIONS2) : [];
583
- return /* @__PURE__ */ React19.createElement(ToolbarMenu, null, toolbarMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React19.createElement(import_react4.Fragment, { key: id }, /* @__PURE__ */ React19.createElement(MenuItem2, null))), popoverMenuItems.length > 0 && /* @__PURE__ */ React19.createElement(ToolbarMenuMore, { id: "elementor-editor-app-bar-utilities-more" }, popoverMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React19.createElement(MenuItem2, { key: id }))));
695
+ return /* @__PURE__ */ React21.createElement(ToolbarMenu, null, toolbarMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React21.createElement(import_react5.Fragment, { key: id }, /* @__PURE__ */ React21.createElement(MenuItem2, null))), popoverMenuItems.length > 0 && /* @__PURE__ */ React21.createElement(ToolbarMenuMore, { id: "elementor-editor-app-bar-utilities-more" }, popoverMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React21.createElement(MenuItem2, { key: id }))));
584
696
  }
585
697
 
586
698
  // src/components/app-bar.tsx
587
699
  function AppBar() {
588
700
  const document2 = (0, import_editor_documents.__useActiveDocument)();
589
- return /* @__PURE__ */ React20.createElement(import_ui11.ThemeProvider, { colorScheme: "dark" }, /* @__PURE__ */ React20.createElement(import_ui11.AppBar, { position: "sticky" }, /* @__PURE__ */ React20.createElement(import_ui11.Toolbar, { disableGutters: true, variant: "dense" }, /* @__PURE__ */ React20.createElement(import_ui11.Box, { display: "grid", gridTemplateColumns: "repeat(3, 1fr)", flexGrow: 1 }, /* @__PURE__ */ React20.createElement(import_ui11.Grid, { container: true, flexWrap: "nowrap" }, /* @__PURE__ */ React20.createElement(MainMenuLocation, null), document2?.permissions?.allowAddingWidgets && /* @__PURE__ */ React20.createElement(ToolsMenuLocation, null)), /* @__PURE__ */ React20.createElement(import_ui11.Grid, { container: true, justifyContent: "center" }, /* @__PURE__ */ React20.createElement(ToolbarMenu, { spacing: 1.5 }, /* @__PURE__ */ React20.createElement(import_ui11.Divider, { orientation: "vertical" }), /* @__PURE__ */ React20.createElement(PageIndicationLocation, null), /* @__PURE__ */ React20.createElement(import_ui11.Divider, { orientation: "vertical" }), /* @__PURE__ */ React20.createElement(ResponsiveLocation, null), /* @__PURE__ */ React20.createElement(import_ui11.Divider, { orientation: "vertical" }))), /* @__PURE__ */ React20.createElement(import_ui11.Grid, { container: true, justifyContent: "flex-end", flexWrap: "nowrap" }, /* @__PURE__ */ React20.createElement(UtilitiesMenuLocation, null), /* @__PURE__ */ React20.createElement(PrimaryActionLocation, null))))));
701
+ return /* @__PURE__ */ React22.createElement(import_ui13.ThemeProvider, { colorScheme: "dark" }, /* @__PURE__ */ React22.createElement(import_ui13.AppBar, { position: "sticky" }, /* @__PURE__ */ React22.createElement(import_ui13.Toolbar, { disableGutters: true, variant: "dense" }, /* @__PURE__ */ React22.createElement(import_ui13.Box, { display: "grid", gridTemplateColumns: "repeat(3, 1fr)", flexGrow: 1 }, /* @__PURE__ */ React22.createElement(import_ui13.Grid, { container: true, flexWrap: "nowrap" }, /* @__PURE__ */ React22.createElement(MainMenuLocation, null), document2?.permissions?.allowAddingWidgets && /* @__PURE__ */ React22.createElement(ToolsMenuLocation, null)), /* @__PURE__ */ React22.createElement(import_ui13.Grid, { container: true, justifyContent: "center" }, /* @__PURE__ */ React22.createElement(ToolbarMenu, { spacing: 1.5 }, /* @__PURE__ */ React22.createElement(import_ui13.Divider, { orientation: "vertical" }), /* @__PURE__ */ React22.createElement(PageIndicationLocation, null), /* @__PURE__ */ React22.createElement(import_ui13.Divider, { orientation: "vertical" }), /* @__PURE__ */ React22.createElement(ResponsiveLocation, null), /* @__PURE__ */ React22.createElement(import_ui13.Divider, { orientation: "vertical" }))), /* @__PURE__ */ React22.createElement(import_ui13.Grid, { container: true, justifyContent: "flex-end", flexWrap: "nowrap" }, /* @__PURE__ */ React22.createElement(UtilitiesMenuLocation, null), /* @__PURE__ */ React22.createElement(PrimaryActionLocation, null))))));
590
702
  }
591
703
 
592
- // src/extensions/connect/hooks/use-connect-link-config.tsx
593
- var import_react5 = require("react");
704
+ // src/extensions/angie/hooks/use-action-props.ts
705
+ var import_react6 = require("react");
706
+ var import_editor_mcp = require("@elementor/editor-mcp");
707
+ var import_events3 = require("@elementor/events");
594
708
  var import_icons5 = require("@elementor/icons");
595
- var import_i18n5 = require("@wordpress/i18n");
709
+ var import_i18n7 = require("@wordpress/i18n");
710
+ function useActionProps() {
711
+ const hasAngieInstalled = (0, import_editor_mcp.isAngieAvailable)();
712
+ const visible = !hasAngieInstalled;
713
+ (0, import_react6.useEffect)(() => {
714
+ if (!visible) {
715
+ return;
716
+ }
717
+ (0, import_events3.trackEvent)({
718
+ eventName: AI_WIDGET_CTA_VIEWED_EVENT,
719
+ entry_point: "top_bar_icon",
720
+ has_angie_installed: false
721
+ });
722
+ }, [visible]);
723
+ return {
724
+ title: (0, import_i18n7.__)("Angie", "elementor"),
725
+ icon: import_icons5.AngieIcon,
726
+ onClick: () => {
727
+ window.dispatchEvent(new CustomEvent(ANGIE_GUIDE_TOGGLE_EVENT));
728
+ },
729
+ selected: false,
730
+ visible
731
+ };
732
+ }
733
+
734
+ // src/extensions/angie/index.ts
735
+ function init() {
736
+ toolsMenu.registerToggleAction({
737
+ id: "toggle-angie",
738
+ priority: 2,
739
+ useProps: useActionProps
740
+ });
741
+ }
742
+
743
+ // src/extensions/connect/hooks/use-connect-link-config.tsx
744
+ var import_react7 = require("react");
745
+ var import_icons6 = require("@elementor/icons");
746
+ var import_i18n8 = require("@wordpress/i18n");
596
747
  var dispatchConnectClickEvent = (eventName) => {
597
748
  try {
598
749
  const extendedWindow = window;
@@ -620,7 +771,7 @@ function useConnectLinkConfig() {
620
771
  isUserConnected = extendedWindow?.elementorCommon?.config.library_connect.is_connected ?? false;
621
772
  target = "_self";
622
773
  }
623
- const handleConnectClick = (0, import_react5.useCallback)(
774
+ const handleConnectClick = (0, import_react7.useCallback)(
624
775
  (event) => {
625
776
  event.preventDefault();
626
777
  if (extendedWindow.jQuery && extendedWindow.jQuery.fn?.elementorConnect) {
@@ -645,21 +796,21 @@ function useConnectLinkConfig() {
645
796
  [extendedWindow]
646
797
  );
647
798
  return isUserConnected ? {
648
- title: (0, import_i18n5.__)("My Elementor", "elementor"),
799
+ title: (0, import_i18n8.__)("My Elementor", "elementor"),
649
800
  href: extendedWindow?.elementor?.config.user.top_bar.my_elementor_url,
650
- icon: import_icons5.UserIcon,
801
+ icon: import_icons6.UserIcon,
651
802
  target: "_blank"
652
803
  } : {
653
- title: (0, import_i18n5.__)("Connect my account", "elementor"),
804
+ title: (0, import_i18n8.__)("Connect my account", "elementor"),
654
805
  href: extendedWindow?.elementor?.config.user.top_bar.connect_url,
655
- icon: import_icons5.UserIcon,
806
+ icon: import_icons6.UserIcon,
656
807
  target,
657
808
  onClick: handleConnectClick
658
809
  };
659
810
  }
660
811
 
661
812
  // src/extensions/connect/index.ts
662
- function init() {
813
+ function init2() {
663
814
  mainMenu.registerLink({
664
815
  id: "app-bar-connect",
665
816
  group: "exits",
@@ -671,13 +822,13 @@ function init() {
671
822
  // src/extensions/documents-preview/hooks/use-action-props.ts
672
823
  var import_editor_documents2 = require("@elementor/editor-documents");
673
824
  var import_editor_v1_adapters2 = require("@elementor/editor-v1-adapters");
674
- var import_icons6 = require("@elementor/icons");
675
- var import_i18n6 = require("@wordpress/i18n");
676
- function useActionProps() {
825
+ var import_icons7 = require("@elementor/icons");
826
+ var import_i18n9 = require("@wordpress/i18n");
827
+ function useActionProps2() {
677
828
  const document2 = (0, import_editor_documents2.__useActiveDocument)();
678
829
  return {
679
- icon: import_icons6.EyeIcon,
680
- title: (0, import_i18n6.__)("Preview Changes", "elementor"),
830
+ icon: import_icons7.EyeIcon,
831
+ title: (0, import_i18n9.__)("Preview Changes", "elementor"),
681
832
  onClick: () => {
682
833
  const extendedWindow = window;
683
834
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -700,27 +851,27 @@ function useActionProps() {
700
851
  }
701
852
 
702
853
  // src/extensions/documents-preview/index.ts
703
- function init2() {
854
+ function init3() {
704
855
  utilitiesMenu.registerAction({
705
856
  id: "document-preview-button",
706
857
  priority: 30,
707
- useProps: useActionProps
858
+ useProps: useActionProps2
708
859
  });
709
860
  }
710
861
 
711
862
  // src/extensions/documents-save/components/primary-action.tsx
712
- var React22 = __toESM(require("react"));
863
+ var React24 = __toESM(require("react"));
713
864
  var import_editor_documents3 = require("@elementor/editor-documents");
714
865
  var import_editor_v1_adapters3 = require("@elementor/editor-v1-adapters");
715
- var import_icons7 = require("@elementor/icons");
716
- var import_ui13 = require("@elementor/ui");
717
- var import_i18n7 = require("@wordpress/i18n");
866
+ var import_icons8 = require("@elementor/icons");
867
+ var import_ui15 = require("@elementor/ui");
868
+ var import_i18n10 = require("@wordpress/i18n");
718
869
 
719
870
  // src/extensions/documents-save/components/primary-action-menu.tsx
720
- var React21 = __toESM(require("react"));
721
- var import_ui12 = require("@elementor/ui");
871
+ var React23 = __toESM(require("react"));
872
+ var import_ui14 = require("@elementor/ui");
722
873
  var { useMenuItems: useMenuItems5 } = documentOptionsMenu;
723
- var StyledPopoverMenu = (0, import_ui12.styled)(PopoverMenu)`
874
+ var StyledPopoverMenu = (0, import_ui14.styled)(PopoverMenu)`
724
875
  & > .MuiPopover-paper > .MuiList-root {
725
876
  & > .MuiDivider-root {
726
877
  display: none;
@@ -733,7 +884,7 @@ var StyledPopoverMenu = (0, import_ui12.styled)(PopoverMenu)`
733
884
  `;
734
885
  function PrimaryActionMenu(props) {
735
886
  const { save: saveActions, default: defaultActions } = useMenuItems5();
736
- return /* @__PURE__ */ React21.createElement(
887
+ return /* @__PURE__ */ React23.createElement(
737
888
  StyledPopoverMenu,
738
889
  {
739
890
  ...props,
@@ -751,13 +902,13 @@ function PrimaryActionMenu(props) {
751
902
  }
752
903
  },
753
904
  saveActions.map(({ MenuItem: MenuItem2, id }, index) => [
754
- index > 0 && /* @__PURE__ */ React21.createElement(import_ui12.Divider, { key: `${id}-divider` }),
755
- /* @__PURE__ */ React21.createElement(MenuItem2, { key: id })
905
+ index > 0 && /* @__PURE__ */ React23.createElement(import_ui14.Divider, { key: `${id}-divider` }),
906
+ /* @__PURE__ */ React23.createElement(MenuItem2, { key: id })
756
907
  ]),
757
- saveActions.length > 0 && defaultActions.length > 0 && /* @__PURE__ */ React21.createElement(import_ui12.Divider, null),
908
+ saveActions.length > 0 && defaultActions.length > 0 && /* @__PURE__ */ React23.createElement(import_ui14.Divider, null),
758
909
  defaultActions.map(({ MenuItem: MenuItem2, id }, index) => [
759
- index > 0 && /* @__PURE__ */ React21.createElement(import_ui12.Divider, { key: `${id}-divider` }),
760
- /* @__PURE__ */ React21.createElement(MenuItem2, { key: id })
910
+ index > 0 && /* @__PURE__ */ React23.createElement(import_ui14.Divider, { key: `${id}-divider` }),
911
+ /* @__PURE__ */ React23.createElement(MenuItem2, { key: id })
761
912
  ])
762
913
  );
763
914
  }
@@ -768,7 +919,7 @@ function PrimaryAction() {
768
919
  const { save } = (0, import_editor_documents3.__useActiveDocumentActions)();
769
920
  const editMode = (0, import_editor_v1_adapters3.useEditMode)();
770
921
  const isEditMode = editMode === "edit";
771
- const popupState = (0, import_ui13.usePopupState)({
922
+ const popupState = (0, import_ui15.usePopupState)({
772
923
  variant: "popover",
773
924
  popupId: "document-save-options"
774
925
  });
@@ -778,8 +929,8 @@ function PrimaryAction() {
778
929
  const isPublishDisabled = !isEditMode || !isPublishEnabled(document2);
779
930
  const isSaveOptionsDisabled = !isEditMode || document2.type.value === "kit";
780
931
  const shouldShowSpinner = document2.isSaving && !isPublishDisabled;
781
- return /* @__PURE__ */ React22.createElement(React22.Fragment, null, /* @__PURE__ */ React22.createElement(import_ui13.ButtonGroup, { size: "large", variant: "contained" }, /* @__PURE__ */ React22.createElement(
782
- import_ui13.Button,
932
+ return /* @__PURE__ */ React24.createElement(React24.Fragment, null, /* @__PURE__ */ React24.createElement(import_ui15.ButtonGroup, { size: "large", variant: "contained" }, /* @__PURE__ */ React24.createElement(
933
+ import_ui15.Button,
783
934
  {
784
935
  onClick: () => {
785
936
  const extendedWindow = window;
@@ -809,11 +960,11 @@ function PrimaryAction() {
809
960
  },
810
961
  disabled: isPublishDisabled
811
962
  },
812
- shouldShowSpinner ? /* @__PURE__ */ React22.createElement(import_ui13.CircularProgress, { color: "inherit", size: "1.5em" }) : getLabel(document2)
813
- ), /* @__PURE__ */ React22.createElement(
814
- import_ui13.Tooltip,
963
+ shouldShowSpinner ? /* @__PURE__ */ React24.createElement(import_ui15.CircularProgress, { color: "inherit", size: "1.5em" }) : getLabel(document2)
964
+ ), /* @__PURE__ */ React24.createElement(
965
+ import_ui15.Tooltip,
815
966
  {
816
- title: (0, import_i18n7.__)("Save Options", "elementor"),
967
+ title: (0, import_i18n10.__)("Save Options", "elementor"),
817
968
  PopperProps: {
818
969
  sx: {
819
970
  "&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom": {
@@ -823,21 +974,21 @@ function PrimaryAction() {
823
974
  }
824
975
  }
825
976
  },
826
- /* @__PURE__ */ React22.createElement(import_ui13.Box, { component: "span", "aria-label": void 0 }, /* @__PURE__ */ React22.createElement(
827
- import_ui13.Button,
977
+ /* @__PURE__ */ React24.createElement(import_ui15.Box, { component: "span", "aria-label": void 0 }, /* @__PURE__ */ React24.createElement(
978
+ import_ui15.Button,
828
979
  {
829
980
  size: "small",
830
- ...(0, import_ui13.bindTrigger)(popupState),
981
+ ...(0, import_ui15.bindTrigger)(popupState),
831
982
  sx: { px: 0, height: "100%", borderRadius: 0 },
832
983
  disabled: isSaveOptionsDisabled,
833
- "aria-label": (0, import_i18n7.__)("Save Options", "elementor")
984
+ "aria-label": (0, import_i18n10.__)("Save Options", "elementor")
834
985
  },
835
- /* @__PURE__ */ React22.createElement(import_icons7.ChevronDownIcon, null)
986
+ /* @__PURE__ */ React24.createElement(import_icons8.ChevronDownIcon, null)
836
987
  ))
837
- )), /* @__PURE__ */ React22.createElement(PrimaryActionMenu, { ...(0, import_ui13.bindMenu)(popupState), onClick: popupState.close }));
988
+ )), /* @__PURE__ */ React24.createElement(PrimaryActionMenu, { ...(0, import_ui15.bindMenu)(popupState), onClick: popupState.close }));
838
989
  }
839
990
  function getLabel(document2) {
840
- return document2.userCan.publish ? (0, import_i18n7.__)("Publish", "elementor") : (0, import_i18n7.__)("Submit", "elementor");
991
+ return document2.userCan.publish ? (0, import_i18n10.__)("Publish", "elementor") : (0, import_i18n10.__)("Submit", "elementor");
841
992
  }
842
993
  function isPublishEnabled(document2) {
843
994
  if (document2.type.value === "kit") {
@@ -848,16 +999,16 @@ function isPublishEnabled(document2) {
848
999
 
849
1000
  // src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts
850
1001
  var import_editor_documents4 = require("@elementor/editor-documents");
851
- var import_events2 = require("@elementor/events");
852
- var import_icons8 = require("@elementor/icons");
853
- var import_i18n8 = require("@wordpress/i18n");
1002
+ var import_events4 = require("@elementor/events");
1003
+ var import_icons9 = require("@elementor/icons");
1004
+ var import_i18n11 = require("@wordpress/i18n");
854
1005
  function useDocumentCopyAndShareProps() {
855
1006
  const document2 = (0, import_editor_documents4.__useActiveDocument)();
856
1007
  const { copyAndShare } = (0, import_editor_documents4.__useActiveDocumentActions)();
857
- const { dispatchEvent: dispatchEvent2, config } = (0, import_events2.useMixpanel)();
1008
+ const { dispatchEvent: dispatchEvent2, config } = (0, import_events4.useMixpanel)();
858
1009
  return {
859
- icon: import_icons8.LinkIcon,
860
- title: (0, import_i18n8.__)("Copy and Share", "elementor"),
1010
+ icon: import_icons9.LinkIcon,
1011
+ title: (0, import_i18n11.__)("Copy and Share", "elementor"),
861
1012
  onClick: () => {
862
1013
  const eventName = config?.names?.editorOne?.topBarPublishDropdown;
863
1014
  if (eventName) {
@@ -882,16 +1033,16 @@ function useDocumentCopyAndShareProps() {
882
1033
 
883
1034
  // src/extensions/documents-save/hooks/use-document-save-draft-props.ts
884
1035
  var import_editor_documents5 = require("@elementor/editor-documents");
885
- var import_events3 = require("@elementor/events");
886
- var import_icons9 = require("@elementor/icons");
887
- var import_i18n9 = require("@wordpress/i18n");
1036
+ var import_events5 = require("@elementor/events");
1037
+ var import_icons10 = require("@elementor/icons");
1038
+ var import_i18n12 = require("@wordpress/i18n");
888
1039
  function useDocumentSaveDraftProps() {
889
1040
  const document2 = (0, import_editor_documents5.__useActiveDocument)();
890
1041
  const { saveDraft } = (0, import_editor_documents5.__useActiveDocumentActions)();
891
- const { dispatchEvent: dispatchEvent2, config } = (0, import_events3.useMixpanel)();
1042
+ const { dispatchEvent: dispatchEvent2, config } = (0, import_events5.useMixpanel)();
892
1043
  return {
893
- icon: import_icons9.FileReportIcon,
894
- title: (0, import_i18n9.__)("Save Draft", "elementor"),
1044
+ icon: import_icons10.FileReportIcon,
1045
+ title: (0, import_i18n12.__)("Save Draft", "elementor"),
895
1046
  onClick: () => {
896
1047
  const eventName = config?.names?.editorOne?.topBarPublishDropdown;
897
1048
  if (eventName) {
@@ -915,15 +1066,15 @@ function useDocumentSaveDraftProps() {
915
1066
 
916
1067
  // src/extensions/documents-save/hooks/use-document-save-template-props.ts
917
1068
  var import_editor_documents6 = require("@elementor/editor-documents");
918
- var import_events4 = require("@elementor/events");
919
- var import_icons10 = require("@elementor/icons");
920
- var import_i18n10 = require("@wordpress/i18n");
1069
+ var import_events6 = require("@elementor/events");
1070
+ var import_icons11 = require("@elementor/icons");
1071
+ var import_i18n13 = require("@wordpress/i18n");
921
1072
  function useDocumentSaveTemplateProps() {
922
1073
  const { saveTemplate } = (0, import_editor_documents6.__useActiveDocumentActions)();
923
- const { dispatchEvent: dispatchEvent2, config } = (0, import_events4.useMixpanel)();
1074
+ const { dispatchEvent: dispatchEvent2, config } = (0, import_events6.useMixpanel)();
924
1075
  return {
925
- icon: import_icons10.FolderIcon,
926
- title: (0, import_i18n10.__)("Save as Template", "elementor"),
1076
+ icon: import_icons11.FolderIcon,
1077
+ title: (0, import_i18n13.__)("Save as Template", "elementor"),
927
1078
  onClick: () => {
928
1079
  const eventName = config?.names?.editorOne?.topBarPublishDropdown;
929
1080
  if (eventName) {
@@ -947,15 +1098,15 @@ function useDocumentSaveTemplateProps() {
947
1098
  // src/extensions/documents-save/hooks/use-document-view-page-props.ts
948
1099
  var import_editor_documents7 = require("@elementor/editor-documents");
949
1100
  var import_editor_v1_adapters4 = require("@elementor/editor-v1-adapters");
950
- var import_events5 = require("@elementor/events");
951
- var import_icons11 = require("@elementor/icons");
952
- var import_i18n11 = require("@wordpress/i18n");
1101
+ var import_events7 = require("@elementor/events");
1102
+ var import_icons12 = require("@elementor/icons");
1103
+ var import_i18n14 = require("@wordpress/i18n");
953
1104
  function useDocumentViewPageProps() {
954
1105
  const document2 = (0, import_editor_documents7.__useActiveDocument)();
955
- const { dispatchEvent: dispatchEvent2, config } = (0, import_events5.useMixpanel)();
1106
+ const { dispatchEvent: dispatchEvent2, config } = (0, import_events7.useMixpanel)();
956
1107
  return {
957
- icon: import_icons11.EyeIcon,
958
- title: (0, import_i18n11.__)("View Page", "elementor"),
1108
+ icon: import_icons12.EyeIcon,
1109
+ title: (0, import_i18n14.__)("View Page", "elementor"),
959
1110
  onClick: () => {
960
1111
  const eventName = config?.names?.editorOne?.topBarPublishDropdown;
961
1112
  if (eventName) {
@@ -981,7 +1132,7 @@ function useDocumentViewPageProps() {
981
1132
  }
982
1133
 
983
1134
  // src/extensions/documents-save/index.ts
984
- function init3() {
1135
+ function init4() {
985
1136
  injectIntoPrimaryAction({
986
1137
  id: "document-primary-action",
987
1138
  component: PrimaryAction
@@ -1013,20 +1164,20 @@ function init3() {
1013
1164
  // src/extensions/documents-settings/hooks/use-action-props.ts
1014
1165
  var import_editor_documents8 = require("@elementor/editor-documents");
1015
1166
  var import_editor_v1_adapters5 = require("@elementor/editor-v1-adapters");
1016
- var import_icons12 = require("@elementor/icons");
1017
- var import_i18n12 = require("@wordpress/i18n");
1018
- function useActionProps2() {
1167
+ var import_icons13 = require("@elementor/icons");
1168
+ var import_i18n15 = require("@wordpress/i18n");
1169
+ function useActionProps3() {
1019
1170
  const activeDocument = (0, import_editor_documents8.__useActiveDocument)();
1020
1171
  const hostDocument = (0, import_editor_documents8.__useHostDocument)();
1021
1172
  const { isActive, isBlocked } = (0, import_editor_v1_adapters5.__privateUseRouteStatus)("panel/page-settings");
1022
1173
  const document2 = activeDocument && activeDocument.type.value !== "kit" ? activeDocument : hostDocument;
1023
1174
  const ButtonTitle = document2 ? (
1024
1175
  /* translators: %s: Post type label. */
1025
- (0, import_i18n12.__)("%s Settings", "elementor").replace("%s", document2.type.label)
1026
- ) : (0, import_i18n12.__)("Document Settings", "elementor");
1176
+ (0, import_i18n15.__)("%s Settings", "elementor").replace("%s", document2.type.label)
1177
+ ) : (0, import_i18n15.__)("Document Settings", "elementor");
1027
1178
  return {
1028
1179
  title: ButtonTitle,
1029
- icon: import_icons12.FileSettingsIcon,
1180
+ icon: import_icons13.FileSettingsIcon,
1030
1181
  onClick: () => {
1031
1182
  if (!document2) {
1032
1183
  return;
@@ -1049,23 +1200,23 @@ function useActionProps2() {
1049
1200
  }
1050
1201
 
1051
1202
  // src/extensions/documents-settings/index.ts
1052
- function init4() {
1203
+ function init5() {
1053
1204
  toolsMenu.registerToggleAction({
1054
1205
  id: "document-settings-button",
1055
- priority: 2,
1056
- useProps: useActionProps2
1206
+ priority: 3,
1207
+ useProps: useActionProps3
1057
1208
  });
1058
1209
  }
1059
1210
 
1060
1211
  // src/extensions/elements/hooks/use-action-props.ts
1061
1212
  var import_editor_v1_adapters6 = require("@elementor/editor-v1-adapters");
1062
- var import_icons13 = require("@elementor/icons");
1063
- var import_i18n13 = require("@wordpress/i18n");
1064
- function useActionProps3() {
1213
+ var import_icons14 = require("@elementor/icons");
1214
+ var import_i18n16 = require("@wordpress/i18n");
1215
+ function useActionProps4() {
1065
1216
  const { isActive, isBlocked } = (0, import_editor_v1_adapters6.__privateUseRouteStatus)("panel/elements");
1066
1217
  return {
1067
- title: (0, import_i18n13.__)("Add Element", "elementor"),
1068
- icon: import_icons13.PlusIcon,
1218
+ title: (0, import_i18n16.__)("Add Element", "elementor"),
1219
+ icon: import_icons14.PlusIcon,
1069
1220
  onClick: () => {
1070
1221
  const extendedWindow = window;
1071
1222
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1086,10 +1237,10 @@ function useActionProps3() {
1086
1237
 
1087
1238
  // src/extensions/elements/sync/sync-panel-title.ts
1088
1239
  var import_editor_v1_adapters7 = require("@elementor/editor-v1-adapters");
1089
- var import_i18n14 = require("@wordpress/i18n");
1240
+ var import_i18n17 = require("@wordpress/i18n");
1090
1241
  function syncPanelTitle() {
1091
- const panelTitle = (0, import_i18n14.__)("Elements", "elementor");
1092
- const tabTitle = (0, import_i18n14.__)("Widgets", "elementor");
1242
+ const panelTitle = (0, import_i18n17.__)("Elements", "elementor");
1243
+ const tabTitle = (0, import_i18n17.__)("Widgets", "elementor");
1093
1244
  (0, import_editor_v1_adapters7.__privateListenTo)((0, import_editor_v1_adapters7.routeOpenEvent)("panel/elements"), () => {
1094
1245
  setPanelTitle(panelTitle);
1095
1246
  setTabTitle(tabTitle);
@@ -1112,20 +1263,20 @@ function setTabTitle(title) {
1112
1263
  }
1113
1264
 
1114
1265
  // src/extensions/elements/index.ts
1115
- function init5() {
1266
+ function init6() {
1116
1267
  syncPanelTitle();
1117
1268
  toolsMenu.registerToggleAction({
1118
1269
  id: "open-elements-panel",
1119
1270
  priority: 1,
1120
- useProps: useActionProps3
1271
+ useProps: useActionProps4
1121
1272
  });
1122
1273
  }
1123
1274
 
1124
1275
  // src/extensions/feedback/index.ts
1125
1276
  var import_editor_v1_adapters8 = require("@elementor/editor-v1-adapters");
1126
- var import_icons14 = require("@elementor/icons");
1127
- var import_i18n15 = require("@wordpress/i18n");
1128
- function init6() {
1277
+ var import_icons15 = require("@elementor/icons");
1278
+ var import_i18n18 = require("@wordpress/i18n");
1279
+ function init7() {
1129
1280
  const isActive = (0, import_editor_v1_adapters8.isExperimentActive)(EXPERIMENT_NAME);
1130
1281
  if (!isActive) {
1131
1282
  return;
@@ -1136,8 +1287,8 @@ function init6() {
1136
1287
  priority: 20,
1137
1288
  useProps: () => {
1138
1289
  return {
1139
- icon: import_icons14.MessageLinesIcon,
1140
- title: (0, import_i18n15.__)("Send Feedback", "elementor"),
1290
+ icon: import_icons15.MessageLinesIcon,
1291
+ title: (0, import_i18n18.__)("Send Feedback", "elementor"),
1141
1292
  onClick: () => {
1142
1293
  dispatchEvent(new CustomEvent(FEEDBACK_TOGGLE_EVENT));
1143
1294
  }
@@ -1148,12 +1299,12 @@ function init6() {
1148
1299
 
1149
1300
  // src/extensions/finder/hooks/use-action-props.ts
1150
1301
  var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
1151
- var import_icons15 = require("@elementor/icons");
1152
- var import_i18n16 = require("@wordpress/i18n");
1153
- function useActionProps4() {
1302
+ var import_icons16 = require("@elementor/icons");
1303
+ var import_i18n19 = require("@wordpress/i18n");
1304
+ function useActionProps5() {
1154
1305
  return {
1155
- title: (0, import_i18n16.__)("Finder", "elementor"),
1156
- icon: import_icons15.SearchIcon,
1306
+ title: (0, import_i18n19.__)("Finder", "elementor"),
1307
+ icon: import_icons16.SearchIcon,
1157
1308
  onClick: () => {
1158
1309
  const extendedWindow = window;
1159
1310
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1171,22 +1322,22 @@ function useActionProps4() {
1171
1322
  }
1172
1323
 
1173
1324
  // src/extensions/finder/index.ts
1174
- function init7() {
1325
+ function init8() {
1175
1326
  utilitiesMenu.registerAction({
1176
1327
  id: "toggle-finder",
1177
1328
  priority: 15,
1178
- useProps: useActionProps4
1329
+ useProps: useActionProps5
1179
1330
  });
1180
1331
  }
1181
1332
 
1182
1333
  // src/extensions/help/hooks/use-action-props.ts
1183
- var import_icons16 = require("@elementor/icons");
1184
- var import_i18n17 = require("@wordpress/i18n");
1185
- function useActionProps5() {
1334
+ var import_icons17 = require("@elementor/icons");
1335
+ var import_i18n20 = require("@wordpress/i18n");
1336
+ function useActionProps6() {
1186
1337
  return {
1187
- title: (0, import_i18n17.__)("Help Center", "elementor"),
1338
+ title: (0, import_i18n20.__)("Help Center", "elementor"),
1188
1339
  href: "https://go.elementor.com/editor-top-bar-learn/",
1189
- icon: import_icons16.HelpIcon,
1340
+ icon: import_icons17.HelpIcon,
1190
1341
  target: "_blank",
1191
1342
  onClick: () => {
1192
1343
  const extendedWindow = window;
@@ -1204,24 +1355,24 @@ function useActionProps5() {
1204
1355
  }
1205
1356
 
1206
1357
  // src/extensions/help/index.ts
1207
- function init8() {
1358
+ function init9() {
1208
1359
  mainMenu.registerLink({
1209
1360
  id: "open-help-center",
1210
1361
  group: "help",
1211
1362
  priority: 10,
1212
- useProps: useActionProps5
1363
+ useProps: useActionProps6
1213
1364
  });
1214
1365
  }
1215
1366
 
1216
1367
  // src/extensions/history/hooks/use-action-props.ts
1217
1368
  var import_editor_v1_adapters10 = require("@elementor/editor-v1-adapters");
1218
- var import_icons17 = require("@elementor/icons");
1219
- var import_i18n18 = require("@wordpress/i18n");
1220
- function useActionProps6() {
1369
+ var import_icons18 = require("@elementor/icons");
1370
+ var import_i18n21 = require("@wordpress/i18n");
1371
+ function useActionProps7() {
1221
1372
  const { isActive, isBlocked } = (0, import_editor_v1_adapters10.__privateUseRouteStatus)("panel/history");
1222
1373
  return {
1223
- title: (0, import_i18n18.__)("History", "elementor"),
1224
- icon: import_icons17.HistoryIcon,
1374
+ title: (0, import_i18n21.__)("History", "elementor"),
1375
+ icon: import_icons18.HistoryIcon,
1225
1376
  onClick: () => {
1226
1377
  const extendedWindow = window;
1227
1378
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1241,22 +1392,22 @@ function useActionProps6() {
1241
1392
  }
1242
1393
 
1243
1394
  // src/extensions/history/index.ts
1244
- function init9() {
1395
+ function init10() {
1245
1396
  toolsMenu.registerToggleAction({
1246
1397
  id: "open-history",
1247
1398
  priority: 15,
1248
- useProps: useActionProps6
1399
+ useProps: useActionProps7
1249
1400
  });
1250
1401
  }
1251
1402
 
1252
1403
  // src/extensions/keyboard-shortcuts/hooks/use-action-props.ts
1253
1404
  var import_editor_v1_adapters11 = require("@elementor/editor-v1-adapters");
1254
- var import_icons18 = require("@elementor/icons");
1255
- var import_i18n19 = require("@wordpress/i18n");
1256
- function useActionProps7() {
1405
+ var import_icons19 = require("@elementor/icons");
1406
+ var import_i18n22 = require("@wordpress/i18n");
1407
+ function useActionProps8() {
1257
1408
  return {
1258
- icon: import_icons18.KeyboardIcon,
1259
- title: (0, import_i18n19.__)("Keyboard Shortcuts", "elementor"),
1409
+ icon: import_icons19.KeyboardIcon,
1410
+ title: (0, import_i18n22.__)("Keyboard Shortcuts", "elementor"),
1260
1411
  onClick: () => {
1261
1412
  const extendedWindow = window;
1262
1413
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1274,21 +1425,21 @@ function useActionProps7() {
1274
1425
  }
1275
1426
 
1276
1427
  // src/extensions/keyboard-shortcuts/index.ts
1277
- function init10() {
1428
+ function init11() {
1278
1429
  mainMenu.registerAction({
1279
1430
  id: "open-keyboard-shortcuts",
1280
1431
  group: "default",
1281
1432
  priority: 40,
1282
- useProps: useActionProps7
1433
+ useProps: useActionProps8
1283
1434
  });
1284
1435
  }
1285
1436
 
1286
1437
  // src/extensions/responsive/components/breakpoints-switcher.tsx
1287
- var React23 = __toESM(require("react"));
1438
+ var React25 = __toESM(require("react"));
1288
1439
  var import_editor_responsive = require("@elementor/editor-responsive");
1289
- var import_icons19 = require("@elementor/icons");
1290
- var import_ui14 = require("@elementor/ui");
1291
- var import_i18n20 = require("@wordpress/i18n");
1440
+ var import_icons20 = require("@elementor/icons");
1441
+ var import_ui16 = require("@elementor/ui");
1442
+ var import_i18n23 = require("@wordpress/i18n");
1292
1443
  function BreakpointsSwitcher() {
1293
1444
  const breakpoints = (0, import_editor_responsive.useBreakpoints)();
1294
1445
  const activeBreakpoint = (0, import_editor_responsive.useActiveBreakpoint)();
@@ -1310,14 +1461,14 @@ function BreakpointsSwitcher() {
1310
1461
  }
1311
1462
  activateBreakpoint(value);
1312
1463
  };
1313
- return /* @__PURE__ */ React23.createElement(
1314
- import_ui14.Tabs,
1464
+ return /* @__PURE__ */ React25.createElement(
1465
+ import_ui16.Tabs,
1315
1466
  {
1316
1467
  textColor: "inherit",
1317
1468
  indicatorColor: "secondary",
1318
1469
  value: activeBreakpoint,
1319
1470
  onChange,
1320
- "aria-label": (0, import_i18n20.__)("Switch Device", "elementor"),
1471
+ "aria-label": (0, import_i18n23.__)("Switch Device", "elementor"),
1321
1472
  sx: {
1322
1473
  "& .MuiTabs-indicator": {
1323
1474
  backgroundColor: "text.primary"
@@ -1327,13 +1478,13 @@ function BreakpointsSwitcher() {
1327
1478
  breakpoints.map(({ id, label, type, width }) => {
1328
1479
  const Icon = iconsMap[id];
1329
1480
  const title = labelsMap[type || "default"].replace("%s", label).replace("%d", width?.toString() || "");
1330
- return /* @__PURE__ */ React23.createElement(
1331
- import_ui14.Tab,
1481
+ return /* @__PURE__ */ React25.createElement(
1482
+ import_ui16.Tab,
1332
1483
  {
1333
1484
  value: id,
1334
1485
  key: id,
1335
1486
  "aria-label": title,
1336
- icon: /* @__PURE__ */ React23.createElement(Tooltip4, { title }, /* @__PURE__ */ React23.createElement(Icon, null)),
1487
+ icon: /* @__PURE__ */ React25.createElement(Tooltip4, { title }, /* @__PURE__ */ React25.createElement(Icon, null)),
1337
1488
  sx: { minWidth: "auto" },
1338
1489
  "data-testid": `switch-device-to-${id}`
1339
1490
  }
@@ -1342,8 +1493,8 @@ function BreakpointsSwitcher() {
1342
1493
  );
1343
1494
  }
1344
1495
  function Tooltip4(props) {
1345
- return /* @__PURE__ */ React23.createElement(
1346
- import_ui14.Tooltip,
1496
+ return /* @__PURE__ */ React25.createElement(
1497
+ import_ui16.Tooltip,
1347
1498
  {
1348
1499
  PopperProps: {
1349
1500
  sx: {
@@ -1357,24 +1508,24 @@ function Tooltip4(props) {
1357
1508
  );
1358
1509
  }
1359
1510
  var iconsMap = {
1360
- widescreen: import_icons19.WidescreenIcon,
1361
- desktop: import_icons19.DesktopIcon,
1362
- laptop: import_icons19.LaptopIcon,
1363
- tablet_extra: import_icons19.TabletLandscapeIcon,
1364
- tablet: import_icons19.TabletPortraitIcon,
1365
- mobile_extra: import_icons19.MobileLandscapeIcon,
1366
- mobile: import_icons19.MobilePortraitIcon
1511
+ widescreen: import_icons20.WidescreenIcon,
1512
+ desktop: import_icons20.DesktopIcon,
1513
+ laptop: import_icons20.LaptopIcon,
1514
+ tablet_extra: import_icons20.TabletLandscapeIcon,
1515
+ tablet: import_icons20.TabletPortraitIcon,
1516
+ mobile_extra: import_icons20.MobileLandscapeIcon,
1517
+ mobile: import_icons20.MobilePortraitIcon
1367
1518
  };
1368
1519
  var labelsMap = {
1369
1520
  default: "%s",
1370
1521
  // translators: %s: Breakpoint label, %d: Breakpoint size.
1371
- "min-width": (0, import_i18n20.__)("%s (%dpx and up)", "elementor"),
1522
+ "min-width": (0, import_i18n23.__)("%s (%dpx and up)", "elementor"),
1372
1523
  // translators: %s: Breakpoint label, %d: Breakpoint size.
1373
- "max-width": (0, import_i18n20.__)("%s (up to %dpx)", "elementor")
1524
+ "max-width": (0, import_i18n23.__)("%s (up to %dpx)", "elementor")
1374
1525
  };
1375
1526
 
1376
1527
  // src/extensions/responsive/index.ts
1377
- function init11() {
1528
+ function init12() {
1378
1529
  injectIntoResponsive({
1379
1530
  id: "responsive-breakpoints-switcher",
1380
1531
  component: BreakpointsSwitcher,
@@ -1389,12 +1540,12 @@ function init11() {
1389
1540
  var import_editor = require("@elementor/editor");
1390
1541
 
1391
1542
  // src/extensions/site-settings/components/portalled-primary-action.tsx
1392
- var React26 = __toESM(require("react"));
1543
+ var React28 = __toESM(require("react"));
1393
1544
 
1394
1545
  // src/extensions/site-settings/components/portal.tsx
1395
- var React24 = __toESM(require("react"));
1546
+ var React26 = __toESM(require("react"));
1396
1547
  var import_editor_v1_adapters12 = require("@elementor/editor-v1-adapters");
1397
- var import_ui15 = require("@elementor/ui");
1548
+ var import_ui17 = require("@elementor/ui");
1398
1549
  function Portal(props) {
1399
1550
  const containerRef = (0, import_editor_v1_adapters12.__privateUseListenTo)(
1400
1551
  [(0, import_editor_v1_adapters12.routeOpenEvent)("panel/global"), (0, import_editor_v1_adapters12.routeCloseEvent)("panel/global")],
@@ -1403,22 +1554,22 @@ function Portal(props) {
1403
1554
  if (!containerRef.current) {
1404
1555
  return null;
1405
1556
  }
1406
- return /* @__PURE__ */ React24.createElement(import_ui15.Portal, { container: containerRef.current, ...props });
1557
+ return /* @__PURE__ */ React26.createElement(import_ui17.Portal, { container: containerRef.current, ...props });
1407
1558
  }
1408
1559
  function getContainerRef() {
1409
1560
  return (0, import_editor_v1_adapters12.__privateIsRouteActive)("panel/global") ? { current: document.querySelector("#elementor-panel-inner") } : { current: null };
1410
1561
  }
1411
1562
 
1412
1563
  // src/extensions/site-settings/components/primary-action.tsx
1413
- var React25 = __toESM(require("react"));
1564
+ var React27 = __toESM(require("react"));
1414
1565
  var import_editor_documents9 = require("@elementor/editor-documents");
1415
- var import_ui16 = require("@elementor/ui");
1416
- var import_i18n21 = require("@wordpress/i18n");
1566
+ var import_ui18 = require("@elementor/ui");
1567
+ var import_i18n24 = require("@wordpress/i18n");
1417
1568
  function PrimaryAction2() {
1418
1569
  const document2 = (0, import_editor_documents9.__useActiveDocument)();
1419
1570
  const { save } = (0, import_editor_documents9.__useActiveDocumentActions)();
1420
- return /* @__PURE__ */ React25.createElement(
1421
- import_ui16.Paper,
1571
+ return /* @__PURE__ */ React27.createElement(
1572
+ import_ui18.Paper,
1422
1573
  {
1423
1574
  sx: {
1424
1575
  px: 5,
@@ -1427,8 +1578,8 @@ function PrimaryAction2() {
1427
1578
  borderColor: "divider"
1428
1579
  }
1429
1580
  },
1430
- /* @__PURE__ */ React25.createElement(
1431
- import_ui16.Button,
1581
+ /* @__PURE__ */ React27.createElement(
1582
+ import_ui18.Button,
1432
1583
  {
1433
1584
  variant: "contained",
1434
1585
  disabled: !document2 || !document2.isDirty,
@@ -1436,27 +1587,27 @@ function PrimaryAction2() {
1436
1587
  sx: { width: "100%" },
1437
1588
  onClick: () => document2 && !document2.isSaving ? save() : null
1438
1589
  },
1439
- document2?.isSaving ? /* @__PURE__ */ React25.createElement(import_ui16.CircularProgress, null) : (0, import_i18n21.__)("Save Changes", "elementor")
1590
+ document2?.isSaving ? /* @__PURE__ */ React27.createElement(import_ui18.CircularProgress, null) : (0, import_i18n24.__)("Save Changes", "elementor")
1440
1591
  )
1441
1592
  );
1442
1593
  }
1443
1594
 
1444
1595
  // src/extensions/site-settings/components/portalled-primary-action.tsx
1445
1596
  function PortalledPrimaryAction() {
1446
- return /* @__PURE__ */ React26.createElement(Portal, null, /* @__PURE__ */ React26.createElement(PrimaryAction2, null));
1597
+ return /* @__PURE__ */ React28.createElement(Portal, null, /* @__PURE__ */ React28.createElement(PrimaryAction2, null));
1447
1598
  }
1448
1599
 
1449
1600
  // src/extensions/site-settings/hooks/use-action-props.ts
1450
1601
  var import_editor_v1_adapters13 = require("@elementor/editor-v1-adapters");
1451
- var import_icons20 = require("@elementor/icons");
1452
- var import_i18n22 = require("@wordpress/i18n");
1453
- function useActionProps8() {
1602
+ var import_icons21 = require("@elementor/icons");
1603
+ var import_i18n25 = require("@wordpress/i18n");
1604
+ function useActionProps9() {
1454
1605
  const { isActive, isBlocked } = (0, import_editor_v1_adapters13.__privateUseRouteStatus)("panel/global", {
1455
1606
  blockOnKitRoutes: false
1456
1607
  });
1457
1608
  return {
1458
- title: (0, import_i18n22.__)("Site Settings", "elementor"),
1459
- icon: import_icons20.SettingsIcon,
1609
+ title: (0, import_i18n25.__)("Site Settings", "elementor"),
1610
+ icon: import_icons21.SettingsIcon,
1460
1611
  onClick: () => {
1461
1612
  const extendedWindow = window;
1462
1613
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1480,7 +1631,7 @@ function useActionProps8() {
1480
1631
  }
1481
1632
 
1482
1633
  // src/extensions/site-settings/index.ts
1483
- function init12() {
1634
+ function init13() {
1484
1635
  (0, import_editor.injectIntoTop)({
1485
1636
  id: "site-settings-primary-action-portal",
1486
1637
  component: PortalledPrimaryAction
@@ -1489,19 +1640,19 @@ function init12() {
1489
1640
  id: "toggle-site-settings",
1490
1641
  group: "default",
1491
1642
  priority: 1,
1492
- useProps: useActionProps8
1643
+ useProps: useActionProps9
1493
1644
  });
1494
1645
  }
1495
1646
 
1496
1647
  // src/extensions/structure/hooks/use-action-props.ts
1497
1648
  var import_editor_v1_adapters14 = require("@elementor/editor-v1-adapters");
1498
- var import_icons21 = require("@elementor/icons");
1499
- var import_i18n23 = require("@wordpress/i18n");
1500
- function useActionProps9() {
1649
+ var import_icons22 = require("@elementor/icons");
1650
+ var import_i18n26 = require("@wordpress/i18n");
1651
+ function useActionProps10() {
1501
1652
  const { isActive, isBlocked } = (0, import_editor_v1_adapters14.__privateUseRouteStatus)("navigator");
1502
1653
  return {
1503
- title: (0, import_i18n23.__)("Structure", "elementor"),
1504
- icon: import_icons21.StructureIcon,
1654
+ title: (0, import_i18n26.__)("Structure", "elementor"),
1655
+ icon: import_icons22.StructureIcon,
1505
1656
  onClick: () => {
1506
1657
  const extendedWindow = window;
1507
1658
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1521,22 +1672,22 @@ function useActionProps9() {
1521
1672
  }
1522
1673
 
1523
1674
  // src/extensions/structure/index.ts
1524
- function init13() {
1675
+ function init14() {
1525
1676
  utilitiesMenu.registerToggleAction({
1526
1677
  id: "toggle-structure-view",
1527
1678
  priority: 25,
1528
- useProps: useActionProps9
1679
+ useProps: useActionProps10
1529
1680
  });
1530
1681
  }
1531
1682
 
1532
1683
  // src/extensions/theme-builder/hooks/use-action-props.ts
1533
1684
  var import_editor_v1_adapters15 = require("@elementor/editor-v1-adapters");
1534
- var import_icons22 = require("@elementor/icons");
1535
- var import_i18n24 = require("@wordpress/i18n");
1536
- function useActionProps10() {
1685
+ var import_icons23 = require("@elementor/icons");
1686
+ var import_i18n27 = require("@wordpress/i18n");
1687
+ function useActionProps11() {
1537
1688
  return {
1538
- icon: import_icons22.ThemeBuilderIcon,
1539
- title: (0, import_i18n24.__)("Theme Builder", "elementor"),
1689
+ icon: import_icons23.ThemeBuilderIcon,
1690
+ title: (0, import_i18n27.__)("Theme Builder", "elementor"),
1540
1691
  onClick: () => {
1541
1692
  const extendedWindow = window;
1542
1693
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1554,24 +1705,24 @@ function useActionProps10() {
1554
1705
  }
1555
1706
 
1556
1707
  // src/extensions/theme-builder/index.ts
1557
- function init14() {
1708
+ function init15() {
1558
1709
  mainMenu.registerAction({
1559
1710
  id: "open-theme-builder",
1560
1711
  group: "default",
1561
1712
  priority: 10,
1562
- useProps: useActionProps10
1713
+ useProps: useActionProps11
1563
1714
  });
1564
1715
  }
1565
1716
 
1566
1717
  // src/extensions/user-preferences/hooks/use-action-props.ts
1567
1718
  var import_editor_v1_adapters16 = require("@elementor/editor-v1-adapters");
1568
- var import_icons23 = require("@elementor/icons");
1569
- var import_i18n25 = require("@wordpress/i18n");
1570
- function useActionProps11() {
1719
+ var import_icons24 = require("@elementor/icons");
1720
+ var import_i18n28 = require("@wordpress/i18n");
1721
+ function useActionProps12() {
1571
1722
  const { isActive, isBlocked } = (0, import_editor_v1_adapters16.__privateUseRouteStatus)("panel/editor-preferences");
1572
1723
  return {
1573
- icon: import_icons23.ToggleRightIcon,
1574
- title: (0, import_i18n25.__)("User Preferences", "elementor"),
1724
+ icon: import_icons24.ToggleRightIcon,
1725
+ title: (0, import_i18n28.__)("User Preferences", "elementor"),
1575
1726
  onClick: () => {
1576
1727
  const extendedWindow = window;
1577
1728
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1591,20 +1742,20 @@ function useActionProps11() {
1591
1742
  }
1592
1743
 
1593
1744
  // src/extensions/user-preferences/index.ts
1594
- function init15() {
1745
+ function init16() {
1595
1746
  mainMenu.registerToggleAction({
1596
1747
  id: "open-user-preferences",
1597
1748
  group: "default",
1598
1749
  priority: 30,
1599
- useProps: useActionProps11
1750
+ useProps: useActionProps12
1600
1751
  });
1601
1752
  }
1602
1753
 
1603
1754
  // src/extensions/wordpress/index.ts
1604
1755
  var import_editor_documents10 = require("@elementor/editor-documents");
1605
- var import_icons24 = require("@elementor/icons");
1606
- var import_i18n26 = require("@wordpress/i18n");
1607
- function init16() {
1756
+ var import_icons25 = require("@elementor/icons");
1757
+ var import_i18n29 = require("@wordpress/i18n");
1758
+ function init17() {
1608
1759
  mainMenu.registerLink({
1609
1760
  id: "exit-to-wordpress",
1610
1761
  group: "exits",
@@ -1612,9 +1763,9 @@ function init16() {
1612
1763
  useProps: () => {
1613
1764
  const document2 = (0, import_editor_documents10.__useActiveDocument)();
1614
1765
  return {
1615
- title: (0, import_i18n26.__)("Exit to WordPress", "elementor"),
1766
+ title: (0, import_i18n29.__)("Exit to WordPress", "elementor"),
1616
1767
  href: document2?.links?.platformEdit,
1617
- icon: import_icons24.WordpressIcon,
1768
+ icon: import_icons25.WordpressIcon,
1618
1769
  onClick: () => {
1619
1770
  const extendedWindow = window;
1620
1771
  const config = extendedWindow?.elementorCommon?.eventsManager?.config;
@@ -1636,23 +1787,24 @@ function init16() {
1636
1787
  }
1637
1788
 
1638
1789
  // src/extensions/index.ts
1639
- function init17() {
1640
- init2();
1790
+ function init18() {
1791
+ init();
1641
1792
  init3();
1642
1793
  init4();
1643
1794
  init5();
1644
- init7();
1795
+ init6();
1645
1796
  init8();
1646
1797
  init9();
1647
1798
  init10();
1648
1799
  init11();
1649
1800
  init12();
1650
- init6();
1651
1801
  init13();
1802
+ init7();
1652
1803
  init14();
1653
1804
  init15();
1654
1805
  init16();
1655
- init();
1806
+ init17();
1807
+ init2();
1656
1808
  }
1657
1809
 
1658
1810
  // src/sync/redirect-old-menus.ts
@@ -1664,9 +1816,9 @@ function redirectOldMenus() {
1664
1816
  }
1665
1817
 
1666
1818
  // src/init.ts
1667
- function init18() {
1819
+ function init19() {
1668
1820
  redirectOldMenus();
1669
- init17();
1821
+ init18();
1670
1822
  (0, import_editor2.injectIntoTop)({
1671
1823
  id: "app-bar",
1672
1824
  component: AppBar