@elementor/editor-editing-panel 1.43.0 → 1.44.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.
Files changed (33) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/index.d.mts +4 -1
  3. package/dist/index.d.ts +4 -1
  4. package/dist/index.js +1087 -905
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.mjs +857 -677
  7. package/dist/index.mjs.map +1 -1
  8. package/package.json +4 -4
  9. package/src/action.tsx +1 -1
  10. package/src/components/add-or-remove-content.tsx +3 -4
  11. package/src/components/collapsible-content.tsx +42 -14
  12. package/src/components/control-label.tsx +1 -1
  13. package/src/components/section.tsx +21 -7
  14. package/src/components/style-sections/border-section/border-field.tsx +2 -1
  15. package/src/components/style-sections/position-section/dimensions-field.tsx +8 -8
  16. package/src/components/style-sections/size-section/size-section.tsx +3 -3
  17. package/src/components/style-sections/typography-section/text-stroke-field.tsx +2 -1
  18. package/src/components/style-sections/typography-section/typography-section.tsx +15 -3
  19. package/src/components/style-tab-collapsible-content.tsx +22 -0
  20. package/src/components/style-tab-section.tsx +30 -0
  21. package/src/components/style-tab.tsx +51 -35
  22. package/src/controls-registry/styles-field.tsx +1 -1
  23. package/src/dynamics/components/dynamic-selection-control.tsx +11 -15
  24. package/src/index.ts +1 -0
  25. package/src/popover-action.tsx +3 -9
  26. package/src/styles-inheritance/components/{label-chip.tsx → infotip/label-chip.tsx} +1 -1
  27. package/src/styles-inheritance/{styles-inheritance-indicator.tsx → components/styles-inheritance-indicator.tsx} +8 -8
  28. package/src/styles-inheritance/{styles-inheritance-infotip.tsx → components/styles-inheritance-infotip.tsx} +7 -7
  29. package/src/styles-inheritance/components/styles-inheritance-section-indicators.tsx +113 -0
  30. /package/src/styles-inheritance/components/{action-icons.tsx → infotip/action-icons.tsx} +0 -0
  31. /package/src/styles-inheritance/components/{breakpoint-icon.tsx → infotip/breakpoint-icon.tsx} +0 -0
  32. /package/src/styles-inheritance/components/{index.ts → infotip/index.ts} +0 -0
  33. /package/src/styles-inheritance/components/{value-component.tsx → infotip/value-component.tsx} +0 -0
package/dist/index.mjs CHANGED
@@ -1142,7 +1142,7 @@ function useHandleSelect() {
1142
1142
  import { __createPanel as createPanel } from "@elementor/editor-panels";
1143
1143
 
1144
1144
  // src/components/editing-panel.tsx
1145
- import * as React80 from "react";
1145
+ import * as React83 from "react";
1146
1146
  import { ControlActionsProvider, ControlReplacementsProvider } from "@elementor/editor-controls";
1147
1147
  import { useSelectedElement } from "@elementor/editor-elements";
1148
1148
  import { Panel, PanelBody, PanelHeader, PanelHeaderTitle } from "@elementor/editor-panels";
@@ -1150,7 +1150,7 @@ import { ThemeProvider as ThemeProvider9 } from "@elementor/editor-ui";
1150
1150
  import { AtomIcon } from "@elementor/icons";
1151
1151
  import { SessionStorageProvider as SessionStorageProvider3 } from "@elementor/session";
1152
1152
  import { ErrorBoundary } from "@elementor/ui";
1153
- import { __ as __54 } from "@wordpress/i18n";
1153
+ import { __ as __55 } from "@wordpress/i18n";
1154
1154
 
1155
1155
  // src/controls-actions.ts
1156
1156
  import { createMenu } from "@elementor/menus";
@@ -1163,14 +1163,14 @@ function Action({ title, visible = true, icon: Icon, onClick }) {
1163
1163
  if (!visible) {
1164
1164
  return null;
1165
1165
  }
1166
- return /* @__PURE__ */ React9.createElement(Tooltip, { placement: "bottom", title, arrow: true }, /* @__PURE__ */ React9.createElement(IconButton, { "aria-label": title, size: SIZE, onClick }, /* @__PURE__ */ React9.createElement(Icon, { fontSize: SIZE })));
1166
+ return /* @__PURE__ */ React9.createElement(Tooltip, { placement: "top", title, arrow: true }, /* @__PURE__ */ React9.createElement(IconButton, { "aria-label": title, size: SIZE, onClick }, /* @__PURE__ */ React9.createElement(Icon, { fontSize: SIZE })));
1167
1167
  }
1168
1168
 
1169
1169
  // src/popover-action.tsx
1170
1170
  import * as React10 from "react";
1171
1171
  import { useId as useId2 } from "react";
1172
- import { XIcon } from "@elementor/icons";
1173
- import { bindPopover, bindToggle, IconButton as IconButton2, Popover, Stack as Stack4, Tooltip as Tooltip2, Typography as Typography4, usePopupState as usePopupState2 } from "@elementor/ui";
1172
+ import { PopoverHeader } from "@elementor/editor-ui";
1173
+ import { bindPopover, bindToggle, IconButton as IconButton2, Popover, Tooltip as Tooltip2, usePopupState as usePopupState2 } from "@elementor/ui";
1174
1174
  var SIZE2 = "tiny";
1175
1175
  function PopoverAction({
1176
1176
  title,
@@ -1197,7 +1197,7 @@ function PopoverAction({
1197
1197
  },
1198
1198
  ...bindPopover(popupState)
1199
1199
  },
1200
- /* @__PURE__ */ React10.createElement(Stack4, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React10.createElement(Icon, { fontSize: SIZE2, sx: { mr: 0.5 } }), /* @__PURE__ */ React10.createElement(Typography4, { variant: "subtitle2" }, title), /* @__PURE__ */ React10.createElement(IconButton2, { sx: { ml: "auto" }, size: SIZE2, onClick: popupState.close }, /* @__PURE__ */ React10.createElement(XIcon, { fontSize: SIZE2 }))),
1200
+ /* @__PURE__ */ React10.createElement(PopoverHeader, { title, onClose: popupState.close, icon: /* @__PURE__ */ React10.createElement(Icon, { fontSize: SIZE2 }) }),
1201
1201
  /* @__PURE__ */ React10.createElement(PopoverContent2, { closePopover: popupState.close })
1202
1202
  ));
1203
1203
  }
@@ -1218,11 +1218,11 @@ function EditorPanelErrorFallback() {
1218
1218
  }
1219
1219
 
1220
1220
  // src/components/editing-panel-tabs.tsx
1221
- import * as React79 from "react";
1221
+ import * as React82 from "react";
1222
1222
  import { Fragment as Fragment10 } from "react";
1223
- import { isExperimentActive as isExperimentActive11 } from "@elementor/editor-v1-adapters";
1223
+ import { isExperimentActive as isExperimentActive13 } from "@elementor/editor-v1-adapters";
1224
1224
  import { Divider as Divider6, Stack as Stack18, Tab, TabPanel, Tabs, useTabs } from "@elementor/ui";
1225
- import { __ as __53 } from "@wordpress/i18n";
1225
+ import { __ as __54 } from "@wordpress/i18n";
1226
1226
 
1227
1227
  // src/contexts/scroll-context.tsx
1228
1228
  import * as React12 from "react";
@@ -1306,9 +1306,9 @@ var useStateByElement = (key, initialValue) => {
1306
1306
  };
1307
1307
 
1308
1308
  // src/components/settings-tab.tsx
1309
- import * as React18 from "react";
1309
+ import * as React19 from "react";
1310
1310
  import { ControlFormLabel } from "@elementor/editor-controls";
1311
- import { isExperimentActive as isExperimentActive3 } from "@elementor/editor-v1-adapters";
1311
+ import { isExperimentActive as isExperimentActive4 } from "@elementor/editor-v1-adapters";
1312
1312
  import { SessionStorageProvider } from "@elementor/session";
1313
1313
  import { Divider as Divider3 } from "@elementor/ui";
1314
1314
 
@@ -1408,9 +1408,10 @@ var SettingsField = ({ bind, children }) => {
1408
1408
  };
1409
1409
 
1410
1410
  // src/components/section.tsx
1411
- import * as React16 from "react";
1411
+ import * as React17 from "react";
1412
1412
  import { useId as useId3 } from "react";
1413
- import { Collapse, Divider as Divider2, ListItemButton, ListItemText, Stack as Stack5 } from "@elementor/ui";
1413
+ import { isExperimentActive as isExperimentActive3 } from "@elementor/editor-v1-adapters";
1414
+ import { Collapse as Collapse2, Divider as Divider2, ListItemButton, ListItemText, Stack as Stack5 } from "@elementor/ui";
1414
1415
 
1415
1416
  // src/components/collapse-icon.tsx
1416
1417
  import { ChevronDownIcon } from "@elementor/icons";
@@ -1424,49 +1425,95 @@ var CollapseIcon = styled5(ChevronDownIcon, {
1424
1425
  })
1425
1426
  }));
1426
1427
 
1428
+ // src/components/collapsible-content.tsx
1429
+ import * as React16 from "react";
1430
+ import { useState as useState7 } from "react";
1431
+ import { Button, Collapse, Stack as Stack4, styled as styled6 } from "@elementor/ui";
1432
+ import { __ as __5 } from "@wordpress/i18n";
1433
+ var IndicatorsWrapper = styled6("div")`
1434
+ position: absolute;
1435
+ top: 0;
1436
+ right: ${({ theme }) => theme.spacing(3)};
1437
+ height: 100%;
1438
+ display: flex;
1439
+ flex-direction: column;
1440
+ align-items: center;
1441
+ justify-content: center;
1442
+ `;
1443
+ var CollapsibleContent = ({ children, defaultOpen = false, titleEnd = null }) => {
1444
+ const [open, setOpen] = useState7(defaultOpen);
1445
+ const handleToggle = () => {
1446
+ setOpen((prevOpen) => !prevOpen);
1447
+ };
1448
+ return /* @__PURE__ */ React16.createElement(Stack4, null, /* @__PURE__ */ React16.createElement(Stack4, { sx: { position: "relative" } }, /* @__PURE__ */ React16.createElement(
1449
+ Button,
1450
+ {
1451
+ fullWidth: true,
1452
+ size: "small",
1453
+ color: "secondary",
1454
+ variant: "outlined",
1455
+ onClick: handleToggle,
1456
+ endIcon: /* @__PURE__ */ React16.createElement(CollapseIcon, { open }),
1457
+ sx: { my: 0.5 }
1458
+ },
1459
+ open ? __5("Show less", "elementor") : __5("Show more", "elementor")
1460
+ ), titleEnd && /* @__PURE__ */ React16.createElement(IndicatorsWrapper, null, getCollapsibleValue(titleEnd, open))), /* @__PURE__ */ React16.createElement(Collapse, { in: open, timeout: "auto", unmountOnExit: true }, children));
1461
+ };
1462
+ function getCollapsibleValue(value, isOpen) {
1463
+ if (typeof value === "function") {
1464
+ return value(isOpen);
1465
+ }
1466
+ return value;
1467
+ }
1468
+
1427
1469
  // src/components/section.tsx
