@elementor/editor-components 4.1.0-747 → 4.1.0-749

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
@@ -1020,9 +1020,16 @@ var ComponentInstanceContext = createContext2(null);
1020
1020
  function ComponentInstanceProvider({ children, ...props }) {
1021
1021
  return /* @__PURE__ */ React13.createElement(ComponentInstanceContext.Provider, { value: props }, children);
1022
1022
  }
1023
- var useComponentId = () => useContext2(ComponentInstanceContext)?.componentId;
1024
- var useComponentInstanceOverrides = () => useContext2(ComponentInstanceContext)?.overrides;
1025
- var useComponentOverridableProps = () => useContext2(ComponentInstanceContext)?.overridableProps;
1023
+ function useComponentInstanceContext() {
1024
+ const context = useContext2(ComponentInstanceContext);
1025
+ if (!context) {
1026
+ throw new Error("useComponentInstanceContext must be used within a ComponentInstanceProvider");
1027
+ }
1028
+ return context;
1029
+ }
1030
+ var useComponentId = () => useComponentInstanceContext().componentId;
1031
+ var useComponentInstanceOverrides = () => useComponentInstanceContext().overrides;
1032
+ var useComponentOverridableProps = () => useComponentInstanceContext().overridableProps;
1026
1033
 
1027
1034
  // src/components/instance-editing-panel/detach-action.tsx
1028
1035
  import * as React15 from "react";
@@ -1524,7 +1531,6 @@ import { Box as Box9, Collapse, ListItemButton as ListItemButton2, ListItemText,
1524
1531
 
1525
1532
  // src/components/instance-editing-panel/override-prop-control.tsx
1526
1533
  import * as React19 from "react";
1527
- import { useMemo } from "react";
1528
1534
  import {
1529
1535
  ControlReplacementsProvider,
1530
1536
  getControlReplacements,
@@ -1540,9 +1546,8 @@ import {
1540
1546
  ElementProvider,
1541
1547
  isDynamicPropValue,
1542
1548
  SettingsField,
1543
- useElement
1549
+ useElement as useElement2
1544
1550
  } from "@elementor/editor-editing-panel";
1545
- import { getElementSettings, getElementType as getElementType2 } from "@elementor/editor-elements";
1546
1551
  import { Box as Box8 } from "@elementor/ui";
1547
1552
 
1548
1553
  // src/hooks/use-controls-by-widget-type.ts
@@ -1774,6 +1779,133 @@ function getMatchingOverride(overrides, overrideKey) {
1774
1779
  }) ?? null;
1775
1780
  }
1776
1781
 
