@elementor/editor-editing-panel 1.47.0 → 1.48.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/dist/index.mjs CHANGED
@@ -1175,7 +1175,7 @@ import { ThemeProvider as ThemeProvider2 } from "@elementor/editor-ui";
1175
1175
  import { AtomIcon } from "@elementor/icons";
1176
1176
  import { SessionStorageProvider as SessionStorageProvider3 } from "@elementor/session";
1177
1177
  import { ErrorBoundary } from "@elementor/ui";
1178
- import { __ as __59 } from "@wordpress/i18n";
1178
+ import { __ as __62 } from "@wordpress/i18n";
1179
1179
 
1180
1180
  // src/controls-actions.ts
1181
1181
  import { createMenu } from "@elementor/menus";
@@ -1250,9 +1250,9 @@ function EditorPanelErrorFallback() {
1250
1250
  // src/components/editing-panel-tabs.tsx
1251
1251
  import * as React85 from "react";
1252
1252
  import { Fragment as Fragment10 } from "react";
1253
- import { isExperimentActive as isExperimentActive16 } from "@elementor/editor-v1-adapters";
1253
+ import { isExperimentActive as isExperimentActive17 } from "@elementor/editor-v1-adapters";
1254
1254
  import { Divider as Divider6, Stack as Stack15, Tab, TabPanel, Tabs, useTabs } from "@elementor/ui";
1255
- import { __ as __58 } from "@wordpress/i18n";
1255
+ import { __ as __61 } from "@wordpress/i18n";
1256
1256
 
1257
1257
  // src/contexts/scroll-context.tsx
1258
1258
  import * as React12 from "react";
@@ -1434,8 +1434,9 @@ import {
1434
1434
  getElementLabel as getElementLabel2,
1435
1435
  getElementSetting as getElementSetting2,
1436
1436
  updateElementSettings as updateElementSettings2,
1437
- useElementSetting as useElementSetting2
1437
+ useElementSettings
1438
1438
  } from "@elementor/editor-elements";
1439
+ import { shouldApplyEffect } from "@elementor/editor-props";
1439
1440
  import { isExperimentActive as isExperimentActive3, undoable as undoable2 } from "@elementor/editor-v1-adapters";
1440
1441
  import { __ as __5 } from "@wordpress/i18n";
1441
1442
 
@@ -1455,8 +1456,8 @@ var createTopLevelOjectType = ({ schema }) => {
1455
1456
  // src/controls-registry/settings-field.tsx
1456
1457
  var SettingsField = ({ bind, children, propDisplayName }) => {
1457
1458
  const { element, elementType } = useElement();
1458
- const settingsValue = useElementSetting2(element.id, bind);
1459
- const value = { [bind]: settingsValue };
1459
+ const elementSettingValues = useElementSettings(element.id, Object.keys(elementType.propsSchema));
1460
+ const value = { [bind]: elementSettingValues?.[bind] };
1460
1461
  const propType = createTopLevelOjectType({ schema: elementType.propsSchema });
1461
1462
  const undoableUpdateElementProp = useUndoableUpdateElementProp({
1462
1463
  propKey: bind,
@@ -1471,8 +1472,19 @@ var SettingsField = ({ bind, children, propDisplayName }) => {
1471
1472
  updateElementSettings2({ id: element.id, props: newValue });
1472
1473
  }
1473
1474
  };
1474
- return /* @__PURE__ */ React15.createElement(PropProvider, { propType, value, setValue }, /* @__PURE__ */ React15.createElement(PropKeyProvider, { bind }, children));
1475
+ const isDisabled = (prop) => getDisableState(prop, elementSettingValues);
1476
+ return /* @__PURE__ */ React15.createElement(PropProvider, { propType, value, setValue, isDisabled }, /* @__PURE__ */ React15.createElement(PropKeyProvider, { bind }, children));
1475
1477
  };
1478
+ function getDisableState(propType, elementValues) {
1479
+ const disablingDependencies = propType.dependencies?.filter(({ effect }) => effect === "disable") || [];
1480
+ if (!disablingDependencies.length) {
1481
+ return false;
1482
+ }
1483
+ if (disablingDependencies.length > 1) {
1484
+ throw new Error("Multiple disabling dependencies are not supported.");
1485
+ }
1486
+ return shouldApplyEffect(disablingDependencies[0], elementValues);
1487
+ }
1476
1488
  function useUndoableUpdateElementProp({
1477
1489
  propKey,
1478
1490
  elementId,
@@ -1669,12 +1681,12 @@ import { CLASSES_PROP_KEY } from "@elementor/editor-props";
1669
1681
  import { useActiveBreakpoint } from "@elementor/editor-responsive";
1670
1682
  import { SessionStorageProvider as SessionStorageProvider2 } from "@elementor/session";
1671
1683
  import { Divider as Divider5, Stack as Stack14 } from "@elementor/ui";
1672
- import { __ as __57 } from "@wordpress/i18n";
1684
+ import { __ as __60 } from "@wordpress/i18n";
1673
1685
 
1674
1686
  // src/contexts/styles-inheritance-context.tsx
1675
1687
  import * as React20 from "react";
1676
1688
  import { createContext as createContext8, useContext as useContext8 } from "react";
1677
- import { getWidgetsCache, useElementSetting as useElementSetting3 } from "@elementor/editor-elements";
1689
+ import { getWidgetsCache, useElementSetting as useElementSetting2 } from "@elementor/editor-elements";
1678
1690
  import { classesPropTypeUtil as classesPropTypeUtil2 } from "@elementor/editor-props";
1679
1691
  import { getBreakpointsTree } from "@elementor/editor-responsive";
1680
1692
  import { getStylesSchema } from "@elementor/editor-styles";
@@ -1950,7 +1962,7 @@ var useAppliedStyles = () => {
1950
1962
  const currentClassesProp = useClassesProp();
1951
1963
  const baseStyles = useBaseStyles();
1952
1964
  useStylesRerender();
1953
- const classesProp = useElementSetting3(element.id, currentClassesProp);
1965
+ const classesProp = useElementSetting2(element.id, currentClassesProp);
1954
1966
  const appliedStyles = classesPropTypeUtil2.extract(classesProp) ?? [];
1955
1967
  return stylesRepository5.all().filter((style) => [...baseStyles, ...appliedStyles].includes(style.id));
1956
1968
  };
@@ -1962,7 +1974,7 @@ var useBaseStyles = () => {
1962
1974
  };
1963
1975
 
1964
1976
  // src/hooks/use-active-style-def-id.ts
1965
- import { getElementStyles, useElementSetting as useElementSetting4 } from "@elementor/editor-elements";
1977
+ import { getElementStyles, useElementSetting as useElementSetting3 } from "@elementor/editor-elements";
1966
1978
  function useActiveStyleDefId(classProp) {
1967
1979
  const [activeStyledDefId, setActiveStyledDefId] = useStateByElement(
1968
1980
  "active-style-id",
@@ -1980,7 +1992,7 @@ function useFirstAppliedClass(appliedClassesIds) {
1980
1992
  }
1981
1993
  function useAppliedClassesIds(classProp) {
1982
1994
  const { element } = useElement();
1983
- return useElementSetting4(element.id, classProp);
1995
+ return useElementSetting3(element.id, classProp);
1984
1996
  }
1985
1997
  function useActiveAndAppliedClassId(id, appliedClassesIds) {
1986
1998
  const isClassApplied = !!id && appliedClassesIds.includes(id);
@@ -1996,50 +2008,31 @@ import { __ as __12 } from "@wordpress/i18n";
1996
2008
  import * as React27 from "react";
1997
2009
  import { ControlAdornmentsProvider, PropKeyProvider as PropKeyProvider2, PropProvider as PropProvider2 } from "@elementor/editor-controls";
1998
2010
  import { getStylesSchema as getStylesSchema2 } from "@elementor/editor-styles";
1999
- import { isExperimentActive as isExperimentActive8 } from "@elementor/editor-v1-adapters";
2011
+ import { isExperimentActive as isExperimentActive9 } from "@elementor/editor-v1-adapters";
2000
2012
 
2001
2013
  // src/hooks/use-styles-fields.ts
2002
2014
  import { useMemo as useMemo4 } from "react";
2003
- import {
2004
- createElementStyle,
2005
- deleteElementStyle,
2006
- getElementLabel as getElementLabel3
2007
- } from "@elementor/editor-elements";
2015
+ import { createElementStyle, deleteElementStyle, getElementLabel as getElementLabel3 } from "@elementor/editor-elements";
2008
2016
  import { getVariantByMeta } from "@elementor/editor-styles";
2017
+ import { isElementsStylesProvider as isElementsStylesProvider3 } from "@elementor/editor-styles-repository";
2009
2018
  import { ELEMENTS_STYLES_RESERVED_LABEL } from "@elementor/editor-styles-repository";
2010
- import { undoable as undoable3 } from "@elementor/editor-v1-adapters";
2019
+ import { isExperimentActive as isExperimentActive6, undoable as undoable3 } from "@elementor/editor-v1-adapters";
2011
2020
  import { __ as __7 } from "@wordpress/i18n";
2012
2021
  function useStylesFields(propNames) {
2013
- const { element } = useElement();
2014
- const { id, meta, provider, canEdit } = useStyle();
2015
- const classesProp = useClassesProp();
2016
- const undoableUpdateStyle = useUndoableUpdateStyle();
2017
- const undoableCreateElementStyle = useUndoableCreateElementStyle();
2022
+ const {
2023
+ element: { id: elementId }
2024
+ } = useElement();
2025
+ const { id: styleId, meta, provider, canEdit } = useStyle();
2026
+ const undoableUpdateStyle = useUndoableUpdateStyle({ elementId, meta });
2027
+ const undoableCreateElementStyle = useUndoableCreateElementStyle({ elementId, meta });
2018
2028
  useStylesRerender();
2019
- const values = getProps({
2020
- elementId: element.id,
2021
- styleId: id,
2022
- provider,
2023
- meta,
2024
- propNames
2025
- });
2026
- const setValues = (props) => {
2027
- if (id === null) {
2028
- undoableCreateElementStyle({
2029
- elementId: element.id,
2030
- classesProp,
2031
- meta,
2032
- props
2033
- });
2034
- return;
2029
+ const values = getProps({ elementId, styleId, provider, meta, propNames });
2030
+ const setValues = (props, { history: { propDisplayName } }) => {
2031
+ if (styleId === null) {
2032
+ undoableCreateElementStyle({ props, propDisplayName });
2033
+ } else {
2034
+ undoableUpdateStyle({ provider, styleId, props, propDisplayName });
2035
2035
  }
2036
- undoableUpdateStyle({
2037
- elementId: element.id,
2038
- styleId: id,
2039
- provider,
2040
- meta,
2041
- props
2042
- });
2043
2036
  };
2044
2037
  return { values, setValues, canEdit };
2045
2038
  }
@@ -2056,39 +2049,52 @@ function getProps({ styleId, elementId, provider, meta, propNames }) {
2056
2049
  propNames.map((key) => [key, variant?.props[key] ?? null])
2057
2050
  );
2058
2051
  }
2059
- function useUndoableCreateElementStyle() {
2052
+ function useUndoableCreateElementStyle({
2053
+ elementId,
2054
+ meta
2055
+ }) {
2056
+ const classesProp = useClassesProp();
2060
2057
  return useMemo4(() => {
2058
+ const isVersion331Active = isExperimentActive6(EXPERIMENTAL_FEATURES.V_3_31);
2059
+ const createStyleArgs = { elementId, classesProp, meta, label: ELEMENTS_STYLES_RESERVED_LABEL };
2061
2060
  return undoable3(
2062
2061
  {
2063
- do: (payload) => {
2064
- return createElementStyle({
2065
- ...payload,
2066
- label: ELEMENTS_STYLES_RESERVED_LABEL
2067
- });
2062
+ do: ({ props }) => {
2063
+ return createElementStyle({ ...createStyleArgs, props });
2068
2064
  },
2069
- undo: ({ elementId }, styleId) => {
2065
+ undo: (_, styleId) => {
2070
2066
  deleteElementStyle(elementId, styleId);
2071
2067
  },
2072
- redo: (payload, styleId) => {
2073
- return createElementStyle({
2074
- ...payload,
2075
- styleId,
2076
- label: ELEMENTS_STYLES_RESERVED_LABEL
2077
- });
2068
+ redo: ({ props }, styleId) => {
2069
+ return createElementStyle({ ...createStyleArgs, props, styleId });
2078
2070
  }
2079
2071
  },
2080
2072
  {
2081
- title: ({ elementId }) => getElementLabel3(elementId),
2082
- subtitle: __7("Style edited", "elementor")
2073
+ title: () => {
2074
+ if (isVersion331Active) {
2075
+ return localStyleHistoryTitlesV331.title({ elementId });
2076
+ }
2077
+ return historyTitlesV330.title({ elementId });
2078
+ },
2079
+ subtitle: ({ propDisplayName }) => {
2080
+ if (isVersion331Active) {
2081
+ return localStyleHistoryTitlesV331.subtitle({ propDisplayName });
2082
+ }
2083
+ return historyTitlesV330.subtitle;
2084
+ }
2083
2085
  }
2084
2086
  );
2085
- }, []);
2087
+ }, [classesProp, elementId, meta]);
2086
2088
  }
2087
- function useUndoableUpdateStyle() {
2089
+ function useUndoableUpdateStyle({
2090
+ elementId,
2091
+ meta
2092
+ }) {
2088
2093
  return useMemo4(() => {
2094
+ const isVersion331Active = isExperimentActive6(EXPERIMENTAL_FEATURES.V_3_31);
2089
2095
  return undoable3(
2090
2096
  {
2091
- do: ({ elementId, styleId, provider, meta, props }) => {
2097
+ do: ({ provider, styleId, props }) => {
2092
2098
  if (!provider.actions.updateProps) {
2093
2099
  throw new StylesProviderCannotUpdatePropsError({
2094
2100
  context: { providerKey: provider.getKey() }
@@ -2096,26 +2102,37 @@ function useUndoableUpdateStyle() {
2096
2102
  }
2097
2103
  const style = provider.actions.get(styleId, { elementId });
2098
2104
  const prevProps = getCurrentProps(style, meta);
2099
- provider.actions.updateProps(
2100
- {
2101
- id: styleId,
2102
- meta,
2103
- props
2104
- },
2105
- { elementId }
2106
- );
2105
+ provider.actions.updateProps({ id: styleId, meta, props }, { elementId });
2107
2106
  return prevProps;
2108
2107
  },
2109
- undo: ({ elementId, styleId, meta, provider }, prevProps) => {
2108
+ undo: ({ provider, styleId }, prevProps) => {
2110
2109
  provider.actions.updateProps?.({ id: styleId, meta, props: prevProps }, { elementId });
2111
2110
  }
2112
2111
  },
2113
2112
  {
2114
- title: ({ elementId }) => getElementLabel3(elementId),
2115
- subtitle: __7("Style edited", "elementor")
2113
+ title: ({ provider }) => {
2114
+ if (isVersion331Active) {
2115
+ const isLocal = isElementsStylesProvider3(provider.getKey());
2116
+ if (isLocal) {
2117
+ return localStyleHistoryTitlesV331.title({ elementId });
2118
+ }
2119
+ return defaultHistoryTitlesV331.title({ provider });
2120
+ }
2121
+ return historyTitlesV330.title({ elementId });
2122
+ },
2123
+ subtitle: ({ provider, styleId, propDisplayName }) => {
2124
+ if (isVersion331Active) {
2125
+ const isLocal = isElementsStylesProvider3(provider.getKey());
2126
+ if (isLocal) {
2127
+ return localStyleHistoryTitlesV331.subtitle({ propDisplayName });
2128
+ }
2129
+ return defaultHistoryTitlesV331.subtitle({ provider, styleId, elementId, propDisplayName });
2130
+ }
2131
+ return historyTitlesV330.subtitle;
2132
+ }
2116
2133
  }
2117
2134
  );
2118
- }, []);
2135
+ }, [elementId, meta]);
2119
2136
  }
2120
2137
  function getCurrentProps(style, meta) {
2121
2138
  if (!style) {
@@ -2125,15 +2142,40 @@ function getCurrentProps(style, meta) {
2125
2142
  const props = variant?.props ?? {};
2126
2143
  return structuredClone(props);
2127
2144
  }
2145
+ var historyTitlesV330 = {
2146
+ title: ({ elementId }) => getElementLabel3(elementId),
2147
+ subtitle: __7("Style edited", "elementor")
2148
+ };
2149
+ var defaultHistoryTitlesV331 = {
2150
+ title: ({ provider }) => {
2151
+ const providerLabel = provider.labels?.singular;
2152
+ return providerLabel ? capitalize(providerLabel) : __7("Style", "elementor");
2153
+ },
2154
+ subtitle: ({ provider, styleId, elementId, propDisplayName }) => {
2155
+ const styleLabel = provider.actions.get(styleId, { elementId })?.label;
2156
+ if (!styleLabel) {
2157
+ throw new Error(`Style ${styleId} not found`);
2158
+ }
2159
+ return __7(`%s$1 %s$2 edited`, "elementor").replace("%s$1", styleLabel).replace("%s$2", propDisplayName);
2160
+ }
2161
+ };
2162
+ var localStyleHistoryTitlesV331 = {
2163
+ title: ({ elementId }) => getElementLabel3(elementId),
2164
+ subtitle: ({ propDisplayName }) => (
2165
+ // translators: %s is the name of the style property being edited
2166
+ __7(`%s edited`, "elementor").replace("%s", propDisplayName)
2167
+ )
2168
+ };
2169
+ function capitalize(str) {
2170
+ return str.charAt(0).toUpperCase() + str.slice(1);
2171
+ }
2128
2172
 
2129
2173
  // src/hooks/use-styles-field.ts
2130
- function useStylesField(propName) {
2174
+ function useStylesField(propName, meta) {
2131
2175
  const { values, setValues, canEdit } = useStylesFields([propName]);
2132
2176
  const value = values?.[propName] ?? null;
2133
2177
  const setValue = (newValue) => {
2134
- setValues({
2135
- [propName]: newValue
2136
- });
2178
+ setValues({ [propName]: newValue }, meta);
2137
2179
  };
2138
2180
  return { value, setValue, canEdit };
2139
2181
  }
@@ -2143,12 +2185,12 @@ import * as React26 from "react";
2143
2185
  import { useBoundProp } from "@elementor/editor-controls";
2144
2186
  import { isEmpty as isEmpty2 } from "@elementor/editor-props";
2145
2187
  import { ELEMENTS_BASE_STYLES_PROVIDER_KEY as ELEMENTS_BASE_STYLES_PROVIDER_KEY4 } from "@elementor/editor-styles-repository";
2146
- import { isExperimentActive as isExperimentActive7 } from "@elementor/editor-v1-adapters";
2188
+ import { isExperimentActive as isExperimentActive8 } from "@elementor/editor-v1-adapters";
2147
2189
  import { Tooltip as Tooltip6 } from "@elementor/ui";
2148
2190
  import { __ as __11 } from "@wordpress/i18n";
2149
2191
 
2150
2192
  // src/styles-inheritance/consts.ts
2151
- import { isExperimentActive as isExperimentActive6 } from "@elementor/editor-v1-adapters";
2193
+ import { isExperimentActive as isExperimentActive7 } from "@elementor/editor-v1-adapters";
2152
2194
  var excludePropTypeTransformers = /* @__PURE__ */ new Set([
2153
2195
  "background-color-overlay",
2154
2196
  "background-image-overlay",
@@ -2161,7 +2203,7 @@ var excludePropTypeTransformers = /* @__PURE__ */ new Set([
2161
2203
  "image",
2162
2204
  "background-overlay"
2163
2205
  ]);
2164
- var isUsingIndicatorPopover = () => isExperimentActive6("e_v_3_30");
2206
+ var isUsingIndicatorPopover = () => isExperimentActive7("e_v_3_30");
2165
2207
 
2166
2208
  // src/styles-inheritance/components/styles-inheritance-infotip.tsx
2167
2209
  import * as React25 from "react";
@@ -2479,7 +2521,7 @@ function TooltipOrInfotip({
2479
2521
  // src/styles-inheritance/components/styles-inheritance-indicator.tsx
2480
2522
  var StylesInheritanceIndicator = () => {
2481
2523
  const { path, propType } = useBoundProp();
2482
- const isUsingNestedProps = isExperimentActive7(EXPERIMENTAL_FEATURES.V_3_30);
2524
+ const isUsingNestedProps = isExperimentActive8(EXPERIMENTAL_FEATURES.V_3_30);
2483
2525
  const finalPath = isUsingNestedProps ? path : path.slice(0, 1);
2484
2526
  const inheritanceChain = useStylesInheritanceChain(finalPath);
2485
2527
  if (!inheritanceChain.length) {
@@ -2492,7 +2534,7 @@ var Indicator = ({ inheritanceChain, path, propType }) => {
2492
2534
  const currentItem = currentStyleId ? getValueFromInheritanceChain(inheritanceChain, currentStyleId, currentStyleMeta) : null;
2493
2535
  const hasValue = !isEmpty2(currentItem?.value);
2494
2536
  const [actualStyle] = inheritanceChain;
2495
- if (!isExperimentActive7(EXPERIMENTAL_FEATURES.V_3_31) && actualStyle.provider === ELEMENTS_BASE_STYLES_PROVIDER_KEY4) {
2537
+ if (!isExperimentActive8(EXPERIMENTAL_FEATURES.V_3_31) && actualStyle.provider === ELEMENTS_BASE_STYLES_PROVIDER_KEY4) {
2496
2538
  return null;
2497
2539
  }
2498
2540
  const isFinalValue = currentItem === actualStyle;
@@ -2526,9 +2568,11 @@ var getLabel = ({ isFinalValue, hasValue }) => {
2526
2568
  };
2527
2569
 
2528
2570
  // src/controls-registry/styles-field.tsx
2529
- var StylesField = ({ bind, placeholder, children }) => {
2530
- const { value, setValue, canEdit } = useStylesField(bind);
2531
- const isVersion331Active = isExperimentActive8("e_v_3_31");
2571
+ var StylesField = ({ bind, placeholder, propDisplayName, children }) => {
2572
+ const { value, setValue, canEdit } = useStylesField(bind, {
2573
+ history: { propDisplayName }
2574
+ });
2575
+ const isVersion331Active = isExperimentActive9("e_v_3_31");
2532
2576
  const stylesInheritanceChain = useStylesInheritanceChain([bind]);
2533
2577
  const stylesSchema = getStylesSchema2();
2534
2578
  const propType = createTopLevelOjectType({ schema: stylesSchema });
@@ -2557,7 +2601,7 @@ var StylesField = ({ bind, placeholder, children }) => {
2557
2601
  value: values,
2558
2602
  setValue: setValues,
2559
2603
  placeholder: placeholderValues,
2560
- disabled: !canEdit
2604
+ isDisabled: () => !canEdit
2561
2605
  },
2562
2606
  /* @__PURE__ */ React27.createElement(PropKeyProvider2, { bind }, children)
2563
2607
  )
@@ -2729,6 +2773,7 @@ var BorderWidthField = () => {
2729
2773
  };
2730
2774
 
2731
2775
  // src/components/style-sections/border-section/border-field.tsx
2776
+ var BORDER_LABEL = __16("Border", "elementor");
2732
2777
  var initialBorder = {
2733
2778
  "border-width": { $$type: "size", value: { size: 1, unit: "px" } },
2734
2779
  "border-color": { $$type: "color", value: "#000000" },
@@ -2736,15 +2781,19 @@ var initialBorder = {
2736
2781
  };
2737
2782
  var BorderField = () => {
2738
2783
  const { values, setValues, canEdit } = useStylesFields(Object.keys(initialBorder));
2784
+ const meta = { history: { propDisplayName: BORDER_LABEL } };
2739
2785
  const addBorder = () => {
2740
- setValues(initialBorder);
2786
+ setValues(initialBorder, meta);
2741
2787
  };
2742
2788
  const removeBorder = () => {
2743
- setValues({
2744
- "border-width": null,
2745
- "border-color": null,
2746
- "border-style": null
2747
- });
2789
+ setValues(
2790
+ {
2791
+ "border-width": null,
2792
+ "border-color": null,
2793
+ "border-style": null
2794
+ },
2795
+ meta
2796
+ );
2748
2797
  };
2749
2798
  const hasBorder = Object.values(values ?? {}).some(Boolean);
2750
2799
  return /* @__PURE__ */ React37.createElement(
@@ -2754,7 +2803,7 @@ var BorderField = () => {
2754
2803
  onAdd: addBorder,
2755
2804
  onRemove: removeBorder,
2756
2805
  disabled: !canEdit,
2757
- renderLabel: () => /* @__PURE__ */ React37.createElement(ControlFormLabel3, null, __16("Border", "elementor"))
2806
+ renderLabel: () => /* @__PURE__ */ React37.createElement(ControlFormLabel3, null, BORDER_LABEL)
2758
2807
  },
2759
2808
  /* @__PURE__ */ React37.createElement(BorderWidthField, null),
2760
2809
  /* @__PURE__ */ React37.createElement(BorderColorField, null),
@@ -2835,8 +2884,8 @@ var BorderSection = () => /* @__PURE__ */ React40.createElement(SectionContent,
2835
2884
 
2836
2885
  // src/components/style-sections/effects-section/effects-section.tsx
2837
2886
  import * as React42 from "react";
2838
- import { BoxShadowRepeaterControl, FilterRepeaterControl } from "@elementor/editor-controls";
2839
- import { isExperimentActive as isExperimentActive9 } from "@elementor/editor-v1-adapters";
2887
+ import { BoxShadowRepeaterControl, FilterRepeaterControl, TransformRepeaterControl } from "@elementor/editor-controls";
2888
+ import { isExperimentActive as isExperimentActive10 } from "@elementor/editor-v1-adapters";
2840
2889
  import { __ as __19 } from "@wordpress/i18n";
2841
2890
 
2842
2891
  // src/components/style-sections/layout-section/opacity-control-field.tsx
@@ -2853,16 +2902,17 @@ var OpacityControlField = () => {
2853
2902
  // src/components/style-sections/effects-section/effects-section.tsx
2854
2903
  var BOX_SHADOW_LABEL = __19("Box shadow", "elementor");
2855
2904
  var FILTER_LABEL = __19("Filter", "elementor");
2905
+ var TRANSFORM_LABEL = __19("Transform", "elementor");
2856
2906
  var EffectsSection = () => {
2857
- const isVersion331Active = isExperimentActive9(EXPERIMENTAL_FEATURES.V_3_31);
2858
- return /* @__PURE__ */ React42.createElement(SectionContent, null, /* @__PURE__ */ React42.createElement(OpacityControlField, null), /* @__PURE__ */ React42.createElement(PanelDivider, null), /* @__PURE__ */ React42.createElement(StylesField, { bind: "box-shadow", propDisplayName: BOX_SHADOW_LABEL }, /* @__PURE__ */ React42.createElement(BoxShadowRepeaterControl, null)), isVersion331Active && /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement(PanelDivider, null), /* @__PURE__ */ React42.createElement(StylesField, { bind: "filter", propDisplayName: FILTER_LABEL }, /* @__PURE__ */ React42.createElement(FilterRepeaterControl, null))));
2907
+ const isVersion331Active = isExperimentActive10(EXPERIMENTAL_FEATURES.V_3_31);
2908
+ return /* @__PURE__ */ React42.createElement(SectionContent, null, isVersion331Active && /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement(OpacityControlField, null), /* @__PURE__ */ React42.createElement(PanelDivider, null)), /* @__PURE__ */ React42.createElement(StylesField, { bind: "box-shadow", propDisplayName: BOX_SHADOW_LABEL }, /* @__PURE__ */ React42.createElement(BoxShadowRepeaterControl, null)), isVersion331Active && /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement(PanelDivider, null), /* @__PURE__ */ React42.createElement(StylesField, { bind: "transform", propDisplayName: TRANSFORM_LABEL }, /* @__PURE__ */ React42.createElement(TransformRepeaterControl, null)), /* @__PURE__ */ React42.createElement(PanelDivider, null), /* @__PURE__ */ React42.createElement(StylesField, { bind: "filter", propDisplayName: FILTER_LABEL }, /* @__PURE__ */ React42.createElement(FilterRepeaterControl, null))));
2859
2909
  };
2860
2910
 
2861
2911
  // src/components/style-sections/layout-section/layout-section.tsx
2862
2912
  import * as React54 from "react";
2863
2913
  import { ControlFormLabel as ControlFormLabel4 } from "@elementor/editor-controls";
2864
2914
  import { useParentElement } from "@elementor/editor-elements";
2865
- import { __ as __30 } from "@wordpress/i18n";
2915
+ import { __ as __31 } from "@wordpress/i18n";
2866
2916
 
2867
2917
  // src/hooks/use-computed-style.ts
2868
2918
  import { __privateUseListenTo as useListenTo, commandEndEvent, windowEvent } from "@elementor/editor-v1-adapters";
@@ -2901,12 +2951,14 @@ import {
2901
2951
  JustifyTopIcon
2902
2952
  } from "@elementor/icons";
2903
2953
  import { withDirection as withDirection3 } from "@elementor/ui";
2904
- import { __ as __20 } from "@wordpress/i18n";
2954
+ import { __ as __21 } from "@wordpress/i18n";
2905
2955
 
2906
2956
  // src/components/style-sections/layout-section/utils/rotated-icon.tsx
2907
2957
  import * as React43 from "react";
2908
2958
  import { useRef as useRef5 } from "react";
2909
2959
  import { useTheme as useTheme2 } from "@elementor/ui";
2960
+ import { __ as __20 } from "@wordpress/i18n";
2961
+ var FLEX_DIRECTION_LABEL = __20("Flex direction", "elementor");
2910
2962
  var CLOCKWISE_ANGLES = {
2911
2963
  row: 0,
2912
2964
  column: 90,
@@ -2931,7 +2983,9 @@ var RotatedIcon = ({
2931
2983
  return /* @__PURE__ */ React43.createElement(Icon, { fontSize: size, sx: { transition: ".3s", rotate: `${rotate.current}deg` } });
2932
2984
  };
2933
2985
  var useGetTargetAngle = (isClockwise, offset, disableRotationForReversed, existingRef) => {
2934
- const { value: direction } = useStylesField("flex-direction");
2986
+ const { value: direction } = useStylesField("flex-direction", {
2987
+ history: { propDisplayName: FLEX_DIRECTION_LABEL }
2988
+ });
2935
2989
  const isRtl = "rtl" === useTheme2().direction;
2936
2990
  const rotationMultiplier = isRtl ? -1 : 1;
2937
2991
  const angleMap = isClockwise ? CLOCKWISE_ANGLES : COUNTER_CLOCKWISE_ANGLES;
@@ -2947,7 +3001,7 @@ var useGetTargetAngle = (isClockwise, offset, disableRotationForReversed, existi
2947
3001
  };
2948
3002
 
2949
3003
  // src/components/style-sections/layout-section/align-content-field.tsx
2950
- var ALIGN_CONTENT_LABEL = __20("Align content", "elementor");
3004
+ var ALIGN_CONTENT_LABEL = __21("Align content", "elementor");
2951
3005
  var StartIcon = withDirection3(JustifyTopIcon);
2952
3006
  var EndIcon = withDirection3(JustifyBottomIcon);
2953
3007
  var iconProps = {
@@ -2958,37 +3012,37 @@ var iconProps = {
2958
3012
  var options = [
2959
3013
  {
2960
3014
  value: "start",
2961
- label: __20("Start", "elementor"),
3015
+ label: __21("Start", "elementor"),
2962
3016
  renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(RotatedIcon, { icon: StartIcon, size, ...iconProps }),
2963
3017
  showTooltip: true
2964
3018
  },
2965
3019
  {
2966
3020
  value: "center",
2967
- label: __20("Center", "elementor"),
3021
+ label: __21("Center", "elementor"),
2968
3022
  renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(RotatedIcon, { icon: CenterIcon, size, ...iconProps }),
2969
3023
  showTooltip: true
2970
3024
  },
2971
3025
  {
2972
3026
  value: "end",
2973
- label: __20("End", "elementor"),
3027
+ label: __21("End", "elementor"),
2974
3028
  renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(RotatedIcon, { icon: EndIcon, size, ...iconProps }),
2975
3029
  showTooltip: true
2976
3030
  },
2977
3031
  {
2978
3032
  value: "space-between",
2979
- label: __20("Space between", "elementor"),
3033
+ label: __21("Space between", "elementor"),
2980
3034
  renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(RotatedIcon, { icon: BetweenIcon, size, ...iconProps }),
2981
3035
  showTooltip: true
2982
3036
  },
2983
3037
  {
2984
3038
  value: "space-around",
2985
- label: __20("Space around", "elementor"),
3039
+ label: __21("Space around", "elementor"),
2986
3040
  renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(RotatedIcon, { icon: AroundIcon, size, ...iconProps }),
2987
3041
  showTooltip: true
2988
3042
  },
2989
3043
  {
2990
3044
  value: "space-evenly",
2991
- label: __20("Space evenly", "elementor"),
3045
+ label: __21("Space evenly", "elementor"),
2992
3046
  renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(RotatedIcon, { icon: EvenlyIcon, size, ...iconProps }),
2993
3047
  showTooltip: true
2994
3048
  }
@@ -3005,8 +3059,8 @@ import {
3005
3059
  LayoutDistributeVerticalIcon as JustifyIcon
3006
3060
  } from "@elementor/icons";
3007
3061
  import { withDirection as withDirection4 } from "@elementor/ui";
3008
- import { __ as __21 } from "@wordpress/i18n";
3009
- var ALIGN_ITEMS_LABEL = __21("Align items", "elementor");
3062
+ import { __ as __22 } from "@wordpress/i18n";
3063
+ var ALIGN_ITEMS_LABEL = __22("Align items", "elementor");
3010
3064
  var StartIcon2 = withDirection4(LayoutAlignLeftIcon);
3011
3065
  var EndIcon2 = withDirection4(LayoutAlignRightIcon);
3012
3066
  var iconProps2 = {
@@ -3016,25 +3070,25 @@ var iconProps2 = {
3016
3070
  var options2 = [
3017
3071
  {
3018
3072
  value: "start",
3019
- label: __21("Start", "elementor"),
3073
+ label: __22("Start", "elementor"),
3020
3074
  renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(RotatedIcon, { icon: StartIcon2, size, ...iconProps2 }),
3021
3075
  showTooltip: true
3022
3076
  },
3023
3077
  {
3024
3078
  value: "center",
3025
- label: __21("Center", "elementor"),
3079
+ label: __22("Center", "elementor"),
3026
3080
  renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(RotatedIcon, { icon: CenterIcon2, size, ...iconProps2 }),
3027
3081
  showTooltip: true
3028
3082
  },
3029
3083
  {
3030
3084
  value: "end",
3031
- label: __21("End", "elementor"),
3085
+ label: __22("End", "elementor"),
3032
3086
  renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(RotatedIcon, { icon: EndIcon2, size, ...iconProps2 }),
3033
3087
  showTooltip: true
3034
3088
  },
3035
3089
  {
3036
3090
  value: "stretch",
3037
- label: __21("Stretch", "elementor"),
3091
+ label: __22("Stretch", "elementor"),
3038
3092
  renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(RotatedIcon, { icon: JustifyIcon, size, ...iconProps2 }),
3039
3093
  showTooltip: true
3040
3094
  }
@@ -3053,8 +3107,8 @@ import {
3053
3107
  LayoutDistributeVerticalIcon as JustifyIcon2
3054
3108
  } from "@elementor/icons";
3055
3109
  import { withDirection as withDirection5 } from "@elementor/ui";
3056
- import { __ as __22 } from "@wordpress/i18n";
3057
- var ALIGN_SELF_LABEL = __22("Align self", "elementor");
3110
+ import { __ as __23 } from "@wordpress/i18n";
3111
+ var ALIGN_SELF_LABEL = __23("Align self", "elementor");
3058
3112
  var ALIGN_SELF_CHILD_OFFSET_MAP = {
3059
3113
  row: 90,
3060
3114
  "row-reverse": 90,
@@ -3069,7 +3123,7 @@ var iconProps3 = {
3069
3123
  var getOptions = (parentStyleDirection) => [
3070
3124
  {
3071
3125
  value: "start",
3072
- label: __22("Start", "elementor"),
3126
+ label: __23("Start", "elementor"),
3073
3127
  renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(
3074
3128
  RotatedIcon,
3075
3129
  {
@@ -3083,7 +3137,7 @@ var getOptions = (parentStyleDirection) => [
3083
3137
  },
3084
3138
  {
3085
3139
  value: "center",
3086
- label: __22("Center", "elementor"),
3140
+ label: __23("Center", "elementor"),
3087
3141
  renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(
3088
3142
  RotatedIcon,
3089
3143
  {
@@ -3097,7 +3151,7 @@ var getOptions = (parentStyleDirection) => [
3097
3151
  },
3098
3152
  {
3099
3153
  value: "end",
3100
- label: __22("End", "elementor"),
3154
+ label: __23("End", "elementor"),
3101
3155
  renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(
3102
3156
  RotatedIcon,
3103
3157
  {
@@ -3111,7 +3165,7 @@ var getOptions = (parentStyleDirection) => [
3111
3165
  },
3112
3166
  {
3113
3167
  value: "stretch",
3114
- label: __22("Stretch", "elementor"),
3168
+ label: __23("Stretch", "elementor"),
3115
3169
  renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(
3116
3170
  RotatedIcon,
3117
3171
  {
@@ -3129,44 +3183,44 @@ var AlignSelfChild = ({ parentStyleDirection }) => /* @__PURE__ */ React46.creat
3129
3183
  // src/components/style-sections/layout-section/display-field.tsx
3130
3184
  import * as React47 from "react";
3131
3185
  import { ToggleControl as ToggleControl4 } from "@elementor/editor-controls";
3132
- import { isExperimentActive as isExperimentActive10 } from "@elementor/editor-v1-adapters";
3133
- import { __ as __23 } from "@wordpress/i18n";
3134
- var DISPLAY_LABEL = __23("Display", "elementor");
3186
+ import { isExperimentActive as isExperimentActive11 } from "@elementor/editor-v1-adapters";
3187
+ import { __ as __24 } from "@wordpress/i18n";
3188
+ var DISPLAY_LABEL = __24("Display", "elementor");
3135
3189
  var displayFieldItems = [
3136
3190
  {
3137
3191
  value: "block",
3138
- renderContent: () => __23("Block", "elementor"),
3139
- label: __23("Block", "elementor"),
3192
+ renderContent: () => __24("Block", "elementor"),
3193
+ label: __24("Block", "elementor"),
3140
3194
  showTooltip: true
3141
3195
  },
3142
3196
  {
3143
3197
  value: "flex",
3144
- renderContent: () => __23("Flex", "elementor"),
3145
- label: __23("Flex", "elementor"),
3198
+ renderContent: () => __24("Flex", "elementor"),
3199
+ label: __24("Flex", "elementor"),
3146
3200
  showTooltip: true
3147
3201
  },
3148
3202
  {
3149
3203
  value: "inline-block",
3150
- renderContent: () => __23("In-blk", "elementor"),
3151
- label: __23("Inline-block", "elementor"),
3204
+ renderContent: () => __24("In-blk", "elementor"),
3205
+ label: __24("Inline-block", "elementor"),
3152
3206
  showTooltip: true
3153
3207
  }
3154
3208
  ];
3155
3209
  var DisplayField = () => {
3156
- const isDisplayNoneFeatureActive = isExperimentActive10(EXPERIMENTAL_FEATURES.V_3_30);
3210
+ const isDisplayNoneFeatureActive = isExperimentActive11(EXPERIMENTAL_FEATURES.V_3_30);
3157
3211
  const items3 = [...displayFieldItems];
3158
3212
  if (isDisplayNoneFeatureActive) {
3159
3213
  items3.push({
3160
3214
  value: "none",
3161
- renderContent: () => __23("None", "elementor"),
3162
- label: __23("None", "elementor"),
3215
+ renderContent: () => __24("None", "elementor"),
3216
+ label: __24("None", "elementor"),
3163
3217
  showTooltip: true
3164
3218
  });
3165
3219
  }
3166
3220
  items3.push({
3167
3221
  value: "inline-flex",
3168
- renderContent: () => __23("In-flx", "elementor"),
3169
- label: __23("Inline-flex", "elementor"),
3222
+ renderContent: () => __24("In-flx", "elementor"),
3223
+ label: __24("Inline-flex", "elementor"),
3170
3224
  showTooltip: true
3171
3225
  });
3172
3226
  const placeholder = useDisplayPlaceholderValue();
@@ -3179,12 +3233,12 @@ import * as React48 from "react";
3179
3233
  import { ToggleControl as ToggleControl5 } from "@elementor/editor-controls";
3180
3234
  import { ArrowDownSmallIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpSmallIcon } from "@elementor/icons";
3181
3235
  import { withDirection as withDirection6 } from "@elementor/ui";
3182
- import { __ as __24 } from "@wordpress/i18n";
3183
- var FLEX_DIRECTION_LABEL = __24("Direction", "elementor");
3236
+ import { __ as __25 } from "@wordpress/i18n";
3237
+ var FLEX_DIRECTION_LABEL2 = __25("Direction", "elementor");
3184
3238
  var options3 = [
3185
3239
  {
3186
3240
  value: "row",
3187
- label: __24("Row", "elementor"),
3241
+ label: __25("Row", "elementor"),
3188
3242
  renderContent: ({ size }) => {
3189
3243
  const StartIcon5 = withDirection6(ArrowRightIcon);
3190
3244
  return /* @__PURE__ */ React48.createElement(StartIcon5, { fontSize: size });
@@ -3193,13 +3247,13 @@ var options3 = [
3193
3247
  },
3194
3248
  {
3195
3249
  value: "column",
3196
- label: __24("Column", "elementor"),
3250
+ label: __25("Column", "elementor"),
3197
3251
  renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(ArrowDownSmallIcon, { fontSize: size }),
3198
3252
  showTooltip: true
3199
3253
  },
3200
3254
  {
3201
3255
  value: "row-reverse",
3202
- label: __24("Reversed row", "elementor"),
3256
+ label: __25("Reversed row", "elementor"),
3203
3257
  renderContent: ({ size }) => {
3204
3258
  const EndIcon5 = withDirection6(ArrowLeftIcon);
3205
3259
  return /* @__PURE__ */ React48.createElement(EndIcon5, { fontSize: size });
@@ -3208,13 +3262,13 @@ var options3 = [
3208
3262
  },
3209
3263
  {
3210
3264
  value: "column-reverse",
3211
- label: __24("Reversed column", "elementor"),
3265
+ label: __25("Reversed column", "elementor"),
3212
3266
  renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(ArrowUpSmallIcon, { fontSize: size }),
3213
3267
  showTooltip: true
3214
3268
  }
3215
3269
  ];
3216
3270
  var FlexDirectionField = () => {
3217
- return /* @__PURE__ */ React48.createElement(StylesField, { bind: "flex-direction", propDisplayName: FLEX_DIRECTION_LABEL }, /* @__PURE__ */ React48.createElement(UiProviders, null, /* @__PURE__ */ React48.createElement(StylesFieldLayout, { label: FLEX_DIRECTION_LABEL }, /* @__PURE__ */ React48.createElement(ToggleControl5, { options: options3 }))));
3271
+ return /* @__PURE__ */ React48.createElement(StylesField, { bind: "flex-direction", propDisplayName: FLEX_DIRECTION_LABEL2 }, /* @__PURE__ */ React48.createElement(UiProviders, null, /* @__PURE__ */ React48.createElement(StylesFieldLayout, { label: FLEX_DIRECTION_LABEL2 }, /* @__PURE__ */ React48.createElement(ToggleControl5, { options: options3 }))));
3218
3272
  };
3219
3273
 
3220
3274
  // src/components/style-sections/layout-section/flex-order-field.tsx
@@ -3223,8 +3277,8 @@ import { useState as useState10 } from "react";
3223
3277
  import { ControlToggleButtonGroup, NumberControl } from "@elementor/editor-controls";
3224
3278
  import { ArrowDownSmallIcon as ArrowDownSmallIcon2, ArrowUpSmallIcon as ArrowUpSmallIcon2, PencilIcon } from "@elementor/icons";
3225
3279
  import { Grid as Grid2 } from "@elementor/ui";
3226
- import { __ as __25 } from "@wordpress/i18n";
3227
- var ORDER_LABEL = __25("Order", "elementor");
3280
+ import { __ as __26 } from "@wordpress/i18n";
3281
+ var ORDER_LABEL = __26("Order", "elementor");
3228
3282
  var FIRST_DEFAULT_VALUE = -99999;
3229
3283
  var LAST_DEFAULT_VALUE = 99999;
3230
3284
  var FIRST = "first";
@@ -3237,25 +3291,31 @@ var orderValueMap = {
3237
3291
  var items = [
3238
3292
  {
3239
3293
  value: FIRST,
3240
- label: __25("First", "elementor"),
3294
+ label: __26("First", "elementor"),
3241
3295
  renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(ArrowUpSmallIcon2, { fontSize: size }),
3242
3296
  showTooltip: true
3243
3297
  },
3244
3298
  {
3245
3299
  value: LAST,
3246
- label: __25("Last", "elementor"),
3300
+ label: __26("Last", "elementor"),
3247
3301
  renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(ArrowDownSmallIcon2, { fontSize: size }),
3248
3302
  showTooltip: true
3249
3303
  },
3250
3304
  {
3251
3305
  value: CUSTOM,
3252
- label: __25("Custom", "elementor"),
3306
+ label: __26("Custom", "elementor"),
3253
3307
  renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(PencilIcon, { fontSize: size }),
3254
3308
  showTooltip: true
3255
3309
  }
3256
3310
  ];
3257
3311
  var FlexOrderField = () => {
3258
- const { value: order, setValue: setOrder, canEdit } = useStylesField("order");
3312
+ const {
3313
+ value: order,
3314
+ setValue: setOrder,
3315
+ canEdit
3316
+ } = useStylesField("order", {
3317
+ history: { propDisplayName: ORDER_LABEL }
3318
+ });
3259
3319
  const [groupControlValue, setGroupControlValue] = useState10(getGroupControlValue(order?.value || null));
3260
3320
  const handleToggleButtonChange = (group) => {
3261
3321
  setGroupControlValue(group);
@@ -3265,7 +3325,7 @@ var FlexOrderField = () => {
3265
3325
  }
3266
3326
  setOrder({ $$type: "number", value: orderValueMap[group] });
3267
3327
  };
3268
- return /* @__PURE__ */ React49.createElement(StylesField, { bind: "order", propDisplayName: ORDER_LABEL }, /* @__PURE__ */ React49.createElement(UiProviders, null, /* @__PURE__ */ React49.createElement(StylesFieldLayout, { label: ORDER_LABEL }, /* @__PURE__ */ React49.createElement(SectionContent, null, /* @__PURE__ */ React49.createElement(
3328
+ return /* @__PURE__ */ React49.createElement(StylesField, { bind: "order", propDisplayName: ORDER_LABEL }, /* @__PURE__ */ React49.createElement(UiProviders, null, /* @__PURE__ */ React49.createElement(SectionContent, null, /* @__PURE__ */ React49.createElement(StylesFieldLayout, { label: ORDER_LABEL }, /* @__PURE__ */ React49.createElement(
3269
3329
  ControlToggleButtonGroup,
3270
3330
  {
3271
3331
  items,
@@ -3274,14 +3334,14 @@ var FlexOrderField = () => {
3274
3334
  exclusive: true,
3275
3335
  disabled: !canEdit
3276
3336
  }
3277
- ), CUSTOM === groupControlValue && /* @__PURE__ */ React49.createElement(Grid2, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React49.createElement(Grid2, { item: true, xs: 6 }, /* @__PURE__ */ React49.createElement(ControlLabel, null, __25("Custom order", "elementor"))), /* @__PURE__ */ React49.createElement(Grid2, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React49.createElement(
3337
+ )), CUSTOM === groupControlValue && /* @__PURE__ */ React49.createElement(Grid2, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React49.createElement(Grid2, { item: true, xs: 6 }, /* @__PURE__ */ React49.createElement(ControlLabel, null, __26("Custom order", "elementor"))), /* @__PURE__ */ React49.createElement(Grid2, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React49.createElement(
3278
3338
  NumberControl,
3279
3339
  {
3280
3340
  min: FIRST_DEFAULT_VALUE + 1,
3281
3341
  max: LAST_DEFAULT_VALUE - 1,
3282
3342
  shouldForceInt: true
3283
3343
  }
3284
- )))))));
3344
+ ))))));
3285
3345
  };
3286
3346
  var getGroupControlValue = (order) => {
3287
3347
  if (LAST_DEFAULT_VALUE === order) {
@@ -3303,25 +3363,25 @@ import {
3303
3363
  } from "@elementor/editor-controls";
3304
3364
  import { numberPropTypeUtil } from "@elementor/editor-props";
3305
3365
  import { ExpandIcon, PencilIcon as PencilIcon2, ShrinkIcon } from "@elementor/icons";
3306
- import { __ as __26 } from "@wordpress/i18n";
3307
- var FLEX_SIZE_LABEL = __26("Flex Size", "elementor");
3366
+ import { __ as __27 } from "@wordpress/i18n";
3367
+ var FLEX_SIZE_LABEL = __27("Flex Size", "elementor");
3308
3368
  var DEFAULT = 1;
3309
3369
  var items2 = [
3310
3370
  {
3311
3371
  value: "flex-grow",
3312
- label: __26("Grow", "elementor"),
3372
+ label: __27("Grow", "elementor"),
3313
3373
  renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(ExpandIcon, { fontSize: size }),
3314
3374
  showTooltip: true
3315
3375
  },
3316
3376
  {
3317
3377
  value: "flex-shrink",
3318
- label: __26("Shrink", "elementor"),
3378
+ label: __27("Shrink", "elementor"),
3319
3379
  renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(ShrinkIcon, { fontSize: size }),
3320
3380
  showTooltip: true
3321
3381
  },
3322
3382
  {
3323
3383
  value: "custom",
3324
- label: __26("Custom", "elementor"),
3384
+ label: __27("Custom", "elementor"),
3325
3385
  renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(PencilIcon2, { fontSize: size }),
3326
3386
  showTooltip: true
3327
3387
  }
@@ -3334,27 +3394,27 @@ var FlexSizeField = () => {
3334
3394
  const currentGroup = useMemo6(() => getActiveGroup({ grow, shrink, basis }), [grow, shrink, basis]), [activeGroup, setActiveGroup] = useState11(currentGroup);
3335
3395
  const onChangeGroup = (group = null) => {
3336
3396
  setActiveGroup(group);
3397
+ let props;
3337
3398
  if (!group || group === "custom") {
3338
- setValues({
3399
+ props = {
3339
3400
  "flex-basis": null,
3340
3401
  "flex-grow": null,
3341
3402
  "flex-shrink": null
3342
- });
3343
- return;
3344
- }
3345
- if (group === "flex-grow") {
3346
- setValues({
3403
+ };
3404
+ } else if (group === "flex-grow") {
3405
+ props = {
3347
3406
  "flex-basis": null,
3348
3407
  "flex-grow": numberPropTypeUtil.create(DEFAULT),
3349
3408
  "flex-shrink": null
3350
- });
3351
- return;
3409
+ };
3410
+ } else {
3411
+ props = {
3412
+ "flex-basis": null,
3413
+ "flex-grow": null,
3414
+ "flex-shrink": numberPropTypeUtil.create(DEFAULT)
3415
+ };
3352
3416
  }
3353
- setValues({
3354
- "flex-basis": null,
3355
- "flex-grow": null,
3356
- "flex-shrink": numberPropTypeUtil.create(DEFAULT)
3357
- });
3417
+ setValues(props, { history: { propDisplayName: FLEX_SIZE_LABEL } });
3358
3418
  };
3359
3419
  return /* @__PURE__ */ React50.createElement(UiProviders, null, /* @__PURE__ */ React50.createElement(SectionContent, null, /* @__PURE__ */ React50.createElement(StylesField, { bind: activeGroup ?? "", propDisplayName: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(StylesFieldLayout, { label: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(
3360
3420
  ControlToggleButtonGroup2,
@@ -3369,7 +3429,7 @@ var FlexSizeField = () => {
3369
3429
  };
3370
3430
  var FlexCustomField = () => {
3371
3431
  const flexBasisRowRef = useRef6(null);
3372
- return /* @__PURE__ */ React50.createElement(React50.Fragment, null, /* @__PURE__ */ React50.createElement(StylesField, { bind: "flex-grow", propDisplayName: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(StylesFieldLayout, { label: __26("Grow", "elementor") }, /* @__PURE__ */ React50.createElement(NumberControl2, { min: 0, shouldForceInt: true }))), /* @__PURE__ */ React50.createElement(StylesField, { bind: "flex-shrink", propDisplayName: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(StylesFieldLayout, { label: __26("Shrink", "elementor") }, /* @__PURE__ */ React50.createElement(NumberControl2, { min: 0, shouldForceInt: true }))), /* @__PURE__ */ React50.createElement(StylesField, { bind: "flex-basis", propDisplayName: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(StylesFieldLayout, { label: __26("Basis", "elementor"), ref: flexBasisRowRef }, /* @__PURE__ */ React50.createElement(SizeControl3, { extendedOptions: ["auto"], anchorRef: flexBasisRowRef }))));
3432
+ return /* @__PURE__ */ React50.createElement(React50.Fragment, null, /* @__PURE__ */ React50.createElement(StylesField, { bind: "flex-grow", propDisplayName: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(StylesFieldLayout, { label: __27("Grow", "elementor") }, /* @__PURE__ */ React50.createElement(NumberControl2, { min: 0, shouldForceInt: true }))), /* @__PURE__ */ React50.createElement(StylesField, { bind: "flex-shrink", propDisplayName: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(StylesFieldLayout, { label: __27("Shrink", "elementor") }, /* @__PURE__ */ React50.createElement(NumberControl2, { min: 0, shouldForceInt: true }))), /* @__PURE__ */ React50.createElement(StylesField, { bind: "flex-basis", propDisplayName: FLEX_SIZE_LABEL }, /* @__PURE__ */ React50.createElement(StylesFieldLayout, { label: __27("Basis", "elementor"), ref: flexBasisRowRef }, /* @__PURE__ */ React50.createElement(SizeControl3, { extendedOptions: ["auto"], anchorRef: flexBasisRowRef }))));
3373
3433
  };
3374
3434
  var getActiveGroup = ({
3375
3435
  grow,
@@ -3394,8 +3454,8 @@ var getActiveGroup = ({
3394
3454
  // src/components/style-sections/layout-section/gap-control-field.tsx
3395
3455
  import * as React51 from "react";
3396
3456
  import { GapControl } from "@elementor/editor-controls";
3397
- import { __ as __27 } from "@wordpress/i18n";
3398
- var GAPS_LABEL = __27("Gaps", "elementor");
3457
+ import { __ as __28 } from "@wordpress/i18n";
3458
+ var GAPS_LABEL = __28("Gaps", "elementor");
3399
3459
  var GapControlField = () => {
3400
3460
  return /* @__PURE__ */ React51.createElement(StylesField, { bind: "gap", propDisplayName: GAPS_LABEL }, /* @__PURE__ */ React51.createElement(GapControl, { label: GAPS_LABEL }));
3401
3461
  };
@@ -3412,8 +3472,8 @@ import {
3412
3472
  JustifyTopIcon as JustifyTopIcon2
3413
3473
  } from "@elementor/icons";
3414
3474
  import { withDirection as withDirection7 } from "@elementor/ui";
3415
- import { __ as __28 } from "@wordpress/i18n";
3416
- var JUSTIFY_CONTENT_LABEL = __28("Justify content", "elementor");
3475
+ import { __ as __29 } from "@wordpress/i18n";
3476
+ var JUSTIFY_CONTENT_LABEL = __29("Justify content", "elementor");
3417
3477
  var StartIcon4 = withDirection7(JustifyTopIcon2);
3418
3478
  var EndIcon4 = withDirection7(JustifyBottomIcon2);
3419
3479
  var iconProps4 = {
@@ -3423,37 +3483,37 @@ var iconProps4 = {
3423
3483
  var options4 = [
3424
3484
  {
3425
3485
  value: "flex-start",
3426
- label: __28("Start", "elementor"),
3486
+ label: __29("Start", "elementor"),
3427
3487
  renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: StartIcon4, size, ...iconProps4 }),
3428
3488
  showTooltip: true
3429
3489
  },
3430
3490
  {
3431
3491
  value: "center",
3432
- label: __28("Center", "elementor"),
3492
+ label: __29("Center", "elementor"),
3433
3493
  renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: CenterIcon4, size, ...iconProps4 }),
3434
3494
  showTooltip: true
3435
3495
  },
3436
3496
  {
3437
3497
  value: "flex-end",
3438
- label: __28("End", "elementor"),
3498
+ label: __29("End", "elementor"),
3439
3499
  renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: EndIcon4, size, ...iconProps4 }),
3440
3500
  showTooltip: true
3441
3501
  },
3442
3502
  {
3443
3503
  value: "space-between",
3444
- label: __28("Space between", "elementor"),
3504
+ label: __29("Space between", "elementor"),
3445
3505
  renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: BetweenIcon2, size, ...iconProps4 }),
3446
3506
  showTooltip: true
3447
3507
  },
3448
3508
  {
3449
3509
  value: "space-around",
3450
- label: __28("Space around", "elementor"),
3510
+ label: __29("Space around", "elementor"),
3451
3511
  renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: AroundIcon2, size, ...iconProps4 }),
3452
3512
  showTooltip: true
3453
3513
  },
3454
3514
  {
3455
3515
  value: "space-evenly",
3456
- label: __28("Space evenly", "elementor"),
3516
+ label: __29("Space evenly", "elementor"),
3457
3517
  renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: EvenlyIcon2, size, ...iconProps4 }),
3458
3518
  showTooltip: true
3459
3519
  }
@@ -3464,24 +3524,24 @@ var JustifyContentField = () => /* @__PURE__ */ React52.createElement(StylesFiel
3464
3524
  import * as React53 from "react";
3465
3525
  import { ToggleControl as ToggleControl7 } from "@elementor/editor-controls";
3466
3526
  import { ArrowBackIcon, ArrowForwardIcon, ArrowRightIcon as ArrowRightIcon2 } from "@elementor/icons";
3467
- import { __ as __29 } from "@wordpress/i18n";
3468
- var FLEX_WRAP_LABEL = __29("Wrap", "elementor");
3527
+ import { __ as __30 } from "@wordpress/i18n";
3528
+ var FLEX_WRAP_LABEL = __30("Wrap", "elementor");
3469
3529
  var options5 = [
3470
3530
  {
3471
3531
  value: "nowrap",
3472
- label: __29("No wrap", "elementor"),
3532
+ label: __30("No wrap", "elementor"),
3473
3533
  renderContent: ({ size }) => /* @__PURE__ */ React53.createElement(ArrowRightIcon2, { fontSize: size }),
3474
3534
  showTooltip: true
3475
3535
  },
3476
3536
  {
3477
3537
  value: "wrap",
3478
- label: __29("Wrap", "elementor"),
3538
+ label: __30("Wrap", "elementor"),
3479
3539
  renderContent: ({ size }) => /* @__PURE__ */ React53.createElement(ArrowBackIcon, { fontSize: size }),
3480
3540
  showTooltip: true
3481
3541
  },
3482
3542
  {
3483
3543
  value: "wrap-reverse",
3484
- label: __29("Reversed wrap", "elementor"),
3544
+ label: __30("Reversed wrap", "elementor"),
3485
3545
  renderContent: ({ size }) => /* @__PURE__ */ React53.createElement(ArrowForwardIcon, { fontSize: size }),
3486
3546
  showTooltip: true
3487
3547
  }
@@ -3491,8 +3551,12 @@ var WrapField = () => {
3491
3551
  };
3492
3552
 
3493
3553
  // src/components/style-sections/layout-section/layout-section.tsx
3554
+ var DISPLAY_LABEL2 = __31("Display", "elementor");
3555
+ var FLEX_WRAP_LABEL2 = __31("Flex wrap", "elementor");
3494
3556
  var LayoutSection = () => {
3495
- const { value: display } = useStylesField("display");
3557
+ const { value: display } = useStylesField("display", {
3558
+ history: { propDisplayName: DISPLAY_LABEL2 }
3559
+ });
3496
3560
  const displayPlaceholder = useDisplayPlaceholderValue();
3497
3561
  const isDisplayFlex = shouldDisplayFlexFields(display, displayPlaceholder);
3498
3562
  const { element } = useElement();
@@ -3502,10 +3566,12 @@ var LayoutSection = () => {
3502
3566
  return /* @__PURE__ */ React54.createElement(SectionContent, null, /* @__PURE__ */ React54.createElement(DisplayField, null), isDisplayFlex && /* @__PURE__ */ React54.createElement(FlexFields, null), "flex" === parentStyle?.display && /* @__PURE__ */ React54.createElement(FlexChildFields, { parentStyleDirection }));
3503
3567
  };
3504
3568
  var FlexFields = () => {
3505
- const { value: flexWrap } = useStylesField("flex-wrap");
3569
+ const { value: flexWrap } = useStylesField("flex-wrap", {
3570
+ history: { propDisplayName: FLEX_WRAP_LABEL2 }
3571
+ });
3506
3572
  return /* @__PURE__ */ React54.createElement(React54.Fragment, null, /* @__PURE__ */ React54.createElement(FlexDirectionField, null), /* @__PURE__ */ React54.createElement(JustifyContentField, null), /* @__PURE__ */ React54.createElement(AlignItemsField, null), /* @__PURE__ */ React54.createElement(PanelDivider, null), /* @__PURE__ */ React54.createElement(GapControlField, null), /* @__PURE__ */ React54.createElement(WrapField, null), ["wrap", "wrap-reverse"].includes(flexWrap?.value) && /* @__PURE__ */ React54.createElement(AlignContentField, null));
3507
3573
  };
3508
- var FlexChildFields = ({ parentStyleDirection }) => /* @__PURE__ */ React54.createElement(React54.Fragment, null, /* @__PURE__ */ React54.createElement(PanelDivider, null), /* @__PURE__ */ React54.createElement(ControlFormLabel4, null, __30("Flex child", "elementor")), /* @__PURE__ */ React54.createElement(AlignSelfChild, { parentStyleDirection }), /* @__PURE__ */ React54.createElement(FlexOrderField, null), /* @__PURE__ */ React54.createElement(FlexSizeField, null));
3574
+ var FlexChildFields = ({ parentStyleDirection }) => /* @__PURE__ */ React54.createElement(React54.Fragment, null, /* @__PURE__ */ React54.createElement(PanelDivider, null), /* @__PURE__ */ React54.createElement(ControlFormLabel4, null, __31("Flex child", "elementor")), /* @__PURE__ */ React54.createElement(AlignSelfChild, { parentStyleDirection }), /* @__PURE__ */ React54.createElement(FlexOrderField, null), /* @__PURE__ */ React54.createElement(FlexSizeField, null));
3509
3575
  var shouldDisplayFlexFields = (display, local) => {
3510
3576
  const value = display?.value ?? local?.value;
3511
3577
  if (!value) {
@@ -3516,8 +3582,9 @@ var shouldDisplayFlexFields = (display, local) => {
3516
3582
 
3517
3583
  // src/components/style-sections/position-section/position-section.tsx
3518
3584
  import * as React59 from "react";
3519
- import { isExperimentActive as isExperimentActive11 } from "@elementor/editor-v1-adapters";
3585
+ import { isExperimentActive as isExperimentActive12 } from "@elementor/editor-v1-adapters";
3520
3586
  import { useSessionStorage } from "@elementor/session";
3587
+ import { __ as __36 } from "@wordpress/i18n";
3521
3588
 
3522
3589
  // src/components/style-sections/position-section/dimensions-field.tsx
3523
3590
  import * as React55 from "react";
@@ -3525,7 +3592,7 @@ import { useRef as useRef7 } from "react";
3525
3592
  import { SizeControl as SizeControl4 } from "@elementor/editor-controls";
3526
3593
  import { SideBottomIcon as SideBottomIcon2, SideLeftIcon as SideLeftIcon2, SideRightIcon as SideRightIcon2, SideTopIcon as SideTopIcon2 } from "@elementor/icons";
3527
3594
  import { Grid as Grid3, Stack as Stack11, withDirection as withDirection8 } from "@elementor/ui";
3528
- import { __ as __31 } from "@wordpress/i18n";
3595
+ import { __ as __32 } from "@wordpress/i18n";
3529
3596
  var InlineStartIcon2 = withDirection8(SideLeftIcon2);
3530
3597
  var InlineEndIcon2 = withDirection8(SideRightIcon2);
3531
3598
  var sideIcons = {
@@ -3534,19 +3601,19 @@ var sideIcons = {
3534
3601
  "inset-inline-start": /* @__PURE__ */ React55.createElement(RotatedIcon, { icon: InlineStartIcon2, size: "tiny" }),
3535
3602
  "inset-inline-end": /* @__PURE__ */ React55.createElement(RotatedIcon, { icon: InlineEndIcon2, size: "tiny" })
3536
3603
  };
3537
- var getInlineStartLabel = (isSiteRtl) => isSiteRtl ? __31("Right", "elementor") : __31("Left", "elementor");
3538
- var getInlineEndLabel = (isSiteRtl) => isSiteRtl ? __31("Left", "elementor") : __31("Right", "elementor");
3604
+ var getInlineStartLabel = (isSiteRtl) => isSiteRtl ? __32("Right", "elementor") : __32("Left", "elementor");
3605
+ var getInlineEndLabel = (isSiteRtl) => isSiteRtl ? __32("Left", "elementor") : __32("Right", "elementor");
3539
3606
  var DimensionsField = () => {
3540
3607
  const { isSiteRtl } = useDirection();
3541
3608
  const rowRefs = [useRef7(null), useRef7(null)];
3542
- return /* @__PURE__ */ React55.createElement(UiProviders, null, /* @__PURE__ */ React55.createElement(Stack11, { direction: "row", gap: 2, flexWrap: "nowrap", ref: rowRefs[0] }, /* @__PURE__ */ React55.createElement(DimensionField, { side: "inset-block-start", label: __31("Top", "elementor"), rowRef: rowRefs[0] }), /* @__PURE__ */ React55.createElement(
3609
+ return /* @__PURE__ */ React55.createElement(UiProviders, null, /* @__PURE__ */ React55.createElement(Stack11, { direction: "row", gap: 2, flexWrap: "nowrap", ref: rowRefs[0] }, /* @__PURE__ */ React55.createElement(DimensionField, { side: "inset-block-start", label: __32("Top", "elementor"), rowRef: rowRefs[0] }), /* @__PURE__ */ React55.createElement(
3543
3610
  DimensionField,
3544
3611
  {
3545
3612
  side: "inset-inline-end",
3546
3613
  label: getInlineEndLabel(isSiteRtl),
3547
3614
  rowRef: rowRefs[0]
3548
3615
  }
3549
- )), /* @__PURE__ */ React55.createElement(Stack11, { direction: "row", gap: 2, flexWrap: "nowrap", ref: rowRefs[1] }, /* @__PURE__ */ React55.createElement(DimensionField, { side: "inset-block-end", label: __31("Bottom", "elementor"), rowRef: rowRefs[1] }), /* @__PURE__ */ React55.createElement(
3616
+ )), /* @__PURE__ */ React55.createElement(Stack11, { direction: "row", gap: 2, flexWrap: "nowrap", ref: rowRefs[1] }, /* @__PURE__ */ React55.createElement(DimensionField, { side: "inset-block-end", label: __32("Bottom", "elementor"), rowRef: rowRefs[1] }), /* @__PURE__ */ React55.createElement(
3550
3617
  DimensionField,
3551
3618
  {
3552
3619
  side: "inset-inline-start",
@@ -3565,8 +3632,8 @@ var DimensionField = ({
3565
3632
  import * as React56 from "react";
3566
3633
  import { useRef as useRef8 } from "react";
3567
3634
  import { SizeControl as SizeControl5 } from "@elementor/editor-controls";
3568
- import { __ as __32 } from "@wordpress/i18n";
3569
- var OFFSET_LABEL = __32("Anchor offset", "elementor");
3635
+ import { __ as __33 } from "@wordpress/i18n";
3636
+ var OFFSET_LABEL = __33("Anchor offset", "elementor");
3570
3637
  var UNITS = ["px", "em", "rem", "vw", "vh"];
3571
3638
  var OffsetField = () => {
3572
3639
  const rowRef = useRef8(null);
@@ -3576,14 +3643,14 @@ var OffsetField = () => {
3576
3643
  // src/components/style-sections/position-section/position-field.tsx
3577
3644
  import * as React57 from "react";
3578
3645
  import { SelectControl as SelectControl3 } from "@elementor/editor-controls";
3579
- import { __ as __33 } from "@wordpress/i18n";
3580
- var POSITION_LABEL = __33("Position", "elementor");
3646
+ import { __ as __34 } from "@wordpress/i18n";
3647
+ var POSITION_LABEL = __34("Position", "elementor");
3581
3648
  var positionOptions = [
3582
- { label: __33("Static", "elementor"), value: "static" },
3583
- { label: __33("Relative", "elementor"), value: "relative" },
3584
- { label: __33("Absolute", "elementor"), value: "absolute" },
3585
- { label: __33("Fixed", "elementor"), value: "fixed" },
3586
- { label: __33("Sticky", "elementor"), value: "sticky" }
3649
+ { label: __34("Static", "elementor"), value: "static" },
3650
+ { label: __34("Relative", "elementor"), value: "relative" },
3651
+ { label: __34("Absolute", "elementor"), value: "absolute" },
3652
+ { label: __34("Fixed", "elementor"), value: "fixed" },
3653
+ { label: __34("Sticky", "elementor"), value: "sticky" }
3587
3654
  ];
3588
3655
  var PositionField = ({ onChange }) => {
3589
3656
  return /* @__PURE__ */ React57.createElement(StylesField, { bind: "position", propDisplayName: POSITION_LABEL }, /* @__PURE__ */ React57.createElement(StylesFieldLayout, { label: POSITION_LABEL }, /* @__PURE__ */ React57.createElement(SelectControl3, { options: positionOptions, onChange })));
@@ -3592,15 +3659,19 @@ var PositionField = ({ onChange }) => {
3592
3659
  // src/components/style-sections/position-section/z-index-field.tsx
3593
3660
  import * as React58 from "react";
3594
3661
  import { NumberControl as NumberControl3 } from "@elementor/editor-controls";
3595
- import { __ as __34 } from "@wordpress/i18n";
3596
- var Z_INDEX_LABEL = __34("Z-index", "elementor");
3662
+ import { __ as __35 } from "@wordpress/i18n";
3663
+ var Z_INDEX_LABEL = __35("Z-index", "elementor");
3597
3664
  var ZIndexField = () => {
3598
3665
  return /* @__PURE__ */ React58.createElement(StylesField, { bind: "z-index", propDisplayName: Z_INDEX_LABEL }, /* @__PURE__ */ React58.createElement(StylesFieldLayout, { label: Z_INDEX_LABEL }, /* @__PURE__ */ React58.createElement(NumberControl3, null)));
3599
3666
  };
3600
3667
 
3601
3668
  // src/components/style-sections/position-section/position-section.tsx
3669
+ var POSITION_LABEL2 = __36("Position", "elementor");
3670
+ var DIMENSIONS_LABEL = __36("Dimensions", "elementor");
3602
3671
  var PositionSection = () => {
3603
- const { value: positionValue } = useStylesField("position");
3672
+ const { value: positionValue } = useStylesField("position", {
3673
+ history: { propDisplayName: POSITION_LABEL2 }
3674
+ });
3604
3675
  const { values: dimensions, setValues: setDimensions } = useStylesFields([
3605
3676
  "inset-block-start",
3606
3677
  "inset-block-end",
@@ -3608,21 +3679,25 @@ var PositionSection = () => {
3608
3679
  "inset-inline-end"
3609
3680
  ]);
3610
3681
  const [dimensionsValuesFromHistory, updateDimensionsHistory, clearDimensionsHistory] = usePersistDimensions();
3611
- const isCssIdFeatureActive = isExperimentActive11("e_v_3_30");
3682
+ const isCssIdFeatureActive = isExperimentActive12("e_v_3_30");
3612
3683
  const onPositionChange = (newPosition, previousPosition) => {
3684
+ const meta = { history: { propDisplayName: DIMENSIONS_LABEL } };
3613
3685
  if (newPosition === "static") {
3614
3686
  if (dimensions) {
3615
3687
  updateDimensionsHistory(dimensions);
3616
- setDimensions({
3617
- "inset-block-start": void 0,
3618
- "inset-block-end": void 0,
3619
- "inset-inline-start": void 0,
3620
- "inset-inline-end": void 0
3621
- });
3688
+ setDimensions(
3689
+ {
3690
+ "inset-block-start": void 0,
3691
+ "inset-block-end": void 0,
3692
+ "inset-inline-start": void 0,
3693
+ "inset-inline-end": void 0
3694
+ },
3695
+ meta
3696
+ );
3622
3697
  }
3623
3698
  } else if (previousPosition === "static") {
3624
3699
  if (dimensionsValuesFromHistory) {
3625
- setDimensions(dimensionsValuesFromHistory);
3700
+ setDimensions(dimensionsValuesFromHistory, meta);
3626
3701
  clearDimensionsHistory();
3627
3702
  }
3628
3703
  }
@@ -3641,19 +3716,19 @@ var usePersistDimensions = () => {
3641
3716
  import * as React65 from "react";
3642
3717
  import { useRef as useRef9 } from "react";
3643
3718
  import { AspectRatioControl, SizeControl as SizeControl6 } from "@elementor/editor-controls";
3644
- import { isExperimentActive as isExperimentActive13 } from "@elementor/editor-v1-adapters";
3719
+ import { isExperimentActive as isExperimentActive14 } from "@elementor/editor-v1-adapters";
3645
3720
  import { Grid as Grid4, Stack as Stack13 } from "@elementor/ui";
3646
- import { __ as __39 } from "@wordpress/i18n";
3721
+ import { __ as __41 } from "@wordpress/i18n";
3647
3722
 
3648
3723
  // src/components/style-tab-collapsible-content.tsx
3649
3724
  import * as React61 from "react";
3650
- import { isExperimentActive as isExperimentActive12 } from "@elementor/editor-v1-adapters";
3725
+ import { isExperimentActive as isExperimentActive13 } from "@elementor/editor-v1-adapters";
3651
3726
 
3652
3727
  // src/styles-inheritance/components/styles-inheritance-section-indicators.tsx
3653
3728
  import * as React60 from "react";
3654
- import { isElementsStylesProvider as isElementsStylesProvider3 } from "@elementor/editor-styles-repository";
3729
+ import { isElementsStylesProvider as isElementsStylesProvider4 } from "@elementor/editor-styles-repository";
3655
3730
  import { Stack as Stack12, Tooltip as Tooltip7 } from "@elementor/ui";
3656
- import { __ as __35 } from "@wordpress/i18n";
3731
+ import { __ as __37 } from "@wordpress/i18n";
3657
3732
  var StylesInheritanceSectionIndicators = ({ fields }) => {
3658
3733
  const { id, meta, provider } = useStyle();
3659
3734
  const snapshot = useStylesInheritanceSnapshot();
@@ -3664,13 +3739,13 @@ var StylesInheritanceSectionIndicators = ({ fields }) => {
3664
3739
  if (!hasValues && !hasOverrides) {
3665
3740
  return null;
3666
3741
  }
3667
- const hasValueLabel = __35("Has effective styles", "elementor");
3668
- const hasOverridesLabel = __35("Has overridden styles", "elementor");
3669
- return /* @__PURE__ */ React60.createElement(Tooltip7, { title: __35("Has styles", "elementor"), placement: "top" }, /* @__PURE__ */ React60.createElement(Stack12, { direction: "row", sx: { "& > *": { marginInlineStart: -0.25 } }, role: "list" }, hasValues && provider && /* @__PURE__ */ React60.createElement(
3742
+ const hasValueLabel = __37("Has effective styles", "elementor");
3743
+ const hasOverridesLabel = __37("Has overridden styles", "elementor");
3744
+ return /* @__PURE__ */ React60.createElement(Tooltip7, { title: __37("Has styles", "elementor"), placement: "top" }, /* @__PURE__ */ React60.createElement(Stack12, { direction: "row", sx: { "& > *": { marginInlineStart: -0.25 } }, role: "list" }, hasValues && provider && /* @__PURE__ */ React60.createElement(
3670
3745
  StyleIndicator,
3671
3746
  {
3672
3747
  getColor: getStylesProviderThemeColor(provider.getKey()),
3673
- "data-variant": isElementsStylesProvider3(provider.getKey()) ? "local" : "global",
3748
+ "data-variant": isElementsStylesProvider4(provider.getKey()) ? "local" : "global",
3674
3749
  role: "listitem",
3675
3750
  "aria-label": hasValueLabel
3676
3751
  }
@@ -3717,7 +3792,7 @@ var StyleTabCollapsibleContent = ({ fields = [], children }) => {
3717
3792
  return /* @__PURE__ */ React61.createElement(CollapsibleContent, { titleEnd: getStylesInheritanceIndicators(fields) }, children);
3718
3793
  };
3719
3794
  function getStylesInheritanceIndicators(fields) {
3720
- const isUsingFieldsIndicators = isExperimentActive12(EXPERIMENTAL_FEATURES.V_3_30);
3795
+ const isUsingFieldsIndicators = isExperimentActive13(EXPERIMENTAL_FEATURES.V_3_30);
3721
3796
  if (fields.length === 0 || !isUsingFieldsIndicators) {
3722
3797
  return null;
3723
3798
  }
@@ -3727,14 +3802,14 @@ function getStylesInheritanceIndicators(fields) {
3727
3802
  // src/components/style-sections/size-section/object-fit-field.tsx
3728
3803
  import * as React62 from "react";
3729
3804
  import { SelectControl as SelectControl4 } from "@elementor/editor-controls";
3730
- import { __ as __36 } from "@wordpress/i18n";
3731
- var OBJECT_FIT_LABEL = __36("Object fit", "elementor");
3805
+ import { __ as __38 } from "@wordpress/i18n";
3806
+ var OBJECT_FIT_LABEL = __38("Object fit", "elementor");
3732
3807
  var positionOptions2 = [
3733
- { label: __36("Fill", "elementor"), value: "fill" },
3734
- { label: __36("Cover", "elementor"), value: "cover" },
3735
- { label: __36("Contain", "elementor"), value: "contain" },
3736
- { label: __36("None", "elementor"), value: "none" },
3737
- { label: __36("Scale down", "elementor"), value: "scale-down" }
3808
+ { label: __38("Fill", "elementor"), value: "fill" },
3809
+ { label: __38("Cover", "elementor"), value: "cover" },
3810
+ { label: __38("Contain", "elementor"), value: "contain" },
3811
+ { label: __38("None", "elementor"), value: "none" },
3812
+ { label: __38("Scale down", "elementor"), value: "scale-down" }
3738
3813
  ];
3739
3814
  var ObjectFitField = () => {
3740
3815
  return /* @__PURE__ */ React62.createElement(StylesField, { bind: "object-fit", propDisplayName: OBJECT_FIT_LABEL }, /* @__PURE__ */ React62.createElement(StylesFieldLayout, { label: OBJECT_FIT_LABEL }, /* @__PURE__ */ React62.createElement(SelectControl4, { options: positionOptions2 })));
@@ -3743,8 +3818,8 @@ var ObjectFitField = () => {
3743
3818
  // src/components/style-sections/size-section/object-position-field.tsx
3744
3819
  import * as React63 from "react";
3745
3820
  import { PositionControl } from "@elementor/editor-controls";
3746
- import { __ as __37 } from "@wordpress/i18n";
3747
- var OBJECT_POSITION_LABEL = __37("Object position", "elementor");
3821
+ import { __ as __39 } from "@wordpress/i18n";
3822
+ var OBJECT_POSITION_LABEL = __39("Object position", "elementor");
3748
3823
  var ObjectPositionField = () => {
3749
3824
  return /* @__PURE__ */ React63.createElement(StylesField, { bind: "object-position", propDisplayName: OBJECT_POSITION_LABEL }, /* @__PURE__ */ React63.createElement(PositionControl, null));
3750
3825
  };
@@ -3753,24 +3828,24 @@ var ObjectPositionField = () => {
3753
3828
  import * as React64 from "react";
3754
3829
  import { ToggleControl as ToggleControl8 } from "@elementor/editor-controls";
3755
3830
  import { EyeIcon, EyeOffIcon, LetterAIcon } from "@elementor/icons";
3756
- import { __ as __38 } from "@wordpress/i18n";
3757
- var OVERFLOW_LABEL = __38("Overflow", "elementor");
3831
+ import { __ as __40 } from "@wordpress/i18n";
3832
+ var OVERFLOW_LABEL = __40("Overflow", "elementor");
3758
3833
  var options6 = [
3759
3834
  {
3760
3835
  value: "visible",
3761
- label: __38("Visible", "elementor"),
3836
+ label: __40("Visible", "elementor"),
3762
3837
  renderContent: ({ size }) => /* @__PURE__ */ React64.createElement(EyeIcon, { fontSize: size }),
3763
3838
  showTooltip: true
3764
3839
  },
3765
3840
  {
3766
3841
  value: "hidden",
3767
- label: __38("Hidden", "elementor"),
3842
+ label: __40("Hidden", "elementor"),
3768
3843
  renderContent: ({ size }) => /* @__PURE__ */ React64.createElement(EyeOffIcon, { fontSize: size }),
3769
3844
  showTooltip: true
3770
3845
  },
3771
3846
  {
3772
3847
  value: "auto",
3773
- label: __38("Auto", "elementor"),
3848
+ label: __40("Auto", "elementor"),
3774
3849
  renderContent: ({ size }) => /* @__PURE__ */ React64.createElement(LetterAIcon, { fontSize: size }),
3775
3850
  showTooltip: true
3776
3851
  }
@@ -3785,40 +3860,43 @@ var CssSizeProps = [
3785
3860
  [
3786
3861
  {
3787
3862
  bind: "width",
3788
- label: __39("Width", "elementor")
3863
+ label: __41("Width", "elementor")
3789
3864
  },
3790
3865
  {
3791
3866
  bind: "height",
3792
- label: __39("Height", "elementor")
3867
+ label: __41("Height", "elementor")
3793
3868
  }
3794
3869
  ],
3795
3870
  [
3796
3871
  {
3797
3872
  bind: "min-width",
3798
- label: __39("Min width", "elementor")
3873
+ label: __41("Min width", "elementor")
3799
3874
  },
3800
3875
  {
3801
3876
  bind: "min-height",
3802
- label: __39("Min height", "elementor")
3877
+ label: __41("Min height", "elementor")
3803
3878
  }
3804
3879
  ],
3805
3880
  [
3806
3881
  {
3807
3882
  bind: "max-width",
3808
- label: __39("Max width", "elementor")
3883
+ label: __41("Max width", "elementor")
3809
3884
  },
3810
3885
  {
3811
3886
  bind: "max-height",
3812
- label: __39("Max height", "elementor")
3887
+ label: __41("Max height", "elementor")
3813
3888
  }
3814
3889
  ]
3815
3890
  ];
3816
- var ASPECT_RATIO_LABEL = __39("Aspect Ratio", "elementor");
3891
+ var ASPECT_RATIO_LABEL = __41("Aspect Ratio", "elementor");
3892
+ var OBJECT_FIT_LABEL2 = __41("Object fit", "elementor");
3817
3893
  var SizeSection = () => {
3818
- const { value: fitValue } = useStylesField("object-fit");
3894
+ const { value: fitValue } = useStylesField("object-fit", {
3895
+ history: { propDisplayName: OBJECT_FIT_LABEL2 }
3896
+ });
3819
3897
  const isNotFill = fitValue && fitValue?.value !== "fill";
3820
3898
  const gridRowRefs = [useRef9(null), useRef9(null), useRef9(null)];
3821
- const isVersion330Active = isExperimentActive13(EXPERIMENT_ID);
3899
+ const isVersion330Active = isExperimentActive14(EXPERIMENT_ID);
3822
3900
  return /* @__PURE__ */ React65.createElement(SectionContent, null, CssSizeProps.map((row, rowIndex) => /* @__PURE__ */ React65.createElement(Grid4, { key: rowIndex, container: true, gap: 2, flexWrap: "nowrap", ref: gridRowRefs[rowIndex] }, row.map((props) => /* @__PURE__ */ React65.createElement(Grid4, { item: true, xs: 6, key: props.bind }, /* @__PURE__ */ React65.createElement(SizeField, { ...props, rowRef: gridRowRefs[rowIndex], extendedOptions: ["auto"] }))))), /* @__PURE__ */ React65.createElement(PanelDivider, null), /* @__PURE__ */ React65.createElement(Stack13, null, /* @__PURE__ */ React65.createElement(OverflowField, null)), isVersion330Active && /* @__PURE__ */ React65.createElement(StyleTabCollapsibleContent, { fields: ["aspect-ratio", "object-fit"] }, /* @__PURE__ */ React65.createElement(Stack13, { gap: 2, pt: 2 }, /* @__PURE__ */ React65.createElement(StylesField, { bind: "aspect-ratio", propDisplayName: ASPECT_RATIO_LABEL }, /* @__PURE__ */ React65.createElement(AspectRatioControl, { label: ASPECT_RATIO_LABEL })), /* @__PURE__ */ React65.createElement(PanelDivider, null), /* @__PURE__ */ React65.createElement(ObjectFitField, null), isNotFill && /* @__PURE__ */ React65.createElement(Grid4, { item: true, xs: 6 }, /* @__PURE__ */ React65.createElement(ObjectPositionField, null)))));
3823
3901
  };
3824
3902
  var SizeField = ({ label, bind, rowRef, extendedOptions }) => {
@@ -3828,9 +3906,9 @@ var SizeField = ({ label, bind, rowRef, extendedOptions }) => {
3828
3906
  // src/components/style-sections/spacing-section/spacing-section.tsx
3829
3907
  import * as React66 from "react";
3830
3908
  import { LinkedDimensionsControl } from "@elementor/editor-controls";
3831
- import { __ as __40 } from "@wordpress/i18n";
3832
- var MARGIN_LABEL = __40("Margin", "elementor");
3833
- var PADDING_LABEL = __40("Padding", "elementor");
3909
+ import { __ as __42 } from "@wordpress/i18n";
3910
+ var MARGIN_LABEL = __42("Margin", "elementor");
3911
+ var PADDING_LABEL = __42("Padding", "elementor");
3834
3912
  var SpacingSection = () => {
3835
3913
  const { isSiteRtl } = useDirection();
3836
3914
  return /* @__PURE__ */ React66.createElement(SectionContent, null, /* @__PURE__ */ React66.createElement(StylesField, { bind: "margin", propDisplayName: MARGIN_LABEL }, /* @__PURE__ */ React66.createElement(
@@ -3845,13 +3923,14 @@ var SpacingSection = () => {
3845
3923
 
3846
3924
  // src/components/style-sections/typography-section/typography-section.tsx
3847
3925
  import * as React82 from "react";
3848
- import { isExperimentActive as isExperimentActive14 } from "@elementor/editor-v1-adapters";
3926
+ import { isExperimentActive as isExperimentActive15 } from "@elementor/editor-v1-adapters";
3927
+ import { __ as __59 } from "@wordpress/i18n";
3849
3928
 
3850
3929
  // src/components/style-sections/typography-section/column-count-field.tsx
3851
3930
  import * as React67 from "react";
3852
3931
  import { NumberControl as NumberControl4 } from "@elementor/editor-controls";
3853
- import { __ as __41 } from "@wordpress/i18n";
3854
- var COLUMN_COUNT_LABEL = __41("Columns", "elementor");
3932
+ import { __ as __43 } from "@wordpress/i18n";
3933
+ var COLUMN_COUNT_LABEL = __43("Columns", "elementor");
3855
3934
  var ColumnCountField = () => {
3856
3935
  return /* @__PURE__ */ React67.createElement(StylesField, { bind: "column-count", propDisplayName: COLUMN_COUNT_LABEL }, /* @__PURE__ */ React67.createElement(StylesFieldLayout, { label: COLUMN_COUNT_LABEL }, /* @__PURE__ */ React67.createElement(NumberControl4, { shouldForceInt: true, min: 0, step: 1 })));
3857
3936
  };
@@ -3860,8 +3939,8 @@ var ColumnCountField = () => {
3860
3939
  import * as React68 from "react";
3861
3940
  import { useRef as useRef10 } from "react";
3862
3941
  import { SizeControl as SizeControl7 } from "@elementor/editor-controls";
3863
- import { __ as __42 } from "@wordpress/i18n";
3864
- var COLUMN_GAP_LABEL = __42("Column gap", "elementor");
3942
+ import { __ as __44 } from "@wordpress/i18n";
3943
+ var COLUMN_GAP_LABEL = __44("Column gap", "elementor");
3865
3944
  var ColumnGapField = () => {
3866
3945
  const rowRef = useRef10(null);
3867
3946
  return /* @__PURE__ */ React68.createElement(StylesField, { bind: "column-gap", propDisplayName: COLUMN_GAP_LABEL }, /* @__PURE__ */ React68.createElement(StylesFieldLayout, { label: COLUMN_GAP_LABEL, ref: rowRef }, /* @__PURE__ */ React68.createElement(SizeControl7, { anchorRef: rowRef })));
@@ -3870,15 +3949,15 @@ var ColumnGapField = () => {
3870
3949
  // src/components/style-sections/typography-section/font-family-field.tsx
3871
3950
  import * as React69 from "react";
3872
3951
  import { FontFamilyControl } from "@elementor/editor-controls";
3873
- import { __ as __44 } from "@wordpress/i18n";
3952
+ import { __ as __46 } from "@wordpress/i18n";
3874
3953
 
3875
3954
  // src/components/style-sections/typography-section/hooks/use-font-families.ts
3876
3955
  import { useMemo as useMemo7 } from "react";
3877
- import { __ as __43 } from "@wordpress/i18n";
3956
+ import { __ as __45 } from "@wordpress/i18n";
3878
3957
  var supportedCategories = {
3879
- system: __43("System", "elementor"),
3880
- custom: __43("Custom Fonts", "elementor"),
3881
- googlefonts: __43("Google Fonts", "elementor")
3958
+ system: __45("System", "elementor"),
3959
+ custom: __45("Custom Fonts", "elementor"),
3960
+ googlefonts: __45("Google Fonts", "elementor")
3882
3961
  };
3883
3962
  var getFontFamilies = () => {
3884
3963
  const { controls } = getElementorConfig();
@@ -3910,7 +3989,7 @@ var useFontFamilies = () => {
3910
3989
  };
3911
3990
 
3912
3991
  // src/components/style-sections/typography-section/font-family-field.tsx
3913
- var FONT_FAMILY_LABEL = __44("Font family", "elementor");
3992
+ var FONT_FAMILY_LABEL = __46("Font family", "elementor");
3914
3993
  var FontFamilyField = () => {
3915
3994
  const fontFamilies = useFontFamilies();
3916
3995
  const sectionWidth = useSectionWidth();
@@ -3924,8 +4003,8 @@ var FontFamilyField = () => {
3924
4003
  import * as React70 from "react";
3925
4004
  import { useRef as useRef11 } from "react";
3926
4005
  import { SizeControl as SizeControl8 } from "@elementor/editor-controls";
3927
- import { __ as __45 } from "@wordpress/i18n";
3928
- var FONT_SIZE_LABEL = __45("Font size", "elementor");
4006
+ import { __ as __47 } from "@wordpress/i18n";
4007
+ var FONT_SIZE_LABEL = __47("Font size", "elementor");
3929
4008
  var FontSizeField = () => {
3930
4009
  const rowRef = useRef11(null);
3931
4010
  return /* @__PURE__ */ React70.createElement(StylesField, { bind: "font-size", propDisplayName: FONT_SIZE_LABEL }, /* @__PURE__ */ React70.createElement(StylesFieldLayout, { label: FONT_SIZE_LABEL, ref: rowRef }, /* @__PURE__ */ React70.createElement(SizeControl8, { anchorRef: rowRef })));
@@ -3935,18 +4014,18 @@ var FontSizeField = () => {
3935
4014
  import * as React71 from "react";
3936
4015
  import { ToggleControl as ToggleControl9 } from "@elementor/editor-controls";
3937
4016
  import { ItalicIcon, MinusIcon as MinusIcon2 } from "@elementor/icons";
3938
- import { __ as __46 } from "@wordpress/i18n";
3939
- var FONT_STYLE_LABEL = __46("Font style", "elementor");
4017
+ import { __ as __48 } from "@wordpress/i18n";
4018
+ var FONT_STYLE_LABEL = __48("Font style", "elementor");
3940
4019
  var options7 = [
3941
4020
  {
3942
4021
  value: "normal",
3943
- label: __46("Normal", "elementor"),
4022
+ label: __48("Normal", "elementor"),
3944
4023
  renderContent: ({ size }) => /* @__PURE__ */ React71.createElement(MinusIcon2, { fontSize: size }),
3945
4024
  showTooltip: true
3946
4025
  },
3947
4026
  {
3948
4027
  value: "italic",
3949
- label: __46("Italic", "elementor"),
4028
+ label: __48("Italic", "elementor"),
3950
4029
  renderContent: ({ size }) => /* @__PURE__ */ React71.createElement(ItalicIcon, { fontSize: size }),
3951
4030
  showTooltip: true
3952
4031
  }
@@ -3958,18 +4037,18 @@ var FontStyleField = () => {
3958
4037
  // src/components/style-sections/typography-section/font-weight-field.tsx
3959
4038
  import * as React72 from "react";
3960
4039
  import { SelectControl as SelectControl5 } from "@elementor/editor-controls";
3961
- import { __ as __47 } from "@wordpress/i18n";
3962
- var FONT_WEIGHT_LABEL = __47("Font weight", "elementor");
4040
+ import { __ as __49 } from "@wordpress/i18n";
4041
+ var FONT_WEIGHT_LABEL = __49("Font weight", "elementor");
3963
4042
  var fontWeightOptions = [
3964
- { value: "100", label: __47("100 - Thin", "elementor") },
3965
- { value: "200", label: __47("200 - Extra light", "elementor") },
3966
- { value: "300", label: __47("300 - Light", "elementor") },
3967
- { value: "400", label: __47("400 - Normal", "elementor") },
3968
- { value: "500", label: __47("500 - Medium", "elementor") },
3969
- { value: "600", label: __47("600 - Semi bold", "elementor") },
3970
- { value: "700", label: __47("700 - Bold", "elementor") },
3971
- { value: "800", label: __47("800 - Extra bold", "elementor") },
3972
- { value: "900", label: __47("900 - Black", "elementor") }
4043
+ { value: "100", label: __49("100 - Thin", "elementor") },
4044
+ { value: "200", label: __49("200 - Extra light", "elementor") },
4045
+ { value: "300", label: __49("300 - Light", "elementor") },
4046
+ { value: "400", label: __49("400 - Normal", "elementor") },
4047
+ { value: "500", label: __49("500 - Medium", "elementor") },
4048
+ { value: "600", label: __49("600 - Semi bold", "elementor") },
4049
+ { value: "700", label: __49("700 - Bold", "elementor") },
4050
+ { value: "800", label: __49("800 - Extra bold", "elementor") },
4051
+ { value: "900", label: __49("900 - Black", "elementor") }
3973
4052
  ];
3974
4053
  var FontWeightField = () => {
3975
4054
  return /* @__PURE__ */ React72.createElement(StylesField, { bind: "font-weight", propDisplayName: FONT_WEIGHT_LABEL }, /* @__PURE__ */ React72.createElement(StylesFieldLayout, { label: FONT_WEIGHT_LABEL }, /* @__PURE__ */ React72.createElement(SelectControl5, { options: fontWeightOptions })));
@@ -3979,8 +4058,8 @@ var FontWeightField = () => {
3979
4058
  import * as React73 from "react";
3980
4059
  import { useRef as useRef12 } from "react";
3981
4060
  import { SizeControl as SizeControl9 } from "@elementor/editor-controls";
3982
- import { __ as __48 } from "@wordpress/i18n";
3983
- var LETTER_SPACING_LABEL = __48("Letter spacing", "elementor");
4061
+ import { __ as __50 } from "@wordpress/i18n";
4062
+ var LETTER_SPACING_LABEL = __50("Letter spacing", "elementor");
3984
4063
  var LetterSpacingField = () => {
3985
4064
  const rowRef = useRef12(null);
3986
4065
  return /* @__PURE__ */ React73.createElement(StylesField, { bind: "letter-spacing", propDisplayName: LETTER_SPACING_LABEL }, /* @__PURE__ */ React73.createElement(StylesFieldLayout, { label: LETTER_SPACING_LABEL, ref: rowRef }, /* @__PURE__ */ React73.createElement(SizeControl9, { anchorRef: rowRef })));
@@ -3990,8 +4069,8 @@ var LetterSpacingField = () => {
3990
4069
  import * as React74 from "react";
3991
4070
  import { useRef as useRef13 } from "react";
3992
4071
  import { SizeControl as SizeControl10 } from "@elementor/editor-controls";
3993
- import { __ as __49 } from "@wordpress/i18n";
3994
- var LINE_HEIGHT_LABEL = __49("Line height", "elementor");
4072
+ import { __ as __51 } from "@wordpress/i18n";
4073
+ var LINE_HEIGHT_LABEL = __51("Line height", "elementor");
3995
4074
  var LineHeightField = () => {
3996
4075
  const rowRef = useRef13(null);
3997
4076
  return /* @__PURE__ */ React74.createElement(StylesField, { bind: "line-height", propDisplayName: LINE_HEIGHT_LABEL }, /* @__PURE__ */ React74.createElement(StylesFieldLayout, { label: LINE_HEIGHT_LABEL, ref: rowRef }, /* @__PURE__ */ React74.createElement(SizeControl10, { anchorRef: rowRef })));
@@ -4002,32 +4081,32 @@ import * as React75 from "react";
4002
4081
  import { ToggleControl as ToggleControl10 } from "@elementor/editor-controls";
4003
4082
  import { AlignCenterIcon, AlignJustifiedIcon, AlignLeftIcon, AlignRightIcon } from "@elementor/icons";
4004
4083
  import { withDirection as withDirection9 } from "@elementor/ui";
4005
- import { __ as __50 } from "@wordpress/i18n";
4006
- var TEXT_ALIGNMENT_LABEL = __50("Text align", "elementor");
4084
+ import { __ as __52 } from "@wordpress/i18n";
4085
+ var TEXT_ALIGNMENT_LABEL = __52("Text align", "elementor");
4007
4086
  var AlignStartIcon = withDirection9(AlignLeftIcon);
4008
4087
  var AlignEndIcon = withDirection9(AlignRightIcon);
4009
4088
  var options8 = [
4010
4089
  {
4011
4090
  value: "start",
4012
- label: __50("Start", "elementor"),
4091
+ label: __52("Start", "elementor"),
4013
4092
  renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(AlignStartIcon, { fontSize: size }),
4014
4093
  showTooltip: true
4015
4094
  },
4016
4095
  {
4017
4096
  value: "center",
4018
- label: __50("Center", "elementor"),
4097
+ label: __52("Center", "elementor"),
4019
4098
  renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(AlignCenterIcon, { fontSize: size }),
4020
4099
  showTooltip: true
4021
4100
  },
4022
4101
  {
4023
4102
  value: "end",
4024
- label: __50("End", "elementor"),
4103
+ label: __52("End", "elementor"),
4025
4104
  renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(AlignEndIcon, { fontSize: size }),
4026
4105
  showTooltip: true
4027
4106
  },
4028
4107
  {
4029
4108
  value: "justify",
4030
- label: __50("Justify", "elementor"),
4109
+ label: __52("Justify", "elementor"),
4031
4110
  renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(AlignJustifiedIcon, { fontSize: size }),
4032
4111
  showTooltip: true
4033
4112
  }
@@ -4039,8 +4118,8 @@ var TextAlignmentField = () => {
4039
4118
  // src/components/style-sections/typography-section/text-color-field.tsx
4040
4119
  import * as React76 from "react";
4041
4120
  import { ColorControl as ColorControl2 } from "@elementor/editor-controls";
4042
- import { __ as __51 } from "@wordpress/i18n";
4043
- var TEXT_COLOR_LABEL = __51("Text color", "elementor");
4121
+ import { __ as __53 } from "@wordpress/i18n";
4122
+ var TEXT_COLOR_LABEL = __53("Text color", "elementor");
4044
4123
  var TextColorField = () => {
4045
4124
  return /* @__PURE__ */ React76.createElement(StylesField, { bind: "color", propDisplayName: TEXT_COLOR_LABEL }, /* @__PURE__ */ React76.createElement(StylesFieldLayout, { label: TEXT_COLOR_LABEL }, /* @__PURE__ */ React76.createElement(ColorControl2, null)));
4046
4125
  };
@@ -4049,31 +4128,31 @@ var TextColorField = () => {
4049
4128
  import * as React77 from "react";
4050
4129
  import { ToggleControl as ToggleControl11 } from "@elementor/editor-controls";
4051
4130
  import { MinusIcon as MinusIcon3, OverlineIcon, StrikethroughIcon, UnderlineIcon } from "@elementor/icons";
4052
- import { __ as __52 } from "@wordpress/i18n";
4053
- var TEXT_DECORATION_LABEL = __52("Line decoration", "elementor");
4131
+ import { __ as __54 } from "@wordpress/i18n";
4132
+ var TEXT_DECORATION_LABEL = __54("Line decoration", "elementor");
4054
4133
  var options9 = [
4055
4134
  {
4056
4135
  value: "none",
4057
- label: __52("None", "elementor"),
4136
+ label: __54("None", "elementor"),
4058
4137
  renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(MinusIcon3, { fontSize: size }),
4059
4138
  showTooltip: true,
4060
4139
  exclusive: true
4061
4140
  },
4062
4141
  {
4063
4142
  value: "underline",
4064
- label: __52("Underline", "elementor"),
4143
+ label: __54("Underline", "elementor"),
4065
4144
  renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(UnderlineIcon, { fontSize: size }),
4066
4145
  showTooltip: true
4067
4146
  },
4068
4147
  {
4069
4148
  value: "line-through",
4070
- label: __52("Line-through", "elementor"),
4149
+ label: __54("Line-through", "elementor"),
4071
4150
  renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(StrikethroughIcon, { fontSize: size }),
4072
4151
  showTooltip: true
4073
4152
  },
4074
4153
  {
4075
4154
  value: "overline",
4076
- label: __52("Overline", "elementor"),
4155
+ label: __54("Overline", "elementor"),
4077
4156
  renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(OverlineIcon, { fontSize: size }),
4078
4157
  showTooltip: true
4079
4158
  }
@@ -4084,18 +4163,18 @@ var TextDecorationField = () => /* @__PURE__ */ React77.createElement(StylesFiel
4084
4163
  import * as React78 from "react";
4085
4164
  import { ToggleControl as ToggleControl12 } from "@elementor/editor-controls";
4086
4165
  import { TextDirectionLtrIcon, TextDirectionRtlIcon } from "@elementor/icons";
4087
- import { __ as __53 } from "@wordpress/i18n";
4088
- var TEXT_DIRECTION_LABEL = __53("Direction", "elementor");
4166
+ import { __ as __55 } from "@wordpress/i18n";
4167
+ var TEXT_DIRECTION_LABEL = __55("Direction", "elementor");
4089
4168
  var options10 = [
4090
4169
  {
4091
4170
  value: "ltr",
4092
- label: __53("Left to right", "elementor"),
4171
+ label: __55("Left to right", "elementor"),
4093
4172
  renderContent: ({ size }) => /* @__PURE__ */ React78.createElement(TextDirectionLtrIcon, { fontSize: size }),
4094
4173
  showTooltip: true
4095
4174
  },
4096
4175
  {
4097
4176
  value: "rtl",
4098
- label: __53("Right to left", "elementor"),
4177
+ label: __55("Right to left", "elementor"),
4099
4178
  renderContent: ({ size }) => /* @__PURE__ */ React78.createElement(TextDirectionRtlIcon, { fontSize: size }),
4100
4179
  showTooltip: true
4101
4180
  }
@@ -4107,7 +4186,7 @@ var TextDirectionField = () => {
4107
4186
  // src/components/style-sections/typography-section/text-stroke-field.tsx
4108
4187
  import * as React79 from "react";
4109
4188
  import { StrokeControl } from "@elementor/editor-controls";
4110
- import { __ as __54 } from "@wordpress/i18n";
4189
+ import { __ as __56 } from "@wordpress/i18n";
4111
4190
  var initTextStroke = {
4112
4191
  $$type: "stroke",
4113
4192
  value: {
@@ -4124,9 +4203,11 @@ var initTextStroke = {
4124
4203
  }
4125
4204
  }
4126
4205
  };
4127
- var TEXT_STROKE_LABEL = __54("Text stroke", "elementor");
4206
+ var TEXT_STROKE_LABEL = __56("Text stroke", "elementor");
4128
4207
  var TextStrokeField = () => {
4129
- const { value, setValue, canEdit } = useStylesField("stroke");
4208
+ const { value, setValue, canEdit } = useStylesField("stroke", {
4209
+ history: { propDisplayName: TEXT_STROKE_LABEL }
4210
+ });
4130
4211
  const addTextStroke = () => {
4131
4212
  setValue(initTextStroke);
4132
4213
  };
@@ -4151,30 +4232,30 @@ var TextStrokeField = () => {
4151
4232
  import * as React80 from "react";
4152
4233
  import { ToggleControl as ToggleControl13 } from "@elementor/editor-controls";
4153
4234
  import { LetterCaseIcon, LetterCaseLowerIcon, LetterCaseUpperIcon, MinusIcon as MinusIcon4 } from "@elementor/icons";
4154
- import { __ as __55 } from "@wordpress/i18n";
4155
- var TEXT_TRANSFORM_LABEL = __55("Text transform", "elementor");
4235
+ import { __ as __57 } from "@wordpress/i18n";
4236
+ var TEXT_TRANSFORM_LABEL = __57("Text transform", "elementor");
4156
4237
  var options11 = [
4157
4238
  {
4158
4239
  value: "none",
4159
- label: __55("None", "elementor"),
4240
+ label: __57("None", "elementor"),
4160
4241
  renderContent: ({ size }) => /* @__PURE__ */ React80.createElement(MinusIcon4, { fontSize: size }),
4161
4242
  showTooltip: true
4162
4243
  },
4163
4244
  {
4164
4245
  value: "capitalize",
4165
- label: __55("Capitalize", "elementor"),
4246
+ label: __57("Capitalize", "elementor"),
4166
4247
  renderContent: ({ size }) => /* @__PURE__ */ React80.createElement(LetterCaseIcon, { fontSize: size }),
4167
4248
  showTooltip: true
4168
4249
  },
4169
4250
  {
4170
4251
  value: "uppercase",
4171
- label: __55("Uppercase", "elementor"),
4252
+ label: __57("Uppercase", "elementor"),
4172
4253
  renderContent: ({ size }) => /* @__PURE__ */ React80.createElement(LetterCaseUpperIcon, { fontSize: size }),
4173
4254
  showTooltip: true
4174
4255
  },
4175
4256
  {
4176
4257
  value: "lowercase",
4177
- label: __55("Lowercase", "elementor"),
4258
+ label: __57("Lowercase", "elementor"),
4178
4259
  renderContent: ({ size }) => /* @__PURE__ */ React80.createElement(LetterCaseLowerIcon, { fontSize: size }),
4179
4260
  showTooltip: true
4180
4261
  }
@@ -4185,18 +4266,21 @@ var TransformField = () => /* @__PURE__ */ React80.createElement(StylesField, {
4185
4266
  import * as React81 from "react";
4186
4267
  import { useRef as useRef14 } from "react";
4187
4268
  import { SizeControl as SizeControl11 } from "@elementor/editor-controls";
4188
- import { __ as __56 } from "@wordpress/i18n";
4189
- var WORD_SPACING_LABEL = __56("Word spacing", "elementor");
4269
+ import { __ as __58 } from "@wordpress/i18n";
4270
+ var WORD_SPACING_LABEL = __58("Word spacing", "elementor");
4190
4271
  var WordSpacingField = () => {
4191
4272
  const rowRef = useRef14(null);
4192
4273
  return /* @__PURE__ */ React81.createElement(StylesField, { bind: "word-spacing", propDisplayName: WORD_SPACING_LABEL }, /* @__PURE__ */ React81.createElement(StylesFieldLayout, { label: WORD_SPACING_LABEL, ref: rowRef }, /* @__PURE__ */ React81.createElement(SizeControl11, { anchorRef: rowRef })));
4193
4274
  };
4194
4275
 
4195
4276
  // src/components/style-sections/typography-section/typography-section.tsx
4277
+ var COLUMN_COUNT_LABEL2 = __59("Column count", "elementor");
4196
4278
  var TypographySection = () => {
4197
- const { value: columnCount } = useStylesField("column-count");
4279
+ const { value: columnCount } = useStylesField("column-count", {
4280
+ history: { propDisplayName: COLUMN_COUNT_LABEL2 }
4281
+ });
4198
4282
  const hasMultiColumns = !!(columnCount?.value && columnCount?.value > 1);
4199
- const isVersion330Active = isExperimentActive14("e_v_3_30");
4283
+ const isVersion330Active = isExperimentActive15("e_v_3_30");
4200
4284
  return /* @__PURE__ */ React82.createElement(SectionContent, null, /* @__PURE__ */ React82.createElement(FontFamilyField, null), /* @__PURE__ */ React82.createElement(FontWeightField, null), /* @__PURE__ */ React82.createElement(FontSizeField, null), /* @__PURE__ */ React82.createElement(PanelDivider, null), /* @__PURE__ */ React82.createElement(TextAlignmentField, null), /* @__PURE__ */ React82.createElement(TextColorField, null), /* @__PURE__ */ React82.createElement(
4201
4285
  StyleTabCollapsibleContent,
4202
4286
  {
@@ -4218,12 +4302,12 @@ var TypographySection = () => {
4218
4302
 
4219
4303
  // src/components/style-tab-section.tsx
4220
4304
  import * as React83 from "react";
4221
- import { isExperimentActive as isExperimentActive15 } from "@elementor/editor-v1-adapters";
4305
+ import { isExperimentActive as isExperimentActive16 } from "@elementor/editor-v1-adapters";
4222
4306
  var StyleTabSection = ({ section, fields = [] }) => {
4223
4307
  const { component, name, title } = section;
4224
4308
  const tabDefaults = useDefaultPanelSettings();
4225
4309
  const SectionComponent = component;
4226
- const isExpanded = isExperimentActive15(EXPERIMENTAL_FEATURES.V_3_30) ? tabDefaults.defaultSectionsExpanded.style?.includes(name) : false;
4310
+ const isExpanded = isExperimentActive16(EXPERIMENTAL_FEATURES.V_3_30) ? tabDefaults.defaultSectionsExpanded.style?.includes(name) : false;
4227
4311
  return /* @__PURE__ */ React83.createElement(Section, { title, defaultExpanded: isExpanded, titleEnd: getStylesInheritanceIndicators(fields) }, /* @__PURE__ */ React83.createElement(SectionComponent, null));
4228
4312
  };
4229
4313
 
@@ -4231,7 +4315,7 @@ var StyleTabSection = ({ section, fields = [] }) => {
4231
4315
  var TABS_HEADER_HEIGHT = "37px";
4232
4316
  var stickyHeaderStyles = {
4233
4317
  position: "sticky",
4234
- zIndex: 1,
4318
+ zIndex: 1100,
4235
4319
  opacity: 1,
4236
4320
  backgroundColor: "background.default",
4237
4321
  transition: "top 300ms ease"
@@ -4258,7 +4342,7 @@ var StyleTab = () => {
4258
4342
  section: {
4259
4343
  component: LayoutSection,
4260
4344
  name: "Layout",
4261
- title: __57("Layout", "elementor")
4345
+ title: __60("Layout", "elementor")
4262
4346
  },
4263
4347
  fields: [
4264
4348
  "display",
@@ -4277,7 +4361,7 @@ var StyleTab = () => {
4277
4361
  section: {
4278
4362
  component: SpacingSection,
4279
4363
  name: "Spacing",
4280
- title: __57("Spacing", "elementor")
4364
+ title: __60("Spacing", "elementor")
4281
4365
  },
4282
4366
  fields: ["margin", "padding"]
4283
4367
  }
@@ -4287,7 +4371,7 @@ var StyleTab = () => {
4287
4371
  section: {
4288
4372
  component: SizeSection,
4289
4373
  name: "Size",
4290
- title: __57("Size", "elementor")
4374
+ title: __60("Size", "elementor")
4291
4375
  },
4292
4376
  fields: [
4293
4377
  "width",
@@ -4307,7 +4391,7 @@ var StyleTab = () => {
4307
4391
  section: {
4308
4392
  component: PositionSection,
4309
4393
  name: "Position",
4310
- title: __57("Position", "elementor")
4394
+ title: __60("Position", "elementor")
4311
4395
  },
4312
4396
  fields: ["position", "z-index", "scroll-margin-top"]
4313
4397
  }
@@ -4317,7 +4401,7 @@ var StyleTab = () => {
4317
4401
  section: {
4318
4402
  component: TypographySection,
4319
4403
  name: "Typography",
4320
- title: __57("Typography", "elementor")
4404
+ title: __60("Typography", "elementor")
4321
4405
  },
4322
4406
  fields: [
4323
4407
  "font-family",
@@ -4342,7 +4426,7 @@ var StyleTab = () => {
4342
4426
  section: {
4343
4427
  component: BackgroundSection,
4344
4428
  name: "Background",
4345
- title: __57("Background", "elementor")
4429
+ title: __60("Background", "elementor")
4346
4430
  },
4347
4431
  fields: ["background"]
4348
4432
  }
@@ -4352,7 +4436,7 @@ var StyleTab = () => {
4352
4436
  section: {
4353
4437
  component: BorderSection,
4354
4438
  name: "Border",
4355
- title: __57("Border", "elementor")
4439
+ title: __60("Border", "elementor")
4356
4440
  },
4357
4441
  fields: ["border-radius", "border-width", "border-color", "border-style"]
4358
4442
  }
@@ -4362,7 +4446,7 @@ var StyleTab = () => {
4362
4446
  section: {
4363
4447
  component: EffectsSection,
4364
4448
  name: "Effects",
4365
- title: __57("Effects", "elementor")
4449
+ title: __60("Effects", "elementor")
4366
4450
  },
4367
4451
  fields: ["box-shadow"]
4368
4452
  }
@@ -4395,7 +4479,7 @@ var EditingPanelTabs = () => {
4395
4479
  };
4396
4480
  var PanelTabContent = () => {
4397
4481
  const editorDefaults = useDefaultPanelSettings();
4398
- const defaultComponentTab = isExperimentActive16(EXPERIMENTAL_FEATURES.V_3_30) ? editorDefaults.defaultTab : "settings";
4482
+ const defaultComponentTab = isExperimentActive17(EXPERIMENTAL_FEATURES.V_3_30) ? editorDefaults.defaultTab : "settings";
4399
4483
  const [currentTab, setCurrentTab] = useStateByElement("tab", defaultComponentTab);
4400
4484
  const { getTabProps, getTabPanelProps, getTabsProps } = useTabs(currentTab);
4401
4485
  return /* @__PURE__ */ React85.createElement(ScrollProvider, null, /* @__PURE__ */ React85.createElement(Stack15, { direction: "column", sx: { width: "100%" } }, /* @__PURE__ */ React85.createElement(Stack15, { sx: { ...stickyHeaderStyles, top: 0 } }, /* @__PURE__ */ React85.createElement(
@@ -4410,8 +4494,8 @@ var PanelTabContent = () => {
4410
4494
  setCurrentTab(newValue);
4411
4495
  }
4412
4496
  },
4413
- /* @__PURE__ */ React85.createElement(Tab, { label: __58("General", "elementor"), ...getTabProps("settings") }),
4414
- /* @__PURE__ */ React85.createElement(Tab, { label: __58("Style", "elementor"), ...getTabProps("style") })
4497
+ /* @__PURE__ */ React85.createElement(Tab, { label: __61("General", "elementor"), ...getTabProps("settings") }),
4498
+ /* @__PURE__ */ React85.createElement(Tab, { label: __61("Style", "elementor"), ...getTabProps("style") })
4415
4499
  ), /* @__PURE__ */ React85.createElement(Divider6, null)), /* @__PURE__ */ React85.createElement(TabPanel, { ...getTabPanelProps("settings"), disablePadding: true }, /* @__PURE__ */ React85.createElement(SettingsTab, null)), /* @__PURE__ */ React85.createElement(TabPanel, { ...getTabPanelProps("style"), disablePadding: true }, /* @__PURE__ */ React85.createElement(StyleTab, null))));
4416
4500
  };
4417
4501
 
@@ -4424,7 +4508,7 @@ var EditingPanel = () => {
4424
4508
  if (!element || !elementType) {
4425
4509
  return null;
4426
4510
  }
4427
- const panelTitle = __59("Edit %s", "elementor").replace("%s", elementType.title);
4511
+ const panelTitle = __62("Edit %s", "elementor").replace("%s", elementType.title);
4428
4512
  return /* @__PURE__ */ React86.createElement(ErrorBoundary, { fallback: /* @__PURE__ */ React86.createElement(EditorPanelErrorFallback, null) }, /* @__PURE__ */ React86.createElement(SessionStorageProvider3, { prefix: "elementor" }, /* @__PURE__ */ React86.createElement(ThemeProvider2, null, /* @__PURE__ */ React86.createElement(Panel, null, /* @__PURE__ */ React86.createElement(PanelHeader, null, /* @__PURE__ */ React86.createElement(PanelHeaderTitle, null, panelTitle), /* @__PURE__ */ React86.createElement(AtomIcon, { fontSize: "small", sx: { color: "text.tertiary" } })), /* @__PURE__ */ React86.createElement(PanelBody, null, /* @__PURE__ */ React86.createElement(ControlActionsProvider, { items: menuItems }, /* @__PURE__ */ React86.createElement(ControlReplacementsProvider, { replacements: controlReplacements }, /* @__PURE__ */ React86.createElement(ElementProvider, { element, elementType }, /* @__PURE__ */ React86.createElement(EditingPanelTabs, null)))))))));
4429
4513
  };
4430
4514
 
@@ -4444,9 +4528,8 @@ var PopoverScrollableContent = (props) => {
4444
4528
 
4445
4529
  // src/init.ts
4446
4530
  import { injectIntoLogic } from "@elementor/editor";
4447
- import { PrefetchUserData } from "@elementor/editor-current-user";
4448
4531
  import { __registerPanel as registerPanel } from "@elementor/editor-panels";
4449
- import { blockCommand, isExperimentActive as isExperimentActive17 } from "@elementor/editor-v1-adapters";
4532
+ import { blockCommand, isExperimentActive as isExperimentActive18 } from "@elementor/editor-v1-adapters";
4450
4533
 
4451
4534
  // src/hooks/use-open-editor-panel.ts
4452
4535
  import { useEffect as useEffect4 } from "react";
@@ -4609,7 +4692,7 @@ import {
4609
4692
  usePopupState as usePopupState3,
4610
4693
  useTabs as useTabs2
4611
4694
  } from "@elementor/ui";
4612
- import { __ as __61 } from "@wordpress/i18n";
4695
+ import { __ as __64 } from "@wordpress/i18n";
4613
4696
 
4614
4697
  // src/hooks/use-persist-dynamic-value.ts
4615
4698
  import { useSessionStorage as useSessionStorage2 } from "@elementor/session";
@@ -4652,7 +4735,7 @@ import { useBoundProp as useBoundProp5 } from "@elementor/editor-controls";
4652
4735
  import { PopoverHeader as PopoverHeader2, PopoverMenuList, PopoverSearch } from "@elementor/editor-ui";
4653
4736
  import { DatabaseIcon as DatabaseIcon2 } from "@elementor/icons";
4654
4737
  import { Box as Box7, Divider as Divider7, Link as Link2, Stack as Stack16, Typography as Typography5, useTheme as useTheme3 } from "@elementor/ui";
4655
- import { __ as __60 } from "@wordpress/i18n";
4738
+ import { __ as __63 } from "@wordpress/i18n";
4656
4739
  var SIZE6 = "tiny";
4657
4740
  var DynamicSelection = ({ close: closePopover }) => {
4658
4741
  const [searchValue, setSearchValue] = useState13("");
@@ -4690,7 +4773,7 @@ var DynamicSelection = ({ close: closePopover }) => {
4690
4773
  return /* @__PURE__ */ React90.createElement(React90.Fragment, null, /* @__PURE__ */ React90.createElement(
4691
4774
  PopoverHeader2,
4692
4775
  {
4693
- title: __60("Dynamic tags", "elementor"),
4776
+ title: __63("Dynamic tags", "elementor"),
4694
4777
  onClose: closePopover,
4695
4778
  icon: /* @__PURE__ */ React90.createElement(DatabaseIcon2, { fontSize: SIZE6 })
4696
4779
  }
@@ -4699,7 +4782,7 @@ var DynamicSelection = ({ close: closePopover }) => {
4699
4782
  {
4700
4783
  value: searchValue,
4701
4784
  onSearch: handleSearch,
4702
- placeholder: __60("Search dynamic tags\u2026", "elementor")
4785
+ placeholder: __63("Search dynamic tags\u2026", "elementor")
4703
4786
  }
4704
4787
  ), /* @__PURE__ */ React90.createElement(Divider7, null), /* @__PURE__ */ React90.createElement(PopoverScrollableContent, null, /* @__PURE__ */ React90.createElement(
4705
4788
  PopoverMenuList,
@@ -4725,8 +4808,8 @@ var NoResults = ({ searchValue, onClear }) => /* @__PURE__ */ React90.createElem
4725
4808
  sx: { pb: 3.5 }
4726
4809
  },
4727
4810
  /* @__PURE__ */ React90.createElement(DatabaseIcon2, { fontSize: "large" }),
4728
- /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "subtitle2" }, __60("Sorry, nothing matched", "elementor"), /* @__PURE__ */ React90.createElement("br", null), "\u201C", searchValue, "\u201D."),
4729
- /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "caption", sx: { display: "flex", flexDirection: "column" } }, __60("Try something else.", "elementor"), /* @__PURE__ */ React90.createElement(Link2, { color: "text.secondary", variant: "caption", component: "button", onClick: onClear }, __60("Clear & try again", "elementor")))
4811
+ /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "subtitle2" }, __63("Sorry, nothing matched", "elementor"), /* @__PURE__ */ React90.createElement("br", null), "\u201C", searchValue, "\u201D."),
4812
+ /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "caption", sx: { display: "flex", flexDirection: "column" } }, __63("Try something else.", "elementor"), /* @__PURE__ */ React90.createElement(Link2, { color: "text.secondary", variant: "caption", component: "button", onClick: onClear }, __63("Clear & try again", "elementor")))
4730
4813
  );
4731
4814
  var NoDynamicTags = () => /* @__PURE__ */ React90.createElement(Box7, { sx: { overflowY: "hidden", height: 297, width: 220 } }, /* @__PURE__ */ React90.createElement(Divider7, null), /* @__PURE__ */ React90.createElement(
4732
4815
  Stack16,
@@ -4740,8 +4823,8 @@ var NoDynamicTags = () => /* @__PURE__ */ React90.createElement(Box7, { sx: { ov
4740
4823
  sx: { pb: 3.5 }
4741
4824
  },
4742
4825
  /* @__PURE__ */ React90.createElement(DatabaseIcon2, { fontSize: "large" }),
4743
- /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "subtitle2" }, __60("Streamline your workflow with dynamic tags", "elementor")),
4744
- /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "caption" }, __60("You'll need Elementor Pro to use this feature.", "elementor"))
4826
+ /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "subtitle2" }, __63("Streamline your workflow with dynamic tags", "elementor")),
4827
+ /* @__PURE__ */ React90.createElement(Typography5, { align: "center", variant: "caption" }, __63("You'll need Elementor Pro to use this feature.", "elementor"))
4745
4828
  ));
4746
4829
  var useFilteredOptions = (searchValue) => {
4747
4830
  const dynamicTags = usePropDynamicTags();
@@ -4787,7 +4870,7 @@ var DynamicSelectionControl = () => {
4787
4870
  {
4788
4871
  size: SIZE7,
4789
4872
  onClick: removeDynamicTag,
4790
- "aria-label": __61("Remove dynamic value", "elementor")
4873
+ "aria-label": __64("Remove dynamic value", "elementor")
4791
4874
  },
4792
4875
  /* @__PURE__ */ React91.createElement(XIcon, { fontSize: SIZE7 })
4793
4876
  ))
@@ -4813,7 +4896,7 @@ var DynamicSettingsPopover = ({ dynamicTag }) => {
4813
4896
  if (!hasDynamicSettings) {
4814
4897
  return null;
4815
4898
  }
4816
- return /* @__PURE__ */ React91.createElement(React91.Fragment, null, /* @__PURE__ */ React91.createElement(IconButton5, { size: SIZE7, ...bindTrigger2(popupState), "aria-label": __61("Settings", "elementor") }, /* @__PURE__ */ React91.createElement(SettingsIcon, { fontSize: SIZE7 })), /* @__PURE__ */ React91.createElement(
4899
+ return /* @__PURE__ */ React91.createElement(React91.Fragment, null, /* @__PURE__ */ React91.createElement(IconButton5, { size: SIZE7, ...bindTrigger2(popupState), "aria-label": __64("Settings", "elementor") }, /* @__PURE__ */ React91.createElement(SettingsIcon, { fontSize: SIZE7 })), /* @__PURE__ */ React91.createElement(
4817
4900
  Popover2,
4818
4901
  {
4819
4902
  disablePortal: true,
@@ -4910,14 +4993,14 @@ function getDynamicValue(name, settings) {
4910
4993
  import * as React92 from "react";
4911
4994
  import { useBoundProp as useBoundProp7 } from "@elementor/editor-controls";
4912
4995
  import { DatabaseIcon as DatabaseIcon4 } from "@elementor/icons";
4913
- import { __ as __62 } from "@wordpress/i18n";
4996
+ import { __ as __65 } from "@wordpress/i18n";
4914
4997
  var usePropDynamicAction = () => {
4915
4998
  const { propType } = useBoundProp7();
4916
4999
  const visible = !!propType && supportsDynamic(propType);
4917
5000
  return {
4918
5001
  visible,
4919
5002
  icon: DatabaseIcon4,
4920
- title: __62("Dynamic tags", "elementor"),
5003
+ title: __65("Dynamic tags", "elementor"),
4921
5004
  content: ({ close }) => /* @__PURE__ */ React92.createElement(DynamicSelection, { close })
4922
5005
  };
4923
5006
  };
@@ -4950,7 +5033,7 @@ var init = () => {
4950
5033
  // src/reset-style-props.tsx
4951
5034
  import { useBoundProp as useBoundProp8 } from "@elementor/editor-controls";
4952
5035
  import { BrushBigIcon } from "@elementor/icons";
4953
- import { __ as __63 } from "@wordpress/i18n";
5036
+ import { __ as __66 } from "@wordpress/i18n";
4954
5037
  var { registerAction } = controlActionsMenu;
4955
5038
  function initResetStyleProps() {
4956
5039
  registerAction({
@@ -4964,7 +5047,7 @@ function useResetStyleValueProps() {
4964
5047
  const { value, setValue, path, bind } = useBoundProp8();
4965
5048
  return {
4966
5049
  visible: isStyle && value !== null && value !== void 0 && path.length <= 2 && !EXCLUDED_BINDS.includes(bind),
4967
- title: __63("Clear", "elementor"),
5050
+ title: __66("Clear", "elementor"),
4968
5051
  icon: BrushBigIcon,
4969
5052
  onClick: () => setValue(null)
4970
5053
  };
@@ -4993,7 +5076,7 @@ var StyledUnstableColorIndicator = styled7(UnstableColorIndicator)(({ theme }) =
4993
5076
  import * as React94 from "react";
4994
5077
  import { createTransformer as createTransformer3 } from "@elementor/editor-canvas";
4995
5078
  import { Stack as Stack19 } from "@elementor/ui";
4996
- import { __ as __64 } from "@wordpress/i18n";
5079
+ import { __ as __67 } from "@wordpress/i18n";
4997
5080
  var backgroundGradientOverlayTransformer = createTransformer3((value) => /* @__PURE__ */ React94.createElement(Stack19, { direction: "row", gap: 10 }, /* @__PURE__ */ React94.createElement(ItemIconGradient, { value }), /* @__PURE__ */ React94.createElement(ItemLabelGradient, { value })));
4998
5081
  var ItemIconGradient = ({ value }) => {
4999
5082
  const gradient = getGradientValue(value);
@@ -5001,9 +5084,9 @@ var ItemIconGradient = ({ value }) => {
5001
5084
  };
5002
5085
  var ItemLabelGradient = ({ value }) => {
5003
5086
  if (value.type === "linear") {
5004
- return /* @__PURE__ */ React94.createElement("span", null, __64("Linear Gradient", "elementor"));
5087
+ return /* @__PURE__ */ React94.createElement("span", null, __67("Linear Gradient", "elementor"));
5005
5088
  }
5006
- return /* @__PURE__ */ React94.createElement("span", null, __64("Radial Gradient", "elementor"));
5089
+ return /* @__PURE__ */ React94.createElement("span", null, __67("Radial Gradient", "elementor"));
5007
5090
  };
5008
5091
  var getGradientValue = (gradient) => {
5009
5092
  const stops = gradient.stops?.map(({ color, offset }) => `${color} ${offset ?? 0}%`)?.join(",");
@@ -5113,13 +5196,9 @@ function init3() {
5113
5196
  id: "editing-panel-hooks",
5114
5197
  component: EditingPanelHooks
5115
5198
  });
5116
- injectIntoLogic({
5117
- id: "current-user-data",
5118
- component: PrefetchUserData
5119
- });
5120
5199
  init();
5121
5200
  init2();
5122
- if (isExperimentActive17(EXPERIMENTAL_FEATURES.V_3_30)) {
5201
+ if (isExperimentActive18(EXPERIMENTAL_FEATURES.V_3_30)) {
5123
5202
  initResetStyleProps();
5124
5203
  }
5125
5204
  }