@elementor/editor-editing-panel 4.4.0-1147 → 4.4.0-1149

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1976,7 +1976,7 @@ var hasInheritedCustomCss = (style, meta) => {
1976
1976
  // src/components/editing-panel.tsx
1977
1977
  var React93 = __toESM(require("react"));
1978
1978
  var import_editor_controls55 = require("@elementor/editor-controls");
1979
- var import_editor_elements15 = require("@elementor/editor-elements");
1979
+ var import_editor_elements16 = require("@elementor/editor-elements");
1980
1980
  var import_editor_panels = require("@elementor/editor-panels");
1981
1981
  var import_editor_ui9 = require("@elementor/editor-ui");
1982
1982
  var import_icons28 = require("@elementor/icons");
@@ -2022,7 +2022,7 @@ var EditingPanelStickyPromotion = () => {
2022
2022
  var import_react38 = require("react");
2023
2023
  var React92 = __toESM(require("react"));
2024
2024
  var import_editor_current_user = require("@elementor/editor-current-user");
2025
- var import_editor_elements14 = require("@elementor/editor-elements");
2025
+ var import_editor_elements15 = require("@elementor/editor-elements");
2026
2026
  var import_ui45 = require("@elementor/ui");
2027
2027
  var import_i18n65 = require("@wordpress/i18n");
2028
2028
 
@@ -2175,6 +2175,9 @@ var InteractionsTab = () => {
2175
2175
  var React26 = __toESM(require("react"));
2176
2176
  var import_session6 = require("@elementor/session");
2177
2177
 
2178
+ // src/utils/ancestor-dependency-utils.ts
2179
+ var import_editor_elements6 = require("@elementor/editor-elements");
2180
+
2178
2181
  // src/utils/prop-dependency-utils.ts
2179
2182
  var import_editor_props5 = require("@elementor/editor-props");
2180
2183
  var import_session5 = require("@elementor/session");
@@ -2187,14 +2190,16 @@ function getElementSettingsWithDefaults(propsSchema, elementSettings) {
2187
2190
  });
2188
2191
  return elementSettingsWithDefaults;
2189
2192
  }
2193
+ function isHiddenByDependency(dependency, values) {
2194
+ const depCheck = (0, import_editor_props5.isDependencyMet)(dependency, values);
2195
+ const failingTerm = !depCheck.isMet ? depCheck.failingDependencies[0] : void 0;
2196
+ return !!failingTerm && !(0, import_editor_props5.isDependency)(failingTerm) && failingTerm.effect === "hide";
2197
+ }
2190
2198
  function extractDependencyEffect(bind, propsSchema, settings) {
2191
2199
  const settingsWithDefaults = getElementSettingsWithDefaults(propsSchema, settings);
2192
2200
  const propType = propsSchema[bind];
2193
- const depCheck = (0, import_editor_props5.isDependencyMet)(propType?.dependencies, settingsWithDefaults);
2194
- const failingTerm = !depCheck.isMet ? depCheck.failingDependencies[0] : void 0;
2195
- const isHidden = !!failingTerm && !(0, import_editor_props5.isDependency)(failingTerm) && failingTerm?.effect === "hide";
2196
2201
  return {
2197
- isHidden,
2202
+ isHidden: isHiddenByDependency(propType?.dependencies, settingsWithDefaults),
2198
2203
  isDisabled: (prop) => !(0, import_editor_props5.isDependencyMet)(prop?.dependencies, settingsWithDefaults).isMet
2199
2204
  };
2200
2205
  }
@@ -2381,6 +2386,32 @@ function removePreviousValueFromStorage({ path, elementId }) {
2381
2386
  (0, import_session5.removeSessionStorageItem)(key);
2382
2387
  }
2383
2388
 
2389
+ // src/utils/ancestor-dependency-utils.ts
2390
+ function getSettingsWithDefaults(ancestor, elementType) {
2391
+ const schema = (0, import_editor_elements6.getWidgetsCache)()?.[elementType]?.atomic_props_schema ?? {};
2392
+ const settings = Object.fromEntries(
2393
+ Object.keys(schema).map((key) => [key, ancestor.settings.get(key) ?? null])
2394
+ );
2395
+ return getElementSettingsWithDefaults(schema, settings);
2396
+ }
2397
+ function isHiddenByAncestor(elementId, propType) {
2398
+ const ancestorDependency = propType?.meta?.ancestor_dependency;
2399
+ if (!Array.isArray(ancestorDependency?.dependency?.terms)) {
2400
+ return false;
2401
+ }
2402
+ const ancestor = (0, import_editor_elements6.findClosestContainer)(
2403
+ (0, import_editor_elements6.getContainer)(elementId)?.parent,
2404
+ (container) => container.model.get("elType") === ancestorDependency.element_type
2405
+ );
2406
+ if (!ancestor) {
2407
+ return false;
2408
+ }
2409
+ return isHiddenByDependency(
2410
+ ancestorDependency.dependency,
2411
+ getSettingsWithDefaults(ancestor, ancestorDependency.element_type)
2412
+ );
2413
+ }
2414
+
2384
2415
  // src/components/section.tsx
2385
2416
  var React21 = __toESM(require("react"));
2386
2417
  var import_react18 = require("react");
@@ -2576,12 +2607,33 @@ var React24 = __toESM(require("react"));
2576
2607
  var import_react19 = require("react");
2577
2608
  var import_editor_controls3 = require("@elementor/editor-controls");
2578
2609
  var import_editor_documents2 = require("@elementor/editor-documents");
2579
- var import_editor_elements6 = require("@elementor/editor-elements");
2610
+ var import_editor_elements7 = require("@elementor/editor-elements");
2580
2611
  var import_editor_props7 = require("@elementor/editor-props");
2581
2612
  var import_editor_responsive2 = require("@elementor/editor-responsive");
2582
- var import_editor_v1_adapters4 = require("@elementor/editor-v1-adapters");
2613
+ var import_editor_v1_adapters5 = require("@elementor/editor-v1-adapters");
2583
2614
  var import_i18n11 = require("@wordpress/i18n");
2584
2615
 
2616
+ // src/hooks/use-is-hidden-by-ancestor.ts
2617
+ var import_editor_v1_adapters4 = require("@elementor/editor-v1-adapters");
2618
+ function useIsHiddenByAncestor(bind) {
2619
+ const {
2620
+ element: { id: elementId },
2621
+ elementType: { propsSchema }
2622
+ } = useElement();
2623
+ const propType = propsSchema[bind];
2624
+ return (0, import_editor_v1_adapters4.__privateUseListenTo)(
2625
+ [
2626
+ (0, import_editor_v1_adapters4.v1ReadyEvent)(),
2627
+ (0, import_editor_v1_adapters4.commandEndEvent)("document/elements/set-settings"),
2628
+ (0, import_editor_v1_adapters4.commandEndEvent)("document/elements/create"),
2629
+ (0, import_editor_v1_adapters4.commandEndEvent)("document/elements/delete"),
2630
+ (0, import_editor_v1_adapters4.commandEndEvent)("document/elements/move")
2631
+ ],
2632
+ () => isHiddenByAncestor(elementId, propType),
2633
+ [elementId, propType]
2634
+ );
2635
+ }
2636
+
2585
2637
  // src/utils/is-responsive-prop-type.ts
2586
2638
  function isResponsivePropType(propType) {
2587
2639
  if (!propType) {
@@ -2626,8 +2678,9 @@ var SettingsField = ({ bind, children, propDisplayName }) => {
2626
2678
  elementId,
2627
2679
  propDisplayName
2628
2680
  });
2681
+ const isHiddenByAncestor2 = useIsHiddenByAncestor(bind);
2629
2682
  const { isDisabled, isHidden } = extractDependencyEffect(bind, propsSchema, currentElementSettings);
2630
- if (isHidden) {
2683
+ if (isHidden || isHiddenByAncestor2) {
2631
2684
  return null;
2632
2685
  }
2633
2686
  const setValue = (newValue, _ = {}, meta) => {
@@ -2638,7 +2691,7 @@ var SettingsField = ({ bind, children, propDisplayName }) => {
2638
2691
  if (withHistory) {
2639
2692
  undoableUpdateElementProp(settings);
2640
2693
  } else {
2641
- (0, import_editor_elements6.updateElementSettings)({ id: elementId, props: settings, withHistory: false });
2694
+ (0, import_editor_elements7.updateElementSettings)({ id: elementId, props: settings, withHistory: false });
2642
2695
  }
2643
2696
  };
2644
2697
  return /* @__PURE__ */ React24.createElement(import_editor_controls3.PropProvider, { propType, value, setValue, isDisabled }, /* @__PURE__ */ React24.createElement(import_editor_controls3.PropKeyProvider, { bind }, isResponsivePropType(propsSchema[bind]) ? /* @__PURE__ */ React24.createElement(ResponsiveBinding, null, children) : children));
@@ -2665,20 +2718,20 @@ function useUndoableUpdateElementProp({
2665
2718
  propDisplayName
2666
2719
  }) {
2667
2720
  return (0, import_react19.useMemo)(() => {
2668
- return (0, import_editor_v1_adapters4.undoable)(
2721
+ return (0, import_editor_v1_adapters5.undoable)(
2669
2722
  {
2670
2723
  do: (newSettings) => {
2671
- const prevPropValue = (0, import_editor_elements6.getElementSettings)(elementId, Object.keys(newSettings));
2672
- (0, import_editor_elements6.updateElementSettings)({ id: elementId, props: newSettings, withHistory: false });
2724
+ const prevPropValue = (0, import_editor_elements7.getElementSettings)(elementId, Object.keys(newSettings));
2725
+ (0, import_editor_elements7.updateElementSettings)({ id: elementId, props: newSettings, withHistory: false });
2673
2726
  (0, import_editor_documents2.setDocumentModifiedStatus)(true);
2674
2727
  return prevPropValue;
2675
2728
  },
2676
2729
  undo: ({}, prevProps) => {
2677
- (0, import_editor_elements6.updateElementSettings)({ id: elementId, props: prevProps, withHistory: false });
2730
+ (0, import_editor_elements7.updateElementSettings)({ id: elementId, props: prevProps, withHistory: false });
2678
2731
  }
2679
2732
  },
2680
2733
  {
2681
- title: (0, import_editor_elements6.getElementLabel)(elementId),
2734
+ title: (0, import_editor_elements7.getElementLabel)(elementId),
2682
2735
  // translators: %s is the name of the property that was edited.
2683
2736
  subtitle: (0, import_i18n11.__)("%s edited", "elementor").replace("%s", propDisplayName),
2684
2737
  debounce: { wait: HISTORY_DEBOUNCE_WAIT2 }
@@ -2802,15 +2855,16 @@ function renderSectionItems({
2802
2855
  if (!isControl(item)) {
2803
2856
  return [];
2804
2857
  }
2805
- if (item.type === "control" && isControlHiddenByDependencies(item, propsSchema, settings)) {
2858
+ if (item.type === "control" && isControlHiddenByDependencies(item, propsSchema, settings, element.id)) {
2806
2859
  return [];
2807
2860
  }
2808
2861
  return [/* @__PURE__ */ React26.createElement(SettingsControl, { key: getKey(item, element), control: item })];
2809
2862
  }) ?? [];
2810
2863
  }
2811
- function isControlHiddenByDependencies(control, propsSchema, settings) {
2812
- const { isHidden } = extractDependencyEffect(control.value.bind, propsSchema, settings);
2813
- return isHidden;
2864
+ function isControlHiddenByDependencies(control, propsSchema, settings, elementId) {
2865
+ const { bind } = control.value;
2866
+ const { isHidden } = extractDependencyEffect(bind, propsSchema, settings);
2867
+ return isHidden || isHiddenByAncestor(elementId, propsSchema[bind]);
2814
2868
  }
2815
2869
 
2816
2870
  // src/components/style-tab.tsx
@@ -2825,24 +2879,24 @@ var import_ui44 = require("@elementor/ui");
2825
2879
  // src/contexts/styles-inheritance-context.tsx
2826
2880
  var React27 = __toESM(require("react"));
2827
2881
  var import_react20 = require("react");
2828
- var import_editor_elements8 = require("@elementor/editor-elements");
2882
+ var import_editor_elements9 = require("@elementor/editor-elements");
2829
2883
  var import_editor_props10 = require("@elementor/editor-props");
2830
2884
  var import_editor_responsive3 = require("@elementor/editor-responsive");
2831
2885
  var import_editor_styles5 = require("@elementor/editor-styles");
2832
2886
  var import_editor_styles_repository15 = require("@elementor/editor-styles-repository");
2833
2887
 
2834
2888
  // src/hooks/use-default-style-tag-from-preview.ts
2835
- var import_editor_elements7 = require("@elementor/editor-elements");
2836
- var import_editor_v1_adapters5 = require("@elementor/editor-v1-adapters");
2889
+ var import_editor_elements8 = require("@elementor/editor-elements");
2890
+ var import_editor_v1_adapters6 = require("@elementor/editor-v1-adapters");
2837
2891
  function useDefaultStyleTagFromPreview(elementId) {
2838
- return (0, import_editor_v1_adapters5.__privateUseListenTo)(
2892
+ return (0, import_editor_v1_adapters6.__privateUseListenTo)(
2839
2893
  [
2840
- (0, import_editor_v1_adapters5.windowEvent)("elementor/preview/atomic-widget/render"),
2841
- (0, import_editor_v1_adapters5.commandEndEvent)("document/elements/settings"),
2842
- (0, import_editor_v1_adapters5.commandEndEvent)("document/elements/set-settings"),
2843
- (0, import_editor_v1_adapters5.commandEndEvent)("document/elements/select")
2894
+ (0, import_editor_v1_adapters6.windowEvent)("elementor/preview/atomic-widget/render"),
2895
+ (0, import_editor_v1_adapters6.commandEndEvent)("document/elements/settings"),
2896
+ (0, import_editor_v1_adapters6.commandEndEvent)("document/elements/set-settings"),
2897
+ (0, import_editor_v1_adapters6.commandEndEvent)("document/elements/select")
2844
2898
  ],
2845
- () => (0, import_editor_elements7.getDefaultStyleTagFromPreviewElement)(elementId)
2899
+ () => (0, import_editor_elements8.getDefaultStyleTagFromPreviewElement)(elementId)
2846
2900
  );
2847
2901
  }
2848
2902
 
@@ -3130,7 +3184,7 @@ var useAppliedStyles = () => {
3130
3184
  };
3131
3185
  var useBaseStyles = () => {
3132
3186
  const { elementType } = useElement();
3133
- const widgetsCache = (0, import_editor_elements8.getWidgetsCache)();
3187
+ const widgetsCache = (0, import_editor_elements9.getWidgetsCache)();
3134
3188
  const widgetCache = widgetsCache?.[elementType.key];
3135
3189
  return Object.keys(widgetCache?.base_styles ?? {});
3136
3190
  };
@@ -3140,7 +3194,7 @@ var useDefaultTagStyleId = () => {
3140
3194
  };
3141
3195
 
3142
3196
  // src/hooks/use-active-style-def-id.ts
3143
- var import_editor_elements9 = require("@elementor/editor-elements");
3197
+ var import_editor_elements10 = require("@elementor/editor-elements");
3144
3198
  var import_editor_styles_repository16 = require("@elementor/editor-styles-repository");
3145
3199
  function useActiveStyleDefId(classProp) {
3146
3200
  const [activeStyledDefId, setActiveStyledDefId] = useStateByElement(
@@ -3162,7 +3216,7 @@ function useValidClassIds(appliedClassesIds) {
3162
3216
  }
3163
3217
  function useFirstAppliedClass(appliedClassesIds) {
3164
3218
  const { element } = useElement();
3165
- const stylesDefs = (0, import_editor_elements9.getElementStyles)(element.id) ?? {};
3219
+ const stylesDefs = (0, import_editor_elements10.getElementStyles)(element.id) ?? {};
3166
3220
  return Object.values(stylesDefs).find((styleDef) => appliedClassesIds.includes(styleDef.id));
3167
3221
  }
3168
3222
  function useActiveAndAppliedClassId(id, appliedClassesIds) {
@@ -3403,11 +3457,11 @@ var import_ui21 = require("@elementor/ui");
3403
3457
  var import_i18n14 = require("@wordpress/i18n");
3404
3458
 
3405
3459
  // src/hooks/use-direction.ts
3406
- var import_editor_v1_adapters6 = require("@elementor/editor-v1-adapters");
3460
+ var import_editor_v1_adapters7 = require("@elementor/editor-v1-adapters");
3407
3461
  var import_ui19 = require("@elementor/ui");
3408
3462
  function useDirection() {
3409
3463
  const theme = (0, import_ui19.useTheme)();
3410
- const isUiRtl = "rtl" === theme.direction, isSiteRtl = !!(0, import_editor_v1_adapters6.getElementorFrontendConfig)()?.is_rtl;
3464
+ const isUiRtl = "rtl" === theme.direction, isSiteRtl = !!(0, import_editor_v1_adapters7.getElementorFrontendConfig)()?.is_rtl;
3411
3465
  return { isSiteRtl, isUiRtl };
3412
3466
  }
3413
3467
 
@@ -3551,9 +3605,9 @@ var import_editor_controls14 = require("@elementor/editor-controls");
3551
3605
  var import_i18n19 = require("@wordpress/i18n");
3552
3606
 
3553
3607
  // src/utils/can-element-have-children.ts
3554
- var import_editor_elements10 = require("@elementor/editor-elements");
3608
+ var import_editor_elements11 = require("@elementor/editor-elements");
3555
3609
  var canElementHaveChildren = (elementId) => {
3556
- const container = (0, import_editor_elements10.getContainer)(elementId);
3610
+ const container = (0, import_editor_elements11.getContainer)(elementId);
3557
3611
  if (!container) {
3558
3612
  return false;
3559
3613
  }
@@ -3562,7 +3616,7 @@ var canElementHaveChildren = (elementId) => {
3562
3616
 
3563
3617
  // src/utils/get-recently-used-styles.ts
3564
3618
  var import_editor_canvas = require("@elementor/editor-canvas");
3565
- var import_editor_elements11 = require("@elementor/editor-elements");
3619
+ var import_editor_elements12 = require("@elementor/editor-elements");
3566
3620
  var import_editor_styles7 = require("@elementor/editor-styles");
3567
3621
  var getRecentlyUsedList = async (elementId) => {
3568
3622
  if (!elementId) {
@@ -3572,7 +3626,7 @@ var getRecentlyUsedList = async (elementId) => {
3572
3626
  transformers: import_editor_canvas.styleTransformersRegistry,
3573
3627
  schema: (0, import_editor_styles7.getStylesSchema)()
3574
3628
  });
3575
- const styles = (0, import_editor_elements11.getElementStyles)(elementId) ?? {};
3629
+ const styles = (0, import_editor_elements12.getElementStyles)(elementId) ?? {};
3576
3630
  const styleKeys = Object.keys(styles ?? {});
3577
3631
  const variants = styleKeys.map((key) => styles?.[key]?.variants ?? []);
3578
3632
  const resolved = await Promise.all(
@@ -3653,19 +3707,19 @@ var EffectsSection = () => {
3653
3707
  // src/components/style-sections/layout-section/layout-section.tsx
3654
3708
  var React62 = __toESM(require("react"));
3655
3709
  var import_editor_controls31 = require("@elementor/editor-controls");
3656
- var import_editor_elements13 = require("@elementor/editor-elements");
3710
+ var import_editor_elements14 = require("@elementor/editor-elements");
3657
3711
  var import_locations3 = require("@elementor/locations");
3658
3712
  var import_i18n39 = require("@wordpress/i18n");
3659
3713
 
3660
3714
  // src/hooks/use-computed-style.ts
3661
- var import_editor_v1_adapters7 = require("@elementor/editor-v1-adapters");
3715
+ var import_editor_v1_adapters8 = require("@elementor/editor-v1-adapters");
3662
3716
  function useComputedStyle(elementId) {
3663
- return (0, import_editor_v1_adapters7.__privateUseListenTo)(
3717
+ return (0, import_editor_v1_adapters8.__privateUseListenTo)(
3664
3718
  [
3665
- (0, import_editor_v1_adapters7.windowEvent)("elementor/device-mode/change"),
3666
- (0, import_editor_v1_adapters7.commandEndEvent)("document/elements/reset-style"),
3667
- (0, import_editor_v1_adapters7.commandEndEvent)("document/elements/settings"),
3668
- (0, import_editor_v1_adapters7.commandEndEvent)("document/elements/paste-style")
3719
+ (0, import_editor_v1_adapters8.windowEvent)("elementor/device-mode/change"),
3720
+ (0, import_editor_v1_adapters8.commandEndEvent)("document/elements/reset-style"),
3721
+ (0, import_editor_v1_adapters8.commandEndEvent)("document/elements/settings"),
3722
+ (0, import_editor_v1_adapters8.commandEndEvent)("document/elements/paste-style")
3669
3723
  ],
3670
3724
  () => {
3671
3725
  if (!elementId) {
@@ -4546,13 +4600,13 @@ var GridJustifyItemsField = () => /* @__PURE__ */ React56.createElement(StylesFi
4546
4600
 
4547
4601
  // src/components/style-sections/layout-section/grid-outline-field.tsx
4548
4602
  var React57 = __toESM(require("react"));
4549
- var import_editor_elements12 = require("@elementor/editor-elements");
4603
+ var import_editor_elements13 = require("@elementor/editor-elements");
4550
4604
  var import_ui34 = require("@elementor/ui");
4551
4605
  var import_i18n34 = require("@wordpress/i18n");
4552
4606
  var GRID_OUTLINE_LABEL = (0, import_i18n34.__)("Show Grid Outline", "elementor");
4553
4607
  var GridOutlineField = () => {
4554
4608
  const { element } = useElement();
4555
- const settings = (0, import_editor_elements12.useElementEditorSettings)(element.id);
4609
+ const settings = (0, import_editor_elements13.useElementEditorSettings)(element.id);
4556
4610
  const value = settings?.grid_outline ?? true;
4557
4611
  return /* @__PURE__ */ React57.createElement(StylesFieldLayout, { label: GRID_OUTLINE_LABEL }, /* @__PURE__ */ React57.createElement(import_ui34.Box, { sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React57.createElement(
4558
4612
  import_ui34.Switch,
@@ -4560,7 +4614,7 @@ var GridOutlineField = () => {
4560
4614
  "aria-label": GRID_OUTLINE_LABEL,
4561
4615
  checked: value,
4562
4616
  onChange: (event) => {
4563
- (0, import_editor_elements12.updateElementEditorSettings)({
4617
+ (0, import_editor_elements13.updateElementEditorSettings)({
4564
4618
  elementId: element.id,
4565
4619
  settings: { grid_outline: event.target.checked }
4566
4620
  });
@@ -4822,7 +4876,7 @@ var LayoutSection = () => {
4822
4876
  const isDisplayFlex = shouldDisplayFlexFields(display, displayPlaceholder);
4823
4877
  const isDisplayGrid = "grid" === (display?.value ?? displayPlaceholder?.value);
4824
4878
  const { element } = useElement();
4825
- const parent = (0, import_editor_elements13.useParentElement)(element.id);
4879
+ const parent = (0, import_editor_elements14.useParentElement)(element.id);
4826
4880
  const parentStyle = useComputedStyle(parent?.id || null);
4827
4881
  const getParentStyleDirection = () => {
4828
4882
  if ("flex" === parentStyle?.display) {
@@ -5734,7 +5788,7 @@ var PanelTabContent = () => {
5734
5788
  const { element } = useElement();
5735
5789
  const editorDefaults = useDefaultPanelSettings();
5736
5790
  const defaultComponentTab = editorDefaults.defaultTab;
5737
- const elementMeta = (0, import_editor_elements14.getWidgetsCache)()?.[element.type]?.meta;
5791
+ const elementMeta = (0, import_editor_elements15.getWidgetsCache)()?.[element.type]?.meta;
5738
5792
  const isPromotedElement = !!elementMeta?.is_pro_promotion;
5739
5793
  const hasDesignTabs = !elementMeta?.hide_design_tabs;
5740
5794
  const hasContentOnlyAccess = (0, import_editor_current_user.useHasContentOnlyAccess)();
@@ -5799,7 +5853,7 @@ var resolveCurrentTab = ({
5799
5853
  var { Slot: PanelHeaderTopSlot, inject: injectIntoPanelHeaderTop } = (0, import_locations5.createLocation)();
5800
5854
  var { useMenuItems } = import_menus.controlActionsMenu;
5801
5855
  var EditingPanel = () => {
5802
- const { element, elementType, settings } = (0, import_editor_elements15.useSelectedElementSettings)();
5856
+ const { element, elementType, settings } = (0, import_editor_elements16.useSelectedElementSettings)();
5803
5857
  const controlReplacements = (0, import_editor_controls55.getControlReplacements)();
5804
5858
  const menuItems = useMenuItems().default;
5805
5859
  if (!element || !elementType) {
@@ -5849,11 +5903,11 @@ function PseudoStateMenuItems({ states, activeState, onSelectState, onClose }) {
5849
5903
  // src/init.ts
5850
5904
  var import_editor = require("@elementor/editor");
5851
5905
  var import_editor_panels3 = require("@elementor/editor-panels");
5852
- var import_editor_v1_adapters13 = require("@elementor/editor-v1-adapters");
5906
+ var import_editor_v1_adapters14 = require("@elementor/editor-v1-adapters");
5853
5907
 
5854
5908
  // src/hooks/use-open-editor-panel.ts
5855
5909
  var import_react39 = require("react");
5856
- var import_editor_v1_adapters8 = require("@elementor/editor-v1-adapters");
5910
+ var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
5857
5911
 
5858
5912
  // src/panel.ts
5859
5913
  var import_editor_panels2 = require("@elementor/editor-panels");
@@ -5863,10 +5917,10 @@ var { panel, usePanelActions, usePanelStatus } = (0, import_editor_panels2.creat
5863
5917
  });
5864
5918
 
5865
5919
  // src/sync/is-atomic-widget-selected.ts
5866
- var import_editor_elements16 = require("@elementor/editor-elements");
5920
+ var import_editor_elements17 = require("@elementor/editor-elements");
5867
5921
  var isAtomicWidgetSelected = () => {
5868
- const selectedElements = (0, import_editor_elements16.getSelectedElements)();
5869
- const widgetCache = (0, import_editor_elements16.getWidgetsCache)();
5922
+ const selectedElements = (0, import_editor_elements17.getSelectedElements)();
5923
+ const widgetCache = (0, import_editor_elements17.getWidgetsCache)();
5870
5924
  if (selectedElements.length !== 1) {
5871
5925
  return false;
5872
5926
  }
@@ -5877,7 +5931,7 @@ var isAtomicWidgetSelected = () => {
5877
5931
  var useOpenEditorPanel = () => {
5878
5932
  const { open } = usePanelActions();
5879
5933
  (0, import_react39.useEffect)(() => {
5880
- return (0, import_editor_v1_adapters8.__privateListenTo)((0, import_editor_v1_adapters8.commandStartEvent)("panel/editor/open"), () => {
5934
+ return (0, import_editor_v1_adapters9.__privateListenTo)((0, import_editor_v1_adapters9.commandStartEvent)("panel/editor/open"), () => {
5881
5935
  if (isAtomicWidgetSelected()) {
5882
5936
  open();
5883
5937
  }
@@ -5933,13 +5987,13 @@ var init = () => {
5933
5987
  // src/controls-registry/element-controls/accordion-items-control/accordion-items-control.tsx
5934
5988
  var React96 = __toESM(require("react"));
5935
5989
  var import_editor_controls58 = require("@elementor/editor-controls");
5936
- var import_editor_elements19 = require("@elementor/editor-elements");
5990
+ var import_editor_elements20 = require("@elementor/editor-elements");
5937
5991
  var import_editor_props20 = require("@elementor/editor-props");
5938
5992
  var import_ui48 = require("@elementor/ui");
5939
5993
  var import_i18n71 = require("@wordpress/i18n");
5940
5994
 
5941
5995
  // src/controls-registry/element-controls/accordion-items-control/use-actions.ts
5942
- var import_editor_elements17 = require("@elementor/editor-elements");
5996
+ var import_editor_elements18 = require("@elementor/editor-elements");
5943
5997
  var import_editor_props18 = require("@elementor/editor-props");
5944
5998
  var import_i18n69 = require("@wordpress/i18n");
5945
5999
  var ACCORDION_ELEMENT_TYPE = "e-accordion";
@@ -5971,12 +6025,12 @@ var buildItemModel = (position, showIcon, differentOpenIcon) => {
5971
6025
  const numberedTitle = getItemTitle(position);
5972
6026
  return {
5973
6027
  elType: ACCORDION_ITEM_ELEMENT_TYPE,
5974
- id: (0, import_editor_elements17.generateElementId)(),
6028
+ id: (0, import_editor_elements18.generateElementId)(),
5975
6029
  editor_settings: { title: numberedTitle, initial_position: position },
5976
6030
  elements: [
5977
6031
  {
5978
6032
  elType: ACCORDION_ITEM_HEADER_ELEMENT_TYPE,
5979
- id: (0, import_editor_elements17.generateElementId)(),
6033
+ id: (0, import_editor_elements18.generateElementId)(),
5980
6034
  editor_settings: { title: (0, import_i18n69.__)("Header", "elementor") },
5981
6035
  // Seeded from the root's *current* `show_icon` value, not the schema default: if a user
5982
6036
  // has already turned Show Icon off, a newly added item must start with its icon hidden
@@ -5989,13 +6043,13 @@ var buildItemModel = (position, showIcon, differentOpenIcon) => {
5989
6043
  elements: [
5990
6044
  {
5991
6045
  elType: ACCORDION_ITEM_TITLE_ELEMENT_TYPE,
5992
- id: (0, import_editor_elements17.generateElementId)(),
6046
+ id: (0, import_editor_elements18.generateElementId)(),
5993
6047
  editor_settings: { title: (0, import_i18n69.__)("Title", "elementor") },
5994
6048
  elements: [
5995
6049
  {
5996
6050
  elType: "widget",
5997
6051
  widgetType: PARAGRAPH_WIDGET_TYPE,
5998
- id: (0, import_editor_elements17.generateElementId)(),
6052
+ id: (0, import_editor_elements18.generateElementId)(),
5999
6053
  // A leaf still needs an explicit empty `elements`: `ElementModel.initialize()` only
6000
6054
  // turns the attribute into a collection when it is defined, and v1 code walking a
6001
6055
  // subtree (`deselectRecursive()` on delete) calls `.forEach()` on it unguarded.
@@ -6009,7 +6063,7 @@ var buildItemModel = (position, showIcon, differentOpenIcon) => {
6009
6063
  },
6010
6064
  {
6011
6065
  elType: ACCORDION_ITEM_ICON_ELEMENT_TYPE,
6012
- id: (0, import_editor_elements17.generateElementId)(),
6066
+ id: (0, import_editor_elements18.generateElementId)(),
6013
6067
  editor_settings: { title: (0, import_i18n69.__)("Icon", "elementor") },
6014
6068
  elements: [],
6015
6069
  hydrateDefaultChildren: true
@@ -6018,7 +6072,7 @@ var buildItemModel = (position, showIcon, differentOpenIcon) => {
6018
6072
  },
6019
6073
  {
6020
6074
  elType: ACCORDION_ITEM_CONTENT_ELEMENT_TYPE,
6021
- id: (0, import_editor_elements17.generateElementId)(),
6075
+ id: (0, import_editor_elements18.generateElementId)(),
6022
6076
  editor_settings: { title: (0, import_i18n69.__)("Content", "elementor") },
6023
6077
  elements: [],
6024
6078
  hydrateDefaultChildren: true
@@ -6034,14 +6088,14 @@ var useActions = () => {
6034
6088
  showIcon,
6035
6089
  differentOpenIcon = false
6036
6090
  }) => {
6037
- const accordion = (0, import_editor_elements17.getContainer)(accordionId);
6091
+ const accordion = (0, import_editor_elements18.getContainer)(accordionId);
6038
6092
  if (!accordion) {
6039
6093
  throw new Error("Accordion container not found");
6040
6094
  }
6041
6095
  const titles = [...existingTitles];
6042
6096
  items3.forEach(() => {
6043
6097
  const position = getNextItemNumber(titles);
6044
- (0, import_editor_elements17.createElements)({
6098
+ (0, import_editor_elements18.createElements)({
6045
6099
  title: (0, import_i18n69.__)("Accordion", "elementor"),
6046
6100
  elements: [
6047
6101
  {
@@ -6066,13 +6120,13 @@ var useActions = () => {
6066
6120
  });
6067
6121
  };
6068
6122
  const removeItem2 = ({ items: items3 }) => {
6069
- (0, import_editor_elements17.removeElements)({
6123
+ (0, import_editor_elements18.removeElements)({
6070
6124
  title: (0, import_i18n69.__)("Accordion", "elementor"),
6071
6125
  elementIds: items3.map(({ item }) => item.id)
6072
6126
  });
6073
6127
  };
6074
6128
  const duplicateItem2 = ({ items: items3 }) => {
6075
- (0, import_editor_elements17.duplicateElements)({
6129
+ (0, import_editor_elements18.duplicateElements)({
6076
6130
  title: (0, import_i18n69.__)("Duplicate Accordion Item", "elementor"),
6077
6131
  elementIds: items3.map(({ item }) => item.id)
6078
6132
  });
@@ -6082,12 +6136,12 @@ var useActions = () => {
6082
6136
  movedElementId,
6083
6137
  toIndex
6084
6138
  }) => {
6085
- const accordion = (0, import_editor_elements17.getContainer)(accordionId);
6086
- const movedElement = (0, import_editor_elements17.getContainer)(movedElementId);
6139
+ const accordion = (0, import_editor_elements18.getContainer)(accordionId);
6140
+ const movedElement = (0, import_editor_elements18.getContainer)(movedElementId);
6087
6141
  if (!accordion || !movedElement) {
6088
6142
  throw new Error("Accordion item or container not found");
6089
6143
  }
6090
- (0, import_editor_elements17.moveElements)({
6144
+ (0, import_editor_elements18.moveElements)({
6091
6145
  title: (0, import_i18n69.__)("Reorder Accordion Items", "elementor"),
6092
6146
  moves: [
6093
6147
  {
@@ -6108,12 +6162,12 @@ var useActions = () => {
6108
6162
 
6109
6163
  // src/controls-registry/element-controls/accordion-items-control/use-show-icon-write-through.ts
6110
6164
  var import_react41 = require("react");
6111
- var import_editor_elements18 = require("@elementor/editor-elements");
6165
+ var import_editor_elements19 = require("@elementor/editor-elements");
6112
6166
  var import_editor_props19 = require("@elementor/editor-props");
6113
- var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
6167
+ var import_editor_v1_adapters10 = require("@elementor/editor-v1-adapters");
6114
6168
  var import_i18n70 = require("@wordpress/i18n");
6115
6169
  var ACCORDION_ITEM_HEADER_ELEMENT_TYPE2 = "e-accordion-item-header";
6116
- var cascadeShowIconToHeaders = (0, import_editor_v1_adapters9.undoable)(
6170
+ var cascadeShowIconToHeaders = (0, import_editor_v1_adapters10.undoable)(
6117
6171
  {
6118
6172
  do: ({ accordionId, showIcon }) => {
6119
6173
  const headerIds = getAccordionHeaderIds(accordionId);
@@ -6121,14 +6175,14 @@ var cascadeShowIconToHeaders = (0, import_editor_v1_adapters9.undoable)(
6121
6175
  headerIds.map(
6122
6176
  (headerId) => [
6123
6177
  headerId,
6124
- (0, import_editor_elements18.getElementSettings)(headerId, [
6178
+ (0, import_editor_elements19.getElementSettings)(headerId, [
6125
6179
  "show_icon"
6126
6180
  ]).show_icon
6127
6181
  ]
6128
6182
  )
6129
6183
  );
6130
6184
  headerIds.forEach((headerId) => {
6131
- (0, import_editor_elements18.updateElementSettings)({
6185
+ (0, import_editor_elements19.updateElementSettings)({
6132
6186
  id: headerId,
6133
6187
  props: { show_icon: import_editor_props19.booleanPropTypeUtil.create(showIcon) },
6134
6188
  withHistory: false
@@ -6138,7 +6192,7 @@ var cascadeShowIconToHeaders = (0, import_editor_v1_adapters9.undoable)(
6138
6192
  },
6139
6193
  undo: (_payload, { previous }) => {
6140
6194
  Object.entries(previous).forEach(([headerId, previousValue]) => {
6141
- (0, import_editor_elements18.updateElementSettings)({
6195
+ (0, import_editor_elements19.updateElementSettings)({
6142
6196
  id: headerId,
6143
6197
  props: { show_icon: previousValue ?? null },
6144
6198
  withHistory: false
@@ -6164,7 +6218,7 @@ var cascadeShowIconToHeaders = (0, import_editor_v1_adapters9.undoable)(
6164
6218
  }
6165
6219
  );
6166
6220
  function getAccordionHeaderIds(accordionId) {
6167
- const accordion = (0, import_editor_elements18.getContainer)(accordionId);
6221
+ const accordion = (0, import_editor_elements19.getContainer)(accordionId);
6168
6222
  const itemContainers = (accordion?.children ?? []).filter(
6169
6223
  (child) => child.model.get("elType") === ACCORDION_ITEM_ELEMENT_TYPE
6170
6224
  );
@@ -6173,7 +6227,7 @@ function getAccordionHeaderIds(accordionId) {
6173
6227
  ).filter((header) => Boolean(header));
6174
6228
  return headerContainers.map((header) => header.id);
6175
6229
  }
6176
- var cascadeDifferentOpenIconToHeaders = (0, import_editor_v1_adapters9.undoable)(
6230
+ var cascadeDifferentOpenIconToHeaders = (0, import_editor_v1_adapters10.undoable)(
6177
6231
  {
6178
6232
  do: ({ accordionId, differentOpenIcon }) => {
6179
6233
  const headerIds = getAccordionHeaderIds(accordionId);
@@ -6181,14 +6235,14 @@ var cascadeDifferentOpenIconToHeaders = (0, import_editor_v1_adapters9.undoable)
6181
6235
  headerIds.map(
6182
6236
  (headerId) => [
6183
6237
  headerId,
6184
- (0, import_editor_elements18.getElementSettings)(headerId, [
6238
+ (0, import_editor_elements19.getElementSettings)(headerId, [
6185
6239
  "different_open_icon"
6186
6240
  ]).different_open_icon
6187
6241
  ]
6188
6242
  )
6189
6243
  );
6190
6244
  headerIds.forEach((headerId) => {
6191
- (0, import_editor_elements18.updateElementSettings)({
6245
+ (0, import_editor_elements19.updateElementSettings)({
6192
6246
  id: headerId,
6193
6247
  props: { different_open_icon: import_editor_props19.booleanPropTypeUtil.create(differentOpenIcon) },
6194
6248
  withHistory: false
@@ -6198,7 +6252,7 @@ var cascadeDifferentOpenIconToHeaders = (0, import_editor_v1_adapters9.undoable)
6198
6252
  },
6199
6253
  undo: (_payload, { previous }) => {
6200
6254
  Object.entries(previous).forEach(([headerId, previousValue]) => {
6201
- (0, import_editor_elements18.updateElementSettings)({
6255
+ (0, import_editor_elements19.updateElementSettings)({
6202
6256
  id: headerId,
6203
6257
  props: { different_open_icon: previousValue ?? null },
6204
6258
  withHistory: false
@@ -6239,7 +6293,7 @@ function useShowIconWriteThrough(accordionId, showIcon) {
6239
6293
  var AccordionItemsControl = ({ label }) => {
6240
6294
  const { element, settings } = useElement();
6241
6295
  const { addItem: addItem2, duplicateItem: duplicateItem2, moveItem: moveItem2, removeItem: removeItem2 } = useActions();
6242
- const { [ACCORDION_ITEM_ELEMENT_TYPE]: items3 } = (0, import_editor_elements19.useElementChildren)(
6296
+ const { [ACCORDION_ITEM_ELEMENT_TYPE]: items3 } = (0, import_editor_elements20.useElementChildren)(
6243
6297
  element.id,
6244
6298
  { [ACCORDION_ELEMENT_TYPE]: ACCORDION_ITEM_ELEMENT_TYPE },
6245
6299
  { includeSelfAsParent: true }
@@ -6305,7 +6359,7 @@ var ItemLabel = ({ value }) => {
6305
6359
  return /* @__PURE__ */ React96.createElement(import_ui48.Stack, { sx: { minHeight: 20 }, direction: "row", alignItems: "center", gap: 1.5 }, value.id ? /* @__PURE__ */ React96.createElement(AccordionItemRepeaterLabel, { elementId: value.id, fallbackTitle: value.title }) : /* @__PURE__ */ React96.createElement("span", null, value?.title));
6306
6360
  };
6307
6361
  var AccordionItemRepeaterLabel = ({ elementId, fallbackTitle }) => {
6308
- const editorSettings = (0, import_editor_elements19.useElementEditorSettings)(elementId);
6362
+ const editorSettings = (0, import_editor_elements20.useElementEditorSettings)(elementId);
6309
6363
  const label = editorSettings?.title ?? fallbackTitle ?? "";
6310
6364
  return /* @__PURE__ */ React96.createElement("span", null, label);
6311
6365
  };
@@ -6316,7 +6370,7 @@ var ItemContent = ({ value }) => {
6316
6370
  return /* @__PURE__ */ React96.createElement(import_ui48.Stack, { p: 2, gap: 1.5 }, /* @__PURE__ */ React96.createElement(ItemNameControl, { elementId: value.id }));
6317
6371
  };
6318
6372
  var ItemNameControl = ({ elementId }) => {
6319
- const editorSettings = (0, import_editor_elements19.useElementEditorSettings)(elementId);
6373
+ const editorSettings = (0, import_editor_elements20.useElementEditorSettings)(elementId);
6320
6374
  const label = editorSettings?.title ?? "";
6321
6375
  return /* @__PURE__ */ React96.createElement(import_ui48.Stack, { gap: 1 }, /* @__PURE__ */ React96.createElement(import_editor_controls58.ControlFormLabel, null, (0, import_i18n71.__)("Name", "elementor")), /* @__PURE__ */ React96.createElement(
6322
6376
  import_ui48.TextField,
@@ -6324,7 +6378,7 @@ var ItemNameControl = ({ elementId }) => {
6324
6378
  size: "tiny",
6325
6379
  value: label,
6326
6380
  onChange: ({ target }) => {
6327
- (0, import_editor_elements19.updateElementEditorSettings)({
6381
+ (0, import_editor_elements20.updateElementEditorSettings)({
6328
6382
  elementId,
6329
6383
  settings: { title: target.value }
6330
6384
  });
@@ -6336,13 +6390,13 @@ var ItemNameControl = ({ elementId }) => {
6336
6390
  // src/controls-registry/element-controls/list-items-control/list-items-control.tsx
6337
6391
  var React97 = __toESM(require("react"));
6338
6392
  var import_editor_controls59 = require("@elementor/editor-controls");
6339
- var import_editor_elements22 = require("@elementor/editor-elements");
6393
+ var import_editor_elements23 = require("@elementor/editor-elements");
6340
6394
  var import_editor_props23 = require("@elementor/editor-props");
6341
6395
  var import_ui49 = require("@elementor/ui");
6342
6396
  var import_i18n74 = require("@wordpress/i18n");
6343
6397
 
6344
6398
  // src/controls-registry/element-controls/list-items-control/list-actions.ts
6345
- var import_editor_elements20 = require("@elementor/editor-elements");
6399
+ var import_editor_elements21 = require("@elementor/editor-elements");
6346
6400
  var import_editor_props21 = require("@elementor/editor-props");
6347
6401
  var import_i18n72 = require("@wordpress/i18n");
6348
6402
  var LIST_ITEM_ELEMENT_TYPE = "e-list-item";
@@ -6368,7 +6422,7 @@ var buildItemModel2 = (position, showMarkers) => {
6368
6422
  const itemTitle = getItemTitle2(position);
6369
6423
  return {
6370
6424
  elType: LIST_ITEM_ELEMENT_TYPE,
6371
- id: (0, import_editor_elements20.generateElementId)(),
6425
+ id: (0, import_editor_elements21.generateElementId)(),
6372
6426
  settings: {
6373
6427
  show_markers: import_editor_props21.booleanPropTypeUtil.create(showMarkers)
6374
6428
  },
@@ -6379,7 +6433,7 @@ var buildItemModel2 = (position, showMarkers) => {
6379
6433
  elements: [
6380
6434
  {
6381
6435
  elType: LIST_ITEM_MARKER_ELEMENT_TYPE,
6382
- id: (0, import_editor_elements20.generateElementId)(),
6436
+ id: (0, import_editor_elements21.generateElementId)(),
6383
6437
  editor_settings: {
6384
6438
  title: (0, import_i18n72.__)("Marker", "elementor")
6385
6439
  },
@@ -6388,7 +6442,7 @@ var buildItemModel2 = (position, showMarkers) => {
6388
6442
  },
6389
6443
  {
6390
6444
  elType: LIST_ITEM_CONTENT_ELEMENT_TYPE,
6391
- id: (0, import_editor_elements20.generateElementId)(),
6445
+ id: (0, import_editor_elements21.generateElementId)(),
6392
6446
  editor_settings: {
6393
6447
  title: (0, import_i18n72.__)("Content", "elementor")
6394
6448
  },
@@ -6396,7 +6450,7 @@ var buildItemModel2 = (position, showMarkers) => {
6396
6450
  {
6397
6451
  elType: "widget",
6398
6452
  widgetType: PARAGRAPH_WIDGET_TYPE2,
6399
- id: (0, import_editor_elements20.generateElementId)(),
6453
+ id: (0, import_editor_elements21.generateElementId)(),
6400
6454
  elements: [],
6401
6455
  settings: {
6402
6456
  paragraph: import_editor_props21.escapedHtmlPropTypeUtil.create(itemTitle)
@@ -6408,7 +6462,7 @@ var buildItemModel2 = (position, showMarkers) => {
6408
6462
  };
6409
6463
  };
6410
6464
  var duplicateItem = ({ items: items3 }) => {
6411
- (0, import_editor_elements20.duplicateElements)({
6465
+ (0, import_editor_elements21.duplicateElements)({
6412
6466
  elementIds: items3.map(({ item }) => item.id),
6413
6467
  title: (0, import_i18n72.__)("Duplicate List Item", "elementor")
6414
6468
  });
@@ -6418,12 +6472,12 @@ var moveItem = ({
6418
6472
  listContainerId,
6419
6473
  movedElementId
6420
6474
  }) => {
6421
- const movedElement = (0, import_editor_elements20.getContainer)(movedElementId);
6422
- const listContainer = (0, import_editor_elements20.getContainer)(listContainerId);
6475
+ const movedElement = (0, import_editor_elements21.getContainer)(movedElementId);
6476
+ const listContainer = (0, import_editor_elements21.getContainer)(listContainerId);
6423
6477
  if (!movedElement || !listContainer) {
6424
6478
  throw new Error("List item or list container not found");
6425
6479
  }
6426
- (0, import_editor_elements20.moveElements)({
6480
+ (0, import_editor_elements21.moveElements)({
6427
6481
  title: (0, import_i18n72.__)("Reorder List Items", "elementor"),
6428
6482
  moves: [
6429
6483
  {
@@ -6435,7 +6489,7 @@ var moveItem = ({
6435
6489
  });
6436
6490
  };
6437
6491
  var removeItem = ({ items: items3 }) => {
6438
- (0, import_editor_elements20.removeElements)({
6492
+ (0, import_editor_elements21.removeElements)({
6439
6493
  title: (0, import_i18n72.__)("List Items", "elementor"),
6440
6494
  elementIds: items3.map(({ item }) => item.id)
6441
6495
  });
@@ -6446,14 +6500,14 @@ var addItem = ({
6446
6500
  items: items3,
6447
6501
  showMarkers
6448
6502
  }) => {
6449
- const listContainer = (0, import_editor_elements20.getContainer)(listContainerId);
6503
+ const listContainer = (0, import_editor_elements21.getContainer)(listContainerId);
6450
6504
  if (!listContainer) {
6451
6505
  throw new Error("List container not found");
6452
6506
  }
6453
6507
  const titles = [...existingTitles];
6454
6508
  items3.forEach(({ index }) => {
6455
6509
  const position = getNextItemNumber2(titles);
6456
- (0, import_editor_elements20.createElements)({
6510
+ (0, import_editor_elements21.createElements)({
6457
6511
  title: (0, import_i18n72.__)("List Items", "elementor"),
6458
6512
  elements: [
6459
6513
  {
@@ -6469,11 +6523,11 @@ var addItem = ({
6469
6523
 
6470
6524
  // src/controls-registry/element-controls/list-items-control/use-show-markers-write-through.ts
6471
6525
  var import_react42 = require("react");
6472
- var import_editor_elements21 = require("@elementor/editor-elements");
6526
+ var import_editor_elements22 = require("@elementor/editor-elements");
6473
6527
  var import_editor_props22 = require("@elementor/editor-props");
6474
- var import_editor_v1_adapters10 = require("@elementor/editor-v1-adapters");
6528
+ var import_editor_v1_adapters11 = require("@elementor/editor-v1-adapters");
6475
6529
  var import_i18n73 = require("@wordpress/i18n");
6476
- var cascadeShowMarkersToItems = (0, import_editor_v1_adapters10.undoable)(
6530
+ var cascadeShowMarkersToItems = (0, import_editor_v1_adapters11.undoable)(
6477
6531
  {
6478
6532
  do: ({ listId, showMarkers }) => {
6479
6533
  const itemIds = getListItemIds(listId);
@@ -6481,14 +6535,14 @@ var cascadeShowMarkersToItems = (0, import_editor_v1_adapters10.undoable)(
6481
6535
  itemIds.map(
6482
6536
  (itemId) => [
6483
6537
  itemId,
6484
- (0, import_editor_elements21.getElementSettings)(itemId, [
6538
+ (0, import_editor_elements22.getElementSettings)(itemId, [
6485
6539
  "show_markers"
6486
6540
  ]).show_markers
6487
6541
  ]
6488
6542
  )
6489
6543
  );
6490
6544
  itemIds.forEach((itemId) => {
6491
- (0, import_editor_elements21.updateElementSettings)({
6545
+ (0, import_editor_elements22.updateElementSettings)({
6492
6546
  id: itemId,
6493
6547
  props: { show_markers: import_editor_props22.booleanPropTypeUtil.create(showMarkers) },
6494
6548
  withHistory: false
@@ -6498,7 +6552,7 @@ var cascadeShowMarkersToItems = (0, import_editor_v1_adapters10.undoable)(
6498
6552
  },
6499
6553
  undo: (_payload, { previous }) => {
6500
6554
  Object.entries(previous).forEach(([itemId, previousValue]) => {
6501
- (0, import_editor_elements21.updateElementSettings)({
6555
+ (0, import_editor_elements22.updateElementSettings)({
6502
6556
  id: itemId,
6503
6557
  props: { show_markers: previousValue ?? null },
6504
6558
  withHistory: false
@@ -6513,7 +6567,7 @@ var cascadeShowMarkersToItems = (0, import_editor_v1_adapters10.undoable)(
6513
6567
  }
6514
6568
  );
6515
6569
  function getListItemIds(listId) {
6516
- const list = (0, import_editor_elements21.getContainer)(listId);
6570
+ const list = (0, import_editor_elements22.getContainer)(listId);
6517
6571
  const itemContainers = (list?.children ?? []).filter(
6518
6572
  (child) => child.model.get("elType") === LIST_ITEM_ELEMENT_TYPE
6519
6573
  );
@@ -6544,7 +6598,7 @@ var ListItemsControl = ({ label }) => {
6544
6598
  };
6545
6599
  var ListItemsControlContent = ({ label }) => {
6546
6600
  const { element, settings } = useElement();
6547
- const { [LIST_ITEM_ELEMENT_TYPE]: listItems } = (0, import_editor_elements22.useElementChildren)(
6601
+ const { [LIST_ITEM_ELEMENT_TYPE]: listItems } = (0, import_editor_elements23.useElementChildren)(
6548
6602
  element.id,
6549
6603
  { [LIST_ELEMENT_TYPE]: LIST_ITEM_ELEMENT_TYPE },
6550
6604
  { includeSelfAsParent: true }
@@ -6610,12 +6664,12 @@ var ItemContent2 = ({ value }) => {
6610
6664
  return /* @__PURE__ */ React97.createElement(import_ui49.Stack, { p: 2, gap: 1.5 }, /* @__PURE__ */ React97.createElement(ListItemLabelControl, { elementId: value.id, fallbackLabel: value.title ?? "" }));
6611
6665
  };
6612
6666
  var ListItemRepeaterLabel = ({ elementId, fallbackLabel }) => {
6613
- const editorSettings = (0, import_editor_elements22.useElementEditorSettings)(elementId);
6667
+ const editorSettings = (0, import_editor_elements23.useElementEditorSettings)(elementId);
6614
6668
  const label = getEffectiveListItemLabel(editorSettings?.title, fallbackLabel);
6615
6669
  return /* @__PURE__ */ React97.createElement("span", null, label);
6616
6670
  };
6617
6671
  var ListItemLabelControl = ({ elementId, fallbackLabel }) => {
6618
- const editorSettings = (0, import_editor_elements22.useElementEditorSettings)(elementId);
6672
+ const editorSettings = (0, import_editor_elements23.useElementEditorSettings)(elementId);
6619
6673
  const label = getEffectiveListItemLabel(editorSettings?.title, fallbackLabel);
6620
6674
  return /* @__PURE__ */ React97.createElement(import_ui49.Stack, { gap: 1 }, /* @__PURE__ */ React97.createElement(import_editor_controls59.ControlFormLabel, null, (0, import_i18n74.__)("Item name", "elementor")), /* @__PURE__ */ React97.createElement(
6621
6675
  import_ui49.TextField,
@@ -6623,7 +6677,7 @@ var ListItemLabelControl = ({ elementId, fallbackLabel }) => {
6623
6677
  size: "tiny",
6624
6678
  value: label,
6625
6679
  onChange: ({ target }) => {
6626
- (0, import_editor_elements22.updateElementEditorSettings)({
6680
+ (0, import_editor_elements23.updateElementEditorSettings)({
6627
6681
  elementId,
6628
6682
  settings: { title: target.value }
6629
6683
  });
@@ -6635,16 +6689,16 @@ var ListItemLabelControl = ({ elementId, fallbackLabel }) => {
6635
6689
  // src/controls-registry/element-controls/tabs-control/tabs-control.tsx
6636
6690
  var React98 = __toESM(require("react"));
6637
6691
  var import_editor_controls61 = require("@elementor/editor-controls");
6638
- var import_editor_elements25 = require("@elementor/editor-elements");
6692
+ var import_editor_elements26 = require("@elementor/editor-elements");
6639
6693
  var import_editor_props25 = require("@elementor/editor-props");
6640
6694
  var import_icons29 = require("@elementor/icons");
6641
6695
  var import_ui50 = require("@elementor/ui");
6642
6696
  var import_i18n76 = require("@wordpress/i18n");
6643
6697
 
6644
6698
  // src/controls-registry/element-controls/get-element-by-type.ts
6645
- var import_editor_elements23 = require("@elementor/editor-elements");
6699
+ var import_editor_elements24 = require("@elementor/editor-elements");
6646
6700
  var getElementByType = (elementId, type) => {
6647
- const currentElement = (0, import_editor_elements23.getContainer)(elementId);
6701
+ const currentElement = (0, import_editor_elements24.getContainer)(elementId);
6648
6702
  if (!currentElement) {
6649
6703
  return null;
6650
6704
  }
@@ -6656,7 +6710,7 @@ var getElementByType = (elementId, type) => {
6656
6710
 
6657
6711
  // src/controls-registry/element-controls/tabs-control/use-actions.ts
6658
6712
  var import_editor_controls60 = require("@elementor/editor-controls");
6659
- var import_editor_elements24 = require("@elementor/editor-elements");
6713
+ var import_editor_elements25 = require("@elementor/editor-elements");
6660
6714
  var import_editor_props24 = require("@elementor/editor-props");
6661
6715
  var import_i18n75 = require("@wordpress/i18n");
6662
6716
  var TAB_ELEMENT_TYPE = "e-tab";
@@ -6674,12 +6728,12 @@ var useActions2 = () => {
6674
6728
  });
6675
6729
  items3.forEach(({ item, index }) => {
6676
6730
  const tabId = item.id;
6677
- const tabContentAreaContainer = (0, import_editor_elements24.getContainer)(tabContentAreaId);
6731
+ const tabContentAreaContainer = (0, import_editor_elements25.getContainer)(tabContentAreaId);
6678
6732
  const tabContentId = tabContentAreaContainer?.children?.[index]?.id;
6679
6733
  if (!tabContentId) {
6680
6734
  throw new Error("Original content ID is required for duplication");
6681
6735
  }
6682
- (0, import_editor_elements24.duplicateElements)({
6736
+ (0, import_editor_elements25.duplicateElements)({
6683
6737
  elementIds: [tabId, tabContentId],
6684
6738
  title: (0, import_i18n75.__)("Duplicate Tab", "elementor"),
6685
6739
  onDuplicateElements: () => {
@@ -6702,10 +6756,10 @@ var useActions2 = () => {
6702
6756
  movedElementId,
6703
6757
  movedElementIndex
6704
6758
  }) => {
6705
- const tabContentContainer = (0, import_editor_elements24.getContainer)(tabContentAreaId);
6759
+ const tabContentContainer = (0, import_editor_elements25.getContainer)(tabContentAreaId);
6706
6760
  const tabContent = tabContentContainer?.children?.[movedElementIndex];
6707
- const movedElement = (0, import_editor_elements24.getContainer)(movedElementId);
6708
- const tabsMenu = (0, import_editor_elements24.getContainer)(tabsMenuId);
6761
+ const movedElement = (0, import_editor_elements25.getContainer)(movedElementId);
6762
+ const tabsMenu = (0, import_editor_elements25.getContainer)(tabsMenuId);
6709
6763
  if (!tabContent) {
6710
6764
  throw new Error("Content element is required");
6711
6765
  }
@@ -6717,7 +6771,7 @@ var useActions2 = () => {
6717
6771
  to: toIndex,
6718
6772
  defaultActiveTab
6719
6773
  });
6720
- (0, import_editor_elements24.moveElements)({
6774
+ (0, import_editor_elements25.moveElements)({
6721
6775
  title: (0, import_i18n75.__)("Reorder Tabs", "elementor"),
6722
6776
  moves: [
6723
6777
  {
@@ -6751,11 +6805,11 @@ var useActions2 = () => {
6751
6805
  items: items3,
6752
6806
  defaultActiveTab
6753
6807
  });
6754
- (0, import_editor_elements24.removeElements)({
6808
+ (0, import_editor_elements25.removeElements)({
6755
6809
  title: (0, import_i18n75.__)("Tabs", "elementor"),
6756
6810
  elementIds: items3.flatMap(({ item, index }) => {
6757
6811
  const tabId = item.id;
6758
- const tabContentContainer = (0, import_editor_elements24.getContainer)(tabContentAreaId);
6812
+ const tabContentContainer = (0, import_editor_elements25.getContainer)(tabContentAreaId);
6759
6813
  const tabContentId = tabContentContainer?.children?.[index]?.id;
6760
6814
  if (!tabContentId) {
6761
6815
  throw new Error("Content ID is required");
@@ -6779,14 +6833,14 @@ var useActions2 = () => {
6779
6833
  tabsMenuId,
6780
6834
  items: items3
6781
6835
  }) => {
6782
- const tabContentArea = (0, import_editor_elements24.getContainer)(tabContentAreaId);
6783
- const tabsMenu = (0, import_editor_elements24.getContainer)(tabsMenuId);
6836
+ const tabContentArea = (0, import_editor_elements25.getContainer)(tabContentAreaId);
6837
+ const tabsMenu = (0, import_editor_elements25.getContainer)(tabsMenuId);
6784
6838
  if (!tabContentArea || !tabsMenu) {
6785
6839
  throw new Error("Tab containers not found");
6786
6840
  }
6787
6841
  items3.forEach(({ index }) => {
6788
6842
  const position = index + 1;
6789
- (0, import_editor_elements24.createElements)({
6843
+ (0, import_editor_elements25.createElements)({
6790
6844
  title: (0, import_i18n75.__)("Tabs", "elementor"),
6791
6845
  elements: [
6792
6846
  {
@@ -6861,7 +6915,7 @@ var TabsControl = ({ label }) => {
6861
6915
  var TabsControlContent = ({ label }) => {
6862
6916
  const { element } = useElement();
6863
6917
  const { addItem: addItem2, duplicateItem: duplicateItem2, moveItem: moveItem2, removeItem: removeItem2 } = useActions2();
6864
- const { [TAB_ELEMENT_TYPE]: tabLinks } = (0, import_editor_elements25.useElementChildren)(element.id, {
6918
+ const { [TAB_ELEMENT_TYPE]: tabLinks } = (0, import_editor_elements26.useElementChildren)(element.id, {
6865
6919
  [TAB_MENU_ELEMENT_TYPE]: TAB_ELEMENT_TYPE
6866
6920
  });
6867
6921
  const tabList = getElementByType(element.id, TAB_MENU_ELEMENT_TYPE);
@@ -6922,7 +6976,7 @@ var ItemLabel3 = ({ value, index }) => {
6922
6976
  return /* @__PURE__ */ React98.createElement(import_ui50.Stack, { sx: { minHeight: 20 }, direction: "row", alignItems: "center", gap: 1.5 }, value.id ? /* @__PURE__ */ React98.createElement(TabRepeaterLabel, { elementId: value.id, fallbackTitle: value.title }) : /* @__PURE__ */ React98.createElement("span", null, value?.title), /* @__PURE__ */ React98.createElement(ItemDefaultTab, { index }));
6923
6977
  };
6924
6978
  var TabRepeaterLabel = ({ elementId, fallbackTitle }) => {
6925
- const editorSettings = (0, import_editor_elements25.useElementEditorSettings)(elementId);
6979
+ const editorSettings = (0, import_editor_elements26.useElementEditorSettings)(elementId);
6926
6980
  const label = editorSettings?.title ?? fallbackTitle ?? "";
6927
6981
  return /* @__PURE__ */ React98.createElement("span", null, label);
6928
6982
  };
@@ -6959,7 +7013,7 @@ var DefaultTabControl = ({ tabIndex }) => {
6959
7013
  )));
6960
7014
  };
6961
7015
  var TabLabelControl = ({ elementId }) => {
6962
- const editorSettings = (0, import_editor_elements25.useElementEditorSettings)(elementId);
7016
+ const editorSettings = (0, import_editor_elements26.useElementEditorSettings)(elementId);
6963
7017
  const label = editorSettings?.title ?? "";
6964
7018
  return /* @__PURE__ */ React98.createElement(import_ui50.Stack, { gap: 1 }, /* @__PURE__ */ React98.createElement(import_editor_controls61.ControlFormLabel, null, (0, import_i18n76.__)("Tab name", "elementor")), /* @__PURE__ */ React98.createElement(
6965
7019
  import_ui50.TextField,
@@ -6967,7 +7021,7 @@ var TabLabelControl = ({ elementId }) => {
6967
7021
  size: "tiny",
6968
7022
  value: label,
6969
7023
  onChange: ({ target }) => {
6970
- (0, import_editor_elements25.updateElementEditorSettings)({
7024
+ (0, import_editor_elements26.updateElementEditorSettings)({
6971
7025
  elementId,
6972
7026
  settings: { title: target.value }
6973
7027
  });
@@ -7034,7 +7088,7 @@ var import_react44 = require("react");
7034
7088
  var import_editor_controls62 = require("@elementor/editor-controls");
7035
7089
 
7036
7090
  // src/dynamics/sync/get-atomic-dynamic-tags.ts
7037
- var import_editor_v1_adapters11 = require("@elementor/editor-v1-adapters");
7091
+ var import_editor_v1_adapters12 = require("@elementor/editor-v1-adapters");
7038
7092
 
7039
7093
  // src/hooks/use-license-config.ts
7040
7094
  var import_react43 = require("react");
@@ -7057,7 +7111,7 @@ function useLicenseConfig() {
7057
7111
 
7058
7112
  // src/dynamics/sync/get-atomic-dynamic-tags.ts
7059
7113
  var getAtomicDynamicTags = (shouldFilterByLicense = true) => {
7060
- const { atomicDynamicTags } = (0, import_editor_v1_adapters11.getElementorConfig)();
7114
+ const { atomicDynamicTags } = (0, import_editor_v1_adapters12.getElementorConfig)();
7061
7115
  if (!atomicDynamicTags) {
7062
7116
  return null;
7063
7117
  }
@@ -7080,7 +7134,7 @@ var filterByLicense = (tags) => {
7080
7134
 
7081
7135
  // src/dynamics/utils.ts
7082
7136
  var import_editor_props26 = require("@elementor/editor-props");
7083
- var import_editor_v1_adapters12 = require("@elementor/editor-v1-adapters");
7137
+ var import_editor_v1_adapters13 = require("@elementor/editor-v1-adapters");
7084
7138
  var import_schema = require("@elementor/schema");
7085
7139
  var DYNAMIC_PROP_TYPE_KEY = "dynamic";
7086
7140
  var dynamicPropTypeUtil = (0, import_editor_props26.createPropUtils)(
@@ -7092,7 +7146,7 @@ var dynamicPropTypeUtil = (0, import_editor_props26.createPropUtils)(
7092
7146
  })
7093
7147
  );
7094
7148
  var isDynamicTagSupported = (tagName) => {
7095
- return !!(0, import_editor_v1_adapters12.getElementorConfig)()?.atomicDynamicTags?.tags?.[tagName];
7149
+ return !!(0, import_editor_v1_adapters13.getElementorConfig)()?.atomicDynamicTags?.tags?.[tagName];
7096
7150
  };
7097
7151
  var isDynamicPropType = (prop) => prop.key === DYNAMIC_PROP_TYPE_KEY;
7098
7152
  var getDynamicPropType = (propType) => {
@@ -8426,7 +8480,7 @@ function init4() {
8426
8480
  init();
8427
8481
  }
8428
8482
  var blockV1Panel = () => {
8429
- (0, import_editor_v1_adapters13.blockCommand)({
8483
+ (0, import_editor_v1_adapters14.blockCommand)({
8430
8484
  command: "panel/editor/open",
8431
8485
  condition: isAtomicWidgetSelected
8432
8486
  });