@elementor/editor-app-bar 4.3.0-986 → 4.3.0-988

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
@@ -233,19 +233,75 @@ 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 React22 = __toESM(require("react"));
236
+ var React23 = __toESM(require("react"));
237
+ var import_react9 = require("react");
237
238
  var import_editor_documents = require("@elementor/editor-documents");
238
239
  var import_ui13 = require("@elementor/ui");
239
240
 
241
+ // src/constants.ts
242
+ var MIN_APP_BAR_WIDTH = 800;
243
+ var DEFAULT_MAX_TOOLBAR_ACTIONS = {
244
+ tools: 5,
245
+ utilities: 4
246
+ };
247
+
248
+ // src/contexts/app-bar-size-context.tsx
249
+ var React8 = __toESM(require("react"));
250
+ var import_react2 = require("react");
251
+ var AppBarSizeContext = (0, import_react2.createContext)(DEFAULT_MAX_TOOLBAR_ACTIONS);
252
+ function AppBarSizeProvider({ value, children }) {
253
+ return /* @__PURE__ */ React8.createElement(AppBarSizeContext.Provider, { value }, children);
254
+ }
255
+ function useMaxToolbarActions() {
256
+ return (0, import_react2.useContext)(AppBarSizeContext);
257
+ }
258
+
259
+ // src/hooks/use-container-width.ts
260
+ var import_react3 = require("react");
261
+ function useContainerWidth(ref) {
262
+ const [width, setWidth] = (0, import_react3.useState)(0);
263
+ (0, import_react3.useEffect)(() => {
264
+ const element = ref.current;
265
+ if (!element || typeof ResizeObserver === "undefined") {
266
+ return;
267
+ }
268
+ const observer = new ResizeObserver((entries) => {
269
+ const entry = entries[0];
270
+ if (entry) {
271
+ setWidth(entry.contentRect.width);
272
+ }
273
+ });
274
+ setWidth(element.getBoundingClientRect().width);
275
+ observer.observe(element);
276
+ return () => observer.disconnect();
277
+ }, [ref]);
278
+ return width;
279
+ }
280
+
281
+ // src/utils/get-max-toolbar-actions.ts
282
+ var BREAKPOINTS = [
283
+ { minWidth: 1200, ...DEFAULT_MAX_TOOLBAR_ACTIONS },
284
+ { minWidth: 950, tools: 3, utilities: 2 },
285
+ { minWidth: MIN_APP_BAR_WIDTH, tools: 1, utilities: 0 },
286
+ { minWidth: 0, tools: 0, utilities: 0 }
287
+ ];
288
+ function getMaxToolbarActions(containerWidth) {
289
+ if (!containerWidth) {
290
+ return DEFAULT_MAX_TOOLBAR_ACTIONS;
291
+ }
292
+ const breakpoint = BREAKPOINTS.find(({ minWidth }) => containerWidth >= minWidth) ?? BREAKPOINTS.at(-1);
293
+ return { tools: breakpoint?.tools ?? 0, utilities: breakpoint?.utilities ?? 0 };
294
+ }
295
+
240
296
  // src/components/locations/main-menu-location.tsx
241
- var React10 = __toESM(require("react"));
297
+ var React11 = __toESM(require("react"));
242
298
  var import_ui6 = require("@elementor/ui");
243
299
 
244
300
  // src/components/ui/popover-menu.tsx
245
- var React8 = __toESM(require("react"));
301
+ var React9 = __toESM(require("react"));
246
302
  var import_ui4 = require("@elementor/ui");