1782
+ // src/components/control-label.tsx
1783
+ import * as React18 from "react";
1784
+ import { ControlAdornments, ControlFormLabel } from "@elementor/editor-controls";
1785
+ import { Stack as Stack8 } from "@elementor/ui";
1786
+ var ControlLabel = ({ children, ...props }) => {
1787
+ return /* @__PURE__ */ React18.createElement(Stack8, { direction: "row", alignItems: "center", justifyItems: "start", gap: 0.25 }, /* @__PURE__ */ React18.createElement(ControlFormLabel, { ...props }, children), /* @__PURE__ */ React18.createElement(ControlAdornments, null));
1788
+ };
1789
+
1790
+ // src/components/errors.ts
1791
+ import { createError } from "@elementor/utils";
1792
+ var OverrideControlInnerElementNotFoundError = createError({
1793
+ code: "override_control_inner_element_not_found",
1794
+ message: `Component inner element not found for override control. The element may have been deleted without updating the overridable props, or the component has not finished rendering yet.`
1795
+ });
1796
+ var OverrideControlPropTypeNotFoundError = createError({
1797
+ code: "override_control_prop_type_not_found",
1798
+ message: "Prop type not found for override control."
1799
+ });
1800
+
1801
+ // src/components/instance-editing-panel/utils/correct-exposed-empty-override.ts
1802
+ function correctExposedEmptyOverride(newPropValue, matchingOverride) {
1803
+ const newOverridableValue = componentOverridablePropTypeUtil.extract(newPropValue);
1804
+ const isExposingEmptyOverride = newOverridableValue && matchingOverride === null;
1805
+ if (!isExposingEmptyOverride) {
1806
+ return newPropValue;
1807
+ }
1808
+ return componentOverridablePropTypeUtil.create({
1809
+ override_key: newOverridableValue.override_key,
1810
+ origin_value: null
1811
+ });
1812
+ }
1813
+
1814
+ // src/components/instance-editing-panel/utils/resolve-element-settings.ts
1815
+ function applyOverridesToSettings(elementSettings, overrides) {
1816
+ const result = {};
1817
+ for (const [propKey, propValue] of Object.entries(elementSettings)) {
1818
+ const overridable = componentOverridablePropTypeUtil.extract(propValue);
1819
+ if (!overridable) {
1820
+ result[propKey] = propValue;
1821
+ continue;
1822
+ }
1823
+ const override = overrides[overridable.override_key];
1824
+ if (!override) {
1825
+ result[propKey] = propValue;
1826
+ continue;
1827
+ }
1828
+ if (override.outermostKey && override.outermostKey !== overridable.override_key) {
1829
+ const originValue = overridable.origin_value;
1830
+ result[propKey] = componentOverridablePropTypeUtil.create({
1831
+ override_key: override.outermostKey,
1832
+ origin_value: override.value ?? originValue
1833
+ });
1834
+ } else {
1835
+ result[propKey] = override.value ?? propValue;
1836
+ }
1837
+ }
1838
+ return result;
1839
+ }
1840
+ function unwrapOverridableSettings(elementSettings) {
1841
+ const result = {};
1842
+ for (const [propKey, propValue] of Object.entries(elementSettings)) {
1843
+ const overridable = componentOverridablePropTypeUtil.extract(propValue);
1844
+ if (!overridable) {
1845
+ result[propKey] = propValue;
1846
+ continue;
1847
+ }
1848
+ result[propKey] = overridable.origin_value;
1849
+ }
1850
+ return result;
1851
+ }
1852
+
1853
+ // src/components/instance-editing-panel/utils/use-override-dependencies.ts
1854
+ import { useMemo } from "react";
1855
+ import {
1856
+ extractDependencyEffect,
1857
+ extractOrderedDependencies,
1858
+ getElementSettingsWithDefaults,
1859
+ getUpdatedValues
1860
+ } from "@elementor/editor-editing-panel";
1861
+ function useOverrideControlDependencies({
1862
+ existingOverride,
1863
+ resolvedElementSettings,
1864
+ elementId,
1865
+ elementType,
1866
+ propKey
1867
+ }) {
1868
+ return useMemo(() => {
1869
+ const { isDisabled, isHidden } = extractDependencyEffect(
1870
+ propKey,
1871
+ elementType.propsSchema,
1872
+ resolvedElementSettings
1873
+ );
1874
+ const existingOverrideValue = existingOverride ? resolveOverridePropValue(existingOverride) : null;
1875
+ const settingsForDepsNewValuesCalculation = { ...resolvedElementSettings, [propKey]: existingOverrideValue };
1876
+ const resolvedSettingsWithDefaults = getElementSettingsWithDefaults(
1877
+ elementType.propsSchema,
1878
+ settingsForDepsNewValuesCalculation
1879
+ );
1880
+ const dependents = extractOrderedDependencies(elementType.dependenciesPerTargetMapping ?? {});
1881
+ const settingsWithDepsNewValues = getUpdatedValues(
1882
+ settingsForDepsNewValuesCalculation,
1883
+ dependents,
1884
+ elementType.propsSchema,
1885
+ resolvedSettingsWithDefaults,
1886
+ elementId
1887
+ );
1888
+ const overrideValue = settingsWithDepsNewValues[propKey];
1889
+ return {
1890
+ overrideValue,
1891
+ isDisabled,
1892
+ isHidden
1893
+ };
1894
+ }, [
1895
+ existingOverride,
1896
+ resolvedElementSettings,
1897
+ propKey,
1898
+ elementType.propsSchema,
1899
+ elementType.dependenciesPerTargetMapping,
1900
+ elementId
1901
+ ]);
1902
+ }
1903
+
1904
+ // src/components/instance-editing-panel/utils/use-resolved-inner-element.ts
1905
+ import { useMemo as useMemo2 } from "react";
1906
+ import { useElement } from "@elementor/editor-editing-panel";
1907
+ import { getElementSettings, getElementType as getElementType2 } from "@elementor/editor-elements";
1908
+
1777
1909
  // src/utils/get-container-by-origin-id.ts
1778
1910
  import { getContainer as getContainer2 } from "@elementor/editor-elements";
