@elementor/editor-app-bar 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.12.0](https://github.com/elementor/elementor-packages/compare/@elementor/editor-app-bar@0.11.0...@elementor/editor-app-bar@0.12.0) (2024-05-09)
7
+
8
+
9
+ ### Features
10
+
11
+ * conversions - add logic to top bar for links page ([#181](https://github.com/elementor/elementor-packages/issues/181)) ([19b3d82](https://github.com/elementor/elementor-packages/commit/19b3d82b3795917e8d0aaaf40da36309ec83da97))
12
+
13
+
14
+
15
+
16
+
6
17
  # [0.11.0](https://github.com/elementor/elementor-packages/compare/@elementor/editor-app-bar@0.10.9...@elementor/editor-app-bar@0.11.0) (2024-05-08)
7
18
 
8
19
 
package/dist/index.js CHANGED
@@ -319,6 +319,22 @@ function isPublishEnabled(document2) {
319
319
  return document2.isDirty || document2.status.value === "draft";
320
320
  }
321
321
 
322
+ // src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts
323
+ var import_i18n7 = require("@wordpress/i18n");
324
+ var import_icons7 = require("@elementor/icons");
325
+ var import_editor_documents7 = require("@elementor/editor-documents");
326
+ function useDocumentCopyAndShareProps() {
327
+ const document2 = (0, import_editor_documents7.__useActiveDocument)();
328
+ const { copyAndShare } = (0, import_editor_documents7.__useActiveDocumentActions)();
329
+ return {
330
+ icon: import_icons7.LinkIcon,
331
+ title: (0, import_i18n7.__)("Copy and Share", "elementor"),
332
+ onClick: copyAndShare,
333
+ disabled: !document2 || document2.isSaving || document2.isSavingDraft || !("publish" === document2.status.value),
334
+ visible: document2?.permissions?.showCopyAndShare
335
+ };
336
+ }
337
+
322
338
  // src/extensions/documents-save/index.ts
323
339
  function init3() {
324
340
  (0, import_editor_app_bar_ui5.__privateInjectIntoPrimaryAction)({
@@ -346,14 +362,20 @@ function init3() {
346
362
  // After save draft.
347
363
  useProps: useDocumentViewPageProps
348
364
  });
365
+ documentOptionsMenu.registerAction({
366
+ group: "save",
367
+ id: "document-copy-and-share",
368
+ priority: 40,
369
+ useProps: useDocumentCopyAndShareProps
370
+ });
349
371
  }
350
372
 
351
373
  // src/extensions/elements/sync/sync-panel-title.ts
352
- var import_i18n7 = require("@wordpress/i18n");
374
+ var import_i18n8 = require("@wordpress/i18n");
353
375
  var import_editor_v1_adapters6 = require("@elementor/editor-v1-adapters");
354
376
  function syncPanelTitle() {
355
- const panelTitle = (0, import_i18n7.__)("Elements", "elementor");
356
- const tabTitle = (0, import_i18n7.__)("Widgets", "elementor");
377
+ const panelTitle = (0, import_i18n8.__)("Elements", "elementor");
378
+ const tabTitle = (0, import_i18n8.__)("Widgets", "elementor");
357
379
  (0, import_editor_v1_adapters6.__privateListenTo)(
358
380
  (0, import_editor_v1_adapters6.routeOpenEvent)("panel/elements"),
359
381
  () => {
@@ -385,14 +407,14 @@ function setTabTitle(title) {
385
407
  var import_editor_app_bar_ui6 = require("@elementor/editor-app-bar-ui");
386
408
 
387
409
  // src/extensions/elements/hooks/use-action-props.ts
388
- var import_icons7 = require("@elementor/icons");
389
- var import_i18n8 = require("@wordpress/i18n");
410
+ var import_icons8 = require("@elementor/icons");
411
+ var import_i18n9 = require("@wordpress/i18n");
390
412
  var import_editor_v1_adapters7 = require("@elementor/editor-v1-adapters");
391
413
  function useActionProps2() {
392
414
  const { isActive, isBlocked } = (0, import_editor_v1_adapters7.__privateUseRouteStatus)("panel/elements");
393
415
  return {
394
- title: (0, import_i18n8.__)("Add Element", "elementor"),
395
- icon: import_icons7.PlusIcon,
416
+ title: (0, import_i18n9.__)("Add Element", "elementor"),
417
+ icon: import_icons8.PlusIcon,
396
418
  onClick: () => (0, import_editor_v1_adapters7.__privateOpenRoute)("panel/elements/categories"),
397
419
  selected: isActive,
398
420
  disabled: isBlocked
@@ -413,8 +435,8 @@ function init4() {
413
435
  var import_editor_app_bar_ui7 = require("@elementor/editor-app-bar-ui");
414
436
 
415
437
  // src/extensions/finder/hooks/use-action-props.ts
416
- var import_i18n9 = require("@wordpress/i18n");
417
- var import_icons8 = require("@elementor/icons");
438
+ var import_i18n10 = require("@wordpress/i18n");
439
+ var import_icons9 = require("@elementor/icons");
418
440
  var import_editor_v1_adapters8 = require("@elementor/editor-v1-adapters");
419
441
  function useActionProps3() {
420
442
  const { isBlocked } = (0, import_editor_v1_adapters8.__privateUseRouteStatus)("finder", {
@@ -422,8 +444,8 @@ function useActionProps3() {
422
444
  blockOnPreviewMode: false
423
445
  });
424
446
  return {
425
- title: (0, import_i18n9.__)("Finder", "elementor"),
426
- icon: import_icons8.SearchIcon,
447
+ title: (0, import_i18n10.__)("Finder", "elementor"),
448
+ icon: import_icons9.SearchIcon,
427
449
  onClick: () => (0, import_editor_v1_adapters8.__privateRunCommand)("finder/toggle"),
428
450
  disabled: isBlocked
429
451
  };
@@ -441,8 +463,8 @@ function init5() {
441
463
 
442
464
  // src/extensions/help/index.ts
443
465
  var import_editor_app_bar_ui8 = require("@elementor/editor-app-bar-ui");
444
- var import_i18n10 = require("@wordpress/i18n");
445
- var import_icons9 = require("@elementor/icons");
466
+ var import_i18n11 = require("@wordpress/i18n");
467
+ var import_icons10 = require("@elementor/icons");
446
468
  function init6() {
447
469
  import_editor_app_bar_ui8.__privateUtilitiesMenu.registerLink({
448
470
  id: "open-help-center",
@@ -450,9 +472,9 @@ function init6() {
450
472
  // After Finder.
451
473
  useProps: () => {
452
474
  return {
453
- title: (0, import_i18n10.__)("Help", "elementor"),
475
+ title: (0, import_i18n11.__)("Help", "elementor"),
454
476
  href: "https://go.elementor.com/editor-top-bar-learn/",
455
- icon: import_icons9.HelpIcon,
477
+ icon: import_icons10.HelpIcon,
456
478
  target: "_blank"
457
479
  };
458
480
  }
@@ -463,14 +485,14 @@ function init6() {
463
485
  var import_editor_app_bar_ui9 = require("@elementor/editor-app-bar-ui");
464
486
 
465
487
  // src/extensions/history/hooks/use-action-props.ts
466
- var import_icons10 = require("@elementor/icons");
467
- var import_i18n11 = require("@wordpress/i18n");
488
+ var import_icons11 = require("@elementor/icons");
489
+ var import_i18n12 = require("@wordpress/i18n");
468
490
  var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
469
491
  function useActionProps4() {
470
492
  const { isActive, isBlocked } = (0, import_editor_v1_adapters9.__privateUseRouteStatus)("panel/history");
471
493
  return {
472
- title: (0, import_i18n11.__)("History", "elementor"),
473
- icon: import_icons10.HistoryIcon,
494
+ title: (0, import_i18n12.__)("History", "elementor"),
495
+ icon: import_icons11.HistoryIcon,
474
496
  onClick: () => (0, import_editor_v1_adapters9.__privateOpenRoute)("panel/history/actions"),
475
497
  selected: isActive,
476
498
  disabled: isBlocked
@@ -490,13 +512,13 @@ function init7() {
490
512
  var import_editor_app_bar_ui10 = require("@elementor/editor-app-bar-ui");
491
513
 
492
514
  // src/extensions/keyboard-shortcuts/hooks/use-action-props.ts
493
- var import_i18n12 = require("@wordpress/i18n");
494
- var import_icons11 = require("@elementor/icons");
515
+ var import_i18n13 = require("@wordpress/i18n");
516
+ var import_icons12 = require("@elementor/icons");
495
517
  var import_editor_v1_adapters10 = require("@elementor/editor-v1-adapters");
496
518
  function useActionProps5() {
497
519
  return {
498
- icon: import_icons11.KeyboardIcon,
499
- title: (0, import_i18n12.__)("Keyboard Shortcuts", "elementor"),
520
+ icon: import_icons12.KeyboardIcon,
521
+ title: (0, import_i18n13.__)("Keyboard Shortcuts", "elementor"),
500
522
  onClick: () => (0, import_editor_v1_adapters10.__privateRunCommand)("shortcuts/open")
501
523
  };
502
524
  }
@@ -541,12 +563,12 @@ function getContainerRef() {
541
563
 
542
564
  // src/extensions/site-settings/components/primary-action.tsx
543
565
  var React5 = __toESM(require("react"));
544
- var import_editor_documents7 = require("@elementor/editor-documents");
566
+ var import_editor_documents8 = require("@elementor/editor-documents");
545
567
  var import_ui5 = require("@elementor/ui");
546
- var import_i18n13 = require("@wordpress/i18n");
568
+ var import_i18n14 = require("@wordpress/i18n");
547
569
  function PrimaryAction2() {
548
- const document2 = (0, import_editor_documents7.__useActiveDocument)();
549
- const { save } = (0, import_editor_documents7.__useActiveDocumentActions)();
570
+ const document2 = (0, import_editor_documents8.__useActiveDocument)();
571
+ const { save } = (0, import_editor_documents8.__useActiveDocumentActions)();
550
572
  return /* @__PURE__ */ React5.createElement(import_ui5.Paper, { sx: {
551
573
  px: 5,
552
574
  py: 4,
@@ -561,7 +583,7 @@ function PrimaryAction2() {
561
583
  sx: { width: "100%" },
562
584
  onClick: () => document2 && !document2.isSaving ? save() : null
563
585
  },
564
- document2?.isSaving ? /* @__PURE__ */ React5.createElement(import_ui5.CircularProgress, null) : (0, import_i18n13.__)("Save Changes", "elementor")
586
+ document2?.isSaving ? /* @__PURE__ */ React5.createElement(import_ui5.CircularProgress, null) : (0, import_i18n14.__)("Save Changes", "elementor")
565
587
  ));
566
588
  }
567
589
 
@@ -574,16 +596,16 @@ function PortalledPrimaryAction() {
574
596
  var import_editor_app_bar_ui11 = require("@elementor/editor-app-bar-ui");
575
597
 
576
598
  // src/extensions/site-settings/hooks/use-action-props.ts
577
- var import_i18n14 = require("@wordpress/i18n");
599
+ var import_i18n15 = require("@wordpress/i18n");
578
600
  var import_editor_v1_adapters12 = require("@elementor/editor-v1-adapters");
579
- var import_icons12 = require("@elementor/icons");
601
+ var import_icons13 = require("@elementor/icons");
580
602
  function useActionProps6() {
581
603
  const { isActive, isBlocked } = (0, import_editor_v1_adapters12.__privateUseRouteStatus)("panel/global", {
582
604
  blockOnKitRoutes: false
583
605
  });
584
606
  return {
585
- title: (0, import_i18n14.__)("Site Settings", "elementor"),
586
- icon: import_icons12.AdjustmentsHorizontalIcon,
607
+ title: (0, import_i18n15.__)("Site Settings", "elementor"),
608
+ icon: import_icons13.AdjustmentsHorizontalIcon,
587
609
  onClick: () => isActive ? (0, import_editor_v1_adapters12.__privateRunCommand)("panel/global/close") : (0, import_editor_v1_adapters12.__privateRunCommand)("panel/global/open"),
588
610
  selected: isActive,
589
611
  disabled: isBlocked
@@ -607,14 +629,14 @@ function init9() {
607
629
  var import_editor_app_bar_ui12 = require("@elementor/editor-app-bar-ui");
608
630
 
609
631
  // src/extensions/structure/hooks/use-action-props.ts
610
- var import_i18n15 = require("@wordpress/i18n");
632
+ var import_i18n16 = require("@wordpress/i18n");
611
633
  var import_editor_v1_adapters13 = require("@elementor/editor-v1-adapters");
612
- var import_icons13 = require("@elementor/icons");
634
+ var import_icons14 = require("@elementor/icons");
613
635
  function useActionProps7() {
614
636
  const { isActive, isBlocked } = (0, import_editor_v1_adapters13.__privateUseRouteStatus)("navigator");
615
637
  return {
616
- title: (0, import_i18n15.__)("Structure", "elementor"),
617
- icon: import_icons13.StructureIcon,
638
+ title: (0, import_i18n16.__)("Structure", "elementor"),
639
+ icon: import_icons14.StructureIcon,
618
640
  onClick: () => (0, import_editor_v1_adapters13.__privateRunCommand)("navigator/toggle"),
619
641
  selected: isActive,
620
642
  disabled: isBlocked
@@ -634,13 +656,13 @@ function init10() {
634
656
  var import_editor_app_bar_ui13 = require("@elementor/editor-app-bar-ui");
635
657
 
636
658
  // src/extensions/theme-builder/hooks/use-action-props.ts
637
- var import_i18n16 = require("@wordpress/i18n");
638
- var import_icons14 = require("@elementor/icons");
659
+ var import_i18n17 = require("@wordpress/i18n");
660
+ var import_icons15 = require("@elementor/icons");
639
661
  var import_editor_v1_adapters14 = require("@elementor/editor-v1-adapters");
640
662
  function useActionProps8() {
641
663
  return {
642
- icon: import_icons14.ThemeBuilderIcon,
643
- title: (0, import_i18n16.__)("Theme Builder", "elementor"),
664
+ icon: import_icons15.ThemeBuilderIcon,
665
+ title: (0, import_i18n17.__)("Theme Builder", "elementor"),
644
666
  onClick: () => (0, import_editor_v1_adapters14.__privateRunCommand)("app/open")
645
667
  };
646
668
  }
@@ -657,14 +679,14 @@ function init11() {
657
679
  var import_editor_app_bar_ui14 = require("@elementor/editor-app-bar-ui");
658
680
 
659
681
  // src/extensions/user-preferences/hooks/use-action-props.ts
660
- var import_i18n17 = require("@wordpress/i18n");
661
- var import_icons15 = require("@elementor/icons");
682
+ var import_i18n18 = require("@wordpress/i18n");
683
+ var import_icons16 = require("@elementor/icons");
662
684
  var import_editor_v1_adapters15 = require("@elementor/editor-v1-adapters");
663
685
  function useActionProps9() {
664
686
  const { isActive, isBlocked } = (0, import_editor_v1_adapters15.__privateUseRouteStatus)("panel/editor-preferences");
665
687
  return {
666
- icon: import_icons15.ToggleRightIcon,
667
- title: (0, import_i18n17.__)("User Preferences", "elementor"),
688
+ icon: import_icons16.ToggleRightIcon,
689
+ title: (0, import_i18n18.__)("User Preferences", "elementor"),
668
690
  onClick: () => (0, import_editor_v1_adapters15.__privateOpenRoute)("panel/editor-preferences"),
669
691
  selected: isActive,
670
692
  disabled: isBlocked
@@ -683,19 +705,19 @@ function init12() {
683
705
 
684
706
  // src/extensions/wordpress/index.ts
685
707
  var import_editor_app_bar_ui15 = require("@elementor/editor-app-bar-ui");
686
- var import_i18n18 = require("@wordpress/i18n");
687
- var import_icons16 = require("@elementor/icons");
688
- var import_editor_documents8 = require("@elementor/editor-documents");
708
+ var import_i18n19 = require("@wordpress/i18n");
709
+ var import_icons17 = require("@elementor/icons");
710
+ var import_editor_documents9 = require("@elementor/editor-documents");
689
711
  function init13() {
690
712
  import_editor_app_bar_ui15.__privateMainMenu.registerLink({
691
713
  id: "exit-to-wordpress",
692
714
  group: "exits",
693
715
  useProps: () => {
694
- const document2 = (0, import_editor_documents8.__useActiveDocument)();
716
+ const document2 = (0, import_editor_documents9.__useActiveDocument)();
695
717
  return {
696
- title: (0, import_i18n18.__)("Exit to WordPress", "elementor"),
718
+ title: (0, import_i18n19.__)("Exit to WordPress", "elementor"),
697
719
  href: document2?.links?.platformEdit,
698
- icon: import_icons16.WordpressIcon
720
+ icon: import_icons17.WordpressIcon
699
721
  };
700
722
  }
701
723
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/sync/redirect-old-menus.ts","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-preview/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/help/index.ts","../src/extensions/history/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts"],"sourcesContent":["// Re-exporting the menus & locations from `@elementor/editor-app-bar-ui`\n// to expose the API for other packages to use.\nexport {\n\t__privateMainMenu as mainMenu,\n\t__privateToolsMenu as toolsMenu,\n\t__privateUtilitiesMenu as utilitiesMenu,\n\t__privateIntegrationsMenu as integrationsMenu,\n\t__privateInjectIntoPageIndication as injectIntoPageIndication,\n\t__privateInjectIntoResponsive as injectIntoResponsive,\n\t__privateInjectIntoPrimaryAction as injectIntoPrimaryAction,\n} from '@elementor/editor-app-bar-ui';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nimport init from './init';\n\ninit();\n","import { __privateCreateMenu as createMenu } from '@elementor/editor-app-bar-ui';\n\nexport const documentOptionsMenu = createMenu( [ 'save' ] );\n","import { __privateAppBar as AppBar } from '@elementor/editor-app-bar-ui';\nimport { injectIntoTop } from '@elementor/editor';\nimport redirectOldMenus from './sync/redirect-old-menus';\nimport { init as initExtensions } from './extensions';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import { __privateListenTo as listenTo, __privateOpenRoute as openRoute, routeOpenEvent } from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n","import { __privateInjectIntoPageIndication as injectIntoPageIndication } from '@elementor/editor-app-bar-ui';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useHostDocument as useHostDocument } from '@elementor/editor-documents';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit'\n\t\t? activeDocument\n\t\t: hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' )\n\t\t.replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => openRoute( 'panel/page-settings/settings' ) }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn <BaseTooltip\n\t\tPopperProps={ {\n\t\t\tsx: {\n\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\tmt: 1.7,\n\t\t\t\t},\n\t\t\t},\n\t\t} }\n\t\t{ ...props }\n\t/>;\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => document && runCommand( 'editor/documents/preview', {\n\t\t\tid: document.id,\n\t\t\tforce: true,\n\t\t} ),\n\t};\n}\n","import { __privateInjectIntoPrimaryAction as injectIntoPrimaryAction } from '@elementor/editor-app-bar-ui';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport PrimaryAction from './components/primary-action';\nimport { documentOptionsMenu } from './locations';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\t// Documents options menu.\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10, // Before save as template.\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20, // After save draft.\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-view-page',\n\t\tpriority: 30, // After save draft.\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FolderIcon } from '@elementor/icons';\nimport { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () => document?.id && runCommand( 'editor/documents/view', {\n\t\t\tid: document.id,\n\t\t} ),\n\t};\n}\n","import * as React from 'react';\nimport { __ } from '@wordpress/i18n';\nimport PrimaryActionMenu from './primary-action-menu';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { Document, __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => ! document.isSaving && save() }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish\n\t\t? __( 'Publish', 'elementor' )\n\t\t: __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\nimport { __privatePopoverMenu as PopoverMenu, PopoverMenuProps } from '@elementor/editor-app-bar-ui';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers when a group is rendered empty (due to a limitation in our locations' mechanism).\n// It doesn't cover all the cases (i.e. when there are multiple dividers at the end), but it's good enough for our use-case.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root > .MuiDivider-root {\n\t\t&:only-child, /* A divider is being rendered lonely */\n\t\t&:last-child, /* The last group renders empty but renders a divider */\n\t\t& + .MuiDivider-root /* Multiple dividers due to multiple empty groups */ {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => ( [\n\t\t\t\t( index > 0 ) && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) ) }\n\n\t\t\t{ defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id } ) => <MenuItem key={ id } /> ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateIsRouteActive as isRouteActive, __privateListenTo as listenTo, routeOpenEvent, v1ReadyEvent } from '@elementor/editor-v1-adapters';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo(\n\t\trouteOpenEvent( 'panel/elements' ),\n\t\t() => {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t);\n\n\tlistenTo(\n\t\tv1ReadyEvent(),\n\t\t() => {\n\t\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\t\tsetPanelTitle( panelTitle );\n\t\t\t\tsetTabTitle( tabTitle );\n\t\t\t}\n\t\t}\n\t);\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import syncPanelTitle from './sync/sync-panel-title';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => openRoute( 'panel/elements/categories' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 10, // Before help.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { SearchIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => runCommand( 'finder/toggle' ),\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { HelpIcon } from '@elementor/icons';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 20, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t};\n\t\t},\n\t} );\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => openRoute( 'panel/history/actions' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => runCommand( 'shortcuts/open' ),\n\t};\n}\n","import { injectIntoTop } from '@elementor/editor';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport { Portal as BasePortal, PortalProps } from '@elementor/ui';\nimport { __privateIsRouteActive as isRouteActive, routeCloseEvent, routeOpenEvent, __privateUseListenTo as useListenTo } from '@elementor/editor-v1-adapters';\n\nexport default function Portal( props: Omit<PortalProps, 'container'> ) {\n\tconst containerRef = useListenTo(\n\t\t[\n\t\t\trouteOpenEvent( 'panel/global' ),\n\t\t\trouteCloseEvent( 'panel/global' ),\n\t\t],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BasePortal container={ containerRef.current } { ...props } />\n\t);\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper sx={ {\n\t\t\tpx: 5,\n\t\t\tpy: 4,\n\t\t\tborderTop: 1,\n\t\t\tborderColor: 'divider',\n\t\t} }>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => document && ! document.isSaving ? save() : null }\n\t\t\t>\n\t\t\t\t{\n\t\t\t\t\tdocument?.isSaving\n\t\t\t\t\t\t? <CircularProgress />\n\t\t\t\t\t\t: __( 'Save Changes', 'elementor' )\n\t\t\t\t}\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => (\n\t\t\tisActive\n\t\t\t\t? runCommand( 'panel/global/close' )\n\t\t\t\t: runCommand( 'panel/global/open' )\n\t\t),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => runCommand( 'navigator/toggle' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => runCommand( 'app/open' ),\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => openRoute( 'panel/editor-preferences' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n"],"mappings":"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","names":["import_editor_app_bar_ui","createMenu","import_editor_app_bar_ui","import_editor","listenTo","openRoute","import_editor_app_bar_ui","import_editor_v1_adapters","useActiveDocument","useHostDocument","document","useRouteStatus","openRoute","BaseTooltip","injectIntoPageIndication","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","import_editor_documents","document","useActiveDocument","runCommand","init","utilitiesMenu","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_documents","document","useActiveDocument","useActiveDocumentActions","import_i18n","import_icons","import_editor_documents","useActiveDocumentActions","import_i18n","import_icons","import_editor_documents","import_editor_v1_adapters","document","useActiveDocument","runCommand","React","import_i18n","React","import_ui","import_editor_app_bar_ui","PopoverMenu","import_ui","import_editor_documents","import_icons","import_editor_v1_adapters","document","useActiveDocument","useActiveDocumentActions","useIsPreviewMode","init","injectIntoPrimaryAction","import_i18n","import_editor_v1_adapters","listenTo","isRouteActive","import_editor_app_bar_ui","import_icons","import_i18n","import_editor_v1_adapters","useActionProps","useRouteStatus","openRoute","init","toolsMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","useRouteStatus","runCommand","init","utilitiesMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","init","utilitiesMenu","import_editor_app_bar_ui","import_icons","import_i18n","import_editor_v1_adapters","useActionProps","useRouteStatus","openRoute","init","mainMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","runCommand","init","mainMenu","useActionProps","React","React","import_ui","import_editor_v1_adapters","useListenTo","BasePortal","isRouteActive","React","import_editor_documents","import_ui","import_i18n","PrimaryAction","document","useActiveDocument","useActiveDocumentActions","PrimaryAction","import_editor_app_bar_ui","import_i18n","import_editor_v1_adapters","import_icons","useActionProps","useRouteStatus","runCommand","init","toolsMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_editor_v1_adapters","import_icons","useActionProps","useRouteStatus","runCommand","init","toolsMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","runCommand","init","mainMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","useRouteStatus","openRoute","init","mainMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_documents","init","mainMenu","document","useActiveDocument","init","init","AppBar","init"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/sync/redirect-old-menus.ts","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-preview/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/help/index.ts","../src/extensions/history/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts"],"sourcesContent":["// Re-exporting the menus & locations from `@elementor/editor-app-bar-ui`\n// to expose the API for other packages to use.\nexport {\n\t__privateMainMenu as mainMenu,\n\t__privateToolsMenu as toolsMenu,\n\t__privateUtilitiesMenu as utilitiesMenu,\n\t__privateIntegrationsMenu as integrationsMenu,\n\t__privateInjectIntoPageIndication as injectIntoPageIndication,\n\t__privateInjectIntoResponsive as injectIntoResponsive,\n\t__privateInjectIntoPrimaryAction as injectIntoPrimaryAction,\n} from '@elementor/editor-app-bar-ui';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nimport init from './init';\n\ninit();\n","import { __privateCreateMenu as createMenu } from '@elementor/editor-app-bar-ui';\n\nexport const documentOptionsMenu = createMenu( [ 'save' ] );\n","import { __privateAppBar as AppBar } from '@elementor/editor-app-bar-ui';\nimport { injectIntoTop } from '@elementor/editor';\nimport redirectOldMenus from './sync/redirect-old-menus';\nimport { init as initExtensions } from './extensions';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import { __privateListenTo as listenTo, __privateOpenRoute as openRoute, routeOpenEvent } from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n","import { __privateInjectIntoPageIndication as injectIntoPageIndication } from '@elementor/editor-app-bar-ui';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useHostDocument as useHostDocument } from '@elementor/editor-documents';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit'\n\t\t? activeDocument\n\t\t: hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' )\n\t\t.replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => openRoute( 'panel/page-settings/settings' ) }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn <BaseTooltip\n\t\tPopperProps={ {\n\t\t\tsx: {\n\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\tmt: 1.7,\n\t\t\t\t},\n\t\t\t},\n\t\t} }\n\t\t{ ...props }\n\t/>;\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => document && runCommand( 'editor/documents/preview', {\n\t\t\tid: document.id,\n\t\t\tforce: true,\n\t\t} ),\n\t};\n}\n","import { __privateInjectIntoPrimaryAction as injectIntoPrimaryAction } from '@elementor/editor-app-bar-ui';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport PrimaryAction from './components/primary-action';\nimport { documentOptionsMenu } from './locations';\nimport useDocumentCopyAndShareProps from './hooks/use-document-copy-and-share-props';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\t// Documents options menu.\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10, // Before save as template.\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20, // After save draft.\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-view-page',\n\t\tpriority: 30, // After save draft.\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-copy-and-share',\n\t\tpriority: 40,\n\t\tuseProps: useDocumentCopyAndShareProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FolderIcon } from '@elementor/icons';\nimport { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () => document?.id && runCommand( 'editor/documents/view', {\n\t\t\tid: document.id,\n\t\t} ),\n\t};\n}\n","import * as React from 'react';\nimport { __ } from '@wordpress/i18n';\nimport PrimaryActionMenu from './primary-action-menu';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { Document, __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => ! document.isSaving && save() }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish\n\t\t? __( 'Publish', 'elementor' )\n\t\t: __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\nimport { __privatePopoverMenu as PopoverMenu, PopoverMenuProps } from '@elementor/editor-app-bar-ui';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers when a group is rendered empty (due to a limitation in our locations' mechanism).\n// It doesn't cover all the cases (i.e. when there are multiple dividers at the end), but it's good enough for our use-case.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root > .MuiDivider-root {\n\t\t&:only-child, /* A divider is being rendered lonely */\n\t\t&:last-child, /* The last group renders empty but renders a divider */\n\t\t& + .MuiDivider-root /* Multiple dividers due to multiple empty groups */ {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => ( [\n\t\t\t\t( index > 0 ) && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) ) }\n\n\t\t\t{ defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id } ) => <MenuItem key={ id } /> ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { LinkIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentCopyAndShareProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { copyAndShare } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: LinkIcon,\n\t\ttitle: __( 'Copy and Share', 'elementor' ),\n\t\tonClick: copyAndShare,\n\t\tdisabled: ! document ||\n\t\t\tdocument.isSaving ||\n\t\t\tdocument.isSavingDraft ||\n\t\t\t! ( 'publish' === document.status.value ),\n\t\tvisible: document?.permissions?.showCopyAndShare,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateIsRouteActive as isRouteActive, __privateListenTo as listenTo, routeOpenEvent, v1ReadyEvent } from '@elementor/editor-v1-adapters';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo(\n\t\trouteOpenEvent( 'panel/elements' ),\n\t\t() => {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t);\n\n\tlistenTo(\n\t\tv1ReadyEvent(),\n\t\t() => {\n\t\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\t\tsetPanelTitle( panelTitle );\n\t\t\t\tsetTabTitle( tabTitle );\n\t\t\t}\n\t\t}\n\t);\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import syncPanelTitle from './sync/sync-panel-title';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => openRoute( 'panel/elements/categories' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 10, // Before help.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { SearchIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => runCommand( 'finder/toggle' ),\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { HelpIcon } from '@elementor/icons';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 20, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t};\n\t\t},\n\t} );\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => openRoute( 'panel/history/actions' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => runCommand( 'shortcuts/open' ),\n\t};\n}\n","import { injectIntoTop } from '@elementor/editor';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport { Portal as BasePortal, PortalProps } from '@elementor/ui';\nimport { __privateIsRouteActive as isRouteActive, routeCloseEvent, routeOpenEvent, __privateUseListenTo as useListenTo } from '@elementor/editor-v1-adapters';\n\nexport default function Portal( props: Omit<PortalProps, 'container'> ) {\n\tconst containerRef = useListenTo(\n\t\t[\n\t\t\trouteOpenEvent( 'panel/global' ),\n\t\t\trouteCloseEvent( 'panel/global' ),\n\t\t],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BasePortal container={ containerRef.current } { ...props } />\n\t);\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper sx={ {\n\t\t\tpx: 5,\n\t\t\tpy: 4,\n\t\t\tborderTop: 1,\n\t\t\tborderColor: 'divider',\n\t\t} }>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => document && ! document.isSaving ? save() : null }\n\t\t\t>\n\t\t\t\t{\n\t\t\t\t\tdocument?.isSaving\n\t\t\t\t\t\t? <CircularProgress />\n\t\t\t\t\t\t: __( 'Save Changes', 'elementor' )\n\t\t\t\t}\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => (\n\t\t\tisActive\n\t\t\t\t? runCommand( 'panel/global/close' )\n\t\t\t\t: runCommand( 'panel/global/open' )\n\t\t),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => runCommand( 'navigator/toggle' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => runCommand( 'app/open' ),\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => openRoute( 'panel/editor-preferences' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n"],"mappings":"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","names":["import_editor_app_bar_ui","createMenu","import_editor_app_bar_ui","import_editor","listenTo","openRoute","import_editor_app_bar_ui","import_editor_v1_adapters","useActiveDocument","useHostDocument","document","useRouteStatus","openRoute","BaseTooltip","injectIntoPageIndication","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","import_editor_documents","document","useActiveDocument","runCommand","init","utilitiesMenu","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_documents","document","useActiveDocument","useActiveDocumentActions","import_i18n","import_icons","import_editor_documents","useActiveDocumentActions","import_i18n","import_icons","import_editor_documents","import_editor_v1_adapters","document","useActiveDocument","runCommand","React","import_i18n","React","import_ui","import_editor_app_bar_ui","PopoverMenu","import_ui","import_editor_documents","import_icons","import_editor_v1_adapters","document","useActiveDocument","useActiveDocumentActions","useIsPreviewMode","import_i18n","import_icons","import_editor_documents","document","useActiveDocument","useActiveDocumentActions","init","injectIntoPrimaryAction","import_i18n","import_editor_v1_adapters","listenTo","isRouteActive","import_editor_app_bar_ui","import_icons","import_i18n","import_editor_v1_adapters","useActionProps","useRouteStatus","openRoute","init","toolsMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","useRouteStatus","runCommand","init","utilitiesMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","init","utilitiesMenu","import_editor_app_bar_ui","import_icons","import_i18n","import_editor_v1_adapters","useActionProps","useRouteStatus","openRoute","init","mainMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","runCommand","init","mainMenu","useActionProps","React","React","import_ui","import_editor_v1_adapters","useListenTo","BasePortal","isRouteActive","React","import_editor_documents","import_ui","import_i18n","PrimaryAction","document","useActiveDocument","useActiveDocumentActions","PrimaryAction","import_editor_app_bar_ui","import_i18n","import_editor_v1_adapters","import_icons","useActionProps","useRouteStatus","runCommand","init","toolsMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_editor_v1_adapters","import_icons","useActionProps","useRouteStatus","runCommand","init","toolsMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","runCommand","init","mainMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_v1_adapters","useActionProps","useRouteStatus","openRoute","init","mainMenu","useActionProps","import_editor_app_bar_ui","import_i18n","import_icons","import_editor_documents","init","mainMenu","document","useActiveDocument","init","init","AppBar","init"]}
package/dist/index.mjs CHANGED
@@ -295,6 +295,22 @@ function isPublishEnabled(document2) {
295
295
  return document2.isDirty || document2.status.value === "draft";
296
296
  }
297
297
 
298
+ // src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts
299
+ import { __ as __7 } from "@wordpress/i18n";
300
+ import { LinkIcon } from "@elementor/icons";
301
+ import { __useActiveDocument as useActiveDocument6, __useActiveDocumentActions as useActiveDocumentActions4 } from "@elementor/editor-documents";
302
+ function useDocumentCopyAndShareProps() {
303
+ const document2 = useActiveDocument6();
304
+ const { copyAndShare } = useActiveDocumentActions4();
305
+ return {
306
+ icon: LinkIcon,
307
+ title: __7("Copy and Share", "elementor"),
308
+ onClick: copyAndShare,
309
+ disabled: !document2 || document2.isSaving || document2.isSavingDraft || !("publish" === document2.status.value),
310
+ visible: document2?.permissions?.showCopyAndShare
311
+ };
312
+ }
313
+
298
314
  // src/extensions/documents-save/index.ts
299
315
  function init3() {
300
316
  injectIntoPrimaryAction({
@@ -322,14 +338,20 @@ function init3() {
322
338
  // After save draft.
323
339
  useProps: useDocumentViewPageProps
324
340
  });
341
+ documentOptionsMenu.registerAction({
342
+ group: "save",
343
+ id: "document-copy-and-share",
344
+ priority: 40,
345
+ useProps: useDocumentCopyAndShareProps
346
+ });
325
347
  }
326
348
 
327
349
  // src/extensions/elements/sync/sync-panel-title.ts
328
- import { __ as __7 } from "@wordpress/i18n";
350
+ import { __ as __8 } from "@wordpress/i18n";
329
351
  import { __privateIsRouteActive as isRouteActive, __privateListenTo as listenTo2, routeOpenEvent as routeOpenEvent2, v1ReadyEvent } from "@elementor/editor-v1-adapters";
330
352
  function syncPanelTitle() {
331
- const panelTitle = __7("Elements", "elementor");
332
- const tabTitle = __7("Widgets", "elementor");
353
+ const panelTitle = __8("Elements", "elementor");
354
+ const tabTitle = __8("Widgets", "elementor");
333
355
  listenTo2(
334
356
  routeOpenEvent2("panel/elements"),
335
357
  () => {
@@ -362,12 +384,12 @@ import { __privateToolsMenu as toolsMenu } from "@elementor/editor-app-bar-ui";
362
384
 
363
385
  // src/extensions/elements/hooks/use-action-props.ts
364
386
  import { PlusIcon } from "@elementor/icons";
365
- import { __ as __8 } from "@wordpress/i18n";
387
+ import { __ as __9 } from "@wordpress/i18n";
366
388
  import { __privateOpenRoute as openRoute3, __privateUseRouteStatus as useRouteStatus2 } from "@elementor/editor-v1-adapters";
367
389
  function useActionProps2() {
368
390
  const { isActive, isBlocked } = useRouteStatus2("panel/elements");
369
391
  return {
370
- title: __8("Add Element", "elementor"),
392
+ title: __9("Add Element", "elementor"),
371
393
  icon: PlusIcon,
372
394
  onClick: () => openRoute3("panel/elements/categories"),
373
395
  selected: isActive,
@@ -389,7 +411,7 @@ function init4() {
389
411
  import { __privateUtilitiesMenu as utilitiesMenu2 } from "@elementor/editor-app-bar-ui";
390
412
 
391
413
  // src/extensions/finder/hooks/use-action-props.ts
392
- import { __ as __9 } from "@wordpress/i18n";
414
+ import { __ as __10 } from "@wordpress/i18n";
393
415
  import { SearchIcon } from "@elementor/icons";
394
416
  import { __privateRunCommand as runCommand3, __privateUseRouteStatus as useRouteStatus3 } from "@elementor/editor-v1-adapters";
395
417
  function useActionProps3() {
@@ -398,7 +420,7 @@ function useActionProps3() {
398
420
  blockOnPreviewMode: false
399
421
  });
400
422
  return {
401
- title: __9("Finder", "elementor"),
423
+ title: __10("Finder", "elementor"),
402
424
  icon: SearchIcon,
403
425
  onClick: () => runCommand3("finder/toggle"),
404
426
  disabled: isBlocked
@@ -417,7 +439,7 @@ function init5() {
417
439
 
418
440
  // src/extensions/help/index.ts
419
441
  import { __privateUtilitiesMenu as utilitiesMenu3 } from "@elementor/editor-app-bar-ui";
420
- import { __ as __10 } from "@wordpress/i18n";
442
+ import { __ as __11 } from "@wordpress/i18n";
421
443
  import { HelpIcon } from "@elementor/icons";
422
444
  function init6() {
423
445
  utilitiesMenu3.registerLink({
@@ -426,7 +448,7 @@ function init6() {
426
448
  // After Finder.
427
449
  useProps: () => {
428
450
  return {
429
- title: __10("Help", "elementor"),
451
+ title: __11("Help", "elementor"),
430
452
  href: "https://go.elementor.com/editor-top-bar-learn/",
431
453
  icon: HelpIcon,
432
454
  target: "_blank"
@@ -440,12 +462,12 @@ import { __privateMainMenu as mainMenu } from "@elementor/editor-app-bar-ui";
440
462
 
441
463
  // src/extensions/history/hooks/use-action-props.ts
442
464
  import { HistoryIcon } from "@elementor/icons";
443
- import { __ as __11 } from "@wordpress/i18n";
465
+ import { __ as __12 } from "@wordpress/i18n";
444
466
  import { __privateOpenRoute as openRoute4, __privateUseRouteStatus as useRouteStatus4 } from "@elementor/editor-v1-adapters";
445
467
  function useActionProps4() {
446
468
  const { isActive, isBlocked } = useRouteStatus4("panel/history");
447
469
  return {
448
- title: __11("History", "elementor"),
470
+ title: __12("History", "elementor"),
449
471
  icon: HistoryIcon,
450
472
  onClick: () => openRoute4("panel/history/actions"),
451
473
  selected: isActive,
@@ -466,13 +488,13 @@ function init7() {
466
488
  import { __privateMainMenu as mainMenu2 } from "@elementor/editor-app-bar-ui";
467
489
 
468
490
  // src/extensions/keyboard-shortcuts/hooks/use-action-props.ts
469
- import { __ as __12 } from "@wordpress/i18n";
491
+ import { __ as __13 } from "@wordpress/i18n";
470
492
  import { KeyboardIcon } from "@elementor/icons";
471
493
  import { __privateRunCommand as runCommand4 } from "@elementor/editor-v1-adapters";
472
494
  function useActionProps5() {
473
495
  return {
474
496
  icon: KeyboardIcon,
475
- title: __12("Keyboard Shortcuts", "elementor"),
497
+ title: __13("Keyboard Shortcuts", "elementor"),
476
498
  onClick: () => runCommand4("shortcuts/open")
477
499
  };
478
500
  }
@@ -517,12 +539,12 @@ function getContainerRef() {
517
539
 
518
540
  // src/extensions/site-settings/components/primary-action.tsx
519
541
  import * as React5 from "react";
520
- import { __useActiveDocument as useActiveDocument6, __useActiveDocumentActions as useActiveDocumentActions4 } from "@elementor/editor-documents";
542
+ import { __useActiveDocument as useActiveDocument7, __useActiveDocumentActions as useActiveDocumentActions5 } from "@elementor/editor-documents";
521
543
  import { Button as Button2, CircularProgress as CircularProgress2, Paper } from "@elementor/ui";
522
- import { __ as __13 } from "@wordpress/i18n";
544
+ import { __ as __14 } from "@wordpress/i18n";
523
545
  function PrimaryAction2() {
524
- const document2 = useActiveDocument6();
525
- const { save } = useActiveDocumentActions4();
546
+ const document2 = useActiveDocument7();
547
+ const { save } = useActiveDocumentActions5();
526
548
  return /* @__PURE__ */ React5.createElement(Paper, { sx: {
527
549
  px: 5,
528
550
  py: 4,
@@ -537,7 +559,7 @@ function PrimaryAction2() {
537
559
  sx: { width: "100%" },
538
560
  onClick: () => document2 && !document2.isSaving ? save() : null
539
561
  },
540
- document2?.isSaving ? /* @__PURE__ */ React5.createElement(CircularProgress2, null) : __13("Save Changes", "elementor")
562
+ document2?.isSaving ? /* @__PURE__ */ React5.createElement(CircularProgress2, null) : __14("Save Changes", "elementor")
541
563
  ));
542
564
  }
543
565
 
@@ -550,7 +572,7 @@ function PortalledPrimaryAction() {
550
572
  import { __privateToolsMenu as toolsMenu2 } from "@elementor/editor-app-bar-ui";
551
573
 
552
574
  // src/extensions/site-settings/hooks/use-action-props.ts
553
- import { __ as __14 } from "@wordpress/i18n";
575
+ import { __ as __15 } from "@wordpress/i18n";
554
576
  import { __privateRunCommand as runCommand5, __privateUseRouteStatus as useRouteStatus5 } from "@elementor/editor-v1-adapters";
555
577
  import { AdjustmentsHorizontalIcon } from "@elementor/icons";
556
578
  function useActionProps6() {
@@ -558,7 +580,7 @@ function useActionProps6() {
558
580
  blockOnKitRoutes: false
559
581
  });
560
582
  return {
561
- title: __14("Site Settings", "elementor"),
583
+ title: __15("Site Settings", "elementor"),
562
584
  icon: AdjustmentsHorizontalIcon,
563
585
  onClick: () => isActive ? runCommand5("panel/global/close") : runCommand5("panel/global/open"),
564
586
  selected: isActive,
@@ -583,13 +605,13 @@ function init9() {
583
605
  import { __privateToolsMenu as toolsMenu3 } from "@elementor/editor-app-bar-ui";
584
606
 
585
607
  // src/extensions/structure/hooks/use-action-props.ts
586
- import { __ as __15 } from "@wordpress/i18n";
608
+ import { __ as __16 } from "@wordpress/i18n";
587
609
  import { __privateRunCommand as runCommand6, __privateUseRouteStatus as useRouteStatus6 } from "@elementor/editor-v1-adapters";
588
610
  import { StructureIcon } from "@elementor/icons";
589
611
  function useActionProps7() {
590
612
  const { isActive, isBlocked } = useRouteStatus6("navigator");
591
613
  return {
592
- title: __15("Structure", "elementor"),
614
+ title: __16("Structure", "elementor"),
593
615
  icon: StructureIcon,
594
616
  onClick: () => runCommand6("navigator/toggle"),
595
617
  selected: isActive,
@@ -610,13 +632,13 @@ function init10() {
610
632
  import { __privateMainMenu as mainMenu3 } from "@elementor/editor-app-bar-ui";
611
633
 
612
634
  // src/extensions/theme-builder/hooks/use-action-props.ts
613
- import { __ as __16 } from "@wordpress/i18n";
635
+ import { __ as __17 } from "@wordpress/i18n";
614
636
  import { ThemeBuilderIcon } from "@elementor/icons";
615
637
  import { __privateRunCommand as runCommand7 } from "@elementor/editor-v1-adapters";
616
638
  function useActionProps8() {
617
639
  return {
618
640
  icon: ThemeBuilderIcon,
619
- title: __16("Theme Builder", "elementor"),
641
+ title: __17("Theme Builder", "elementor"),
620
642
  onClick: () => runCommand7("app/open")
621
643
  };
622
644
  }
@@ -633,14 +655,14 @@ function init11() {
633
655
  import { __privateMainMenu as mainMenu4 } from "@elementor/editor-app-bar-ui";
634
656
 
635
657
  // src/extensions/user-preferences/hooks/use-action-props.ts
636
- import { __ as __17 } from "@wordpress/i18n";
658
+ import { __ as __18 } from "@wordpress/i18n";
637
659
  import { ToggleRightIcon } from "@elementor/icons";
638
660
  import { __privateOpenRoute as openRoute5, __privateUseRouteStatus as useRouteStatus7 } from "@elementor/editor-v1-adapters";
639
661
  function useActionProps9() {
640
662
  const { isActive, isBlocked } = useRouteStatus7("panel/editor-preferences");
641
663
  return {
642
664
  icon: ToggleRightIcon,
643
- title: __17("User Preferences", "elementor"),
665
+ title: __18("User Preferences", "elementor"),
644
666
  onClick: () => openRoute5("panel/editor-preferences"),
645
667
  selected: isActive,
646
668
  disabled: isBlocked
@@ -659,17 +681,17 @@ function init12() {
659
681
 
660
682
  // src/extensions/wordpress/index.ts
661
683
  import { __privateMainMenu as mainMenu5 } from "@elementor/editor-app-bar-ui";
662
- import { __ as __18 } from "@wordpress/i18n";
684
+ import { __ as __19 } from "@wordpress/i18n";
663
685
  import { WordpressIcon } from "@elementor/icons";
664
- import { __useActiveDocument as useActiveDocument7 } from "@elementor/editor-documents";
686
+ import { __useActiveDocument as useActiveDocument8 } from "@elementor/editor-documents";
665
687
  function init13() {
666
688
  mainMenu5.registerLink({
667
689
  id: "exit-to-wordpress",
668
690
  group: "exits",
669
691
  useProps: () => {
670
- const document2 = useActiveDocument7();
692
+ const document2 = useActiveDocument8();
671
693
  return {
672
- title: __18("Exit to WordPress", "elementor"),
694
+ title: __19("Exit to WordPress", "elementor"),
673
695
  href: document2?.links?.platformEdit,
674
696
  icon: WordpressIcon
675
697
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/sync/redirect-old-menus.ts","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-preview/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/help/index.ts","../src/extensions/history/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts"],"sourcesContent":["// Re-exporting the menus & locations from `@elementor/editor-app-bar-ui`\n// to expose the API for other packages to use.\nexport {\n\t__privateMainMenu as mainMenu,\n\t__privateToolsMenu as toolsMenu,\n\t__privateUtilitiesMenu as utilitiesMenu,\n\t__privateIntegrationsMenu as integrationsMenu,\n\t__privateInjectIntoPageIndication as injectIntoPageIndication,\n\t__privateInjectIntoResponsive as injectIntoResponsive,\n\t__privateInjectIntoPrimaryAction as injectIntoPrimaryAction,\n} from '@elementor/editor-app-bar-ui';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nimport init from './init';\n\ninit();\n","import { __privateCreateMenu as createMenu } from '@elementor/editor-app-bar-ui';\n\nexport const documentOptionsMenu = createMenu( [ 'save' ] );\n","import { __privateAppBar as AppBar } from '@elementor/editor-app-bar-ui';\nimport { injectIntoTop } from '@elementor/editor';\nimport redirectOldMenus from './sync/redirect-old-menus';\nimport { init as initExtensions } from './extensions';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import { __privateListenTo as listenTo, __privateOpenRoute as openRoute, routeOpenEvent } from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n","import { __privateInjectIntoPageIndication as injectIntoPageIndication } from '@elementor/editor-app-bar-ui';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useHostDocument as useHostDocument } from '@elementor/editor-documents';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit'\n\t\t? activeDocument\n\t\t: hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' )\n\t\t.replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => openRoute( 'panel/page-settings/settings' ) }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn <BaseTooltip\n\t\tPopperProps={ {\n\t\t\tsx: {\n\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\tmt: 1.7,\n\t\t\t\t},\n\t\t\t},\n\t\t} }\n\t\t{ ...props }\n\t/>;\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => document && runCommand( 'editor/documents/preview', {\n\t\t\tid: document.id,\n\t\t\tforce: true,\n\t\t} ),\n\t};\n}\n","import { __privateInjectIntoPrimaryAction as injectIntoPrimaryAction } from '@elementor/editor-app-bar-ui';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport PrimaryAction from './components/primary-action';\nimport { documentOptionsMenu } from './locations';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\t// Documents options menu.\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10, // Before save as template.\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20, // After save draft.\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-view-page',\n\t\tpriority: 30, // After save draft.\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FolderIcon } from '@elementor/icons';\nimport { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () => document?.id && runCommand( 'editor/documents/view', {\n\t\t\tid: document.id,\n\t\t} ),\n\t};\n}\n","import * as React from 'react';\nimport { __ } from '@wordpress/i18n';\nimport PrimaryActionMenu from './primary-action-menu';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { Document, __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => ! document.isSaving && save() }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish\n\t\t? __( 'Publish', 'elementor' )\n\t\t: __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\nimport { __privatePopoverMenu as PopoverMenu, PopoverMenuProps } from '@elementor/editor-app-bar-ui';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers when a group is rendered empty (due to a limitation in our locations' mechanism).\n// It doesn't cover all the cases (i.e. when there are multiple dividers at the end), but it's good enough for our use-case.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root > .MuiDivider-root {\n\t\t&:only-child, /* A divider is being rendered lonely */\n\t\t&:last-child, /* The last group renders empty but renders a divider */\n\t\t& + .MuiDivider-root /* Multiple dividers due to multiple empty groups */ {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => ( [\n\t\t\t\t( index > 0 ) && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) ) }\n\n\t\t\t{ defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id } ) => <MenuItem key={ id } /> ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateIsRouteActive as isRouteActive, __privateListenTo as listenTo, routeOpenEvent, v1ReadyEvent } from '@elementor/editor-v1-adapters';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo(\n\t\trouteOpenEvent( 'panel/elements' ),\n\t\t() => {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t);\n\n\tlistenTo(\n\t\tv1ReadyEvent(),\n\t\t() => {\n\t\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\t\tsetPanelTitle( panelTitle );\n\t\t\t\tsetTabTitle( tabTitle );\n\t\t\t}\n\t\t}\n\t);\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import syncPanelTitle from './sync/sync-panel-title';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => openRoute( 'panel/elements/categories' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 10, // Before help.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { SearchIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => runCommand( 'finder/toggle' ),\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { HelpIcon } from '@elementor/icons';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 20, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t};\n\t\t},\n\t} );\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => openRoute( 'panel/history/actions' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => runCommand( 'shortcuts/open' ),\n\t};\n}\n","import { injectIntoTop } from '@elementor/editor';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport { Portal as BasePortal, PortalProps } from '@elementor/ui';\nimport { __privateIsRouteActive as isRouteActive, routeCloseEvent, routeOpenEvent, __privateUseListenTo as useListenTo } from '@elementor/editor-v1-adapters';\n\nexport default function Portal( props: Omit<PortalProps, 'container'> ) {\n\tconst containerRef = useListenTo(\n\t\t[\n\t\t\trouteOpenEvent( 'panel/global' ),\n\t\t\trouteCloseEvent( 'panel/global' ),\n\t\t],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BasePortal container={ containerRef.current } { ...props } />\n\t);\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper sx={ {\n\t\t\tpx: 5,\n\t\t\tpy: 4,\n\t\t\tborderTop: 1,\n\t\t\tborderColor: 'divider',\n\t\t} }>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => document && ! document.isSaving ? save() : null }\n\t\t\t>\n\t\t\t\t{\n\t\t\t\t\tdocument?.isSaving\n\t\t\t\t\t\t? <CircularProgress />\n\t\t\t\t\t\t: __( 'Save Changes', 'elementor' )\n\t\t\t\t}\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => (\n\t\t\tisActive\n\t\t\t\t? runCommand( 'panel/global/close' )\n\t\t\t\t: runCommand( 'panel/global/open' )\n\t\t),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => runCommand( 'navigator/toggle' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => runCommand( 'app/open' ),\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => openRoute( 'panel/editor-preferences' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n"],"mappings":"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","names":["injectIntoTop","openRoute","document","__","useActiveDocument","document","init","__","useActiveDocument","document","__","useActiveDocumentActions","__","EyeIcon","useActiveDocument","runCommand","document","React","__","React","Box","Tooltip","useActiveDocument","useActiveDocumentActions","document","__","init","__","listenTo","routeOpenEvent","__","openRoute","useRouteStatus","useActionProps","init","useActionProps","utilitiesMenu","__","runCommand","useRouteStatus","useActionProps","init","utilitiesMenu","useActionProps","utilitiesMenu","__","init","__","openRoute","useRouteStatus","useActionProps","init","useActionProps","mainMenu","__","runCommand","useActionProps","init","mainMenu","useActionProps","React","React","isRouteActive","routeOpenEvent","React","useActiveDocument","useActiveDocumentActions","Button","CircularProgress","__","PrimaryAction","document","PrimaryAction","toolsMenu","__","runCommand","useRouteStatus","useActionProps","init","toolsMenu","useActionProps","toolsMenu","__","runCommand","useRouteStatus","useActionProps","init","toolsMenu","useActionProps","mainMenu","__","runCommand","useActionProps","init","mainMenu","useActionProps","mainMenu","__","openRoute","useRouteStatus","useActionProps","init","mainMenu","useActionProps","mainMenu","__","useActiveDocument","init","document","init","init","injectIntoTop","init"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/extensions/documents-save/locations.ts","../src/init.ts","../src/sync/redirect-old-menus.ts","../src/extensions/documents-indicator/index.ts","../src/extensions/documents-indicator/components/settings-button.tsx","../src/extensions/documents-preview/index.ts","../src/extensions/documents-preview/hooks/use-action-props.ts","../src/extensions/documents-save/index.ts","../src/extensions/documents-save/hooks/use-document-save-draft-props.ts","../src/extensions/documents-save/hooks/use-document-save-template-props.ts","../src/extensions/documents-save/hooks/use-document-view-page-props.ts","../src/extensions/documents-save/components/primary-action.tsx","../src/extensions/documents-save/components/primary-action-menu.tsx","../src/extensions/documents-save/hooks/use-document-copy-and-share-props.ts","../src/extensions/elements/sync/sync-panel-title.ts","../src/extensions/elements/index.ts","../src/extensions/elements/hooks/use-action-props.ts","../src/extensions/finder/index.ts","../src/extensions/finder/hooks/use-action-props.ts","../src/extensions/help/index.ts","../src/extensions/history/index.ts","../src/extensions/history/hooks/use-action-props.ts","../src/extensions/keyboard-shortcuts/index.ts","../src/extensions/keyboard-shortcuts/hooks/use-action-props.ts","../src/extensions/site-settings/index.ts","../src/extensions/site-settings/components/portalled-primary-action.tsx","../src/extensions/site-settings/components/portal.tsx","../src/extensions/site-settings/components/primary-action.tsx","../src/extensions/site-settings/hooks/use-action-props.ts","../src/extensions/structure/index.ts","../src/extensions/structure/hooks/use-action-props.ts","../src/extensions/theme-builder/index.ts","../src/extensions/theme-builder/hooks/use-action-props.ts","../src/extensions/user-preferences/index.ts","../src/extensions/user-preferences/hooks/use-action-props.ts","../src/extensions/wordpress/index.ts","../src/extensions/index.ts"],"sourcesContent":["// Re-exporting the menus & locations from `@elementor/editor-app-bar-ui`\n// to expose the API for other packages to use.\nexport {\n\t__privateMainMenu as mainMenu,\n\t__privateToolsMenu as toolsMenu,\n\t__privateUtilitiesMenu as utilitiesMenu,\n\t__privateIntegrationsMenu as integrationsMenu,\n\t__privateInjectIntoPageIndication as injectIntoPageIndication,\n\t__privateInjectIntoResponsive as injectIntoResponsive,\n\t__privateInjectIntoPrimaryAction as injectIntoPrimaryAction,\n} from '@elementor/editor-app-bar-ui';\n\nexport { documentOptionsMenu } from './extensions/documents-save/locations';\n\nimport init from './init';\n\ninit();\n","import { __privateCreateMenu as createMenu } from '@elementor/editor-app-bar-ui';\n\nexport const documentOptionsMenu = createMenu( [ 'save' ] );\n","import { __privateAppBar as AppBar } from '@elementor/editor-app-bar-ui';\nimport { injectIntoTop } from '@elementor/editor';\nimport redirectOldMenus from './sync/redirect-old-menus';\nimport { init as initExtensions } from './extensions';\n\nexport default function init() {\n\tredirectOldMenus();\n\n\tinitExtensions();\n\n\tinjectIntoTop( {\n\t\tid: 'app-bar',\n\t\tcomponent: AppBar,\n\t} );\n}\n","import { __privateListenTo as listenTo, __privateOpenRoute as openRoute, routeOpenEvent } from '@elementor/editor-v1-adapters';\n\nexport default function redirectOldMenus() {\n\t// Currently, in V1, when you click `esc` it opens the hamburger menu in the panel.\n\t// In V2, we don't have this panel, so we redirect the user to the elements panel instead.\n\tlistenTo( routeOpenEvent( 'panel/menu' ), () => {\n\t\topenRoute( 'panel/elements/categories' );\n\t} );\n}\n","import { __privateInjectIntoPageIndication as injectIntoPageIndication } from '@elementor/editor-app-bar-ui';\nimport SettingsButton from './components/settings-button';\n\nexport function init() {\n\tinjectIntoPageIndication( {\n\t\tid: 'document-settings-button',\n\t\tcomponent: SettingsButton,\n\t\toptions: {\n\t\t\tpriority: 20, // After document indicator.\n\t\t},\n\t} );\n}\n","import * as React from 'react';\nimport { Box, ToggleButton, Tooltip as BaseTooltip, TooltipProps } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { SettingsIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useHostDocument as useHostDocument } from '@elementor/editor-documents';\n\nexport default function SettingsButton() {\n\tconst activeDocument = useActiveDocument();\n\tconst hostDocument = useHostDocument();\n\n\tconst document = activeDocument && activeDocument.type.value !== 'kit'\n\t\t? activeDocument\n\t\t: hostDocument;\n\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/page-settings' );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\t/* translators: %s: Post type label. */\n\tconst title = __( '%s Settings', 'elementor' )\n\t\t.replace( '%s', document.type.label );\n\n\treturn (\n\t\t<Tooltip title={ title }>\n\t\t\t{ /* @see https://mui.com/material-ui/react-tooltip/#disabled-elements */ }\n\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t<ToggleButton\n\t\t\t\t\tvalue=\"document-settings\"\n\t\t\t\t\tselected={ isActive }\n\t\t\t\t\tdisabled={ isBlocked }\n\t\t\t\t\tonChange={ () => openRoute( 'panel/page-settings/settings' ) }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t'&.Mui-disabled': {\n\t\t\t\t\t\t\tborder: 0, // Temp fix until the style of the ToggleButton component will be decided.\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<SettingsIcon fontSize=\"small\" />\n\t\t\t\t</ToggleButton>\n\t\t\t</Box>\n\t\t</Tooltip>\n\t);\n}\n\nfunction Tooltip( props: TooltipProps ) {\n\treturn <BaseTooltip\n\t\tPopperProps={ {\n\t\t\tsx: {\n\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\tmt: 1.7,\n\t\t\t\t},\n\t\t\t},\n\t\t} }\n\t\t{ ...props }\n\t/>;\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useDocumentPreviewProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'document-preview-button',\n\t\tpriority: 30, // After help.\n\t\tuseProps: useDocumentPreviewProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport default function useActionProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'Preview Changes', 'elementor' ),\n\t\tonClick: () => document && runCommand( 'editor/documents/preview', {\n\t\t\tid: document.id,\n\t\t\tforce: true,\n\t\t} ),\n\t};\n}\n","import { __privateInjectIntoPrimaryAction as injectIntoPrimaryAction } from '@elementor/editor-app-bar-ui';\nimport useDocumentSaveDraftProps from './hooks/use-document-save-draft-props';\nimport useDocumentSaveTemplateProps from './hooks/use-document-save-template-props';\nimport useDocumentViewPageProps from './hooks/use-document-view-page-props';\nimport PrimaryAction from './components/primary-action';\nimport { documentOptionsMenu } from './locations';\nimport useDocumentCopyAndShareProps from './hooks/use-document-copy-and-share-props';\n\nexport function init() {\n\tinjectIntoPrimaryAction( {\n\t\tid: 'document-primary-action',\n\t\tcomponent: PrimaryAction,\n\t} );\n\n\t// Documents options menu.\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-draft',\n\t\tpriority: 10, // Before save as template.\n\t\tuseProps: useDocumentSaveDraftProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-save-as-template',\n\t\tpriority: 20, // After save draft.\n\t\tuseProps: useDocumentSaveTemplateProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-view-page',\n\t\tpriority: 30, // After save draft.\n\t\tuseProps: useDocumentViewPageProps,\n\t} );\n\n\tdocumentOptionsMenu.registerAction( {\n\t\tgroup: 'save',\n\t\tid: 'document-copy-and-share',\n\t\tpriority: 40,\n\t\tuseProps: useDocumentCopyAndShareProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FileReportIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveDraftProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { saveDraft } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FileReportIcon,\n\t\ttitle: __( 'Save Draft', 'elementor' ),\n\t\tonClick: saveDraft,\n\t\tdisabled: ! document || document.isSaving || document.isSavingDraft || ! document.isDirty,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { FolderIcon } from '@elementor/icons';\nimport { __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentSaveTemplateProps(): ActionProps {\n\tconst { saveTemplate } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: FolderIcon,\n\t\ttitle: __( 'Save as Template', 'elementor' ),\n\t\tonClick: saveTemplate,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { EyeIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useDocumentViewPageProps() {\n\tconst document = useActiveDocument();\n\n\treturn {\n\t\ticon: EyeIcon,\n\t\ttitle: __( 'View Page', 'elementor' ),\n\t\tonClick: () => document?.id && runCommand( 'editor/documents/view', {\n\t\t\tid: document.id,\n\t\t} ),\n\t};\n}\n","import * as React from 'react';\nimport { __ } from '@wordpress/i18n';\nimport PrimaryActionMenu from './primary-action-menu';\nimport {\n\tbindMenu,\n\tbindTrigger,\n\tBox,\n\tButton,\n\tButtonGroup,\n\tCircularProgress,\n\tTooltip,\n\tusePopupState,\n} from '@elementor/ui';\nimport { Document, __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { ChevronDownIcon } from '@elementor/icons';\nimport { __privateUseIsPreviewMode as useIsPreviewMode } from '@elementor/editor-v1-adapters';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\tconst isPreviewMode = useIsPreviewMode();\n\n\tconst popupState = usePopupState( {\n\t\tvariant: 'popover',\n\t\tpopupId: 'document-save-options',\n\t} );\n\n\tif ( ! document ) {\n\t\treturn null;\n\t}\n\n\tconst isPublishDisabled = isPreviewMode || ! isPublishEnabled( document );\n\tconst isSaveOptionsDisabled = isPreviewMode || document.type.value === 'kit';\n\n\t// When the document is being saved, the spinner should not appear.\n\t// Usually happens when the Kit is being saved.\n\tconst shouldShowSpinner = document.isSaving && ! isPublishDisabled;\n\n\treturn (\n\t\t<>\n\t\t\t<ButtonGroup size=\"large\" variant=\"contained\">\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => ! document.isSaving && save() }\n\t\t\t\t\tsx={ {\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tmaxWidth: '158px',\n\t\t\t\t\t\t'&.MuiButtonBase-root.MuiButtonGroup-grouped': {\n\t\t\t\t\t\t\tminWidth: '110px',\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ isPublishDisabled }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowSpinner ? <CircularProgress color=\"inherit\" size=\"1.5em\" /> : getLabel( document ) }\n\t\t\t\t</Button>\n\n\t\t\t\t<Tooltip\n\t\t\t\t\ttitle={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\tPopperProps={ {\n\t\t\t\t\t\tsx: {\n\t\t\t\t\t\t\t'&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom': {\n\t\t\t\t\t\t\t\tmt: 1,\n\t\t\t\t\t\t\t\tmr: 0.25,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Box component=\"span\" aria-label={ undefined }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\t\t\t\tsx={ { px: 0, height: '100%', borderRadius: 0 } }\n\t\t\t\t\t\t\tdisabled={ isSaveOptionsDisabled }\n\t\t\t\t\t\t\taria-label={ __( 'Save Options', 'elementor' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronDownIcon />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t</Tooltip>\n\t\t\t</ButtonGroup>\n\t\t\t<PrimaryActionMenu { ...bindMenu( popupState ) } onClick={ popupState.close } />\n\t\t</>\n\t);\n}\n\nfunction getLabel( document: Document ) {\n\treturn document.userCan.publish\n\t\t? __( 'Publish', 'elementor' )\n\t\t: __( 'Submit', 'elementor' );\n}\n\nfunction isPublishEnabled( document: Document ) {\n\tif ( document.type.value === 'kit' ) {\n\t\treturn false;\n\t}\n\n\treturn document.isDirty || document.status.value === 'draft';\n}\n","import * as React from 'react';\nimport { Divider, styled } from '@elementor/ui';\nimport { __privatePopoverMenu as PopoverMenu, PopoverMenuProps } from '@elementor/editor-app-bar-ui';\nimport { documentOptionsMenu } from '../locations';\n\nconst { useMenuItems } = documentOptionsMenu;\n\n// CSS hack to hide dividers when a group is rendered empty (due to a limitation in our locations' mechanism).\n// It doesn't cover all the cases (i.e. when there are multiple dividers at the end), but it's good enough for our use-case.\nconst StyledPopoverMenu = styled( PopoverMenu )`\n\t& > .MuiPopover-paper > .MuiList-root > .MuiDivider-root {\n\t\t&:only-child, /* A divider is being rendered lonely */\n\t\t&:last-child, /* The last group renders empty but renders a divider */\n\t\t& + .MuiDivider-root /* Multiple dividers due to multiple empty groups */ {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n`;\n\nexport default function PrimaryActionMenu( props: PopoverMenuProps ) {\n\tconst { save: saveActions, default: defaultActions } = useMenuItems();\n\n\treturn (\n\t\t<StyledPopoverMenu\n\t\t\t{ ...props }\n\t\t\tanchorOrigin={ {\n\t\t\t\tvertical: 'bottom',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\ttransformOrigin={ {\n\t\t\t\tvertical: 'top',\n\t\t\t\thorizontal: 'right',\n\t\t\t} }\n\t\t\tmarginThreshold={ 4 }\n\t\t\tPaperProps={ {\n\t\t\t\tsx: { mt: 0.5 },\n\t\t\t} }\n\t\t>\n\t\t\t{ saveActions.map( ( { MenuItem, id }, index ) => ( [\n\t\t\t\t( index > 0 ) && <Divider key={ `${ id }-divider` } />,\n\t\t\t\t<MenuItem key={ id } />,\n\t\t\t] ) ) }\n\n\t\t\t{ defaultActions.length > 0 && <Divider /> }\n\n\t\t\t{ defaultActions.map( ( { MenuItem, id } ) => <MenuItem key={ id } /> ) }\n\t\t</StyledPopoverMenu>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { LinkIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\n\nexport default function useDocumentCopyAndShareProps(): ActionProps {\n\tconst document = useActiveDocument();\n\tconst { copyAndShare } = useActiveDocumentActions();\n\n\treturn {\n\t\ticon: LinkIcon,\n\t\ttitle: __( 'Copy and Share', 'elementor' ),\n\t\tonClick: copyAndShare,\n\t\tdisabled: ! document ||\n\t\t\tdocument.isSaving ||\n\t\t\tdocument.isSavingDraft ||\n\t\t\t! ( 'publish' === document.status.value ),\n\t\tvisible: document?.permissions?.showCopyAndShare,\n\t};\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateIsRouteActive as isRouteActive, __privateListenTo as listenTo, routeOpenEvent, v1ReadyEvent } from '@elementor/editor-v1-adapters';\n\ntype ExtendedWindow = Window & {\n\telementor: {\n\t\tgetPanelView: () => {\n\t\t\tgetHeaderView: () => {\n\t\t\t\tsetTitle: ( title: string ) => void;\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default function syncPanelTitle() {\n\tconst panelTitle = __( 'Elements', 'elementor' );\n\tconst tabTitle = __( 'Widgets', 'elementor' );\n\n\tlistenTo(\n\t\trouteOpenEvent( 'panel/elements' ),\n\t\t() => {\n\t\t\tsetPanelTitle( panelTitle );\n\t\t\tsetTabTitle( tabTitle );\n\t\t}\n\t);\n\n\tlistenTo(\n\t\tv1ReadyEvent(),\n\t\t() => {\n\t\t\tif ( isRouteActive( 'panel/elements' ) ) {\n\t\t\t\tsetPanelTitle( panelTitle );\n\t\t\t\tsetTabTitle( tabTitle );\n\t\t\t}\n\t\t}\n\t);\n}\n\nfunction setPanelTitle( title: string ) {\n\t( window as unknown as ExtendedWindow ).elementor?.getPanelView?.()?.getHeaderView?.()?.setTitle?.( title );\n}\n\nfunction setTabTitle( title: string ) {\n\tconst tab = document.querySelector( '.elementor-component-tab[data-tab=\"categories\"]' );\n\n\tif ( tab ) {\n\t\ttab.textContent = title;\n\t}\n}\n","import syncPanelTitle from './sync/sync-panel-title';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tsyncPanelTitle();\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'open-elements-panel',\n\t\tpriority: 1,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { PlusIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/elements' );\n\n\treturn {\n\t\ttitle: __( 'Add Element', 'elementor' ),\n\t\ticon: PlusIcon,\n\t\tonClick: () => openRoute( 'panel/elements/categories' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tutilitiesMenu.registerAction( {\n\t\tid: 'toggle-finder',\n\t\tpriority: 10, // Before help.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { SearchIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isBlocked } = useRouteStatus( 'finder', {\n\t\tblockOnKitRoutes: false,\n\t\tblockOnPreviewMode: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Finder', 'elementor' ),\n\t\ticon: SearchIcon,\n\t\tonClick: () => runCommand( 'finder/toggle' ),\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateUtilitiesMenu as utilitiesMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { HelpIcon } from '@elementor/icons';\n\nexport function init() {\n\tutilitiesMenu.registerLink( {\n\t\tid: 'open-help-center',\n\t\tpriority: 20, // After Finder.\n\t\tuseProps: () => {\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Help', 'elementor' ),\n\t\t\t\thref: 'https://go.elementor.com/editor-top-bar-learn/',\n\t\t\t\ticon: HelpIcon,\n\t\t\t\ttarget: '_blank',\n\t\t\t};\n\t\t},\n\t} );\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-history',\n\t\tpriority: 20,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { HistoryIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps() {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/history' );\n\n\treturn {\n\t\ttitle: __( 'History', 'elementor' ),\n\t\ticon: HistoryIcon,\n\t\tonClick: () => openRoute( 'panel/history/actions' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-keyboard-shortcuts',\n\t\tgroup: 'default',\n\t\tpriority: 40, // After user preferences.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\nimport { KeyboardIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: KeyboardIcon,\n\t\ttitle: __( 'Keyboard Shortcuts', 'elementor' ),\n\t\tonClick: () => runCommand( 'shortcuts/open' ),\n\t};\n}\n","import { injectIntoTop } from '@elementor/editor';\nimport PortalledPrimaryAction from './components/portalled-primary-action';\nimport { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\t// This is portal, so it injected into the top of the editor, but renders inside the site-settings panel.\n\tinjectIntoTop( {\n\t\tid: 'site-settings-primary-action-portal',\n\t\tcomponent: PortalledPrimaryAction,\n\t} );\n\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-site-settings',\n\t\tpriority: 2,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import * as React from 'react';\nimport Portal from './portal';\nimport PrimaryAction from './primary-action';\n\nexport default function PortalledPrimaryAction() {\n\treturn (\n\t\t<Portal>\n\t\t\t<PrimaryAction />\n\t\t</Portal>\n\t);\n}\n","import * as React from 'react';\nimport { Portal as BasePortal, PortalProps } from '@elementor/ui';\nimport { __privateIsRouteActive as isRouteActive, routeCloseEvent, routeOpenEvent, __privateUseListenTo as useListenTo } from '@elementor/editor-v1-adapters';\n\nexport default function Portal( props: Omit<PortalProps, 'container'> ) {\n\tconst containerRef = useListenTo(\n\t\t[\n\t\t\trouteOpenEvent( 'panel/global' ),\n\t\t\trouteCloseEvent( 'panel/global' ),\n\t\t],\n\t\tgetContainerRef\n\t);\n\n\tif ( ! containerRef.current ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BasePortal container={ containerRef.current } { ...props } />\n\t);\n}\n\nfunction getContainerRef() {\n\treturn isRouteActive( 'panel/global' )\n\t\t? { current: document.querySelector( '#elementor-panel-inner' ) }\n\t\t: { current: null };\n}\n","import * as React from 'react';\nimport { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';\nimport { Button, CircularProgress, Paper } from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PrimaryAction() {\n\tconst document = useActiveDocument();\n\tconst { save } = useActiveDocumentActions();\n\n\treturn (\n\t\t<Paper sx={ {\n\t\t\tpx: 5,\n\t\t\tpy: 4,\n\t\t\tborderTop: 1,\n\t\t\tborderColor: 'divider',\n\t\t} }>\n\t\t\t<Button\n\t\t\t\tvariant=\"contained\"\n\t\t\t\tdisabled={ ! document || ! document.isDirty }\n\t\t\t\tsize=\"medium\"\n\t\t\t\tsx={ { width: '100%' } }\n\t\t\t\tonClick={ () => document && ! document.isSaving ? save() : null }\n\t\t\t>\n\t\t\t\t{\n\t\t\t\t\tdocument?.isSaving\n\t\t\t\t\t\t? <CircularProgress />\n\t\t\t\t\t\t: __( 'Save Changes', 'elementor' )\n\t\t\t\t}\n\t\t\t</Button>\n\t\t</Paper>\n\t);\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { AdjustmentsHorizontalIcon } from '@elementor/icons';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/global', {\n\t\tblockOnKitRoutes: false,\n\t} );\n\n\treturn {\n\t\ttitle: __( 'Site Settings', 'elementor' ),\n\t\ticon: AdjustmentsHorizontalIcon,\n\t\tonClick: () => (\n\t\t\tisActive\n\t\t\t\t? runCommand( 'panel/global/close' )\n\t\t\t\t: runCommand( 'panel/global/open' )\n\t\t),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateToolsMenu as toolsMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\ttoolsMenu.registerToggleAction( {\n\t\tid: 'toggle-structure-view',\n\t\tpriority: 3,\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { __privateRunCommand as runCommand, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\nimport { StructureIcon } from '@elementor/icons';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'navigator' );\n\n\treturn {\n\t\ttitle: __( 'Structure', 'elementor' ),\n\t\ticon: StructureIcon,\n\t\tonClick: () => runCommand( 'navigator/toggle' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useThemeBuilderActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerAction( {\n\t\tid: 'open-theme-builder',\n\t\tuseProps: useThemeBuilderActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ThemeBuilderIcon } from '@elementor/icons';\nimport { __privateRunCommand as runCommand } from '@elementor/editor-v1-adapters';\nimport { ActionProps } from '@elementor/editor-app-bar-ui';\n\nexport default function useActionProps(): ActionProps {\n\treturn {\n\t\ticon: ThemeBuilderIcon,\n\t\ttitle: __( 'Theme Builder', 'elementor' ),\n\t\tonClick: () => runCommand( 'app/open' ),\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport useActionProps from './hooks/use-action-props';\n\nexport function init() {\n\tmainMenu.registerToggleAction( {\n\t\tid: 'open-user-preferences',\n\t\tpriority: 30, // After history.\n\t\tuseProps: useActionProps,\n\t} );\n}\n","import { __ } from '@wordpress/i18n';\nimport { ToggleActionProps } from '@elementor/editor-app-bar-ui';\nimport { ToggleRightIcon } from '@elementor/icons';\nimport { __privateOpenRoute as openRoute, __privateUseRouteStatus as useRouteStatus } from '@elementor/editor-v1-adapters';\n\nexport default function useActionProps(): ToggleActionProps {\n\tconst { isActive, isBlocked } = useRouteStatus( 'panel/editor-preferences' );\n\n\treturn {\n\t\ticon: ToggleRightIcon,\n\t\ttitle: __( 'User Preferences', 'elementor' ),\n\t\tonClick: () => openRoute( 'panel/editor-preferences' ),\n\t\tselected: isActive,\n\t\tdisabled: isBlocked,\n\t};\n}\n","import { __privateMainMenu as mainMenu } from '@elementor/editor-app-bar-ui';\nimport { __ } from '@wordpress/i18n';\nimport { WordpressIcon } from '@elementor/icons';\nimport { __useActiveDocument as useActiveDocument } from '@elementor/editor-documents';\n\nexport function init() {\n\tmainMenu.registerLink( {\n\t\tid: 'exit-to-wordpress',\n\t\tgroup: 'exits',\n\t\tuseProps: () => {\n\t\t\tconst document = useActiveDocument();\n\t\t\treturn {\n\t\t\t\ttitle: __( 'Exit to WordPress', 'elementor' ),\n\t\t\t\thref: document?.links?.platformEdit,\n\t\t\t\ticon: WordpressIcon,\n\t\t\t};\n\t\t},\n\t} );\n}\n","/**\n * All the code in this directory is a temporary solution.\n * The code should be moved to the appropriate packages.\n */\n\nimport { init as initDocumentsIndicator } from './documents-indicator';\nimport { init as initDocumentsPreview } from './documents-preview';\nimport { init as initDocumentsSave } from './documents-save';\nimport { init as initElements } from './elements';\nimport { init as initFinder } from './finder';\nimport { init as initHelp } from './help';\nimport { init as initHistory } from './history';\nimport { init as initKeyboardShortcuts } from './keyboard-shortcuts';\nimport { init as initSiteSettings } from './site-settings';\nimport { init as initStructure } from './structure';\nimport { init as initThemeBuilder } from './theme-builder';\nimport { init as initUserPreferences } from './user-preferences';\nimport { init as initWordpress } from './wordpress';\n\nexport function init() {\n\tinitDocumentsIndicator();\n\tinitDocumentsPreview();\n\tinitDocumentsSave();\n\tinitElements();\n\tinitFinder();\n\tinitHelp();\n\tinitHistory();\n\tinitKeyboardShortcuts();\n\tinitSiteSettings();\n\tinitStructure();\n\tinitThemeBuilder();\n\tinitUserPreferences();\n\tinitWordpress();\n}\n"],"mappings":"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","names":["injectIntoTop","openRoute","document","__","useActiveDocument","document","init","__","useActiveDocument","document","__","useActiveDocumentActions","__","EyeIcon","useActiveDocument","runCommand","document","React","__","React","Box","Tooltip","useActiveDocument","useActiveDocumentActions","document","__","__","useActiveDocument","useActiveDocumentActions","document","init","__","listenTo","routeOpenEvent","__","openRoute","useRouteStatus","useActionProps","init","useActionProps","utilitiesMenu","__","runCommand","useRouteStatus","useActionProps","init","utilitiesMenu","useActionProps","utilitiesMenu","__","init","__","openRoute","useRouteStatus","useActionProps","init","useActionProps","mainMenu","__","runCommand","useActionProps","init","mainMenu","useActionProps","React","React","isRouteActive","routeOpenEvent","React","useActiveDocument","useActiveDocumentActions","Button","CircularProgress","__","PrimaryAction","document","PrimaryAction","toolsMenu","__","runCommand","useRouteStatus","useActionProps","init","toolsMenu","useActionProps","toolsMenu","__","runCommand","useRouteStatus","useActionProps","init","toolsMenu","useActionProps","mainMenu","__","runCommand","useActionProps","init","mainMenu","useActionProps","mainMenu","__","openRoute","useRouteStatus","useActionProps","init","mainMenu","useActionProps","mainMenu","__","useActiveDocument","init","document","init","init","injectIntoTop","init"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@elementor/editor-app-bar",
3
3
  "description": "App Bar extension for @elementor/editor",
4
- "version": "0.11.0",
4
+ "version": "0.12.0",
5
5
  "private": false,
6
6
  "author": "Elementor Team",
7
7
  "homepage": "https://elementor.com/",
@@ -33,16 +33,16 @@
33
33
  "dev": "tsup --config=../../tsup.dev.ts"
34
34
  },
35
35
  "dependencies": {
36
- "@elementor/editor": "^0.10.10",
37
- "@elementor/editor-app-bar-ui": "^0.2.1",
38
- "@elementor/editor-documents": "^0.10.5",
36
+ "@elementor/editor": "^0.10.11",
37
+ "@elementor/editor-app-bar-ui": "^0.3.0",
38
+ "@elementor/editor-documents": "^0.11.0",
39
39
  "@elementor/editor-v1-adapters": "^0.6.0",
40
- "@elementor/icons": "^0.7.3",
40
+ "@elementor/icons": "^0.8.0",
41
41
  "@elementor/ui": "^1.4.61",
42
42
  "@wordpress/i18n": "^4.45.0"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "react": "18.x"
46
46
  },
47
- "gitHead": "93ef57d5541e96a71be40eb289f70ee089d76708"
47
+ "gitHead": "5dab1aebf97fa6cea576503837f62abf4627b55f"
48
48
  }
@@ -18,6 +18,7 @@ const actionsMock = {
18
18
  save: jest.fn(),
19
19
  saveDraft: jest.fn(),
20
20
  saveTemplate: jest.fn(),
21
+ copyAndShare: jest.fn(),
21
22
  };
22
23
 
23
24
  describe( '@elementor/editor-app-bar - Top Bar Primary Action', () => {
@@ -12,6 +12,7 @@ const documentActions = {
12
12
  save: jest.fn(),
13
13
  saveDraft: jest.fn(),
14
14
  saveTemplate: jest.fn(),
15
+ copyAndShare: jest.fn(),
15
16
  };
16
17
 
17
18
  describe( '@elementor/editor-app-bar - useDocumentSaveDraftProps', () => {
@@ -10,6 +10,7 @@ const documentActions = {
10
10
  save: jest.fn(),
11
11
  saveDraft: jest.fn(),
12
12
  saveTemplate: jest.fn(),
13
+ copyAndShare: jest.fn(),
13
14
  };
14
15
 
15
16
  describe( '@elementor/editor-app-bar - useDocumentSaveTemplateProps', () => {
@@ -0,0 +1,20 @@
1
+ import { __ } from '@wordpress/i18n';
2
+ import { ActionProps } from '@elementor/editor-app-bar-ui';
3
+ import { LinkIcon } from '@elementor/icons';
4
+ import { __useActiveDocument as useActiveDocument, __useActiveDocumentActions as useActiveDocumentActions } from '@elementor/editor-documents';
5
+
6
+ export default function useDocumentCopyAndShareProps(): ActionProps {
7
+ const document = useActiveDocument();
8
+ const { copyAndShare } = useActiveDocumentActions();
9
+
10
+ return {
11
+ icon: LinkIcon,
12
+ title: __( 'Copy and Share', 'elementor' ),
13
+ onClick: copyAndShare,
14
+ disabled: ! document ||
15
+ document.isSaving ||
16
+ document.isSavingDraft ||
17
+ ! ( 'publish' === document.status.value ),
18
+ visible: document?.permissions?.showCopyAndShare,
19
+ };
20
+ }
@@ -4,6 +4,7 @@ import useDocumentSaveTemplateProps from './hooks/use-document-save-template-pro
4
4
  import useDocumentViewPageProps from './hooks/use-document-view-page-props';
5
5
  import PrimaryAction from './components/primary-action';
6
6
  import { documentOptionsMenu } from './locations';
7
+ import useDocumentCopyAndShareProps from './hooks/use-document-copy-and-share-props';
7
8
 
8
9
  export function init() {
9
10
  injectIntoPrimaryAction( {
@@ -32,4 +33,11 @@ export function init() {
32
33
  priority: 30, // After save draft.
33
34
  useProps: useDocumentViewPageProps,
34
35
  } );
36
+
37
+ documentOptionsMenu.registerAction( {
38
+ group: 'save',
39
+ id: 'document-copy-and-share',
40
+ priority: 40,
41
+ useProps: useDocumentCopyAndShareProps,
42
+ } );
35
43
  }
@@ -23,6 +23,7 @@ describe( '@elementor/editor-app-bar - Portalled primary action', () => {
23
23
  save: jest.fn(),
24
24
  saveDraft: jest.fn(),
25
25
  saveTemplate: jest.fn(),
26
+ copyAndShare: jest.fn(),
26
27
  } );
27
28
  } );
28
29
 
@@ -20,6 +20,7 @@ describe( '@elementor/editor-app-bar - Primary action', () => {
20
20
  save: saveFn,
21
21
  saveTemplate: jest.fn(),
22
22
  saveDraft: jest.fn(),
23
+ copyAndShare: jest.fn(),
23
24
  } );
24
25
  } );
25
26
 
@@ -9,7 +9,6 @@ export function init() {
9
9
  group: 'exits',
10
10
  useProps: () => {
11
11
  const document = useActiveDocument();
12
-
13
12
  return {
14
13
  title: __( 'Exit to WordPress', 'elementor' ),
15
14
  href: document?.links?.platformEdit,