247
303
  function PopoverMenu({ children, popupState, ...props }) {
248
- return /* @__PURE__ */ React8.createElement(MenuContextProvider, { type: "popover", popupState }, /* @__PURE__ */ React8.createElement(
304
+ return /* @__PURE__ */ React9.createElement(MenuContextProvider, { type: "popover", popupState }, /* @__PURE__ */ React9.createElement(
249
305
  import_ui4.Menu,
250
306
  {
251
307
  PaperProps: {
@@ -262,12 +318,12 @@ function PopoverMenu({ children, popupState, ...props }) {
262
318
  }
263
319
 
264
320
  // src/components/ui/toolbar-logo.tsx
265
- var React9 = __toESM(require("react"));
266
- var import_react2 = require("react");
321
+ var React10 = __toESM(require("react"));
322
+ var import_react4 = require("react");
267
323
  var import_ui5 = require("@elementor/ui");
268
324
  var import_i18n = require("@wordpress/i18n");
269
325
  var ElementorLogo = (props) => {
270
- return /* @__PURE__ */ React9.createElement(import_ui5.SvgIcon, { viewBox: "0 0 32 32", ...props }, /* @__PURE__ */ React9.createElement("g", null, /* @__PURE__ */ React9.createElement("circle", { cx: "16", cy: "16", r: "16" }), /* @__PURE__ */ React9.createElement("path", { d: "M11.7 9H9V22.3H11.7V9Z" }), /* @__PURE__ */ React9.createElement("path", { d: "M22.4 9H9V11.7H22.4V9Z" }), /* @__PURE__ */ React9.createElement("path", { d: "M22.4 14.4004H9V17.1004H22.4V14.4004Z" }), /* @__PURE__ */ React9.createElement("path", { d: "M22.4 19.6992H9V22.3992H22.4V19.6992Z" })));
326
+ return /* @__PURE__ */ React10.createElement(import_ui5.SvgIcon, { viewBox: "0 0 32 32", ...props }, /* @__PURE__ */ React10.createElement("g", null, /* @__PURE__ */ React10.createElement("circle", { cx: "16", cy: "16", r: "16" }), /* @__PURE__ */ React10.createElement("path", { d: "M11.7 9H9V22.3H11.7V9Z" }), /* @__PURE__ */ React10.createElement("path", { d: "M22.4 9H9V11.7H22.4V9Z" }), /* @__PURE__ */ React10.createElement("path", { d: "M22.4 14.4004H9V17.1004H22.4V14.4004Z" }), /* @__PURE__ */ React10.createElement("path", { d: "M22.4 19.6992H9V22.3992H22.4V19.6992Z" })));
271
327
  };
272
328
  var StyledToggleButton = (0, import_ui5.styled)(import_ui5.ToggleButton)(({ theme }) => ({
273
329
  padding: 0,
@@ -307,9 +363,9 @@ var StyledElementorLogo = (0, import_ui5.styled)(ElementorLogo, {
307
363
  }
308
364
  }));
309
365
  function ToolbarLogo(props) {
310
- const [isHoverState, setIsHoverState] = (0, import_react2.useState)(false);
366
+ const [isHoverState, setIsHoverState] = (0, import_react4.useState)(false);
311
367
  const showMenuIcon = props.selected || isHoverState;
312
- return /* @__PURE__ */ React9.createElement(
368
+ return /* @__PURE__ */ React10.createElement(
313
369
  StyledToggleButton,
314
370
  {
315
371
  ...props,
@@ -318,7 +374,7 @@ function ToolbarLogo(props) {
318
374
  onMouseEnter: () => setIsHoverState(true),
319
375
  onMouseLeave: () => setIsHoverState(false)
320
376
  },
321
- /* @__PURE__ */ React9.createElement(
377
+ /* @__PURE__ */ React10.createElement(
322
378
  StyledElementorLogo,
323
379
  {
324
380
  fontSize: "large",
@@ -351,33 +407,33 @@ function MainMenuLocation() {
351
407
  }
352
408
  toolbarLogoProps.onClick(e);
353
409
  };
354
- return /* @__PURE__ */ React10.createElement(import_ui6.Stack, { sx: { paddingInlineStart: 3 }, direction: "row", alignItems: "center" }, /* @__PURE__ */ React10.createElement(ToolbarLogo, { ...toolbarLogoProps, onClick: onToolbarClick, selected: popupState.isOpen }), /* @__PURE__ */ React10.createElement(PopoverMenu, { onClick: popupState.close, ...(0, import_ui6.bindMenu)(popupState), marginThreshold: 8 }, menuItems.default.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React10.createElement(MenuItem2, { key: id })), /* @__PURE__ */ React10.createElement(import_ui6.Divider, null), menuItems.help.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React10.createElement(MenuItem2, { key: id })), menuItems.exits.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React10.createElement(MenuItem2, { key: id }))));
410
+ return /* @__PURE__ */ React11.createElement(import_ui6.Stack, { sx: { paddingInlineStart: 3 }, direction: "row", alignItems: "center" }, /* @__PURE__ */ React11.createElement(ToolbarLogo, { ...toolbarLogoProps, onClick: onToolbarClick, selected: popupState.isOpen }), /* @__PURE__ */ React11.createElement(PopoverMenu, { onClick: popupState.close, ...(0, import_ui6.bindMenu)(popupState), marginThreshold: 8 }, menuItems.default.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React11.createElement(MenuItem2, { key: id })), /* @__PURE__ */ React11.createElement(import_ui6.Divider, null), menuItems.help.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React11.createElement(MenuItem2, { key: id })), menuItems.exits.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React11.createElement(MenuItem2, { key: id }))));
355
411
  }
356
412
 
357
413
  // src/components/locations/page-indication-location.tsx
358
- var React11 = __toESM(require("react"));
414
+ var React12 = __toESM(require("react"));
359
415
  function PageIndicationLocation() {
360
- return /* @__PURE__ */ React11.createElement(PageIndicationSlot, null);
416
+ return /* @__PURE__ */ React12.createElement(PageIndicationSlot, null);
361
417
  }
362
418
 
363
419
  // src/components/locations/primary-action-location.tsx
364
- var React12 = __toESM(require("react"));
420
+ var React13 = __toESM(require("react"));
365
421
  function PrimaryActionLocation() {
366
- return /* @__PURE__ */ React12.createElement(PrimaryActionSlot, null);
422
+ return /* @__PURE__ */ React13.createElement(PrimaryActionSlot, null);
367
423
  }
368
424
 
369
425
  // src/components/locations/responsive-location.tsx
370
- var React13 = __toESM(require("react"));
426
+ var React14 = __toESM(require("react"));
371
427
  function ResponsiveLocation() {
372
- return /* @__PURE__ */ React13.createElement(ResponsiveSlot, null);
428
+ return /* @__PURE__ */ React14.createElement(ResponsiveSlot, null);
373
429
  }
374
430
 
375
431
  // src/components/locations/tools-menu-location.tsx
376
- var React20 = __toESM(require("react"));
432
+ var React21 = __toESM(require("react"));
377
433
 
378
434
  // src/extensions/angie/components/angie-guide-location.tsx
379
- var React15 = __toESM(require("react"));
380
- var import_react4 = require("react");
435
+ var React16 = __toESM(require("react"));
436
+ var import_react6 = require("react");
381
437
  var import_editor_current_user = require("@elementor/editor-current-user");
382
438
  var import_editor_ui = require("@elementor/editor-ui");
383
439
  var import_events = require("@elementor/events");
@@ -398,11 +454,11 @@ var ANGIE_TOP_BAR_PROMOTION_IMAGE_URL = "https://assets.elementor.com/packages/v
398
454
  var ANGIE_TOP_BAR_DESCRIPTION = (0, import_i18n2.__)("Build custom widgets using simple instructions.", "elementor");
399
455
 
400
456
  // src/extensions/angie/components/angie-guide-card.tsx
401
- var React14 = __toESM(require("react"));
457
+ var React15 = __toESM(require("react"));
402
458
  var import_ui7 = require("@elementor/ui");
403
459
  var import_i18n3 = require("@wordpress/i18n");
404
460
  function AngieGuideCard({ imageUrl, description, learnMoreUrl, onInstall, onClose }) {
405
- 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(
461
+ return /* @__PURE__ */ React15.createElement(import_ui7.ClickAwayListener, { onClickAway: onClose }, /* @__PURE__ */ React15.createElement(import_ui7.Stack, { sx: { width: 296 }, "data-testid": "e-angie-guide-card" }, /* @__PURE__ */ React15.createElement(import_ui7.Stack, { direction: "row", alignItems: "center", gap: 1, py: 1, px: 2 }, /* @__PURE__ */ React15.createElement(import_ui7.Typography, { variant: "subtitle2" }, (0, import_i18n3.__)("Meet Angie", "elementor")), /* @__PURE__ */ React15.createElement(import_ui7.Chip, { label: (0, import_i18n3.__)("New", "elementor"), size: "small", color: "info", variant: "standard" }), /* @__PURE__ */ React15.createElement(
406
462
  import_ui7.CloseButton,
407
463
  {
408
464
  edge: "end",
@@ -410,7 +466,7 @@ function AngieGuideCard({ imageUrl, description, learnMoreUrl, onInstall, onClos
410
466
  slotProps: { icon: { fontSize: "small" } },
411
467
  onClick: onClose
412
468
  }
413
- )), /* @__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(
469
+ )), /* @__PURE__ */ React15.createElement(import_ui7.Image, { src: imageUrl, alt: (0, import_i18n3.__)("Angie", "elementor"), sx: { height: 150, width: "100%" } }), /* @__PURE__ */ React15.createElement(import_ui7.Stack, { px: 2, pt: 1.5, pb: 1 }, /* @__PURE__ */ React15.createElement(import_ui7.Typography, { variant: "body2", color: "secondary" }, description)), /* @__PURE__ */ React15.createElement(import_ui7.Stack, { direction: "row", justifyContent: "flex-end", gap: 1, pt: 1, pb: 1.5, px: 2 }, /* @__PURE__ */ React15.createElement(
414
470
  import_ui7.Button,
415
471
  {
416
472
  variant: "text",
@@ -422,13 +478,13 @@ function AngieGuideCard({ imageUrl, description, learnMoreUrl, onInstall, onClos
422
478
  }
423
479
  },
424
480
  (0, import_i18n3.__)("Learn More", "elementor")
425
- ), onInstall && /* @__PURE__ */ React14.createElement(import_ui7.Button, { variant: "contained", size: "small", color: "accent", onClick: onInstall }, (0, import_i18n3.__)("Try for free", "elementor")))));
481
+ ), onInstall && /* @__PURE__ */ React15.createElement(import_ui7.Button, { variant: "contained", size: "small", color: "accent", onClick: onInstall }, (0, import_i18n3.__)("Try for free", "elementor")))));
426
482
  }
427
483
 
428
484
  // src/extensions/angie/hooks/use-auto-show.ts
429
- var import_react3 = require("react");
485
+ var import_react5 = require("react");
430
486
  function useAutoShow() {
431
- (0, import_react3.useEffect)(() => {
487
+ (0, import_react5.useEffect)(() => {
432
488
  if (!window.elementor?.config?.angie?.autoShow) {
433
489
  return;
434
490
  }
@@ -442,11 +498,11 @@ function useAutoShow() {
442
498
  // src/extensions/angie/components/angie-guide-location.tsx
443
499
  function AngieGuideLocation() {
444
500
  useAutoShow();
445
- const [anchorEl, setAnchorEl] = (0, import_react4.useState)(null);
501
+ const [anchorEl, setAnchorEl] = (0, import_react6.useState)(null);
446
502
  const { dispatchEvent: dispatchEvent2 } = (0, import_events.useMixpanel)();
447
503
  const { isAdmin } = (0, import_editor_current_user.useCurrentUserCapabilities)();
448
504
  const isOpen = Boolean(anchorEl);
449
- (0, import_react4.useEffect)(() => {
505
+ (0, import_react6.useEffect)(() => {
450
506
  const handleToggle = () => {
451
507
  setAnchorEl((prev) => {
452
508
  if (prev) {
@@ -474,10 +530,10 @@ function AngieGuideLocation() {
474
530
  );
475
531
  handleClose();
476
532
  };
477
- return /* @__PURE__ */ React15.createElement(import_editor_ui.ThemeProvider, null, /* @__PURE__ */ React15.createElement(
533
+ return /* @__PURE__ */ React16.createElement(import_editor_ui.ThemeProvider, null, /* @__PURE__ */ React16.createElement(
478
534
  import_ui8.Infotip,
479
535
  {
480
- content: /* @__PURE__ */ React15.createElement(
536
+ content: /* @__PURE__ */ React16.createElement(
481
537
  AngieGuideCard,
482
538
  {
483
539
  imageUrl: ANGIE_TOP_BAR_PROMOTION_IMAGE_URL,
@@ -500,19 +556,19 @@ function AngieGuideLocation() {
500
556
  ]
501
557
  }
502
558
  },
503
- /* @__PURE__ */ React15.createElement("span", null)
559
+ /* @__PURE__ */ React16.createElement("span", null)
504
560
  ));
505
561
  }
506
562
 
507
563
  // src/components/ui/toolbar-menu.tsx
508
- var React16 = __toESM(require("react"));
564
+ var React17 = __toESM(require("react"));
509
565
  var import_ui9 = require("@elementor/ui");
510
566
  function ToolbarMenu({ children, ...props }) {
511
- 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));
567
+ return /* @__PURE__ */ React17.createElement(MenuContextProvider, { type: "toolbar" }, /* @__PURE__ */ React17.createElement(import_ui9.Stack, { sx: { px: 1.5 }, spacing: 1.5, direction: "row", alignItems: "center", ...props }, children));
512
568
  }
513
569
 
514
570
  // src/components/ui/toolbar-menu-more.tsx
515
- var React17 = __toESM(require("react"));
571
+ var React18 = __toESM(require("react"));
516
572
  var import_icons2 = require("@elementor/icons");
517
573
  var import_ui10 = require("@elementor/ui");
518
574
  var import_i18n4 = require("@wordpress/i18n");
@@ -521,11 +577,11 @@ function ToolbarMenuMore({ children, id }) {
521
577
  variant: "popover",
522
578
  popupId: id
523
579
  });
524
- 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));
580
+ return /* @__PURE__ */ React18.createElement(React18.Fragment, null, /* @__PURE__ */ React18.createElement(ToolbarMenuItem, { ...(0, import_ui10.bindTrigger)(popupState), title: (0, import_i18n4.__)("More", "elementor") }, /* @__PURE__ */ React18.createElement(import_icons2.DotsVerticalIcon, null)), /* @__PURE__ */ React18.createElement(PopoverMenu, { onClick: popupState.close, ...(0, import_ui10.bindMenu)(popupState) }, children));
525
581
  }
526
582
 
527
583
  // src/components/locations/integrations-menu-location.tsx
528
- var React18 = __toESM(require("react"));
584
+ var React19 = __toESM(require("react"));
529
585
  var import_icons3 = require("@elementor/icons");
530
586
  var import_ui11 = require("@elementor/ui");
531
587
  var import_i18n5 = require("@wordpress/i18n");
@@ -539,7 +595,7 @@ function IntegrationsMenuLocation() {
539
595
  if (menuItems.default.length === 0) {
540
596
  return null;
541
597
  }
542
- 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(
598
+ return /* @__PURE__ */ React19.createElement(React19.Fragment, null, /* @__PURE__ */ React19.createElement(ToolbarMenuItem, { ...(0, import_ui11.bindTrigger)(popupState), title: (0, import_i18n5.__)("Integrations", "elementor") }, /* @__PURE__ */ React19.createElement(import_icons3.PlugIcon, null)), /* @__PURE__ */ React19.createElement(
543
599
  PopoverMenu,
544
600
  {
545
601
  onClick: popupState.close,
@@ -547,13 +603,13 @@ function IntegrationsMenuLocation() {
547
603
  marginThreshold: 8,
548
604
  open: popupState.isOpen
549
605
  },
550
- menuItems.default.map(({ MenuItem: IntegrationsMenuItem, id }) => /* @__PURE__ */ React18.createElement(IntegrationsMenuItem, { key: id }))
606
+ menuItems.default.map(({ MenuItem: IntegrationsMenuItem, id }) => /* @__PURE__ */ React19.createElement(IntegrationsMenuItem, { key: id }))
551
607
  ));
552
608
  }
553
609
 
554
610
  // src/components/locations/send-feedback-popup-location.tsx
555
- var React19 = __toESM(require("react"));
556
- var import_react5 = require("react");
611
+ var React20 = __toESM(require("react"));
612
+ var import_react7 = require("react");
557
613
  var import_editor_ui2 = require("@elementor/editor-ui");
558
614
  var import_editor_v1_adapters = require("@elementor/editor-v1-adapters");
559
615
  var import_events2 = require("@elementor/events");
@@ -574,18 +630,18 @@ var checkIfUserIsConnected = () => {
574
630
  function SendFeedbackPopupLocation() {
575
631
  const isActive = (0, import_editor_v1_adapters.isExperimentActive)(EXPERIMENT_NAME);
576
632
  const extendedWindow = window;
577
- const [isUserConnected, setIsUserConnected] = (0, import_react5.useState)(checkIfUserIsConnected());
633
+ const [isUserConnected, setIsUserConnected] = (0, import_react7.useState)(checkIfUserIsConnected());
578
634
  const connectUrl = extendedWindow?.elementor?.config.user.top_bar.connect_url;
579
- const [feedbackContent, setFeedbackContent] = (0, import_react5.useState)("");
580
- const [feedbackResult, setFeedbackResult] = (0, import_react5.useState)(null);
581
- const [submitDisabled, setSubmitDisabled] = (0, import_react5.useState)(true);
635
+ const [feedbackContent, setFeedbackContent] = (0, import_react7.useState)("");
636
+ const [feedbackResult, setFeedbackResult] = (0, import_react7.useState)(null);
637
+ const [submitDisabled, setSubmitDisabled] = (0, import_react7.useState)(true);
582
638
  const { dispatchEvent: trackEvent2 = (...args) => void args } = (0, import_events2.useMixpanel)();
583
639
  const popupState = (0, import_ui12.usePopupState)({
584
640
  variant: "dialog",
585
641
  popupId: FEEDBACK_TOGGLE_EVENT
586
642
  });
587
- const [isFetching, setIsFetching] = (0, import_react5.useState)(false);
588
- (0, import_react5.useEffect)(() => {
643
+ const [isFetching, setIsFetching] = (0, import_react7.useState)(false);
644
+ (0, import_react7.useEffect)(() => {
589
645
  const handler = () => {
590
646
  popupState.toggle();
591
647
  setIsUserConnected(checkIfUserIsConnected());
@@ -600,7 +656,7 @@ function SendFeedbackPopupLocation() {
600
656
  window.removeEventListener(FEEDBACK_TOGGLE_EVENT, handler);
601
657
  };
602
658
  }, [popupState, trackEvent2]);
603
- (0, import_react5.useEffect)(() => {
659
+ (0, import_react7.useEffect)(() => {
604
660
  setSubmitDisabled(feedbackContent.trim().length < 10 || !isUserConnected || isFetching);
605
661
  }, [feedbackContent, feedbackResult, isUserConnected, isFetching]);
606
662
  const handleClose = () => {
@@ -635,7 +691,7 @@ function SendFeedbackPopupLocation() {
635
691
  if (!isActive) {
636
692
  return null;
637
693
  }
638
- 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(
694
+ return /* @__PURE__ */ React20.createElement(import_editor_ui2.ThemeProvider, null, /* @__PURE__ */ React20.createElement(import_ui12.Popover, { ...(0, import_ui12.bindDialog)(popupState), onClose: () => handleClose() }, /* @__PURE__ */ React20.createElement(import_ui12.Dialog, { open: popupState.isOpen }, /* @__PURE__ */ React20.createElement(import_ui12.DialogHeader, { style: { width: "100%", minWidth: "35rem" } }, /* @__PURE__ */ React20.createElement(import_ui12.DialogTitle, { style: { width: "100%" } }, /* @__PURE__ */ React20.createElement(
639
695
  import_ui12.Stack,
640
696
  {
641
697
  display: "flex",
@@ -645,8 +701,8 @@ function SendFeedbackPopupLocation() {
645
701
  width: "100%"
646
702
  },
647
703
  (0, import_i18n6.__)("Submit Feedback", "elementor"),
648
- /* @__PURE__ */ React19.createElement(import_ui12.CloseButton, { onClick: popupState.close })
649
- ))), /* @__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(
704
+ /* @__PURE__ */ React20.createElement(import_ui12.CloseButton, { onClick: popupState.close })
705
+ ))), /* @__PURE__ */ React20.createElement(import_ui12.DialogContent, null, /* @__PURE__ */ React20.createElement(import_ui12.Stack, { direction: "column", gap: 2 }, isUserConnected ? /* @__PURE__ */ React20.createElement(React20.Fragment, null, /* @__PURE__ */ React20.createElement(
650
706
  import_ui12.TextField,
651
707
  {
652
708
  autofocus: true,
@@ -664,7 +720,7 @@ function SendFeedbackPopupLocation() {
664
720
  onChange: (event) => setFeedbackContent(event.target.value),
665
721
  value: feedbackContent
666
722
  }
667
- ), /* @__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: () => handleStartAnother() }, (0, import_i18n6.__)("Submit Another Feedback", "elementor")) : /* @__PURE__ */ React19.createElement(
723
+ ), /* @__PURE__ */ React20.createElement(import_ui12.Stack, { direction: "row", justifyContent: "flex-end", alignItems: "center", gap: 2 }, feedbackResult && /* @__PURE__ */ React20.createElement(React20.Fragment, null, feedbackResult.success ? /* @__PURE__ */ React20.createElement(import_icons4.CheckIcon, { color: "success" }) : /* @__PURE__ */ React20.createElement(import_icons4.AlertCircleIcon, { color: "error" }), feedbackResult.message), feedbackResult?.success ? /* @__PURE__ */ React20.createElement(import_ui12.Button, { variant: "text", onClick: () => handleStartAnother() }, (0, import_i18n6.__)("Submit Another Feedback", "elementor")) : /* @__PURE__ */ React20.createElement(
668
724
  import_ui12.Button,
669
725
  {
670
726
  disabled: submitDisabled,
@@ -674,7 +730,7 @@ function SendFeedbackPopupLocation() {
674
730
  size: "small"
675
731
  },
676
732
  (0, import_i18n6.__)("Submit", "elementor")
677
- ))) : /* @__PURE__ */ React19.createElement(React19.Fragment, null, /* @__PURE__ */ React19.createElement(
733
+ ))) : /* @__PURE__ */ React20.createElement(React20.Fragment, null, /* @__PURE__ */ React20.createElement(
678
734
  import_ui12.Button,
679
735
  {
680
736
  variant: "contained",
@@ -690,36 +746,59 @@ function SendFeedbackPopupLocation() {
690
746
  }
691
747
 
692
748
  // src/components/locations/tools-menu-location.tsx
693
- var MAX_TOOLBAR_ACTIONS = 5;
694
749
  var { useMenuItems: useMenuItems3 } = toolsMenu;
695
750
  function ToolsMenuLocation() {
696
751
  const menuItems = useMenuItems3();
697
- const toolbarMenuItems = menuItems.default.slice(0, MAX_TOOLBAR_ACTIONS);
698
- const popoverMenuItems = menuItems.default.slice(MAX_TOOLBAR_ACTIONS);
699
- 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 }))));
752
+ const { tools: maxToolbarActions } = useMaxToolbarActions();
753
+ const toolbarMenuItems = menuItems.default.slice(0, maxToolbarActions);
754
+ const popoverMenuItems = menuItems.default.slice(maxToolbarActions);
755
+ return /* @__PURE__ */ React21.createElement(ToolbarMenu, null, toolbarMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React21.createElement(MenuItem2, { key: id })), /* @__PURE__ */ React21.createElement(AngieGuideLocation, null), /* @__PURE__ */ React21.createElement(SendFeedbackPopupLocation, null), /* @__PURE__ */ React21.createElement(IntegrationsMenuLocation, null), popoverMenuItems.length > 0 && /* @__PURE__ */ React21.createElement(ToolbarMenuMore, { id: "elementor-editor-app-bar-tools-more" }, popoverMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React21.createElement(MenuItem2, { key: id }))));
700
756
  }
701
757
 
702
758
  // src/components/locations/utilities-menu-location.tsx
703
- var React21 = __toESM(require("react"));
704
- var import_react6 = require("react");
705
- var MAX_TOOLBAR_ACTIONS2 = 4;
759
+ var React22 = __toESM(require("react"));
760
+ var import_react8 = require("react");
706
761
  var { useMenuItems: useMenuItems4 } = utilitiesMenu;
707
762
  function UtilitiesMenuLocation() {
708
763
  const menuItems = useMenuItems4();
709
- const shouldUsePopover = menuItems.default.length > MAX_TOOLBAR_ACTIONS2 + 1;
710
- const toolbarMenuItems = shouldUsePopover ? menuItems.default.slice(0, MAX_TOOLBAR_ACTIONS2) : menuItems.default;
711
- const popoverMenuItems = shouldUsePopover ? menuItems.default.slice(MAX_TOOLBAR_ACTIONS2) : [];
712
- return /* @__PURE__ */ React21.createElement(ToolbarMenu, null, toolbarMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React21.createElement(import_react6.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 }))));
764
+ const { utilities: maxToolbarActions } = useMaxToolbarActions();
765
+ const shouldUsePopover = menuItems.default.length > maxToolbarActions + 1;
766
+ const toolbarMenuItems = shouldUsePopover ? menuItems.default.slice(0, maxToolbarActions) : menuItems.default;
767
+ const popoverMenuItems = shouldUsePopover ? menuItems.default.slice(maxToolbarActions) : [];
768
+ return /* @__PURE__ */ React22.createElement(ToolbarMenu, null, toolbarMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React22.createElement(import_react8.Fragment, { key: id }, /* @__PURE__ */ React22.createElement(MenuItem2, null))), popoverMenuItems.length > 0 && /* @__PURE__ */ React22.createElement(ToolbarMenuMore, { id: "elementor-editor-app-bar-utilities-more" }, popoverMenuItems.map(({ MenuItem: MenuItem2, id }) => /* @__PURE__ */ React22.createElement(MenuItem2, { key: id }))));
713
769
  }
714
770
 
715
771
  // src/components/app-bar.tsx
716
772
  function AppBar() {
717
773
  const document2 = (0, import_editor_documents.__useActiveDocument)();
718
- 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))))));
774
+ const containerRef = (0, import_react9.useRef)(null);
775
+ const containerWidth = useContainerWidth(containerRef);
776
+ const maxToolbarActions = getMaxToolbarActions(containerWidth);
777
+ return /* @__PURE__ */ React23.createElement(import_ui13.ThemeProvider, { colorScheme: "dark" }, /* @__PURE__ */ React23.createElement(import_ui13.AppBar, { position: "sticky" }, /* @__PURE__ */ React23.createElement(import_ui13.Toolbar, { disableGutters: true, variant: "dense", sx: { overflowX: "auto" } }, /* @__PURE__ */ React23.createElement(
778
+ import_ui13.Box,
779
+ {
780
+ ref: containerRef,
781
+ display: "grid",
782
+ gridTemplateColumns: "minmax(0, 1fr) auto minmax(0, 1fr)",
783
+ flexGrow: 1,
784
+ minWidth: `${MIN_APP_BAR_WIDTH}px`
785
+ },
786
+ /* @__PURE__ */ React23.createElement(AppBarSizeProvider, { value: maxToolbarActions }, /* @__PURE__ */ React23.createElement(import_ui13.Grid, { container: true, flexWrap: "nowrap", sx: { minWidth: 0, overflow: "hidden" } }, /* @__PURE__ */ React23.createElement(MainMenuLocation, null), document2?.permissions?.allowAddingWidgets && /* @__PURE__ */ React23.createElement(ToolsMenuLocation, null)), /* @__PURE__ */ React23.createElement(import_ui13.Grid, { container: true, justifyContent: "center" }, /* @__PURE__ */ React23.createElement(ToolbarMenu, { spacing: 1.5 }, /* @__PURE__ */ React23.createElement(import_ui13.Divider, { orientation: "vertical" }), /* @__PURE__ */ React23.createElement(PageIndicationLocation, null), /* @__PURE__ */ React23.createElement(import_ui13.Divider, { orientation: "vertical" }), /* @__PURE__ */ React23.createElement(ResponsiveLocation, null), /* @__PURE__ */ React23.createElement(import_ui13.Divider, { orientation: "vertical" }))), /* @__PURE__ */ React23.createElement(
787
+ import_ui13.Grid,
788
+ {
789
+ container: true,
790
+ justifyContent: "flex-end",
791
+ flexWrap: "nowrap",
792
+ sx: { minWidth: 0, overflow: "hidden" }
793
+ },
794
+ /* @__PURE__ */ React23.createElement(UtilitiesMenuLocation, null),
795
+ /* @__PURE__ */ React23.createElement(PrimaryActionLocation, null)
796
+ ))
797
+ ))));
719
798
  }
720
799
 
721
800
  // src/extensions/angie/hooks/use-action-props.ts
722
- var import_react7 = require("react");
801
+ var import_react10 = require("react");
723
802
  var import_editor_mcp = require("@elementor/editor-mcp");
724
803
  var import_events3 = require("@elementor/events");
725
804
  var import_icons5 = require("@elementor/icons");
@@ -727,7 +806,7 @@ var import_i18n7 = require("@wordpress/i18n");
727
806
  function useActionProps() {
728
807
  const hasAngieInstalled = (0, import_editor_mcp.isAngieAvailable)();
729
808
  const visible = !hasAngieInstalled;
730
- (0, import_react7.useEffect)(() => {
809
+ (0, import_react10.useEffect)(() => {
731
810
  if (!visible) {
732
811
  return;
733
812
  }
@@ -758,7 +837,7 @@ function init() {
758
837
  }
759
838
 
760
839
  // src/extensions/connect/hooks/use-connect-link-config.tsx
761
- var import_react8 = require("react");
840
+ var import_react11 = require("react");
762
841
  var import_icons6 = require("@elementor/icons");
763
842
  var import_i18n8 = require("@wordpress/i18n");
764
843
  var dispatchConnectClickEvent = (eventName) => {
@@ -788,7 +867,7 @@ function useConnectLinkConfig() {
788
867
  isUserConnected = extendedWindow?.elementorCommon?.config.library_connect.is_connected ?? false;
789
868
  target = "_self";
790
869
  }
791
- const handleConnectClick = (0, import_react8.useCallback)(
870
+ const handleConnectClick = (0, import_react11.useCallback)(
792
871
  (event) => {
793
872
  event.preventDefault();
794
873
  if (extendedWindow.jQuery && extendedWindow.jQuery.fn?.elementorConnect) {
@@ -877,7 +956,7 @@ function init3() {
877
956
  }
878
957
 
879
958
  // src/extensions/documents-save/components/primary-action.tsx
880
- var React24 = __toESM(require("react"));
959
+ var React25 = __toESM(require("react"));
881
960
  var import_editor_documents3 = require("@elementor/editor-documents");
882
961
  var import_editor_v1_adapters3 = require("@elementor/editor-v1-adapters");
883
962
  var import_icons8 = require("@elementor/icons");
@@ -885,7 +964,7 @@ var import_ui15 = require("@elementor/ui");
885
964
  var import_i18n10 = require("@wordpress/i18n");
886
965
 
887
966
  // src/extensions/documents-save/components/primary-action-menu.tsx
888
- var React23 = __toESM(require("react"));
967
+ var React24 = __toESM(require("react"));
889
968
  var import_ui14 = require("@elementor/ui");
890
969
  var { useMenuItems: useMenuItems5 } = documentOptionsMenu;
891
970
  var StyledPopoverMenu = (0, import_ui14.styled)(PopoverMenu)`
@@ -901,7 +980,7 @@ var StyledPopoverMenu = (0, import_ui14.styled)(PopoverMenu)`
901
980
  `;
902
981
  function PrimaryActionMenu(props) {
903
982
  const { save: saveActions, default: defaultActions } = useMenuItems5();
904
- return /* @__PURE__ */ React23.createElement(
983
+ return /* @__PURE__ */ React24.createElement(
905
984
  StyledPopoverMenu,
906
985
  {
907
986
  ...props,
@@ -919,13 +998,13 @@ function PrimaryActionMenu(props) {
919
998
  }
920
999
  },
921
1000
  saveActions.map(({ MenuItem: MenuItem2, id }, index) => [
922
- index > 0 && /* @__PURE__ */ React23.createElement(import_ui14.Divider, { key: `${id}-divider` }),
923
- /* @__PURE__ */ React23.createElement(MenuItem2, { key: id })
1001
+ index > 0 && /* @__PURE__ */ React24.createElement(import_ui14.Divider, { key: `${id}-divider` }),
1002
+ /* @__PURE__ */ React24.createElement(MenuItem2, { key: id })
924
1003
  ]),
925
- saveActions.length > 0 && defaultActions.length > 0 && /* @__PURE__ */ React23.createElement(import_ui14.Divider, null),
1004
+ saveActions.length > 0 && defaultActions.length > 0 && /* @__PURE__ */ React24.createElement(import_ui14.Divider, null),
926
1005
  defaultActions.map(({ MenuItem: MenuItem2, id }, index) => [
927
- index > 0 && /* @__PURE__ */ React23.createElement(import_ui14.Divider, { key: `${id}-divider` }),
928
- /* @__PURE__ */ React23.createElement(MenuItem2, { key: id })
1006
+ index > 0 && /* @__PURE__ */ React24.createElement(import_ui14.Divider, { key: `${id}-divider` }),
1007
+ /* @__PURE__ */ React24.createElement(MenuItem2, { key: id })
929
1008
  ])
930
1009
  );
931
1010
  }
@@ -946,7 +1025,7 @@ function PrimaryAction() {
946
1025
  const isPublishDisabled = !isEditMode || !isPublishEnabled(document2);
947
1026
  const isSaveOptionsDisabled = !isEditMode || document2.type.value === "kit";
948
1027
  const shouldShowSpinner = document2.isSaving && !isPublishDisabled;
949
- return /* @__PURE__ */ React24.createElement(React24.Fragment, null, /* @__PURE__ */ React24.createElement(import_ui15.ButtonGroup, { size: "large", variant: "contained" }, /* @__PURE__ */ React24.createElement(
1028
+ return /* @__PURE__ */ React25.createElement(React25.Fragment, null, /* @__PURE__ */ React25.createElement(import_ui15.ButtonGroup, { size: "large", variant: "contained" }, /* @__PURE__ */ React25.createElement(
950
1029
  import_ui15.Button,
951
1030
  {
952
1031
  onClick: () => {
@@ -977,8 +1056,8 @@ function PrimaryAction() {
977
1056
  },
978
1057
  disabled: isPublishDisabled
979
1058
  },
980
- shouldShowSpinner ? /* @__PURE__ */ React24.createElement(import_ui15.CircularProgress, { color: "inherit", size: "1.5em" }) : getLabel(document2)
981
- ), /* @__PURE__ */ React24.createElement(
1059
+ shouldShowSpinner ? /* @__PURE__ */ React25.createElement(import_ui15.CircularProgress, { color: "inherit", size: "1.5em" }) : getLabel(document2)
1060
+ ), /* @__PURE__ */ React25.createElement(
982
1061
  import_ui15.Tooltip,
983
1062
  {
984
1063
  title: (0, import_i18n10.__)("Save Options", "elementor"),
@@ -991,7 +1070,7 @@ function PrimaryAction() {
991
1070
  }
992
1071
  }
993
1072
  },
994
- /* @__PURE__ */ React24.createElement(import_ui15.Box, { component: "span", "aria-label": void 0 }, /* @__PURE__ */ React24.createElement(
1073
+ /* @__PURE__ */ React25.createElement(import_ui15.Box, { component: "span", "aria-label": void 0 }, /* @__PURE__ */ React25.createElement(
995
1074
  import_ui15.Button,
996
1075
  {
997
1076
  size: "small",
@@ -1000,9 +1079,9 @@ function PrimaryAction() {
1000
1079
  disabled: isSaveOptionsDisabled,
1001
1080
  "aria-label": (0, import_i18n10.__)("Save Options", "elementor")
1002
1081
  },
1003
- /* @__PURE__ */ React24.createElement(import_icons8.ChevronDownIcon, null)
1082
+ /* @__PURE__ */ React25.createElement(import_icons8.ChevronDownIcon, null)
1004
1083
  ))
1005
- )), /* @__PURE__ */ React24.createElement(PrimaryActionMenu, { ...(0, import_ui15.bindMenu)(popupState), onClick: popupState.close }));
1084
+ )), /* @__PURE__ */ React25.createElement(PrimaryActionMenu, { ...(0, import_ui15.bindMenu)(popupState), onClick: popupState.close }));
1006
1085
  }
1007
1086
  function getLabel(document2) {
1008
1087
  return document2.userCan.publish ? (0, import_i18n10.__)("Publish", "elementor") : (0, import_i18n10.__)("Submit", "elementor");
@@ -1448,7 +1527,7 @@ function init11() {
1448
1527
  }
1449
1528
 
1450
1529
  // src/extensions/responsive/components/breakpoints-switcher.tsx
1451
- var React25 = __toESM(require("react"));
1530
+ var React26 = __toESM(require("react"));
1452
1531
  var import_editor_responsive = require("@elementor/editor-responsive");
1453
1532
  var import_icons20 = require("@elementor/icons");
1454
1533
  var import_ui16 = require("@elementor/ui");
@@ -1474,7 +1553,7 @@ function BreakpointsSwitcher() {
1474
1553
  }
1475
1554
  activateBreakpoint(value);
1476
1555
  };
1477
- return /* @__PURE__ */ React25.createElement(
1556
+ return /* @__PURE__ */ React26.createElement(
1478
1557
  import_ui16.Tabs,
1479
1558
  {
1480
1559
  textColor: "inherit",
@@ -1491,13 +1570,13 @@ function BreakpointsSwitcher() {
1491
1570
  breakpoints.map(({ id, label, type, width }) => {
1492
1571
  const Icon = iconsMap[id];
1493
1572
  const title = labelsMap[type || "default"].replace("%s", label).replace("%d", width?.toString() || "");
1494
- return /* @__PURE__ */ React25.createElement(
1573
+ return /* @__PURE__ */ React26.createElement(
1495
1574
  import_ui16.Tab,
1496
1575
  {
1497
1576
  value: id,
1498
1577
  key: id,
1499
1578
  "aria-label": title,
1500
- icon: /* @__PURE__ */ React25.createElement(Tooltip4, { title }, /* @__PURE__ */ React25.createElement(Icon, null)),
1579
+ icon: /* @__PURE__ */ React26.createElement(Tooltip4, { title }, /* @__PURE__ */ React26.createElement(Icon, null)),
1501
1580
  sx: { minWidth: "auto" },
1502
1581
  "data-testid": `switch-device-to-${id}`
1503
1582
  }
@@ -1506,7 +1585,7 @@ function BreakpointsSwitcher() {
1506
1585
  );
1507
1586
  }
1508
1587
  function Tooltip4(props) {
1509
- return /* @__PURE__ */ React25.createElement(
1588
+ return /* @__PURE__ */ React26.createElement(
1510
1589
  import_ui16.Tooltip,
1511
1590
  {
1512
1591
  PopperProps: {
@@ -1553,10 +1632,10 @@ function init12() {
1553
1632
  var import_editor = require("@elementor/editor");
1554
1633
 
1555
1634
  // src/extensions/site-settings/components/portalled-primary-action.tsx
1556
- var React28 = __toESM(require("react"));
1635
+ var React29 = __toESM(require("react"));
1557
1636
 
1558
1637
  // src/extensions/site-settings/components/portal.tsx
1559
- var React26 = __toESM(require("react"));
1638
+ var React27 = __toESM(require("react"));
1560
1639
  var import_editor_v1_adapters12 = require("@elementor/editor-v1-adapters");
1561
1640
  var import_ui17 = require("@elementor/ui");
1562
1641
  function Portal(props) {
@@ -1567,21 +1646,21 @@ function Portal(props) {
1567
1646
  if (!containerRef.current) {
1568
1647
  return null;
1569
1648
  }
1570
- return /* @__PURE__ */ React26.createElement(import_ui17.Portal, { container: containerRef.current, ...props });
1649
+ return /* @__PURE__ */ React27.createElement(import_ui17.Portal, { container: containerRef.current, ...props });
1571
1650
  }
1572
1651
  function getContainerRef() {
1573
1652
  return (0, import_editor_v1_adapters12.__privateIsRouteActive)("panel/global") ? { current: document.querySelector("#elementor-panel-inner") } : { current: null };
1574
1653
  }
1575
1654
 
1576
1655
  // src/extensions/site-settings/components/primary-action.tsx
1577
- var React27 = __toESM(require("react"));
1656
+ var React28 = __toESM(require("react"));
1578
1657
  var import_editor_documents9 = require("@elementor/editor-documents");
1579
1658
  var import_ui18 = require("@elementor/ui");
1580
1659
  var import_i18n24 = require("@wordpress/i18n");
1581
1660
  function PrimaryAction2() {
1582
1661
  const document2 = (0, import_editor_documents9.__useActiveDocument)();
1583
1662
  const { save } = (0, import_editor_documents9.__useActiveDocumentActions)();
1584
- return /* @__PURE__ */ React27.createElement(
1663
+ return /* @__PURE__ */ React28.createElement(
1585
1664
  import_ui18.Paper,
1586
1665
  {
1587
1666
  sx: {
@@ -1591,7 +1670,7 @@ function PrimaryAction2() {
1591
1670
  borderColor: "divider"
1592
1671
  }
1593
1672
  },
1594
- /* @__PURE__ */ React27.createElement(
1673
+ /* @__PURE__ */ React28.createElement(
1595
1674
  import_ui18.Button,
1596
1675
  {
1597
1676
  variant: "contained",
@@ -1600,14 +1679,14 @@ function PrimaryAction2() {
1600
1679
  sx: { width: "100%" },
1601
1680
  onClick: () => document2 && !document2.isSaving ? save() : null
1602
1681
  },
1603
- document2?.isSaving ? /* @__PURE__ */ React27.createElement(import_ui18.CircularProgress, null) : (0, import_i18n24.__)("Save Changes", "elementor")
1682
+ document2?.isSaving ? /* @__PURE__ */ React28.createElement(import_ui18.CircularProgress, null) : (0, import_i18n24.__)("Save Changes", "elementor")
1604
1683
  )
1605
1684
  );
1606
1685
  }
1607
1686
 
1608
1687
  // src/extensions/site-settings/components/portalled-primary-action.tsx
1609
1688
  function PortalledPrimaryAction() {
1610
- return /* @__PURE__ */ React28.createElement(Portal, null, /* @__PURE__ */ React28.createElement(PrimaryAction2, null));
1689
+ return /* @__PURE__ */ React29.createElement(Portal, null, /* @__PURE__ */ React29.createElement(PrimaryAction2, null));
1611
1690
  }
1612
1691
 
1613
1692
  // src/extensions/site-settings/hooks/use-action-props.ts