@elementor/editor-controls 4.1.0-710 → 4.1.0-712

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -653,14 +653,14 @@ var TextFieldInnerSelection = forwardRef2(
653
653
  id
654
654
  }, ref) => {
655
655
  const { placeholder: boundPropPlaceholder } = useBoundProp(sizePropTypeUtil);
656
- const getCursorStyle2 = () => ({
656
+ const getCursorStyle3 = () => ({
657
657
  input: { cursor: InputProps.readOnly ? "default !important" : void 0 }
658
658
  });
659
659
  return /* @__PURE__ */ React17.createElement(
660
660
  NumberInput,
661
661
  {
662
662
  ref,
663
- sx: getCursorStyle2(),
663
+ sx: getCursorStyle3(),
664
664
  size: "tiny",
665
665
  fullWidth: true,
666
666
  type,
@@ -6737,7 +6737,7 @@ var FromNameField = () => /* @__PURE__ */ React102.createElement(
6737
6737
  var ReplyToField = () => /* @__PURE__ */ React102.createElement(EmailField, { bind: "reply-to", label: __51("Reply-to", "elementor") });
6738
6738
  var CcField = () => /* @__PURE__ */ React102.createElement(EmailField, { bind: "cc", label: __51("Cc", "elementor") });
6739
6739
  var BccField = () => /* @__PURE__ */ React102.createElement(EmailField, { bind: "bcc", label: __51("Bcc", "elementor") });
6740
- var MetaDataField = () => /* @__PURE__ */ React102.createElement(PropKeyProvider, { bind: "meta-data" }, /* @__PURE__ */ React102.createElement(Stack17, { gap: 0.5 }, /* @__PURE__ */ React102.createElement(ControlLabel, null, __51("Metadata", "elementor")), /* @__PURE__ */ React102.createElement(
6740
+ var MetaDataField = () => /* @__PURE__ */ React102.createElement(PropKeyProvider, { bind: "meta-data" }, /* @__PURE__ */ React102.createElement(Stack17, { gap: 0.5 }, /* @__PURE__ */ React102.createElement(ControlFormLabel, null, __51("Metadata", "elementor")), /* @__PURE__ */ React102.createElement(
6741
6741
  ChipsControl,
6742
6742
  {
6743
6743
  options: [
@@ -6761,25 +6761,650 @@ var SendAsField = () => /* @__PURE__ */ React102.createElement(PropKeyProvider,
6761
6761
  var AdvancedSettings = () => /* @__PURE__ */ React102.createElement(CollapsibleContent, { defaultOpen: false }, /* @__PURE__ */ React102.createElement(Box24, { sx: { pt: 2 } }, /* @__PURE__ */ React102.createElement(Stack17, { gap: 2 }, /* @__PURE__ */ React102.createElement(FromNameField, null), /* @__PURE__ */ React102.createElement(ReplyToField, null), /* @__PURE__ */ React102.createElement(CcField, null), /* @__PURE__ */ React102.createElement(BccField, null), /* @__PURE__ */ React102.createElement(Divider5, null), /* @__PURE__ */ React102.createElement(MetaDataField, null), /* @__PURE__ */ React102.createElement(SendAsField, null))));
6762
6762
  var EmailFormActionControl = createControl(() => {
6763
6763
  const { value, setValue, ...propContext } = useBoundProp(emailPropTypeUtil);
6764
- return /* @__PURE__ */ React102.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React102.createElement(Stack17, { gap: 2 }, /* @__PURE__ */ React102.createElement(ControlFormLabel, null, __51("Email settings", "elementor")), /* @__PURE__ */ React102.createElement(SendToField, null), /* @__PURE__ */ React102.createElement(SubjectField, null), /* @__PURE__ */ React102.createElement(MessageField, null), /* @__PURE__ */ React102.createElement(FromEmailField, null), /* @__PURE__ */ React102.createElement(AdvancedSettings, null)));
6764
+ return /* @__PURE__ */ React102.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React102.createElement(Stack17, { gap: 2 }, /* @__PURE__ */ React102.createElement(ControlLabel, null, __51("Email settings", "elementor")), /* @__PURE__ */ React102.createElement(SendToField, null), /* @__PURE__ */ React102.createElement(SubjectField, null), /* @__PURE__ */ React102.createElement(MessageField, null), /* @__PURE__ */ React102.createElement(FromEmailField, null), /* @__PURE__ */ React102.createElement(AdvancedSettings, null)));
6765
6765
  });
6766
6766
 
6767
- // src/components/promotions/display-conditions-control.tsx
6767
+ // src/controls/size-control/unstable-size-control.tsx
6768
+ import * as React108 from "react";
6769
+ import { sizePropTypeUtil as sizePropTypeUtil6 } from "@elementor/editor-props";
6770
+
6771
+ // src/controls/size-control/size-component.tsx
6772
+ import * as React107 from "react";
6773
+ import { useEffect as useEffect15 } from "react";
6774
+ import { useActiveBreakpoint as useActiveBreakpoint4 } from "@elementor/editor-responsive";
6775
+ import { Box as Box25, usePopupState as usePopupState9 } from "@elementor/ui";
6776
+
6777
+ // src/controls/size-control/size-field.tsx
6778
+ import * as React105 from "react";
6779
+ import { MathFunctionIcon as MathFunctionIcon3 } from "@elementor/icons";
6780
+ import { InputAdornment as InputAdornment5 } from "@elementor/ui";
6781
+
6782
+ // src/controls/size-control/sync/get-units.ts
6783
+ var getLengthUnits = () => {
6784
+ return window.elementor?.config?.size_units?.length ?? [];
6785
+ };
6786
+ var getAngleUnits = () => {
6787
+ return window.elementor?.config?.size_units?.angle ?? [];
6788
+ };
6789
+ var getTimeUnits = () => {
6790
+ return window.elementor?.config?.size_units?.time ?? [];
6791
+ };
6792
+ var getExtendedUnits = () => {
6793
+ return window.elementor?.config?.size_units?.extended_units ?? [];
6794
+ };
6795
+
6796
+ // src/controls/size-control/utils/is-extended-unit.ts
6797
+ var isExtendedUnit = (unit) => {
6798
+ const extendedUnits = getExtendedUnits();
6799
+ return extendedUnits.includes(unit);
6800
+ };
6801
+
6802
+ // src/controls/size-control/hooks/use-size-unit-keyboard.tsx
6803
+ var UNIT_KEY_PATTERN = /^[a-zA-Z%]$/;
6804
+ var useSizeUnitKeyboard = ({ unit, units: units2, onUnitChange }) => {
6805
+ const { appendKey, startsWith } = useTypingBuffer();
6806
+ const onUnitKeyDown = (event) => {
6807
+ if (units2.length === 0) {
6808
+ return;
6809
+ }
6810
+ const { key, altKey, ctrlKey, metaKey } = event;
6811
+ if (altKey || ctrlKey || metaKey) {
6812
+ return;
6813
+ }
6814
+ if (isExtendedUnit(unit) && isNumericValue(key)) {
6815
+ const [defaultUnit] = units2;
6816
+ if (defaultUnit) {
6817
+ onUnitChange(defaultUnit);
6818
+ }
6819
+ return;
6820
+ }
6821
+ if (!UNIT_KEY_PATTERN.test(key)) {
6822
+ return;
6823
+ }
6824
+ event.preventDefault();
6825
+ const updatedBuffer = appendKey(key.toLowerCase());
6826
+ const matchedUnit = units2.find((u) => startsWith(u, updatedBuffer));
6827
+ if (matchedUnit) {
6828
+ onUnitChange(matchedUnit);
6829
+ }
6830
+ };
6831
+ return { onUnitKeyDown };
6832
+ };
6833
+ var isNumericValue = (value) => {
6834
+ if (typeof value === "number") {
6835
+ return !isNaN(value);
6836
+ }
6837
+ if (typeof value === "string") {
6838
+ return value.trim() !== "" && !isNaN(Number(value));
6839
+ }
6840
+ return false;
6841
+ };
6842
+
6843
+ // src/controls/size-control/hooks/use-size-value.ts
6844
+ import { useMemo as useMemo15 } from "react";
6845
+
6846
+ // src/controls/size-control/utils/resolve-size-value.ts
6847
+ var DEFAULT_SIZE2 = "";
6848
+ var EXTENDED_UNITS = {
6849
+ auto: "auto",
6850
+ custom: "custom"
6851
+ };
6852
+ var resolveSizeValue = (value, context) => {
6853
+ if (!value) {
6854
+ return value;
6855
+ }
6856
+ const { units: units2, defaultUnit } = context;
6857
+ const unit = resolveFallbackUnit(value.unit, units2, defaultUnit);
6858
+ if (unit === EXTENDED_UNITS.auto) {
6859
+ return { size: DEFAULT_SIZE2, unit };
6860
+ }
6861
+ if (unit === EXTENDED_UNITS.custom) {
6862
+ return { size: String(value.size ?? DEFAULT_SIZE2), unit };
6863
+ }
6864
+ return {
6865
+ size: sanitizeSize(value.size) ?? DEFAULT_SIZE2,
6866
+ unit
6867
+ };
6868
+ };
6869
+ var resolveSizeOnUnitChange = (size, unit) => {
6870
+ return isExtendedUnit(unit) ? DEFAULT_SIZE2 : size;
6871
+ };
6872
+ var createDefaultSizeValue = (units2, defaultUnit) => {
6873
+ let [unit] = units2;
6874
+ if (defaultUnit !== void 0) {
6875
+ unit = resolveFallbackUnit(defaultUnit, units2);
6876
+ }
6877
+ return { size: DEFAULT_SIZE2, unit };
6878
+ };
6879
+ var resolveFallbackUnit = (unit, units2, defaultUnit) => {
6880
+ if (units2.includes(unit)) {
6881
+ return unit;
6882
+ }
6883
+ if (defaultUnit && units2.includes(defaultUnit)) {
6884
+ return defaultUnit;
6885
+ }
6886
+ return units2[0] ?? "";
6887
+ };
6888
+ var sanitizeSize = (size) => {
6889
+ if (typeof size === "number" && isNaN(size)) {
6890
+ return DEFAULT_SIZE2;
6891
+ }
6892
+ return size;
6893
+ };
6894
+
6895
+ // src/controls/size-control/hooks/use-size-value.ts
6896
+ var useSizeValue = ({
6897
+ value,
6898
+ setValue,
6899
+ units: units2,
6900
+ defaultUnit
6901
+ }) => {
6902
+ const resolvedValue = useMemo15(
6903
+ () => resolveSizeValue(value, { units: units2, defaultUnit }),
6904
+ // eslint-disable-next-line react-hooks/exhaustive-deps
6905
+ [value?.size, value?.unit, defaultUnit]
6906
+ );
6907
+ const [sizeValue, setSizeValue] = useSyncExternalState({
6908
+ external: resolvedValue,
6909
+ setExternal: (newState, options, meta) => {
6910
+ if (newState !== null) {
6911
+ setValue(newState, options, meta);
6912
+ }
6913
+ },
6914
+ persistWhen: (next) => hasChanged(next, resolvedValue),
6915
+ fallback: () => createDefaultSizeValue(units2, defaultUnit)
6916
+ });
6917
+ const setSize = (newSize, isInputValid = true) => {
6918
+ if (isExtendedUnit(sizeValue.unit)) {
6919
+ return;
6920
+ }
6921
+ const trimmed = newSize.trim();
6922
+ const parsed = Number(trimmed);
6923
+ const newState = {
6924
+ ...sizeValue,
6925
+ size: trimmed && !isNaN(parsed) ? parsed : ""
6926
+ };
6927
+ setSizeValue(newState, void 0, { validation: () => isInputValid });
6928
+ };
6929
+ const setUnit = (unit) => {
6930
+ setSizeValue({ unit, size: resolveSizeOnUnitChange(sizeValue.size, unit) });
6931
+ };
6932
+ return {
6933
+ size: sizeValue.size,
6934
+ unit: sizeValue.unit,
6935
+ setSize,
6936
+ setUnit
6937
+ };
6938
+ };
6939
+ var hasChanged = (next, current) => {
6940
+ return next?.size !== current?.size || next?.unit !== current?.unit;
6941
+ };
6942
+
6943
+ // src/controls/size-control/ui/size-input.tsx
6944
+ import * as React103 from "react";
6945
+ import { forwardRef as forwardRef11 } from "react";
6946
+ var SizeInput2 = forwardRef11(
6947
+ ({
6948
+ id,
6949
+ type,
6950
+ value,
6951
+ onBlur,
6952
+ onKeyUp,
6953
+ focused,
6954
+ disabled,
6955
+ onChange,
6956
+ onKeyDown,
6957
+ InputProps,
6958
+ inputProps,
6959
+ placeholder
6960
+ }, ref) => {
6961
+ return /* @__PURE__ */ React103.createElement(
6962
+ NumberInput,
6963
+ {
6964
+ id,
6965
+ ref,
6966
+ size: "tiny",
6967
+ fullWidth: true,
6968
+ type,
6969
+ value,
6970
+ placeholder,
6971
+ onKeyUp,
6972
+ focused,
6973
+ disabled,
6974
+ onKeyDown,
6975
+ onInput: onChange,
6976
+ onBlur,
6977
+ InputProps,
6978
+ inputProps,
6979
+ sx: getCursorStyle(InputProps?.readOnly ?? false)
6980
+ }
6981
+ );
6982
+ }
6983
+ );
6984
+ var getCursorStyle = (readOnly) => ({
6985
+ input: { cursor: readOnly ? "default !important" : void 0 }
6986
+ });
6987
+
6988
+ // src/controls/size-control/ui/unit-selector.tsx
6768
6989
  import * as React104 from "react";
6769
- import { useRef as useRef25 } from "react";
6990
+ import { useId as useId3 } from "react";
6991
+ import { MenuListItem as MenuListItem7 } from "@elementor/editor-ui";
6992
+ import { bindMenu as bindMenu2, bindTrigger as bindTrigger6, Button as Button6, Menu as Menu3, styled as styled9, usePopupState as usePopupState8 } from "@elementor/ui";
6993
+ var menuItemContentStyles = {
6994
+ display: "flex",
6995
+ flexDirection: "column",
6996
+ justifyContent: "center"
6997
+ };
6998
+ var UnitSelector = ({
6999
+ value,
7000
+ isActive,
7001
+ onSelect,
7002
+ options,
7003
+ disabled,
7004
+ menuItemsAttributes = {},
7005
+ optionLabelOverrides = {}
7006
+ }) => {
7007
+ const popupState = usePopupState8({
7008
+ variant: "popover",
7009
+ popupId: useId3()
7010
+ });
7011
+ const handleMenuItemClick = (option) => {
7012
+ onSelect(option);
7013
+ popupState.close();
7014
+ };
7015
+ return /* @__PURE__ */ React104.createElement(React104.Fragment, null, /* @__PURE__ */ React104.createElement(StyledButton2, { isActive, disabled, size: "small", ...bindTrigger6(popupState) }, optionLabelOverrides[value] ?? value), /* @__PURE__ */ React104.createElement(Menu3, { MenuListProps: { dense: true }, ...bindMenu2(popupState) }, options.map((option) => /* @__PURE__ */ React104.createElement(
7016
+ MenuListItem7,
7017
+ {
7018
+ key: option,
7019
+ onClick: () => handleMenuItemClick(option),
7020
+ ...menuItemsAttributes?.[option],
7021
+ primaryTypographyProps: {
7022
+ variant: "caption",
7023
+ sx: {
7024
+ ...menuItemContentStyles,
7025
+ lineHeight: "1"
7026
+ }
7027
+ },
7028
+ menuItemTextProps: {
7029
+ sx: menuItemContentStyles
7030
+ }
7031
+ },
7032
+ optionLabelOverrides[option] ?? option.toUpperCase()
7033
+ ))));
7034
+ };
7035
+ var StyledButton2 = styled9(Button6, {
7036
+ shouldForwardProp: (prop) => prop !== "isActive"
7037
+ })(({ isActive, theme }) => ({
7038
+ color: isActive ? theme.palette.text.primary : theme.palette.text.tertiary,
7039
+ font: "inherit",
7040
+ minWidth: "initial",
7041
+ textTransform: "uppercase"
7042
+ }));
7043
+
7044
+ // src/controls/size-control/utils/has-size-value.ts
7045
+ var hasSizeValue = (size) => {
7046
+ return Boolean(size) || size === 0;
7047
+ };
7048
+
7049
+ // src/controls/size-control/size-field.tsx
7050
+ var UNIT_DISPLAY_LABELS_OVERRIDES = {
7051
+ custom: /* @__PURE__ */ React105.createElement(MathFunctionIcon3, { fontSize: "tiny" })
7052
+ };
7053
+ var SizeField = ({
7054
+ value,
7055
+ focused,
7056
+ disabled,
7057
+ InputProps,
7058
+ defaultUnit,
7059
+ placeholder,
7060
+ onUnitChange,
7061
+ startIcon,
7062
+ ariaLabel,
7063
+ onKeyDown,
7064
+ setValue,
7065
+ onBlur,
7066
+ units: units2,
7067
+ min,
7068
+ unitSelectorProps
7069
+ }) => {
7070
+ const { size, unit, setSize, setUnit } = useSizeValue({ value, setValue, units: units2, defaultUnit });
7071
+ const handleUnitChange = (newUnit) => {
7072
+ setUnit(newUnit);
7073
+ onUnitChange?.(newUnit);
7074
+ };
7075
+ const { onUnitKeyDown } = useSizeUnitKeyboard({ unit, onUnitChange: handleUnitChange, units: units2 });
7076
+ const handleKeyDown = (event) => {
7077
+ onUnitKeyDown(event);
7078
+ onKeyDown?.(event);
7079
+ };
7080
+ const handleChange = (event) => {
7081
+ const newSize = event.target.value;
7082
+ const isInputValid = event.target.validity.valid;
7083
+ setSize(newSize, isInputValid);
7084
+ };
7085
+ const inputType = isExtendedUnit(unit) ? "text" : "number";
7086
+ return /* @__PURE__ */ React105.createElement(
7087
+ SizeInput2,
7088
+ {
7089
+ disabled,
7090
+ focused,
7091
+ type: inputType,
7092
+ value: size,
7093
+ placeholder,
7094
+ onBlur,
7095
+ onKeyDown: handleKeyDown,
7096
+ onChange: handleChange,
7097
+ InputProps: {
7098
+ ...InputProps,
7099
+ autoComplete: "off",
7100
+ readOnly: isExtendedUnit(unit),
7101
+ startAdornment: startIcon && /* @__PURE__ */ React105.createElement(InputAdornment5, { position: "start", disabled }, startIcon),
7102
+ endAdornment: /* @__PURE__ */ React105.createElement(InputAdornment5, { position: "end" }, /* @__PURE__ */ React105.createElement(
7103
+ UnitSelector,
7104
+ {
7105
+ options: units2,
7106
+ value: unit,
7107
+ onSelect: handleUnitChange,
7108
+ isActive: unitSelectorProps?.isActive ?? hasSizeValue(size),
7109
+ ...unitSelectorProps,
7110
+ optionLabelOverrides: UNIT_DISPLAY_LABELS_OVERRIDES
7111
+ }
7112
+ ))
7113
+ },
7114
+ inputProps: { min, step: "any", "arial-label": ariaLabel }
7115
+ }
7116
+ );
7117
+ };
7118
+
7119
+ // src/controls/size-control/ui/text-field-popover.tsx
7120
+ import * as React106 from "react";
7121
+ import { useEffect as useEffect14, useRef as useRef25 } from "react";
7122
+ import { PopoverHeader as PopoverHeader4 } from "@elementor/editor-ui";
7123
+ import { MathFunctionIcon as MathFunctionIcon4 } from "@elementor/icons";
7124
+ import { bindPopover as bindPopover7, Popover as Popover7, TextField as TextField9 } from "@elementor/ui";
7125
+ import { __ as __52 } from "@wordpress/i18n";
7126
+ var SIZE10 = "tiny";
7127
+ var TextFieldPopover2 = ({ popupState, anchorRef, value, onChange, onClose }) => {
7128
+ const inputRef = useRef25(null);
7129
+ useEffect14(() => {
7130
+ if (popupState.isOpen) {
7131
+ requestAnimationFrame(() => {
7132
+ if (inputRef.current) {
7133
+ inputRef.current.focus();
7134
+ }
7135
+ });
7136
+ }
7137
+ }, [popupState.isOpen]);
7138
+ const handleKeyDown = (event) => {
7139
+ if (event.key.toLowerCase() === "enter") {
7140
+ handleClose();
7141
+ }
7142
+ };
7143
+ const handleClose = () => {
7144
+ onClose?.();
7145
+ popupState.close();
7146
+ };
7147
+ return /* @__PURE__ */ React106.createElement(
7148
+ Popover7,
7149
+ {
7150
+ disablePortal: true,
7151
+ slotProps: {
7152
+ paper: {
7153
+ sx: {
7154
+ borderRadius: 2,
7155
+ width: anchorRef.current?.offsetWidth + "px"
7156
+ }
7157
+ }
7158
+ },
7159
+ ...bindPopover7(popupState),
7160
+ anchorOrigin: { vertical: "bottom", horizontal: "center" },
7161
+ transformOrigin: { vertical: "top", horizontal: "center" },
7162
+ onClose: handleClose
7163
+ },
7164
+ /* @__PURE__ */ React106.createElement(
7165
+ PopoverHeader4,
7166
+ {
7167
+ title: __52("CSS function", "elementor"),
7168
+ onClose: handleClose,
7169
+ icon: /* @__PURE__ */ React106.createElement(MathFunctionIcon4, { fontSize: SIZE10 })
7170
+ }
7171
+ ),
7172
+ /* @__PURE__ */ React106.createElement(
7173
+ TextField9,
7174
+ {
7175
+ value,
7176
+ onChange,
7177
+ onKeyDown: handleKeyDown,
7178
+ size: "tiny",
7179
+ type: "text",
7180
+ fullWidth: true,
7181
+ inputProps: {
7182
+ ref: inputRef
7183
+ },
7184
+ sx: { pt: 0, pr: 1.5, pb: 1.5, pl: 1.5 }
7185
+ }
7186
+ )
7187
+ );
7188
+ };
7189
+
7190
+ // src/controls/size-control/size-component.tsx
7191
+ var SizeComponent = ({
7192
+ anchorRef,
7193
+ isUnitActive,
7194
+ SizeFieldWrapper = React107.Fragment,
7195
+ ...sizeFieldProps
7196
+ }) => {
7197
+ const popupState = usePopupState9({ variant: "popover" });
7198
+ const activeBreakpoint = useActiveBreakpoint4();
7199
+ const isCustomUnit = sizeFieldProps?.value?.unit === EXTENDED_UNITS.custom;
7200
+ const hasCustomUnitOption = sizeFieldProps.units.includes(EXTENDED_UNITS.custom);
7201
+ useEffect15(() => {
7202
+ if (popupState && popupState.isOpen) {
7203
+ popupState.close();
7204
+ }
7205
+ }, [activeBreakpoint]);
7206
+ const handleCustomSizeChange = (event) => {
7207
+ sizeFieldProps.setValue({
7208
+ size: event.target.value,
7209
+ unit: EXTENDED_UNITS.custom
7210
+ });
7211
+ };
7212
+ const handleSizeFieldClick = (event) => {
7213
+ if (event.target.closest("input") && isCustomUnit) {
7214
+ popupState.open(anchorRef?.current);
7215
+ }
7216
+ };
7217
+ const handleUnitChange = (unit) => {
7218
+ if (unit === EXTENDED_UNITS.custom && anchorRef?.current) {
7219
+ popupState.open(anchorRef.current);
7220
+ }
7221
+ };
7222
+ const popupAttributes = {
7223
+ "aria-controls": popupState.isOpen ? popupState.popupId : void 0,
7224
+ "aria-haspopup": true
7225
+ };
7226
+ return /* @__PURE__ */ React107.createElement(React107.Fragment, null, /* @__PURE__ */ React107.createElement(SizeFieldWrapper, null, /* @__PURE__ */ React107.createElement(Box25, null, /* @__PURE__ */ React107.createElement(
7227
+ SizeField,
7228
+ {
7229
+ focused: popupState.isOpen ? true : void 0,
7230
+ onUnitChange: handleUnitChange,
7231
+ InputProps: {
7232
+ ...popupAttributes,
7233
+ onClick: handleSizeFieldClick
7234
+ },
7235
+ unitSelectorProps: {
7236
+ menuItemsAttributes: hasCustomUnitOption ? { custom: popupAttributes } : void 0,
7237
+ isActive: isUnitActive
7238
+ },
7239
+ ...sizeFieldProps
7240
+ }
7241
+ ))), popupState.isOpen && anchorRef?.current && /* @__PURE__ */ React107.createElement(
7242
+ TextFieldPopover2,
7243
+ {
7244
+ popupState,
7245
+ anchorRef,
7246
+ value: String(sizeFieldProps?.value?.size ?? ""),
7247
+ onChange: handleCustomSizeChange,
7248
+ onClose: () => {
7249
+ }
7250
+ }
7251
+ ));
7252
+ };
7253
+
7254
+ // src/controls/size-control/utils/resolve-bound-prop-value.ts
7255
+ import { sizePropTypeUtil as sizePropTypeUtil5 } from "@elementor/editor-props";
7256
+ var resolveBoundPropValue = (value, boundPropPlaceholder, propPlaceholder) => {
7257
+ let sizeValue = null;
7258
+ if (validateSizeValue(value)) {
7259
+ sizeValue = value;
7260
+ } else if (validateSizeValue(boundPropPlaceholder)) {
7261
+ sizeValue = { size: "", unit: boundPropPlaceholder?.unit };
7262
+ }
7263
+ return {
7264
+ sizeValue,
7265
+ isUnitHighlighted: shouldHighlightUnit(value),
7266
+ placeholder: resolvePlaceholder(propPlaceholder, boundPropPlaceholder)
7267
+ };
7268
+ };
7269
+ var validateSizeValue = (value) => {
7270
+ if (!value) {
7271
+ return false;
7272
+ }
7273
+ const sizePropValue = sizePropTypeUtil5.create(value);
7274
+ return sizePropTypeUtil5.isValid(sizePropValue);
7275
+ };
7276
+ var resolvePlaceholder = (propPlaceholder, boundPropPlaceholder) => {
7277
+ if (propPlaceholder) {
7278
+ return propPlaceholder;
7279
+ }
7280
+ const size = boundPropPlaceholder?.size;
7281
+ if (size === void 0) {
7282
+ return void 0;
7283
+ }
7284
+ if (typeof size === "number") {
7285
+ return size.toString();
7286
+ }
7287
+ return size;
7288
+ };
7289
+ var shouldHighlightUnit = (value) => {
7290
+ if (!value) {
7291
+ return false;
7292
+ }
7293
+ if (value.unit === EXTENDED_UNITS.auto) {
7294
+ return true;
7295
+ }
7296
+ return hasSizeValue(value.size);
7297
+ };
7298
+
7299
+ // src/controls/size-control/utils/settings/get-prop-type-settings.ts
7300
+ var getPropTypeSettings = (propType) => {
7301
+ return propType.settings;
7302
+ };
7303
+
7304
+ // src/controls/size-control/utils/settings/get-default-unit.ts
7305
+ var getDefaultUnit = (propType) => {
7306
+ return getPropTypeSettings(propType)?.default_unit;
7307
+ };
7308
+
7309
+ // src/controls/size-control/utils/settings/get-size-units.ts
7310
+ var getVariantUnits = (variant) => {
7311
+ const map = {
7312
+ length: getLengthUnits,
7313
+ angle: getAngleUnits,
7314
+ time: getTimeUnits
7315
+ };
7316
+ return map[variant]();
7317
+ };
7318
+ var getSettingsUnits = (propType) => {
7319
+ return getPropTypeSettings(propType)?.units;
7320
+ };
7321
+ var getSizeUnits = (propType, variant) => {
7322
+ return getSettingsUnits(propType) ?? getVariantUnits(variant);
7323
+ };
7324
+
7325
+ // src/controls/size-control/utils/should-nullify-value.ts
7326
+ var conditions = [
7327
+ (value) => value?.size === null || value?.size === void 0 || value?.size === "",
7328
+ (value) => value?.unit !== EXTENDED_UNITS.auto,
7329
+ (value) => value?.unit !== EXTENDED_UNITS.custom
7330
+ ];
7331
+ var shouldNullifyValue = (value) => {
7332
+ return conditions.every((condition) => condition(value));
7333
+ };
7334
+
7335
+ // src/controls/size-control/unstable-size-control.tsx
7336
+ var UnstableSizeControl = createControl(
7337
+ ({ variant = "length", placeholder: propPlaceholder, anchorRef, startIcon, ariaLabel, min }) => {
7338
+ const {
7339
+ value,
7340
+ setValue,
7341
+ propType,
7342
+ placeholder: boundPropPlaceholder,
7343
+ restoreValue
7344
+ } = useBoundProp(sizePropTypeUtil6);
7345
+ const { sizeValue, isUnitHighlighted, placeholder } = resolveBoundPropValue(
7346
+ value,
7347
+ boundPropPlaceholder,
7348
+ propPlaceholder
7349
+ );
7350
+ const units2 = getSizeUnits(propType, variant);
7351
+ const defaultUnit = getDefaultUnit(propType);
7352
+ const handleBlur = () => {
7353
+ const isRequired = propType.settings.required;
7354
+ if (shouldNullifyValue(value) && !isRequired) {
7355
+ setValue(null);
7356
+ }
7357
+ if (isRequired) {
7358
+ restoreValue();
7359
+ }
7360
+ };
7361
+ const handleChange = (newValue, options, meta) => {
7362
+ setValue(newValue, options, {
7363
+ ...meta,
7364
+ validation: () => {
7365
+ if (propType.settings.required) {
7366
+ return newValue.size !== "";
7367
+ }
7368
+ return meta?.validation ? meta.validation(newValue) : true;
7369
+ }
7370
+ });
7371
+ };
7372
+ return /* @__PURE__ */ React108.createElement(
7373
+ SizeComponent,
7374
+ {
7375
+ units: units2,
7376
+ value: sizeValue,
7377
+ anchorRef,
7378
+ placeholder,
7379
+ defaultUnit,
7380
+ isUnitActive: isUnitHighlighted,
7381
+ onBlur: handleBlur,
7382
+ setValue: handleChange,
7383
+ SizeFieldWrapper: ControlActions,
7384
+ startIcon,
7385
+ ariaLabel,
7386
+ min
7387
+ }
7388
+ );
7389
+ }
7390
+ );
7391
+
7392
+ // src/components/promotions/display-conditions-control.tsx
7393
+ import * as React110 from "react";
7394
+ import { useRef as useRef26 } from "react";
6770
7395
  import { SitemapIcon } from "@elementor/icons";
6771
7396
  import { IconButton as IconButton8, Stack as Stack18, Tooltip as Tooltip9 } from "@elementor/ui";
6772
- import { __ as __52 } from "@wordpress/i18n";
7397
+ import { __ as __53 } from "@wordpress/i18n";
6773
7398
 
6774
7399
  // src/components/promotions/promotion-trigger.tsx
6775
- import * as React103 from "react";
6776
- import { forwardRef as forwardRef11, useCallback as useCallback4, useImperativeHandle, useState as useState17 } from "react";
7400
+ import * as React109 from "react";
7401
+ import { forwardRef as forwardRef12, useCallback as useCallback4, useImperativeHandle, useState as useState17 } from "react";
6777
7402
  import { PromotionChip as PromotionChip2, PromotionInfotip } from "@elementor/editor-ui";
6778
- import { Box as Box25 } from "@elementor/ui";
7403
+ import { Box as Box26 } from "@elementor/ui";
6779
7404
  function getV4Promotion(key) {
6780
7405
  return window.elementor?.config?.v4Promotions?.[key];
6781
7406
  }
6782
- var PromotionTrigger = forwardRef11(
7407
+ var PromotionTrigger = forwardRef12(
6783
7408
  ({ promotionKey, children, trackingData }, ref) => {
6784
7409
  const [isOpen, setIsOpen] = useState17(false);
6785
7410
  const promotion = getV4Promotion(promotionKey);
@@ -6792,7 +7417,7 @@ var PromotionTrigger = forwardRef11(
6792
7417
  });
6793
7418
  }, [trackingData]);
6794
7419
  useImperativeHandle(ref, () => ({ toggle }), [toggle]);
6795
- return /* @__PURE__ */ React103.createElement(React103.Fragment, null, promotion && /* @__PURE__ */ React103.createElement(
7420
+ return /* @__PURE__ */ React109.createElement(React109.Fragment, null, promotion && /* @__PURE__ */ React109.createElement(
6796
7421
  PromotionInfotip,
6797
7422
  {
6798
7423
  title: promotion.title,
@@ -6806,8 +7431,8 @@ var PromotionTrigger = forwardRef11(
6806
7431
  },
6807
7432
  onCtaClick: () => trackUpgradePromotionClick(trackingData)
6808
7433
  },
6809
- /* @__PURE__ */ React103.createElement(
6810
- Box25,
7434
+ /* @__PURE__ */ React109.createElement(
7435
+ Box26,
6811
7436
  {
6812
7437
  onClick: (e) => {
6813
7438
  e.stopPropagation();
@@ -6815,18 +7440,18 @@ var PromotionTrigger = forwardRef11(
6815
7440
  },
6816
7441
  sx: { cursor: "pointer", display: "inline-flex" }
6817
7442
  },
6818
- children ?? /* @__PURE__ */ React103.createElement(PromotionChip2, null)
7443
+ children ?? /* @__PURE__ */ React109.createElement(PromotionChip2, null)
6819
7444
  )
6820
7445
  ));
6821
7446
  }
6822
7447
  );
6823
7448
 
6824
7449
  // src/components/promotions/display-conditions-control.tsx
6825
- var ARIA_LABEL = __52("Display Conditions", "elementor");
7450
+ var ARIA_LABEL = __53("Display Conditions", "elementor");
6826
7451
  var TRACKING_DATA = { target_name: "display_conditions", location_l2: "general" };
6827
7452
  var DisplayConditionsControl = createControl(() => {
6828
- const triggerRef = useRef25(null);
6829
- return /* @__PURE__ */ React104.createElement(
7453
+ const triggerRef = useRef26(null);
7454
+ return /* @__PURE__ */ React110.createElement(
6830
7455
  Stack18,
6831
7456
  {
6832
7457
  direction: "row",
@@ -6836,8 +7461,8 @@ var DisplayConditionsControl = createControl(() => {
6836
7461
  alignItems: "center"
6837
7462
  }
6838
7463
  },
6839
- /* @__PURE__ */ React104.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "displayConditions", trackingData: TRACKING_DATA }),
6840
- /* @__PURE__ */ React104.createElement(Tooltip9, { title: ARIA_LABEL, placement: "top" }, /* @__PURE__ */ React104.createElement(
7464
+ /* @__PURE__ */ React110.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "displayConditions", trackingData: TRACKING_DATA }),
7465
+ /* @__PURE__ */ React110.createElement(Tooltip9, { title: ARIA_LABEL, placement: "top" }, /* @__PURE__ */ React110.createElement(
6841
7466
  IconButton8,
6842
7467
  {
6843
7468
  size: "tiny",
@@ -6850,22 +7475,22 @@ var DisplayConditionsControl = createControl(() => {
6850
7475
  borderRadius: 1
6851
7476
  }
6852
7477
  },
6853
- /* @__PURE__ */ React104.createElement(SitemapIcon, { fontSize: "tiny", color: "disabled" })
7478
+ /* @__PURE__ */ React110.createElement(SitemapIcon, { fontSize: "tiny", color: "disabled" })
6854
7479
  ))
6855
7480
  );
6856
7481
  });
6857
7482
 
6858
7483
  // src/components/promotions/attributes-control.tsx
6859
- import * as React105 from "react";
6860
- import { useRef as useRef26 } from "react";
7484
+ import * as React111 from "react";
7485
+ import { useRef as useRef27 } from "react";
6861
7486
  import { PlusIcon as PlusIcon3 } from "@elementor/icons";
6862
7487
  import { Stack as Stack19, Tooltip as Tooltip10 } from "@elementor/ui";
6863
- import { __ as __53 } from "@wordpress/i18n";
6864
- var ARIA_LABEL2 = __53("Attributes", "elementor");
7488
+ import { __ as __54 } from "@wordpress/i18n";
7489
+ var ARIA_LABEL2 = __54("Attributes", "elementor");
6865
7490
  var TRACKING_DATA2 = { target_name: "attributes", location_l2: "general" };
6866
7491
  var AttributesControl = createControl(() => {
6867
- const triggerRef = useRef26(null);
6868
- return /* @__PURE__ */ React105.createElement(
7492
+ const triggerRef = useRef27(null);
7493
+ return /* @__PURE__ */ React111.createElement(
6869
7494
  Stack19,
6870
7495
  {
6871
7496
  direction: "row",
@@ -6875,8 +7500,8 @@ var AttributesControl = createControl(() => {
6875
7500
  alignItems: "center"
6876
7501
  }
6877
7502
  },
6878
- /* @__PURE__ */ React105.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "attributes", trackingData: TRACKING_DATA2 }),
6879
- /* @__PURE__ */ React105.createElement(Tooltip10, { title: ARIA_LABEL2, placement: "top" }, /* @__PURE__ */ React105.createElement(
7503
+ /* @__PURE__ */ React111.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "attributes", trackingData: TRACKING_DATA2 }),
7504
+ /* @__PURE__ */ React111.createElement(Tooltip10, { title: ARIA_LABEL2, placement: "top" }, /* @__PURE__ */ React111.createElement(
6880
7505
  PlusIcon3,
6881
7506
  {
6882
7507
  "aria-label": ARIA_LABEL2,
@@ -6890,30 +7515,30 @@ var AttributesControl = createControl(() => {
6890
7515
  });
6891
7516
 
6892
7517
  // src/components/icon-buttons/clear-icon-button.tsx
6893
- import * as React106 from "react";
7518
+ import * as React112 from "react";
6894
7519
  import { BrushBigIcon } from "@elementor/icons";
6895
- import { IconButton as IconButton9, styled as styled9, Tooltip as Tooltip11 } from "@elementor/ui";
6896
- var CustomIconButton = styled9(IconButton9)(({ theme }) => ({
7520
+ import { IconButton as IconButton9, styled as styled10, Tooltip as Tooltip11 } from "@elementor/ui";
7521
+ var CustomIconButton = styled10(IconButton9)(({ theme }) => ({
6897
7522
  width: theme.spacing(2.5),
6898
7523
  height: theme.spacing(2.5)
6899
7524
  }));
6900
- var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /* @__PURE__ */ React106.createElement(Tooltip11, { title: tooltipText, placement: "top", disableInteractive: true }, /* @__PURE__ */ React106.createElement(CustomIconButton, { "aria-label": tooltipText, size, onClick, disabled }, /* @__PURE__ */ React106.createElement(BrushBigIcon, { fontSize: size })));
7525
+ var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /* @__PURE__ */ React112.createElement(Tooltip11, { title: tooltipText, placement: "top", disableInteractive: true }, /* @__PURE__ */ React112.createElement(CustomIconButton, { "aria-label": tooltipText, size, onClick, disabled }, /* @__PURE__ */ React112.createElement(BrushBigIcon, { fontSize: size })));
6901
7526
 
6902
7527
  // src/components/repeater/repeater.tsx
6903
- import * as React107 from "react";
6904
- import { useEffect as useEffect14, useState as useState18 } from "react";
7528
+ import * as React113 from "react";
7529
+ import { useEffect as useEffect16, useState as useState18 } from "react";
6905
7530
  import { CopyIcon as CopyIcon2, EyeIcon as EyeIcon2, EyeOffIcon as EyeOffIcon2, PlusIcon as PlusIcon4, XIcon as XIcon4 } from "@elementor/icons";
6906
7531
  import {
6907
- bindPopover as bindPopover7,
6908
- bindTrigger as bindTrigger6,
6909
- Box as Box26,
7532
+ bindPopover as bindPopover8,
7533
+ bindTrigger as bindTrigger7,
7534
+ Box as Box27,
6910
7535
  IconButton as IconButton10,
6911
7536
  Infotip as Infotip4,
6912
7537
  Tooltip as Tooltip12,
6913
- usePopupState as usePopupState8
7538
+ usePopupState as usePopupState10
6914
7539
  } from "@elementor/ui";
6915
- import { __ as __54 } from "@wordpress/i18n";
6916
- var SIZE10 = "tiny";
7540
+ import { __ as __55 } from "@wordpress/i18n";
7541
+ var SIZE11 = "tiny";
6917
7542
  var EMPTY_OPEN_ITEM2 = -1;
6918
7543
  var Repeater3 = ({
6919
7544
  label,
@@ -6993,20 +7618,20 @@ var Repeater3 = ({
6993
7618
  };
6994
7619
  const isButtonDisabled = disabled || disableAddItemButton;
6995
7620
  const shouldShowInfotip = isButtonDisabled && addButtonInfotipContent;
6996
- const addButton = /* @__PURE__ */ React107.createElement(
7621
+ const addButton = /* @__PURE__ */ React113.createElement(
6997
7622
  IconButton10,
6998
7623
  {
6999
- size: SIZE10,
7624
+ size: SIZE11,
7000
7625
  sx: {
7001
7626
  ml: "auto"
7002
7627
  },
7003
7628
  disabled: isButtonDisabled,
7004
7629
  onClick: addRepeaterItem,
7005
- "aria-label": __54("Add item", "elementor")
7630
+ "aria-label": __55("Add item", "elementor")
7006
7631
  },
7007
- /* @__PURE__ */ React107.createElement(PlusIcon4, { fontSize: SIZE10 })
7632
+ /* @__PURE__ */ React113.createElement(PlusIcon4, { fontSize: SIZE11 })
7008
7633
  );
7009
- return /* @__PURE__ */ React107.createElement(SectionContent, { gap: 2 }, /* @__PURE__ */ React107.createElement(RepeaterHeader, { label, adornment: ControlAdornments }, shouldShowInfotip ? /* @__PURE__ */ React107.createElement(
7634
+ return /* @__PURE__ */ React113.createElement(SectionContent, { gap: 2 }, /* @__PURE__ */ React113.createElement(RepeaterHeader, { label, adornment: ControlAdornments }, shouldShowInfotip ? /* @__PURE__ */ React113.createElement(
7010
7635
  Infotip4,
7011
7636
  {
7012
7637
  placement: "right",
@@ -7014,20 +7639,20 @@ var Repeater3 = ({
7014
7639
  color: "secondary",
7015
7640
  slotProps: { popper: { sx: { width: 300 } } }
7016
7641
  },
7017
- /* @__PURE__ */ React107.createElement(Box26, { sx: { ...isButtonDisabled ? { cursor: "not-allowed" } : {} } }, addButton)
7018
- ) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */ React107.createElement(SortableProvider, { value: uniqueKeys, onChange: onChangeOrder }, uniqueKeys.map((key) => {
7642
+ /* @__PURE__ */ React113.createElement(Box27, { sx: { ...isButtonDisabled ? { cursor: "not-allowed" } : {} } }, addButton)
7643
+ ) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */ React113.createElement(SortableProvider, { value: uniqueKeys, onChange: onChangeOrder }, uniqueKeys.map((key) => {
7019
7644
  const index = uniqueKeys.indexOf(key);
7020
7645
  const value = items2[index];
7021
7646
  if (!value) {
7022
7647
  return null;
7023
7648
  }
7024
- return /* @__PURE__ */ React107.createElement(SortableItem, { id: key, key: `sortable-${key}`, disabled: !isSortable }, /* @__PURE__ */ React107.createElement(
7649
+ return /* @__PURE__ */ React113.createElement(SortableItem, { id: key, key: `sortable-${key}`, disabled: !isSortable }, /* @__PURE__ */ React113.createElement(
7025
7650
  RepeaterItem,
7026
7651
  {
7027
7652
  disabled,
7028
7653
  propDisabled: value?.disabled,
7029
- label: /* @__PURE__ */ React107.createElement(RepeaterItemLabelSlot, { value }, /* @__PURE__ */ React107.createElement(itemSettings.Label, { value, index })),
7030
- startIcon: /* @__PURE__ */ React107.createElement(RepeaterItemIconSlot, { value }, /* @__PURE__ */ React107.createElement(itemSettings.Icon, { value })),
7654
+ label: /* @__PURE__ */ React113.createElement(RepeaterItemLabelSlot, { value }, /* @__PURE__ */ React113.createElement(itemSettings.Label, { value, index })),
7655
+ startIcon: /* @__PURE__ */ React113.createElement(RepeaterItemIconSlot, { value }, /* @__PURE__ */ React113.createElement(itemSettings.Icon, { value })),
7031
7656
  removeItem: () => removeRepeaterItem(index),
7032
7657
  duplicateItem: () => duplicateRepeaterItem(index),
7033
7658
  toggleDisableItem: () => toggleDisableRepeaterItem(index),
@@ -7039,7 +7664,7 @@ var Repeater3 = ({
7039
7664
  actions: itemSettings.actions,
7040
7665
  value
7041
7666
  },
7042
- (props) => /* @__PURE__ */ React107.createElement(
7667
+ (props) => /* @__PURE__ */ React113.createElement(
7043
7668
  itemSettings.Content,
7044
7669
  {
7045
7670
  ...props,
@@ -7069,27 +7694,27 @@ var RepeaterItem = ({
7069
7694
  value
7070
7695
  }) => {
7071
7696
  const { popoverState, popoverProps, ref, setRef } = usePopover(openOnMount, onOpen);
7072
- const duplicateLabel = __54("Duplicate", "elementor");
7073
- const toggleLabel = propDisabled ? __54("Show", "elementor") : __54("Hide", "elementor");
7074
- const removeLabel = __54("Remove", "elementor");
7075
- return /* @__PURE__ */ React107.createElement(React107.Fragment, null, /* @__PURE__ */ React107.createElement(
7697
+ const duplicateLabel = __55("Duplicate", "elementor");
7698
+ const toggleLabel = propDisabled ? __55("Show", "elementor") : __55("Hide", "elementor");
7699
+ const removeLabel = __55("Remove", "elementor");
7700
+ return /* @__PURE__ */ React113.createElement(React113.Fragment, null, /* @__PURE__ */ React113.createElement(
7076
7701
  RepeaterTag,
7077
7702
  {
7078
7703
  disabled,
7079
7704
  label,
7080
7705
  ref: setRef,
7081
- "aria-label": __54("Open item", "elementor"),
7082
- ...bindTrigger6(popoverState),
7706
+ "aria-label": __55("Open item", "elementor"),
7707
+ ...bindTrigger7(popoverState),
7083
7708
  startIcon,
7084
- actions: /* @__PURE__ */ React107.createElement(React107.Fragment, null, showDuplicate && /* @__PURE__ */ React107.createElement(Tooltip12, { title: duplicateLabel, placement: "top" }, /* @__PURE__ */ React107.createElement(IconButton10, { size: SIZE10, onClick: duplicateItem, "aria-label": duplicateLabel }, /* @__PURE__ */ React107.createElement(CopyIcon2, { fontSize: SIZE10 }))), showToggle && /* @__PURE__ */ React107.createElement(Tooltip12, { title: toggleLabel, placement: "top" }, /* @__PURE__ */ React107.createElement(IconButton10, { size: SIZE10, onClick: toggleDisableItem, "aria-label": toggleLabel }, propDisabled ? /* @__PURE__ */ React107.createElement(EyeOffIcon2, { fontSize: SIZE10 }) : /* @__PURE__ */ React107.createElement(EyeIcon2, { fontSize: SIZE10 }))), actions?.(value), showRemove && /* @__PURE__ */ React107.createElement(Tooltip12, { title: removeLabel, placement: "top" }, /* @__PURE__ */ React107.createElement(IconButton10, { size: SIZE10, onClick: removeItem, "aria-label": removeLabel }, /* @__PURE__ */ React107.createElement(XIcon4, { fontSize: SIZE10 }))))
7709
+ actions: /* @__PURE__ */ React113.createElement(React113.Fragment, null, showDuplicate && /* @__PURE__ */ React113.createElement(Tooltip12, { title: duplicateLabel, placement: "top" }, /* @__PURE__ */ React113.createElement(IconButton10, { size: SIZE11, onClick: duplicateItem, "aria-label": duplicateLabel }, /* @__PURE__ */ React113.createElement(CopyIcon2, { fontSize: SIZE11 }))), showToggle && /* @__PURE__ */ React113.createElement(Tooltip12, { title: toggleLabel, placement: "top" }, /* @__PURE__ */ React113.createElement(IconButton10, { size: SIZE11, onClick: toggleDisableItem, "aria-label": toggleLabel }, propDisabled ? /* @__PURE__ */ React113.createElement(EyeOffIcon2, { fontSize: SIZE11 }) : /* @__PURE__ */ React113.createElement(EyeIcon2, { fontSize: SIZE11 }))), actions?.(value), showRemove && /* @__PURE__ */ React113.createElement(Tooltip12, { title: removeLabel, placement: "top" }, /* @__PURE__ */ React113.createElement(IconButton10, { size: SIZE11, onClick: removeItem, "aria-label": removeLabel }, /* @__PURE__ */ React113.createElement(XIcon4, { fontSize: SIZE11 }))))
7085
7710
  }
7086
- ), /* @__PURE__ */ React107.createElement(RepeaterPopover, { width: ref?.getBoundingClientRect().width, ...popoverProps, anchorEl: ref }, /* @__PURE__ */ React107.createElement(Box26, null, children({ anchorEl: ref }))));
7711
+ ), /* @__PURE__ */ React113.createElement(RepeaterPopover, { width: ref?.getBoundingClientRect().width, ...popoverProps, anchorEl: ref }, /* @__PURE__ */ React113.createElement(Box27, null, children({ anchorEl: ref }))));
7087
7712
  };
7088
7713
  var usePopover = (openOnMount, onOpen) => {
7089
7714
  const [ref, setRef] = useState18(null);
7090
- const popoverState = usePopupState8({ variant: "popover" });
7091
- const popoverProps = bindPopover7(popoverState);
7092
- useEffect14(() => {
7715
+ const popoverState = usePopupState10({ variant: "popover" });
7716
+ const popoverProps = bindPopover8(popoverState);
7717
+ useEffect16(() => {
7093
7718
  if (openOnMount && ref) {
7094
7719
  popoverState.open(ref);
7095
7720
  onOpen?.();
@@ -7104,8 +7729,8 @@ var usePopover = (openOnMount, onOpen) => {
7104
7729
  };
7105
7730
 
7106
7731
  // src/components/inline-editor-toolbar.tsx
7107
- import * as React109 from "react";
7108
- import { useMemo as useMemo15, useRef as useRef28, useState as useState19 } from "react";
7732
+ import * as React115 from "react";
7733
+ import { useMemo as useMemo16, useRef as useRef29, useState as useState19 } from "react";
7109
7734
  import { getContainer, getElementSetting } from "@elementor/editor-elements";
7110
7735
  import {
7111
7736
  BoldIcon,
@@ -7118,23 +7743,23 @@ import {
7118
7743
  UnderlineIcon
7119
7744
  } from "@elementor/icons";
7120
7745
  import {
7121
- Box as Box27,
7746
+ Box as Box28,
7122
7747
  IconButton as IconButton11,
7123
7748
  ToggleButton as ToggleButton3,
7124
7749
  ToggleButtonGroup as ToggleButtonGroup2,
7125
7750
  toggleButtonGroupClasses,
7126
7751
  Tooltip as Tooltip14,
7127
- usePopupState as usePopupState9
7752
+ usePopupState as usePopupState11
7128
7753
  } from "@elementor/ui";
7129
7754
  import { useEditorState } from "@tiptap/react";
7130
- import { __ as __56 } from "@wordpress/i18n";
7755
+ import { __ as __57 } from "@wordpress/i18n";
7131
7756
 
7132
7757
  // src/components/url-popover.tsx
7133
- import * as React108 from "react";
7134
- import { useEffect as useEffect15, useRef as useRef27 } from "react";
7758
+ import * as React114 from "react";
7759
+ import { useEffect as useEffect17, useRef as useRef28 } from "react";
7135
7760
  import { ExternalLinkIcon } from "@elementor/icons";
7136
- import { bindPopover as bindPopover8, Popover as Popover7, Stack as Stack20, TextField as TextField9, ToggleButton as ToggleButton2, Tooltip as Tooltip13 } from "@elementor/ui";
7137
- import { __ as __55 } from "@wordpress/i18n";
7761
+ import { bindPopover as bindPopover9, Popover as Popover8, Stack as Stack20, TextField as TextField10, ToggleButton as ToggleButton2, Tooltip as Tooltip13 } from "@elementor/ui";
7762
+ import { __ as __56 } from "@wordpress/i18n";
7138
7763
  var UrlPopover = ({
7139
7764
  popupState,
7140
7765
  restoreValue,
@@ -7144,8 +7769,8 @@ var UrlPopover = ({
7144
7769
  openInNewTab,
7145
7770
  onToggleNewTab
7146
7771
  }) => {
7147
- const inputRef = useRef27(null);
7148
- useEffect15(() => {
7772
+ const inputRef = useRef28(null);
7773
+ useEffect17(() => {
7149
7774
  if (popupState.isOpen) {
7150
7775
  requestAnimationFrame(() => inputRef.current?.focus());
7151
7776
  }
@@ -7154,41 +7779,41 @@ var UrlPopover = ({
7154
7779
  restoreValue();
7155
7780
  popupState.close();
7156
7781
  };
7157
- return /* @__PURE__ */ React108.createElement(
7158
- Popover7,
7782
+ return /* @__PURE__ */ React114.createElement(
7783
+ Popover8,
7159
7784
  {
7160
7785
  slotProps: {
7161
7786
  paper: { sx: { borderRadius: "16px", width: anchorRef.current?.offsetWidth + "px", marginTop: -1 } }
7162
7787
  },
7163
- ...bindPopover8(popupState),
7788
+ ...bindPopover9(popupState),
7164
7789
  anchorOrigin: { vertical: "top", horizontal: "left" },
7165
7790
  transformOrigin: { vertical: "top", horizontal: "left" },
7166
7791
  onClose: handleClose
7167
7792
  },
7168
- /* @__PURE__ */ React108.createElement(Stack20, { direction: "row", alignItems: "center", gap: 1, sx: { p: 1.5 } }, /* @__PURE__ */ React108.createElement(
7169
- TextField9,
7793
+ /* @__PURE__ */ React114.createElement(Stack20, { direction: "row", alignItems: "center", gap: 1, sx: { p: 1.5 } }, /* @__PURE__ */ React114.createElement(
7794
+ TextField10,
7170
7795
  {
7171
7796
  value,
7172
7797
  onChange,
7173
7798
  size: "tiny",
7174
7799
  fullWidth: true,
7175
- placeholder: __55("Type a URL", "elementor"),
7800
+ placeholder: __56("Type a URL", "elementor"),
7176
7801
  inputProps: { ref: inputRef },
7177
7802
  color: "secondary",
7178
7803
  InputProps: { sx: { borderRadius: "8px" } },
7179
7804
  onKeyUp: (event) => event.key === "Enter" && handleClose()
7180
7805
  }
7181
- ), /* @__PURE__ */ React108.createElement(Tooltip13, { title: __55("Open in a new tab", "elementor") }, /* @__PURE__ */ React108.createElement(
7806
+ ), /* @__PURE__ */ React114.createElement(Tooltip13, { title: __56("Open in a new tab", "elementor") }, /* @__PURE__ */ React114.createElement(
7182
7807
  ToggleButton2,
7183
7808
  {
7184
7809
  size: "tiny",
7185
7810
  value: "newTab",
7186
7811
  selected: openInNewTab,
7187
7812
  onClick: onToggleNewTab,
7188
- "aria-label": __55("Open in a new tab", "elementor"),
7813
+ "aria-label": __56("Open in a new tab", "elementor"),
7189
7814
  sx: { borderRadius: "8px" }
7190
7815
  },
7191
- /* @__PURE__ */ React108.createElement(ExternalLinkIcon, { fontSize: "tiny" })
7816
+ /* @__PURE__ */ React114.createElement(ExternalLinkIcon, { fontSize: "tiny" })
7192
7817
  )))
7193
7818
  );
7194
7819
  };
@@ -7197,14 +7822,14 @@ var UrlPopover = ({
7197
7822
  var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7198
7823
  const [urlValue, setUrlValue] = useState19("");
7199
7824
  const [openInNewTab, setOpenInNewTab] = useState19(false);
7200
- const toolbarRef = useRef28(null);
7201
- const linkPopupState = usePopupState9({ variant: "popover" });
7825
+ const toolbarRef = useRef29(null);
7826
+ const linkPopupState = usePopupState11({ variant: "popover" });
7202
7827
  const isElementClickable = elementId ? checkIfElementIsClickable(elementId) : false;
7203
7828
  const editorState = useEditorState({
7204
7829
  editor,
7205
7830
  selector: (ctx) => possibleFormats.filter((format) => ctx.editor.isActive(format))
7206
7831
  });
7207
- const formatButtonsList = useMemo15(() => {
7832
+ const formatButtonsList = useMemo16(() => {
7208
7833
  const buttons = Object.values(formatButtons);
7209
7834
  if (isElementClickable) {
7210
7835
  return buttons.filter((button) => button.action !== "link");
@@ -7241,11 +7866,11 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7241
7866
  }
7242
7867
  linkPopupState.close();
7243
7868
  };
7244
- React109.useEffect(() => {
7869
+ React115.useEffect(() => {
7245
7870
  editor?.commands?.focus();
7246
7871
  }, [editor]);
7247
- return /* @__PURE__ */ React109.createElement(
7248
- Box27,
7872
+ return /* @__PURE__ */ React115.createElement(
7873
+ Box28,
7249
7874
  {
7250
7875
  ref: toolbarRef,
7251
7876
  sx: {
@@ -7261,8 +7886,8 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7261
7886
  ...sx
7262
7887
  }
7263
7888
  },
7264
- /* @__PURE__ */ React109.createElement(Tooltip14, { title: clearButton.label, placement: "top", sx: { borderRadius: "8px" } }, /* @__PURE__ */ React109.createElement(IconButton11, { "aria-label": clearButton.label, onClick: () => clearButton.method(editor), size: "tiny" }, clearButton.icon)),
7265
- /* @__PURE__ */ React109.createElement(
7889
+ /* @__PURE__ */ React115.createElement(Tooltip14, { title: clearButton.label, placement: "top", sx: { borderRadius: "8px" } }, /* @__PURE__ */ React115.createElement(IconButton11, { "aria-label": clearButton.label, onClick: () => clearButton.method(editor), size: "tiny" }, clearButton.icon)),
7890
+ /* @__PURE__ */ React115.createElement(
7266
7891
  ToggleButtonGroup2,
7267
7892
  {
7268
7893
  value: editorState,
@@ -7284,7 +7909,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7284
7909
  }
7285
7910
  }
7286
7911
  },
7287
- formatButtonsList.map((button) => /* @__PURE__ */ React109.createElement(Tooltip14, { title: button.label, key: button.action, placement: "top" }, /* @__PURE__ */ React109.createElement(
7912
+ formatButtonsList.map((button) => /* @__PURE__ */ React115.createElement(Tooltip14, { title: button.label, key: button.action, placement: "top" }, /* @__PURE__ */ React115.createElement(
7288
7913
  ToggleButton3,
7289
7914
  {
7290
7915
  value: button.action,
@@ -7302,7 +7927,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7302
7927
  button.icon
7303
7928
  )))
7304
7929
  ),
7305
- /* @__PURE__ */ React109.createElement(
7930
+ /* @__PURE__ */ React115.createElement(
7306
7931
  UrlPopover,
7307
7932
  {
7308
7933
  popupState: linkPopupState,
@@ -7325,64 +7950,64 @@ var checkIfElementIsClickable = (elementId) => {
7325
7950
  };
7326
7951
  var toolbarButtons = {
7327
7952
  clear: {
7328
- label: __56("Clear", "elementor"),
7329
- icon: /* @__PURE__ */ React109.createElement(MinusIcon2, { fontSize: "tiny" }),
7953
+ label: __57("Clear", "elementor"),
7954
+ icon: /* @__PURE__ */ React115.createElement(MinusIcon2, { fontSize: "tiny" }),
7330
7955
  action: "clear",
7331
7956
  method: (editor) => {
7332
7957
  editor.chain().focus().clearNodes().unsetAllMarks().run();
7333
7958
  }
7334
7959
  },
7335
7960
  bold: {
7336
- label: __56("Bold", "elementor"),
7337
- icon: /* @__PURE__ */ React109.createElement(BoldIcon, { fontSize: "tiny" }),
7961
+ label: __57("Bold", "elementor"),
7962
+ icon: /* @__PURE__ */ React115.createElement(BoldIcon, { fontSize: "tiny" }),
7338
7963
  action: "bold",
7339
7964
  method: (editor) => {
7340
7965
  editor.chain().focus().toggleBold().run();
7341
7966
  }
7342
7967
  },
7343
7968
  italic: {
7344
- label: __56("Italic", "elementor"),
7345
- icon: /* @__PURE__ */ React109.createElement(ItalicIcon, { fontSize: "tiny" }),
7969
+ label: __57("Italic", "elementor"),
7970
+ icon: /* @__PURE__ */ React115.createElement(ItalicIcon, { fontSize: "tiny" }),
7346
7971
  action: "italic",
7347
7972
  method: (editor) => {
7348
7973
  editor.chain().focus().toggleItalic().run();
7349
7974
  }
7350
7975
  },
7351
7976
  underline: {
7352
- label: __56("Underline", "elementor"),
7353
- icon: /* @__PURE__ */ React109.createElement(UnderlineIcon, { fontSize: "tiny" }),
7977
+ label: __57("Underline", "elementor"),
7978
+ icon: /* @__PURE__ */ React115.createElement(UnderlineIcon, { fontSize: "tiny" }),
7354
7979
  action: "underline",
7355
7980
  method: (editor) => {
7356
7981
  editor.chain().focus().toggleUnderline().run();
7357
7982
  }
7358
7983
  },
7359
7984
  strike: {
7360
- label: __56("Strikethrough", "elementor"),
7361
- icon: /* @__PURE__ */ React109.createElement(StrikethroughIcon, { fontSize: "tiny" }),
7985
+ label: __57("Strikethrough", "elementor"),
7986
+ icon: /* @__PURE__ */ React115.createElement(StrikethroughIcon, { fontSize: "tiny" }),
7362
7987
  action: "strike",
7363
7988
  method: (editor) => {
7364
7989
  editor.chain().focus().toggleStrike().run();
7365
7990
  }
7366
7991
  },
7367
7992
  superscript: {
7368
- label: __56("Superscript", "elementor"),
7369
- icon: /* @__PURE__ */ React109.createElement(SuperscriptIcon, { fontSize: "tiny" }),
7993
+ label: __57("Superscript", "elementor"),
7994
+ icon: /* @__PURE__ */ React115.createElement(SuperscriptIcon, { fontSize: "tiny" }),
7370
7995
  action: "superscript",
7371
7996
  method: (editor) => {
7372
7997
  editor.chain().focus().toggleSuperscript().run();
7373
7998
  }
7374
7999
  },
7375
8000
  subscript: {
7376
- label: __56("Subscript", "elementor"),
7377
- icon: /* @__PURE__ */ React109.createElement(SubscriptIcon, { fontSize: "tiny" }),
8001
+ label: __57("Subscript", "elementor"),
8002
+ icon: /* @__PURE__ */ React115.createElement(SubscriptIcon, { fontSize: "tiny" }),
7378
8003
  action: "subscript",
7379
8004
  method: (editor) => {
7380
8005
  editor.chain().focus().toggleSubscript().run();
7381
8006
  }
7382
8007
  },
7383
8008
  link: {
7384
- label: __56("Link", "elementor"),
7385
- icon: /* @__PURE__ */ React109.createElement(LinkIcon3, { fontSize: "tiny" }),
8009
+ label: __57("Link", "elementor"),
8010
+ icon: /* @__PURE__ */ React115.createElement(LinkIcon3, { fontSize: "tiny" }),
7386
8011
  action: "link",
7387
8012
  method: null
7388
8013
  }
@@ -7391,13 +8016,13 @@ var { clear: clearButton, ...formatButtons } = toolbarButtons;
7391
8016
  var possibleFormats = Object.keys(formatButtons);
7392
8017
 
7393
8018
  // src/components/size/unstable-size-field.tsx
7394
- import * as React112 from "react";
7395
- import { InputAdornment as InputAdornment5 } from "@elementor/ui";
8019
+ import * as React118 from "react";
8020
+ import { InputAdornment as InputAdornment6 } from "@elementor/ui";
7396
8021
 
7397
8022
  // src/hooks/use-size-value.ts
7398
8023
  var DEFAULT_UNIT2 = "px";
7399
- var DEFAULT_SIZE2 = "";
7400
- var useSizeValue = (externalValue, onChange, defaultUnit) => {
8024
+ var DEFAULT_SIZE3 = "";
8025
+ var useSizeValue2 = (externalValue, onChange, defaultUnit) => {
7401
8026
  const [sizeValue, setSizeValue] = useSyncExternalState({
7402
8027
  external: externalValue,
7403
8028
  setExternal: (newState) => {
@@ -7406,7 +8031,7 @@ var useSizeValue = (externalValue, onChange, defaultUnit) => {
7406
8031
  }
7407
8032
  },
7408
8033
  persistWhen: (newState) => differsFromExternal(newState, externalValue),
7409
- fallback: () => ({ size: DEFAULT_SIZE2, unit: defaultUnit ?? DEFAULT_UNIT2 })
8034
+ fallback: () => ({ size: DEFAULT_SIZE3, unit: defaultUnit ?? DEFAULT_UNIT2 })
7410
8035
  });
7411
8036
  const setSize = (value) => {
7412
8037
  const newState = {
@@ -7434,44 +8059,44 @@ var differsFromExternal = (newState, externalState) => {
7434
8059
  };
7435
8060
 
7436
8061
  // src/components/size/unit-select.tsx
7437
- import * as React110 from "react";
7438
- import { useId as useId3 } from "react";
7439
- import { MenuListItem as MenuListItem7 } from "@elementor/editor-ui";
7440
- import { bindMenu as bindMenu2, bindTrigger as bindTrigger7, Button as Button6, Menu as Menu3, styled as styled10, usePopupState as usePopupState10 } from "@elementor/ui";
7441
- var menuItemContentStyles = {
8062
+ import * as React116 from "react";
8063
+ import { useId as useId4 } from "react";
8064
+ import { MenuListItem as MenuListItem8 } from "@elementor/editor-ui";
8065
+ import { bindMenu as bindMenu3, bindTrigger as bindTrigger8, Button as Button7, Menu as Menu4, styled as styled11, usePopupState as usePopupState12 } from "@elementor/ui";
8066
+ var menuItemContentStyles2 = {
7442
8067
  display: "flex",
7443
8068
  flexDirection: "column",
7444
8069
  justifyContent: "center"
7445
8070
  };
7446
8071
  var UnitSelect = ({ value, showPrimaryColor, onClick, options }) => {
7447
- const popupState = usePopupState10({
8072
+ const popupState = usePopupState12({
7448
8073
  variant: "popover",
7449
- popupId: useId3()
8074
+ popupId: useId4()
7450
8075
  });
7451
8076
  const handleMenuItemClick = (index) => {
7452
8077
  onClick(options[index]);
7453
8078
  popupState.close();
7454
8079
  };
7455
- return /* @__PURE__ */ React110.createElement(React110.Fragment, null, /* @__PURE__ */ React110.createElement(StyledButton2, { isPrimaryColor: showPrimaryColor, size: "small", ...bindTrigger7(popupState) }, value), /* @__PURE__ */ React110.createElement(Menu3, { MenuListProps: { dense: true }, ...bindMenu2(popupState) }, options.map((option, index) => /* @__PURE__ */ React110.createElement(
7456
- MenuListItem7,
8080
+ return /* @__PURE__ */ React116.createElement(React116.Fragment, null, /* @__PURE__ */ React116.createElement(StyledButton3, { isPrimaryColor: showPrimaryColor, size: "small", ...bindTrigger8(popupState) }, value), /* @__PURE__ */ React116.createElement(Menu4, { MenuListProps: { dense: true }, ...bindMenu3(popupState) }, options.map((option, index) => /* @__PURE__ */ React116.createElement(
8081
+ MenuListItem8,
7457
8082
  {
7458
8083
  key: option,
7459
8084
  onClick: () => handleMenuItemClick(index),
7460
8085
  primaryTypographyProps: {
7461
8086
  variant: "caption",
7462
8087
  sx: {
7463
- ...menuItemContentStyles,
8088
+ ...menuItemContentStyles2,
7464
8089
  lineHeight: "1"
7465
8090
  }
7466
8091
  },
7467
8092
  menuItemTextProps: {
7468
- sx: menuItemContentStyles
8093
+ sx: menuItemContentStyles2
7469
8094
  }
7470
8095
  },
7471
8096
  option.toUpperCase()
7472
8097
  ))));
7473
8098
  };
7474
- var StyledButton2 = styled10(Button6, {
8099
+ var StyledButton3 = styled11(Button7, {
7475
8100
  shouldForwardProp: (prop) => prop !== "isPrimaryColor"
7476
8101
  })(({ isPrimaryColor, theme }) => ({
7477
8102
  color: isPrimaryColor ? theme.palette.text.primary : theme.palette.text.tertiary,
@@ -7481,11 +8106,11 @@ var StyledButton2 = styled10(Button6, {
7481
8106
  }));
7482
8107
 
7483
8108
  // src/components/size/unstable-size-input.tsx
7484
- import * as React111 from "react";
7485
- import { forwardRef as forwardRef12 } from "react";
7486
- var UnstableSizeInput = forwardRef12(
8109
+ import * as React117 from "react";
8110
+ import { forwardRef as forwardRef13 } from "react";
8111
+ var UnstableSizeInput = forwardRef13(
7487
8112
  ({ type, value, onChange, onKeyDown, onKeyUp, InputProps, onBlur, focused, disabled }, ref) => {
7488
- return /* @__PURE__ */ React111.createElement(
8113
+ return /* @__PURE__ */ React117.createElement(
7489
8114
  NumberInput,
7490
8115
  {
7491
8116
  ref,
@@ -7500,12 +8125,12 @@ var UnstableSizeInput = forwardRef12(
7500
8125
  onInput: onChange,
7501
8126
  onBlur,
7502
8127
  InputProps,
7503
- sx: getCursorStyle(InputProps?.readOnly ?? false)
8128
+ sx: getCursorStyle2(InputProps?.readOnly ?? false)
7504
8129
  }
7505
8130
  );
7506
8131
  }
7507
8132
  );
7508
- var getCursorStyle = (readOnly) => ({
8133
+ var getCursorStyle2 = (readOnly) => ({
7509
8134
  input: { cursor: readOnly ? "default !important" : void 0 }
7510
8135
  });
7511
8136
 
@@ -7519,11 +8144,11 @@ var UnstableSizeField = ({
7519
8144
  defaultUnit,
7520
8145
  startIcon
7521
8146
  }) => {
7522
- const { size, unit, setSize, setUnit } = useSizeValue(value, onChange, defaultUnit);
7523
- const shouldHighlightUnit = () => {
8147
+ const { size, unit, setSize, setUnit } = useSizeValue2(value, onChange, defaultUnit);
8148
+ const shouldHighlightUnit2 = () => {
7524
8149
  return hasValue(size);
7525
8150
  };
7526
- return /* @__PURE__ */ React112.createElement(
8151
+ return /* @__PURE__ */ React118.createElement(
7527
8152
  UnstableSizeInput,
7528
8153
  {
7529
8154
  type: "number",
@@ -7532,14 +8157,14 @@ var UnstableSizeField = ({
7532
8157
  onChange: (event) => setSize(event.target.value),
7533
8158
  InputProps: {
7534
8159
  ...InputProps,
7535
- startAdornment: startIcon && /* @__PURE__ */ React112.createElement(InputAdornment5, { position: "start" }, startIcon),
7536
- endAdornment: /* @__PURE__ */ React112.createElement(InputAdornment5, { position: "end" }, /* @__PURE__ */ React112.createElement(
8160
+ startAdornment: startIcon && /* @__PURE__ */ React118.createElement(InputAdornment6, { position: "start" }, startIcon),
8161
+ endAdornment: /* @__PURE__ */ React118.createElement(InputAdornment6, { position: "end" }, /* @__PURE__ */ React118.createElement(
7537
8162
  UnitSelect,
7538
8163
  {
7539
8164
  options: units2,
7540
8165
  value: unit,
7541
8166
  onClick: setUnit,
7542
- showPrimaryColor: shouldHighlightUnit()
8167
+ showPrimaryColor: shouldHighlightUnit2()
7543
8168
  }
7544
8169
  ))
7545
8170
  }
@@ -7551,7 +8176,7 @@ var hasValue = (value) => {
7551
8176
  };
7552
8177
 
7553
8178
  // src/hooks/use-font-families.ts
7554
- import { useMemo as useMemo16 } from "react";
8179
+ import { useMemo as useMemo17 } from "react";
7555
8180
  import { getElementorConfig } from "@elementor/editor-v1-adapters";
7556
8181
  var getFontControlConfig = () => {
7557
8182
  const { controls } = getElementorConfig();
@@ -7559,7 +8184,7 @@ var getFontControlConfig = () => {
7559
8184
  };
7560
8185
  var useFontFamilies = () => {
7561
8186
  const { groups, options } = getFontControlConfig();
7562
- return useMemo16(() => {
8187
+ return useMemo17(() => {
7563
8188
  if (!groups || !options) {
7564
8189
  return [];
7565
8190
  }
@@ -7624,6 +8249,7 @@ export {
7624
8249
  Repeater3 as Repeater,
7625
8250
  SelectControl,
7626
8251
  SelectControlWrapper,
8252
+ SizeComponent,
7627
8253
  SizeControl,
7628
8254
  StrokeControl,
7629
8255
  SvgMediaControl,
@@ -7635,6 +8261,7 @@ export {
7635
8261
  TransformRepeaterControl,
7636
8262
  TransformSettingsControl,
7637
8263
  TransitionRepeaterControl,
8264
+ UnstableSizeControl,
7638
8265
  UnstableSizeField,
7639
8266
  UrlControl,
7640
8267
  VideoMediaControl,