1779
1911
  function getContainerByOriginId(originElementId, instanceElementId) {
@@ -1908,109 +2040,18 @@ function findOverrideByOuterKey(overrides, outerKey) {
1908
2040
  return override;
1909
2041
  }
1910
2042
 
1911
- // src/components/control-label.tsx
1912
- import * as React18 from "react";
1913
- import { ControlAdornments, ControlFormLabel } from "@elementor/editor-controls";
1914
- import { Stack as Stack8 } from "@elementor/ui";
1915
- var ControlLabel = ({ children, ...props }) => {
1916
- return /* @__PURE__ */ React18.createElement(Stack8, { direction: "row", alignItems: "center", justifyItems: "start", gap: 0.25 }, /* @__PURE__ */ React18.createElement(ControlFormLabel, { ...props }, children), /* @__PURE__ */ React18.createElement(ControlAdornments, null));
1917
- };
1918
-
1919
- // src/components/errors.ts
1920
- import { createError } from "@elementor/utils";
1921
- var OverrideControlInnerElementNotFoundError = createError({
1922
- code: "override_control_inner_element_not_found",
1923
- message: `Component inner element not found for override control. The element may have been deleted without updating the overridable props, or the component has not finished rendering yet.`
1924
- });
1925
-
1926
- // src/components/instance-editing-panel/utils/correct-exposed-empty-override.ts
1927
- function correctExposedEmptyOverride(newPropValue, matchingOverride) {
1928
- const newOverridableValue = componentOverridablePropTypeUtil.extract(newPropValue);
1929
- const isExposingEmptyOverride = newOverridableValue && matchingOverride === null;
1930
- if (!isExposingEmptyOverride) {
1931
- return newPropValue;
1932
- }
1933
- return componentOverridablePropTypeUtil.create({
1934
- override_key: newOverridableValue.override_key,
1935
- origin_value: null
1936
- });
1937
- }
1938
-
1939
- // src/components/instance-editing-panel/utils/resolve-element-settings.ts
1940
- function applyOverridesToSettings(elementSettings, overrides) {
1941
- const result = {};
1942
- for (const [propKey, propValue] of Object.entries(elementSettings)) {
1943
- const overridable = componentOverridablePropTypeUtil.extract(propValue);
1944
- if (!overridable) {
1945
- result[propKey] = propValue;
1946
- continue;
1947
- }
1948
- const override = overrides[overridable.override_key];
1949
- if (!override) {
1950
- result[propKey] = propValue;
1951
- continue;
1952
- }
1953
- if (override.outermostKey && override.outermostKey !== overridable.override_key) {
1954
- const originValue = overridable.origin_value;
1955
- result[propKey] = componentOverridablePropTypeUtil.create({
1956
- override_key: override.outermostKey,
1957
- origin_value: override.value ?? originValue
1958
- });
1959
- } else {
1960
- result[propKey] = override.value ?? propValue;
1961
- }
1962
- }
1963
- return result;
1964
- }
1965
- function unwrapOverridableSettings(elementSettings) {
1966
- const result = {};
1967
- for (const [propKey, propValue] of Object.entries(elementSettings)) {
1968
- const overridable = componentOverridablePropTypeUtil.extract(propValue);
1969
- if (!overridable) {
1970
- result[propKey] = propValue;
1971
- continue;
1972
- }
1973
- result[propKey] = overridable.origin_value;
1974
- }
1975
- return result;
1976
- }
1977
-
1978
- // src/components/instance-editing-panel/override-prop-control.tsx
1979
- function OverridePropControl({ overrideKey }) {
1980
- const overridableProps = useComponentOverridableProps();
1981
- const overridableProp = overridableProps?.props[overrideKey];
1982
- if (!overridableProp) {
1983
- return null;
1984
- }
1985
- return /* @__PURE__ */ React19.createElement(SettingsField, { bind: "component_instance", propDisplayName: overridableProp.label }, /* @__PURE__ */ React19.createElement(OverrideControl, { overridableProp }));
1986
- }
1987
- function OverrideControl({ overridableProp }) {
2043
+ // src/components/instance-editing-panel/utils/use-resolved-inner-element.ts
2044
+ function useResolvedInnerElement(overridableProp) {
1988
2045
  const componentInstanceElement = useElement();
1989
- const { value: instanceValue, setValue: setInstanceValue } = useBoundProp(componentInstancePropTypeUtil);
1990
- const wrappingComponentId = useCurrentComponentId();
1991
2046
  const componentId = useComponentId();
1992
- const overridableProps = useComponentOverridableProps();
1993
2047
  const overrides = useComponentInstanceOverrides();
1994
- const controls = useControlsByWidgetType(
1995
- overridableProp?.originPropFields?.widgetType ?? overridableProp.widgetType
1996
- );
1997
- const controlReplacements = getControlReplacements();
1998
- const matchingOverride = getMatchingOverride(overrides, overridableProp.overrideKey);
1999
- if (!componentId) {
2000
- throw new Error("Component ID is required");
2001
- }
2002
- if (!overridableProps) {
2003
- throw new Error("Component has no overridable props");
2004
- }
2005
- const {
2006
- elementId: originElementId,
2007
- widgetType,
2008
- elType,
2009
- propKey
2010
- } = overridableProp.originPropFields ?? overridableProp;
2048
+ const { elementId: originElementId, widgetType, elType } = overridableProp.originPropFields ?? overridableProp;
2011
2049
  const type = elType === "widget" ? widgetType : elType;
2012
2050
  const elementType = getElementType2(type);
2013
- const { elementId, overridesMapping } = useMemo(() => {
2051
+ if (!elementType) {
2052
+ throw new Error(`Element type not found for ${type}`);
2053
+ }
2054
+ const { elementId, overridesMapping } = useMemo2(() => {
2014
2055
  const overridesChainResult = resolveOverridesChain({
2015
2056
  outerOverridableProp: overridableProp,
2016
2057
  outerInstanceId: componentInstanceElement.element.id
@@ -2025,27 +2066,90 @@ function OverrideControl({ overridableProp }) {
2025
2066
  overridesMapping: overridesChainResult.overridesMapping
2026
2067
  };
2027
2068
  }, [overridableProp, componentInstanceElement.element.id, componentId, originElementId]);
2028
- const settingsWithInnerOverrides = useMemo(() => {
2069
+ const settingsWithInnerOverrides = useMemo2(() => {
2029
2070
  const settings = getElementSettings(
2030
2071
  elementId,
2031
2072
  Object.keys(elementType?.propsSchema ?? {})
2032
2073
  );
2033
2074
  return applyOverridesToSettings(settings, overridesMapping);
2034
2075
  }, [elementId, elementType?.propsSchema, overridesMapping]);
2035
- const resolvedElementSettings = useMemo(() => {
2076
+ const resolvedElementSettings = useMemo2(() => {
2036
2077
  const withAllOverrides = applyOverridesToSettings(
2037
2078
  settingsWithInnerOverrides,
2038
2079
  formatOverridesToApply(overrides)
2039
2080
  );
2040
2081
  return unwrapOverridableSettings(withAllOverrides);
2041
2082
  }, [settingsWithInnerOverrides, overrides]);
2083
+ return {
2084
+ elementId,
2085
+ elementType,
2086
+ resolvedOriginValues: settingsWithInnerOverrides,
2087
+ resolvedElementSettings
2088
+ };
2089
+ }
2090
+ function formatOverridesToApply(overrides) {
2091
+ if (!overrides) {
2092
+ return {};
2093
+ }
2094
+ const result = {};
2095
+ for (const item of overrides) {
2096
+ const overridable = componentOverridablePropTypeUtil.extract(item);
2097
+ let override = item;
2098
+ if (overridable) {
2099
+ override = overridable.origin_value;
2100
+ }
2101
+ const extractedOverride = componentInstanceOverridePropTypeUtil.extract(override);
2102
+ if (!extractedOverride) {
2103
+ continue;
2104
+ }
2105
+ result[extractedOverride.override_key] = {
2106
+ value: extractedOverride.override_value
2107
+ };
2108
+ }
2109
+ return result;
2110
+ }
2111
+
2112
+ // src/components/instance-editing-panel/override-prop-control.tsx
2113
+ function OverridePropControl({ overrideKey }) {
2114
+ const overridableProps = useComponentOverridableProps();
2115
+ const overridableProp = overridableProps.props[overrideKey];
2116
+ if (!overridableProp) {
2117
+ return null;
2118
+ }
2119
+ return /* @__PURE__ */ React19.createElement(SettingsField, { bind: "component_instance", propDisplayName: overridableProp.label }, /* @__PURE__ */ React19.createElement(OverrideControl, { overridableProp }));
2120
+ }
2121
+ function OverrideControl({ overridableProp }) {
2122
+ const componentInstanceElement = useElement2();
2123
+ const { value: instanceValue, setValue: setInstanceValue } = useBoundProp(componentInstancePropTypeUtil);
2124
+ const wrappingComponentId = useCurrentComponentId();
2125
+ const componentId = useComponentId();
2126
+ const overridableProps = useComponentOverridableProps();
2127
+ const overrides = useComponentInstanceOverrides();
2128
+ const controls = useControlsByWidgetType(
2129
+ overridableProp.originPropFields?.widgetType ?? overridableProp.widgetType
2130
+ );
2131
+ const controlReplacements = getControlReplacements();
2132
+ const matchingOverride = getMatchingOverride(overrides, overridableProp.overrideKey);
2133
+ const { propKey } = overridableProp.originPropFields ?? overridableProp;
2042
2134
  const propType = getPropTypeForComponentOverride(overridableProp);
2043
- if (!propType || !elementType) {
2135
+ if (!propType) {
2136
+ throw new OverrideControlPropTypeNotFoundError({ context: { overridableProp } });
2137
+ }
2138
+ const { elementId, elementType, resolvedElementSettings, resolvedOriginValues } = useResolvedInnerElement(overridableProp);
2139
+ const { overrideValue, isDisabled, isHidden } = useOverrideControlDependencies({
2140
+ existingOverride: matchingOverride,
2141
+ resolvedElementSettings,
2142
+ elementType,
2143
+ elementId,
2144
+ propKey
2145
+ });
2146
+ if (isHidden) {
2044
2147
  return null;
2045
2148
  }
2046
2149
  const { propValue, placeholderValue } = resolveValueAndPlaceholder(
2047
2150
  matchingOverride,
2048
- settingsWithInnerOverrides,
2151
+ overrideValue,
2152
+ resolvedOriginValues,
2049
2153
  propKey
2050
2154
  );
2051
2155
  const value = {
@@ -2054,14 +2158,15 @@ function OverrideControl({ overridableProp }) {
2054
2158
  const placeholder = {
2055
2159
  [overridableProp.overrideKey]: placeholderValue
2056
2160
  };
2161
+ const { control, controlProps, layout } = getControlParams(
2162
+ controls,
2163
+ overridableProp.originPropFields ?? overridableProp,
2164
+ overridableProp.label
2165
+ );
2166
+ const propTypeSchema = createTopLevelObjectType({
2167
+ schema: { [overridableProp.overrideKey]: propType }
2168
+ });
2057
2169
  const setValue = (newValue) => {
2058
- if (!overridableProps) {
2059
- setInstanceValue({
2060
- ...instanceValue,
2061
- overrides: void 0
2062
- });
2063
- return;
2064
- }
2065
2170
  let newPropValue = getTempNewValueForDynamicProp(
2066
2171
  propType,
2067
2172
  propValue,
@@ -2097,16 +2202,6 @@ function OverrideControl({ overridableProp }) {
2097
2202
  updateOverridableProp(wrappingComponentId, overridableValue, originPropFields);
2098
2203
  }
2099
2204
  };
2100
- const { control, controlProps, layout } = getControlParams(
2101
- controls,
2102
- overridableProp?.originPropFields ?? overridableProp,
2103
- overridableProp.label
2104
- );
2105
- const propTypeSchema = createTopLevelObjectType({
2106
- schema: {
2107
- [overridableProp.overrideKey]: propType
2108
- }
2109
- });
2110
2205
  return /* @__PURE__ */ React19.createElement(
2111
2206
  OverridablePropProvider,
2112
2207
  {
@@ -2116,32 +2211,30 @@ function OverrideControl({ overridableProp }) {
2116
2211
  /* @__PURE__ */ React19.createElement(
2117
2212
  ElementProvider,
2118
2213
  {
2119
- element: { id: elementId, type },
2214
+ element: { id: elementId, type: elementType.key },
2120
2215
  elementType,
2121
2216
  settings: resolvedElementSettings
2122
2217
  },
2123
- /* @__PURE__ */ React19.createElement(SettingsField, { bind: propKey, propDisplayName: overridableProp.label }, /* @__PURE__ */ React19.createElement(
2218
+ /* @__PURE__ */ React19.createElement(
2124
2219
  PropProvider,
2125
2220
  {
2126
2221
  propType: propTypeSchema,
2127
2222
  value,
2128
2223
  setValue,
2129
2224
  placeholder,
2130
- isDisabled: () => {
2131
- return false;
2132
- }
2225
+ isDisabled
2133
2226
  },
2134
2227
  /* @__PURE__ */ React19.createElement(PropKeyProvider, { bind: overridableProp.overrideKey }, /* @__PURE__ */ React19.createElement(ControlReplacementsProvider, { replacements: controlReplacements }, /* @__PURE__ */ React19.createElement(Box8, { mb: 1.5 }, /* @__PURE__ */ React19.createElement(ControlTypeContainer, { layout }, layout !== "custom" && /* @__PURE__ */ React19.createElement(ControlLabel, null, overridableProp.label), /* @__PURE__ */ React19.createElement(OriginalControl, { control, controlProps })))))
2135
- ))
2228
+ )
2136
2229
  )
2137
2230
  );
2138
2231
  }
2139
- function resolveValueAndPlaceholder(matchingOverride, settingsWithInnerOverrides, propKey) {
2140
- const overrideValue = matchingOverride ? resolveOverridePropValue(matchingOverride) : null;
2141
- const placeholderSettings = unwrapOverridableSettings(settingsWithInnerOverrides);
2232
+ function resolveValueAndPlaceholder(matchingOverride, overrideValue, resolvedOriginValues, propKey) {
2233
+ const placeholderSettings = unwrapOverridableSettings(resolvedOriginValues);
2142
2234
  const inheritedValue = placeholderSettings[propKey] ?? null;
2143
2235
  const isInheritedDynamic = isDynamicPropValue(inheritedValue);
2144
- const propValue = isInheritedDynamic && !matchingOverride ? inheritedValue : overrideValue;
2236
+ const shouldUseInheritedAsValue = isInheritedDynamic && !matchingOverride;
2237
+ const propValue = shouldUseInheritedAsValue ? inheritedValue : overrideValue;
2145
2238
  const placeholderValue = matchingOverride || isInheritedDynamic ? null : inheritedValue;
2146
2239
  return { propValue, placeholderValue };
2147
2240
  }
@@ -2224,27 +2317,6 @@ function isValidOverride(overridableProps, override) {
2224
2317
  const overridableKey = componentOverridablePropTypeUtil.isValid(override) ? override.value.origin_value?.value.override_key : override.value.override_key;
2225
2318
  return !!overridableProps.props[overridableKey];
2226
2319
  }
2227
- function formatOverridesToApply(overrides) {
2228
- if (!overrides) {
2229
- return {};
2230
- }
2231
- const result = {};
2232
- for (const item of overrides) {
2233
- const overridable = componentOverridablePropTypeUtil.extract(item);
2234
- let override = item;
2235
- if (overridable) {
2236
- override = overridable.origin_value;
2237
- }
2238
- const extractedOverride = componentInstanceOverridePropTypeUtil.extract(override);
2239
- if (!extractedOverride) {
2240
- continue;
2241
- }
2242
- result[extractedOverride.override_key] = {
2243
- value: extractedOverride.override_value
2244
- };
2245
- }
2246
- return result;
2247
- }
2248
2320
 
2249
2321
  // src/components/instance-editing-panel/override-props-group.tsx
2250
2322
  function OverridePropsGroup({ group }) {
@@ -2284,7 +2356,7 @@ function InstancePanelBody({ groups, isEmpty, emptyState, componentInstanceId })
2284
2356
  }
2285
2357
 
2286
2358
  // src/components/instance-editing-panel/use-instance-panel-data.ts
2287
- import { useElement as useElement2 } from "@elementor/editor-editing-panel";
2359
+ import { useElement as useElement3 } from "@elementor/editor-editing-panel";
2288
2360
 
2289
2361
  // src/utils/filter-valid-overridable-props.ts
2290
2362
  function filterValidOverridableProps(overridableProps, instanceElementId) {
@@ -2344,7 +2416,7 @@ function useInstancePanelData() {
2344
2416
  return { componentId, component, overrides, overridableProps, groups, isEmpty, componentInstanceId };
2345
2417
  }
2346
2418
  function useComponentInstanceSettings() {
2347
- const { element, settings } = useElement2();
2419
+ const { element, settings } = useElement3();
2348
2420
  return { element, settings: componentInstancePropTypeUtil.extract(settings.component_instance) };
2349
2421
  }
2350
2422