1428
- function Section({ title, children, defaultExpanded = false }) {
1470
+ function Section({ title, children, defaultExpanded = false, titleEnd }) {
1429
1471
  const [isOpen, setIsOpen] = useStateByElement(title, !!defaultExpanded);
1472
+ const handleClick = () => {
1473
+ setIsOpen(!isOpen);
1474
+ };
1430
1475
  const id = useId3();
1431
1476
  const labelId = `label-${id}`;
1432
1477
  const contentId = `content-${id}`;
1433
- return /* @__PURE__ */ React16.createElement(React16.Fragment, null, /* @__PURE__ */ React16.createElement(
1478
+ const isUsingTitleEnd = isExperimentActive3(EXPERIMENTAL_FEATURES.V_3_30);
1479
+ return /* @__PURE__ */ React17.createElement(React17.Fragment, null, /* @__PURE__ */ React17.createElement(
1434
1480
  ListItemButton,
1435
1481
  {
1436
1482
  id: labelId,
1437
1483
  "aria-controls": contentId,
1438
- onClick: () => setIsOpen(!isOpen),
1484
+ onClick: handleClick,
1439
1485
  sx: { "&:hover": { backgroundColor: "transparent" } }
1440
1486
  },
1441
- /* @__PURE__ */ React16.createElement(
1487
+ /* @__PURE__ */ React17.createElement(Stack5, { direction: "row", alignItems: "center", justifyItems: "start", flexGrow: 1, gap: 0.5 }, /* @__PURE__ */ React17.createElement(
1442
1488
  ListItemText,
1443
1489
  {
1444
1490
  secondary: title,
1445
- secondaryTypographyProps: { color: "text.primary", variant: "caption", fontWeight: "bold" }
1491
+ secondaryTypographyProps: { color: "text.primary", variant: "caption", fontWeight: "bold" },
1492
+ sx: { flexGrow: 0, flexShrink: 1, marginInlineEnd: 1 }
1446
1493
  }
1447
- ),
1448
- /* @__PURE__ */ React16.createElement(CollapseIcon, { open: isOpen, color: "secondary", fontSize: "tiny" })
1449
- ), /* @__PURE__ */ React16.createElement(Collapse, { id: contentId, "aria-labelledby": labelId, in: isOpen, timeout: "auto", unmountOnExit: true }, /* @__PURE__ */ React16.createElement(Stack5, { gap: 2.5, p: 2 }, children)), /* @__PURE__ */ React16.createElement(Divider2, null));
1494
+ ), isUsingTitleEnd ? getCollapsibleValue(titleEnd, isOpen) : null),
1495
+ /* @__PURE__ */ React17.createElement(CollapseIcon, { open: isOpen, color: "secondary", fontSize: "tiny" })
1496
+ ), /* @__PURE__ */ React17.createElement(Collapse2, { id: contentId, "aria-labelledby": labelId, in: isOpen, timeout: "auto", unmountOnExit: true }, /* @__PURE__ */ React17.createElement(Stack5, { gap: 2.5, p: 2 }, children)), /* @__PURE__ */ React17.createElement(Divider2, null));
1450
1497
  }
1451
1498
 
1452
1499
  // src/components/sections-list.tsx
1453
- import * as React17 from "react";
1500
+ import * as React18 from "react";
1454
1501
  import { List } from "@elementor/ui";
1455
1502
  function SectionsList(props) {
1456
- return /* @__PURE__ */ React17.createElement(List, { disablePadding: true, component: "div", ...props });
1503
+ return /* @__PURE__ */ React18.createElement(List, { disablePadding: true, component: "div", ...props });
1457
1504
  }
1458
1505
 
1459
1506
  // src/components/settings-tab.tsx
1460
1507
  var SettingsTab = () => {
1461
1508
  const { elementType, element } = useElement();
1462
1509
  const settingsDefault = useDefaultPanelSettings();
1463
- const isDefaultExpanded = (sectionId) => isExperimentActive3(EXPERIMENTAL_FEATURES.V_3_30) ? settingsDefault.defaultSectionsExpanded.settings?.includes(sectionId) : true;
1464
- return /* @__PURE__ */ React18.createElement(SessionStorageProvider, { prefix: element.id }, /* @__PURE__ */ React18.createElement(SectionsList, null, elementType.controls.map(({ type, value }, index) => {
1510
+ const isDefaultExpanded = (sectionId) => isExperimentActive4(EXPERIMENTAL_FEATURES.V_3_30) ? settingsDefault.defaultSectionsExpanded.settings?.includes(sectionId) : true;
1511
+ return /* @__PURE__ */ React19.createElement(SessionStorageProvider, { prefix: element.id }, /* @__PURE__ */ React19.createElement(SectionsList, null, elementType.controls.map(({ type, value }, index) => {
1465
1512
  if (type === "control") {
1466
- return /* @__PURE__ */ React18.createElement(Control2, { key: value.bind, control: value });
1513
+ return /* @__PURE__ */ React19.createElement(Control2, { key: value.bind, control: value });
1467
1514
  }
1468
1515
  if (type === "section") {
1469
- return /* @__PURE__ */ React18.createElement(
1516
+ return /* @__PURE__ */ React19.createElement(
1470
1517
  Section,
1471
1518
  {
1472
1519
  title: value.label,
@@ -1475,7 +1522,7 @@ var SettingsTab = () => {
1475
1522
  },
1476
1523
  value.items?.map((item) => {
1477
1524
  if (item.type === "control") {
1478
- return /* @__PURE__ */ React18.createElement(Control2, { key: item.value.bind, control: item.value });
1525
+ return /* @__PURE__ */ React19.createElement(Control2, { key: item.value.bind, control: item.value });
1479
1526
  }
1480
1527
  return null;
1481
1528
  })
@@ -1489,21 +1536,20 @@ var Control2 = ({ control }) => {
1489
1536
  return null;
1490
1537
  }
1491
1538
  const layout = control.meta?.layout || getDefaultLayout(control.type);
1492
- return /* @__PURE__ */ React18.createElement(SettingsField, { bind: control.bind }, control.meta?.topDivider && /* @__PURE__ */ React18.createElement(Divider3, null), /* @__PURE__ */ React18.createElement(ControlTypeContainer, { layout }, control.label ? /* @__PURE__ */ React18.createElement(ControlFormLabel, null, control.label) : null, /* @__PURE__ */ React18.createElement(Control, { type: control.type, props: control.props })));
1539
+ return /* @__PURE__ */ React19.createElement(SettingsField, { bind: control.bind }, control.meta?.topDivider && /* @__PURE__ */ React19.createElement(Divider3, null), /* @__PURE__ */ React19.createElement(ControlTypeContainer, { layout }, control.label ? /* @__PURE__ */ React19.createElement(ControlFormLabel, null, control.label) : null, /* @__PURE__ */ React19.createElement(Control, { type: control.type, props: control.props })));
1493
1540
  };
1494
1541
 
1495
1542
  // src/components/style-tab.tsx
1496
- import * as React78 from "react";
1543
+ import * as React81 from "react";
1497
1544
  import { useState as useState12 } from "react";
1498
1545
  import { CLASSES_PROP_KEY } from "@elementor/editor-props";
1499
1546
  import { useActiveBreakpoint } from "@elementor/editor-responsive";
1500
- import { isExperimentActive as isExperimentActive10 } from "@elementor/editor-v1-adapters";
1501
1547
  import { SessionStorageProvider as SessionStorageProvider2 } from "@elementor/session";
1502
1548
  import { Divider as Divider5, Stack as Stack17 } from "@elementor/ui";
1503
- import { __ as __52 } from "@wordpress/i18n";
1549
+ import { __ as __53 } from "@wordpress/i18n";
1504
1550
 
1505
1551
  // src/contexts/styles-inheritance-context.tsx
1506
- import * as React19 from "react";
1552
+ import * as React20 from "react";
1507
1553
  import { createContext as createContext7, useContext as useContext7 } from "react";
1508
1554
  import { getWidgetsCache, useElementSetting as useElementSetting3 } from "@elementor/editor-elements";
1509
1555
  import { classesPropTypeUtil as classesPropTypeUtil2 } from "@elementor/editor-props";
@@ -1742,7 +1788,7 @@ function StyleInheritanceProvider({ children }) {
1742
1788
  const styleDefs = useAppliedStyles();
1743
1789
  const breakpointsTree = getBreakpointsTree();
1744
1790
  const { getSnapshot, getInheritanceChain } = createStylesInheritance(styleDefs, breakpointsTree);
1745
- return /* @__PURE__ */ React19.createElement(Context4.Provider, { value: { getSnapshot, getInheritanceChain } }, children);
1791
+ return /* @__PURE__ */ React20.createElement(Context4.Provider, { value: { getSnapshot, getInheritanceChain } }, children);
1746
1792
  }
1747
1793
  function useStylesInheritanceSnapshot() {
1748
1794
  const context = useContext7(Context4);
@@ -1811,11 +1857,11 @@ function useActiveAndAppliedClassId(id, appliedClassesIds) {
1811
1857
  }
1812
1858
 
1813
1859
  // src/components/style-sections/background-section/background-section.tsx
1814
- import * as React28 from "react";
1860
+ import * as React29 from "react";
1815
1861
  import { BackgroundControl } from "@elementor/editor-controls";
1816
1862
 
1817
1863
  // src/controls-registry/styles-field.tsx
1818
- import * as React27 from "react";
1864
+ import * as React28 from "react";
1819
1865
  import { ControlAdornmentsProvider, PropKeyProvider as PropKeyProvider2, PropProvider as PropProvider2 } from "@elementor/editor-controls";
1820
1866
  import { getStylesSchema as getStylesSchema2 } from "@elementor/editor-styles";
1821
1867
 
@@ -1829,7 +1875,7 @@ import {
1829
1875
  import { getVariantByMeta } from "@elementor/editor-styles";
1830
1876
  import { ELEMENTS_STYLES_RESERVED_LABEL } from "@elementor/editor-styles-repository";
1831
1877
  import { undoable as undoable2 } from "@elementor/editor-v1-adapters";
1832
- import { __ as __5 } from "@wordpress/i18n";
1878
+ import { __ as __6 } from "@wordpress/i18n";
1833
1879
  function useStylesFields(propNames) {
1834
1880
  const { element } = useElement();
1835
1881
  const { id, meta, provider } = useStyle();
@@ -1900,7 +1946,7 @@ function useUndoableCreateElementStyle() {
1900
1946
  },
1901
1947
  {
1902
1948
  title: ({ elementId }) => getElementLabel2(elementId),
1903
- subtitle: __5("Style edited", "elementor")
1949
+ subtitle: __6("Style edited", "elementor")
1904
1950
  }
1905
1951
  );
1906
1952
  }, []);
@@ -1933,7 +1979,7 @@ function useUndoableUpdateStyle() {
1933
1979
  },
1934
1980
  {
1935
1981
  title: ({ elementId }) => getElementLabel2(elementId),
1936
- subtitle: __5("Style edited", "elementor")
1982
+ subtitle: __6("Style edited", "elementor")
1937
1983
  }
1938
1984
  );
1939
1985
  }, []);
@@ -1959,17 +2005,17 @@ function useStylesField(propName) {
1959
2005
  return [value, setValue];
1960
2006
  }
1961
2007
 
1962
- // src/styles-inheritance/styles-inheritance-indicator.tsx
1963
- import * as React26 from "react";
2008
+ // src/styles-inheritance/components/styles-inheritance-indicator.tsx
2009
+ import * as React27 from "react";
1964
2010
  import { useBoundProp } from "@elementor/editor-controls";
1965
2011
  import { isEmpty as isEmpty2 } from "@elementor/editor-props";
1966
2012
  import { ELEMENTS_BASE_STYLES_PROVIDER_KEY as ELEMENTS_BASE_STYLES_PROVIDER_KEY3, isElementsStylesProvider as isElementsStylesProvider3 } from "@elementor/editor-styles-repository";
1967
- import { isExperimentActive as isExperimentActive5 } from "@elementor/editor-v1-adapters";
2013
+ import { isExperimentActive as isExperimentActive6 } from "@elementor/editor-v1-adapters";
1968
2014
  import { Tooltip as Tooltip6 } from "@elementor/ui";
1969
- import { __ as __9 } from "@wordpress/i18n";
2015
+ import { __ as __10 } from "@wordpress/i18n";
1970
2016
 
1971
2017
  // src/styles-inheritance/consts.ts
1972
- import { isExperimentActive as isExperimentActive4 } from "@elementor/editor-v1-adapters";
2018
+ import { isExperimentActive as isExperimentActive5 } from "@elementor/editor-v1-adapters";
1973
2019
  var excludePropTypeTransformers = /* @__PURE__ */ new Set([
1974
2020
  "background-color-overlay",
1975
2021
  "background-image-overlay",
@@ -1982,11 +2028,11 @@ var excludePropTypeTransformers = /* @__PURE__ */ new Set([
1982
2028
  "image",
1983
2029
  "background-overlay"
1984
2030
  ]);
1985
- var isUsingIndicatorPopover = () => isExperimentActive4("e_v_3_30");
2031
+ var isUsingIndicatorPopover = () => isExperimentActive5("e_v_3_30");
1986
2032
 
1987
- // src/styles-inheritance/styles-inheritance-infotip.tsx
1988
- import * as React25 from "react";
1989
- import { useMemo as useMemo4, useState as useState8 } from "react";
2033
+ // src/styles-inheritance/components/styles-inheritance-infotip.tsx
2034
+ import * as React26 from "react";
2035
+ import { useMemo as useMemo4, useState as useState9 } from "react";
1990
2036
  import { createPropsResolver } from "@elementor/editor-canvas";
1991
2037
  import {
1992
2038
  Backdrop,
@@ -1999,19 +2045,19 @@ import {
1999
2045
  Infotip,
2000
2046
  Stack as Stack7,
2001
2047
  Tooltip as Tooltip5,
2002
- Typography as Typography6
2048
+ Typography as Typography5
2003
2049
  } from "@elementor/ui";
2004
- import { __ as __8 } from "@wordpress/i18n";
2050
+ import { __ as __9 } from "@wordpress/i18n";
2005
2051
 
2006
2052
  // src/components/section-content.tsx
2007
2053
  import { createContext as createContext8, useContext as useContext8, useRef as useRef3 } from "react";
2008
- import * as React20 from "react";
2054
+ import * as React21 from "react";
2009
2055
  import { Stack as Stack6 } from "@elementor/ui";
2010
2056
  var SectionContentRefContext = createContext8(null);
2011
2057
  var useSectionContentRef = () => useContext8(SectionContentRefContext);
2012
2058
  var SectionContent = ({ gap = 2, sx, children }) => {
2013
2059
  const ref = useRef3(null);
2014
- return /* @__PURE__ */ React20.createElement(SectionContentRefContext.Provider, { value: ref }, /* @__PURE__ */ React20.createElement(Stack6, { gap, sx: { ...sx }, ref }, children));
2060
+ return /* @__PURE__ */ React21.createElement(SectionContentRefContext.Provider, { value: ref }, /* @__PURE__ */ React21.createElement(Stack6, { gap, sx: { ...sx }, ref }, children));
2015
2061
  };
2016
2062
 
2017
2063
  // src/hooks/use-direction.ts
@@ -2034,8 +2080,81 @@ function useDirection() {
2034
2080
  return { isSiteRtl, isUiRtl };
2035
2081
  }
2036
2082
 
2037
- // src/styles-inheritance/components/breakpoint-icon.tsx
2038
- import * as React21 from "react";
2083
+ // src/styles-inheritance/hooks/use-normalized-inheritance-chain-items.tsx
2084
+ import { isValidElement, useEffect as useEffect3, useState as useState8 } from "react";
2085
+ import { ELEMENTS_BASE_STYLES_PROVIDER_KEY } from "@elementor/editor-styles-repository";
2086
+ import { __ as __7 } from "@wordpress/i18n";
2087
+ var MAXIMUM_ITEMS = 2;
2088
+ var useNormalizedInheritanceChainItems = (inheritanceChain, bind, resolve) => {
2089
+ const [items3, setItems] = useState8([]);
2090
+ useEffect3(() => {
2091
+ (async () => {
2092
+ const normalizedItems = await Promise.all(
2093
+ inheritanceChain.filter(({ style }) => style).map((item, index) => normalizeInheritanceItem(item, index, bind, resolve))
2094
+ );
2095
+ const validItems = normalizedItems.map((item) => ({
2096
+ ...item,
2097
+ displayLabel: ELEMENTS_BASE_STYLES_PROVIDER_KEY !== item.provider ? item.displayLabel : __7("Base", "elementor")
2098
+ })).filter((item) => !item.value || item.displayLabel !== "").slice(0, MAXIMUM_ITEMS);
2099
+ setItems(validItems);
2100
+ })();
2101
+ }, [inheritanceChain, bind, resolve]);
2102
+ return items3;
2103
+ };
2104
+ var DEFAULT_BREAKPOINT2 = "desktop";
2105
+ var normalizeInheritanceItem = async (item, index, bind, resolve) => {
2106
+ const {
2107
+ variant: {
2108
+ meta: { state, breakpoint }
2109
+ },
2110
+ style: { label, id }
2111
+ } = item;
2112
+ const displayLabel = `${label}${state ? ":" + state : ""}`;
2113
+ return {
2114
+ id: id ? id + (state ?? "") : index,
2115
+ provider: item.provider || "",
2116
+ breakpoint: breakpoint ?? DEFAULT_BREAKPOINT2,
2117
+ displayLabel,
2118
+ value: await getTransformedValue(item, bind, resolve),
2119
+ chipColor: getChipColor(item)
2120
+ };
2121
+ };
2122
+ var getTransformedValue = async (item, bind, resolve) => {
2123
+ try {
2124
+ const result = await resolve({
2125
+ props: {
2126
+ [bind]: item.value
2127
+ }
2128
+ });
2129
+ const value = result?.[bind] ?? result;
2130
+ if (isValidElement(value)) {
2131
+ return value;
2132
+ }
2133
+ if (typeof value === "object") {
2134
+ return JSON.stringify(value);
2135
+ }
2136
+ return String(value);
2137
+ } catch {
2138
+ return "";
2139
+ }
2140
+ };
2141
+ var getChipColor = (item) => {
2142
+ const { provider = "", style } = item;
2143
+ if (provider === ELEMENTS_BASE_STYLES_PROVIDER_KEY) {
2144
+ return "default";
2145
+ }
2146
+ if (style?.label === "local") {
2147
+ return "accent";
2148
+ }
2149
+ return "global";
2150
+ };
2151
+
2152
+ // src/styles-inheritance/styles-inheritance-transformers-registry.tsx
2153
+ import { createTransformersRegistry } from "@elementor/editor-canvas";
2154
+ var stylesInheritanceTransformersRegistry = createTransformersRegistry();
2155
+
2156
+ // src/styles-inheritance/components/infotip/breakpoint-icon.tsx
2157
+ import * as React22 from "react";
2039
2158
  import { useBreakpoints } from "@elementor/editor-responsive";
2040
2159
  import {
2041
2160
  DesktopIcon,
@@ -2048,7 +2167,7 @@ import {
2048
2167
  } from "@elementor/icons";
2049
2168
  import { Tooltip as Tooltip3 } from "@elementor/ui";
2050
2169
  var SIZE3 = "tiny";
2051
- var DEFAULT_BREAKPOINT2 = "desktop";
2170
+ var DEFAULT_BREAKPOINT3 = "desktop";
2052
2171
  var breakpointIconMap = {
2053
2172
  widescreen: WidescreenIcon,
2054
2173
  desktop: DesktopIcon,
@@ -2060,26 +2179,26 @@ var breakpointIconMap = {
2060
2179
  };
2061
2180
  var BreakpointIcon = ({ breakpoint }) => {
2062
2181
  const breakpoints = useBreakpoints();
2063
- const currentBreakpoint = breakpoint || DEFAULT_BREAKPOINT2;
2182
+ const currentBreakpoint = breakpoint || DEFAULT_BREAKPOINT3;
2064
2183
  const IconComponent = breakpointIconMap[currentBreakpoint];
2065
2184
  if (!IconComponent) {
2066
2185
  return null;
2067
2186
  }
2068
2187
  const breakpointLabel = breakpoints.find((breakpointItem) => breakpointItem.id === currentBreakpoint)?.label;
2069
- return /* @__PURE__ */ React21.createElement(Tooltip3, { title: breakpointLabel, placement: "top" }, /* @__PURE__ */ React21.createElement(IconComponent, { fontSize: SIZE3, sx: { mt: "2px" } }));
2188
+ return /* @__PURE__ */ React22.createElement(Tooltip3, { title: breakpointLabel, placement: "top" }, /* @__PURE__ */ React22.createElement(IconComponent, { fontSize: SIZE3, sx: { mt: "2px" } }));
2070
2189
  };
2071
2190
 
2072
- // src/styles-inheritance/components/label-chip.tsx
2073
- import * as React22 from "react";
2074
- import { ELEMENTS_BASE_STYLES_PROVIDER_KEY } from "@elementor/editor-styles-repository";
2191
+ // src/styles-inheritance/components/infotip/label-chip.tsx
2192
+ import * as React23 from "react";
2193
+ import { ELEMENTS_BASE_STYLES_PROVIDER_KEY as ELEMENTS_BASE_STYLES_PROVIDER_KEY2 } from "@elementor/editor-styles-repository";
2075
2194
  import { InfoCircleIcon } from "@elementor/icons";
2076
2195
  import { Chip as Chip4, Tooltip as Tooltip4 } from "@elementor/ui";
2077
- import { __ as __6 } from "@wordpress/i18n";
2196
+ import { __ as __8 } from "@wordpress/i18n";
2078
2197
  var SIZE4 = "tiny";
2079
2198
  var LabelChip = ({ displayLabel, provider, chipColor }) => {
2080
- const isBaseStyle = provider === ELEMENTS_BASE_STYLES_PROVIDER_KEY;
2081
- const chipIcon = isBaseStyle ? /* @__PURE__ */ React22.createElement(Tooltip4, { title: __6("Inherited from base styles", "elementor"), placement: "top" }, /* @__PURE__ */ React22.createElement(InfoCircleIcon, { fontSize: SIZE4 })) : void 0;
2082
- return /* @__PURE__ */ React22.createElement(
2199
+ const isBaseStyle = provider === ELEMENTS_BASE_STYLES_PROVIDER_KEY2;
2200
+ const chipIcon = isBaseStyle ? /* @__PURE__ */ React23.createElement(Tooltip4, { title: __8("Inherited from base styles", "elementor"), placement: "top" }, /* @__PURE__ */ React23.createElement(InfoCircleIcon, { fontSize: SIZE4 })) : void 0;
2201
+ return /* @__PURE__ */ React23.createElement(
2083
2202
  Chip4,
2084
2203
  {
2085
2204
  label: displayLabel,
@@ -2104,12 +2223,12 @@ var LabelChip = ({ displayLabel, provider, chipColor }) => {
2104
2223
  );
2105
2224
  };
2106
2225
 
2107
- // src/styles-inheritance/components/value-component.tsx
2108
- import * as React23 from "react";
2109
- import { Typography as Typography5 } from "@elementor/ui";
2226
+ // src/styles-inheritance/components/infotip/value-component.tsx
2227
+ import * as React24 from "react";
2228
+ import { Typography as Typography4 } from "@elementor/ui";
2110
2229
  var ValueComponent = ({ index, value }) => {
2111
- return /* @__PURE__ */ React23.createElement(
2112
- Typography5,
2230
+ return /* @__PURE__ */ React24.createElement(
2231
+ Typography4,
2113
2232
  {
2114
2233
  variant: "caption",
2115
2234
  color: "text.tertiary",
@@ -2125,88 +2244,15 @@ var ValueComponent = ({ index, value }) => {
2125
2244
  );
2126
2245
  };
2127
2246
 
2128
- // src/styles-inheritance/components/action-icons.tsx
2129
- import * as React24 from "react";
2247
+ // src/styles-inheritance/components/infotip/action-icons.tsx
2248
+ import * as React25 from "react";
2130
2249
  import { Box as Box5 } from "@elementor/ui";
2131
- var ActionIcons = () => /* @__PURE__ */ React24.createElement(Box5, { display: "flex", gap: 0.5, alignItems: "center" });
2132
-
2133
- // src/styles-inheritance/hooks/use-normalized-inheritance-chain-items.tsx
2134
- import { isValidElement, useEffect as useEffect3, useState as useState7 } from "react";
2135
- import { ELEMENTS_BASE_STYLES_PROVIDER_KEY as ELEMENTS_BASE_STYLES_PROVIDER_KEY2 } from "@elementor/editor-styles-repository";
2136
- import { __ as __7 } from "@wordpress/i18n";
2137
- var MAXIMUM_ITEMS = 2;
2138
- var useNormalizedInheritanceChainItems = (inheritanceChain, bind, resolve) => {
2139
- const [items3, setItems] = useState7([]);
2140
- useEffect3(() => {
2141
- (async () => {
2142
- const normalizedItems = await Promise.all(
2143
- inheritanceChain.filter(({ style }) => style).map((item, index) => normalizeInheritanceItem(item, index, bind, resolve))
2144
- );
2145
- const validItems = normalizedItems.map((item) => ({
2146
- ...item,
2147
- displayLabel: ELEMENTS_BASE_STYLES_PROVIDER_KEY2 !== item.provider ? item.displayLabel : __7("Base", "elementor")
2148
- })).filter((item) => !item.value || item.displayLabel !== "").slice(0, MAXIMUM_ITEMS);
2149
- setItems(validItems);
2150
- })();
2151
- }, [inheritanceChain, bind, resolve]);
2152
- return items3;
2153
- };
2154
- var DEFAULT_BREAKPOINT3 = "desktop";
2155
- var normalizeInheritanceItem = async (item, index, bind, resolve) => {
2156
- const {
2157
- variant: {
2158
- meta: { state, breakpoint }
2159
- },
2160
- style: { label, id }
2161
- } = item;
2162
- const displayLabel = `${label}${state ? ":" + state : ""}`;
2163
- return {
2164
- id: id ? id + (state ?? "") : index,
2165
- provider: item.provider || "",
2166
- breakpoint: breakpoint ?? DEFAULT_BREAKPOINT3,
2167
- displayLabel,
2168
- value: await getTransformedValue(item, bind, resolve),
2169
- chipColor: getChipColor(item)
2170
- };
2171
- };
2172
- var getTransformedValue = async (item, bind, resolve) => {
2173
- try {
2174
- const result = await resolve({
2175
- props: {
2176
- [bind]: item.value
2177
- }
2178
- });
2179
- const value = result?.[bind] ?? result;
2180
- if (isValidElement(value)) {
2181
- return value;
2182
- }
2183
- if (typeof value === "object") {
2184
- return JSON.stringify(value);
2185
- }
2186
- return String(value);
2187
- } catch {
2188
- return "";
2189
- }
2190
- };
2191
- var getChipColor = (item) => {
2192
- const { provider = "", style } = item;
2193
- if (provider === ELEMENTS_BASE_STYLES_PROVIDER_KEY2) {
2194
- return "default";
2195
- }
2196
- if (style?.label === "local") {
2197
- return "accent";
2198
- }
2199
- return "global";
2200
- };
2201
-
2202
- // src/styles-inheritance/styles-inheritance-transformers-registry.tsx
2203
- import { createTransformersRegistry } from "@elementor/editor-canvas";
2204
- var stylesInheritanceTransformersRegistry = createTransformersRegistry();
2250
+ var ActionIcons = () => /* @__PURE__ */ React25.createElement(Box5, { display: "flex", gap: 0.5, alignItems: "center" });
2205
2251
 
2206
- // src/styles-inheritance/styles-inheritance-infotip.tsx
2252
+ // src/styles-inheritance/components/styles-inheritance-infotip.tsx
2207
2253
  var SIZE5 = "tiny";
2208
- var StyleIndicatorInfotip = ({ inheritanceChain, propType, path, label, children }) => {
2209
- const [showInfotip, setShowInfotip] = useState8(false);
2254
+ var StylesInheritanceInfotip = ({ inheritanceChain, propType, path, label, children }) => {
2255
+ const [showInfotip, setShowInfotip] = useState9(false);
2210
2256
  const toggleInfotip = () => setShowInfotip((prev) => !prev);
2211
2257
  const closeInfotip = () => setShowInfotip(false);
2212
2258
  const key = path.join(".");
@@ -2219,7 +2265,7 @@ var StyleIndicatorInfotip = ({ inheritanceChain, propType, path, label, children
2219
2265
  });
2220
2266
  }, [key, propType]);
2221
2267
  const items3 = useNormalizedInheritanceChainItems(inheritanceChain, key, resolve);
2222
- const infotipContent = /* @__PURE__ */ React25.createElement(ClickAwayListener, { onClickAway: closeInfotip }, /* @__PURE__ */ React25.createElement(
2268
+ const infotipContent = /* @__PURE__ */ React26.createElement(ClickAwayListener, { onClickAway: closeInfotip }, /* @__PURE__ */ React26.createElement(
2223
2269
  Card,
2224
2270
  {
2225
2271
  elevation: 0,
@@ -2229,7 +2275,7 @@ var StyleIndicatorInfotip = ({ inheritanceChain, propType, path, label, children
2229
2275
  overflowX: "hidden"
2230
2276
  }
2231
2277
  },
2232
- /* @__PURE__ */ React25.createElement(
2278
+ /* @__PURE__ */ React26.createElement(
2233
2279
  CardContent,
2234
2280
  {
2235
2281
  sx: {
@@ -2242,7 +2288,7 @@ var StyleIndicatorInfotip = ({ inheritanceChain, propType, path, label, children
2242
2288
  }
2243
2289
  }
2244
2290
  },
2245
- /* @__PURE__ */ React25.createElement(Stack7, { direction: "row", alignItems: "center", sx: { pl: 1.5, pr: 0.5, minHeight: 36, py: 0.5 } }, /* @__PURE__ */ React25.createElement(Typography6, { variant: "subtitle2", color: "secondary", sx: { fontSize: 12, fontWeight: "500" } }, __8("Style origin", "elementor")), /* @__PURE__ */ React25.createElement(
2291
+ /* @__PURE__ */ React26.createElement(Stack7, { direction: "row", alignItems: "center", sx: { pl: 1.5, pr: 0.5, minHeight: 36, py: 0.5 } }, /* @__PURE__ */ React26.createElement(Typography5, { variant: "subtitle2", color: "secondary", sx: { fontSize: 12, fontWeight: "500" } }, __9("Style origin", "elementor")), /* @__PURE__ */ React26.createElement(
2246
2292
  CloseButton,
2247
2293
  {
2248
2294
  slotProps: { icon: { fontSize: SIZE5 } },
@@ -2250,7 +2296,7 @@ var StyleIndicatorInfotip = ({ inheritanceChain, propType, path, label, children
2250
2296
  onClick: closeInfotip
2251
2297
  }
2252
2298
  )),
2253
- /* @__PURE__ */ React25.createElement(
2299
+ /* @__PURE__ */ React26.createElement(
2254
2300
  Stack7,
2255
2301
  {
2256
2302
  gap: 1.5,
@@ -2258,33 +2304,33 @@ var StyleIndicatorInfotip = ({ inheritanceChain, propType, path, label, children
2258
2304
  role: "list"
2259
2305
  },
2260
2306
  items3.map((item, index) => {
2261
- return /* @__PURE__ */ React25.createElement(
2307
+ return /* @__PURE__ */ React26.createElement(
2262
2308
  Box6,
2263
2309
  {
2264
2310
  key: item.id,
2265
2311
  display: "flex",
2266
2312
  gap: 0.5,
2267
2313
  role: "listitem",
2268
- "aria-label": __8("Inheritance item: %s", "elementor").replace(
2314
+ "aria-label": __9("Inheritance item: %s", "elementor").replace(
2269
2315
  "%s",
2270
2316
  item.displayLabel
2271
2317
  )
2272
2318
  },
2273
- /* @__PURE__ */ React25.createElement(Box6, { display: "flex", gap: 0.5, sx: { flexWrap: "wrap", width: "100%" } }, /* @__PURE__ */ React25.createElement(BreakpointIcon, { breakpoint: item.breakpoint }), /* @__PURE__ */ React25.createElement(
2319
+ /* @__PURE__ */ React26.createElement(Box6, { display: "flex", gap: 0.5, sx: { flexWrap: "wrap", width: "100%" } }, /* @__PURE__ */ React26.createElement(BreakpointIcon, { breakpoint: item.breakpoint }), /* @__PURE__ */ React26.createElement(
2274
2320
  LabelChip,
2275
2321
  {
2276
2322
  displayLabel: item.displayLabel,
2277
2323
  provider: item.provider,
2278
2324
  chipColor: item.chipColor
2279
2325
  }
2280
- ), /* @__PURE__ */ React25.createElement(ValueComponent, { index, value: item.value })),
2281
- /* @__PURE__ */ React25.createElement(ActionIcons, null)
2326
+ ), /* @__PURE__ */ React26.createElement(ValueComponent, { index, value: item.value })),
2327
+ /* @__PURE__ */ React26.createElement(ActionIcons, null)
2282
2328
  );
2283
2329
  })
2284
2330
  )
2285
2331
  )
2286
2332
  ));
2287
- return /* @__PURE__ */ React25.createElement(TooltipOrInfotip, { showInfotip, onClose: closeInfotip, infotipContent }, /* @__PURE__ */ React25.createElement(IconButton3, { onClick: toggleInfotip, "aria-label": label, sx: { my: "-1px" } }, children));
2333
+ return /* @__PURE__ */ React26.createElement(TooltipOrInfotip, { showInfotip, onClose: closeInfotip, infotipContent }, /* @__PURE__ */ React26.createElement(IconButton3, { onClick: toggleInfotip, "aria-label": label, sx: { my: "-1px" } }, children));
2288
2334
  };
2289
2335
  function TooltipOrInfotip({
2290
2336
  children,
@@ -2295,7 +2341,7 @@ function TooltipOrInfotip({
2295
2341
  const { isSiteRtl } = useDirection();
2296
2342
  const forceInfotipAlignLeft = isSiteRtl ? 9999999 : -9999999;
2297
2343
  if (showInfotip) {
2298
- return /* @__PURE__ */ React25.createElement(React25.Fragment, null, /* @__PURE__ */ React25.createElement(
2344
+ return /* @__PURE__ */ React26.createElement(React26.Fragment, null, /* @__PURE__ */ React26.createElement(
2299
2345
  Backdrop,
2300
2346
  {
2301
2347
  open: showInfotip,
@@ -2305,7 +2351,7 @@ function TooltipOrInfotip({
2305
2351
  zIndex: (theme) => theme.zIndex.modal - 1
2306
2352
  }
2307
2353
  }
2308
- ), /* @__PURE__ */ React25.createElement(
2354
+ ), /* @__PURE__ */ React26.createElement(
2309
2355
  Infotip,
2310
2356
  {
2311
2357
  placement: "top",
@@ -2332,14 +2378,14 @@ function TooltipOrInfotip({
2332
2378
  children
2333
2379
  ));
2334
2380
  }
2335
- return /* @__PURE__ */ React25.createElement(Tooltip5, { title: __8("Style origin", "elementor"), placement: "top" }, children);
2381
+ return /* @__PURE__ */ React26.createElement(Tooltip5, { title: __9("Style origin", "elementor"), placement: "top" }, children);
2336
2382
  }
2337
2383
 
2338
- // src/styles-inheritance/styles-inheritance-indicator.tsx
2384
+ // src/styles-inheritance/components/styles-inheritance-indicator.tsx
2339
2385
  var StylesInheritanceIndicator = () => {
2340
2386
  const { path, propType } = useBoundProp();
2341
2387
  const { id: currentStyleId, provider: currentStyleProvider, meta: currentStyleMeta } = useStyle();
2342
- const isUsingNestedProps = isExperimentActive5(EXPERIMENTAL_FEATURES.V_3_30);
2388
+ const isUsingNestedProps = isExperimentActive6(EXPERIMENTAL_FEATURES.V_3_30);
2343
2389
  const finalPath = isUsingNestedProps ? path : path.slice(0, 1);
2344
2390
  const inheritanceChain = useStylesInheritanceChain(finalPath);
2345
2391
  if (!inheritanceChain.length) {
@@ -2362,27 +2408,27 @@ var StylesInheritanceIndicator = () => {
2362
2408
  const label = getLabel({ isFinalValue, hasValue });
2363
2409
  const variantType = getVariant({ isFinalValue, hasValue, currentStyleProvider });
2364
2410
  if (!isUsingIndicatorPopover()) {
2365
- return /* @__PURE__ */ React26.createElement(Tooltip6, { title: __9("Style origin", "elementor"), placement: "top" }, /* @__PURE__ */ React26.createElement(StyleIndicator, { variant: variantType, "aria-label": label }));
2411
+ return /* @__PURE__ */ React27.createElement(Tooltip6, { title: __10("Style origin", "elementor"), placement: "top" }, /* @__PURE__ */ React27.createElement(StyleIndicator, { variant: variantType, "aria-label": label }));
2366
2412
  }
2367
- return /* @__PURE__ */ React26.createElement(
2368
- StyleIndicatorInfotip,
2413
+ return /* @__PURE__ */ React27.createElement(
2414
+ StylesInheritanceInfotip,
2369
2415
  {
2370
2416
  inheritanceChain,
2371
2417
  path: finalPath,
2372
2418
  propType,
2373
2419
  label
2374
2420
  },
2375
- /* @__PURE__ */ React26.createElement(StyleIndicator, { variant: variantType })
2421
+ /* @__PURE__ */ React27.createElement(StyleIndicator, { variant: variantType })
2376
2422
  );
2377
2423
  };
2378
2424
  var getLabel = ({ isFinalValue, hasValue }) => {
2379
2425
  if (isFinalValue) {
2380
- return __9("This is the final value", "elementor");
2426
+ return __10("This is the final value", "elementor");
2381
2427
  }
2382
2428
  if (hasValue) {
2383
- return __9("This value is overridden by another style", "elementor");
2429
+ return __10("This value is overridden by another style", "elementor");
2384
2430
  }
2385
- return __9("This has value from another style", "elementor");
2431
+ return __10("This has value from another style", "elementor");
2386
2432
  };
2387
2433
  var getVariant = ({
2388
2434
  isFinalValue,
@@ -2409,7 +2455,7 @@ var StylesField = ({ bind, placeholder, children }) => {
2409
2455
  const setValues = (newValue) => {
2410
2456
  setValue(newValue[bind]);
2411
2457
  };
2412
- return /* @__PURE__ */ React27.createElement(
2458
+ return /* @__PURE__ */ React28.createElement(
2413
2459
  ControlAdornmentsProvider,
2414
2460
  {
2415
2461
  items: [
@@ -2419,7 +2465,7 @@ var StylesField = ({ bind, placeholder, children }) => {
2419
2465
  }
2420
2466
  ]
2421
2467
  },
2422
- /* @__PURE__ */ React27.createElement(
2468
+ /* @__PURE__ */ React28.createElement(
2423
2469
  PropProvider2,
2424
2470
  {
2425
2471
  propType,
@@ -2428,53 +2474,44 @@ var StylesField = ({ bind, placeholder, children }) => {
2428
2474
  placeholder: placeholderValues,
2429
2475
  disabled: !canEdit
2430
2476
  },
2431
- /* @__PURE__ */ React27.createElement(PropKeyProvider2, { bind }, children)
2477
+ /* @__PURE__ */ React28.createElement(PropKeyProvider2, { bind }, children)
2432
2478
  )
2433
2479
  );
2434
2480
  };
2435
2481
 
2436
2482
  // src/components/style-sections/background-section/background-section.tsx
2437
2483
  var BackgroundSection = () => {
2438
- return /* @__PURE__ */ React28.createElement(SectionContent, null, /* @__PURE__ */ React28.createElement(StylesField, { bind: "background" }, /* @__PURE__ */ React28.createElement(BackgroundControl, null)));
2484
+ return /* @__PURE__ */ React29.createElement(SectionContent, null, /* @__PURE__ */ React29.createElement(StylesField, { bind: "background" }, /* @__PURE__ */ React29.createElement(BackgroundControl, null)));
2439
2485
  };
2440
2486
 
2441
2487
  // src/components/style-sections/border-section/border-section.tsx
2442
- import * as React37 from "react";
2488
+ import * as React38 from "react";
2443
2489
 
2444
2490
  // src/components/panel-divider.tsx
2445
- import * as React29 from "react";
2491
+ import * as React30 from "react";
2446
2492
  import { Divider as Divider4 } from "@elementor/ui";
2447
- var PanelDivider = () => /* @__PURE__ */ React29.createElement(Divider4, { sx: { my: 0.5 } });
2493
+ var PanelDivider = () => /* @__PURE__ */ React30.createElement(Divider4, { sx: { my: 0.5 } });
2448
2494
 
2449
2495
  // src/components/style-sections/border-section/border-field.tsx
2450
- import * as React35 from "react";
2451
- import { __ as __13 } from "@wordpress/i18n";
2496
+ import * as React36 from "react";
2497
+ import { ControlFormLabel as ControlFormLabel3 } from "@elementor/editor-controls";
2498
+ import { __ as __14 } from "@wordpress/i18n";
2452
2499
 
2453
2500
  // src/components/add-or-remove-content.tsx
2454
2501
  import * as React31 from "react";
2455
2502
  import { MinusIcon, PlusIcon } from "@elementor/icons";
2456
- import { Collapse as Collapse2, IconButton as IconButton4, Stack as Stack9 } from "@elementor/ui";
2457
-
2458
- // src/components/control-label.tsx
2459
- import * as React30 from "react";
2460
- import { ControlAdornments, ControlFormLabel as ControlFormLabel2 } from "@elementor/editor-controls";
2461
- import { Stack as Stack8 } from "@elementor/ui";
2462
- var ControlLabel = ({ children }) => {
2463
- return /* @__PURE__ */ React30.createElement(Stack8, { direction: "row", alignItems: "center", justifyItems: "start", gap: 1 }, /* @__PURE__ */ React30.createElement(ControlFormLabel2, null, children), /* @__PURE__ */ React30.createElement(ControlAdornments, null));
2464
- };
2465
-
2466
- // src/components/add-or-remove-content.tsx
2503
+ import { Collapse as Collapse3, IconButton as IconButton4, Stack as Stack8 } from "@elementor/ui";
2467
2504
  var SIZE6 = "tiny";
2468
2505
  var AddOrRemoveContent = ({
2469
2506
  isAdded,
2470
- label,
2471
2507
  onAdd,
2472
2508
  onRemove,
2473
2509
  children,
2474
- disabled
2510
+ disabled,
2511
+ renderLabel
2475
2512
  }) => {
2476
2513
  return /* @__PURE__ */ React31.createElement(SectionContent, null, /* @__PURE__ */ React31.createElement(
2477
- Stack9,
2514
+ Stack8,
2478
2515
  {
2479
2516
  direction: "row",
2480
2517
  sx: {
@@ -2483,80 +2520,90 @@ var AddOrRemoveContent = ({
2483
2520
  marginInlineEnd: -0.75
2484
2521
  }
2485
2522
  },
2486
- /* @__PURE__ */ React31.createElement(ControlLabel, null, label),
2523
+ renderLabel(),
2487
2524
  isAdded ? /* @__PURE__ */ React31.createElement(IconButton4, { size: SIZE6, onClick: onRemove, "aria-label": "Remove", disabled }, /* @__PURE__ */ React31.createElement(MinusIcon, { fontSize: SIZE6 })) : /* @__PURE__ */ React31.createElement(IconButton4, { size: SIZE6, onClick: onAdd, "aria-label": "Add", disabled }, /* @__PURE__ */ React31.createElement(PlusIcon, { fontSize: SIZE6 }))
2488
- ), /* @__PURE__ */ React31.createElement(Collapse2, { in: isAdded, unmountOnExit: true }, /* @__PURE__ */ React31.createElement(SectionContent, null, children)));
2525
+ ), /* @__PURE__ */ React31.createElement(Collapse3, { in: isAdded, unmountOnExit: true }, /* @__PURE__ */ React31.createElement(SectionContent, null, children)));
2489
2526
  };
2490
2527
 
2491
2528
  // src/components/style-sections/border-section/border-color-field.tsx
2492
- import * as React32 from "react";
2529
+ import * as React33 from "react";
2493
2530
  import { ColorControl } from "@elementor/editor-controls";
2494
2531
  import { Grid } from "@elementor/ui";
2495
- import { __ as __10 } from "@wordpress/i18n";
2532
+ import { __ as __11 } from "@wordpress/i18n";
2533
+
2534
+ // src/components/control-label.tsx
2535
+ import * as React32 from "react";
2536
+ import { ControlAdornments, ControlFormLabel as ControlFormLabel2 } from "@elementor/editor-controls";
2537
+ import { Stack as Stack9 } from "@elementor/ui";
2538
+ var ControlLabel = ({ children }) => {
2539
+ return /* @__PURE__ */ React32.createElement(Stack9, { direction: "row", alignItems: "center", justifyItems: "start", gap: 0.25 }, /* @__PURE__ */ React32.createElement(ControlFormLabel2, null, children), /* @__PURE__ */ React32.createElement(ControlAdornments, null));
2540
+ };
2541
+
2542
+ // src/components/style-sections/border-section/border-color-field.tsx
2496
2543
  var BorderColorField = () => {
2497
- return /* @__PURE__ */ React32.createElement(StylesField, { bind: "border-color" }, /* @__PURE__ */ React32.createElement(Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React32.createElement(Grid, { item: true, xs: 6 }, /* @__PURE__ */ React32.createElement(ControlLabel, null, __10("Border color", "elementor"))), /* @__PURE__ */ React32.createElement(Grid, { item: true, xs: 6 }, /* @__PURE__ */ React32.createElement(ColorControl, null))));
2544
+ return /* @__PURE__ */ React33.createElement(StylesField, { bind: "border-color" }, /* @__PURE__ */ React33.createElement(Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React33.createElement(Grid, { item: true, xs: 6 }, /* @__PURE__ */ React33.createElement(ControlLabel, null, __11("Border color", "elementor"))), /* @__PURE__ */ React33.createElement(Grid, { item: true, xs: 6 }, /* @__PURE__ */ React33.createElement(ColorControl, null))));
2498
2545
  };
2499
2546
 
2500
2547
  // src/components/style-sections/border-section/border-style-field.tsx
2501
- import * as React33 from "react";
2548
+ import * as React34 from "react";
2502
2549
  import { SelectControl as SelectControl2 } from "@elementor/editor-controls";
2503
2550
  import { Grid as Grid2 } from "@elementor/ui";
2504
- import { __ as __11 } from "@wordpress/i18n";
2551
+ import { __ as __12 } from "@wordpress/i18n";
2505
2552
  var borderStyles = [
2506
- { value: "none", label: __11("None", "elementor") },
2507
- { value: "solid", label: __11("Solid", "elementor") },
2508
- { value: "dashed", label: __11("Dashed", "elementor") },
2509
- { value: "dotted", label: __11("Dotted", "elementor") },
2510
- { value: "double", label: __11("Double", "elementor") },
2511
- { value: "groove", label: __11("Groove", "elementor") },
2512
- { value: "ridge", label: __11("Ridge", "elementor") },
2513
- { value: "inset", label: __11("Inset", "elementor") },
2514
- { value: "outset", label: __11("Outset", "elementor") }
2553
+ { value: "none", label: __12("None", "elementor") },
2554
+ { value: "solid", label: __12("Solid", "elementor") },
2555
+ { value: "dashed", label: __12("Dashed", "elementor") },
2556
+ { value: "dotted", label: __12("Dotted", "elementor") },
2557
+ { value: "double", label: __12("Double", "elementor") },
2558
+ { value: "groove", label: __12("Groove", "elementor") },
2559
+ { value: "ridge", label: __12("Ridge", "elementor") },
2560
+ { value: "inset", label: __12("Inset", "elementor") },
2561
+ { value: "outset", label: __12("Outset", "elementor") }
2515
2562
  ];
2516
2563
  var BorderStyleField = () => {
2517
- return /* @__PURE__ */ React33.createElement(StylesField, { bind: "border-style" }, /* @__PURE__ */ React33.createElement(Grid2, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React33.createElement(Grid2, { item: true, xs: 6 }, /* @__PURE__ */ React33.createElement(ControlLabel, null, __11("Border type", "elementor"))), /* @__PURE__ */ React33.createElement(Grid2, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React33.createElement(SelectControl2, { options: borderStyles }))));
2564
+ return /* @__PURE__ */ React34.createElement(StylesField, { bind: "border-style" }, /* @__PURE__ */ React34.createElement(Grid2, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React34.createElement(Grid2, { item: true, xs: 6 }, /* @__PURE__ */ React34.createElement(ControlLabel, null, __12("Border type", "elementor"))), /* @__PURE__ */ React34.createElement(Grid2, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React34.createElement(SelectControl2, { options: borderStyles }))));
2518
2565
  };
2519
2566
 
2520
2567
  // src/components/style-sections/border-section/border-width-field.tsx
2521
- import * as React34 from "react";
2568
+ import * as React35 from "react";
2522
2569
  import { EqualUnequalSizesControl } from "@elementor/editor-controls";
2523
2570
  import { borderWidthPropTypeUtil } from "@elementor/editor-props";
2524
2571
  import { SideAllIcon, SideBottomIcon, SideLeftIcon, SideRightIcon, SideTopIcon } from "@elementor/icons";
2525
2572
  import { withDirection } from "@elementor/ui";
2526
- import { __ as __12 } from "@wordpress/i18n";
2573
+ import { __ as __13 } from "@wordpress/i18n";
2527
2574
  var InlineStartIcon = withDirection(SideRightIcon);
2528
2575
  var InlineEndIcon = withDirection(SideLeftIcon);
2529
2576
  var getEdges = (isSiteRtl) => [
2530
2577
  {
2531
- label: __12("Top", "elementor"),
2532
- icon: /* @__PURE__ */ React34.createElement(SideTopIcon, { fontSize: "tiny" }),
2578
+ label: __13("Top", "elementor"),
2579
+ icon: /* @__PURE__ */ React35.createElement(SideTopIcon, { fontSize: "tiny" }),
2533
2580
  bind: "block-start"
2534
2581
  },
2535
2582
  {
2536
- label: isSiteRtl ? __12("Left", "elementor") : __12("Right", "elementor"),
2537
- icon: /* @__PURE__ */ React34.createElement(InlineStartIcon, { fontSize: "tiny" }),
2583
+ label: isSiteRtl ? __13("Left", "elementor") : __13("Right", "elementor"),
2584
+ icon: /* @__PURE__ */ React35.createElement(InlineStartIcon, { fontSize: "tiny" }),
2538
2585
  bind: "inline-end"
2539
2586
  },
2540
2587
  {
2541
- label: __12("Bottom", "elementor"),
2542
- icon: /* @__PURE__ */ React34.createElement(SideBottomIcon, { fontSize: "tiny" }),
2588
+ label: __13("Bottom", "elementor"),
2589
+ icon: /* @__PURE__ */ React35.createElement(SideBottomIcon, { fontSize: "tiny" }),
2543
2590
  bind: "block-end"
2544
2591
  },
2545
2592
  {
2546
- label: isSiteRtl ? __12("Right", "elementor") : __12("Left", "elementor"),
2547
- icon: /* @__PURE__ */ React34.createElement(InlineEndIcon, { fontSize: "tiny" }),
2593
+ label: isSiteRtl ? __13("Right", "elementor") : __13("Left", "elementor"),
2594
+ icon: /* @__PURE__ */ React35.createElement(InlineEndIcon, { fontSize: "tiny" }),
2548
2595
  bind: "inline-start"
2549
2596
  }
2550
2597
  ];
2551
2598
  var BorderWidthField = () => {
2552
2599
  const { isSiteRtl } = useDirection();
2553
- return /* @__PURE__ */ React34.createElement(StylesField, { bind: "border-width" }, /* @__PURE__ */ React34.createElement(
2600
+ return /* @__PURE__ */ React35.createElement(StylesField, { bind: "border-width" }, /* @__PURE__ */ React35.createElement(
2554
2601
  EqualUnequalSizesControl,
2555
2602
  {
2556
2603
  items: getEdges(isSiteRtl),
2557
- label: __12("Border width", "elementor"),
2558
- icon: /* @__PURE__ */ React34.createElement(SideAllIcon, { fontSize: "tiny" }),
2559
- tooltipLabel: __12("Adjust borders", "elementor"),
2604
+ label: __13("Border width", "elementor"),
2605
+ icon: /* @__PURE__ */ React35.createElement(SideAllIcon, { fontSize: "tiny" }),
2606
+ tooltipLabel: __13("Adjust borders", "elementor"),
2560
2607
  multiSizePropTypeUtil: borderWidthPropTypeUtil
2561
2608
  }
2562
2609
  ));
@@ -2582,23 +2629,23 @@ var BorderField = () => {
2582
2629
  });
2583
2630
  };
2584
2631
  const hasBorder = Object.values(border ?? {}).some(Boolean);
2585
- return /* @__PURE__ */ React35.createElement(
2632
+ return /* @__PURE__ */ React36.createElement(
2586
2633
  AddOrRemoveContent,
2587
2634
  {
2588
- label: __13("Border", "elementor"),
2589
2635
  isAdded: hasBorder,
2590
2636
  onAdd: addBorder,
2591
2637
  onRemove: removeBorder,
2592
- disabled: !canEdit
2638
+ disabled: !canEdit,
2639
+ renderLabel: () => /* @__PURE__ */ React36.createElement(ControlFormLabel3, null, __14("Border", "elementor"))
2593
2640
  },
2594
- /* @__PURE__ */ React35.createElement(BorderWidthField, null),
2595
- /* @__PURE__ */ React35.createElement(BorderColorField, null),
2596
- /* @__PURE__ */ React35.createElement(BorderStyleField, null)
2641
+ /* @__PURE__ */ React36.createElement(BorderWidthField, null),
2642
+ /* @__PURE__ */ React36.createElement(BorderColorField, null),
2643
+ /* @__PURE__ */ React36.createElement(BorderStyleField, null)
2597
2644
  );
2598
2645
  };
2599
2646
 
2600
2647
  // src/components/style-sections/border-section/border-radius-field.tsx
2601
- import * as React36 from "react";
2648
+ import * as React37 from "react";
2602
2649
  import { EqualUnequalSizesControl as EqualUnequalSizesControl2 } from "@elementor/editor-controls";
2603
2650
  import { borderRadiusPropTypeUtil } from "@elementor/editor-props";
2604
2651
  import {
@@ -2609,66 +2656,66 @@ import {
2609
2656
  RadiusTopRightIcon
2610
2657
  } from "@elementor/icons";
2611
2658
  import { withDirection as withDirection2 } from "@elementor/ui";
2612
- import { __ as __14 } from "@wordpress/i18n";
2659
+ import { __ as __15 } from "@wordpress/i18n";
2613
2660
  var StartStartIcon = withDirection2(RadiusTopLeftIcon);
2614
2661
  var StartEndIcon = withDirection2(RadiusTopRightIcon);
2615
2662
  var EndStartIcon = withDirection2(RadiusBottomLeftIcon);
2616
2663
  var EndEndIcon = withDirection2(RadiusBottomRightIcon);
2617
- var getStartStartLabel = (isSiteRtl) => isSiteRtl ? __14("Top right", "elementor") : __14("Top left", "elementor");
2618
- var getStartEndLabel = (isSiteRtl) => isSiteRtl ? __14("Top left", "elementor") : __14("Top right", "elementor");
2619
- var getEndStartLabel = (isSiteRtl) => isSiteRtl ? __14("Bottom right", "elementor") : __14("Bottom left", "elementor");
2620
- var getEndEndLabel = (isSiteRtl) => isSiteRtl ? __14("Bottom left", "elementor") : __14("Bottom right", "elementor");
2664
+ var getStartStartLabel = (isSiteRtl) => isSiteRtl ? __15("Top right", "elementor") : __15("Top left", "elementor");
2665
+ var getStartEndLabel = (isSiteRtl) => isSiteRtl ? __15("Top left", "elementor") : __15("Top right", "elementor");
2666
+ var getEndStartLabel = (isSiteRtl) => isSiteRtl ? __15("Bottom right", "elementor") : __15("Bottom left", "elementor");
2667
+ var getEndEndLabel = (isSiteRtl) => isSiteRtl ? __15("Bottom left", "elementor") : __15("Bottom right", "elementor");
2621
2668
  var getCorners = (isSiteRtl) => [
2622
2669
  {
2623
2670
  label: getStartStartLabel(isSiteRtl),
2624
- icon: /* @__PURE__ */ React36.createElement(StartStartIcon, { fontSize: "tiny" }),
2671
+ icon: /* @__PURE__ */ React37.createElement(StartStartIcon, { fontSize: "tiny" }),
2625
2672
  bind: "start-start"
2626
2673
  },
2627
2674
  {
2628
2675
  label: getStartEndLabel(isSiteRtl),
2629
- icon: /* @__PURE__ */ React36.createElement(StartEndIcon, { fontSize: "tiny" }),
2676
+ icon: /* @__PURE__ */ React37.createElement(StartEndIcon, { fontSize: "tiny" }),
2630
2677
  bind: "start-end"
2631
2678
  },
2632
2679
  {
2633
2680
  label: getEndStartLabel(isSiteRtl),
2634
- icon: /* @__PURE__ */ React36.createElement(EndStartIcon, { fontSize: "tiny" }),
2681
+ icon: /* @__PURE__ */ React37.createElement(EndStartIcon, { fontSize: "tiny" }),
2635
2682
  bind: "end-start"
2636
2683
  },
2637
2684
  {
2638
2685
  label: getEndEndLabel(isSiteRtl),
2639
- icon: /* @__PURE__ */ React36.createElement(EndEndIcon, { fontSize: "tiny" }),
2686
+ icon: /* @__PURE__ */ React37.createElement(EndEndIcon, { fontSize: "tiny" }),
2640
2687
  bind: "end-end"
2641
2688
  }
2642
2689
  ];
2643
2690
  var BorderRadiusField = () => {
2644
2691
  const { isSiteRtl } = useDirection();
2645
- return /* @__PURE__ */ React36.createElement(StylesField, { bind: "border-radius" }, /* @__PURE__ */ React36.createElement(
2692
+ return /* @__PURE__ */ React37.createElement(StylesField, { bind: "border-radius" }, /* @__PURE__ */ React37.createElement(
2646
2693
  EqualUnequalSizesControl2,
2647
2694
  {
2648
2695
  items: getCorners(isSiteRtl),
2649
- label: __14("Border radius", "elementor"),
2650
- icon: /* @__PURE__ */ React36.createElement(BorderCornersIcon, { fontSize: "tiny" }),
2651
- tooltipLabel: __14("Adjust corners", "elementor"),
2696
+ label: __15("Border radius", "elementor"),
2697
+ icon: /* @__PURE__ */ React37.createElement(BorderCornersIcon, { fontSize: "tiny" }),
2698
+ tooltipLabel: __15("Adjust corners", "elementor"),
2652
2699
  multiSizePropTypeUtil: borderRadiusPropTypeUtil
2653
2700
  }
2654
2701
  ));
2655
2702
  };
2656
2703
 
2657
2704
  // src/components/style-sections/border-section/border-section.tsx
2658
- var BorderSection = () => /* @__PURE__ */ React37.createElement(SectionContent, null, /* @__PURE__ */ React37.createElement(BorderRadiusField, null), /* @__PURE__ */ React37.createElement(PanelDivider, null), /* @__PURE__ */ React37.createElement(BorderField, null));
2705
+ var BorderSection = () => /* @__PURE__ */ React38.createElement(SectionContent, null, /* @__PURE__ */ React38.createElement(BorderRadiusField, null), /* @__PURE__ */ React38.createElement(PanelDivider, null), /* @__PURE__ */ React38.createElement(BorderField, null));
2659
2706
 
2660
2707
  // src/components/style-sections/effects-section/effects-section.tsx
2661
- import * as React38 from "react";
2708
+ import * as React39 from "react";
2662
2709
  import { BoxShadowRepeaterControl } from "@elementor/editor-controls";
2663
2710
  var EffectsSection = () => {
2664
- return /* @__PURE__ */ React38.createElement(SectionContent, null, /* @__PURE__ */ React38.createElement(StylesField, { bind: "box-shadow" }, /* @__PURE__ */ React38.createElement(BoxShadowRepeaterControl, null)));
2711
+ return /* @__PURE__ */ React39.createElement(SectionContent, null, /* @__PURE__ */ React39.createElement(StylesField, { bind: "box-shadow" }, /* @__PURE__ */ React39.createElement(BoxShadowRepeaterControl, null)));
2665
2712
  };
2666
2713
 
2667
2714
  // src/components/style-sections/layout-section/layout-section.tsx
2668
- import * as React50 from "react";
2669
- import { ControlFormLabel as ControlFormLabel3 } from "@elementor/editor-controls";
2715
+ import * as React51 from "react";
2716
+ import { ControlFormLabel as ControlFormLabel4 } from "@elementor/editor-controls";
2670
2717
  import { useParentElement } from "@elementor/editor-elements";
2671
- import { __ as __25 } from "@wordpress/i18n";
2718
+ import { __ as __26 } from "@wordpress/i18n";
2672
2719
 
2673
2720
  // src/hooks/use-computed-style.ts
2674
2721
  import { __privateUseListenTo as useListenTo, commandEndEvent, windowEvent } from "@elementor/editor-v1-adapters";
@@ -2696,7 +2743,7 @@ function useComputedStyle(elementId) {
2696
2743
  }
2697
2744
 
2698
2745
  // src/components/style-sections/layout-section/align-content-field.tsx
2699
- import * as React40 from "react";
2746
+ import * as React41 from "react";
2700
2747
  import { ToggleControl } from "@elementor/editor-controls";
2701
2748
  import {
2702
2749
  JustifyBottomIcon,
@@ -2707,10 +2754,10 @@ import {
2707
2754
  JustifyTopIcon
2708
2755
  } from "@elementor/icons";
2709
2756
  import { DirectionProvider, Stack as Stack10, ThemeProvider, withDirection as withDirection3 } from "@elementor/ui";
2710
- import { __ as __15 } from "@wordpress/i18n";
2757
+ import { __ as __16 } from "@wordpress/i18n";
2711
2758
 
2712
2759
  // src/components/style-sections/layout-section/utils/rotated-icon.tsx
2713
- import * as React39 from "react";
2760
+ import * as React40 from "react";
2714
2761
  import { useRef as useRef4 } from "react";
2715
2762
  import { useTheme as useTheme2 } from "@elementor/ui";
2716
2763
  var CLOCKWISE_ANGLES = {
@@ -2734,7 +2781,7 @@ var RotatedIcon = ({
2734
2781
  }) => {
2735
2782
  const rotate = useRef4(useGetTargetAngle(isClockwise, offset, disableRotationForReversed));
2736
2783
  rotate.current = useGetTargetAngle(isClockwise, offset, disableRotationForReversed, rotate);
2737
- return /* @__PURE__ */ React39.createElement(Icon, { fontSize: size, sx: { transition: ".3s", rotate: `${rotate.current}deg` } });
2784
+ return /* @__PURE__ */ React40.createElement(Icon, { fontSize: size, sx: { transition: ".3s", rotate: `${rotate.current}deg` } });
2738
2785
  };
2739
2786
  var useGetTargetAngle = (isClockwise, offset, disableRotationForReversed, existingRef) => {
2740
2787
  const [direction] = useStylesField("flex-direction");
@@ -2763,48 +2810,48 @@ var iconProps = {
2763
2810
  var options = [
2764
2811
  {
2765
2812
  value: "start",
2766
- label: __15("Start", "elementor"),
2767
- renderContent: ({ size }) => /* @__PURE__ */ React40.createElement(RotatedIcon, { icon: StartIcon, size, ...iconProps }),
2813
+ label: __16("Start", "elementor"),
2814
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: StartIcon, size, ...iconProps }),
2768
2815
  showTooltip: true
2769
2816
  },
2770
2817
  {
2771
2818
  value: "center",
2772
- label: __15("Center", "elementor"),
2773
- renderContent: ({ size }) => /* @__PURE__ */ React40.createElement(RotatedIcon, { icon: CenterIcon, size, ...iconProps }),
2819
+ label: __16("Center", "elementor"),
2820
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: CenterIcon, size, ...iconProps }),
2774
2821
  showTooltip: true
2775
2822
  },
2776
2823
  {
2777
2824
  value: "end",
2778
- label: __15("End", "elementor"),
2779
- renderContent: ({ size }) => /* @__PURE__ */ React40.createElement(RotatedIcon, { icon: EndIcon, size, ...iconProps }),
2825
+ label: __16("End", "elementor"),
2826
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: EndIcon, size, ...iconProps }),
2780
2827
  showTooltip: true
2781
2828
  },
2782
2829
  {
2783
2830
  value: "space-between",
2784
- label: __15("Space between", "elementor"),
2785
- renderContent: ({ size }) => /* @__PURE__ */ React40.createElement(RotatedIcon, { icon: BetweenIcon, size, ...iconProps }),
2831
+ label: __16("Space between", "elementor"),
2832
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: BetweenIcon, size, ...iconProps }),
2786
2833
  showTooltip: true
2787
2834
  },
2788
2835
  {
2789
2836
  value: "space-around",
2790
- label: __15("Space around", "elementor"),
2791
- renderContent: ({ size }) => /* @__PURE__ */ React40.createElement(RotatedIcon, { icon: AroundIcon, size, ...iconProps }),
2837
+ label: __16("Space around", "elementor"),
2838
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: AroundIcon, size, ...iconProps }),
2792
2839
  showTooltip: true
2793
2840
  },
2794
2841
  {
2795
2842
  value: "space-evenly",
2796
- label: __15("Space evenly", "elementor"),
2797
- renderContent: ({ size }) => /* @__PURE__ */ React40.createElement(RotatedIcon, { icon: EvenlyIcon, size, ...iconProps }),
2843
+ label: __16("Space evenly", "elementor"),
2844
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: EvenlyIcon, size, ...iconProps }),
2798
2845
  showTooltip: true
2799
2846
  }
2800
2847
  ];
2801
2848
  var AlignContentField = () => {
2802
2849
  const { isSiteRtl } = useDirection();
2803
- return /* @__PURE__ */ React40.createElement(DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React40.createElement(ThemeProvider, null, /* @__PURE__ */ React40.createElement(StylesField, { bind: "align-content" }, /* @__PURE__ */ React40.createElement(Stack10, { gap: 1 }, /* @__PURE__ */ React40.createElement(ControlLabel, null, __15("Align content", "elementor")), /* @__PURE__ */ React40.createElement(ToggleControl, { options, fullWidth: true })))));
2850
+ return /* @__PURE__ */ React41.createElement(DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React41.createElement(ThemeProvider, null, /* @__PURE__ */ React41.createElement(StylesField, { bind: "align-content" }, /* @__PURE__ */ React41.createElement(Stack10, { gap: 1 }, /* @__PURE__ */ React41.createElement(ControlLabel, null, __16("Align content", "elementor")), /* @__PURE__ */ React41.createElement(ToggleControl, { options, fullWidth: true })))));
2804
2851
  };
2805
2852
 
2806
2853
  // src/components/style-sections/layout-section/align-items-field.tsx
2807
- import * as React41 from "react";
2854
+ import * as React42 from "react";
2808
2855
  import { ToggleControl as ToggleControl2 } from "@elementor/editor-controls";
2809
2856
  import {
2810
2857
  LayoutAlignCenterIcon as CenterIcon2,
@@ -2813,7 +2860,7 @@ import {
2813
2860
  LayoutDistributeVerticalIcon as JustifyIcon
2814
2861
  } from "@elementor/icons";
2815
2862
  import { DirectionProvider as DirectionProvider2, Grid as Grid3, ThemeProvider as ThemeProvider2, withDirection as withDirection4 } from "@elementor/ui";
2816
- import { __ as __16 } from "@wordpress/i18n";
2863
+ import { __ as __17 } from "@wordpress/i18n";
2817
2864
  var StartIcon2 = withDirection4(LayoutAlignLeftIcon);
2818
2865
  var EndIcon2 = withDirection4(LayoutAlignRightIcon);
2819
2866
  var iconProps2 = {
@@ -2823,36 +2870,36 @@ var iconProps2 = {
2823
2870
  var options2 = [
2824
2871
  {
2825
2872
  value: "start",
2826
- label: __16("Start", "elementor"),
2827
- renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: StartIcon2, size, ...iconProps2 }),
2873
+ label: __17("Start", "elementor"),
2874
+ renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(RotatedIcon, { icon: StartIcon2, size, ...iconProps2 }),
2828
2875
  showTooltip: true
2829
2876
  },
2830
2877
  {
2831
2878
  value: "center",
2832
- label: __16("Center", "elementor"),
2833
- renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: CenterIcon2, size, ...iconProps2 }),
2879
+ label: __17("Center", "elementor"),
2880
+ renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(RotatedIcon, { icon: CenterIcon2, size, ...iconProps2 }),
2834
2881
  showTooltip: true
2835
2882
  },
2836
2883
  {
2837
2884
  value: "end",
2838
- label: __16("End", "elementor"),
2839
- renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: EndIcon2, size, ...iconProps2 }),
2885
+ label: __17("End", "elementor"),
2886
+ renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(RotatedIcon, { icon: EndIcon2, size, ...iconProps2 }),
2840
2887
  showTooltip: true
2841
2888
  },
2842
2889
  {
2843
2890
  value: "stretch",
2844
- label: __16("Stretch", "elementor"),
2845
- renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(RotatedIcon, { icon: JustifyIcon, size, ...iconProps2 }),
2891
+ label: __17("Stretch", "elementor"),
2892
+ renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(RotatedIcon, { icon: JustifyIcon, size, ...iconProps2 }),
2846
2893
  showTooltip: true
2847
2894
  }
2848
2895
  ];
2849
2896
  var AlignItemsField = () => {
2850
2897
  const { isSiteRtl } = useDirection();
2851
- return /* @__PURE__ */ React41.createElement(DirectionProvider2, { rtl: isSiteRtl }, /* @__PURE__ */ React41.createElement(ThemeProvider2, null, /* @__PURE__ */ React41.createElement(StylesField, { bind: "align-items" }, /* @__PURE__ */ React41.createElement(Grid3, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React41.createElement(Grid3, { item: true, xs: 6 }, /* @__PURE__ */ React41.createElement(ControlLabel, null, __16("Align items", "elementor"))), /* @__PURE__ */ React41.createElement(Grid3, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React41.createElement(ToggleControl2, { options: options2 }))))));
2898
+ return /* @__PURE__ */ React42.createElement(DirectionProvider2, { rtl: isSiteRtl }, /* @__PURE__ */ React42.createElement(ThemeProvider2, null, /* @__PURE__ */ React42.createElement(StylesField, { bind: "align-items" }, /* @__PURE__ */ React42.createElement(Grid3, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React42.createElement(Grid3, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(ControlLabel, null, __17("Align items", "elementor"))), /* @__PURE__ */ React42.createElement(Grid3, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React42.createElement(ToggleControl2, { options: options2 }))))));
2852
2899
  };
2853
2900
 
2854
2901
  // src/components/style-sections/layout-section/align-self-child-field.tsx
2855
- import * as React42 from "react";
2902
+ import * as React43 from "react";
2856
2903
  import { ToggleControl as ToggleControl3 } from "@elementor/editor-controls";
2857
2904
  import {
2858
2905
  LayoutAlignCenterIcon as CenterIcon3,
@@ -2861,7 +2908,7 @@ import {
2861
2908
  LayoutDistributeVerticalIcon as JustifyIcon2
2862
2909
  } from "@elementor/icons";
2863
2910
  import { DirectionProvider as DirectionProvider3, Grid as Grid4, ThemeProvider as ThemeProvider3, withDirection as withDirection5 } from "@elementor/ui";
2864
- import { __ as __17 } from "@wordpress/i18n";
2911
+ import { __ as __18 } from "@wordpress/i18n";
2865
2912
  var ALIGN_SELF_CHILD_OFFSET_MAP = {
2866
2913
  row: 90,
2867
2914
  "row-reverse": 90,
@@ -2876,8 +2923,8 @@ var iconProps3 = {
2876
2923
  var getOptions = (parentStyleDirection) => [
2877
2924
  {
2878
2925
  value: "start",
2879
- label: __17("Start", "elementor"),
2880
- renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(
2926
+ label: __18("Start", "elementor"),
2927
+ renderContent: ({ size }) => /* @__PURE__ */ React43.createElement(
2881
2928
  RotatedIcon,
2882
2929
  {
2883
2930
  icon: StartIcon3,
@@ -2890,8 +2937,8 @@ var getOptions = (parentStyleDirection) => [
2890
2937
  },
2891
2938
  {
2892
2939
  value: "center",
2893
- label: __17("Center", "elementor"),
2894
- renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(
2940
+ label: __18("Center", "elementor"),
2941
+ renderContent: ({ size }) => /* @__PURE__ */ React43.createElement(
2895
2942
  RotatedIcon,
2896
2943
  {
2897
2944
  icon: CenterIcon3,
@@ -2904,8 +2951,8 @@ var getOptions = (parentStyleDirection) => [
2904
2951
  },
2905
2952
  {
2906
2953
  value: "end",
2907
- label: __17("End", "elementor"),
2908
- renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(
2954
+ label: __18("End", "elementor"),
2955
+ renderContent: ({ size }) => /* @__PURE__ */ React43.createElement(
2909
2956
  RotatedIcon,
2910
2957
  {
2911
2958
  icon: EndIcon3,
@@ -2918,8 +2965,8 @@ var getOptions = (parentStyleDirection) => [
2918
2965
  },
2919
2966
  {
2920
2967
  value: "stretch",
2921
- label: __17("Stretch", "elementor"),
2922
- renderContent: ({ size }) => /* @__PURE__ */ React42.createElement(
2968
+ label: __18("Stretch", "elementor"),
2969
+ renderContent: ({ size }) => /* @__PURE__ */ React43.createElement(
2923
2970
  RotatedIcon,
2924
2971
  {
2925
2972
  icon: JustifyIcon2,
@@ -2933,107 +2980,107 @@ var getOptions = (parentStyleDirection) => [
2933
2980
  ];
2934
2981
  var AlignSelfChild = ({ parentStyleDirection }) => {
2935
2982
  const { isSiteRtl } = useDirection();
2936
- return /* @__PURE__ */ React42.createElement(DirectionProvider3, { rtl: isSiteRtl }, /* @__PURE__ */ React42.createElement(ThemeProvider3, null, /* @__PURE__ */ React42.createElement(StylesField, { bind: "align-self" }, /* @__PURE__ */ React42.createElement(Grid4, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React42.createElement(Grid4, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(ControlLabel, null, __17("Align self", "elementor"))), /* @__PURE__ */ React42.createElement(Grid4, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React42.createElement(ToggleControl3, { options: getOptions(parentStyleDirection) }))))));
2983
+ return /* @__PURE__ */ React43.createElement(DirectionProvider3, { rtl: isSiteRtl }, /* @__PURE__ */ React43.createElement(ThemeProvider3, null, /* @__PURE__ */ React43.createElement(StylesField, { bind: "align-self" }, /* @__PURE__ */ React43.createElement(Grid4, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React43.createElement(Grid4, { item: true, xs: 6 }, /* @__PURE__ */ React43.createElement(ControlLabel, null, __18("Align self", "elementor"))), /* @__PURE__ */ React43.createElement(Grid4, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React43.createElement(ToggleControl3, { options: getOptions(parentStyleDirection) }))))));
2937
2984
  };
2938
2985
 
2939
2986
  // src/components/style-sections/layout-section/display-field.tsx
2940
- import * as React43 from "react";
2987
+ import * as React44 from "react";
2941
2988
  import { ToggleControl as ToggleControl4 } from "@elementor/editor-controls";
2942
- import { isExperimentActive as isExperimentActive6 } from "@elementor/editor-v1-adapters";
2989
+ import { isExperimentActive as isExperimentActive7 } from "@elementor/editor-v1-adapters";
2943
2990
  import { Stack as Stack11 } from "@elementor/ui";
2944
- import { __ as __18 } from "@wordpress/i18n";
2991
+ import { __ as __19 } from "@wordpress/i18n";
2945
2992
  var displayFieldItems = [
2946
2993
  {
2947
2994
  value: "block",
2948
- renderContent: () => __18("Block", "elementor"),
2949
- label: __18("Block", "elementor"),
2995
+ renderContent: () => __19("Block", "elementor"),
2996
+ label: __19("Block", "elementor"),
2950
2997
  showTooltip: true
2951
2998
  },
2952
2999
  {
2953
3000
  value: "flex",
2954
- renderContent: () => __18("Flex", "elementor"),
2955
- label: __18("Flex", "elementor"),
3001
+ renderContent: () => __19("Flex", "elementor"),
3002
+ label: __19("Flex", "elementor"),
2956
3003
  showTooltip: true
2957
3004
  },
2958
3005
  {
2959
3006
  value: "inline-block",
2960
- renderContent: () => __18("In-blk", "elementor"),
2961
- label: __18("Inline-block", "elementor"),
3007
+ renderContent: () => __19("In-blk", "elementor"),
3008
+ label: __19("Inline-block", "elementor"),
2962
3009
  showTooltip: true
2963
3010
  }
2964
3011
  ];
2965
3012
  var DisplayField = () => {
2966
- const isDisplayNoneFeatureActive = isExperimentActive6(EXPERIMENTAL_FEATURES.V_3_30);
3013
+ const isDisplayNoneFeatureActive = isExperimentActive7(EXPERIMENTAL_FEATURES.V_3_30);
2967
3014
  const items3 = [...displayFieldItems];
2968
3015
  if (isDisplayNoneFeatureActive) {
2969
3016
  items3.push({
2970
3017
  value: "none",
2971
- renderContent: () => __18("None", "elementor"),
2972
- label: __18("None", "elementor"),
3018
+ renderContent: () => __19("None", "elementor"),
3019
+ label: __19("None", "elementor"),
2973
3020
  showTooltip: true
2974
3021
  });
2975
3022
  }
2976
3023
  items3.push({
2977
3024
  value: "inline-flex",
2978
- renderContent: () => __18("In-flx", "elementor"),
2979
- label: __18("Inline-flex", "elementor"),
3025
+ renderContent: () => __19("In-flx", "elementor"),
3026
+ label: __19("Inline-flex", "elementor"),
2980
3027
  showTooltip: true
2981
3028
  });
2982
3029
  const placeholder = useDisplayPlaceholderValue();
2983
- return /* @__PURE__ */ React43.createElement(StylesField, { bind: "display", placeholder }, /* @__PURE__ */ React43.createElement(Stack11, { gap: 0.75 }, /* @__PURE__ */ React43.createElement(ControlLabel, null, __18("Display", "elementor")), /* @__PURE__ */ React43.createElement(ToggleControl4, { options: items3, maxItems: 4, fullWidth: true })));
3030
+ return /* @__PURE__ */ React44.createElement(StylesField, { bind: "display", placeholder }, /* @__PURE__ */ React44.createElement(Stack11, { gap: 0.75 }, /* @__PURE__ */ React44.createElement(ControlLabel, null, __19("Display", "elementor")), /* @__PURE__ */ React44.createElement(ToggleControl4, { options: items3, maxItems: 4, fullWidth: true })));
2984
3031
  };
2985
3032
  var useDisplayPlaceholderValue = () => useStylesInheritanceChain(["display"])[0]?.value ?? void 0;
2986
3033
 
2987
3034
  // src/components/style-sections/layout-section/flex-direction-field.tsx
2988
- import * as React44 from "react";
3035
+ import * as React45 from "react";
2989
3036
  import { ToggleControl as ToggleControl5 } from "@elementor/editor-controls";
2990
3037
  import { ArrowDownSmallIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpSmallIcon } from "@elementor/icons";
2991
3038
  import { DirectionProvider as DirectionProvider4, Grid as Grid5, ThemeProvider as ThemeProvider4, withDirection as withDirection6 } from "@elementor/ui";
2992
- import { __ as __19 } from "@wordpress/i18n";
3039
+ import { __ as __20 } from "@wordpress/i18n";
2993
3040
  var options3 = [
2994
3041
  {
2995
3042
  value: "row",
2996
- label: __19("Row", "elementor"),
3043
+ label: __20("Row", "elementor"),
2997
3044
  renderContent: ({ size }) => {
2998
3045
  const StartIcon5 = withDirection6(ArrowRightIcon);
2999
- return /* @__PURE__ */ React44.createElement(StartIcon5, { fontSize: size });
3046
+ return /* @__PURE__ */ React45.createElement(StartIcon5, { fontSize: size });
3000
3047
  },
3001
3048
  showTooltip: true
3002
3049
  },
3003
3050
  {
3004
3051
  value: "column",
3005
- label: __19("Column", "elementor"),
3006
- renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(ArrowDownSmallIcon, { fontSize: size }),
3052
+ label: __20("Column", "elementor"),
3053
+ renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(ArrowDownSmallIcon, { fontSize: size }),
3007
3054
  showTooltip: true
3008
3055
  },
3009
3056
  {
3010
3057
  value: "row-reverse",
3011
- label: __19("Reversed row", "elementor"),
3058
+ label: __20("Reversed row", "elementor"),
3012
3059
  renderContent: ({ size }) => {
3013
3060
  const EndIcon5 = withDirection6(ArrowLeftIcon);
3014
- return /* @__PURE__ */ React44.createElement(EndIcon5, { fontSize: size });
3061
+ return /* @__PURE__ */ React45.createElement(EndIcon5, { fontSize: size });
3015
3062
  },
3016
3063
  showTooltip: true
3017
3064
  },
3018
3065
  {
3019
3066
  value: "column-reverse",
3020
- label: __19("Reversed column", "elementor"),
3021
- renderContent: ({ size }) => /* @__PURE__ */ React44.createElement(ArrowUpSmallIcon, { fontSize: size }),
3067
+ label: __20("Reversed column", "elementor"),
3068
+ renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(ArrowUpSmallIcon, { fontSize: size }),
3022
3069
  showTooltip: true
3023
3070
  }
3024
3071
  ];
3025
3072
  var FlexDirectionField = () => {
3026
3073
  const { isSiteRtl } = useDirection();
3027
- return /* @__PURE__ */ React44.createElement(DirectionProvider4, { rtl: isSiteRtl }, /* @__PURE__ */ React44.createElement(ThemeProvider4, null, /* @__PURE__ */ React44.createElement(StylesField, { bind: "flex-direction" }, /* @__PURE__ */ React44.createElement(Grid5, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React44.createElement(Grid5, { item: true, xs: 6 }, /* @__PURE__ */ React44.createElement(ControlLabel, null, __19("Direction", "elementor"))), /* @__PURE__ */ React44.createElement(Grid5, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React44.createElement(ToggleControl5, { options: options3 }))))));
3074
+ return /* @__PURE__ */ React45.createElement(DirectionProvider4, { rtl: isSiteRtl }, /* @__PURE__ */ React45.createElement(ThemeProvider4, null, /* @__PURE__ */ React45.createElement(StylesField, { bind: "flex-direction" }, /* @__PURE__ */ React45.createElement(Grid5, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React45.createElement(Grid5, { item: true, xs: 6 }, /* @__PURE__ */ React45.createElement(ControlLabel, null, __20("Direction", "elementor"))), /* @__PURE__ */ React45.createElement(Grid5, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React45.createElement(ToggleControl5, { options: options3 }))))));
3028
3075
  };
3029
3076
 
3030
3077
  // src/components/style-sections/layout-section/flex-order-field.tsx
3031
- import * as React45 from "react";
3032
- import { useState as useState9 } from "react";
3078
+ import * as React46 from "react";
3079
+ import { useState as useState10 } from "react";
3033
3080
  import { ControlToggleButtonGroup, NumberControl } from "@elementor/editor-controls";
3034
3081
  import { ArrowDownSmallIcon as ArrowDownSmallIcon2, ArrowUpSmallIcon as ArrowUpSmallIcon2, PencilIcon } from "@elementor/icons";
3035
3082
  import { DirectionProvider as DirectionProvider5, Grid as Grid6, ThemeProvider as ThemeProvider5 } from "@elementor/ui";
3036
- import { __ as __20 } from "@wordpress/i18n";
3083
+ import { __ as __21 } from "@wordpress/i18n";
3037
3084
  var FIRST_DEFAULT_VALUE = -99999;
3038
3085
  var LAST_DEFAULT_VALUE = 99999;
3039
3086
  var FIRST = "first";
@@ -3046,20 +3093,20 @@ var orderValueMap = {
3046
3093
  var items = [
3047
3094
  {
3048
3095
  value: FIRST,
3049
- label: __20("First", "elementor"),
3050
- renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(ArrowUpSmallIcon2, { fontSize: size }),
3096
+ label: __21("First", "elementor"),
3097
+ renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(ArrowUpSmallIcon2, { fontSize: size }),
3051
3098
  showTooltip: true
3052
3099
  },
3053
3100
  {
3054
3101
  value: LAST,
3055
- label: __20("Last", "elementor"),
3056
- renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(ArrowDownSmallIcon2, { fontSize: size }),
3102
+ label: __21("Last", "elementor"),
3103
+ renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(ArrowDownSmallIcon2, { fontSize: size }),
3057
3104
  showTooltip: true
3058
3105
  },
3059
3106
  {
3060
3107
  value: CUSTOM,
3061
- label: __20("Custom", "elementor"),
3062
- renderContent: ({ size }) => /* @__PURE__ */ React45.createElement(PencilIcon, { fontSize: size }),
3108
+ label: __21("Custom", "elementor"),
3109
+ renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(PencilIcon, { fontSize: size }),
3063
3110
  showTooltip: true
3064
3111
  }
3065
3112
  ];
@@ -3067,7 +3114,7 @@ var FlexOrderField = () => {
3067
3114
  const { isSiteRtl } = useDirection();
3068
3115
  const [order, setOrder] = useStylesField("order");
3069
3116
  const { canEdit } = useStyle();
3070
- const [groupControlValue, setGroupControlValue] = useState9(getGroupControlValue(order?.value || null));
3117
+ const [groupControlValue, setGroupControlValue] = useState10(getGroupControlValue(order?.value || null));
3071
3118
  const handleToggleButtonChange = (group) => {
3072
3119
  setGroupControlValue(group);
3073
3120
  if (!group || group === CUSTOM) {
@@ -3076,7 +3123,7 @@ var FlexOrderField = () => {
3076
3123
  }
3077
3124
  setOrder({ $$type: "number", value: orderValueMap[group] });
3078
3125
  };
3079
- return /* @__PURE__ */ React45.createElement(DirectionProvider5, { rtl: isSiteRtl }, /* @__PURE__ */ React45.createElement(ThemeProvider5, null, /* @__PURE__ */ React45.createElement(StylesField, { bind: "order" }, /* @__PURE__ */ React45.createElement(SectionContent, null, /* @__PURE__ */ React45.createElement(Grid6, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React45.createElement(Grid6, { item: true, xs: 6 }, /* @__PURE__ */ React45.createElement(ControlLabel, null, __20("Order", "elementor"))), /* @__PURE__ */ React45.createElement(Grid6, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React45.createElement(
3126
+ return /* @__PURE__ */ React46.createElement(DirectionProvider5, { rtl: isSiteRtl }, /* @__PURE__ */ React46.createElement(ThemeProvider5, null, /* @__PURE__ */ React46.createElement(StylesField, { bind: "order" }, /* @__PURE__ */ React46.createElement(SectionContent, null, /* @__PURE__ */ React46.createElement(Grid6, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React46.createElement(Grid6, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(ControlLabel, null, __21("Order", "elementor"))), /* @__PURE__ */ React46.createElement(Grid6, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React46.createElement(
3080
3127
  ControlToggleButtonGroup,
3081
3128
  {
3082
3129
  items,
@@ -3085,7 +3132,7 @@ var FlexOrderField = () => {
3085
3132
  exclusive: true,
3086
3133
  disabled: !canEdit
3087
3134
  }
3088
- ))), CUSTOM === groupControlValue && /* @__PURE__ */ React45.createElement(Grid6, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React45.createElement(Grid6, { item: true, xs: 6 }, /* @__PURE__ */ React45.createElement(ControlLabel, null, __20("Custom order", "elementor"))), /* @__PURE__ */ React45.createElement(Grid6, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React45.createElement(
3135
+ ))), CUSTOM === groupControlValue && /* @__PURE__ */ React46.createElement(Grid6, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React46.createElement(Grid6, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(ControlLabel, null, __21("Custom order", "elementor"))), /* @__PURE__ */ React46.createElement(Grid6, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React46.createElement(
3089
3136
  NumberControl,
3090
3137
  {
3091
3138
  min: FIRST_DEFAULT_VALUE + 1,
@@ -3105,8 +3152,8 @@ var getGroupControlValue = (order) => {
3105
3152
  };
3106
3153
 
3107
3154
  // src/components/style-sections/layout-section/flex-size-field.tsx
3108
- import * as React46 from "react";
3109
- import { useMemo as useMemo5, useState as useState10 } from "react";
3155
+ import * as React47 from "react";
3156
+ import { useMemo as useMemo5, useState as useState11 } from "react";
3110
3157
  import {
3111
3158
  ControlToggleButtonGroup as ControlToggleButtonGroup2,
3112
3159
  NumberControl as NumberControl2,
@@ -3115,25 +3162,25 @@ import {
3115
3162
  import { numberPropTypeUtil } from "@elementor/editor-props";
3116
3163
  import { ExpandIcon, PencilIcon as PencilIcon2, ShrinkIcon } from "@elementor/icons";
3117
3164
  import { DirectionProvider as DirectionProvider6, Grid as Grid7, ThemeProvider as ThemeProvider6 } from "@elementor/ui";
3118
- import { __ as __21 } from "@wordpress/i18n";
3165
+ import { __ as __22 } from "@wordpress/i18n";
3119
3166
  var DEFAULT = 1;
3120
3167
  var items2 = [
3121
3168
  {
3122
3169
  value: "flex-grow",
3123
- label: __21("Grow", "elementor"),
3124
- renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(ExpandIcon, { fontSize: size }),
3170
+ label: __22("Grow", "elementor"),
3171
+ renderContent: ({ size }) => /* @__PURE__ */ React47.createElement(ExpandIcon, { fontSize: size }),
3125
3172
  showTooltip: true
3126
3173
  },
3127
3174
  {
3128
3175
  value: "flex-shrink",
3129
- label: __21("Shrink", "elementor"),
3130
- renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(ShrinkIcon, { fontSize: size }),
3176
+ label: __22("Shrink", "elementor"),
3177
+ renderContent: ({ size }) => /* @__PURE__ */ React47.createElement(ShrinkIcon, { fontSize: size }),
3131
3178
  showTooltip: true
3132
3179
  },
3133
3180
  {
3134
3181
  value: "custom",
3135
- label: __21("Custom", "elementor"),
3136
- renderContent: ({ size }) => /* @__PURE__ */ React46.createElement(PencilIcon2, { fontSize: size }),
3182
+ label: __22("Custom", "elementor"),
3183
+ renderContent: ({ size }) => /* @__PURE__ */ React47.createElement(PencilIcon2, { fontSize: size }),
3137
3184
  showTooltip: true
3138
3185
  }
3139
3186
  ];
@@ -3144,7 +3191,7 @@ var FlexSizeField = () => {
3144
3191
  const grow = fields?.["flex-grow"]?.value || null;
3145
3192
  const shrink = fields?.["flex-shrink"]?.value || null;
3146
3193
  const basis = fields?.["flex-basis"]?.value || null;
3147
- const currentGroup = useMemo5(() => getActiveGroup({ grow, shrink, basis }), [grow, shrink, basis]), [activeGroup, setActiveGroup] = useState10(currentGroup);
3194
+ const currentGroup = useMemo5(() => getActiveGroup({ grow, shrink, basis }), [grow, shrink, basis]), [activeGroup, setActiveGroup] = useState11(currentGroup);
3148
3195
  const onChangeGroup = (group = null) => {
3149
3196
  setActiveGroup(group);
3150
3197
  if (!group || group === "custom") {
@@ -3169,7 +3216,7 @@ var FlexSizeField = () => {
3169
3216
  "flex-shrink": numberPropTypeUtil.create(DEFAULT)
3170
3217
  });
3171
3218
  };
3172
- return /* @__PURE__ */ React46.createElement(DirectionProvider6, { rtl: isSiteRtl }, /* @__PURE__ */ React46.createElement(ThemeProvider6, null, /* @__PURE__ */ React46.createElement(SectionContent, null, /* @__PURE__ */ React46.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React46.createElement(StylesField, { bind: activeGroup ?? "" }, /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(ControlLabel, null, __21("Size", "elementor"))), /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React46.createElement(
3219
+ return /* @__PURE__ */ React47.createElement(DirectionProvider6, { rtl: isSiteRtl }, /* @__PURE__ */ React47.createElement(ThemeProvider6, null, /* @__PURE__ */ React47.createElement(SectionContent, null, /* @__PURE__ */ React47.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React47.createElement(StylesField, { bind: activeGroup ?? "" }, /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(ControlLabel, null, __22("Size", "elementor"))), /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React47.createElement(
3173
3220
  ControlToggleButtonGroup2,
3174
3221
  {
3175
3222
  value: activeGroup,
@@ -3178,9 +3225,9 @@ var FlexSizeField = () => {
3178
3225
  items: items2,
3179
3226
  exclusive: true
3180
3227
  }
3181
- )))), "custom" === activeGroup && /* @__PURE__ */ React46.createElement(FlexCustomField, null))));
3228
+ )))), "custom" === activeGroup && /* @__PURE__ */ React47.createElement(FlexCustomField, null))));
3182
3229
  };
3183
- var FlexCustomField = () => /* @__PURE__ */ React46.createElement(React46.Fragment, null, /* @__PURE__ */ React46.createElement(StylesField, { bind: "flex-grow" }, /* @__PURE__ */ React46.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(ControlLabel, null, __21("Grow", "elementor"))), /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React46.createElement(NumberControl2, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React46.createElement(StylesField, { bind: "flex-shrink" }, /* @__PURE__ */ React46.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(ControlLabel, null, __21("Shrink", "elementor"))), /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React46.createElement(NumberControl2, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React46.createElement(StylesField, { bind: "flex-basis" }, /* @__PURE__ */ React46.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(ControlLabel, null, __21("Basis", "elementor"))), /* @__PURE__ */ React46.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React46.createElement(SizeControl2, { extendedValues: ["auto"] })))));
3230
+ var FlexCustomField = () => /* @__PURE__ */ React47.createElement(React47.Fragment, null, /* @__PURE__ */ React47.createElement(StylesField, { bind: "flex-grow" }, /* @__PURE__ */ React47.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(ControlLabel, null, __22("Grow", "elementor"))), /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React47.createElement(NumberControl2, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React47.createElement(StylesField, { bind: "flex-shrink" }, /* @__PURE__ */ React47.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(ControlLabel, null, __22("Shrink", "elementor"))), /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React47.createElement(NumberControl2, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React47.createElement(StylesField, { bind: "flex-basis" }, /* @__PURE__ */ React47.createElement(Grid7, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(ControlLabel, null, __22("Basis", "elementor"))), /* @__PURE__ */ React47.createElement(Grid7, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React47.createElement(SizeControl2, { extendedValues: ["auto"] })))));
3184
3231
  var getActiveGroup = ({
3185
3232
  grow,
3186
3233
  shrink,
@@ -3202,16 +3249,16 @@ var getActiveGroup = ({
3202
3249
  };
3203
3250
 
3204
3251
  // src/components/style-sections/layout-section/gap-control-field.tsx
3205
- import * as React47 from "react";
3252
+ import * as React48 from "react";
3206
3253
  import { GapControl } from "@elementor/editor-controls";
3207
3254
  import { Stack as Stack12 } from "@elementor/ui";
3208
- import { __ as __22 } from "@wordpress/i18n";
3255
+ import { __ as __23 } from "@wordpress/i18n";
3209
3256
  var GapControlField = () => {
3210
- return /* @__PURE__ */ React47.createElement(Stack12, { gap: 1 }, /* @__PURE__ */ React47.createElement(StylesField, { bind: "gap" }, /* @__PURE__ */ React47.createElement(GapControl, { label: __22("Gaps", "elementor") })));
3257
+ return /* @__PURE__ */ React48.createElement(Stack12, { gap: 1 }, /* @__PURE__ */ React48.createElement(StylesField, { bind: "gap" }, /* @__PURE__ */ React48.createElement(GapControl, { label: __23("Gaps", "elementor") })));
3211
3258
  };
3212
3259
 
3213
3260
  // src/components/style-sections/layout-section/justify-content-field.tsx
3214
- import * as React48 from "react";
3261
+ import * as React49 from "react";
3215
3262
  import { ToggleControl as ToggleControl6 } from "@elementor/editor-controls";
3216
3263
  import {
3217
3264
  JustifyBottomIcon as JustifyBottomIcon2,
@@ -3222,7 +3269,7 @@ import {
3222
3269
  JustifyTopIcon as JustifyTopIcon2
3223
3270
  } from "@elementor/icons";
3224
3271
  import { DirectionProvider as DirectionProvider7, Stack as Stack13, ThemeProvider as ThemeProvider7, withDirection as withDirection7 } from "@elementor/ui";
3225
- import { __ as __23 } from "@wordpress/i18n";
3272
+ import { __ as __24 } from "@wordpress/i18n";
3226
3273
  var StartIcon4 = withDirection7(JustifyTopIcon2);
3227
3274
  var EndIcon4 = withDirection7(JustifyBottomIcon2);
3228
3275
  var iconProps4 = {
@@ -3232,75 +3279,75 @@ var iconProps4 = {
3232
3279
  var options4 = [
3233
3280
  {
3234
3281
  value: "flex-start",
3235
- label: __23("Start", "elementor"),
3236
- renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(RotatedIcon, { icon: StartIcon4, size, ...iconProps4 }),
3282
+ label: __24("Start", "elementor"),
3283
+ renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(RotatedIcon, { icon: StartIcon4, size, ...iconProps4 }),
3237
3284
  showTooltip: true
3238
3285
  },
3239
3286
  {
3240
3287
  value: "center",
3241
- label: __23("Center", "elementor"),
3242
- renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(RotatedIcon, { icon: CenterIcon4, size, ...iconProps4 }),
3288
+ label: __24("Center", "elementor"),
3289
+ renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(RotatedIcon, { icon: CenterIcon4, size, ...iconProps4 }),
3243
3290
  showTooltip: true
3244
3291
  },
3245
3292
  {
3246
3293
  value: "flex-end",
3247
- label: __23("End", "elementor"),
3248
- renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(RotatedIcon, { icon: EndIcon4, size, ...iconProps4 }),
3294
+ label: __24("End", "elementor"),
3295
+ renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(RotatedIcon, { icon: EndIcon4, size, ...iconProps4 }),
3249
3296
  showTooltip: true
3250
3297
  },
3251
3298
  {
3252
3299
  value: "space-between",
3253
- label: __23("Space between", "elementor"),
3254
- renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(RotatedIcon, { icon: BetweenIcon2, size, ...iconProps4 }),
3300
+ label: __24("Space between", "elementor"),
3301
+ renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(RotatedIcon, { icon: BetweenIcon2, size, ...iconProps4 }),
3255
3302
  showTooltip: true
3256
3303
  },
3257
3304
  {
3258
3305
  value: "space-around",
3259
- label: __23("Space around", "elementor"),
3260
- renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(RotatedIcon, { icon: AroundIcon2, size, ...iconProps4 }),
3306
+ label: __24("Space around", "elementor"),
3307
+ renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(RotatedIcon, { icon: AroundIcon2, size, ...iconProps4 }),
3261
3308
  showTooltip: true
3262
3309
  },
3263
3310
  {
3264
3311
  value: "space-evenly",
3265
- label: __23("Space evenly", "elementor"),
3266
- renderContent: ({ size }) => /* @__PURE__ */ React48.createElement(RotatedIcon, { icon: EvenlyIcon2, size, ...iconProps4 }),
3312
+ label: __24("Space evenly", "elementor"),
3313
+ renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(RotatedIcon, { icon: EvenlyIcon2, size, ...iconProps4 }),
3267
3314
  showTooltip: true
3268
3315
  }
3269
3316
  ];
3270
3317
  var JustifyContentField = () => {
3271
3318
  const { isSiteRtl } = useDirection();
3272
- return /* @__PURE__ */ React48.createElement(DirectionProvider7, { rtl: isSiteRtl }, /* @__PURE__ */ React48.createElement(ThemeProvider7, null, /* @__PURE__ */ React48.createElement(StylesField, { bind: "justify-content" }, /* @__PURE__ */ React48.createElement(Stack13, { gap: 0.75 }, /* @__PURE__ */ React48.createElement(ControlLabel, null, __23("Justify content", "elementor")), /* @__PURE__ */ React48.createElement(ToggleControl6, { options: options4, fullWidth: true })))));
3319
+ return /* @__PURE__ */ React49.createElement(DirectionProvider7, { rtl: isSiteRtl }, /* @__PURE__ */ React49.createElement(ThemeProvider7, null, /* @__PURE__ */ React49.createElement(StylesField, { bind: "justify-content" }, /* @__PURE__ */ React49.createElement(Stack13, { gap: 0.75 }, /* @__PURE__ */ React49.createElement(ControlLabel, null, __24("Justify content", "elementor")), /* @__PURE__ */ React49.createElement(ToggleControl6, { options: options4, fullWidth: true })))));
3273
3320
  };
3274
3321
 
3275
3322
  // src/components/style-sections/layout-section/wrap-field.tsx
3276
- import * as React49 from "react";
3323
+ import * as React50 from "react";
3277
3324
  import { ToggleControl as ToggleControl7 } from "@elementor/editor-controls";
3278
3325
  import { ArrowBackIcon, ArrowForwardIcon, ArrowRightIcon as ArrowRightIcon2 } from "@elementor/icons";
3279
3326
  import { DirectionProvider as DirectionProvider8, Grid as Grid8, ThemeProvider as ThemeProvider8 } from "@elementor/ui";
3280
- import { __ as __24 } from "@wordpress/i18n";
3327
+ import { __ as __25 } from "@wordpress/i18n";
3281
3328
  var options5 = [
3282
3329
  {
3283
3330
  value: "nowrap",
3284
- label: __24("No wrap", "elementor"),
3285
- renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(ArrowRightIcon2, { fontSize: size }),
3331
+ label: __25("No wrap", "elementor"),
3332
+ renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(ArrowRightIcon2, { fontSize: size }),
3286
3333
  showTooltip: true
3287
3334
  },
3288
3335
  {
3289
3336
  value: "wrap",
3290
- label: __24("Wrap", "elementor"),
3291
- renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(ArrowBackIcon, { fontSize: size }),
3337
+ label: __25("Wrap", "elementor"),
3338
+ renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(ArrowBackIcon, { fontSize: size }),
3292
3339
  showTooltip: true
3293
3340
  },
3294
3341
  {
3295
3342
  value: "wrap-reverse",
3296
- label: __24("Reversed wrap", "elementor"),
3297
- renderContent: ({ size }) => /* @__PURE__ */ React49.createElement(ArrowForwardIcon, { fontSize: size }),
3343
+ label: __25("Reversed wrap", "elementor"),
3344
+ renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(ArrowForwardIcon, { fontSize: size }),
3298
3345
  showTooltip: true
3299
3346
  }
3300
3347
  ];
3301
3348
  var WrapField = () => {
3302
3349
  const { isSiteRtl } = useDirection();
3303
- return /* @__PURE__ */ React49.createElement(DirectionProvider8, { rtl: isSiteRtl }, /* @__PURE__ */ React49.createElement(ThemeProvider8, null, /* @__PURE__ */ React49.createElement(StylesField, { bind: "flex-wrap" }, /* @__PURE__ */ React49.createElement(Grid8, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React49.createElement(Grid8, { item: true, xs: 6 }, /* @__PURE__ */ React49.createElement(ControlLabel, null, __24("Wrap", "elementor"))), /* @__PURE__ */ React49.createElement(Grid8, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React49.createElement(ToggleControl7, { options: options5 }))))));
3350
+ return /* @__PURE__ */ React50.createElement(DirectionProvider8, { rtl: isSiteRtl }, /* @__PURE__ */ React50.createElement(ThemeProvider8, null, /* @__PURE__ */ React50.createElement(StylesField, { bind: "flex-wrap" }, /* @__PURE__ */ React50.createElement(Grid8, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React50.createElement(Grid8, { item: true, xs: 6 }, /* @__PURE__ */ React50.createElement(ControlLabel, null, __25("Wrap", "elementor"))), /* @__PURE__ */ React50.createElement(Grid8, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React50.createElement(ToggleControl7, { options: options5 }))))));
3304
3351
  };
3305
3352
 
3306
3353
  // src/components/style-sections/layout-section/layout-section.tsx
@@ -3312,13 +3359,13 @@ var LayoutSection = () => {
3312
3359
  const parent = useParentElement(element.id);
3313
3360
  const parentStyle = useComputedStyle(parent?.id || null);
3314
3361
  const parentStyleDirection = parentStyle?.flexDirection ?? "row";
3315
- return /* @__PURE__ */ React50.createElement(SectionContent, null, /* @__PURE__ */ React50.createElement(DisplayField, null), isDisplayFlex && /* @__PURE__ */ React50.createElement(FlexFields, null), "flex" === parentStyle?.display && /* @__PURE__ */ React50.createElement(FlexChildFields, { parentStyleDirection }));
3362
+ return /* @__PURE__ */ React51.createElement(SectionContent, null, /* @__PURE__ */ React51.createElement(DisplayField, null), isDisplayFlex && /* @__PURE__ */ React51.createElement(FlexFields, null), "flex" === parentStyle?.display && /* @__PURE__ */ React51.createElement(FlexChildFields, { parentStyleDirection }));
3316
3363
  };
3317
3364
  var FlexFields = () => {
3318
3365
  const [flexWrap] = useStylesField("flex-wrap");
3319
- return /* @__PURE__ */ React50.createElement(React50.Fragment, null, /* @__PURE__ */ React50.createElement(FlexDirectionField, null), /* @__PURE__ */ React50.createElement(JustifyContentField, null), /* @__PURE__ */ React50.createElement(AlignItemsField, null), /* @__PURE__ */ React50.createElement(PanelDivider, null), /* @__PURE__ */ React50.createElement(GapControlField, null), /* @__PURE__ */ React50.createElement(WrapField, null), ["wrap", "wrap-reverse"].includes(flexWrap?.value) && /* @__PURE__ */ React50.createElement(AlignContentField, null));
3366
+ return /* @__PURE__ */ React51.createElement(React51.Fragment, null, /* @__PURE__ */ React51.createElement(FlexDirectionField, null), /* @__PURE__ */ React51.createElement(JustifyContentField, null), /* @__PURE__ */ React51.createElement(AlignItemsField, null), /* @__PURE__ */ React51.createElement(PanelDivider, null), /* @__PURE__ */ React51.createElement(GapControlField, null), /* @__PURE__ */ React51.createElement(WrapField, null), ["wrap", "wrap-reverse"].includes(flexWrap?.value) && /* @__PURE__ */ React51.createElement(AlignContentField, null));
3320
3367
  };
3321
- var FlexChildFields = ({ parentStyleDirection }) => /* @__PURE__ */ React50.createElement(React50.Fragment, null, /* @__PURE__ */ React50.createElement(PanelDivider, null), /* @__PURE__ */ React50.createElement(ControlFormLabel3, null, __25("Flex child", "elementor")), /* @__PURE__ */ React50.createElement(AlignSelfChild, { parentStyleDirection }), /* @__PURE__ */ React50.createElement(FlexOrderField, null), /* @__PURE__ */ React50.createElement(FlexSizeField, null));
3368
+ var FlexChildFields = ({ parentStyleDirection }) => /* @__PURE__ */ React51.createElement(React51.Fragment, null, /* @__PURE__ */ React51.createElement(PanelDivider, null), /* @__PURE__ */ React51.createElement(ControlFormLabel4, null, __26("Flex child", "elementor")), /* @__PURE__ */ React51.createElement(AlignSelfChild, { parentStyleDirection }), /* @__PURE__ */ React51.createElement(FlexOrderField, null), /* @__PURE__ */ React51.createElement(FlexSizeField, null));
3322
3369
  var shouldDisplayFlexFields = (display, local) => {
3323
3370
  const value = display?.value ?? local?.value;
3324
3371
  if (!value) {
@@ -3328,66 +3375,66 @@ var shouldDisplayFlexFields = (display, local) => {
3328
3375
  };
3329
3376
 
3330
3377
  // src/components/style-sections/position-section/position-section.tsx
3331
- import * as React55 from "react";
3332
- import { isExperimentActive as isExperimentActive7 } from "@elementor/editor-v1-adapters";
3378
+ import * as React56 from "react";
3379
+ import { isExperimentActive as isExperimentActive8 } from "@elementor/editor-v1-adapters";
3333
3380
  import { useSessionStorage } from "@elementor/session";
3334
3381
 
3335
3382
  // src/components/style-sections/position-section/dimensions-field.tsx
3336
- import * as React51 from "react";
3383
+ import * as React52 from "react";
3337
3384
  import { SizeControl as SizeControl3 } from "@elementor/editor-controls";
3338
3385
  import { SideBottomIcon as SideBottomIcon2, SideLeftIcon as SideLeftIcon2, SideRightIcon as SideRightIcon2, SideTopIcon as SideTopIcon2 } from "@elementor/icons";
3339
3386
  import { Grid as Grid9, Stack as Stack14, withDirection as withDirection8 } from "@elementor/ui";
3340
- import { __ as __26 } from "@wordpress/i18n";
3387
+ import { __ as __27 } from "@wordpress/i18n";
3341
3388
  var InlineStartIcon2 = withDirection8(SideLeftIcon2);
3342
3389
  var InlineEndIcon2 = withDirection8(SideRightIcon2);
3343
3390
  var sideIcons = {
3344
- "inset-block-start": /* @__PURE__ */ React51.createElement(SideTopIcon2, { fontSize: "tiny" }),
3345
- "inset-block-end": /* @__PURE__ */ React51.createElement(SideBottomIcon2, { fontSize: "tiny" }),
3346
- "inset-inline-start": /* @__PURE__ */ React51.createElement(RotatedIcon, { icon: InlineStartIcon2, size: "tiny" }),
3347
- "inset-inline-end": /* @__PURE__ */ React51.createElement(RotatedIcon, { icon: InlineEndIcon2, size: "tiny" })
3391
+ "inset-block-start": /* @__PURE__ */ React52.createElement(SideTopIcon2, { fontSize: "tiny" }),
3392
+ "inset-block-end": /* @__PURE__ */ React52.createElement(SideBottomIcon2, { fontSize: "tiny" }),
3393
+ "inset-inline-start": /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: InlineStartIcon2, size: "tiny" }),
3394
+ "inset-inline-end": /* @__PURE__ */ React52.createElement(RotatedIcon, { icon: InlineEndIcon2, size: "tiny" })
3348
3395
  };
3349
- var getInlineStartLabel = (isSiteRtl) => isSiteRtl ? __26("Right", "elementor") : __26("Left", "elementor");
3350
- var getInlineEndLabel = (isSiteRtl) => isSiteRtl ? __26("Left", "elementor") : __26("Right", "elementor");
3396
+ var getInlineStartLabel = (isSiteRtl) => isSiteRtl ? __27("Right", "elementor") : __27("Left", "elementor");
3397
+ var getInlineEndLabel = (isSiteRtl) => isSiteRtl ? __27("Left", "elementor") : __27("Right", "elementor");
3351
3398
  var DimensionsField = () => {
3352
3399
  const { isSiteRtl } = useDirection();
3353
- return /* @__PURE__ */ React51.createElement(React51.Fragment, null, /* @__PURE__ */ React51.createElement(Stack14, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React51.createElement(DimensionField, { side: "inset-block-start", label: __26("Top", "elementor") }), /* @__PURE__ */ React51.createElement(DimensionField, { side: "inset-inline-end", label: getInlineEndLabel(isSiteRtl) })), /* @__PURE__ */ React51.createElement(Stack14, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React51.createElement(DimensionField, { side: "inset-block-end", label: __26("Bottom", "elementor") }), /* @__PURE__ */ React51.createElement(DimensionField, { side: "inset-inline-start", label: getInlineStartLabel(isSiteRtl) })));
3400
+ return /* @__PURE__ */ React52.createElement(React52.Fragment, null, /* @__PURE__ */ React52.createElement(Stack14, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React52.createElement(DimensionField, { side: "inset-block-start", label: __27("Top", "elementor") }), /* @__PURE__ */ React52.createElement(DimensionField, { side: "inset-inline-end", label: getInlineEndLabel(isSiteRtl) })), /* @__PURE__ */ React52.createElement(Stack14, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React52.createElement(DimensionField, { side: "inset-block-end", label: __27("Bottom", "elementor") }), /* @__PURE__ */ React52.createElement(DimensionField, { side: "inset-inline-start", label: getInlineStartLabel(isSiteRtl) })));
3354
3401
  };
3355
3402
  var DimensionField = ({ side, label }) => {
3356
- return /* @__PURE__ */ React51.createElement(Grid9, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React51.createElement(Grid9, { item: true, xs: 12 }, /* @__PURE__ */ React51.createElement(ControlLabel, null, label)), /* @__PURE__ */ React51.createElement(Grid9, { item: true, xs: 12 }, /* @__PURE__ */ React51.createElement(StylesField, { bind: side }, /* @__PURE__ */ React51.createElement(SizeControl3, { startIcon: sideIcons[side], extendedValues: ["auto"] }))));
3403
+ return /* @__PURE__ */ React52.createElement(StylesField, { bind: side }, /* @__PURE__ */ React52.createElement(Grid9, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React52.createElement(Grid9, { item: true, xs: 12 }, /* @__PURE__ */ React52.createElement(ControlLabel, null, label)), /* @__PURE__ */ React52.createElement(Grid9, { item: true, xs: 12 }, /* @__PURE__ */ React52.createElement(SizeControl3, { startIcon: sideIcons[side], extendedValues: ["auto"] }))));
3357
3404
  };
3358
3405
 
3359
3406
  // src/components/style-sections/position-section/offset-field.tsx
3360
- import * as React52 from "react";
3407
+ import * as React53 from "react";
3361
3408
  import { SizeControl as SizeControl4 } from "@elementor/editor-controls";
3362
3409
  import { Grid as Grid10 } from "@elementor/ui";
3363
- import { __ as __27 } from "@wordpress/i18n";
3410
+ import { __ as __28 } from "@wordpress/i18n";
3364
3411
  var OffsetField = () => {
3365
- return /* @__PURE__ */ React52.createElement(StylesField, { bind: "scroll-margin-top" }, /* @__PURE__ */ React52.createElement(Grid10, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React52.createElement(Grid10, { item: true, xs: 6 }, /* @__PURE__ */ React52.createElement(ControlLabel, null, __27("Anchor offset", "elementor"))), /* @__PURE__ */ React52.createElement(Grid10, { item: true, xs: 6 }, /* @__PURE__ */ React52.createElement(SizeControl4, { units: ["px", "em", "rem", "vw", "vh"] }))));
3412
+ return /* @__PURE__ */ React53.createElement(StylesField, { bind: "scroll-margin-top" }, /* @__PURE__ */ React53.createElement(Grid10, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React53.createElement(Grid10, { item: true, xs: 6 }, /* @__PURE__ */ React53.createElement(ControlLabel, null, __28("Anchor offset", "elementor"))), /* @__PURE__ */ React53.createElement(Grid10, { item: true, xs: 6 }, /* @__PURE__ */ React53.createElement(SizeControl4, { units: ["px", "em", "rem", "vw", "vh"] }))));
3366
3413
  };
3367
3414
 
3368
3415
  // src/components/style-sections/position-section/position-field.tsx
3369
- import * as React53 from "react";
3416
+ import * as React54 from "react";
3370
3417
  import { SelectControl as SelectControl3 } from "@elementor/editor-controls";
3371
3418
  import { Grid as Grid11 } from "@elementor/ui";
3372
- import { __ as __28 } from "@wordpress/i18n";
3419
+ import { __ as __29 } from "@wordpress/i18n";
3373
3420
  var positionOptions = [
3374
- { label: __28("Static", "elementor"), value: "static" },
3375
- { label: __28("Relative", "elementor"), value: "relative" },
3376
- { label: __28("Absolute", "elementor"), value: "absolute" },
3377
- { label: __28("Fixed", "elementor"), value: "fixed" },
3378
- { label: __28("Sticky", "elementor"), value: "sticky" }
3421
+ { label: __29("Static", "elementor"), value: "static" },
3422
+ { label: __29("Relative", "elementor"), value: "relative" },
3423
+ { label: __29("Absolute", "elementor"), value: "absolute" },
3424
+ { label: __29("Fixed", "elementor"), value: "fixed" },
3425
+ { label: __29("Sticky", "elementor"), value: "sticky" }
3379
3426
  ];
3380
3427
  var PositionField = ({ onChange }) => {
3381
- return /* @__PURE__ */ React53.createElement(StylesField, { bind: "position" }, /* @__PURE__ */ React53.createElement(Grid11, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React53.createElement(Grid11, { item: true, xs: 6 }, /* @__PURE__ */ React53.createElement(ControlLabel, null, __28("Position", "elementor"))), /* @__PURE__ */ React53.createElement(Grid11, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React53.createElement(SelectControl3, { options: positionOptions, onChange }))));
3428
+ return /* @__PURE__ */ React54.createElement(StylesField, { bind: "position" }, /* @__PURE__ */ React54.createElement(Grid11, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React54.createElement(Grid11, { item: true, xs: 6 }, /* @__PURE__ */ React54.createElement(ControlLabel, null, __29("Position", "elementor"))), /* @__PURE__ */ React54.createElement(Grid11, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React54.createElement(SelectControl3, { options: positionOptions, onChange }))));
3382
3429
  };
3383
3430
 
3384
3431
  // src/components/style-sections/position-section/z-index-field.tsx
3385
- import * as React54 from "react";
3432
+ import * as React55 from "react";
3386
3433
  import { NumberControl as NumberControl3 } from "@elementor/editor-controls";
3387
3434
  import { Grid as Grid12 } from "@elementor/ui";
3388
- import { __ as __29 } from "@wordpress/i18n";
3435
+ import { __ as __30 } from "@wordpress/i18n";
3389
3436
  var ZIndexField = () => {
3390
- return /* @__PURE__ */ React54.createElement(StylesField, { bind: "z-index" }, /* @__PURE__ */ React54.createElement(Grid12, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React54.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React54.createElement(ControlLabel, null, __29("Z-index", "elementor"))), /* @__PURE__ */ React54.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React54.createElement(NumberControl3, null))));
3437
+ return /* @__PURE__ */ React55.createElement(StylesField, { bind: "z-index" }, /* @__PURE__ */ React55.createElement(Grid12, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React55.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React55.createElement(ControlLabel, null, __30("Z-index", "elementor"))), /* @__PURE__ */ React55.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React55.createElement(NumberControl3, null))));
3391
3438
  };
3392
3439
 
3393
3440
  // src/components/style-sections/position-section/position-section.tsx
@@ -3400,7 +3447,7 @@ var PositionSection = () => {
3400
3447
  "inset-inline-end"
3401
3448
  ]);
3402
3449
  const [dimensionsValuesFromHistory, updateDimensionsHistory, clearDimensionsHistory] = usePersistDimensions();
3403
- const isCssIdFeatureActive = isExperimentActive7("e_v_3_30");
3450
+ const isCssIdFeatureActive = isExperimentActive8("e_v_3_30");
3404
3451
  const onPositionChange = (newPosition, previousPosition) => {
3405
3452
  if (newPosition === "static") {
3406
3453
  if (dimensionsValues) {
@@ -3420,7 +3467,7 @@ var PositionSection = () => {
3420
3467
  }
3421
3468
  };
3422
3469
  const isNotStatic = positionValue && positionValue?.value !== "static";
3423
- return /* @__PURE__ */ React55.createElement(SectionContent, null, /* @__PURE__ */ React55.createElement(PositionField, { onChange: onPositionChange }), isNotStatic ? /* @__PURE__ */ React55.createElement(React55.Fragment, null, /* @__PURE__ */ React55.createElement(DimensionsField, null), /* @__PURE__ */ React55.createElement(ZIndexField, null)) : null, isCssIdFeatureActive && /* @__PURE__ */ React55.createElement(React55.Fragment, null, /* @__PURE__ */ React55.createElement(PanelDivider, null), /* @__PURE__ */ React55.createElement(OffsetField, null)));
3470
+ return /* @__PURE__ */ React56.createElement(SectionContent, null, /* @__PURE__ */ React56.createElement(PositionField, { onChange: onPositionChange }), isNotStatic ? /* @__PURE__ */ React56.createElement(React56.Fragment, null, /* @__PURE__ */ React56.createElement(DimensionsField, null), /* @__PURE__ */ React56.createElement(ZIndexField, null)) : null, isCssIdFeatureActive && /* @__PURE__ */ React56.createElement(React56.Fragment, null, /* @__PURE__ */ React56.createElement(PanelDivider, null), /* @__PURE__ */ React56.createElement(OffsetField, null)));
3424
3471
  };
3425
3472
  var usePersistDimensions = () => {
3426
3473
  const { id: styleDefID, meta } = useStyle();
@@ -3430,179 +3477,235 @@ var usePersistDimensions = () => {
3430
3477
  };
3431
3478
 
3432
3479
  // src/components/style-sections/size-section/size-section.tsx
3433
- import * as React60 from "react";
3480
+ import * as React62 from "react";
3434
3481
  import { AspectRatioControl, SizeControl as SizeControl5 } from "@elementor/editor-controls";
3435
- import { isExperimentActive as isExperimentActive8 } from "@elementor/editor-v1-adapters";
3482
+ import { isExperimentActive as isExperimentActive10 } from "@elementor/editor-v1-adapters";
3436
3483
  import { Grid as Grid16, Stack as Stack16 } from "@elementor/ui";
3437
- import { __ as __34 } from "@wordpress/i18n";
3484
+ import { __ as __35 } from "@wordpress/i18n";
3438
3485
 
3439
- // src/components/collapsible-content.tsx
3440
- import * as React56 from "react";
3441
- import { useState as useState11 } from "react";
3442
- import { Button, Collapse as Collapse3, Stack as Stack15 } from "@elementor/ui";
3443
- import { __ as __30 } from "@wordpress/i18n";
3444
- var CollapsibleContent = ({ children, defaultOpen = false }) => {
3445
- const [open, setOpen] = useState11(defaultOpen);
3446
- const handleToggle = () => {
3447
- setOpen((prevOpen) => !prevOpen);
3448
- };
3449
- return /* @__PURE__ */ React56.createElement(Stack15, null, /* @__PURE__ */ React56.createElement(
3450
- Button,
3451
- {
3452
- fullWidth: true,
3453
- size: "small",
3454
- color: "secondary",
3455
- variant: "outlined",
3456
- onClick: handleToggle,
3457
- endIcon: /* @__PURE__ */ React56.createElement(CollapseIcon, { open }),
3458
- sx: { my: 0.5 }
3459
- },
3460
- open ? __30("Show less", "elementor") : __30("Show more", "elementor")
3461
- ), /* @__PURE__ */ React56.createElement(Collapse3, { in: open, timeout: "auto", unmountOnExit: true }, children));
3486
+ // src/components/style-tab-collapsible-content.tsx
3487
+ import * as React58 from "react";
3488
+ import { isExperimentActive as isExperimentActive9 } from "@elementor/editor-v1-adapters";
3489
+
3490
+ // src/styles-inheritance/components/styles-inheritance-section-indicators.tsx
3491
+ import * as React57 from "react";
3492
+ import { ELEMENTS_BASE_STYLES_PROVIDER_KEY as ELEMENTS_BASE_STYLES_PROVIDER_KEY4, isElementsStylesProvider as isElementsStylesProvider4 } from "@elementor/editor-styles-repository";
3493
+ import { Stack as Stack15, Tooltip as Tooltip7 } from "@elementor/ui";
3494
+ import { __ as __31 } from "@wordpress/i18n";
3495
+ var orderedVariants = ["global", "local", "overridden"];
3496
+ var StylesInheritanceSectionIndicators = ({ fields }) => {
3497
+ const { id, meta } = useStyle();
3498
+ const snapshot = useStylesInheritanceSnapshot();
3499
+ const snapshotFields = Object.fromEntries(
3500
+ Object.entries(snapshot ?? {}).filter(([key]) => fields.includes(key))
3501
+ );
3502
+ const indicators = getIndicators(snapshotFields, id ?? "", meta);
3503
+ if (Object.values(indicators).filter(Boolean).length === 0) {
3504
+ return null;
3505
+ }
3506
+ const hasActualValues = __31("Has effective styles", "elementor");
3507
+ const hasOverriddenValues = __31("Has overridden styles", "elementor");
3508
+ return /* @__PURE__ */ React57.createElement(Tooltip7, { title: __31("Has styles", "elementor"), placement: "top" }, /* @__PURE__ */ React57.createElement(Stack15, { direction: "row", sx: { "& > *": { marginInlineStart: -0.25 } }, role: "list" }, orderedVariants.map(
3509
+ (variant) => indicators[variant] && /* @__PURE__ */ React57.createElement(
3510
+ StyleIndicator,
3511
+ {
3512
+ key: variant,
3513
+ variant,
3514
+ "data-variant": variant,
3515
+ role: "listitem",
3516
+ "aria-label": variant === "overridden" ? hasOverriddenValues : hasActualValues
3517
+ }
3518
+ )
3519
+ )));
3520
+ };
3521
+ function getIndicators(snapshotFields, styleId, meta) {
3522
+ const indicators = {};
3523
+ Object.values(snapshotFields).forEach((inheritanceChain) => {
3524
+ const currentStyle = getCurrentStyleFromChain(inheritanceChain, styleId, meta);
3525
+ if (!currentStyle) {
3526
+ return;
3527
+ }
3528
+ const [actualStyle] = inheritanceChain;
3529
+ if (currentStyle === actualStyle) {
3530
+ const providerKey = actualStyle.provider ?? "";
3531
+ if (isElementsStylesProvider4(providerKey)) {
3532
+ indicators.local = true;
3533
+ return;
3534
+ }
3535
+ if (providerKey !== ELEMENTS_BASE_STYLES_PROVIDER_KEY4) {
3536
+ indicators.global = true;
3537
+ }
3538
+ return;
3539
+ }
3540
+ indicators.overridden = true;
3541
+ });
3542
+ return indicators;
3543
+ }
3544
+ function getCurrentStyleFromChain(chain, styleId, meta) {
3545
+ return chain.find(
3546
+ ({
3547
+ style: { id },
3548
+ variant: {
3549
+ meta: { breakpoint, state }
3550
+ }
3551
+ }) => id === styleId && breakpoint === meta.breakpoint && state === meta.state
3552
+ );
3553
+ }
3554
+
3555
+ // src/components/style-tab-collapsible-content.tsx
3556
+ var StyleTabCollapsibleContent = ({ fields = [], children }) => {
3557
+ return /* @__PURE__ */ React58.createElement(CollapsibleContent, { titleEnd: getStylesInheritanceIndicators(fields) }, children);
3462
3558
  };
3559
+ function getStylesInheritanceIndicators(fields) {
3560
+ const isUsingFieldsIndicators = isExperimentActive9(EXPERIMENTAL_FEATURES.V_3_30);
3561
+ if (fields.length === 0 || !isUsingFieldsIndicators) {
3562
+ return null;
3563
+ }
3564
+ return (isOpen) => !isOpen ? /* @__PURE__ */ React58.createElement(StylesInheritanceSectionIndicators, { fields }) : null;
3565
+ }
3463
3566
 
3464
3567
  // src/components/style-sections/size-section/object-fit-field.tsx
3465
- import * as React57 from "react";
3568
+ import * as React59 from "react";
3466
3569
  import { SelectControl as SelectControl4 } from "@elementor/editor-controls";
3467
3570
  import { Grid as Grid13 } from "@elementor/ui";
3468
- import { __ as __31 } from "@wordpress/i18n";
3571
+ import { __ as __32 } from "@wordpress/i18n";
3469
3572
  var positionOptions2 = [
3470
- { label: __31("Fill", "elementor"), value: "fill" },
3471
- { label: __31("Cover", "elementor"), value: "cover" },
3472
- { label: __31("Contain", "elementor"), value: "contain" },
3473
- { label: __31("None", "elementor"), value: "none" },
3474
- { label: __31("Scale down", "elementor"), value: "scale-down" }
3573
+ { label: __32("Fill", "elementor"), value: "fill" },
3574
+ { label: __32("Cover", "elementor"), value: "cover" },
3575
+ { label: __32("Contain", "elementor"), value: "contain" },
3576
+ { label: __32("None", "elementor"), value: "none" },
3577
+ { label: __32("Scale down", "elementor"), value: "scale-down" }
3475
3578
  ];
3476
3579
  var ObjectFitField = () => {
3477
- return /* @__PURE__ */ React57.createElement(StylesField, { bind: "object-fit" }, /* @__PURE__ */ React57.createElement(Grid13, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React57.createElement(Grid13, { item: true, xs: 6 }, /* @__PURE__ */ React57.createElement(ControlLabel, null, __31("Object fit", "elementor"))), /* @__PURE__ */ React57.createElement(Grid13, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React57.createElement(SelectControl4, { options: positionOptions2 }))));
3580
+ return /* @__PURE__ */ React59.createElement(StylesField, { bind: "object-fit" }, /* @__PURE__ */ React59.createElement(Grid13, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React59.createElement(Grid13, { item: true, xs: 6 }, /* @__PURE__ */ React59.createElement(ControlLabel, null, __32("Object fit", "elementor"))), /* @__PURE__ */ React59.createElement(Grid13, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React59.createElement(SelectControl4, { options: positionOptions2 }))));
3478
3581
  };
3479
3582
 
3480
3583
  // src/components/style-sections/size-section/object-position-field.tsx
3481
- import * as React58 from "react";
3584
+ import * as React60 from "react";
3482
3585
  import { SelectControl as SelectControl5 } from "@elementor/editor-controls";
3483
3586
  import { Grid as Grid14 } from "@elementor/ui";
3484
- import { __ as __32 } from "@wordpress/i18n";
3587
+ import { __ as __33 } from "@wordpress/i18n";
3485
3588
  var positionOptions3 = [
3486
- { label: __32("Center center", "elementor"), value: "center center" },
3487
- { label: __32("Center left", "elementor"), value: "center left" },
3488
- { label: __32("Center right", "elementor"), value: "center right" },
3489
- { label: __32("Top center", "elementor"), value: "top center" },
3490
- { label: __32("Top left", "elementor"), value: "top left" },
3491
- { label: __32("Top right", "elementor"), value: "top right" },
3492
- { label: __32("Bottom center", "elementor"), value: "bottom center" },
3493
- { label: __32("Bottom left", "elementor"), value: "bottom left" },
3494
- { label: __32("Bottom right", "elementor"), value: "bottom right" }
3589
+ { label: __33("Center center", "elementor"), value: "center center" },
3590
+ { label: __33("Center left", "elementor"), value: "center left" },
3591
+ { label: __33("Center right", "elementor"), value: "center right" },
3592
+ { label: __33("Top center", "elementor"), value: "top center" },
3593
+ { label: __33("Top left", "elementor"), value: "top left" },
3594
+ { label: __33("Top right", "elementor"), value: "top right" },
3595
+ { label: __33("Bottom center", "elementor"), value: "bottom center" },
3596
+ { label: __33("Bottom left", "elementor"), value: "bottom left" },
3597
+ { label: __33("Bottom right", "elementor"), value: "bottom right" }
3495
3598
  ];
3496
3599
  var ObjectPositionField = () => {
3497
- return /* @__PURE__ */ React58.createElement(StylesField, { bind: "object-position" }, /* @__PURE__ */ React58.createElement(Grid14, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React58.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React58.createElement(ControlLabel, null, __32("Object position", "elementor"))), /* @__PURE__ */ React58.createElement(Grid14, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React58.createElement(SelectControl5, { options: positionOptions3 }))));
3600
+ return /* @__PURE__ */ React60.createElement(StylesField, { bind: "object-position" }, /* @__PURE__ */ React60.createElement(Grid14, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React60.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(ControlLabel, null, __33("Object position", "elementor"))), /* @__PURE__ */ React60.createElement(Grid14, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React60.createElement(SelectControl5, { options: positionOptions3 }))));
3498
3601
  };
3499
3602
 
3500
3603
  // src/components/style-sections/size-section/overflow-field.tsx
3501
- import * as React59 from "react";
3604
+ import * as React61 from "react";
3502
3605
  import { ToggleControl as ToggleControl8 } from "@elementor/editor-controls";
3503
3606
  import { EyeIcon, EyeOffIcon, LetterAIcon } from "@elementor/icons";
3504
3607
  import { Grid as Grid15 } from "@elementor/ui";
3505
- import { __ as __33 } from "@wordpress/i18n";
3608
+ import { __ as __34 } from "@wordpress/i18n";
3506
3609
  var options6 = [
3507
3610
  {
3508
3611
  value: "visible",
3509
- label: __33("Visible", "elementor"),
3510
- renderContent: ({ size }) => /* @__PURE__ */ React59.createElement(EyeIcon, { fontSize: size }),
3612
+ label: __34("Visible", "elementor"),
3613
+ renderContent: ({ size }) => /* @__PURE__ */ React61.createElement(EyeIcon, { fontSize: size }),
3511
3614
  showTooltip: true
3512
3615
  },
3513
3616
  {
3514
3617
  value: "hidden",
3515
- label: __33("Hidden", "elementor"),
3516
- renderContent: ({ size }) => /* @__PURE__ */ React59.createElement(EyeOffIcon, { fontSize: size }),
3618
+ label: __34("Hidden", "elementor"),
3619
+ renderContent: ({ size }) => /* @__PURE__ */ React61.createElement(EyeOffIcon, { fontSize: size }),
3517
3620
  showTooltip: true
3518
3621
  },
3519
3622
  {
3520
3623
  value: "auto",
3521
- label: __33("Auto", "elementor"),
3522
- renderContent: ({ size }) => /* @__PURE__ */ React59.createElement(LetterAIcon, { fontSize: size }),
3624
+ label: __34("Auto", "elementor"),
3625
+ renderContent: ({ size }) => /* @__PURE__ */ React61.createElement(LetterAIcon, { fontSize: size }),
3523
3626
  showTooltip: true
3524
3627
  }
3525
3628
  ];
3526
3629
  var OverflowField = () => {
3527
- return /* @__PURE__ */ React59.createElement(StylesField, { bind: "overflow" }, /* @__PURE__ */ React59.createElement(Grid15, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React59.createElement(Grid15, { item: true, xs: 6 }, /* @__PURE__ */ React59.createElement(ControlLabel, null, __33("Overflow", "elementor"))), /* @__PURE__ */ React59.createElement(Grid15, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React59.createElement(ToggleControl8, { options: options6 }))));
3630
+ return /* @__PURE__ */ React61.createElement(StylesField, { bind: "overflow" }, /* @__PURE__ */ React61.createElement(Grid15, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React61.createElement(Grid15, { item: true, xs: 6 }, /* @__PURE__ */ React61.createElement(ControlLabel, null, __34("Overflow", "elementor"))), /* @__PURE__ */ React61.createElement(Grid15, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React61.createElement(ToggleControl8, { options: options6 }))));
3528
3631
  };
3529
3632
 
3530
3633
  // src/components/style-sections/size-section/size-section.tsx
3531
3634
  var SizeSection = () => {
3532
3635
  const [fitValue] = useStylesField("object-fit");
3533
3636
  const isNotFill = fitValue && fitValue?.value !== "fill";
3534
- const isVersion330Active = isExperimentActive8("e_v_3_30");
3535
- return /* @__PURE__ */ React60.createElement(SectionContent, null, /* @__PURE__ */ React60.createElement(Grid16, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(SizeField, { bind: "width", label: __34("Width", "elementor"), extendedValues: ["auto"] })), /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(SizeField, { bind: "height", label: __34("Height", "elementor"), extendedValues: ["auto"] }))), /* @__PURE__ */ React60.createElement(Grid16, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(
3637
+ const isVersion330Active = isExperimentActive10("e_v_3_30");
3638
+ return /* @__PURE__ */ React62.createElement(SectionContent, null, /* @__PURE__ */ React62.createElement(Grid16, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(SizeField, { bind: "width", label: __35("Width", "elementor"), extendedValues: ["auto"] })), /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(SizeField, { bind: "height", label: __35("Height", "elementor"), extendedValues: ["auto"] }))), /* @__PURE__ */ React62.createElement(Grid16, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(
3536
3639
  SizeField,
3537
3640
  {
3538
3641
  bind: "min-width",
3539
- label: __34("Min width", "elementor"),
3642
+ label: __35("Min width", "elementor"),
3540
3643
  extendedValues: ["auto"]
3541
3644
  }
3542
- )), /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(
3645
+ )), /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(
3543
3646
  SizeField,
3544
3647
  {
3545
3648
  bind: "min-height",
3546
- label: __34("Min height", "elementor"),
3649
+ label: __35("Min height", "elementor"),
3547
3650
  extendedValues: ["auto"]
3548
3651
  }
3549
- ))), /* @__PURE__ */ React60.createElement(Grid16, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(SizeField, { bind: "max-width", label: __34("Max width", "elementor") })), /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(SizeField, { bind: "max-height", label: __34("Max height", "elementor") }))), /* @__PURE__ */ React60.createElement(PanelDivider, null), /* @__PURE__ */ React60.createElement(Stack16, null, /* @__PURE__ */ React60.createElement(OverflowField, null)), isVersion330Active && /* @__PURE__ */ React60.createElement(CollapsibleContent, null, /* @__PURE__ */ React60.createElement(Stack16, { gap: 2 }, /* @__PURE__ */ React60.createElement(StylesField, { bind: "aspect-ratio" }, /* @__PURE__ */ React60.createElement(AspectRatioControl, { label: __34("Aspect Ratio", "elementor") })), /* @__PURE__ */ React60.createElement(PanelDivider, null), /* @__PURE__ */ React60.createElement(ObjectFitField, null), isNotFill && /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React60.createElement(ObjectPositionField, null)))));
3652
+ ))), /* @__PURE__ */ React62.createElement(Grid16, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(SizeField, { bind: "max-width", label: __35("Max width", "elementor") })), /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(SizeField, { bind: "max-height", label: __35("Max height", "elementor") }))), /* @__PURE__ */ React62.createElement(PanelDivider, null), /* @__PURE__ */ React62.createElement(Stack16, null, /* @__PURE__ */ React62.createElement(OverflowField, null)), isVersion330Active && /* @__PURE__ */ React62.createElement(StyleTabCollapsibleContent, { fields: ["aspect-ratio", "object-fit"] }, /* @__PURE__ */ React62.createElement(Stack16, { gap: 2 }, /* @__PURE__ */ React62.createElement(StylesField, { bind: "aspect-ratio" }, /* @__PURE__ */ React62.createElement(AspectRatioControl, { label: __35("Aspect Ratio", "elementor") })), /* @__PURE__ */ React62.createElement(PanelDivider, null), /* @__PURE__ */ React62.createElement(ObjectFitField, null), isNotFill && /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(ObjectPositionField, null)))));
3550
3653
  };
3551
3654
  var SizeField = ({ label, bind, extendedValues }) => {
3552
- return /* @__PURE__ */ React60.createElement(StylesField, { bind }, /* @__PURE__ */ React60.createElement(Grid16, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 12 }, /* @__PURE__ */ React60.createElement(ControlLabel, null, label)), /* @__PURE__ */ React60.createElement(Grid16, { item: true, xs: 12 }, /* @__PURE__ */ React60.createElement(SizeControl5, { extendedValues }))));
3655
+ return /* @__PURE__ */ React62.createElement(StylesField, { bind }, /* @__PURE__ */ React62.createElement(Grid16, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 12 }, /* @__PURE__ */ React62.createElement(ControlLabel, null, label)), /* @__PURE__ */ React62.createElement(Grid16, { item: true, xs: 12 }, /* @__PURE__ */ React62.createElement(SizeControl5, { extendedValues }))));
3553
3656
  };
3554
3657
 
3555
3658
  // src/components/style-sections/spacing-section/spacing-section.tsx
3556
- import * as React61 from "react";
3659
+ import * as React63 from "react";
3557
3660
  import { LinkedDimensionsControl } from "@elementor/editor-controls";
3558
- import { __ as __35 } from "@wordpress/i18n";
3661
+ import { __ as __36 } from "@wordpress/i18n";
3559
3662
  var SpacingSection = () => {
3560
3663
  const { isSiteRtl } = useDirection();
3561
- return /* @__PURE__ */ React61.createElement(SectionContent, null, /* @__PURE__ */ React61.createElement(StylesField, { bind: "margin" }, /* @__PURE__ */ React61.createElement(
3664
+ return /* @__PURE__ */ React63.createElement(SectionContent, null, /* @__PURE__ */ React63.createElement(StylesField, { bind: "margin" }, /* @__PURE__ */ React63.createElement(
3562
3665
  LinkedDimensionsControl,
3563
3666
  {
3564
- label: __35("Margin", "elementor"),
3667
+ label: __36("Margin", "elementor"),
3565
3668
  isSiteRtl,
3566
3669
  extendedValues: ["auto"]
3567
3670
  }
3568
- )), /* @__PURE__ */ React61.createElement(PanelDivider, null), /* @__PURE__ */ React61.createElement(StylesField, { bind: "padding" }, /* @__PURE__ */ React61.createElement(LinkedDimensionsControl, { label: __35("Padding", "elementor"), isSiteRtl })));
3671
+ )), /* @__PURE__ */ React63.createElement(PanelDivider, null), /* @__PURE__ */ React63.createElement(StylesField, { bind: "padding" }, /* @__PURE__ */ React63.createElement(LinkedDimensionsControl, { label: __36("Padding", "elementor"), isSiteRtl })));
3569
3672
  };
3570
3673
 
3571
3674
  // src/components/style-sections/typography-section/typography-section.tsx
3572
- import * as React77 from "react";
3573
- import { isExperimentActive as isExperimentActive9 } from "@elementor/editor-v1-adapters";
3675
+ import * as React79 from "react";
3676
+ import { isExperimentActive as isExperimentActive11 } from "@elementor/editor-v1-adapters";
3574
3677
 
3575
3678
  // src/components/style-sections/typography-section/column-count-field.tsx
3576
- import * as React62 from "react";
3679
+ import * as React64 from "react";
3577
3680
  import { NumberControl as NumberControl4 } from "@elementor/editor-controls";
3578
3681
  import { Grid as Grid17 } from "@elementor/ui";
3579
- import { __ as __36 } from "@wordpress/i18n";
3682
+ import { __ as __37 } from "@wordpress/i18n";
3580
3683
  var ColumnCountField = () => {
3581
- return /* @__PURE__ */ React62.createElement(StylesField, { bind: "column-count" }, /* @__PURE__ */ React62.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React62.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(ControlLabel, null, __36("Columns", "elementor"))), /* @__PURE__ */ React62.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React62.createElement(NumberControl4, { shouldForceInt: true, min: 0, step: 1 }))));
3684
+ return /* @__PURE__ */ React64.createElement(StylesField, { bind: "column-count" }, /* @__PURE__ */ React64.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React64.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React64.createElement(ControlLabel, null, __37("Columns", "elementor"))), /* @__PURE__ */ React64.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React64.createElement(NumberControl4, { shouldForceInt: true, min: 0, step: 1 }))));
3582
3685
  };
3583
3686
 
3584
3687
  // src/components/style-sections/typography-section/column-gap-field.tsx
3585
- import * as React63 from "react";
3688
+ import * as React65 from "react";
3586
3689
  import { SizeControl as SizeControl6 } from "@elementor/editor-controls";
3587
3690
  import { Grid as Grid18 } from "@elementor/ui";
3588
- import { __ as __37 } from "@wordpress/i18n";
3691
+ import { __ as __38 } from "@wordpress/i18n";
3589
3692
  var ColumnGapField = () => {
3590
- return /* @__PURE__ */ React63.createElement(StylesField, { bind: "column-gap" }, /* @__PURE__ */ React63.createElement(Grid18, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React63.createElement(Grid18, { item: true, xs: 6 }, /* @__PURE__ */ React63.createElement(ControlLabel, null, __37("Column gap", "elementor"))), /* @__PURE__ */ React63.createElement(Grid18, { item: true, xs: 6 }, /* @__PURE__ */ React63.createElement(SizeControl6, null))));
3693
+ return /* @__PURE__ */ React65.createElement(StylesField, { bind: "column-gap" }, /* @__PURE__ */ React65.createElement(Grid18, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React65.createElement(Grid18, { item: true, xs: 6 }, /* @__PURE__ */ React65.createElement(ControlLabel, null, __38("Column gap", "elementor"))), /* @__PURE__ */ React65.createElement(Grid18, { item: true, xs: 6 }, /* @__PURE__ */ React65.createElement(SizeControl6, null))));
3591
3694
  };
3592
3695
 
3593
3696
  // src/components/style-sections/typography-section/font-family-field.tsx
3594
- import * as React64 from "react";
3697
+ import * as React66 from "react";
3595
3698
  import { FontFamilyControl } from "@elementor/editor-controls";
3596
3699
  import { Grid as Grid19 } from "@elementor/ui";
3597
- import { __ as __39 } from "@wordpress/i18n";
3700
+ import { __ as __40 } from "@wordpress/i18n";
3598
3701
 
3599
3702
  // src/components/style-sections/typography-section/hooks/use-font-families.ts
3600
3703
  import { useMemo as useMemo6 } from "react";
3601
- import { __ as __38 } from "@wordpress/i18n";
3704
+ import { __ as __39 } from "@wordpress/i18n";
3602
3705
  var supportedCategories = {
3603
- system: __38("System", "elementor"),
3604
- custom: __38("Custom Fonts", "elementor"),
3605
- googlefonts: __38("Google Fonts", "elementor")
3706
+ system: __39("System", "elementor"),
3707
+ custom: __39("Custom Fonts", "elementor"),
3708
+ googlefonts: __39("Google Fonts", "elementor")
3606
3709
  };
3607
3710
  var getFontFamilies = () => {
3608
3711
  const { controls } = getElementorConfig();
@@ -3639,188 +3742,188 @@ var FontFamilyField = () => {
3639
3742
  if (fontFamilies.length === 0) {
3640
3743
  return null;
3641
3744
  }
3642
- return /* @__PURE__ */ React64.createElement(StylesField, { bind: "font-family" }, /* @__PURE__ */ React64.createElement(Grid19, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React64.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React64.createElement(ControlLabel, null, __39("Font family", "elementor"))), /* @__PURE__ */ React64.createElement(Grid19, { item: true, xs: 6, sx: { minWidth: 0 } }, /* @__PURE__ */ React64.createElement(FontFamilyControl, { fontFamilies }))));
3745
+ return /* @__PURE__ */ React66.createElement(StylesField, { bind: "font-family" }, /* @__PURE__ */ React66.createElement(Grid19, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React66.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React66.createElement(ControlLabel, null, __40("Font family", "elementor"))), /* @__PURE__ */ React66.createElement(Grid19, { item: true, xs: 6, sx: { minWidth: 0 } }, /* @__PURE__ */ React66.createElement(FontFamilyControl, { fontFamilies }))));
3643
3746
  };
3644
3747
 
3645
3748
  // src/components/style-sections/typography-section/font-size-field.tsx
3646
- import * as React65 from "react";
3749
+ import * as React67 from "react";
3647
3750
  import { SizeControl as SizeControl7 } from "@elementor/editor-controls";
3648
3751
  import { Grid as Grid20 } from "@elementor/ui";
3649
- import { __ as __40 } from "@wordpress/i18n";
3752
+ import { __ as __41 } from "@wordpress/i18n";
3650
3753
  var FontSizeField = () => {
3651
- return /* @__PURE__ */ React65.createElement(StylesField, { bind: "font-size" }, /* @__PURE__ */ React65.createElement(Grid20, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React65.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React65.createElement(ControlLabel, null, __40("Font size", "elementor"))), /* @__PURE__ */ React65.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React65.createElement(SizeControl7, null))));
3754
+ return /* @__PURE__ */ React67.createElement(StylesField, { bind: "font-size" }, /* @__PURE__ */ React67.createElement(Grid20, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React67.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React67.createElement(ControlLabel, null, __41("Font size", "elementor"))), /* @__PURE__ */ React67.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React67.createElement(SizeControl7, null))));
3652
3755
  };
3653
3756
 
3654
3757
  // src/components/style-sections/typography-section/font-style-field.tsx
3655
- import * as React66 from "react";
3656
- import { ControlFormLabel as ControlFormLabel4, ToggleControl as ToggleControl9 } from "@elementor/editor-controls";
3758
+ import * as React68 from "react";
3759
+ import { ControlFormLabel as ControlFormLabel5, ToggleControl as ToggleControl9 } from "@elementor/editor-controls";
3657
3760
  import { ItalicIcon, MinusIcon as MinusIcon2 } from "@elementor/icons";
3658
3761
  import { Grid as Grid21 } from "@elementor/ui";
3659
- import { __ as __41 } from "@wordpress/i18n";
3762
+ import { __ as __42 } from "@wordpress/i18n";
3660
3763
  var options7 = [
3661
3764
  {
3662
3765
  value: "normal",
3663
- label: __41("Normal", "elementor"),
3664
- renderContent: ({ size }) => /* @__PURE__ */ React66.createElement(MinusIcon2, { fontSize: size }),
3766
+ label: __42("Normal", "elementor"),
3767
+ renderContent: ({ size }) => /* @__PURE__ */ React68.createElement(MinusIcon2, { fontSize: size }),
3665
3768
  showTooltip: true
3666
3769
  },
3667
3770
  {
3668
3771
  value: "italic",
3669
- label: __41("Italic", "elementor"),
3670
- renderContent: ({ size }) => /* @__PURE__ */ React66.createElement(ItalicIcon, { fontSize: size }),
3772
+ label: __42("Italic", "elementor"),
3773
+ renderContent: ({ size }) => /* @__PURE__ */ React68.createElement(ItalicIcon, { fontSize: size }),
3671
3774
  showTooltip: true
3672
3775
  }
3673
3776
  ];
3674
- var FontStyleField = () => /* @__PURE__ */ React66.createElement(StylesField, { bind: "font-style" }, /* @__PURE__ */ React66.createElement(Grid21, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React66.createElement(Grid21, { item: true, xs: 6 }, /* @__PURE__ */ React66.createElement(ControlFormLabel4, null, __41("Font style", "elementor"))), /* @__PURE__ */ React66.createElement(Grid21, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React66.createElement(ToggleControl9, { options: options7 }))));
3777
+ var FontStyleField = () => /* @__PURE__ */ React68.createElement(StylesField, { bind: "font-style" }, /* @__PURE__ */ React68.createElement(Grid21, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React68.createElement(Grid21, { item: true, xs: 6 }, /* @__PURE__ */ React68.createElement(ControlFormLabel5, null, __42("Font style", "elementor"))), /* @__PURE__ */ React68.createElement(Grid21, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React68.createElement(ToggleControl9, { options: options7 }))));
3675
3778
 
3676
3779
  // src/components/style-sections/typography-section/font-weight-field.tsx
3677
- import * as React67 from "react";
3780
+ import * as React69 from "react";
3678
3781
  import { SelectControl as SelectControl6 } from "@elementor/editor-controls";
3679
3782
  import { Grid as Grid22 } from "@elementor/ui";
3680
- import { __ as __42 } from "@wordpress/i18n";
3783
+ import { __ as __43 } from "@wordpress/i18n";
3681
3784
  var fontWeightOptions = [
3682
- { value: "100", label: __42("100 - Thin", "elementor") },
3683
- { value: "200", label: __42("200 - Extra light", "elementor") },
3684
- { value: "300", label: __42("300 - Light", "elementor") },
3685
- { value: "400", label: __42("400 - Normal", "elementor") },
3686
- { value: "500", label: __42("500 - Medium", "elementor") },
3687
- { value: "600", label: __42("600 - Semi bold", "elementor") },
3688
- { value: "700", label: __42("700 - Bold", "elementor") },
3689
- { value: "800", label: __42("800 - Extra bold", "elementor") },
3690
- { value: "900", label: __42("900 - Black", "elementor") }
3785
+ { value: "100", label: __43("100 - Thin", "elementor") },
3786
+ { value: "200", label: __43("200 - Extra light", "elementor") },
3787
+ { value: "300", label: __43("300 - Light", "elementor") },
3788
+ { value: "400", label: __43("400 - Normal", "elementor") },
3789
+ { value: "500", label: __43("500 - Medium", "elementor") },
3790
+ { value: "600", label: __43("600 - Semi bold", "elementor") },
3791
+ { value: "700", label: __43("700 - Bold", "elementor") },
3792
+ { value: "800", label: __43("800 - Extra bold", "elementor") },
3793
+ { value: "900", label: __43("900 - Black", "elementor") }
3691
3794
  ];
3692
3795
  var FontWeightField = () => {
3693
- return /* @__PURE__ */ React67.createElement(StylesField, { bind: "font-weight" }, /* @__PURE__ */ React67.createElement(Grid22, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React67.createElement(Grid22, { item: true, xs: 6 }, /* @__PURE__ */ React67.createElement(ControlLabel, null, __42("Font weight", "elementor"))), /* @__PURE__ */ React67.createElement(Grid22, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React67.createElement(SelectControl6, { options: fontWeightOptions }))));
3796
+ return /* @__PURE__ */ React69.createElement(StylesField, { bind: "font-weight" }, /* @__PURE__ */ React69.createElement(Grid22, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React69.createElement(Grid22, { item: true, xs: 6 }, /* @__PURE__ */ React69.createElement(ControlLabel, null, __43("Font weight", "elementor"))), /* @__PURE__ */ React69.createElement(Grid22, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React69.createElement(SelectControl6, { options: fontWeightOptions }))));
3694
3797
  };
3695
3798
 
3696
3799
  // src/components/style-sections/typography-section/letter-spacing-field.tsx
3697
- import * as React68 from "react";
3800
+ import * as React70 from "react";
3698
3801
  import { SizeControl as SizeControl8 } from "@elementor/editor-controls";
3699
3802
  import { Grid as Grid23 } from "@elementor/ui";
3700
- import { __ as __43 } from "@wordpress/i18n";
3803
+ import { __ as __44 } from "@wordpress/i18n";
3701
3804
  var LetterSpacingField = () => {
3702
- return /* @__PURE__ */ React68.createElement(StylesField, { bind: "letter-spacing" }, /* @__PURE__ */ React68.createElement(Grid23, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React68.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React68.createElement(ControlLabel, null, __43("Letter spacing", "elementor"))), /* @__PURE__ */ React68.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React68.createElement(SizeControl8, null))));
3805
+ return /* @__PURE__ */ React70.createElement(StylesField, { bind: "letter-spacing" }, /* @__PURE__ */ React70.createElement(Grid23, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React70.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React70.createElement(ControlLabel, null, __44("Letter spacing", "elementor"))), /* @__PURE__ */ React70.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React70.createElement(SizeControl8, null))));
3703
3806
  };
3704
3807
 
3705
3808
  // src/components/style-sections/typography-section/line-height-field.tsx
3706
- import * as React69 from "react";
3809
+ import * as React71 from "react";
3707
3810
  import { SizeControl as SizeControl9 } from "@elementor/editor-controls";
3708
3811
  import { Grid as Grid24 } from "@elementor/ui";
3709
- import { __ as __44 } from "@wordpress/i18n";
3812
+ import { __ as __45 } from "@wordpress/i18n";
3710
3813
  var LineHeightField = () => {
3711
- return /* @__PURE__ */ React69.createElement(StylesField, { bind: "line-height" }, /* @__PURE__ */ React69.createElement(Grid24, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React69.createElement(Grid24, { item: true, xs: 6 }, /* @__PURE__ */ React69.createElement(ControlLabel, null, __44("Line height", "elementor"))), /* @__PURE__ */ React69.createElement(Grid24, { item: true, xs: 6 }, /* @__PURE__ */ React69.createElement(SizeControl9, null))));
3814
+ return /* @__PURE__ */ React71.createElement(StylesField, { bind: "line-height" }, /* @__PURE__ */ React71.createElement(Grid24, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React71.createElement(Grid24, { item: true, xs: 6 }, /* @__PURE__ */ React71.createElement(ControlLabel, null, __45("Line height", "elementor"))), /* @__PURE__ */ React71.createElement(Grid24, { item: true, xs: 6 }, /* @__PURE__ */ React71.createElement(SizeControl9, null))));
3712
3815
  };
3713
3816
 
3714
3817
  // src/components/style-sections/typography-section/text-alignment-field.tsx
3715
- import * as React70 from "react";
3818
+ import * as React72 from "react";
3716
3819
  import { ToggleControl as ToggleControl10 } from "@elementor/editor-controls";
3717
3820
  import { AlignCenterIcon, AlignJustifiedIcon, AlignLeftIcon, AlignRightIcon } from "@elementor/icons";
3718
3821
  import { Grid as Grid25, withDirection as withDirection9 } from "@elementor/ui";
3719
- import { __ as __45 } from "@wordpress/i18n";
3822
+ import { __ as __46 } from "@wordpress/i18n";
3720
3823
  var AlignStartIcon = withDirection9(AlignLeftIcon);
3721
3824
  var AlignEndIcon = withDirection9(AlignRightIcon);
3722
3825
  var options8 = [
3723
3826
  {
3724
3827
  value: "start",
3725
- label: __45("Start", "elementor"),
3726
- renderContent: ({ size }) => /* @__PURE__ */ React70.createElement(AlignStartIcon, { fontSize: size }),
3828
+ label: __46("Start", "elementor"),
3829
+ renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(AlignStartIcon, { fontSize: size }),
3727
3830
  showTooltip: true
3728
3831
  },
3729
3832
  {
3730
3833
  value: "center",
3731
- label: __45("Center", "elementor"),
3732
- renderContent: ({ size }) => /* @__PURE__ */ React70.createElement(AlignCenterIcon, { fontSize: size }),
3834
+ label: __46("Center", "elementor"),
3835
+ renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(AlignCenterIcon, { fontSize: size }),
3733
3836
  showTooltip: true
3734
3837
  },
3735
3838
  {
3736
3839
  value: "end",
3737
- label: __45("End", "elementor"),
3738
- renderContent: ({ size }) => /* @__PURE__ */ React70.createElement(AlignEndIcon, { fontSize: size }),
3840
+ label: __46("End", "elementor"),
3841
+ renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(AlignEndIcon, { fontSize: size }),
3739
3842
  showTooltip: true
3740
3843
  },
3741
3844
  {
3742
3845
  value: "justify",
3743
- label: __45("Justify", "elementor"),
3744
- renderContent: ({ size }) => /* @__PURE__ */ React70.createElement(AlignJustifiedIcon, { fontSize: size }),
3846
+ label: __46("Justify", "elementor"),
3847
+ renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(AlignJustifiedIcon, { fontSize: size }),
3745
3848
  showTooltip: true
3746
3849
  }
3747
3850
  ];
3748
3851
  var TextAlignmentField = () => {
3749
- return /* @__PURE__ */ React70.createElement(StylesField, { bind: "text-align" }, /* @__PURE__ */ React70.createElement(Grid25, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React70.createElement(Grid25, { item: true, xs: 6 }, /* @__PURE__ */ React70.createElement(ControlLabel, null, __45("Text align", "elementor"))), /* @__PURE__ */ React70.createElement(Grid25, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React70.createElement(ToggleControl10, { options: options8 }))));
3852
+ return /* @__PURE__ */ React72.createElement(StylesField, { bind: "text-align" }, /* @__PURE__ */ React72.createElement(Grid25, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React72.createElement(Grid25, { item: true, xs: 6 }, /* @__PURE__ */ React72.createElement(ControlLabel, null, __46("Text align", "elementor"))), /* @__PURE__ */ React72.createElement(Grid25, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React72.createElement(ToggleControl10, { options: options8 }))));
3750
3853
  };
3751
3854
 
3752
3855
  // src/components/style-sections/typography-section/text-color-field.tsx
3753
- import * as React71 from "react";
3856
+ import * as React73 from "react";
3754
3857
  import { ColorControl as ColorControl2 } from "@elementor/editor-controls";
3755
3858
  import { Grid as Grid26 } from "@elementor/ui";
3756
- import { __ as __46 } from "@wordpress/i18n";
3859
+ import { __ as __47 } from "@wordpress/i18n";
3757
3860
  var TextColorField = () => {
3758
- return /* @__PURE__ */ React71.createElement(StylesField, { bind: "color" }, /* @__PURE__ */ React71.createElement(Grid26, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React71.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React71.createElement(ControlLabel, null, __46("Text color", "elementor"))), /* @__PURE__ */ React71.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React71.createElement(ColorControl2, null))));
3861
+ return /* @__PURE__ */ React73.createElement(StylesField, { bind: "color" }, /* @__PURE__ */ React73.createElement(Grid26, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React73.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React73.createElement(ControlLabel, null, __47("Text color", "elementor"))), /* @__PURE__ */ React73.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React73.createElement(ColorControl2, null))));
3759
3862
  };
3760
3863
 
3761
3864
  // src/components/style-sections/typography-section/text-decoration-field.tsx
3762
- import * as React72 from "react";
3865
+ import * as React74 from "react";
3763
3866
  import { ToggleControl as ToggleControl11 } from "@elementor/editor-controls";
3764
3867
  import { MinusIcon as MinusIcon3, OverlineIcon, StrikethroughIcon, UnderlineIcon } from "@elementor/icons";
3765
3868
  import { Grid as Grid27 } from "@elementor/ui";
3766
- import { __ as __47 } from "@wordpress/i18n";
3869
+ import { __ as __48 } from "@wordpress/i18n";
3767
3870
  var options9 = [
3768
3871
  {
3769
3872
  value: "none",
3770
- label: __47("None", "elementor"),
3771
- renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(MinusIcon3, { fontSize: size }),
3873
+ label: __48("None", "elementor"),
3874
+ renderContent: ({ size }) => /* @__PURE__ */ React74.createElement(MinusIcon3, { fontSize: size }),
3772
3875
  showTooltip: true,
3773
3876
  exclusive: true
3774
3877
  },
3775
3878
  {
3776
3879
  value: "underline",
3777
- label: __47("Underline", "elementor"),
3778
- renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(UnderlineIcon, { fontSize: size }),
3880
+ label: __48("Underline", "elementor"),
3881
+ renderContent: ({ size }) => /* @__PURE__ */ React74.createElement(UnderlineIcon, { fontSize: size }),
3779
3882
  showTooltip: true
3780
3883
  },
3781
3884
  {
3782
3885
  value: "line-through",
3783
- label: __47("Line-through", "elementor"),
3784
- renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(StrikethroughIcon, { fontSize: size }),
3886
+ label: __48("Line-through", "elementor"),
3887
+ renderContent: ({ size }) => /* @__PURE__ */ React74.createElement(StrikethroughIcon, { fontSize: size }),
3785
3888
  showTooltip: true
3786
3889
  },
3787
3890
  {
3788
3891
  value: "overline",
3789
- label: __47("Overline", "elementor"),
3790
- renderContent: ({ size }) => /* @__PURE__ */ React72.createElement(OverlineIcon, { fontSize: size }),
3892
+ label: __48("Overline", "elementor"),
3893
+ renderContent: ({ size }) => /* @__PURE__ */ React74.createElement(OverlineIcon, { fontSize: size }),
3791
3894
  showTooltip: true
3792
3895
  }
3793
3896
  ];
3794
- var TextDecorationField = () => /* @__PURE__ */ React72.createElement(StylesField, { bind: "text-decoration" }, /* @__PURE__ */ React72.createElement(Grid27, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React72.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React72.createElement(ControlLabel, null, __47("Line decoration", "elementor"))), /* @__PURE__ */ React72.createElement(Grid27, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React72.createElement(ToggleControl11, { options: options9, exclusive: false }))));
3897
+ var TextDecorationField = () => /* @__PURE__ */ React74.createElement(StylesField, { bind: "text-decoration" }, /* @__PURE__ */ React74.createElement(Grid27, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React74.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React74.createElement(ControlLabel, null, __48("Line decoration", "elementor"))), /* @__PURE__ */ React74.createElement(Grid27, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React74.createElement(ToggleControl11, { options: options9, exclusive: false }))));
3795
3898
 
3796
3899
  // src/components/style-sections/typography-section/text-direction-field.tsx
3797
- import * as React73 from "react";
3900
+ import * as React75 from "react";
3798
3901
  import { ToggleControl as ToggleControl12 } from "@elementor/editor-controls";
3799
3902
  import { TextDirectionLtrIcon, TextDirectionRtlIcon } from "@elementor/icons";
3800
3903
  import { Grid as Grid28 } from "@elementor/ui";
3801
- import { __ as __48 } from "@wordpress/i18n";
3904
+ import { __ as __49 } from "@wordpress/i18n";
3802
3905
  var options10 = [
3803
3906
  {
3804
3907
  value: "ltr",
3805
- label: __48("Left to right", "elementor"),
3806
- renderContent: ({ size }) => /* @__PURE__ */ React73.createElement(TextDirectionLtrIcon, { fontSize: size }),
3908
+ label: __49("Left to right", "elementor"),
3909
+ renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(TextDirectionLtrIcon, { fontSize: size }),
3807
3910
  showTooltip: true
3808
3911
  },
3809
3912
  {
3810
3913
  value: "rtl",
3811
- label: __48("Right to left", "elementor"),
3812
- renderContent: ({ size }) => /* @__PURE__ */ React73.createElement(TextDirectionRtlIcon, { fontSize: size }),
3914
+ label: __49("Right to left", "elementor"),
3915
+ renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(TextDirectionRtlIcon, { fontSize: size }),
3813
3916
  showTooltip: true
3814
3917
  }
3815
3918
  ];
3816
3919
  var TextDirectionField = () => {
3817
- return /* @__PURE__ */ React73.createElement(StylesField, { bind: "direction" }, /* @__PURE__ */ React73.createElement(Grid28, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React73.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React73.createElement(ControlLabel, null, __48("Direction", "elementor"))), /* @__PURE__ */ React73.createElement(Grid28, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React73.createElement(ToggleControl12, { options: options10 }))));
3920
+ return /* @__PURE__ */ React75.createElement(StylesField, { bind: "direction" }, /* @__PURE__ */ React75.createElement(Grid28, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React75.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React75.createElement(ControlLabel, null, __49("Direction", "elementor"))), /* @__PURE__ */ React75.createElement(Grid28, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React75.createElement(ToggleControl12, { options: options10 }))));
3818
3921
  };
3819
3922
 
3820
3923
  // src/components/style-sections/typography-section/text-stroke-field.tsx
3821
- import * as React74 from "react";
3924
+ import * as React76 from "react";
3822
3925
  import { StrokeControl } from "@elementor/editor-controls";
3823
- import { __ as __49 } from "@wordpress/i18n";
3926
+ import { __ as __50 } from "@wordpress/i18n";
3824
3927
  var initTextStroke = {
3825
3928
  $$type: "stroke",
3826
3929
  value: {
@@ -3847,68 +3950,95 @@ var TextStrokeField = () => {
3847
3950
  setTextStroke(null);
3848
3951
  };
3849
3952
  const hasTextStroke = Boolean(textStroke);
3850
- return /* @__PURE__ */ React74.createElement(StylesField, { bind: "stroke" }, /* @__PURE__ */ React74.createElement(
3953
+ return /* @__PURE__ */ React76.createElement(StylesField, { bind: "stroke" }, /* @__PURE__ */ React76.createElement(
3851
3954
  AddOrRemoveContent,
3852
3955
  {
3853
- label: __49("Text stroke", "elementor"),
3854
3956
  isAdded: hasTextStroke,
3855
3957
  onAdd: addTextStroke,
3856
3958
  onRemove: removeTextStroke,
3857
- disabled: !canEdit
3959
+ disabled: !canEdit,
3960
+ renderLabel: () => /* @__PURE__ */ React76.createElement(ControlLabel, null, __50("Text stroke", "elementor"))
3858
3961
  },
3859
- /* @__PURE__ */ React74.createElement(StrokeControl, null)
3962
+ /* @__PURE__ */ React76.createElement(StrokeControl, null)
3860
3963
  ));
3861
3964
  };
3862
3965
 
3863
3966
  // src/components/style-sections/typography-section/transform-field.tsx
3864
- import * as React75 from "react";
3967
+ import * as React77 from "react";
3865
3968
  import { ToggleControl as ToggleControl13 } from "@elementor/editor-controls";
3866
3969
  import { LetterCaseIcon, LetterCaseLowerIcon, LetterCaseUpperIcon, MinusIcon as MinusIcon4 } from "@elementor/icons";
3867
3970
  import { Grid as Grid29 } from "@elementor/ui";
3868
- import { __ as __50 } from "@wordpress/i18n";
3971
+ import { __ as __51 } from "@wordpress/i18n";
3869
3972
  var options11 = [
3870
3973
  {
3871
3974
  value: "none",
3872
- label: __50("None", "elementor"),
3873
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(MinusIcon4, { fontSize: size }),
3975
+ label: __51("None", "elementor"),
3976
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(MinusIcon4, { fontSize: size }),
3874
3977
  showTooltip: true
3875
3978
  },
3876
3979
  {
3877
3980
  value: "capitalize",
3878
- label: __50("Capitalize", "elementor"),
3879
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(LetterCaseIcon, { fontSize: size }),
3981
+ label: __51("Capitalize", "elementor"),
3982
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(LetterCaseIcon, { fontSize: size }),
3880
3983
  showTooltip: true
3881
3984
  },
3882
3985
  {
3883
3986
  value: "uppercase",
3884
- label: __50("Uppercase", "elementor"),
3885
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(LetterCaseUpperIcon, { fontSize: size }),
3987
+ label: __51("Uppercase", "elementor"),
3988
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(LetterCaseUpperIcon, { fontSize: size }),
3886
3989
  showTooltip: true
3887
3990
  },
3888
3991
  {
3889
3992
  value: "lowercase",
3890
- label: __50("Lowercase", "elementor"),
3891
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(LetterCaseLowerIcon, { fontSize: size }),
3993
+ label: __51("Lowercase", "elementor"),
3994
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(LetterCaseLowerIcon, { fontSize: size }),
3892
3995
  showTooltip: true
3893
3996
  }
3894
3997
  ];
3895
- var TransformField = () => /* @__PURE__ */ React75.createElement(StylesField, { bind: "text-transform" }, /* @__PURE__ */ React75.createElement(Grid29, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React75.createElement(Grid29, { item: true, xs: 6 }, /* @__PURE__ */ React75.createElement(ControlLabel, null, __50("Text transform", "elementor"))), /* @__PURE__ */ React75.createElement(Grid29, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React75.createElement(ToggleControl13, { options: options11 }))));
3998
+ var TransformField = () => /* @__PURE__ */ React77.createElement(StylesField, { bind: "text-transform" }, /* @__PURE__ */ React77.createElement(Grid29, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React77.createElement(Grid29, { item: true, xs: 6 }, /* @__PURE__ */ React77.createElement(ControlLabel, null, __51("Text transform", "elementor"))), /* @__PURE__ */ React77.createElement(Grid29, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React77.createElement(ToggleControl13, { options: options11 }))));
3896
3999
 
3897
4000
  // src/components/style-sections/typography-section/word-spacing-field.tsx
3898
- import * as React76 from "react";
4001
+ import * as React78 from "react";
3899
4002
  import { SizeControl as SizeControl10 } from "@elementor/editor-controls";
3900
4003
  import { Grid as Grid30 } from "@elementor/ui";
3901
- import { __ as __51 } from "@wordpress/i18n";
4004
+ import { __ as __52 } from "@wordpress/i18n";
3902
4005
  var WordSpacingField = () => {
3903
- return /* @__PURE__ */ React76.createElement(StylesField, { bind: "word-spacing" }, /* @__PURE__ */ React76.createElement(Grid30, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React76.createElement(Grid30, { item: true, xs: 6 }, /* @__PURE__ */ React76.createElement(ControlLabel, null, __51("Word spacing", "elementor"))), /* @__PURE__ */ React76.createElement(Grid30, { item: true, xs: 6 }, /* @__PURE__ */ React76.createElement(SizeControl10, null))));
4006
+ return /* @__PURE__ */ React78.createElement(StylesField, { bind: "word-spacing" }, /* @__PURE__ */ React78.createElement(Grid30, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React78.createElement(Grid30, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(ControlLabel, null, __52("Word spacing", "elementor"))), /* @__PURE__ */ React78.createElement(Grid30, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(SizeControl10, null))));
3904
4007
  };
3905
4008
 
3906
4009
  // src/components/style-sections/typography-section/typography-section.tsx
3907
4010
  var TypographySection = () => {
3908
4011
  const [columnCount] = useStylesField("column-count");
3909
- const isVersion330Active = isExperimentActive9("e_v_3_30");
4012
+ const isVersion330Active = isExperimentActive11("e_v_3_30");
3910
4013
  const hasMultiColumns = !!(columnCount?.value && columnCount?.value > 1);
3911
- return /* @__PURE__ */ React77.createElement(SectionContent, null, /* @__PURE__ */ React77.createElement(FontFamilyField, null), /* @__PURE__ */ React77.createElement(FontWeightField, null), /* @__PURE__ */ React77.createElement(FontSizeField, null), /* @__PURE__ */ React77.createElement(PanelDivider, null), /* @__PURE__ */ React77.createElement(TextAlignmentField, null), /* @__PURE__ */ React77.createElement(TextColorField, null), /* @__PURE__ */ React77.createElement(CollapsibleContent, null, /* @__PURE__ */ React77.createElement(SectionContent, { sx: { pt: 2 } }, /* @__PURE__ */ React77.createElement(LineHeightField, null), /* @__PURE__ */ React77.createElement(LetterSpacingField, null), /* @__PURE__ */ React77.createElement(WordSpacingField, null), isVersion330Active && /* @__PURE__ */ React77.createElement(React77.Fragment, null, /* @__PURE__ */ React77.createElement(ColumnCountField, null), hasMultiColumns && /* @__PURE__ */ React77.createElement(ColumnGapField, null)), /* @__PURE__ */ React77.createElement(PanelDivider, null), /* @__PURE__ */ React77.createElement(TextDecorationField, null), /* @__PURE__ */ React77.createElement(TransformField, null), /* @__PURE__ */ React77.createElement(TextDirectionField, null), /* @__PURE__ */ React77.createElement(FontStyleField, null), /* @__PURE__ */ React77.createElement(TextStrokeField, null))));
4014
+ return /* @__PURE__ */ React79.createElement(SectionContent, null, /* @__PURE__ */ React79.createElement(FontFamilyField, null), /* @__PURE__ */ React79.createElement(FontWeightField, null), /* @__PURE__ */ React79.createElement(FontSizeField, null), /* @__PURE__ */ React79.createElement(PanelDivider, null), /* @__PURE__ */ React79.createElement(TextAlignmentField, null), /* @__PURE__ */ React79.createElement(TextColorField, null), /* @__PURE__ */ React79.createElement(
4015
+ StyleTabCollapsibleContent,
4016
+ {
4017
+ fields: [
4018
+ "line-height",
4019
+ "letter-spacing",
4020
+ "word-spacing",
4021
+ "column-count",
4022
+ "text-decoration",
4023
+ "text-transform",
4024
+ "direction",
4025
+ "font-style",
4026
+ "stroke"
4027
+ ]
4028
+ },
4029
+ /* @__PURE__ */ React79.createElement(SectionContent, { sx: { pt: 2 } }, /* @__PURE__ */ React79.createElement(LineHeightField, null), /* @__PURE__ */ React79.createElement(LetterSpacingField, null), /* @__PURE__ */ React79.createElement(WordSpacingField, null), isVersion330Active && /* @__PURE__ */ React79.createElement(React79.Fragment, null, /* @__PURE__ */ React79.createElement(ColumnCountField, null), hasMultiColumns && /* @__PURE__ */ React79.createElement(ColumnGapField, null)), /* @__PURE__ */ React79.createElement(PanelDivider, null), /* @__PURE__ */ React79.createElement(TextDecorationField, null), /* @__PURE__ */ React79.createElement(TransformField, null), /* @__PURE__ */ React79.createElement(TextDirectionField, null), /* @__PURE__ */ React79.createElement(FontStyleField, null), /* @__PURE__ */ React79.createElement(TextStrokeField, null))
4030
+ ));
4031
+ };
4032
+
4033
+ // src/components/style-tab-section.tsx
4034
+ import * as React80 from "react";
4035
+ import { isExperimentActive as isExperimentActive12 } from "@elementor/editor-v1-adapters";
4036
+ var StyleTabSection = ({ section, fields = [] }) => {
4037
+ const { component, name, title } = section;
4038
+ const tabDefaults = useDefaultPanelSettings();
4039
+ const SectionComponent = component;
4040
+ const isExpanded = isExperimentActive12(EXPERIMENTAL_FEATURES.V_3_30) ? tabDefaults.defaultSectionsExpanded.style?.includes(name) : false;
4041
+ return /* @__PURE__ */ React80.createElement(Section, { title, defaultExpanded: isExpanded, titleEnd: getStylesInheritanceIndicators(fields) }, /* @__PURE__ */ React80.createElement(SectionComponent, null));
3912
4042
  };
3913
4043
 
3914
4044
  // src/components/style-tab.tsx
@@ -3920,19 +4050,12 @@ var stickyHeaderStyles = {
3920
4050
  backgroundColor: "background.default",
3921
4051
  transition: "top 300ms ease"
3922
4052
  };
3923
- var PanelSection = ({ section }) => {
3924
- const { component, name, title } = section;
3925
- const tabDefaults = useDefaultPanelSettings();
3926
- const SectionComponent = component;
3927
- const isExpanded = isExperimentActive10(EXPERIMENTAL_FEATURES.V_3_30) ? tabDefaults.defaultSectionsExpanded.style?.includes(name) : false;
3928
- return /* @__PURE__ */ React78.createElement(Section, { title, defaultExpanded: isExpanded }, /* @__PURE__ */ React78.createElement(SectionComponent, null));
3929
- };
3930
4053
  var StyleTab = () => {
3931
4054
  const currentClassesProp = useCurrentClassesProp();
3932
4055
  const [activeStyleDefId, setActiveStyleDefId] = useActiveStyleDefId(currentClassesProp);
3933
4056
  const [activeStyleState, setActiveStyleState] = useState12(null);
3934
4057
  const breakpoint = useActiveBreakpoint();
3935
- return /* @__PURE__ */ React78.createElement(ClassesPropProvider, { prop: currentClassesProp }, /* @__PURE__ */ React78.createElement(
4058
+ return /* @__PURE__ */ React81.createElement(ClassesPropProvider, { prop: currentClassesProp }, /* @__PURE__ */ React81.createElement(
3936
4059
  StyleProvider,
3937
4060
  {
3938
4061
  meta: { breakpoint, state: activeStyleState },
@@ -3943,84 +4066,126 @@ var StyleTab = () => {
3943
4066
  },
3944
4067
  setMetaState: setActiveStyleState
3945
4068
  },
3946
- /* @__PURE__ */ React78.createElement(SessionStorageProvider2, { prefix: activeStyleDefId ?? "" }, /* @__PURE__ */ React78.createElement(StyleInheritanceProvider, null, /* @__PURE__ */ React78.createElement(ClassesHeader, null, /* @__PURE__ */ React78.createElement(CssClassSelector, null), /* @__PURE__ */ React78.createElement(Divider5, null)), /* @__PURE__ */ React78.createElement(SectionsList, null, /* @__PURE__ */ React78.createElement(
3947
- PanelSection,
4069
+ /* @__PURE__ */ React81.createElement(SessionStorageProvider2, { prefix: activeStyleDefId ?? "" }, /* @__PURE__ */ React81.createElement(StyleInheritanceProvider, null, /* @__PURE__ */ React81.createElement(ClassesHeader, null, /* @__PURE__ */ React81.createElement(CssClassSelector, null), /* @__PURE__ */ React81.createElement(Divider5, null)), /* @__PURE__ */ React81.createElement(SectionsList, null, /* @__PURE__ */ React81.createElement(
4070
+ StyleTabSection,
3948
4071
  {
3949
4072
  section: {
3950
4073
  component: LayoutSection,
3951
4074
  name: "Layout",
3952
- title: __52("Layout", "elementor")
3953
- }
4075
+ title: __53("Layout", "elementor")
4076
+ },
4077
+ fields: [
4078
+ "display",
4079
+ "flex-direction",
4080
+ "flex-wrap",
4081
+ "justify-content",
4082
+ "align-items",
4083
+ "align-content",
4084
+ "align-self",
4085
+ "gap"
4086
+ ]
3954
4087
  }
3955
- ), /* @__PURE__ */ React78.createElement(
3956
- PanelSection,
4088
+ ), /* @__PURE__ */ React81.createElement(
4089
+ StyleTabSection,
3957
4090
  {
3958
4091
  section: {
3959
4092
  component: SpacingSection,
3960
4093
  name: "Spacing",
3961
- title: __52("Spacing", "elementor")
3962
- }
4094
+ title: __53("Spacing", "elementor")
4095
+ },
4096
+ fields: ["margin", "padding"]
3963
4097
  }
3964
- ), /* @__PURE__ */ React78.createElement(
3965
- PanelSection,
4098
+ ), /* @__PURE__ */ React81.createElement(
4099
+ StyleTabSection,
3966
4100
  {
3967
4101
  section: {
3968
4102
  component: SizeSection,
3969
4103
  name: "Size",
3970
- title: __52("Size", "elementor")
3971
- }
4104
+ title: __53("Size", "elementor")
4105
+ },
4106
+ fields: [
4107
+ "width",
4108
+ "min-width",
4109
+ "max-width",
4110
+ "height",
4111
+ "min-height",
4112
+ "max-height",
4113
+ "overflow",
4114
+ "aspect-ratio",
4115
+ "object-fit"
4116
+ ]
3972
4117
  }
3973
- ), /* @__PURE__ */ React78.createElement(
3974
- PanelSection,
4118
+ ), /* @__PURE__ */ React81.createElement(
4119
+ StyleTabSection,
3975
4120
  {
3976
4121
  section: {
3977
4122
  component: PositionSection,
3978
4123
  name: "Position",
3979
- title: __52("Position", "elementor")
3980
- }
4124
+ title: __53("Position", "elementor")
4125
+ },
4126
+ fields: ["position", "z-index", "scroll-margin-top"]
3981
4127
  }
3982
- ), /* @__PURE__ */ React78.createElement(
3983
- PanelSection,
4128
+ ), /* @__PURE__ */ React81.createElement(
4129
+ StyleTabSection,
3984
4130
  {
3985
4131
  section: {
3986
4132
  component: TypographySection,
3987
4133
  name: "Typography",
3988
- title: __52("Typography", "elementor")
3989
- }
4134
+ title: __53("Typography", "elementor")
4135
+ },
4136
+ fields: [
4137
+ "font-family",
4138
+ "font-weight",
4139
+ "font-size",
4140
+ "text-align",
4141
+ "color",
4142
+ "line-height",
4143
+ "letter-spacing",
4144
+ "word-spacing",
4145
+ "column-count",
4146
+ "text-decoration",
4147
+ "text-transform",
4148
+ "direction",
4149
+ "font-style",
4150
+ "stroke"
4151
+ ]
3990
4152
  }
3991
- ), /* @__PURE__ */ React78.createElement(
3992
- PanelSection,
4153
+ ), /* @__PURE__ */ React81.createElement(
4154
+ StyleTabSection,
3993
4155
  {
3994
4156
  section: {
3995
4157
  component: BackgroundSection,
3996
4158
  name: "Background",
3997
- title: __52("Background", "elementor")
3998
- }
4159
+ title: __53("Background", "elementor")
4160
+ },
4161
+ fields: ["background"]
3999
4162
  }
4000
- ), /* @__PURE__ */ React78.createElement(
4001
- PanelSection,
4163
+ ), /* @__PURE__ */ React81.createElement(
4164
+ StyleTabSection,
4002
4165
  {
4003
4166
  section: {
4004
4167
  component: BorderSection,
4005
4168
  name: "Border",
4006
- title: __52("Border", "elementor")
4007
- }
4169
+ title: __53("Border", "elementor")
4170
+ },
4171
+ fields: ["border-radius", "border-width", "border-color", "border-style"]
4008
4172
  }
4009
- ), /* @__PURE__ */ React78.createElement(
4010
- PanelSection,
4173
+ ), /* @__PURE__ */ React81.createElement(
4174
+ StyleTabSection,
4011
4175
  {
4012
4176
  section: {
4013
4177
  component: EffectsSection,
4014
4178
  name: "Effects",
4015
- title: __52("Effects", "elementor")
4016
- }
4179
+ title: __53("Effects", "elementor")
4180
+ },
4181
+ fields: ["box-shadow"]
4017
4182
  }
4018
4183
  ))))
4019
4184
  ));
4020
4185
  };
4021
4186
  function ClassesHeader({ children }) {
4022
4187
  const scrollDirection = useScrollDirection();
4023
- return /* @__PURE__ */ React78.createElement(Stack17, { sx: { ...stickyHeaderStyles, top: scrollDirection === "up" ? TABS_HEADER_HEIGHT : 0 } }, children);
4188
+ return /* @__PURE__ */ React81.createElement(Stack17, { sx: { ...stickyHeaderStyles, top: scrollDirection === "up" ? TABS_HEADER_HEIGHT : 0 } }, children);
4024
4189
  }
4025
4190
  function useCurrentClassesProp() {
4026
4191
  const { elementType } = useElement();
@@ -4039,15 +4204,15 @@ var EditingPanelTabs = () => {
4039
4204
  return (
4040
4205
  // When switching between elements, the local states should be reset. We are using key to rerender the tabs.
4041
4206
  // Reference: https://react.dev/learn/preserving-and-resetting-state#resetting-a-form-with-a-key
4042
- /* @__PURE__ */ React79.createElement(Fragment10, { key: element.id }, /* @__PURE__ */ React79.createElement(PanelTabContent, null))
4207
+ /* @__PURE__ */ React82.createElement(Fragment10, { key: element.id }, /* @__PURE__ */ React82.createElement(PanelTabContent, null))
4043
4208
  );
4044
4209
  };
4045
4210
  var PanelTabContent = () => {
4046
4211
  const editorDefaults = useDefaultPanelSettings();
4047
- const defaultComponentTab = isExperimentActive11(EXPERIMENTAL_FEATURES.V_3_30) ? editorDefaults.defaultTab : "settings";
4212
+ const defaultComponentTab = isExperimentActive13(EXPERIMENTAL_FEATURES.V_3_30) ? editorDefaults.defaultTab : "settings";
4048
4213
  const [currentTab, setCurrentTab] = useStateByElement("tab", defaultComponentTab);
4049
4214
  const { getTabProps, getTabPanelProps, getTabsProps } = useTabs(currentTab);
4050
- return /* @__PURE__ */ React79.createElement(ScrollProvider, null, /* @__PURE__ */ React79.createElement(Stack18, { direction: "column", sx: { width: "100%" } }, /* @__PURE__ */ React79.createElement(Stack18, { sx: { ...stickyHeaderStyles, top: 0 } }, /* @__PURE__ */ React79.createElement(
4215
+ return /* @__PURE__ */ React82.createElement(ScrollProvider, null, /* @__PURE__ */ React82.createElement(Stack18, { direction: "column", sx: { width: "100%" } }, /* @__PURE__ */ React82.createElement(Stack18, { sx: { ...stickyHeaderStyles, top: 0 } }, /* @__PURE__ */ React82.createElement(
4051
4216
  Tabs,
4052
4217
  {
4053
4218
  variant: "fullWidth",
@@ -4059,9 +4224,9 @@ var PanelTabContent = () => {
4059
4224
  setCurrentTab(newValue);
4060
4225
  }
4061
4226
  },
4062
- /* @__PURE__ */ React79.createElement(Tab, { label: __53("General", "elementor"), ...getTabProps("settings") }),
4063
- /* @__PURE__ */ React79.createElement(Tab, { label: __53("Style", "elementor"), ...getTabProps("style") })
4064
- ), /* @__PURE__ */ React79.createElement(Divider6, null)), /* @__PURE__ */ React79.createElement(TabPanel, { ...getTabPanelProps("settings"), disablePadding: true }, /* @__PURE__ */ React79.createElement(SettingsTab, null)), /* @__PURE__ */ React79.createElement(TabPanel, { ...getTabPanelProps("style"), disablePadding: true }, /* @__PURE__ */ React79.createElement(StyleTab, null))));
4227
+ /* @__PURE__ */ React82.createElement(Tab, { label: __54("General", "elementor"), ...getTabProps("settings") }),
4228
+ /* @__PURE__ */ React82.createElement(Tab, { label: __54("Style", "elementor"), ...getTabProps("style") })
4229
+ ), /* @__PURE__ */ React82.createElement(Divider6, null)), /* @__PURE__ */ React82.createElement(TabPanel, { ...getTabPanelProps("settings"), disablePadding: true }, /* @__PURE__ */ React82.createElement(SettingsTab, null)), /* @__PURE__ */ React82.createElement(TabPanel, { ...getTabPanelProps("style"), disablePadding: true }, /* @__PURE__ */ React82.createElement(StyleTab, null))));
4065
4230
  };
4066
4231
 
4067
4232
  // src/components/editing-panel.tsx
@@ -4073,8 +4238,8 @@ var EditingPanel = () => {
4073
4238
  if (!element || !elementType) {
4074
4239
  return null;
4075
4240
  }
4076
- const panelTitle = __54("Edit %s", "elementor").replace("%s", elementType.title);
4077
- return /* @__PURE__ */ React80.createElement(ErrorBoundary, { fallback: /* @__PURE__ */ React80.createElement(EditorPanelErrorFallback, null) }, /* @__PURE__ */ React80.createElement(SessionStorageProvider3, { prefix: "elementor" }, /* @__PURE__ */ React80.createElement(ThemeProvider9, null, /* @__PURE__ */ React80.createElement(Panel, null, /* @__PURE__ */ React80.createElement(PanelHeader, null, /* @__PURE__ */ React80.createElement(PanelHeaderTitle, null, panelTitle), /* @__PURE__ */ React80.createElement(AtomIcon, { fontSize: "small", sx: { color: "text.tertiary" } })), /* @__PURE__ */ React80.createElement(PanelBody, null, /* @__PURE__ */ React80.createElement(ControlActionsProvider, { items: menuItems }, /* @__PURE__ */ React80.createElement(ControlReplacementsProvider, { replacements: controlReplacements }, /* @__PURE__ */ React80.createElement(ElementProvider, { element, elementType }, /* @__PURE__ */ React80.createElement(EditingPanelTabs, null)))))))));
4241
+ const panelTitle = __55("Edit %s", "elementor").replace("%s", elementType.title);
4242
+ return /* @__PURE__ */ React83.createElement(ErrorBoundary, { fallback: /* @__PURE__ */ React83.createElement(EditorPanelErrorFallback, null) }, /* @__PURE__ */ React83.createElement(SessionStorageProvider3, { prefix: "elementor" }, /* @__PURE__ */ React83.createElement(ThemeProvider9, null, /* @__PURE__ */ React83.createElement(Panel, null, /* @__PURE__ */ React83.createElement(PanelHeader, null, /* @__PURE__ */ React83.createElement(PanelHeaderTitle, null, panelTitle), /* @__PURE__ */ React83.createElement(AtomIcon, { fontSize: "small", sx: { color: "text.tertiary" } })), /* @__PURE__ */ React83.createElement(PanelBody, null, /* @__PURE__ */ React83.createElement(ControlActionsProvider, { items: menuItems }, /* @__PURE__ */ React83.createElement(ControlReplacementsProvider, { replacements: controlReplacements }, /* @__PURE__ */ React83.createElement(ElementProvider, { element, elementType }, /* @__PURE__ */ React83.createElement(EditingPanelTabs, null)))))))));
4078
4243
  };
4079
4244
 
4080
4245
  // src/panel.ts
@@ -4087,7 +4252,7 @@ var { panel, usePanelActions, usePanelStatus } = createPanel({
4087
4252
  import { injectIntoLogic } from "@elementor/editor";
4088
4253
  import { PrefetchUserData } from "@elementor/editor-current-user";
4089
4254
  import { __registerPanel as registerPanel } from "@elementor/editor-panels";
4090
- import { blockCommand, isExperimentActive as isExperimentActive12 } from "@elementor/editor-v1-adapters";
4255
+ import { blockCommand, isExperimentActive as isExperimentActive14 } from "@elementor/editor-v1-adapters";
4091
4256
 
4092
4257
  // src/hooks/use-open-editor-panel.ts
4093
4258
  import { useEffect as useEffect4 } from "react";
@@ -4126,9 +4291,10 @@ var EditingPanelHooks = () => {
4126
4291
  import { settingsTransformersRegistry, styleTransformersRegistry } from "@elementor/editor-canvas";
4127
4292
 
4128
4293
  // src/dynamics/components/dynamic-selection-control.tsx
4129
- import * as React84 from "react";
4130
- import { ControlFormLabel as ControlFormLabel5, useBoundProp as useBoundProp5 } from "@elementor/editor-controls";
4131
- import { DatabaseIcon as DatabaseIcon2, SettingsIcon, XIcon as XIcon2 } from "@elementor/icons";
4294
+ import * as React87 from "react";
4295
+ import { ControlFormLabel as ControlFormLabel6, useBoundProp as useBoundProp5 } from "@elementor/editor-controls";
4296
+ import { PopoverHeader as PopoverHeader2 } from "@elementor/editor-ui";
4297
+ import { DatabaseIcon as DatabaseIcon2, SettingsIcon, XIcon } from "@elementor/icons";
4132
4298
  import {
4133
4299
  bindPopover as bindPopover2,
4134
4300
  bindTrigger as bindTrigger2,
@@ -4142,17 +4308,16 @@ import {
4142
4308
  Tab as Tab2,
4143
4309
  TabPanel as TabPanel2,
4144
4310
  Tabs as Tabs2,
4145
- Typography as Typography8,
4146
4311
  UnstableTag as Tag,
4147
4312
  usePopupState as usePopupState3,
4148
4313
  useTabs as useTabs2
4149
4314
  } from "@elementor/ui";
4150
- import { __ as __56 } from "@wordpress/i18n";
4315
+ import { __ as __57 } from "@wordpress/i18n";
4151
4316
 
4152
4317
  // src/components/popover-content.tsx
4153
- import * as React81 from "react";
4318
+ import * as React84 from "react";
4154
4319
  import { Stack as Stack19 } from "@elementor/ui";
4155
- var PopoverContent = ({ alignItems, gap = 1.5, p, children }) => /* @__PURE__ */ React81.createElement(Stack19, { alignItems, gap, p }, children);
4320
+ var PopoverContent = ({ alignItems, gap = 1.5, p, children }) => /* @__PURE__ */ React84.createElement(Stack19, { alignItems, gap, p }, children);
4156
4321
 
4157
4322
  // src/hooks/use-persist-dynamic-value.ts
4158
4323
  import { useSessionStorage as useSessionStorage2 } from "@elementor/session";
@@ -4163,7 +4328,7 @@ var usePersistDynamicValue = (propKey) => {
4163
4328
  };
4164
4329
 
4165
4330
  // src/dynamics/dynamic-control.tsx
4166
- import * as React82 from "react";
4331
+ import * as React85 from "react";
4167
4332
  import { PropKeyProvider as PropKeyProvider3, PropProvider as PropProvider3, useBoundProp as useBoundProp3 } from "@elementor/editor-controls";
4168
4333
 
4169
4334
  // src/dynamics/hooks/use-dynamic-tag.ts
@@ -4265,11 +4430,11 @@ var DynamicControl = ({ bind, children }) => {
4265
4430
  });
4266
4431
  };
4267
4432
  const propType = createTopLevelOjectType({ schema: dynamicTag.props_schema });
4268
- return /* @__PURE__ */ React82.createElement(PropProvider3, { propType, setValue: setDynamicValue, value: { [bind]: dynamicValue } }, /* @__PURE__ */ React82.createElement(PropKeyProvider3, { bind }, children));
4433
+ return /* @__PURE__ */ React85.createElement(PropProvider3, { propType, setValue: setDynamicValue, value: { [bind]: dynamicValue } }, /* @__PURE__ */ React85.createElement(PropKeyProvider3, { bind }, children));
4269
4434
  };
4270
4435
 
4271
4436
  // src/dynamics/components/dynamic-selection.tsx
4272
- import * as React83 from "react";
4437
+ import * as React86 from "react";
4273
4438
  import { Fragment as Fragment11, useState as useState13 } from "react";
4274
4439
  import { useBoundProp as useBoundProp4 } from "@elementor/editor-controls";
4275
4440
  import { DatabaseIcon, SearchIcon } from "@elementor/icons";
@@ -4283,9 +4448,9 @@ import {
4283
4448
  MenuSubheader as MenuSubheader2,
4284
4449
  Stack as Stack20,
4285
4450
  TextField as TextField2,
4286
- Typography as Typography7
4451
+ Typography as Typography6
4287
4452
  } from "@elementor/ui";
4288
- import { __ as __55 } from "@wordpress/i18n";
4453
+ import { __ as __56 } from "@wordpress/i18n";
4289
4454
  var SIZE7 = "tiny";
4290
4455
  var DynamicSelection = ({ onSelect }) => {
4291
4456
  const [searchValue, setSearchValue] = useState13("");
@@ -4306,19 +4471,19 @@ var DynamicSelection = ({ onSelect }) => {
4306
4471
  setValue({ name: value, settings: { label } });
4307
4472
  onSelect?.();
4308
4473
  };
4309
- return /* @__PURE__ */ React83.createElement(Stack20, null, hasNoDynamicTags ? /* @__PURE__ */ React83.createElement(NoDynamicTags, null) : /* @__PURE__ */ React83.createElement(Fragment11, null, /* @__PURE__ */ React83.createElement(Box7, { px: 1.5, pb: 1 }, /* @__PURE__ */ React83.createElement(
4474
+ return /* @__PURE__ */ React86.createElement(Stack20, null, hasNoDynamicTags ? /* @__PURE__ */ React86.createElement(NoDynamicTags, null) : /* @__PURE__ */ React86.createElement(Fragment11, null, /* @__PURE__ */ React86.createElement(Box7, { px: 1.5, pb: 1 }, /* @__PURE__ */ React86.createElement(
4310
4475
  TextField2,
4311
4476
  {
4312
4477
  fullWidth: true,
4313
4478
  size: SIZE7,
4314
4479
  value: searchValue,
4315
4480
  onChange: handleSearch,
4316
- placeholder: __55("Search dynamic tags\u2026", "elementor"),
4481
+ placeholder: __56("Search dynamic tags\u2026", "elementor"),
4317
4482
  InputProps: {
4318
- startAdornment: /* @__PURE__ */ React83.createElement(InputAdornment, { position: "start" }, /* @__PURE__ */ React83.createElement(SearchIcon, { fontSize: SIZE7 }))
4483
+ startAdornment: /* @__PURE__ */ React86.createElement(InputAdornment, { position: "start" }, /* @__PURE__ */ React86.createElement(SearchIcon, { fontSize: SIZE7 }))
4319
4484
  }
4320
4485
  }
4321
- )), /* @__PURE__ */ React83.createElement(Divider7, null), /* @__PURE__ */ React83.createElement(Box7, { sx: { overflowY: "auto", height: 260, width: 220 } }, options12.length > 0 ? /* @__PURE__ */ React83.createElement(MenuList, { role: "listbox", tabIndex: 0 }, options12.map(([category, items3], index) => /* @__PURE__ */ React83.createElement(Fragment11, { key: index }, /* @__PURE__ */ React83.createElement(
4486
+ )), /* @__PURE__ */ React86.createElement(Divider7, null), /* @__PURE__ */ React86.createElement(Box7, { sx: { overflowY: "auto", height: 260, width: 220 } }, options12.length > 0 ? /* @__PURE__ */ React86.createElement(MenuList, { role: "listbox", tabIndex: 0 }, options12.map(([category, items3], index) => /* @__PURE__ */ React86.createElement(Fragment11, { key: index }, /* @__PURE__ */ React86.createElement(
4322
4487
  MenuSubheader2,
4323
4488
  {
4324
4489
  sx: { px: 1.5, typography: "caption", color: "text.tertiary" }
@@ -4326,7 +4491,7 @@ var DynamicSelection = ({ onSelect }) => {
4326
4491
  dynamicGroups?.[category]?.title || category
4327
4492
  ), items3.map(({ value, label: tagLabel }) => {
4328
4493
  const isSelected = isCurrentValueDynamic && value === dynamicValue?.name;
4329
- return /* @__PURE__ */ React83.createElement(
4494
+ return /* @__PURE__ */ React86.createElement(
4330
4495
  MenuItem,
4331
4496
  {
4332
4497
  key: value,
@@ -4337,9 +4502,9 @@ var DynamicSelection = ({ onSelect }) => {
4337
4502
  },
4338
4503
  tagLabel
4339
4504
  );
4340
- })))) : /* @__PURE__ */ React83.createElement(NoResults, { searchValue, onClear: () => setSearchValue("") }))));
4505
+ })))) : /* @__PURE__ */ React86.createElement(NoResults, { searchValue, onClear: () => setSearchValue("") }))));
4341
4506
  };
4342
- var NoResults = ({ searchValue, onClear }) => /* @__PURE__ */ React83.createElement(
4507
+ var NoResults = ({ searchValue, onClear }) => /* @__PURE__ */ React86.createElement(
4343
4508
  Stack20,
4344
4509
  {
4345
4510
  gap: 1,
@@ -4350,11 +4515,11 @@ var NoResults = ({ searchValue, onClear }) => /* @__PURE__ */ React83.createElem
4350
4515
  color: "text.secondary",
4351
4516
  sx: { pb: 3.5 }
4352
4517
  },
4353
- /* @__PURE__ */ React83.createElement(DatabaseIcon, { fontSize: "large" }),
4354
- /* @__PURE__ */ React83.createElement(Typography7, { align: "center", variant: "subtitle2" }, __55("Sorry, nothing matched", "elementor"), /* @__PURE__ */ React83.createElement("br", null), "\u201C", searchValue, "\u201D."),
4355
- /* @__PURE__ */ React83.createElement(Typography7, { align: "center", variant: "caption" }, __55("Try something else.", "elementor"), "\xA0", /* @__PURE__ */ React83.createElement(Link2, { color: "text.secondary", variant: "caption", component: "button", onClick: onClear }, __55("Clear & try again", "elementor")))
4518
+ /* @__PURE__ */ React86.createElement(DatabaseIcon, { fontSize: "large" }),
4519
+ /* @__PURE__ */ React86.createElement(Typography6, { align: "center", variant: "subtitle2" }, __56("Sorry, nothing matched", "elementor"), /* @__PURE__ */ React86.createElement("br", null), "\u201C", searchValue, "\u201D."),
4520
+ /* @__PURE__ */ React86.createElement(Typography6, { align: "center", variant: "caption" }, __56("Try something else.", "elementor"), "\xA0", /* @__PURE__ */ React86.createElement(Link2, { color: "text.secondary", variant: "caption", component: "button", onClick: onClear }, __56("Clear & try again", "elementor")))
4356
4521
  );
4357
- var NoDynamicTags = () => /* @__PURE__ */ React83.createElement(Box7, { sx: { overflowY: "hidden", height: 297, width: 220 } }, /* @__PURE__ */ React83.createElement(Divider7, null), /* @__PURE__ */ React83.createElement(
4522
+ var NoDynamicTags = () => /* @__PURE__ */ React86.createElement(Box7, { sx: { overflowY: "hidden", height: 297, width: 220 } }, /* @__PURE__ */ React86.createElement(Divider7, null), /* @__PURE__ */ React86.createElement(
4358
4523
  Stack20,
4359
4524
  {
4360
4525
  gap: 1,
@@ -4365,9 +4530,9 @@ var NoDynamicTags = () => /* @__PURE__ */ React83.createElement(Box7, { sx: { ov
4365
4530
  color: "text.secondary",
4366
4531
  sx: { pb: 3.5 }
4367
4532
  },
4368
- /* @__PURE__ */ React83.createElement(DatabaseIcon, { fontSize: "large" }),
4369
- /* @__PURE__ */ React83.createElement(Typography7, { align: "center", variant: "subtitle2" }, __55("Streamline your workflow with dynamic tags", "elementor")),
4370
- /* @__PURE__ */ React83.createElement(Typography7, { align: "center", variant: "caption" }, __55("You\u2019ll need Elementor Pro to use this feature.", "elementor"))
4533
+ /* @__PURE__ */ React86.createElement(DatabaseIcon, { fontSize: "large" }),
4534
+ /* @__PURE__ */ React86.createElement(Typography6, { align: "center", variant: "subtitle2" }, __56("Streamline your workflow with dynamic tags", "elementor")),
4535
+ /* @__PURE__ */ React86.createElement(Typography6, { align: "center", variant: "caption" }, __56("You\u2019ll need Elementor Pro to use this feature.", "elementor"))
4371
4536
  ));
4372
4537
  var useFilteredOptions = (searchValue) => {
4373
4538
  const dynamicTags = usePropDynamicTags();
@@ -4400,25 +4565,25 @@ var DynamicSelectionControl = () => {
4400
4565
  if (!dynamicTag) {
4401
4566
  throw new Error(`Dynamic tag ${tagName} not found`);
4402
4567
  }
4403
- return /* @__PURE__ */ React84.createElement(Box8, null, /* @__PURE__ */ React84.createElement(
4568
+ return /* @__PURE__ */ React87.createElement(Box8, null, /* @__PURE__ */ React87.createElement(
4404
4569
  Tag,
4405
4570
  {
4406
4571
  fullWidth: true,
4407
4572
  showActionsOnHover: true,
4408
4573
  label: dynamicTag.label,
4409
- startIcon: /* @__PURE__ */ React84.createElement(DatabaseIcon2, { fontSize: SIZE8 }),
4574
+ startIcon: /* @__PURE__ */ React87.createElement(DatabaseIcon2, { fontSize: SIZE8 }),
4410
4575
  ...bindTrigger2(selectionPopoverState),
4411
- actions: /* @__PURE__ */ React84.createElement(React84.Fragment, null, /* @__PURE__ */ React84.createElement(DynamicSettingsPopover, { dynamicTag }), /* @__PURE__ */ React84.createElement(
4576
+ actions: /* @__PURE__ */ React87.createElement(React87.Fragment, null, /* @__PURE__ */ React87.createElement(DynamicSettingsPopover, { dynamicTag }), /* @__PURE__ */ React87.createElement(
4412
4577
  IconButton5,
4413
4578
  {
4414
4579
  size: SIZE8,
4415
4580
  onClick: removeDynamicTag,
4416
- "aria-label": __56("Remove dynamic value", "elementor")
4581
+ "aria-label": __57("Remove dynamic value", "elementor")
4417
4582
  },
4418
- /* @__PURE__ */ React84.createElement(XIcon2, { fontSize: SIZE8 })
4583
+ /* @__PURE__ */ React87.createElement(XIcon, { fontSize: SIZE8 })
4419
4584
  ))
4420
4585
  }
4421
- ), /* @__PURE__ */ React84.createElement(
4586
+ ), /* @__PURE__ */ React87.createElement(
4422
4587
  Popover2,
4423
4588
  {
4424
4589
  disablePortal: true,
@@ -4426,7 +4591,14 @@ var DynamicSelectionControl = () => {
4426
4591
  anchorOrigin: { vertical: "bottom", horizontal: "left" },
4427
4592
  ...bindPopover2(selectionPopoverState)
4428
4593
  },
4429
- /* @__PURE__ */ React84.createElement(Stack21, null, /* @__PURE__ */ React84.createElement(Stack21, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React84.createElement(DatabaseIcon2, { fontSize: SIZE8, sx: { mr: 0.5 } }), /* @__PURE__ */ React84.createElement(Typography8, { variant: "subtitle2" }, __56("Dynamic tags", "elementor")), /* @__PURE__ */ React84.createElement(IconButton5, { size: SIZE8, sx: { ml: "auto" }, onClick: selectionPopoverState.close }, /* @__PURE__ */ React84.createElement(XIcon2, { fontSize: SIZE8 }))), /* @__PURE__ */ React84.createElement(DynamicSelection, { onSelect: selectionPopoverState.close }))
4594
+ /* @__PURE__ */ React87.createElement(Stack21, null, /* @__PURE__ */ React87.createElement(
4595
+ PopoverHeader2,
4596
+ {
4597
+ title: __57("Dynamic tags", "elementor"),
4598
+ onClose: selectionPopoverState.close,
4599
+ icon: /* @__PURE__ */ React87.createElement(DatabaseIcon2, { fontSize: SIZE8 })
4600
+ }
4601
+ ), /* @__PURE__ */ React87.createElement(DynamicSelection, { onSelect: selectionPopoverState.close }))
4430
4602
  ));
4431
4603
  };
4432
4604
  var DynamicSettingsPopover = ({ dynamicTag }) => {
@@ -4435,7 +4607,7 @@ var DynamicSettingsPopover = ({ dynamicTag }) => {
4435
4607
  if (!hasDynamicSettings) {
4436
4608
  return null;
4437
4609
  }
4438
- return /* @__PURE__ */ React84.createElement(React84.Fragment, null, /* @__PURE__ */ React84.createElement(IconButton5, { size: SIZE8, ...bindTrigger2(popupState), "aria-label": __56("Settings", "elementor") }, /* @__PURE__ */ React84.createElement(SettingsIcon, { fontSize: SIZE8 })), /* @__PURE__ */ React84.createElement(
4610
+ return /* @__PURE__ */ React87.createElement(React87.Fragment, null, /* @__PURE__ */ React87.createElement(IconButton5, { size: SIZE8, ...bindTrigger2(popupState), "aria-label": __57("Settings", "elementor") }, /* @__PURE__ */ React87.createElement(SettingsIcon, { fontSize: SIZE8 })), /* @__PURE__ */ React87.createElement(
4439
4611
  Popover2,
4440
4612
  {
4441
4613
  disablePortal: true,
@@ -4443,7 +4615,14 @@ var DynamicSettingsPopover = ({ dynamicTag }) => {
4443
4615
  anchorOrigin: { vertical: "bottom", horizontal: "center" },
4444
4616
  ...bindPopover2(popupState)
4445
4617
  },
4446
- /* @__PURE__ */ React84.createElement(Paper, { component: Stack21, sx: { minHeight: "300px", width: "220px" } }, /* @__PURE__ */ React84.createElement(Stack21, { direction: "row", alignItems: "center", px: 1.5, pt: 2, pb: 1 }, /* @__PURE__ */ React84.createElement(DatabaseIcon2, { fontSize: SIZE8, sx: { mr: 0.5 } }), /* @__PURE__ */ React84.createElement(Typography8, { variant: "subtitle2" }, dynamicTag.label), /* @__PURE__ */ React84.createElement(IconButton5, { sx: { ml: "auto" }, size: SIZE8, onClick: popupState.close }, /* @__PURE__ */ React84.createElement(XIcon2, { fontSize: SIZE8 }))), /* @__PURE__ */ React84.createElement(DynamicSettings, { controls: dynamicTag.atomic_controls }))
4618
+ /* @__PURE__ */ React87.createElement(Paper, { component: Stack21, sx: { minHeight: "300px", width: "220px" } }, /* @__PURE__ */ React87.createElement(
4619
+ PopoverHeader2,
4620
+ {
4621
+ title: dynamicTag.label,
4622
+ onClose: popupState.close,
4623
+ icon: /* @__PURE__ */ React87.createElement(DatabaseIcon2, { fontSize: SIZE8 })
4624
+ }
4625
+ ), /* @__PURE__ */ React87.createElement(DynamicSettings, { controls: dynamicTag.atomic_controls }))
4447
4626
  ));
4448
4627
  };
4449
4628
  var DynamicSettings = ({ controls }) => {
@@ -4452,10 +4631,10 @@ var DynamicSettings = ({ controls }) => {
4452
4631
  if (!tabs.length) {
4453
4632
  return null;
4454
4633
  }
4455
- return /* @__PURE__ */ React84.createElement(React84.Fragment, null, /* @__PURE__ */ React84.createElement(Tabs2, { size: "small", variant: "fullWidth", ...getTabsProps() }, tabs.map(({ value }, index) => /* @__PURE__ */ React84.createElement(Tab2, { key: index, label: value.label, sx: { px: 1, py: 0.5 }, ...getTabProps(index) }))), /* @__PURE__ */ React84.createElement(Divider8, null), tabs.map(({ value }, index) => {
4456
- return /* @__PURE__ */ React84.createElement(TabPanel2, { key: index, sx: { flexGrow: 1, py: 0 }, ...getTabPanelProps(index) }, /* @__PURE__ */ React84.createElement(PopoverContent, { p: 2, gap: 2 }, value.items.map((item) => {
4634
+ return /* @__PURE__ */ React87.createElement(React87.Fragment, null, /* @__PURE__ */ React87.createElement(Tabs2, { size: "small", variant: "fullWidth", ...getTabsProps() }, tabs.map(({ value }, index) => /* @__PURE__ */ React87.createElement(Tab2, { key: index, label: value.label, sx: { px: 1, py: 0.5 }, ...getTabProps(index) }))), /* @__PURE__ */ React87.createElement(Divider8, null), tabs.map(({ value }, index) => {
4635
+ return /* @__PURE__ */ React87.createElement(TabPanel2, { key: index, sx: { flexGrow: 1, py: 0 }, ...getTabPanelProps(index) }, /* @__PURE__ */ React87.createElement(PopoverContent, { p: 2, gap: 2 }, value.items.map((item) => {
4457
4636
  if (item.type === "control") {
4458
- return /* @__PURE__ */ React84.createElement(Control3, { key: item.value.bind, control: item.value });
4637
+ return /* @__PURE__ */ React87.createElement(Control3, { key: item.value.bind, control: item.value });
4459
4638
  }
4460
4639
  return null;
4461
4640
  })));
@@ -4465,7 +4644,7 @@ var Control3 = ({ control }) => {
4465
4644
  if (!getControl(control.type)) {
4466
4645
  return null;
4467
4646
  }
4468
- return /* @__PURE__ */ React84.createElement(DynamicControl, { bind: control.bind }, /* @__PURE__ */ React84.createElement(Grid31, { container: true, gap: 0.75 }, control.label ? /* @__PURE__ */ React84.createElement(Grid31, { item: true, xs: 12 }, /* @__PURE__ */ React84.createElement(ControlFormLabel5, null, control.label)) : null, /* @__PURE__ */ React84.createElement(Grid31, { item: true, xs: 12 }, /* @__PURE__ */ React84.createElement(Control, { type: control.type, props: control.props }))));
4647
+ return /* @__PURE__ */ React87.createElement(DynamicControl, { bind: control.bind }, /* @__PURE__ */ React87.createElement(Grid31, { container: true, gap: 0.75 }, control.label ? /* @__PURE__ */ React87.createElement(Grid31, { item: true, xs: 12 }, /* @__PURE__ */ React87.createElement(ControlFormLabel6, null, control.label)) : null, /* @__PURE__ */ React87.createElement(Grid31, { item: true, xs: 12 }, /* @__PURE__ */ React87.createElement(Control, { type: control.type, props: control.props }))));
4469
4648
  };
4470
4649
 
4471
4650
  // src/dynamics/dynamic-transformer.ts
@@ -4518,18 +4697,18 @@ function getDynamicValue(name, settings) {
4518
4697
  }
4519
4698
 
4520
4699
  // src/dynamics/hooks/use-prop-dynamic-action.tsx
4521
- import * as React85 from "react";
4700
+ import * as React88 from "react";
4522
4701
  import { useBoundProp as useBoundProp6 } from "@elementor/editor-controls";
4523
4702
  import { DatabaseIcon as DatabaseIcon3 } from "@elementor/icons";
4524
- import { __ as __57 } from "@wordpress/i18n";
4703
+ import { __ as __58 } from "@wordpress/i18n";
4525
4704
  var usePropDynamicAction = () => {
4526
4705
  const { propType } = useBoundProp6();
4527
4706
  const visible = !!propType && supportsDynamic(propType);
4528
4707
  return {
4529
4708
  visible,
4530
4709
  icon: DatabaseIcon3,
4531
- title: __57("Dynamic tags", "elementor"),
4532
- popoverContent: ({ closePopover }) => /* @__PURE__ */ React85.createElement(DynamicSelection, { onSelect: closePopover })
4710
+ title: __58("Dynamic tags", "elementor"),
4711
+ popoverContent: ({ closePopover }) => /* @__PURE__ */ React88.createElement(DynamicSelection, { onSelect: closePopover })
4533
4712
  };
4534
4713
  };
4535
4714
 
@@ -4551,7 +4730,7 @@ var init = () => {
4551
4730
  // src/reset-style-props.tsx
4552
4731
  import { useBoundProp as useBoundProp7 } from "@elementor/editor-controls";
4553
4732
  import { BrushBigIcon } from "@elementor/icons";
4554
- import { __ as __58 } from "@wordpress/i18n";
4733
+ import { __ as __59 } from "@wordpress/i18n";
4555
4734
  var { registerAction } = controlActionsMenu;
4556
4735
  function initResetStyleProps() {
4557
4736
  registerAction({
@@ -4565,7 +4744,7 @@ function useResetStyleValueProps() {
4565
4744
  const { value, setValue, path, bind } = useBoundProp7();
4566
4745
  return {
4567
4746
  visible: isStyle && value !== null && value !== void 0 && path.length <= 2 && !EXCLUDED_BINDS.includes(bind),
4568
- title: __58("Clear", "elementor"),
4747
+ title: __59("Clear", "elementor"),
4569
4748
  icon: BrushBigIcon,
4570
4749
  onClick: () => setValue(null)
4571
4750
  };
@@ -4575,36 +4754,36 @@ function useResetStyleValueProps() {
4575
4754
  import { createTransformer as createTransformer6, styleTransformersRegistry as styleTransformersRegistry2 } from "@elementor/editor-canvas";
4576
4755
 
4577
4756
  // src/styles-inheritance/transformers/background-color-overlay-transformer.tsx
4578
- import * as React86 from "react";
4757
+ import * as React89 from "react";
4579
4758
  import { createTransformer as createTransformer2 } from "@elementor/editor-canvas";
4580
- import { Stack as Stack22, styled as styled6, UnstableColorIndicator } from "@elementor/ui";
4581
- var backgroundColorOverlayTransformer = createTransformer2((value) => /* @__PURE__ */ React86.createElement(Stack22, { direction: "row", gap: 10 }, /* @__PURE__ */ React86.createElement(ItemIconColor, { value }), /* @__PURE__ */ React86.createElement(ItemLabelColor, { value })));
4759
+ import { Stack as Stack22, styled as styled7, UnstableColorIndicator } from "@elementor/ui";
4760
+ var backgroundColorOverlayTransformer = createTransformer2((value) => /* @__PURE__ */ React89.createElement(Stack22, { direction: "row", gap: 10 }, /* @__PURE__ */ React89.createElement(ItemIconColor, { value }), /* @__PURE__ */ React89.createElement(ItemLabelColor, { value })));
4582
4761
  var ItemIconColor = ({ value }) => {
4583
4762
  const { color } = value;
4584
- return /* @__PURE__ */ React86.createElement(StyledUnstableColorIndicator, { size: "inherit", component: "span", value: color });
4763
+ return /* @__PURE__ */ React89.createElement(StyledUnstableColorIndicator, { size: "inherit", component: "span", value: color });
4585
4764
  };
4586
4765
  var ItemLabelColor = ({ value: { color } }) => {
4587
- return /* @__PURE__ */ React86.createElement("span", null, color);
4766
+ return /* @__PURE__ */ React89.createElement("span", null, color);
4588
4767
  };
4589
- var StyledUnstableColorIndicator = styled6(UnstableColorIndicator)(({ theme }) => ({
4768
+ var StyledUnstableColorIndicator = styled7(UnstableColorIndicator)(({ theme }) => ({
4590
4769
  borderRadius: `${theme.shape.borderRadius / 2}px`
4591
4770
  }));
4592
4771
 
4593
4772
  // src/styles-inheritance/transformers/background-gradient-overlay-transformer.tsx
4594
- import * as React87 from "react";
4773
+ import * as React90 from "react";
4595
4774
  import { createTransformer as createTransformer3 } from "@elementor/editor-canvas";
4596
4775
  import { Stack as Stack23 } from "@elementor/ui";
4597
- import { __ as __59 } from "@wordpress/i18n";
4598
- var backgroundGradientOverlayTransformer = createTransformer3((value) => /* @__PURE__ */ React87.createElement(Stack23, { direction: "row", gap: 10 }, /* @__PURE__ */ React87.createElement(ItemIconGradient, { value }), /* @__PURE__ */ React87.createElement(ItemLabelGradient, { value })));
4776
+ import { __ as __60 } from "@wordpress/i18n";
4777
+ var backgroundGradientOverlayTransformer = createTransformer3((value) => /* @__PURE__ */ React90.createElement(Stack23, { direction: "row", gap: 10 }, /* @__PURE__ */ React90.createElement(ItemIconGradient, { value }), /* @__PURE__ */ React90.createElement(ItemLabelGradient, { value })));
4599
4778
  var ItemIconGradient = ({ value }) => {
4600
4779
  const gradient = getGradientValue(value);
4601
- return /* @__PURE__ */ React87.createElement(StyledUnstableColorIndicator, { size: "inherit", component: "span", value: gradient });
4780
+ return /* @__PURE__ */ React90.createElement(StyledUnstableColorIndicator, { size: "inherit", component: "span", value: gradient });
4602
4781
  };
4603
4782
  var ItemLabelGradient = ({ value }) => {
4604
4783
  if (value.type === "linear") {
4605
- return /* @__PURE__ */ React87.createElement("span", null, __59("Linear Gradient", "elementor"));
4784
+ return /* @__PURE__ */ React90.createElement("span", null, __60("Linear Gradient", "elementor"));
4606
4785
  }
4607
- return /* @__PURE__ */ React87.createElement("span", null, __59("Radial Gradient", "elementor"));
4786
+ return /* @__PURE__ */ React90.createElement("span", null, __60("Radial Gradient", "elementor"));
4608
4787
  };
4609
4788
  var getGradientValue = (gradient) => {
4610
4789
  const stops = gradient.stops?.map(({ color, offset }) => `${color} ${offset ?? 0}%`)?.join(",");
@@ -4615,15 +4794,15 @@ var getGradientValue = (gradient) => {
4615
4794
  };
4616
4795
 
4617
4796
  // src/styles-inheritance/transformers/background-image-overlay-transformer.tsx
4618
- import * as React88 from "react";
4797
+ import * as React91 from "react";
4619
4798
  import { createTransformer as createTransformer4 } from "@elementor/editor-canvas";
4620
4799
  import { EllipsisWithTooltip as EllipsisWithTooltip2 } from "@elementor/editor-ui";
4621
4800
  import { CardMedia, Stack as Stack24 } from "@elementor/ui";
4622
4801
  import { useWpMediaAttachment } from "@elementor/wp-media";
4623
- var backgroundImageOverlayTransformer = createTransformer4((value) => /* @__PURE__ */ React88.createElement(Stack24, { direction: "row", gap: 10 }, /* @__PURE__ */ React88.createElement(ItemIconImage, { value }), /* @__PURE__ */ React88.createElement(ItemLabelImage, { value })));
4802
+ var backgroundImageOverlayTransformer = createTransformer4((value) => /* @__PURE__ */ React91.createElement(Stack24, { direction: "row", gap: 10 }, /* @__PURE__ */ React91.createElement(ItemIconImage, { value }), /* @__PURE__ */ React91.createElement(ItemLabelImage, { value })));
4624
4803
  var ItemIconImage = ({ value }) => {
4625
4804
  const { imageUrl } = useImage(value);
4626
- return /* @__PURE__ */ React88.createElement(
4805
+ return /* @__PURE__ */ React91.createElement(
4627
4806
  CardMedia,
4628
4807
  {
4629
4808
  image: imageUrl,
@@ -4638,7 +4817,7 @@ var ItemIconImage = ({ value }) => {
4638
4817
  };
4639
4818
  var ItemLabelImage = ({ value }) => {
4640
4819
  const { imageTitle } = useImage(value);
4641
- return /* @__PURE__ */ React88.createElement(EllipsisWithTooltip2, { title: imageTitle }, /* @__PURE__ */ React88.createElement("span", null, imageTitle));
4820
+ return /* @__PURE__ */ React91.createElement(EllipsisWithTooltip2, { title: imageTitle }, /* @__PURE__ */ React91.createElement("span", null, imageTitle));
4642
4821
  };
4643
4822
  var useImage = (image) => {
4644
4823
  let imageTitle, imageUrl = null;
@@ -4663,14 +4842,14 @@ var getFileExtensionFromFilename = (filename) => {
4663
4842
  };
4664
4843
 
4665
4844
  // src/styles-inheritance/transformers/background-overlay-transformer.tsx
4666
- import * as React89 from "react";
4845
+ import * as React92 from "react";
4667
4846
  import { createTransformer as createTransformer5 } from "@elementor/editor-canvas";
4668
4847
  import { Stack as Stack25 } from "@elementor/ui";
4669
4848
  var backgroundOverlayTransformer = createTransformer5((values) => {
4670
4849
  if (!values || values.length === 0) {
4671
4850
  return null;
4672
4851
  }
4673
- return /* @__PURE__ */ React89.createElement(Stack25, { direction: "column" }, values.map((item, index) => /* @__PURE__ */ React89.createElement(Stack25, { key: index }, item)));
4852
+ return /* @__PURE__ */ React92.createElement(Stack25, { direction: "column" }, values.map((item, index) => /* @__PURE__ */ React92.createElement(Stack25, { key: index }, item)));
4674
4853
  });
4675
4854
 
4676
4855
  // src/styles-inheritance/init-styles-inheritance-transformers.ts
@@ -4720,7 +4899,7 @@ function init3() {
4720
4899
  });
4721
4900
  init();
4722
4901
  init2();
4723
- if (isExperimentActive12(EXPERIMENTAL_FEATURES.V_3_30)) {
4902
+ if (isExperimentActive14(EXPERIMENTAL_FEATURES.V_3_30)) {
4724
4903
  initResetStyleProps();
4725
4904
  }
4726
4905
  }
@@ -4736,6 +4915,7 @@ export {
4736
4915
  injectIntoClassSelectorActions,
4737
4916
  registerControlReplacement,
4738
4917
  useBoundProp8 as useBoundProp,
4918
+ useFontFamilies,
4739
4919
  usePanelActions,
4740
4920
  usePanelStatus
4741
4921
  };