@elementor/editor-controls 4.0.0-609 → 4.0.0-621

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
@@ -531,17 +531,55 @@ var TextAreaControl = createControl(({ placeholder, ariaLabel }) => {
531
531
 
532
532
  // src/controls/size-control.tsx
533
533
  import * as React20 from "react";
534
- import { useEffect as useEffect3, useMemo as useMemo2 } from "react";
534
+ import { useEffect as useEffect4, useMemo as useMemo2 } from "react";
535
535
  import { sizePropTypeUtil as sizePropTypeUtil2 } from "@elementor/editor-props";
536
536
  import { useActiveBreakpoint } from "@elementor/editor-responsive";
537
537
  import { usePopupState as usePopupState2 } from "@elementor/ui";
538
538
 
539
539
  // src/components/size-control/size-input.tsx
540
540
  import * as React18 from "react";
541
- import { useRef } from "react";
542
541
  import { MathFunctionIcon } from "@elementor/icons";
543
542
  import { Box, InputAdornment as InputAdornment2 } from "@elementor/ui";
544
543
 
544
+ // src/hooks/use-typing-buffer.ts
545
+ import { useEffect, useRef } from "react";
546
+ function useTypingBuffer(options = {}) {
547
+ const { limit = 3, timeout = 600 } = options;
548
+ const inputBufferRef = useRef("");
549
+ const timeoutRef = useRef(null);
550
+ const appendKey = (key) => {
551
+ inputBufferRef.current = (inputBufferRef.current + key).slice(-limit);
552
+ if (timeoutRef.current) {
553
+ clearTimeout(timeoutRef.current);
554
+ }
555
+ timeoutRef.current = setTimeout(() => {
556
+ inputBufferRef.current = "";
557
+ timeoutRef.current = null;
558
+ }, timeout);
559
+ return inputBufferRef.current;
560
+ };
561
+ const startsWith = (haystack, needle) => {
562
+ if (3 < haystack.length && 2 > needle.length) {
563
+ return false;
564
+ }
565
+ return haystack.startsWith(needle);
566
+ };
567
+ useEffect(() => {
568
+ return () => {
569
+ inputBufferRef.current = "";
570
+ if (timeoutRef.current) {
571
+ clearTimeout(timeoutRef.current);
572
+ timeoutRef.current = null;
573
+ }
574
+ };
575
+ }, []);
576
+ return {
577
+ buffer: inputBufferRef.current,
578
+ appendKey,
579
+ startsWith
580
+ };
581
+ }
582
+
545
583
  // src/utils/size-control.ts
546
584
  var lengthUnits = ["px", "%", "em", "rem", "vw", "vh", "ch"];
547
585
  var angleUnits = ["deg", "rad", "grad", "turn"];
@@ -722,7 +760,6 @@ var StyledButton = styled(Button2, {
722
760
  }));
723
761
 
724
762
  // src/components/size-control/size-input.tsx
725
- var RESTRICTED_KEYBOARD_SHORTCUT_UNITS = ["auto"];
726
763
  var SizeInput = ({
727
764
  units: units2,
728
765
  handleUnitChange,
@@ -740,19 +777,28 @@ var SizeInput = ({
740
777
  id,
741
778
  ariaLabel
742
779
  }) => {
743
- const unitInputBufferRef = useRef("");
780
+ const { appendKey, startsWith } = useTypingBuffer();
744
781
  const inputType = isUnitExtendedOption(unit) ? "text" : "number";
745
782
  const inputValue = !isUnitExtendedOption(unit) && Number.isNaN(size) ? "" : size ?? "";
746
- const handleKeyUp = (event) => {
747
- const { key } = event;
783
+ const handleKeyDown = (event) => {
784
+ const { key, altKey, ctrlKey, metaKey } = event;
785
+ if (altKey || ctrlKey || metaKey) {
786
+ return;
787
+ }
788
+ if (isUnitExtendedOption(unit) && !isNaN(Number(key))) {
789
+ const defaultUnit = units2?.[0];
790
+ if (defaultUnit) {
791
+ handleUnitChange(defaultUnit);
792
+ }
793
+ return;
794
+ }
748
795
  if (!/^[a-zA-Z%]$/.test(key)) {
749
796
  return;
750
797
  }
751
798
  event.preventDefault();
752
799
  const newChar = key.toLowerCase();
753
- const updatedBuffer = (unitInputBufferRef.current + newChar).slice(-3);
754
- unitInputBufferRef.current = updatedBuffer;
755
- const matchedUnit = units2.find((u) => !RESTRICTED_KEYBOARD_SHORTCUT_UNITS.includes(u) && u.includes(updatedBuffer)) || units2.find((u) => !RESTRICTED_KEYBOARD_SHORTCUT_UNITS.includes(u) && u.startsWith(newChar)) || units2.find((u) => !RESTRICTED_KEYBOARD_SHORTCUT_UNITS.includes(u) && u.includes(newChar));
800
+ const updatedBuffer = appendKey(newChar);
801
+ const matchedUnit = units2.find((u) => startsWith(u, updatedBuffer));
756
802
  if (matchedUnit) {
757
803
  handleUnitChange(matchedUnit);
758
804
  }
@@ -794,7 +840,7 @@ var SizeInput = ({
794
840
  type: inputType,
795
841
  value: inputValue,
796
842
  onChange: handleSizeChange,
797
- onKeyUp: handleKeyUp,
843
+ onKeyDown: handleKeyDown,
798
844
  onBlur,
799
845
  InputProps,
800
846
  inputProps: { min, step: "any", "aria-label": ariaLabel },
@@ -806,7 +852,7 @@ var SizeInput = ({
806
852
 
807
853
  // src/components/text-field-popover.tsx
808
854
  import * as React19 from "react";
809
- import { useEffect, useRef as useRef2 } from "react";
855
+ import { useEffect as useEffect2, useRef as useRef2 } from "react";
810
856
  import { PopoverHeader } from "@elementor/editor-ui";
811
857
  import { MathFunctionIcon as MathFunctionIcon2 } from "@elementor/icons";
812
858
  import { bindPopover, Popover, TextField as TextField4 } from "@elementor/ui";
@@ -815,7 +861,7 @@ var SIZE = "tiny";
815
861
  var TextFieldPopover = (props) => {
816
862
  const { popupState, restoreValue, anchorRef, value, onChange } = props;
817
863
  const inputRef = useRef2(null);
818
- useEffect(() => {
864
+ useEffect2(() => {
819
865
  if (popupState.isOpen) {
820
866
  requestAnimationFrame(() => {
821
867
  if (inputRef.current) {
@@ -824,6 +870,11 @@ var TextFieldPopover = (props) => {
824
870
  });
825
871
  }
826
872
  }, [popupState.isOpen]);
873
+ const handleKeyPress = (event) => {
874
+ if (event.key.toLowerCase() === "enter") {
875
+ handleClose();
876
+ }
877
+ };
827
878
  const handleClose = () => {
828
879
  restoreValue();
829
880
  popupState.close();
@@ -858,6 +909,7 @@ var TextFieldPopover = (props) => {
858
909
  {
859
910
  value,
860
911
  onChange,
912
+ onKeyPress: handleKeyPress,
861
913
  size: "tiny",
862
914
  type: "text",
863
915
  fullWidth: true,
@@ -885,7 +937,7 @@ function useSizeExtendedOptions(options, disableCustom) {
885
937
  }
886
938
 
887
939
  // src/hooks/use-sync-external-state.tsx
888
- import { useEffect as useEffect2, useState as useState3 } from "react";
940
+ import { useEffect as useEffect3, useState as useState3 } from "react";
889
941
  var useSyncExternalState = ({
890
942
  external,
891
943
  setExternal,
@@ -905,7 +957,7 @@ var useSyncExternalState = ({
905
957
  return externalValue;
906
958
  }
907
959
  const [internal, setInternal] = useState3(toInternal(external, null));
908
- useEffect2(() => {
960
+ useEffect3(() => {
909
961
  setInternal((prevInternal) => toInternal(external, prevInternal));
910
962
  }, [external]);
911
963
  const setInternalValue = (setter, options, meta) => {
@@ -1005,7 +1057,7 @@ var SizeControl = createControl(
1005
1057
  popupState.close();
1006
1058
  }
1007
1059
  }, [popupState]);
1008
- useEffect3(() => {
1060
+ useEffect4(() => {
1009
1061
  maybeClosePopup();
1010
1062
  }, [activeBreakpoint]);
1011
1063
  return /* @__PURE__ */ React20.createElement(React20.Fragment, null, /* @__PURE__ */ React20.createElement(
@@ -2148,7 +2200,7 @@ function ensureFilterConfig(name) {
2148
2200
 
2149
2201
  // src/controls/select-control-wrapper.tsx
2150
2202
  import * as React49 from "react";
2151
- import { useEffect as useEffect5, useState as useState5 } from "react";
2203
+ import { useEffect as useEffect6, useState as useState5 } from "react";
2152
2204
  var getOffCanvasElements = () => {
2153
2205
  const extendedWindow = window;
2154
2206
  const documentId = extendedWindow.elementor.config.document.id;
@@ -2167,7 +2219,7 @@ var collectionMethods = {
2167
2219
  };
2168
2220
  var useDynamicOptions = (collectionId, initialOptions) => {
2169
2221
  const [options, setOptions] = useState5(initialOptions ?? []);
2170
- useEffect5(() => {
2222
+ useEffect6(() => {
2171
2223
  if (!collectionId || !collectionMethods[collectionId]) {
2172
2224
  setOptions(initialOptions ?? []);
2173
2225
  return;
@@ -2223,7 +2275,7 @@ import { stringPropTypeUtil as stringPropTypeUtil5 } from "@elementor/editor-pro
2223
2275
 
2224
2276
  // src/components/control-toggle-button-group.tsx
2225
2277
  import * as React52 from "react";
2226
- import { useEffect as useEffect6, useMemo as useMemo5, useRef as useRef7, useState as useState6 } from "react";
2278
+ import { useEffect as useEffect7, useMemo as useMemo5, useRef as useRef7, useState as useState6 } from "react";
2227
2279
  import { ChevronDownIcon } from "@elementor/icons";
2228
2280
  import {
2229
2281
  ListItemText,
@@ -2466,7 +2518,7 @@ var usePreviewButton = (items2, value) => {
2466
2518
  const [previewButton, setPreviewButton] = useState6(
2467
2519
  items2.find((item) => item.value === value) ?? items2[0]
2468
2520
  );
2469
- useEffect6(() => {
2521
+ useEffect7(() => {
2470
2522
  const selectedButton = items2.find((item) => item.value === value);
2471
2523
  if (selectedButton) {
2472
2524
  setPreviewButton(selectedButton);
@@ -2550,6 +2602,12 @@ import * as React55 from "react";
2550
2602
  import { numberPropTypeUtil } from "@elementor/editor-props";
2551
2603
  import { InputAdornment as InputAdornment3 } from "@elementor/ui";
2552
2604
  var isEmptyOrNaN = (value) => value === null || value === void 0 || value === "" || Number.isNaN(Number(value));
2605
+ var renderSuffix = (propType) => {
2606
+ if (propType.meta?.suffix) {
2607
+ return /* @__PURE__ */ React55.createElement(InputAdornment3, { position: "end" }, propType.meta.suffix);
2608
+ }
2609
+ return /* @__PURE__ */ React55.createElement(React55.Fragment, null);
2610
+ };
2553
2611
  var NumberControl = createControl(
2554
2612
  ({
2555
2613
  placeholder: labelPlaceholder,
@@ -2559,7 +2617,7 @@ var NumberControl = createControl(
2559
2617
  shouldForceInt = false,
2560
2618
  startIcon
2561
2619
  }) => {
2562
- const { value, setValue, placeholder, disabled, restoreValue } = useBoundProp(numberPropTypeUtil);
2620
+ const { value, setValue, placeholder, disabled, restoreValue, propType } = useBoundProp(numberPropTypeUtil);
2563
2621
  const handleChange = (event) => {
2564
2622
  const {
2565
2623
  value: eventValue,
@@ -2590,7 +2648,8 @@ var NumberControl = createControl(
2590
2648
  placeholder: labelPlaceholder ?? (isEmptyOrNaN(placeholder) ? "" : String(placeholder)),
2591
2649
  inputProps: { step, min },
2592
2650
  InputProps: {
2593
- startAdornment: startIcon ? /* @__PURE__ */ React55.createElement(InputAdornment3, { position: "start", disabled }, startIcon) : void 0
2651
+ startAdornment: startIcon ? /* @__PURE__ */ React55.createElement(InputAdornment3, { position: "start", disabled }, startIcon) : void 0,
2652
+ endAdornment: renderSuffix(propType)
2594
2653
  }
2595
2654
  }
2596
2655
  ));
@@ -2892,7 +2951,7 @@ import { __ as __20 } from "@wordpress/i18n";
2892
2951
 
2893
2952
  // src/components/item-selector.tsx
2894
2953
  import * as React58 from "react";
2895
- import { useCallback as useCallback2, useEffect as useEffect7, useState as useState8 } from "react";
2954
+ import { useCallback as useCallback2, useEffect as useEffect8, useState as useState8 } from "react";
2896
2955
  import { PopoverBody, PopoverHeader as PopoverHeader2, PopoverMenuList, SearchField } from "@elementor/editor-ui";
2897
2956
  import { Box as Box8, Divider as Divider2, Link, Stack as Stack9, Typography as Typography4 } from "@elementor/ui";
2898
2957
  import { debounce } from "@elementor/utils";
@@ -3046,7 +3105,7 @@ var ItemList = ({
3046
3105
  };
3047
3106
  var useDebounce = (fn, delay) => {
3048
3107
  const [debouncedFn] = useState8(() => debounce(fn, delay));
3049
- useEffect7(() => () => debouncedFn.cancel(), [debouncedFn]);
3108
+ useEffect8(() => () => debouncedFn.cancel(), [debouncedFn]);
3050
3109
  return debouncedFn;
3051
3110
  };
3052
3111
 
@@ -3147,7 +3206,7 @@ var UrlControl = createControl(
3147
3206
 
3148
3207
  // src/controls/link-control.tsx
3149
3208
  import * as React65 from "react";
3150
- import { useEffect as useEffect8, useMemo as useMemo8, useState as useState10 } from "react";
3209
+ import { useEffect as useEffect9, useMemo as useMemo8, useState as useState10 } from "react";
3151
3210
  import { getLinkInLinkRestriction } from "@elementor/editor-elements";
3152
3211
  import { linkPropTypeUtil } from "@elementor/editor-props";
3153
3212
  import { MinusIcon, PlusIcon as PlusIcon2 } from "@elementor/icons";
@@ -3516,7 +3575,7 @@ var LinkControl = createControl((props) => {
3516
3575
  }, 300),
3517
3576
  [elementId, isActive, value]
3518
3577
  );
3519
- useEffect8(() => {
3578
+ useEffect9(() => {
3520
3579
  debouncedCheckRestriction();
3521
3580
  const handleInlineLinkChanged = (event) => {
3522
3581
  const customEvent = event;
@@ -3799,7 +3858,7 @@ var Control4 = ({
3799
3858
 
3800
3859
  // src/controls/aspect-ratio-control.tsx
3801
3860
  import * as React69 from "react";
3802
- import { useEffect as useEffect9, useState as useState12 } from "react";
3861
+ import { useEffect as useEffect10, useState as useState12 } from "react";
3803
3862
  import { stringPropTypeUtil as stringPropTypeUtil9 } from "@elementor/editor-props";
3804
3863
  import { MenuListItem as MenuListItem4 } from "@elementor/editor-ui";
3805
3864
  import { ArrowsMoveHorizontalIcon, ArrowsMoveVerticalIcon } from "@elementor/icons";
@@ -3817,7 +3876,13 @@ var RATIO_OPTIONS = [
3817
3876
  ];
3818
3877
  var CUSTOM_RATIO = "custom";
3819
3878
  var AspectRatioControl = createControl(({ label }) => {
3820
- const { value: aspectRatioValue, setValue: setAspectRatioValue, disabled } = useBoundProp(stringPropTypeUtil9);
3879
+ const {
3880
+ value: currentPropValue,
3881
+ setValue: setAspectRatioValue,
3882
+ disabled,
3883
+ placeholder: externalPlaceholder
3884
+ } = useBoundProp(stringPropTypeUtil9);
3885
+ const aspectRatioValue = currentPropValue ?? externalPlaceholder;
3821
3886
  const isCustomSelected = aspectRatioValue && !RATIO_OPTIONS.some((option) => option.value === aspectRatioValue);
3822
3887
  const [initialWidth, initialHeight] = isCustomSelected ? aspectRatioValue.split("/") : ["", ""];
3823
3888
  const [isCustom, setIsCustom] = useState12(isCustomSelected);
@@ -3826,7 +3891,7 @@ var AspectRatioControl = createControl(({ label }) => {
3826
3891
  const [selectedValue, setSelectedValue] = useState12(
3827
3892
  isCustomSelected ? CUSTOM_RATIO : aspectRatioValue || ""
3828
3893
  );
3829
- useEffect9(() => {
3894
+ useEffect10(() => {
3830
3895
  const isCustomValue = aspectRatioValue && !RATIO_OPTIONS.some((option) => option.value === aspectRatioValue);
3831
3896
  if (isCustomValue) {
3832
3897
  const [width, height] = aspectRatioValue.split("/");
@@ -3865,6 +3930,8 @@ var AspectRatioControl = createControl(({ label }) => {
3865
3930
  setAspectRatioValue(`${customWidth}/${newHeight}`);
3866
3931
  }
3867
3932
  };
3933
+ const lookup = currentPropValue ?? externalPlaceholder;
3934
+ const selectedOption = RATIO_OPTIONS.find((option) => option.value === lookup);
3868
3935
  return /* @__PURE__ */ React69.createElement(ControlActions, null, /* @__PURE__ */ React69.createElement(Stack12, { direction: "column", gap: 2 }, /* @__PURE__ */ React69.createElement(Grid12, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React69.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React69.createElement(ControlLabel, null, label)), /* @__PURE__ */ React69.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React69.createElement(
3869
3936
  Select3,
3870
3937
  {
@@ -3874,6 +3941,7 @@ var AspectRatioControl = createControl(({ label }) => {
3874
3941
  disabled,
3875
3942
  value: selectedValue,
3876
3943
  onChange: handleSelectChange,
3944
+ renderValue: isCustomSelected ? void 0 : () => selectedOption?.label,
3877
3945
  fullWidth: true
3878
3946
  },
3879
3947
  [...RATIO_OPTIONS, { label: __26("Custom", "elementor"), value: CUSTOM_RATIO }].map(
@@ -4086,30 +4154,117 @@ var SvgMediaControl = createControl(() => {
4086
4154
  ))));
4087
4155
  });
4088
4156
 
4157
+ // src/controls/video-media-control.tsx
4158
+ import * as React72 from "react";
4159
+ import { videoSrcPropTypeUtil } from "@elementor/editor-props";
4160
+ import { UploadIcon as UploadIcon3 } from "@elementor/icons";
4161
+ import { Button as Button5, Card as Card3, CardMedia as CardMedia3, CardOverlay as CardOverlay3, CircularProgress as CircularProgress4, Stack as Stack14 } from "@elementor/ui";
4162
+ import { useWpMediaAttachment as useWpMediaAttachment3, useWpMediaFrame as useWpMediaFrame3 } from "@elementor/wp-media";
4163
+ import { __ as __29 } from "@wordpress/i18n";
4164
+ var PLACEHOLDER_IMAGE = window.elementorCommon?.config?.urls?.assets + "/shapes/play-triangle.svg";
4165
+ var VideoMediaControl = createControl(() => {
4166
+ const { value, setValue } = useBoundProp(videoSrcPropTypeUtil);
4167
+ const { id, url } = value ?? {};
4168
+ const { data: attachment, isFetching } = useWpMediaAttachment3(id?.value || null);
4169
+ const videoUrl = attachment?.url ?? url?.value ?? null;
4170
+ const { open } = useWpMediaFrame3({
4171
+ mediaTypes: ["video"],
4172
+ multiple: false,
4173
+ selected: id?.value || null,
4174
+ onSelect: (selectedAttachment) => {
4175
+ setValue({
4176
+ id: {
4177
+ $$type: "video-attachment-id",
4178
+ value: selectedAttachment.id
4179
+ },
4180
+ url: null
4181
+ });
4182
+ }
4183
+ });
4184
+ return /* @__PURE__ */ React72.createElement(ControlActions, null, /* @__PURE__ */ React72.createElement(Card3, { variant: "outlined" }, /* @__PURE__ */ React72.createElement(
4185
+ CardMedia3,
4186
+ {
4187
+ sx: {
4188
+ height: 140,
4189
+ backgroundColor: "white",
4190
+ backgroundSize: "8px 8px",
4191
+ backgroundPosition: "0 0, 4px 4px",
4192
+ backgroundRepeat: "repeat",
4193
+ backgroundImage: `${TILES_GRADIENT_FORMULA}, ${TILES_GRADIENT_FORMULA}`,
4194
+ display: "flex",
4195
+ justifyContent: "center",
4196
+ alignItems: "center"
4197
+ }
4198
+ },
4199
+ /* @__PURE__ */ React72.createElement(VideoPreview, { isFetching, videoUrl })
4200
+ ), /* @__PURE__ */ React72.createElement(CardOverlay3, null, /* @__PURE__ */ React72.createElement(Stack14, { gap: 1 }, /* @__PURE__ */ React72.createElement(
4201
+ Button5,
4202
+ {
4203
+ size: "tiny",
4204
+ color: "inherit",
4205
+ variant: "outlined",
4206
+ onClick: () => open({ mode: "browse" })
4207
+ },
4208
+ __29("Select video", "elementor")
4209
+ ), /* @__PURE__ */ React72.createElement(
4210
+ Button5,
4211
+ {
4212
+ size: "tiny",
4213
+ variant: "text",
4214
+ color: "inherit",
4215
+ startIcon: /* @__PURE__ */ React72.createElement(UploadIcon3, null),
4216
+ onClick: () => open({ mode: "upload" })
4217
+ },
4218
+ __29("Upload", "elementor")
4219
+ )))));
4220
+ });
4221
+ var VideoPreview = ({ isFetching = false, videoUrl }) => {
4222
+ if (isFetching) {
4223
+ return /* @__PURE__ */ React72.createElement(CircularProgress4, null);
4224
+ }
4225
+ if (videoUrl) {
4226
+ return /* @__PURE__ */ React72.createElement(
4227
+ "video",
4228
+ {
4229
+ src: videoUrl,
4230
+ muted: true,
4231
+ preload: "metadata",
4232
+ style: {
4233
+ width: "100%",
4234
+ height: "100%",
4235
+ objectFit: "cover",
4236
+ pointerEvents: "none"
4237
+ }
4238
+ }
4239
+ );
4240
+ }
4241
+ return /* @__PURE__ */ React72.createElement("img", { src: PLACEHOLDER_IMAGE, alt: "No video selected" });
4242
+ };
4243
+
4089
4244
  // src/controls/background-control/background-control.tsx
4090
- import * as React78 from "react";
4245
+ import * as React79 from "react";
4091
4246
  import { backgroundPropTypeUtil } from "@elementor/editor-props";
4092
4247
  import { Grid as Grid17 } from "@elementor/ui";
4093
- import { __ as __34 } from "@wordpress/i18n";
4248
+ import { __ as __35 } from "@wordpress/i18n";
4094
4249
 
4095
4250
  // src/controls/background-control/background-overlay/background-overlay-repeater-control.tsx
4096
- import * as React77 from "react";
4251
+ import * as React78 from "react";
4097
4252
  import {
4098
4253
  backgroundColorOverlayPropTypeUtil as backgroundColorOverlayPropTypeUtil2,
4099
4254
  backgroundImageOverlayPropTypeUtil as backgroundImageOverlayPropTypeUtil2,
4100
4255
  backgroundOverlayPropTypeUtil,
4101
4256
  colorPropTypeUtil as colorPropTypeUtil3
4102
4257
  } from "@elementor/editor-props";
4103
- import { Box as Box13, CardMedia as CardMedia3, styled as styled8, Tab, TabPanel, Tabs, UnstableColorIndicator as UnstableColorIndicator3 } from "@elementor/ui";
4104
- import { useWpMediaAttachment as useWpMediaAttachment3 } from "@elementor/wp-media";
4105
- import { __ as __33 } from "@wordpress/i18n";
4258
+ import { Box as Box13, CardMedia as CardMedia4, styled as styled8, Tab, TabPanel, Tabs, UnstableColorIndicator as UnstableColorIndicator3 } from "@elementor/ui";
4259
+ import { useWpMediaAttachment as useWpMediaAttachment4 } from "@elementor/wp-media";
4260
+ import { __ as __34 } from "@wordpress/i18n";
4106
4261
 
4107
4262
  // src/env.ts
4108
4263
  import { parseEnv } from "@elementor/env";
4109
4264
  var { env } = parseEnv("@elementor/editor-controls");
4110
4265
 
4111
4266
  // src/controls/background-control/background-gradient-color-control.tsx
4112
- import * as React72 from "react";
4267
+ import * as React73 from "react";
4113
4268
  import {
4114
4269
  backgroundGradientOverlayPropTypeUtil,
4115
4270
  colorPropTypeUtil as colorPropTypeUtil2,
@@ -4156,7 +4311,7 @@ var BackgroundGradientColorControl = createControl(() => {
4156
4311
  positions: positions?.value.split(" ")
4157
4312
  };
4158
4313
  };
4159
- return /* @__PURE__ */ React72.createElement(
4314
+ return /* @__PURE__ */ React73.createElement(
4160
4315
  UnstableGradientBox,
4161
4316
  {
4162
4317
  sx: { width: "auto", padding: 1.5 },
@@ -4181,47 +4336,47 @@ var initialBackgroundGradientOverlay = backgroundGradientOverlayPropTypeUtil.cre
4181
4336
  });
4182
4337
 
4183
4338
  // src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-attachment.tsx
4184
- import * as React73 from "react";
4339
+ import * as React74 from "react";
4185
4340
  import { PinIcon, PinnedOffIcon } from "@elementor/icons";
4186
4341
  import { Grid as Grid13 } from "@elementor/ui";
4187
- import { __ as __29 } from "@wordpress/i18n";
4342
+ import { __ as __30 } from "@wordpress/i18n";
4188
4343
  var attachmentControlOptions = [
4189
4344
  {
4190
4345
  value: "fixed",
4191
- label: __29("Fixed", "elementor"),
4192
- renderContent: ({ size }) => /* @__PURE__ */ React73.createElement(PinIcon, { fontSize: size }),
4346
+ label: __30("Fixed", "elementor"),
4347
+ renderContent: ({ size }) => /* @__PURE__ */ React74.createElement(PinIcon, { fontSize: size }),
4193
4348
  showTooltip: true
4194
4349
  },
4195
4350
  {
4196
4351
  value: "scroll",
4197
- label: __29("Scroll", "elementor"),
4198
- renderContent: ({ size }) => /* @__PURE__ */ React73.createElement(PinnedOffIcon, { fontSize: size }),
4352
+ label: __30("Scroll", "elementor"),
4353
+ renderContent: ({ size }) => /* @__PURE__ */ React74.createElement(PinnedOffIcon, { fontSize: size }),
4199
4354
  showTooltip: true
4200
4355
  }
4201
4356
  ];
4202
4357
  var BackgroundImageOverlayAttachment = () => {
4203
- return /* @__PURE__ */ React73.createElement(PopoverGridContainer, null, /* @__PURE__ */ React73.createElement(Grid13, { item: true, xs: 6 }, /* @__PURE__ */ React73.createElement(ControlFormLabel, null, __29("Attachment", "elementor"))), /* @__PURE__ */ React73.createElement(Grid13, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end", overflow: "hidden" } }, /* @__PURE__ */ React73.createElement(ToggleControl, { options: attachmentControlOptions })));
4358
+ return /* @__PURE__ */ React74.createElement(PopoverGridContainer, null, /* @__PURE__ */ React74.createElement(Grid13, { item: true, xs: 6 }, /* @__PURE__ */ React74.createElement(ControlFormLabel, null, __30("Attachment", "elementor"))), /* @__PURE__ */ React74.createElement(Grid13, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end", overflow: "hidden" } }, /* @__PURE__ */ React74.createElement(ToggleControl, { options: attachmentControlOptions })));
4204
4359
  };
4205
4360
 
4206
4361
  // src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-position.tsx
4207
- import * as React74 from "react";
4362
+ import * as React75 from "react";
4208
4363
  import { useRef as useRef11 } from "react";
4209
4364
  import { backgroundImagePositionOffsetPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil11 } from "@elementor/editor-props";
4210
4365
  import { MenuListItem as MenuListItem5 } from "@elementor/editor-ui";
4211
4366
  import { LetterXIcon, LetterYIcon } from "@elementor/icons";
4212
4367
  import { Grid as Grid14, Select as Select4 } from "@elementor/ui";
4213
- import { __ as __30 } from "@wordpress/i18n";
4368
+ import { __ as __31 } from "@wordpress/i18n";
4214
4369
  var backgroundPositionOptions = [
4215
- { label: __30("Center center", "elementor"), value: "center center" },
4216
- { label: __30("Center left", "elementor"), value: "center left" },
4217
- { label: __30("Center right", "elementor"), value: "center right" },
4218
- { label: __30("Top center", "elementor"), value: "top center" },
4219
- { label: __30("Top left", "elementor"), value: "top left" },
4220
- { label: __30("Top right", "elementor"), value: "top right" },
4221
- { label: __30("Bottom center", "elementor"), value: "bottom center" },
4222
- { label: __30("Bottom left", "elementor"), value: "bottom left" },
4223
- { label: __30("Bottom right", "elementor"), value: "bottom right" },
4224
- { label: __30("Custom", "elementor"), value: "custom" }
4370
+ { label: __31("Center center", "elementor"), value: "center center" },
4371
+ { label: __31("Center left", "elementor"), value: "center left" },
4372
+ { label: __31("Center right", "elementor"), value: "center right" },
4373
+ { label: __31("Top center", "elementor"), value: "top center" },
4374
+ { label: __31("Top left", "elementor"), value: "top left" },
4375
+ { label: __31("Top right", "elementor"), value: "top right" },
4376
+ { label: __31("Bottom center", "elementor"), value: "bottom center" },
4377
+ { label: __31("Bottom left", "elementor"), value: "bottom left" },
4378
+ { label: __31("Bottom right", "elementor"), value: "bottom right" },
4379
+ { label: __31("Custom", "elementor"), value: "custom" }
4225
4380
  ];
4226
4381
  var BackgroundImageOverlayPosition = () => {
4227
4382
  const backgroundImageOffsetContext = useBoundProp(backgroundImagePositionOffsetPropTypeUtil);
@@ -4236,7 +4391,7 @@ var BackgroundImageOverlayPosition = () => {
4236
4391
  stringPropContext.setValue(value);
4237
4392
  }
4238
4393
  };
4239
- return /* @__PURE__ */ React74.createElement(Grid14, { container: true, spacing: 1.5 }, /* @__PURE__ */ React74.createElement(Grid14, { item: true, xs: 12 }, /* @__PURE__ */ React74.createElement(PopoverGridContainer, null, /* @__PURE__ */ React74.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React74.createElement(ControlFormLabel, null, __30("Position", "elementor"))), /* @__PURE__ */ React74.createElement(Grid14, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end", overflow: "hidden" } }, /* @__PURE__ */ React74.createElement(ControlActions, null, /* @__PURE__ */ React74.createElement(
4394
+ return /* @__PURE__ */ React75.createElement(Grid14, { container: true, spacing: 1.5 }, /* @__PURE__ */ React75.createElement(Grid14, { item: true, xs: 12 }, /* @__PURE__ */ React75.createElement(PopoverGridContainer, null, /* @__PURE__ */ React75.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React75.createElement(ControlFormLabel, null, __31("Position", "elementor"))), /* @__PURE__ */ React75.createElement(Grid14, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end", overflow: "hidden" } }, /* @__PURE__ */ React75.createElement(ControlActions, null, /* @__PURE__ */ React75.createElement(
4240
4395
  Select4,
4241
4396
  {
4242
4397
  fullWidth: true,
@@ -4245,18 +4400,18 @@ var BackgroundImageOverlayPosition = () => {
4245
4400
  disabled: stringPropContext.disabled,
4246
4401
  value: (backgroundImageOffsetContext.value ? "custom" : stringPropContext.value) ?? ""
4247
4402
  },
4248
- backgroundPositionOptions.map(({ label, value }) => /* @__PURE__ */ React74.createElement(MenuListItem5, { key: value, value: value ?? "" }, label))
4249
- ))))), isCustom ? /* @__PURE__ */ React74.createElement(PropProvider, { ...backgroundImageOffsetContext }, /* @__PURE__ */ React74.createElement(Grid14, { item: true, xs: 12 }, /* @__PURE__ */ React74.createElement(Grid14, { container: true, spacing: 1.5, ref: rowRef }, /* @__PURE__ */ React74.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React74.createElement(PropKeyProvider, { bind: "x" }, /* @__PURE__ */ React74.createElement(
4403
+ backgroundPositionOptions.map(({ label, value }) => /* @__PURE__ */ React75.createElement(MenuListItem5, { key: value, value: value ?? "" }, label))
4404
+ ))))), isCustom ? /* @__PURE__ */ React75.createElement(PropProvider, { ...backgroundImageOffsetContext }, /* @__PURE__ */ React75.createElement(Grid14, { item: true, xs: 12 }, /* @__PURE__ */ React75.createElement(Grid14, { container: true, spacing: 1.5, ref: rowRef }, /* @__PURE__ */ React75.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React75.createElement(PropKeyProvider, { bind: "x" }, /* @__PURE__ */ React75.createElement(
4250
4405
  SizeControl,
4251
4406
  {
4252
- startIcon: /* @__PURE__ */ React74.createElement(LetterXIcon, { fontSize: "tiny" }),
4407
+ startIcon: /* @__PURE__ */ React75.createElement(LetterXIcon, { fontSize: "tiny" }),
4253
4408
  anchorRef: rowRef,
4254
4409
  min: -Number.MAX_SAFE_INTEGER
4255
4410
  }
4256
- ))), /* @__PURE__ */ React74.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React74.createElement(PropKeyProvider, { bind: "y" }, /* @__PURE__ */ React74.createElement(
4411
+ ))), /* @__PURE__ */ React75.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React75.createElement(PropKeyProvider, { bind: "y" }, /* @__PURE__ */ React75.createElement(
4257
4412
  SizeControl,
4258
4413
  {
4259
- startIcon: /* @__PURE__ */ React74.createElement(LetterYIcon, { fontSize: "tiny" }),
4414
+ startIcon: /* @__PURE__ */ React75.createElement(LetterYIcon, { fontSize: "tiny" }),
4260
4415
  anchorRef: rowRef,
4261
4416
  min: -Number.MAX_SAFE_INTEGER
4262
4417
  }
@@ -4264,42 +4419,42 @@ var BackgroundImageOverlayPosition = () => {
4264
4419
  };
4265
4420
 
4266
4421
  // src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-repeat.tsx
4267
- import * as React75 from "react";
4422
+ import * as React76 from "react";
4268
4423
  import { DotsHorizontalIcon, DotsVerticalIcon, GridDotsIcon, XIcon as XIcon3 } from "@elementor/icons";
4269
4424
  import { Grid as Grid15 } from "@elementor/ui";
4270
- import { __ as __31 } from "@wordpress/i18n";
4425
+ import { __ as __32 } from "@wordpress/i18n";
4271
4426
  var repeatControlOptions = [
4272
4427
  {
4273
4428
  value: "repeat",
4274
- label: __31("Repeat", "elementor"),
4275
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(GridDotsIcon, { fontSize: size }),
4429
+ label: __32("Repeat", "elementor"),
4430
+ renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(GridDotsIcon, { fontSize: size }),
4276
4431
  showTooltip: true
4277
4432
  },
4278
4433
  {
4279
4434
  value: "repeat-x",
4280
- label: __31("Repeat-x", "elementor"),
4281
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(DotsHorizontalIcon, { fontSize: size }),
4435
+ label: __32("Repeat-x", "elementor"),
4436
+ renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(DotsHorizontalIcon, { fontSize: size }),
4282
4437
  showTooltip: true
4283
4438
  },
4284
4439
  {
4285
4440
  value: "repeat-y",
4286
- label: __31("Repeat-y", "elementor"),
4287
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(DotsVerticalIcon, { fontSize: size }),
4441
+ label: __32("Repeat-y", "elementor"),
4442
+ renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(DotsVerticalIcon, { fontSize: size }),
4288
4443
  showTooltip: true
4289
4444
  },
4290
4445
  {
4291
4446
  value: "no-repeat",
4292
- label: __31("No-repeat", "elementor"),
4293
- renderContent: ({ size }) => /* @__PURE__ */ React75.createElement(XIcon3, { fontSize: size }),
4447
+ label: __32("No-repeat", "elementor"),
4448
+ renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(XIcon3, { fontSize: size }),
4294
4449
  showTooltip: true
4295
4450
  }
4296
4451
  ];
4297
4452
  var BackgroundImageOverlayRepeat = () => {
4298
- return /* @__PURE__ */ React75.createElement(PopoverGridContainer, null, /* @__PURE__ */ React75.createElement(Grid15, { item: true, xs: 6 }, /* @__PURE__ */ React75.createElement(ControlFormLabel, null, __31("Repeat", "elementor"))), /* @__PURE__ */ React75.createElement(Grid15, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React75.createElement(ToggleControl, { options: repeatControlOptions })));
4453
+ return /* @__PURE__ */ React76.createElement(PopoverGridContainer, null, /* @__PURE__ */ React76.createElement(Grid15, { item: true, xs: 6 }, /* @__PURE__ */ React76.createElement(ControlFormLabel, null, __32("Repeat", "elementor"))), /* @__PURE__ */ React76.createElement(Grid15, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React76.createElement(ToggleControl, { options: repeatControlOptions })));
4299
4454
  };
4300
4455
 
4301
4456
  // src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-size.tsx
4302
- import * as React76 from "react";
4457
+ import * as React77 from "react";
4303
4458
  import { useRef as useRef12 } from "react";
4304
4459
  import { backgroundImageSizeScalePropTypeUtil, stringPropTypeUtil as stringPropTypeUtil12 } from "@elementor/editor-props";
4305
4460
  import {
@@ -4311,30 +4466,30 @@ import {
4311
4466
  PencilIcon
4312
4467
  } from "@elementor/icons";
4313
4468
  import { Grid as Grid16 } from "@elementor/ui";
4314
- import { __ as __32 } from "@wordpress/i18n";
4469
+ import { __ as __33 } from "@wordpress/i18n";
4315
4470
  var sizeControlOptions = [
4316
4471
  {
4317
4472
  value: "auto",
4318
- label: __32("Auto", "elementor"),
4319
- renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(LetterAIcon, { fontSize: size }),
4473
+ label: __33("Auto", "elementor"),
4474
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(LetterAIcon, { fontSize: size }),
4320
4475
  showTooltip: true
4321
4476
  },
4322
4477
  {
4323
4478
  value: "cover",
4324
- label: __32("Cover", "elementor"),
4325
- renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(ArrowsMaximizeIcon, { fontSize: size }),
4479
+ label: __33("Cover", "elementor"),
4480
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(ArrowsMaximizeIcon, { fontSize: size }),
4326
4481
  showTooltip: true
4327
4482
  },
4328
4483
  {
4329
4484
  value: "contain",
4330
- label: __32("Contain", "elementor"),
4331
- renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(ArrowBarBothIcon, { fontSize: size }),
4485
+ label: __33("Contain", "elementor"),
4486
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(ArrowBarBothIcon, { fontSize: size }),
4332
4487
  showTooltip: true
4333
4488
  },
4334
4489
  {
4335
4490
  value: "custom",
4336
- label: __32("Custom", "elementor"),
4337
- renderContent: ({ size }) => /* @__PURE__ */ React76.createElement(PencilIcon, { fontSize: size }),
4491
+ label: __33("Custom", "elementor"),
4492
+ renderContent: ({ size }) => /* @__PURE__ */ React77.createElement(PencilIcon, { fontSize: size }),
4338
4493
  showTooltip: true
4339
4494
  }
4340
4495
  ];
@@ -4350,7 +4505,7 @@ var BackgroundImageOverlaySize = () => {
4350
4505
  stringPropContext.setValue(size);
4351
4506
  }
4352
4507
  };
4353
- return /* @__PURE__ */ React76.createElement(Grid16, { container: true, spacing: 1.5 }, /* @__PURE__ */ React76.createElement(Grid16, { item: true, xs: 12 }, /* @__PURE__ */ React76.createElement(PopoverGridContainer, null, /* @__PURE__ */ React76.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React76.createElement(ControlFormLabel, null, __32("Size", "elementor"))), /* @__PURE__ */ React76.createElement(Grid16, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React76.createElement(
4508
+ return /* @__PURE__ */ React77.createElement(Grid16, { container: true, spacing: 1.5 }, /* @__PURE__ */ React77.createElement(Grid16, { item: true, xs: 12 }, /* @__PURE__ */ React77.createElement(PopoverGridContainer, null, /* @__PURE__ */ React77.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React77.createElement(ControlFormLabel, null, __33("Size", "elementor"))), /* @__PURE__ */ React77.createElement(Grid16, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React77.createElement(
4354
4509
  ControlToggleButtonGroup,
4355
4510
  {
4356
4511
  exclusive: true,
@@ -4359,17 +4514,17 @@ var BackgroundImageOverlaySize = () => {
4359
4514
  disabled: stringPropContext.disabled,
4360
4515
  value: backgroundImageScaleContext.value ? "custom" : stringPropContext.value
4361
4516
  }
4362
- )))), isCustom ? /* @__PURE__ */ React76.createElement(PropProvider, { ...backgroundImageScaleContext }, /* @__PURE__ */ React76.createElement(Grid16, { item: true, xs: 12, ref: rowRef }, /* @__PURE__ */ React76.createElement(PopoverGridContainer, null, /* @__PURE__ */ React76.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React76.createElement(PropKeyProvider, { bind: "width" }, /* @__PURE__ */ React76.createElement(
4517
+ )))), isCustom ? /* @__PURE__ */ React77.createElement(PropProvider, { ...backgroundImageScaleContext }, /* @__PURE__ */ React77.createElement(Grid16, { item: true, xs: 12, ref: rowRef }, /* @__PURE__ */ React77.createElement(PopoverGridContainer, null, /* @__PURE__ */ React77.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "width" }, /* @__PURE__ */ React77.createElement(
4363
4518
  SizeControl,
4364
4519
  {
4365
- startIcon: /* @__PURE__ */ React76.createElement(ArrowsMoveHorizontalIcon2, { fontSize: "tiny" }),
4520
+ startIcon: /* @__PURE__ */ React77.createElement(ArrowsMoveHorizontalIcon2, { fontSize: "tiny" }),
4366
4521
  extendedOptions: ["auto"],
4367
4522
  anchorRef: rowRef
4368
4523
  }
4369
- ))), /* @__PURE__ */ React76.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React76.createElement(PropKeyProvider, { bind: "height" }, /* @__PURE__ */ React76.createElement(
4524
+ ))), /* @__PURE__ */ React77.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "height" }, /* @__PURE__ */ React77.createElement(
4370
4525
  SizeControl,
4371
4526
  {
4372
- startIcon: /* @__PURE__ */ React76.createElement(ArrowsMoveVerticalIcon2, { fontSize: "tiny" }),
4527
+ startIcon: /* @__PURE__ */ React77.createElement(ArrowsMoveVerticalIcon2, { fontSize: "tiny" }),
4373
4528
  extendedOptions: ["auto"],
4374
4529
  anchorRef: rowRef
4375
4530
  }
@@ -4470,29 +4625,29 @@ var getInitialBackgroundOverlay = () => ({
4470
4625
  }
4471
4626
  });
4472
4627
  var backgroundResolutionOptions = [
4473
- { label: __33("Thumbnail - 150 x 150", "elementor"), value: "thumbnail" },
4474
- { label: __33("Medium - 300 x 300", "elementor"), value: "medium" },
4475
- { label: __33("Large 1024 x 1024", "elementor"), value: "large" },
4476
- { label: __33("Full", "elementor"), value: "full" }
4628
+ { label: __34("Thumbnail - 150 x 150", "elementor"), value: "thumbnail" },
4629
+ { label: __34("Medium - 300 x 300", "elementor"), value: "medium" },
4630
+ { label: __34("Large 1024 x 1024", "elementor"), value: "large" },
4631
+ { label: __34("Full", "elementor"), value: "full" }
4477
4632
  ];
4478
4633
  var BackgroundOverlayRepeaterControl = createControl(() => {
4479
4634
  const { propType, value: overlayValues, setValue } = useBoundProp(backgroundOverlayPropTypeUtil);
4480
- return /* @__PURE__ */ React77.createElement(PropProvider, { propType, value: overlayValues, setValue }, /* @__PURE__ */ React77.createElement(
4635
+ return /* @__PURE__ */ React78.createElement(PropProvider, { propType, value: overlayValues, setValue }, /* @__PURE__ */ React78.createElement(
4481
4636
  ControlRepeater,
4482
4637
  {
4483
4638
  initial: getInitialBackgroundOverlay(),
4484
4639
  propTypeUtil: backgroundOverlayPropTypeUtil
4485
4640
  },
4486
- /* @__PURE__ */ React77.createElement(RepeaterHeader, { label: __33("Overlay", "elementor") }, /* @__PURE__ */ React77.createElement(TooltipAddItemAction, { newItemIndex: 0 })),
4487
- /* @__PURE__ */ React77.createElement(ItemsContainer, null, /* @__PURE__ */ React77.createElement(
4641
+ /* @__PURE__ */ React78.createElement(RepeaterHeader, { label: __34("Overlay", "elementor") }, /* @__PURE__ */ React78.createElement(TooltipAddItemAction, { newItemIndex: 0 })),
4642
+ /* @__PURE__ */ React78.createElement(ItemsContainer, null, /* @__PURE__ */ React78.createElement(
4488
4643
  Item,
4489
4644
  {
4490
4645
  Icon: ItemIcon2,
4491
4646
  Label: ItemLabel2,
4492
- actions: /* @__PURE__ */ React77.createElement(React77.Fragment, null, /* @__PURE__ */ React77.createElement(DuplicateItemAction, null), /* @__PURE__ */ React77.createElement(DisableItemAction, null), /* @__PURE__ */ React77.createElement(RemoveItemAction, null))
4647
+ actions: /* @__PURE__ */ React78.createElement(React78.Fragment, null, /* @__PURE__ */ React78.createElement(DuplicateItemAction, null), /* @__PURE__ */ React78.createElement(DisableItemAction, null), /* @__PURE__ */ React78.createElement(RemoveItemAction, null))
4493
4648
  }
4494
4649
  )),
4495
- /* @__PURE__ */ React77.createElement(EditItemPopover, null, /* @__PURE__ */ React77.createElement(ItemContent, null))
4650
+ /* @__PURE__ */ React78.createElement(EditItemPopover, null, /* @__PURE__ */ React78.createElement(ItemContent, null))
4496
4651
  ));
4497
4652
  });
4498
4653
  var ItemContent = () => {
@@ -4502,27 +4657,27 @@ var ItemContent = () => {
4502
4657
  gradient: initialBackgroundGradientOverlay.value
4503
4658
  });
4504
4659
  const { rowRef } = useRepeaterContext();
4505
- return /* @__PURE__ */ React77.createElement(Box13, { sx: { width: "100%" } }, /* @__PURE__ */ React77.createElement(Box13, { sx: { borderBottom: 1, borderColor: "divider" } }, /* @__PURE__ */ React77.createElement(
4660
+ return /* @__PURE__ */ React78.createElement(Box13, { sx: { width: "100%" } }, /* @__PURE__ */ React78.createElement(Box13, { sx: { borderBottom: 1, borderColor: "divider" } }, /* @__PURE__ */ React78.createElement(
4506
4661
  Tabs,
4507
4662
  {
4508
4663
  size: "small",
4509
4664
  variant: "fullWidth",
4510
4665
  ...getTabsProps(),
4511
- "aria-label": __33("Background Overlay", "elementor")
4666
+ "aria-label": __34("Background Overlay", "elementor")
4512
4667
  },
4513
- /* @__PURE__ */ React77.createElement(Tab, { label: __33("Image", "elementor"), ...getTabProps("image") }),
4514
- /* @__PURE__ */ React77.createElement(Tab, { label: __33("Gradient", "elementor"), ...getTabProps("gradient") }),
4515
- /* @__PURE__ */ React77.createElement(Tab, { label: __33("Color", "elementor"), ...getTabProps("color") })
4516
- )), /* @__PURE__ */ React77.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("image") }, /* @__PURE__ */ React77.createElement(PopoverContent, null, /* @__PURE__ */ React77.createElement(ImageOverlayContent, null))), /* @__PURE__ */ React77.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("gradient") }, /* @__PURE__ */ React77.createElement(BackgroundGradientColorControl, null)), /* @__PURE__ */ React77.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("color") }, /* @__PURE__ */ React77.createElement(PopoverContent, null, /* @__PURE__ */ React77.createElement(ColorOverlayContent, { anchorEl: rowRef }))));
4668
+ /* @__PURE__ */ React78.createElement(Tab, { label: __34("Image", "elementor"), ...getTabProps("image") }),
4669
+ /* @__PURE__ */ React78.createElement(Tab, { label: __34("Gradient", "elementor"), ...getTabProps("gradient") }),
4670
+ /* @__PURE__ */ React78.createElement(Tab, { label: __34("Color", "elementor"), ...getTabProps("color") })
4671
+ )), /* @__PURE__ */ React78.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("image") }, /* @__PURE__ */ React78.createElement(PopoverContent, null, /* @__PURE__ */ React78.createElement(ImageOverlayContent, null))), /* @__PURE__ */ React78.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("gradient") }, /* @__PURE__ */ React78.createElement(BackgroundGradientColorControl, null)), /* @__PURE__ */ React78.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("color") }, /* @__PURE__ */ React78.createElement(PopoverContent, null, /* @__PURE__ */ React78.createElement(ColorOverlayContent, { anchorEl: rowRef }))));
4517
4672
  };
4518
4673
  var ItemIcon2 = ({ value }) => {
4519
4674
  switch (value.$$type) {
4520
4675
  case "background-image-overlay":
4521
- return /* @__PURE__ */ React77.createElement(ItemIconImage, { value });
4676
+ return /* @__PURE__ */ React78.createElement(ItemIconImage, { value });
4522
4677
  case "background-color-overlay":
4523
- return /* @__PURE__ */ React77.createElement(ItemIconColor, { value });
4678
+ return /* @__PURE__ */ React78.createElement(ItemIconColor, { value });
4524
4679
  case "background-gradient-overlay":
4525
- return /* @__PURE__ */ React77.createElement(ItemIconGradient, { value });
4680
+ return /* @__PURE__ */ React78.createElement(ItemIconGradient, { value });
4526
4681
  default:
4527
4682
  return null;
4528
4683
  }
@@ -4535,12 +4690,12 @@ var extractColorFrom = (prop) => {
4535
4690
  };
4536
4691
  var ItemIconColor = ({ value: prop }) => {
4537
4692
  const color = extractColorFrom(prop);
4538
- return /* @__PURE__ */ React77.createElement(StyledUnstableColorIndicator3, { size: "inherit", component: "span", value: color });
4693
+ return /* @__PURE__ */ React78.createElement(StyledUnstableColorIndicator3, { size: "inherit", component: "span", value: color });
4539
4694
  };
4540
4695
  var ItemIconImage = ({ value }) => {
4541
4696
  const { imageUrl } = useImage(value);
4542
- return /* @__PURE__ */ React77.createElement(
4543
- CardMedia3,
4697
+ return /* @__PURE__ */ React78.createElement(
4698
+ CardMedia4,
4544
4699
  {
4545
4700
  image: imageUrl,
4546
4701
  sx: (theme) => ({
@@ -4554,41 +4709,41 @@ var ItemIconImage = ({ value }) => {
4554
4709
  };
4555
4710
  var ItemIconGradient = ({ value }) => {
4556
4711
  const gradient = getGradientValue(value);
4557
- return /* @__PURE__ */ React77.createElement(StyledUnstableColorIndicator3, { size: "inherit", component: "span", value: gradient });
4712
+ return /* @__PURE__ */ React78.createElement(StyledUnstableColorIndicator3, { size: "inherit", component: "span", value: gradient });
4558
4713
  };
4559
4714
  var ItemLabel2 = ({ value }) => {
4560
4715
  switch (value.$$type) {
4561
4716
  case "background-image-overlay":
4562
- return /* @__PURE__ */ React77.createElement(ItemLabelImage, { value });
4717
+ return /* @__PURE__ */ React78.createElement(ItemLabelImage, { value });
4563
4718
  case "background-color-overlay":
4564
- return /* @__PURE__ */ React77.createElement(ItemLabelColor, { value });
4719
+ return /* @__PURE__ */ React78.createElement(ItemLabelColor, { value });
4565
4720
  case "background-gradient-overlay":
4566
- return /* @__PURE__ */ React77.createElement(ItemLabelGradient, { value });
4721
+ return /* @__PURE__ */ React78.createElement(ItemLabelGradient, { value });
4567
4722
  default:
4568
4723
  return null;
4569
4724
  }
4570
4725
  };
4571
4726
  var ItemLabelColor = ({ value: prop }) => {
4572
4727
  const color = extractColorFrom(prop);
4573
- return /* @__PURE__ */ React77.createElement("span", null, color);
4728
+ return /* @__PURE__ */ React78.createElement("span", null, color);
4574
4729
  };
4575
4730
  var ItemLabelImage = ({ value }) => {
4576
4731
  const { imageTitle } = useImage(value);
4577
- return /* @__PURE__ */ React77.createElement("span", null, imageTitle);
4732
+ return /* @__PURE__ */ React78.createElement("span", null, imageTitle);
4578
4733
  };
4579
4734
  var ItemLabelGradient = ({ value }) => {
4580
4735
  if (value.value.type.value === "linear") {
4581
- return /* @__PURE__ */ React77.createElement("span", null, __33("Linear Gradient", "elementor"));
4736
+ return /* @__PURE__ */ React78.createElement("span", null, __34("Linear Gradient", "elementor"));
4582
4737
  }
4583
- return /* @__PURE__ */ React77.createElement("span", null, __33("Radial Gradient", "elementor"));
4738
+ return /* @__PURE__ */ React78.createElement("span", null, __34("Radial Gradient", "elementor"));
4584
4739
  };
4585
4740
  var ColorOverlayContent = ({ anchorEl }) => {
4586
4741
  const propContext = useBoundProp(backgroundColorOverlayPropTypeUtil2);
4587
- return /* @__PURE__ */ React77.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "color" }, /* @__PURE__ */ React77.createElement(ColorControl, { anchorEl })));
4742
+ return /* @__PURE__ */ React78.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "color" }, /* @__PURE__ */ React78.createElement(ColorControl, { anchorEl })));
4588
4743
  };
4589
4744
  var ImageOverlayContent = () => {
4590
4745
  const propContext = useBoundProp(backgroundImageOverlayPropTypeUtil2);
4591
- return /* @__PURE__ */ React77.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "image" }, /* @__PURE__ */ React77.createElement(ImageControl, { sizes: backgroundResolutionOptions })), /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "position" }, /* @__PURE__ */ React77.createElement(BackgroundImageOverlayPosition, null)), /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "repeat" }, /* @__PURE__ */ React77.createElement(BackgroundImageOverlayRepeat, null)), /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "size" }, /* @__PURE__ */ React77.createElement(BackgroundImageOverlaySize, null)), /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind: "attachment" }, /* @__PURE__ */ React77.createElement(BackgroundImageOverlayAttachment, null)));
4746
+ return /* @__PURE__ */ React78.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "image" }, /* @__PURE__ */ React78.createElement(ImageControl, { sizes: backgroundResolutionOptions })), /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "position" }, /* @__PURE__ */ React78.createElement(BackgroundImageOverlayPosition, null)), /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "repeat" }, /* @__PURE__ */ React78.createElement(BackgroundImageOverlayRepeat, null)), /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "size" }, /* @__PURE__ */ React78.createElement(BackgroundImageOverlaySize, null)), /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "attachment" }, /* @__PURE__ */ React78.createElement(BackgroundImageOverlayAttachment, null)));
4592
4747
  };
4593
4748
  var StyledUnstableColorIndicator3 = styled8(UnstableColorIndicator3)(({ theme }) => ({
4594
4749
  height: "1rem",
@@ -4598,7 +4753,7 @@ var StyledUnstableColorIndicator3 = styled8(UnstableColorIndicator3)(({ theme })
4598
4753
  var useImage = (image) => {
4599
4754
  let imageTitle, imageUrl = null;
4600
4755
  const imageSrc = image?.value.image.value?.src.value;
4601
- const { data: attachment } = useWpMediaAttachment3(imageSrc.id?.value || null);
4756
+ const { data: attachment } = useWpMediaAttachment4(imageSrc.id?.value || null);
4602
4757
  if (imageSrc.id) {
4603
4758
  const imageFileTypeExtension = getFileExtensionFromFilename(attachment?.filename);
4604
4759
  imageTitle = `${attachment?.title}${imageFileTypeExtension}` || null;
@@ -4627,26 +4782,26 @@ var getGradientValue = (value) => {
4627
4782
 
4628
4783
  // src/controls/background-control/background-control.tsx
4629
4784
  var clipOptions = [
4630
- { label: __34("Full element", "elementor"), value: "border-box" },
4631
- { label: __34("Padding edges", "elementor"), value: "padding-box" },
4632
- { label: __34("Content edges", "elementor"), value: "content-box" },
4633
- { label: __34("Text", "elementor"), value: "text" }
4785
+ { label: __35("Full element", "elementor"), value: "border-box" },
4786
+ { label: __35("Padding edges", "elementor"), value: "padding-box" },
4787
+ { label: __35("Content edges", "elementor"), value: "content-box" },
4788
+ { label: __35("Text", "elementor"), value: "text" }
4634
4789
  ];
4635
- var colorLabel = __34("Color", "elementor");
4636
- var clipLabel = __34("Clipping", "elementor");
4790
+ var colorLabel = __35("Color", "elementor");
4791
+ var clipLabel = __35("Clipping", "elementor");
4637
4792
  var BackgroundControl = createControl(() => {
4638
4793
  const propContext = useBoundProp(backgroundPropTypeUtil);
4639
- return /* @__PURE__ */ React78.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "background-overlay" }, /* @__PURE__ */ React78.createElement(BackgroundOverlayRepeaterControl, null)), /* @__PURE__ */ React78.createElement(BackgroundColorField, null), /* @__PURE__ */ React78.createElement(BackgroundClipField, null));
4794
+ return /* @__PURE__ */ React79.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React79.createElement(PropKeyProvider, { bind: "background-overlay" }, /* @__PURE__ */ React79.createElement(BackgroundOverlayRepeaterControl, null)), /* @__PURE__ */ React79.createElement(BackgroundColorField, null), /* @__PURE__ */ React79.createElement(BackgroundClipField, null));
4640
4795
  });
4641
4796
  var BackgroundColorField = () => {
4642
- return /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "color" }, /* @__PURE__ */ React78.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React78.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(ControlLabel, null, colorLabel)), /* @__PURE__ */ React78.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(ColorControl, null))));
4797
+ return /* @__PURE__ */ React79.createElement(PropKeyProvider, { bind: "color" }, /* @__PURE__ */ React79.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React79.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React79.createElement(ControlLabel, null, colorLabel)), /* @__PURE__ */ React79.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React79.createElement(ColorControl, null))));
4643
4798
  };
4644
4799
  var BackgroundClipField = () => {
4645
- return /* @__PURE__ */ React78.createElement(PropKeyProvider, { bind: "clip" }, /* @__PURE__ */ React78.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React78.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(ControlLabel, null, clipLabel)), /* @__PURE__ */ React78.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(SelectControl, { options: clipOptions }))));
4800
+ return /* @__PURE__ */ React79.createElement(PropKeyProvider, { bind: "clip" }, /* @__PURE__ */ React79.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React79.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React79.createElement(ControlLabel, null, clipLabel)), /* @__PURE__ */ React79.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React79.createElement(SelectControl, { options: clipOptions }))));
4646
4801
  };
4647
4802
 
4648
4803
  // src/controls/repeatable-control.tsx
4649
- import * as React79 from "react";
4804
+ import * as React80 from "react";
4650
4805
  import { useMemo as useMemo9 } from "react";
4651
4806
  import { createArrayPropUtils } from "@elementor/editor-props";
4652
4807
  import { Box as Box14 } from "@elementor/ui";
@@ -4680,14 +4835,14 @@ var RepeatableControl = createControl(
4680
4835
  [childControlConfig, placeholder, patternLabel]
4681
4836
  );
4682
4837
  const { propType, value, setValue } = useBoundProp(childArrayPropTypeUtil2);
4683
- return /* @__PURE__ */ React79.createElement(PropProvider, { propType, value, setValue }, /* @__PURE__ */ React79.createElement(RepeatableControlContext.Provider, { value: contextValue }, /* @__PURE__ */ React79.createElement(
4838
+ return /* @__PURE__ */ React80.createElement(PropProvider, { propType, value, setValue }, /* @__PURE__ */ React80.createElement(RepeatableControlContext.Provider, { value: contextValue }, /* @__PURE__ */ React80.createElement(
4684
4839
  ControlRepeater,
4685
4840
  {
4686
4841
  initial: childPropTypeUtil.create(initialValues || null),
4687
4842
  propTypeUtil: childArrayPropTypeUtil2,
4688
4843
  isItemDisabled: isItemDisabled2
4689
4844
  },
4690
- /* @__PURE__ */ React79.createElement(RepeaterHeader, { label: repeaterLabel }, /* @__PURE__ */ React79.createElement(
4845
+ /* @__PURE__ */ React80.createElement(RepeaterHeader, { label: repeaterLabel }, /* @__PURE__ */ React80.createElement(
4691
4846
  TooltipAddItemAction,
4692
4847
  {
4693
4848
  ...addItemTooltipProps,
@@ -4695,22 +4850,22 @@ var RepeatableControl = createControl(
4695
4850
  ariaLabel: repeaterLabel
4696
4851
  }
4697
4852
  )),
4698
- /* @__PURE__ */ React79.createElement(ItemsContainer, { isSortable: false }, /* @__PURE__ */ React79.createElement(
4853
+ /* @__PURE__ */ React80.createElement(ItemsContainer, { isSortable: false }, /* @__PURE__ */ React80.createElement(
4699
4854
  Item,
4700
4855
  {
4701
4856
  Icon: ItemIcon3,
4702
4857
  Label: ItemLabel3,
4703
- actions: /* @__PURE__ */ React79.createElement(React79.Fragment, null, showDuplicate && /* @__PURE__ */ React79.createElement(DuplicateItemAction, null), showToggle && /* @__PURE__ */ React79.createElement(DisableItemAction, null), /* @__PURE__ */ React79.createElement(RemoveItemAction, null))
4858
+ actions: /* @__PURE__ */ React80.createElement(React80.Fragment, null, showDuplicate && /* @__PURE__ */ React80.createElement(DuplicateItemAction, null), showToggle && /* @__PURE__ */ React80.createElement(DisableItemAction, null), /* @__PURE__ */ React80.createElement(RemoveItemAction, null))
4704
4859
  }
4705
4860
  )),
4706
- /* @__PURE__ */ React79.createElement(EditItemPopover, null, /* @__PURE__ */ React79.createElement(Content2, null))
4861
+ /* @__PURE__ */ React80.createElement(EditItemPopover, null, /* @__PURE__ */ React80.createElement(Content2, null))
4707
4862
  )));
4708
4863
  }
4709
4864
  );
4710
- var ItemIcon3 = () => /* @__PURE__ */ React79.createElement(React79.Fragment, null);
4865
+ var ItemIcon3 = () => /* @__PURE__ */ React80.createElement(React80.Fragment, null);
4711
4866
  var Content2 = () => {
4712
4867
  const { component: ChildControl, props = {} } = useRepeatableControlContext();
4713
- return /* @__PURE__ */ React79.createElement(PopoverContent, { p: 1.5 }, /* @__PURE__ */ React79.createElement(PopoverGridContainer, null, /* @__PURE__ */ React79.createElement(ChildControl, { ...props })));
4868
+ return /* @__PURE__ */ React80.createElement(PopoverContent, { p: 1.5 }, /* @__PURE__ */ React80.createElement(PopoverGridContainer, null, /* @__PURE__ */ React80.createElement(ChildControl, { ...props })));
4714
4869
  };
4715
4870
  var interpolate = (template, data) => {
4716
4871
  if (!data) {
@@ -4793,7 +4948,7 @@ var ItemLabel3 = ({ value }) => {
4793
4948
  const label = showPlaceholder ? placeholder : interpolate(patternLabel, value);
4794
4949
  const isReadOnly = !!childProps?.readOnly;
4795
4950
  const color = getTextColor(isReadOnly, showPlaceholder);
4796
- return /* @__PURE__ */ React79.createElement(Box14, { component: "span", color }, label);
4951
+ return /* @__PURE__ */ React80.createElement(Box14, { component: "span", color }, label);
4797
4952
  };
4798
4953
  var getAllProperties = (pattern) => {
4799
4954
  const properties = pattern.match(PLACEHOLDER_REGEX)?.map((match) => match.slice(2, -1)) || [];
@@ -4801,7 +4956,7 @@ var getAllProperties = (pattern) => {
4801
4956
  };
4802
4957
 
4803
4958
  // src/controls/key-value-control.tsx
4804
- import * as React80 from "react";
4959
+ import * as React81 from "react";
4805
4960
  import { useMemo as useMemo10, useState as useState15 } from "react";
4806
4961
  import {
4807
4962
  isTransformable,
@@ -4809,7 +4964,7 @@ import {
4809
4964
  stringPropTypeUtil as stringPropTypeUtil13
4810
4965
  } from "@elementor/editor-props";
4811
4966
  import { FormHelperText, FormLabel as FormLabel3, Grid as Grid18 } from "@elementor/ui";
4812
- import { __ as __35 } from "@wordpress/i18n";
4967
+ import { __ as __36 } from "@wordpress/i18n";
4813
4968
 
4814
4969
  // src/utils/escape-html-attr.ts
4815
4970
  var escapeHtmlAttr = (value) => {
@@ -4839,8 +4994,8 @@ var KeyValueControl = createControl((props = {}) => {
4839
4994
  key: getInitialFieldValue(value?.key),
4840
4995
  value: getInitialFieldValue(value?.value)
4841
4996
  });
4842
- const keyLabel = props.keyName || __35("Key", "elementor");
4843
- const valueLabel = props.valueName || __35("Value", "elementor");
4997
+ const keyLabel = props.keyName || __36("Key", "elementor");
4998
+ const valueLabel = props.valueName || __36("Value", "elementor");
4844
4999
  const { keyHelper, valueHelper } = props.getHelperText?.(sessionState.key, sessionState.value) || {
4845
5000
  keyHelper: void 0,
4846
5001
  valueHelper: void 0
@@ -4849,7 +5004,7 @@ var KeyValueControl = createControl((props = {}) => {
4849
5004
  () => [
4850
5005
  props.regexKey ? new RegExp(props.regexKey) : void 0,
4851
5006
  props.regexValue ? new RegExp(props.regexValue) : void 0,
4852
- props.validationErrorMessage || __35("Invalid Format", "elementor")
5007
+ props.validationErrorMessage || __36("Invalid Format", "elementor")
4853
5008
  ],
4854
5009
  [props.regexKey, props.regexValue, props.validationErrorMessage]
4855
5010
  );
@@ -4898,14 +5053,14 @@ var KeyValueControl = createControl((props = {}) => {
4898
5053
  });
4899
5054
  }
4900
5055
  };
4901
- return /* @__PURE__ */ React80.createElement(PropProvider, { ...propContext, value, setValue: handleChange }, /* @__PURE__ */ React80.createElement(Grid18, { container: true, gap: 1.5 }, /* @__PURE__ */ React80.createElement(Grid18, { item: true, xs: 12, display: "flex", flexDirection: "column" }, /* @__PURE__ */ React80.createElement(FormLabel3, { size: "tiny", sx: { pb: 1 } }, keyLabel), /* @__PURE__ */ React80.createElement(PropKeyProvider, { bind: "key" }, /* @__PURE__ */ React80.createElement(
5056
+ return /* @__PURE__ */ React81.createElement(PropProvider, { ...propContext, value, setValue: handleChange }, /* @__PURE__ */ React81.createElement(Grid18, { container: true, gap: 1.5 }, /* @__PURE__ */ React81.createElement(Grid18, { item: true, xs: 12, display: "flex", flexDirection: "column" }, /* @__PURE__ */ React81.createElement(FormLabel3, { size: "tiny", sx: { pb: 1 } }, keyLabel), /* @__PURE__ */ React81.createElement(PropKeyProvider, { bind: "key" }, /* @__PURE__ */ React81.createElement(
4902
5057
  TextControl,
4903
5058
  {
4904
5059
  inputValue: props.escapeHtml ? escapeHtmlAttr(sessionState.key) : sessionState.key,
4905
5060
  error: !!keyError,
4906
5061
  helperText: keyHelper
4907
5062
  }
4908
- )), !!keyError && /* @__PURE__ */ React80.createElement(FormHelperText, { error: true }, keyError)), /* @__PURE__ */ React80.createElement(Grid18, { item: true, xs: 12, display: "flex", flexDirection: "column" }, /* @__PURE__ */ React80.createElement(FormLabel3, { size: "tiny", sx: { pb: 1 } }, valueLabel), /* @__PURE__ */ React80.createElement(PropKeyProvider, { bind: "value" }, /* @__PURE__ */ React80.createElement(
5063
+ )), !!keyError && /* @__PURE__ */ React81.createElement(FormHelperText, { error: true }, keyError)), /* @__PURE__ */ React81.createElement(Grid18, { item: true, xs: 12, display: "flex", flexDirection: "column" }, /* @__PURE__ */ React81.createElement(FormLabel3, { size: "tiny", sx: { pb: 1 } }, valueLabel), /* @__PURE__ */ React81.createElement(PropKeyProvider, { bind: "value" }, /* @__PURE__ */ React81.createElement(
4909
5064
  TextControl,
4910
5065
  {
4911
5066
  inputValue: props.escapeHtml ? escapeHtmlAttr(sessionState.value) : sessionState.value,
@@ -4913,27 +5068,27 @@ var KeyValueControl = createControl((props = {}) => {
4913
5068
  inputDisabled: !!keyError,
4914
5069
  helperText: valueHelper
4915
5070
  }
4916
- )), !!valueError && /* @__PURE__ */ React80.createElement(FormHelperText, { error: true }, valueError))));
5071
+ )), !!valueError && /* @__PURE__ */ React81.createElement(FormHelperText, { error: true }, valueError))));
4917
5072
  });
4918
5073
 
4919
5074
  // src/controls/position-control.tsx
4920
- import * as React81 from "react";
5075
+ import * as React82 from "react";
4921
5076
  import { positionPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil14 } from "@elementor/editor-props";
4922
5077
  import { MenuListItem as MenuListItem6 } from "@elementor/editor-ui";
4923
5078
  import { LetterXIcon as LetterXIcon2, LetterYIcon as LetterYIcon2 } from "@elementor/icons";
4924
5079
  import { Grid as Grid19, Select as Select5 } from "@elementor/ui";
4925
- import { __ as __36 } from "@wordpress/i18n";
5080
+ import { __ as __37 } from "@wordpress/i18n";
4926
5081
  var positionOptions = [
4927
- { label: __36("Center center", "elementor"), value: "center center" },
4928
- { label: __36("Center left", "elementor"), value: "center left" },
4929
- { label: __36("Center right", "elementor"), value: "center right" },
4930
- { label: __36("Top center", "elementor"), value: "top center" },
4931
- { label: __36("Top left", "elementor"), value: "top left" },
4932
- { label: __36("Top right", "elementor"), value: "top right" },
4933
- { label: __36("Bottom center", "elementor"), value: "bottom center" },
4934
- { label: __36("Bottom left", "elementor"), value: "bottom left" },
4935
- { label: __36("Bottom right", "elementor"), value: "bottom right" },
4936
- { label: __36("Custom", "elementor"), value: "custom" }
5082
+ { label: __37("Center center", "elementor"), value: "center center" },
5083
+ { label: __37("Center left", "elementor"), value: "center left" },
5084
+ { label: __37("Center right", "elementor"), value: "center right" },
5085
+ { label: __37("Top center", "elementor"), value: "top center" },
5086
+ { label: __37("Top left", "elementor"), value: "top left" },
5087
+ { label: __37("Top right", "elementor"), value: "top right" },
5088
+ { label: __37("Bottom center", "elementor"), value: "bottom center" },
5089
+ { label: __37("Bottom left", "elementor"), value: "bottom left" },
5090
+ { label: __37("Bottom right", "elementor"), value: "bottom right" },
5091
+ { label: __37("Custom", "elementor"), value: "custom" }
4937
5092
  ];
4938
5093
  var PositionControl = () => {
4939
5094
  const positionContext = useBoundProp(positionPropTypeUtil);
@@ -4947,7 +5102,7 @@ var PositionControl = () => {
4947
5102
  stringPropContext.setValue(value);
4948
5103
  }
4949
5104
  };
4950
- return /* @__PURE__ */ React81.createElement(Grid19, { container: true, spacing: 1.5 }, /* @__PURE__ */ React81.createElement(Grid19, { item: true, xs: 12 }, /* @__PURE__ */ React81.createElement(Grid19, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React81.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React81.createElement(ControlFormLabel, null, __36("Object position", "elementor"))), /* @__PURE__ */ React81.createElement(Grid19, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React81.createElement(
5105
+ return /* @__PURE__ */ React82.createElement(Grid19, { container: true, spacing: 1.5 }, /* @__PURE__ */ React82.createElement(Grid19, { item: true, xs: 12 }, /* @__PURE__ */ React82.createElement(Grid19, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React82.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React82.createElement(ControlFormLabel, null, __37("Object position", "elementor"))), /* @__PURE__ */ React82.createElement(Grid19, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React82.createElement(
4951
5106
  Select5,
4952
5107
  {
4953
5108
  size: "tiny",
@@ -4956,44 +5111,29 @@ var PositionControl = () => {
4956
5111
  onChange: handlePositionChange,
4957
5112
  fullWidth: true
4958
5113
  },
4959
- positionOptions.map(({ label, value }) => /* @__PURE__ */ React81.createElement(MenuListItem6, { key: value, value: value ?? "" }, label))
4960
- )))), isCustom && /* @__PURE__ */ React81.createElement(PropProvider, { ...positionContext }, /* @__PURE__ */ React81.createElement(Grid19, { item: true, xs: 12 }, /* @__PURE__ */ React81.createElement(Grid19, { container: true, spacing: 1.5 }, /* @__PURE__ */ React81.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React81.createElement(PropKeyProvider, { bind: "x" }, /* @__PURE__ */ React81.createElement(
5114
+ positionOptions.map(({ label, value }) => /* @__PURE__ */ React82.createElement(MenuListItem6, { key: value, value: value ?? "" }, label))
5115
+ )))), isCustom && /* @__PURE__ */ React82.createElement(PropProvider, { ...positionContext }, /* @__PURE__ */ React82.createElement(Grid19, { item: true, xs: 12 }, /* @__PURE__ */ React82.createElement(Grid19, { container: true, spacing: 1.5 }, /* @__PURE__ */ React82.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React82.createElement(PropKeyProvider, { bind: "x" }, /* @__PURE__ */ React82.createElement(
4961
5116
  SizeControl,
4962
5117
  {
4963
- startIcon: /* @__PURE__ */ React81.createElement(LetterXIcon2, { fontSize: "tiny" }),
5118
+ startIcon: /* @__PURE__ */ React82.createElement(LetterXIcon2, { fontSize: "tiny" }),
4964
5119
  min: -Number.MAX_SAFE_INTEGER
4965
5120
  }
4966
- ))), /* @__PURE__ */ React81.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React81.createElement(PropKeyProvider, { bind: "y" }, /* @__PURE__ */ React81.createElement(
5121
+ ))), /* @__PURE__ */ React82.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React82.createElement(PropKeyProvider, { bind: "y" }, /* @__PURE__ */ React82.createElement(
4967
5122
  SizeControl,
4968
5123
  {
4969
- startIcon: /* @__PURE__ */ React81.createElement(LetterYIcon2, { fontSize: "tiny" }),
5124
+ startIcon: /* @__PURE__ */ React82.createElement(LetterYIcon2, { fontSize: "tiny" }),
4970
5125
  min: -Number.MAX_SAFE_INTEGER
4971
5126
  }
4972
5127
  )))))));
4973
5128
  };
4974
5129
 
4975
5130
  // src/controls/transform-control/transform-repeater-control.tsx
4976
- import * as React94 from "react";
5131
+ import * as React95 from "react";
4977
5132
  import { useRef as useRef21 } from "react";
4978
5133
  import { transformFunctionsPropTypeUtil, transformPropTypeUtil } from "@elementor/editor-props";
4979
5134
  import { AdjustmentsIcon as AdjustmentsIcon2, InfoCircleFilledIcon as InfoCircleFilledIcon2 } from "@elementor/icons";
4980
5135
  import { bindTrigger as bindTrigger4, Box as Box18, IconButton as IconButton7, Tooltip as Tooltip8, Typography as Typography6, usePopupState as usePopupState6 } from "@elementor/ui";
4981
- import { __ as __46 } from "@wordpress/i18n";
4982
-
4983
- // src/hooks/use-element-can-have-children.ts
4984
- import { useMemo as useMemo11 } from "react";
4985
- import { getContainer, useSelectedElement } from "@elementor/editor-elements";
4986
- var useElementCanHaveChildren = () => {
4987
- const { element } = useSelectedElement();
4988
- const elementId = element?.id || "";
4989
- return useMemo11(() => {
4990
- const container = getContainer(elementId);
4991
- if (!container) {
4992
- return false;
4993
- }
4994
- return container.model.get("elType") !== "widget";
4995
- }, [elementId]);
4996
- };
5136
+ import { __ as __47 } from "@wordpress/i18n";
4997
5137
 
4998
5138
  // src/controls/transform-control/initial-values.ts
4999
5139
  import {
@@ -5047,24 +5187,24 @@ var initialSkewValue = skewTransformPropTypeUtil.create({
5047
5187
  });
5048
5188
 
5049
5189
  // src/controls/transform-control/transform-content.tsx
5050
- import * as React88 from "react";
5190
+ import * as React89 from "react";
5051
5191
  import { Box as Box15, Tab as Tab2, TabPanel as TabPanel2, Tabs as Tabs2 } from "@elementor/ui";
5052
- import { __ as __41 } from "@wordpress/i18n";
5192
+ import { __ as __42 } from "@wordpress/i18n";
5053
5193
 
5054
5194
  // src/controls/transform-control/functions/move.tsx
5055
- import * as React83 from "react";
5195
+ import * as React84 from "react";
5056
5196
  import { useRef as useRef14 } from "react";
5057
5197
  import { moveTransformPropTypeUtil } from "@elementor/editor-props";
5058
5198
  import { ArrowDownLeftIcon, ArrowDownSmallIcon, ArrowRightIcon } from "@elementor/icons";
5059
5199
  import { Grid as Grid21 } from "@elementor/ui";
5060
- import { __ as __37 } from "@wordpress/i18n";
5200
+ import { __ as __38 } from "@wordpress/i18n";
5061
5201
 
5062
5202
  // src/controls/transform-control/functions/axis-row.tsx
5063
- import * as React82 from "react";
5203
+ import * as React83 from "react";
5064
5204
  import { Grid as Grid20 } from "@elementor/ui";
5065
5205
  var AxisRow = ({ label, bind, startIcon, anchorRef, units: units2, variant = "angle" }) => {
5066
5206
  const safeId = label.replace(/\s+/g, "-").toLowerCase();
5067
- return /* @__PURE__ */ React82.createElement(Grid20, { item: true, xs: 12 }, /* @__PURE__ */ React82.createElement(PopoverGridContainer, { ref: anchorRef }, /* @__PURE__ */ React82.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React82.createElement(ControlLabel, { htmlFor: safeId }, label)), /* @__PURE__ */ React82.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React82.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React82.createElement(
5207
+ return /* @__PURE__ */ React83.createElement(Grid20, { item: true, xs: 12 }, /* @__PURE__ */ React83.createElement(PopoverGridContainer, { ref: anchorRef }, /* @__PURE__ */ React83.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React83.createElement(ControlLabel, { htmlFor: safeId }, label)), /* @__PURE__ */ React83.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React83.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React83.createElement(
5068
5208
  SizeControl,
5069
5209
  {
5070
5210
  anchorRef,
@@ -5080,28 +5220,28 @@ var AxisRow = ({ label, bind, startIcon, anchorRef, units: units2, variant = "an
5080
5220
  // src/controls/transform-control/functions/move.tsx
5081
5221
  var moveAxisControls = [
5082
5222
  {
5083
- label: __37("Move X", "elementor"),
5223
+ label: __38("Move X", "elementor"),
5084
5224
  bind: "x",
5085
- startIcon: /* @__PURE__ */ React83.createElement(ArrowRightIcon, { fontSize: "tiny" }),
5225
+ startIcon: /* @__PURE__ */ React84.createElement(ArrowRightIcon, { fontSize: "tiny" }),
5086
5226
  units: ["px", "%", "em", "rem", "vw"]
5087
5227
  },
5088
5228
  {
5089
- label: __37("Move Y", "elementor"),
5229
+ label: __38("Move Y", "elementor"),
5090
5230
  bind: "y",
5091
- startIcon: /* @__PURE__ */ React83.createElement(ArrowDownSmallIcon, { fontSize: "tiny" }),
5231
+ startIcon: /* @__PURE__ */ React84.createElement(ArrowDownSmallIcon, { fontSize: "tiny" }),
5092
5232
  units: ["px", "%", "em", "rem", "vh"]
5093
5233
  },
5094
5234
  {
5095
- label: __37("Move Z", "elementor"),
5235
+ label: __38("Move Z", "elementor"),
5096
5236
  bind: "z",
5097
- startIcon: /* @__PURE__ */ React83.createElement(ArrowDownLeftIcon, { fontSize: "tiny" }),
5237
+ startIcon: /* @__PURE__ */ React84.createElement(ArrowDownLeftIcon, { fontSize: "tiny" }),
5098
5238
  units: ["px", "%", "em", "rem", "vw", "vh"]
5099
5239
  }
5100
5240
  ];
5101
5241
  var Move = () => {
5102
5242
  const context = useBoundProp(moveTransformPropTypeUtil);
5103
5243
  const rowRefs = [useRef14(null), useRef14(null), useRef14(null)];
5104
- return /* @__PURE__ */ React83.createElement(Grid21, { container: true, spacing: 1.5 }, /* @__PURE__ */ React83.createElement(PropProvider, { ...context }, /* @__PURE__ */ React83.createElement(PropKeyProvider, { bind: TransformFunctionKeys.move }, moveAxisControls.map((control, index) => /* @__PURE__ */ React83.createElement(
5244
+ return /* @__PURE__ */ React84.createElement(Grid21, { container: true, spacing: 1.5 }, /* @__PURE__ */ React84.createElement(PropProvider, { ...context }, /* @__PURE__ */ React84.createElement(PropKeyProvider, { bind: TransformFunctionKeys.move }, moveAxisControls.map((control, index) => /* @__PURE__ */ React84.createElement(
5105
5245
  AxisRow,
5106
5246
  {
5107
5247
  key: control.bind,
@@ -5114,34 +5254,34 @@ var Move = () => {
5114
5254
  };
5115
5255
 
5116
5256
  // src/controls/transform-control/functions/rotate.tsx
5117
- import * as React84 from "react";
5257
+ import * as React85 from "react";
5118
5258
  import { useRef as useRef15 } from "react";
5119
5259
  import { rotateTransformPropTypeUtil as rotateTransformPropTypeUtil2 } from "@elementor/editor-props";
5120
5260
  import { Arrow360Icon, RotateClockwiseIcon } from "@elementor/icons";
5121
5261
  import { Grid as Grid22 } from "@elementor/ui";
5122
- import { __ as __38 } from "@wordpress/i18n";
5262
+ import { __ as __39 } from "@wordpress/i18n";
5123
5263
  var rotateAxisControls = [
5124
5264
  {
5125
- label: __38("Rotate X", "elementor"),
5265
+ label: __39("Rotate X", "elementor"),
5126
5266
  bind: "x",
5127
- startIcon: /* @__PURE__ */ React84.createElement(Arrow360Icon, { fontSize: "tiny" })
5267
+ startIcon: /* @__PURE__ */ React85.createElement(Arrow360Icon, { fontSize: "tiny" })
5128
5268
  },
5129
5269
  {
5130
- label: __38("Rotate Y", "elementor"),
5270
+ label: __39("Rotate Y", "elementor"),
5131
5271
  bind: "y",
5132
- startIcon: /* @__PURE__ */ React84.createElement(Arrow360Icon, { fontSize: "tiny", style: { transform: "scaleX(-1) rotate(-90deg)" } })
5272
+ startIcon: /* @__PURE__ */ React85.createElement(Arrow360Icon, { fontSize: "tiny", style: { transform: "scaleX(-1) rotate(-90deg)" } })
5133
5273
  },
5134
5274
  {
5135
- label: __38("Rotate Z", "elementor"),
5275
+ label: __39("Rotate Z", "elementor"),
5136
5276
  bind: "z",
5137
- startIcon: /* @__PURE__ */ React84.createElement(RotateClockwiseIcon, { fontSize: "tiny" })
5277
+ startIcon: /* @__PURE__ */ React85.createElement(RotateClockwiseIcon, { fontSize: "tiny" })
5138
5278
  }
5139
5279
  ];
5140
5280
  var rotateUnits = ["deg", "rad", "grad", "turn"];
5141
5281
  var Rotate = () => {
5142
5282
  const context = useBoundProp(rotateTransformPropTypeUtil2);
5143
5283
  const rowRefs = [useRef15(null), useRef15(null), useRef15(null)];
5144
- return /* @__PURE__ */ React84.createElement(Grid22, { container: true, spacing: 1.5 }, /* @__PURE__ */ React84.createElement(PropProvider, { ...context }, /* @__PURE__ */ React84.createElement(PropKeyProvider, { bind: TransformFunctionKeys.rotate }, rotateAxisControls.map((control, index) => /* @__PURE__ */ React84.createElement(
5284
+ return /* @__PURE__ */ React85.createElement(Grid22, { container: true, spacing: 1.5 }, /* @__PURE__ */ React85.createElement(PropProvider, { ...context }, /* @__PURE__ */ React85.createElement(PropKeyProvider, { bind: TransformFunctionKeys.rotate }, rotateAxisControls.map((control, index) => /* @__PURE__ */ React85.createElement(
5145
5285
  AxisRow,
5146
5286
  {
5147
5287
  key: control.bind,
@@ -5153,68 +5293,68 @@ var Rotate = () => {
5153
5293
  };
5154
5294
 
5155
5295
  // src/controls/transform-control/functions/scale.tsx
5156
- import * as React86 from "react";
5296
+ import * as React87 from "react";
5157
5297
  import { useRef as useRef16 } from "react";
5158
5298
  import { scaleTransformPropTypeUtil as scaleTransformPropTypeUtil2 } from "@elementor/editor-props";
5159
5299
  import { ArrowDownLeftIcon as ArrowDownLeftIcon2, ArrowDownSmallIcon as ArrowDownSmallIcon2, ArrowRightIcon as ArrowRightIcon2 } from "@elementor/icons";
5160
5300
  import { Grid as Grid24 } from "@elementor/ui";
5161
- import { __ as __39 } from "@wordpress/i18n";
5301
+ import { __ as __40 } from "@wordpress/i18n";
5162
5302
 
5163
5303
  // src/controls/transform-control/functions/scale-axis-row.tsx
5164
- import * as React85 from "react";
5304
+ import * as React86 from "react";
5165
5305
  import { Grid as Grid23 } from "@elementor/ui";
5166
5306
  var ScaleAxisRow = ({ label, bind, startIcon, anchorRef }) => {
5167
- return /* @__PURE__ */ React85.createElement(Grid23, { item: true, xs: 12 }, /* @__PURE__ */ React85.createElement(PopoverGridContainer, { ref: anchorRef }, /* @__PURE__ */ React85.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React85.createElement(ControlLabel, null, label)), /* @__PURE__ */ React85.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React85.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React85.createElement(NumberControl, { step: 0.1, placeholder: "1", startIcon })))));
5307
+ return /* @__PURE__ */ React86.createElement(Grid23, { item: true, xs: 12 }, /* @__PURE__ */ React86.createElement(PopoverGridContainer, { ref: anchorRef }, /* @__PURE__ */ React86.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React86.createElement(ControlLabel, null, label)), /* @__PURE__ */ React86.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React86.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React86.createElement(NumberControl, { step: 0.1, placeholder: "1", startIcon })))));
5168
5308
  };
5169
5309
 
5170
5310
  // src/controls/transform-control/functions/scale.tsx
5171
5311
  var scaleAxisControls = [
5172
5312
  {
5173
- label: __39("Scale X", "elementor"),
5313
+ label: __40("Scale X", "elementor"),
5174
5314
  bind: "x",
5175
- startIcon: /* @__PURE__ */ React86.createElement(ArrowRightIcon2, { fontSize: "tiny" })
5315
+ startIcon: /* @__PURE__ */ React87.createElement(ArrowRightIcon2, { fontSize: "tiny" })
5176
5316
  },
5177
5317
  {
5178
- label: __39("Scale Y", "elementor"),
5318
+ label: __40("Scale Y", "elementor"),
5179
5319
  bind: "y",
5180
- startIcon: /* @__PURE__ */ React86.createElement(ArrowDownSmallIcon2, { fontSize: "tiny" })
5320
+ startIcon: /* @__PURE__ */ React87.createElement(ArrowDownSmallIcon2, { fontSize: "tiny" })
5181
5321
  },
5182
5322
  {
5183
- label: __39("Scale Z", "elementor"),
5323
+ label: __40("Scale Z", "elementor"),
5184
5324
  bind: "z",
5185
- startIcon: /* @__PURE__ */ React86.createElement(ArrowDownLeftIcon2, { fontSize: "tiny" })
5325
+ startIcon: /* @__PURE__ */ React87.createElement(ArrowDownLeftIcon2, { fontSize: "tiny" })
5186
5326
  }
5187
5327
  ];
5188
5328
  var Scale = () => {
5189
5329
  const context = useBoundProp(scaleTransformPropTypeUtil2);
5190
5330
  const rowRefs = [useRef16(null), useRef16(null), useRef16(null)];
5191
- return /* @__PURE__ */ React86.createElement(Grid24, { container: true, spacing: 1.5 }, /* @__PURE__ */ React86.createElement(PropProvider, { ...context }, /* @__PURE__ */ React86.createElement(PropKeyProvider, { bind: TransformFunctionKeys.scale }, scaleAxisControls.map((control, index) => /* @__PURE__ */ React86.createElement(ScaleAxisRow, { key: control.bind, ...control, anchorRef: rowRefs[index] })))));
5331
+ return /* @__PURE__ */ React87.createElement(Grid24, { container: true, spacing: 1.5 }, /* @__PURE__ */ React87.createElement(PropProvider, { ...context }, /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: TransformFunctionKeys.scale }, scaleAxisControls.map((control, index) => /* @__PURE__ */ React87.createElement(ScaleAxisRow, { key: control.bind, ...control, anchorRef: rowRefs[index] })))));
5192
5332
  };
5193
5333
 
5194
5334
  // src/controls/transform-control/functions/skew.tsx
5195
- import * as React87 from "react";
5335
+ import * as React88 from "react";
5196
5336
  import { useRef as useRef17 } from "react";
5197
5337
  import { skewTransformPropTypeUtil as skewTransformPropTypeUtil2 } from "@elementor/editor-props";
5198
5338
  import { ArrowLeftIcon, ArrowRightIcon as ArrowRightIcon3 } from "@elementor/icons";
5199
5339
  import { Grid as Grid25 } from "@elementor/ui";
5200
- import { __ as __40 } from "@wordpress/i18n";
5340
+ import { __ as __41 } from "@wordpress/i18n";
5201
5341
  var skewAxisControls = [
5202
5342
  {
5203
- label: __40("Skew X", "elementor"),
5343
+ label: __41("Skew X", "elementor"),
5204
5344
  bind: "x",
5205
- startIcon: /* @__PURE__ */ React87.createElement(ArrowRightIcon3, { fontSize: "tiny" })
5345
+ startIcon: /* @__PURE__ */ React88.createElement(ArrowRightIcon3, { fontSize: "tiny" })
5206
5346
  },
5207
5347
  {
5208
- label: __40("Skew Y", "elementor"),
5348
+ label: __41("Skew Y", "elementor"),
5209
5349
  bind: "y",
5210
- startIcon: /* @__PURE__ */ React87.createElement(ArrowLeftIcon, { fontSize: "tiny", style: { transform: "scaleX(-1) rotate(-90deg)" } })
5350
+ startIcon: /* @__PURE__ */ React88.createElement(ArrowLeftIcon, { fontSize: "tiny", style: { transform: "scaleX(-1) rotate(-90deg)" } })
5211
5351
  }
5212
5352
  ];
5213
5353
  var skewUnits = ["deg", "rad", "grad", "turn"];
5214
5354
  var Skew = () => {
5215
5355
  const context = useBoundProp(skewTransformPropTypeUtil2);
5216
5356
  const rowRefs = [useRef17(null), useRef17(null), useRef17(null)];
5217
- return /* @__PURE__ */ React87.createElement(Grid25, { container: true, spacing: 1.5 }, /* @__PURE__ */ React87.createElement(PropProvider, { ...context }, /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: TransformFunctionKeys.skew }, skewAxisControls.map((control, index) => /* @__PURE__ */ React87.createElement(
5357
+ return /* @__PURE__ */ React88.createElement(Grid25, { container: true, spacing: 1.5 }, /* @__PURE__ */ React88.createElement(PropProvider, { ...context }, /* @__PURE__ */ React88.createElement(PropKeyProvider, { bind: TransformFunctionKeys.skew }, skewAxisControls.map((control, index) => /* @__PURE__ */ React88.createElement(
5218
5358
  AxisRow,
5219
5359
  {
5220
5360
  key: control.bind,
@@ -5319,7 +5459,7 @@ var TransformContent = () => {
5319
5459
  rotate: initialRotateValue.value,
5320
5460
  skew: initialSkewValue.value
5321
5461
  });
5322
- return /* @__PURE__ */ React88.createElement(PopoverContent, null, /* @__PURE__ */ React88.createElement(Box15, { sx: { width: "100%" } }, /* @__PURE__ */ React88.createElement(Box15, { sx: { borderBottom: 1, borderColor: "divider" } }, /* @__PURE__ */ React88.createElement(
5462
+ return /* @__PURE__ */ React89.createElement(PopoverContent, null, /* @__PURE__ */ React89.createElement(Box15, { sx: { width: "100%" } }, /* @__PURE__ */ React89.createElement(Box15, { sx: { borderBottom: 1, borderColor: "divider" } }, /* @__PURE__ */ React89.createElement(
5323
5463
  Tabs2,
5324
5464
  {
5325
5465
  size: "small",
@@ -5330,37 +5470,37 @@ var TransformContent = () => {
5330
5470
  }
5331
5471
  },
5332
5472
  ...getTabsProps(),
5333
- "aria-label": __41("Transform", "elementor")
5473
+ "aria-label": __42("Transform", "elementor")
5334
5474
  },
5335
- /* @__PURE__ */ React88.createElement(Tab2, { label: __41("Move", "elementor"), ...getTabProps(TransformFunctionKeys.move) }),
5336
- /* @__PURE__ */ React88.createElement(Tab2, { label: __41("Scale", "elementor"), ...getTabProps(TransformFunctionKeys.scale) }),
5337
- /* @__PURE__ */ React88.createElement(Tab2, { label: __41("Rotate", "elementor"), ...getTabProps(TransformFunctionKeys.rotate) }),
5338
- /* @__PURE__ */ React88.createElement(Tab2, { label: __41("Skew", "elementor"), ...getTabProps(TransformFunctionKeys.skew) })
5339
- )), /* @__PURE__ */ React88.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.move) }, /* @__PURE__ */ React88.createElement(Move, null)), /* @__PURE__ */ React88.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.scale) }, /* @__PURE__ */ React88.createElement(Scale, null)), /* @__PURE__ */ React88.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.rotate) }, /* @__PURE__ */ React88.createElement(Rotate, null)), /* @__PURE__ */ React88.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.skew) }, /* @__PURE__ */ React88.createElement(Skew, null))));
5475
+ /* @__PURE__ */ React89.createElement(Tab2, { label: __42("Move", "elementor"), ...getTabProps(TransformFunctionKeys.move) }),
5476
+ /* @__PURE__ */ React89.createElement(Tab2, { label: __42("Scale", "elementor"), ...getTabProps(TransformFunctionKeys.scale) }),
5477
+ /* @__PURE__ */ React89.createElement(Tab2, { label: __42("Rotate", "elementor"), ...getTabProps(TransformFunctionKeys.rotate) }),
5478
+ /* @__PURE__ */ React89.createElement(Tab2, { label: __42("Skew", "elementor"), ...getTabProps(TransformFunctionKeys.skew) })
5479
+ )), /* @__PURE__ */ React89.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.move) }, /* @__PURE__ */ React89.createElement(Move, null)), /* @__PURE__ */ React89.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.scale) }, /* @__PURE__ */ React89.createElement(Scale, null)), /* @__PURE__ */ React89.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.rotate) }, /* @__PURE__ */ React89.createElement(Rotate, null)), /* @__PURE__ */ React89.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.skew) }, /* @__PURE__ */ React89.createElement(Skew, null))));
5340
5480
  };
5341
5481
 
5342
5482
  // src/controls/transform-control/transform-icon.tsx
5343
- import * as React89 from "react";
5483
+ import * as React90 from "react";
5344
5484
  import { ArrowAutofitHeightIcon, ArrowsMaximizeIcon as ArrowsMaximizeIcon2, RotateClockwise2Icon, SkewXIcon } from "@elementor/icons";
5345
5485
  var TransformIcon = ({ value }) => {
5346
5486
  switch (value.$$type) {
5347
5487
  case TransformFunctionKeys.move:
5348
- return /* @__PURE__ */ React89.createElement(ArrowsMaximizeIcon2, { fontSize: "tiny" });
5488
+ return /* @__PURE__ */ React90.createElement(ArrowsMaximizeIcon2, { fontSize: "tiny" });
5349
5489
  case TransformFunctionKeys.scale:
5350
- return /* @__PURE__ */ React89.createElement(ArrowAutofitHeightIcon, { fontSize: "tiny" });
5490
+ return /* @__PURE__ */ React90.createElement(ArrowAutofitHeightIcon, { fontSize: "tiny" });
5351
5491
  case TransformFunctionKeys.rotate:
5352
- return /* @__PURE__ */ React89.createElement(RotateClockwise2Icon, { fontSize: "tiny" });
5492
+ return /* @__PURE__ */ React90.createElement(RotateClockwise2Icon, { fontSize: "tiny" });
5353
5493
  case TransformFunctionKeys.skew:
5354
- return /* @__PURE__ */ React89.createElement(SkewXIcon, { fontSize: "tiny" });
5494
+ return /* @__PURE__ */ React90.createElement(SkewXIcon, { fontSize: "tiny" });
5355
5495
  default:
5356
5496
  return null;
5357
5497
  }
5358
5498
  };
5359
5499
 
5360
5500
  // src/controls/transform-control/transform-label.tsx
5361
- import * as React90 from "react";
5501
+ import * as React91 from "react";
5362
5502
  import { Box as Box16 } from "@elementor/ui";
5363
- import { __ as __42 } from "@wordpress/i18n";
5503
+ import { __ as __43 } from "@wordpress/i18n";
5364
5504
  var orderedAxis = ["x", "y", "z"];
5365
5505
  var formatLabel = (value, functionType) => {
5366
5506
  return orderedAxis.map((axisKey) => {
@@ -5378,96 +5518,96 @@ var TransformLabel = (props) => {
5378
5518
  const { $$type, value } = props.value;
5379
5519
  switch ($$type) {
5380
5520
  case TransformFunctionKeys.move:
5381
- return /* @__PURE__ */ React90.createElement(Label2, { label: __42("Move", "elementor"), value: formatLabel(value, "move") });
5521
+ return /* @__PURE__ */ React91.createElement(Label2, { label: __43("Move", "elementor"), value: formatLabel(value, "move") });
5382
5522
  case TransformFunctionKeys.scale:
5383
- return /* @__PURE__ */ React90.createElement(Label2, { label: __42("Scale", "elementor"), value: formatLabel(value, "scale") });
5523
+ return /* @__PURE__ */ React91.createElement(Label2, { label: __43("Scale", "elementor"), value: formatLabel(value, "scale") });
5384
5524
  case TransformFunctionKeys.rotate:
5385
- return /* @__PURE__ */ React90.createElement(Label2, { label: __42("Rotate", "elementor"), value: formatLabel(value, "rotate") });
5525
+ return /* @__PURE__ */ React91.createElement(Label2, { label: __43("Rotate", "elementor"), value: formatLabel(value, "rotate") });
5386
5526
  case TransformFunctionKeys.skew:
5387
- return /* @__PURE__ */ React90.createElement(Label2, { label: __42("Skew", "elementor"), value: formatLabel(value, "skew") });
5527
+ return /* @__PURE__ */ React91.createElement(Label2, { label: __43("Skew", "elementor"), value: formatLabel(value, "skew") });
5388
5528
  default:
5389
5529
  return "";
5390
5530
  }
5391
5531
  };
5392
5532
  var Label2 = ({ label, value }) => {
5393
- return /* @__PURE__ */ React90.createElement(Box16, { component: "span" }, label, ": ", value);
5533
+ return /* @__PURE__ */ React91.createElement(Box16, { component: "span" }, label, ": ", value);
5394
5534
  };
5395
5535
 
5396
5536
  // src/controls/transform-control/transform-settings-control.tsx
5397
- import * as React93 from "react";
5537
+ import * as React94 from "react";
5398
5538
  import { PopoverHeader as PopoverHeader3 } from "@elementor/editor-ui";
5399
5539
  import { AdjustmentsIcon } from "@elementor/icons";
5400
5540
  import { bindPopover as bindPopover5, Box as Box17, Divider as Divider4, Popover as Popover5 } from "@elementor/ui";
5401
- import { __ as __45 } from "@wordpress/i18n";
5541
+ import { __ as __46 } from "@wordpress/i18n";
5402
5542
 
5403
5543
  // src/controls/transform-control/transform-base-controls/children-perspective-control.tsx
5404
- import * as React91 from "react";
5544
+ import * as React92 from "react";
5405
5545
  import { perspectiveOriginPropTypeUtil } from "@elementor/editor-props";
5406
- import { Grid as Grid26, Stack as Stack14 } from "@elementor/ui";
5407
- import { __ as __43 } from "@wordpress/i18n";
5546
+ import { Grid as Grid26, Stack as Stack15 } from "@elementor/ui";
5547
+ import { __ as __44 } from "@wordpress/i18n";
5408
5548
  var ORIGIN_UNITS = ["px", "%", "em", "rem"];
5409
5549
  var PERSPECTIVE_CONTROL_FIELD = {
5410
- label: __43("Perspective", "elementor"),
5550
+ label: __44("Perspective", "elementor"),
5411
5551
  bind: "perspective",
5412
5552
  units: ["px", "em", "rem", "vw", "vh"]
5413
5553
  };
5414
5554
  var CHILDREN_PERSPECTIVE_FIELDS = [
5415
5555
  {
5416
- label: __43("Origin X", "elementor"),
5556
+ label: __44("Origin X", "elementor"),
5417
5557
  bind: "x",
5418
5558
  units: ORIGIN_UNITS
5419
5559
  },
5420
5560
  {
5421
- label: __43("Origin Y", "elementor"),
5561
+ label: __44("Origin Y", "elementor"),
5422
5562
  bind: "y",
5423
5563
  units: ORIGIN_UNITS
5424
5564
  }
5425
5565
  ];
5426
5566
  var ChildrenPerspectiveControl = () => {
5427
- return /* @__PURE__ */ React91.createElement(Stack14, { direction: "column", spacing: 1.5 }, /* @__PURE__ */ React91.createElement(ControlFormLabel, null, __43("Children perspective", "elementor")), /* @__PURE__ */ React91.createElement(PerspectiveControl, null), /* @__PURE__ */ React91.createElement(PerspectiveOriginControl, null));
5567
+ return /* @__PURE__ */ React92.createElement(Stack15, { direction: "column", spacing: 1.5 }, /* @__PURE__ */ React92.createElement(ControlFormLabel, null, __44("Children perspective", "elementor")), /* @__PURE__ */ React92.createElement(PerspectiveControl, null), /* @__PURE__ */ React92.createElement(PerspectiveOriginControl, null));
5428
5568
  };
5429
- var PerspectiveControl = () => /* @__PURE__ */ React91.createElement(PropKeyProvider, { bind: "perspective" }, /* @__PURE__ */ React91.createElement(ControlFields, { control: PERSPECTIVE_CONTROL_FIELD, key: PERSPECTIVE_CONTROL_FIELD.bind }));
5430
- var PerspectiveOriginControl = () => /* @__PURE__ */ React91.createElement(PropKeyProvider, { bind: "perspective-origin" }, /* @__PURE__ */ React91.createElement(PerspectiveOriginControlProvider, null));
5569
+ var PerspectiveControl = () => /* @__PURE__ */ React92.createElement(PropKeyProvider, { bind: "perspective" }, /* @__PURE__ */ React92.createElement(ControlFields, { control: PERSPECTIVE_CONTROL_FIELD, key: PERSPECTIVE_CONTROL_FIELD.bind }));
5570
+ var PerspectiveOriginControl = () => /* @__PURE__ */ React92.createElement(PropKeyProvider, { bind: "perspective-origin" }, /* @__PURE__ */ React92.createElement(PerspectiveOriginControlProvider, null));
5431
5571
  var PerspectiveOriginControlProvider = () => {
5432
5572
  const context = useBoundProp(perspectiveOriginPropTypeUtil);
5433
- return /* @__PURE__ */ React91.createElement(PropProvider, { ...context }, CHILDREN_PERSPECTIVE_FIELDS.map((control) => /* @__PURE__ */ React91.createElement(PropKeyProvider, { bind: control.bind, key: control.bind }, /* @__PURE__ */ React91.createElement(ControlFields, { control }))));
5573
+ return /* @__PURE__ */ React92.createElement(PropProvider, { ...context }, CHILDREN_PERSPECTIVE_FIELDS.map((control) => /* @__PURE__ */ React92.createElement(PropKeyProvider, { bind: control.bind, key: control.bind }, /* @__PURE__ */ React92.createElement(ControlFields, { control }))));
5434
5574
  };
5435
5575
  var ControlFields = ({ control }) => {
5436
- const rowRef = React91.useRef(null);
5437
- return /* @__PURE__ */ React91.createElement(PopoverGridContainer, { ref: rowRef }, /* @__PURE__ */ React91.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React91.createElement(ControlFormLabel, null, control.label)), /* @__PURE__ */ React91.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React91.createElement(SizeControl, { variant: "length", units: control.units, anchorRef: rowRef, disableCustom: true })));
5576
+ const rowRef = React92.useRef(null);
5577
+ return /* @__PURE__ */ React92.createElement(PopoverGridContainer, { ref: rowRef }, /* @__PURE__ */ React92.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React92.createElement(ControlFormLabel, null, control.label)), /* @__PURE__ */ React92.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React92.createElement(SizeControl, { variant: "length", units: control.units, anchorRef: rowRef, disableCustom: true })));
5438
5578
  };
5439
5579
 
5440
5580
  // src/controls/transform-control/transform-base-controls/transform-origin-control.tsx
5441
- import * as React92 from "react";
5581
+ import * as React93 from "react";
5442
5582
  import { transformOriginPropTypeUtil } from "@elementor/editor-props";
5443
- import { Grid as Grid27, Stack as Stack15 } from "@elementor/ui";
5444
- import { __ as __44 } from "@wordpress/i18n";
5583
+ import { Grid as Grid27, Stack as Stack16 } from "@elementor/ui";
5584
+ import { __ as __45 } from "@wordpress/i18n";
5445
5585
  var TRANSFORM_ORIGIN_UNITS = ["px", "%", "em", "rem"];
5446
5586
  var TRANSFORM_ORIGIN_UNITS_Z_AXIS = TRANSFORM_ORIGIN_UNITS.filter((unit) => unit !== "%");
5447
5587
  var TRANSFORM_ORIGIN_FIELDS = [
5448
5588
  {
5449
- label: __44("Origin X", "elementor"),
5589
+ label: __45("Origin X", "elementor"),
5450
5590
  bind: "x",
5451
5591
  units: TRANSFORM_ORIGIN_UNITS
5452
5592
  },
5453
5593
  {
5454
- label: __44("Origin Y", "elementor"),
5594
+ label: __45("Origin Y", "elementor"),
5455
5595
  bind: "y",
5456
5596
  units: TRANSFORM_ORIGIN_UNITS
5457
5597
  },
5458
5598
  {
5459
- label: __44("Origin Z", "elementor"),
5599
+ label: __45("Origin Z", "elementor"),
5460
5600
  bind: "z",
5461
5601
  units: TRANSFORM_ORIGIN_UNITS_Z_AXIS
5462
5602
  }
5463
5603
  ];
5464
5604
  var TransformOriginControl = () => {
5465
- return /* @__PURE__ */ React92.createElement(Stack15, { direction: "column", spacing: 1.5 }, /* @__PURE__ */ React92.createElement(ControlFormLabel, null, __44("Transform", "elementor")), TRANSFORM_ORIGIN_FIELDS.map((control) => /* @__PURE__ */ React92.createElement(ControlFields2, { control, key: control.bind })));
5605
+ return /* @__PURE__ */ React93.createElement(Stack16, { direction: "column", spacing: 1.5 }, /* @__PURE__ */ React93.createElement(ControlFormLabel, null, __45("Transform", "elementor")), TRANSFORM_ORIGIN_FIELDS.map((control) => /* @__PURE__ */ React93.createElement(ControlFields2, { control, key: control.bind })));
5466
5606
  };
5467
5607
  var ControlFields2 = ({ control }) => {
5468
5608
  const context = useBoundProp(transformOriginPropTypeUtil);
5469
- const rowRef = React92.useRef(null);
5470
- return /* @__PURE__ */ React92.createElement(PropProvider, { ...context }, /* @__PURE__ */ React92.createElement(PropKeyProvider, { bind: control.bind }, /* @__PURE__ */ React92.createElement(PopoverGridContainer, { ref: rowRef }, /* @__PURE__ */ React92.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React92.createElement(ControlFormLabel, null, control.label)), /* @__PURE__ */ React92.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React92.createElement(SizeControl, { variant: "length", units: control.units, anchorRef: rowRef, disableCustom: true })))));
5609
+ const rowRef = React93.useRef(null);
5610
+ return /* @__PURE__ */ React93.createElement(PropProvider, { ...context }, /* @__PURE__ */ React93.createElement(PropKeyProvider, { bind: control.bind }, /* @__PURE__ */ React93.createElement(PopoverGridContainer, { ref: rowRef }, /* @__PURE__ */ React93.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React93.createElement(ControlFormLabel, null, control.label)), /* @__PURE__ */ React93.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React93.createElement(SizeControl, { variant: "length", units: control.units, anchorRef: rowRef, disableCustom: true })))));
5471
5611
  };
5472
5612
 
5473
5613
  // src/controls/transform-control/transform-settings-control.tsx
@@ -5481,7 +5621,7 @@ var TransformSettingsControl = ({
5481
5621
  ...popupState,
5482
5622
  anchorEl: anchorRef.current ?? void 0
5483
5623
  });
5484
- return /* @__PURE__ */ React93.createElement(
5624
+ return /* @__PURE__ */ React94.createElement(
5485
5625
  Popover5,
5486
5626
  {
5487
5627
  disablePortal: true,
@@ -5496,44 +5636,45 @@ var TransformSettingsControl = ({
5496
5636
  },
5497
5637
  ...popupProps
5498
5638
  },
5499
- /* @__PURE__ */ React93.createElement(
5639
+ /* @__PURE__ */ React94.createElement(
5500
5640
  PopoverHeader3,
5501
5641
  {
5502
- title: __45("Transform settings", "elementor"),
5642
+ title: __46("Transform settings", "elementor"),
5503
5643
  onClose: popupState.close,
5504
- icon: /* @__PURE__ */ React93.createElement(AdjustmentsIcon, { fontSize: SIZE8 })
5644
+ icon: /* @__PURE__ */ React94.createElement(AdjustmentsIcon, { fontSize: SIZE8 })
5505
5645
  }
5506
5646
  ),
5507
- /* @__PURE__ */ React93.createElement(Divider4, null),
5508
- /* @__PURE__ */ React93.createElement(PopoverContent, { sx: { px: 2, py: 1.5 } }, /* @__PURE__ */ React93.createElement(PropKeyProvider, { bind: "transform-origin" }, /* @__PURE__ */ React93.createElement(TransformOriginControl, null)), showChildrenPerspective && /* @__PURE__ */ React93.createElement(React93.Fragment, null, /* @__PURE__ */ React93.createElement(Box17, { sx: { my: 0.5 } }, /* @__PURE__ */ React93.createElement(Divider4, null)), /* @__PURE__ */ React93.createElement(ChildrenPerspectiveControl, null)))
5647
+ /* @__PURE__ */ React94.createElement(Divider4, null),
5648
+ /* @__PURE__ */ React94.createElement(PopoverContent, { sx: { px: 2, py: 1.5 } }, /* @__PURE__ */ React94.createElement(PropKeyProvider, { bind: "transform-origin" }, /* @__PURE__ */ React94.createElement(TransformOriginControl, null)), showChildrenPerspective && /* @__PURE__ */ React94.createElement(React94.Fragment, null, /* @__PURE__ */ React94.createElement(Box17, { sx: { my: 0.5 } }, /* @__PURE__ */ React94.createElement(Divider4, null)), /* @__PURE__ */ React94.createElement(ChildrenPerspectiveControl, null)))
5509
5649
  );
5510
5650
  };
5511
5651
 
5512
5652
  // src/controls/transform-control/transform-repeater-control.tsx
5513
5653
  var SIZE9 = "tiny";
5514
- var TransformRepeaterControl = createControl(() => {
5515
- const context = useBoundProp(transformPropTypeUtil);
5516
- const headerRef = useRef21(null);
5517
- const popupState = usePopupState6({ variant: "popover" });
5518
- const showChildrenPerspective = useElementCanHaveChildren();
5519
- return /* @__PURE__ */ React94.createElement(PropProvider, { ...context }, /* @__PURE__ */ React94.createElement(
5520
- TransformSettingsControl,
5521
- {
5522
- popupState,
5523
- anchorRef: headerRef,
5524
- showChildrenPerspective
5525
- }
5526
- ), /* @__PURE__ */ React94.createElement(PropKeyProvider, { bind: "transform-functions" }, /* @__PURE__ */ React94.createElement(Repeater2, { headerRef, propType: context.propType, popupState })));
5527
- });
5528
- var ToolTip = /* @__PURE__ */ React94.createElement(
5654
+ var TransformRepeaterControl = createControl(
5655
+ ({ showChildrenPerspective }) => {
5656
+ const context = useBoundProp(transformPropTypeUtil);
5657
+ const headerRef = useRef21(null);
5658
+ const popupState = usePopupState6({ variant: "popover" });
5659
+ return /* @__PURE__ */ React95.createElement(PropProvider, { ...context }, /* @__PURE__ */ React95.createElement(
5660
+ TransformSettingsControl,
5661
+ {
5662
+ popupState,
5663
+ anchorRef: headerRef,
5664
+ showChildrenPerspective
5665
+ }
5666
+ ), /* @__PURE__ */ React95.createElement(PropKeyProvider, { bind: "transform-functions" }, /* @__PURE__ */ React95.createElement(Repeater2, { headerRef, propType: context.propType, popupState })));
5667
+ }
5668
+ );
5669
+ var ToolTip = /* @__PURE__ */ React95.createElement(
5529
5670
  Box18,
5530
5671
  {
5531
5672
  component: "span",
5532
5673
  "aria-label": void 0,
5533
5674
  sx: { display: "flex", gap: 0.5, p: 2, width: 320, borderRadius: 1 }
5534
5675
  },
5535
- /* @__PURE__ */ React94.createElement(InfoCircleFilledIcon2, { sx: { color: "secondary.main" } }),
5536
- /* @__PURE__ */ React94.createElement(Typography6, { variant: "body2", color: "text.secondary", fontSize: "14px" }, __46("You can use each kind of transform only once per element.", "elementor"))
5676
+ /* @__PURE__ */ React95.createElement(InfoCircleFilledIcon2, { sx: { color: "secondary.main" } }),
5677
+ /* @__PURE__ */ React95.createElement(Typography6, { variant: "body2", color: "text.secondary", fontSize: "14px" }, __47("You can use each kind of transform only once per element.", "elementor"))
5537
5678
  );
5538
5679
  var Repeater2 = ({
5539
5680
  headerRef,
@@ -5547,21 +5688,21 @@ var Repeater2 = ({
5547
5688
  return availableValues.find((value) => !transformValues?.some((item) => item.$$type === value.$$type));
5548
5689
  };
5549
5690
  const shouldDisableAddItem = !getInitialValue2();
5550
- return /* @__PURE__ */ React94.createElement(PropProvider, { ...transformFunctionsContext }, /* @__PURE__ */ React94.createElement(
5691
+ return /* @__PURE__ */ React95.createElement(PropProvider, { ...transformFunctionsContext }, /* @__PURE__ */ React95.createElement(
5551
5692
  ControlRepeater,
5552
5693
  {
5553
5694
  initial: getInitialValue2() ?? initialTransformValue,
5554
5695
  propTypeUtil: transformFunctionsPropTypeUtil
5555
5696
  },
5556
- /* @__PURE__ */ React94.createElement(
5697
+ /* @__PURE__ */ React95.createElement(
5557
5698
  RepeaterHeader,
5558
5699
  {
5559
- label: __46("Transform", "elementor"),
5560
- adornment: () => /* @__PURE__ */ React94.createElement(ControlAdornments, { customContext: { path: ["transform"], propType } }),
5700
+ label: __47("Transform", "elementor"),
5701
+ adornment: () => /* @__PURE__ */ React95.createElement(ControlAdornments, { customContext: { path: ["transform"], propType } }),
5561
5702
  ref: headerRef
5562
5703
  },
5563
- /* @__PURE__ */ React94.createElement(TransformBasePopoverTrigger, { popupState, repeaterBindKey: bind }),
5564
- /* @__PURE__ */ React94.createElement(
5704
+ /* @__PURE__ */ React95.createElement(TransformBasePopoverTrigger, { popupState, repeaterBindKey: bind }),
5705
+ /* @__PURE__ */ React95.createElement(
5565
5706
  TooltipAddItemAction,
5566
5707
  {
5567
5708
  disabled: shouldDisableAddItem,
@@ -5571,15 +5712,15 @@ var Repeater2 = ({
5571
5712
  }
5572
5713
  )
5573
5714
  ),
5574
- /* @__PURE__ */ React94.createElement(ItemsContainer, null, /* @__PURE__ */ React94.createElement(
5715
+ /* @__PURE__ */ React95.createElement(ItemsContainer, null, /* @__PURE__ */ React95.createElement(
5575
5716
  Item,
5576
5717
  {
5577
5718
  Icon: TransformIcon,
5578
5719
  Label: TransformLabel,
5579
- actions: /* @__PURE__ */ React94.createElement(React94.Fragment, null, /* @__PURE__ */ React94.createElement(DisableItemAction, null), /* @__PURE__ */ React94.createElement(RemoveItemAction, null))
5720
+ actions: /* @__PURE__ */ React95.createElement(React95.Fragment, null, /* @__PURE__ */ React95.createElement(DisableItemAction, null), /* @__PURE__ */ React95.createElement(RemoveItemAction, null))
5580
5721
  }
5581
5722
  )),
5582
- /* @__PURE__ */ React94.createElement(EditItemPopover, null, /* @__PURE__ */ React94.createElement(TransformContent, null))
5723
+ /* @__PURE__ */ React95.createElement(EditItemPopover, null, /* @__PURE__ */ React95.createElement(TransformContent, null))
5583
5724
  ));
5584
5725
  };
5585
5726
  var TransformBasePopoverTrigger = ({
@@ -5587,24 +5728,24 @@ var TransformBasePopoverTrigger = ({
5587
5728
  repeaterBindKey
5588
5729
  }) => {
5589
5730
  const { bind } = useBoundProp();
5590
- const titleLabel = __46("Transform settings", "elementor");
5591
- return bind !== repeaterBindKey ? null : /* @__PURE__ */ React94.createElement(Tooltip8, { title: titleLabel, placement: "top" }, /* @__PURE__ */ React94.createElement(IconButton7, { size: SIZE9, "aria-label": titleLabel, ...bindTrigger4(popupState) }, /* @__PURE__ */ React94.createElement(AdjustmentsIcon2, { fontSize: SIZE9 })));
5731
+ const titleLabel = __47("Transform settings", "elementor");
5732
+ return bind !== repeaterBindKey ? null : /* @__PURE__ */ React95.createElement(Tooltip8, { title: titleLabel, placement: "top" }, /* @__PURE__ */ React95.createElement(IconButton7, { size: SIZE9, "aria-label": titleLabel, ...bindTrigger4(popupState) }, /* @__PURE__ */ React95.createElement(AdjustmentsIcon2, { fontSize: SIZE9 })));
5592
5733
  };
5593
5734
 
5594
5735
  // src/controls/transition-control/transition-repeater-control.tsx
5595
- import * as React97 from "react";
5596
- import { useEffect as useEffect10, useMemo as useMemo14, useState as useState16 } from "react";
5736
+ import * as React98 from "react";
5737
+ import { useEffect as useEffect11, useMemo as useMemo13, useState as useState16 } from "react";
5597
5738
  import {
5598
5739
  createArrayPropUtils as createArrayPropUtils2,
5599
5740
  selectionSizePropTypeUtil as selectionSizePropTypeUtil2
5600
5741
  } from "@elementor/editor-props";
5601
5742
  import { InfoCircleFilledIcon as InfoCircleFilledIcon3 } from "@elementor/icons";
5602
5743
  import { Alert as Alert2, AlertTitle as AlertTitle3, Box as Box20, Typography as Typography7 } from "@elementor/ui";
5603
- import { __ as __49 } from "@wordpress/i18n";
5744
+ import { __ as __50 } from "@wordpress/i18n";
5604
5745
 
5605
5746
  // src/controls/selection-size-control.tsx
5606
- import * as React95 from "react";
5607
- import { useMemo as useMemo12, useRef as useRef22 } from "react";
5747
+ import * as React96 from "react";
5748
+ import { useMemo as useMemo11, useRef as useRef22 } from "react";
5608
5749
  import { selectionSizePropTypeUtil } from "@elementor/editor-props";
5609
5750
  import { Grid as Grid28 } from "@elementor/ui";
5610
5751
  var SelectionSizeControl = createControl(
@@ -5612,7 +5753,7 @@ var SelectionSizeControl = createControl(
5612
5753
  const { value, setValue, propType } = useBoundProp(selectionSizePropTypeUtil);
5613
5754
  const rowRef = useRef22(null);
5614
5755
  const sizeFieldId = sizeLabel.replace(/\s+/g, "-").toLowerCase();
5615
- const currentSizeConfig = useMemo12(() => {
5756
+ const currentSizeConfig = useMemo11(() => {
5616
5757
  switch (value.selection.$$type) {
5617
5758
  case "key-value":
5618
5759
  return sizeConfigMap[value?.selection?.value.value.value || ""];
@@ -5623,7 +5764,7 @@ var SelectionSizeControl = createControl(
5623
5764
  }
5624
5765
  }, [value, sizeConfigMap]);
5625
5766
  const SelectionComponent = selectionConfig.component;
5626
- return /* @__PURE__ */ React95.createElement(PropProvider, { value, setValue, propType }, /* @__PURE__ */ React95.createElement(Grid28, { container: true, spacing: 1.5, ref: rowRef }, /* @__PURE__ */ React95.createElement(Grid28, { item: true, xs: 6, sx: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React95.createElement(ControlFormLabel, null, selectionLabel)), /* @__PURE__ */ React95.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React95.createElement(PropKeyProvider, { bind: "selection" }, /* @__PURE__ */ React95.createElement(SelectionComponent, { ...selectionConfig.props }))), currentSizeConfig && /* @__PURE__ */ React95.createElement(React95.Fragment, null, /* @__PURE__ */ React95.createElement(Grid28, { item: true, xs: 6, sx: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React95.createElement(ControlFormLabel, { htmlFor: sizeFieldId }, sizeLabel)), /* @__PURE__ */ React95.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React95.createElement(PropKeyProvider, { bind: "size" }, /* @__PURE__ */ React95.createElement(
5767
+ return /* @__PURE__ */ React96.createElement(PropProvider, { value, setValue, propType }, /* @__PURE__ */ React96.createElement(Grid28, { container: true, spacing: 1.5, ref: rowRef }, /* @__PURE__ */ React96.createElement(Grid28, { item: true, xs: 6, sx: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React96.createElement(ControlFormLabel, null, selectionLabel)), /* @__PURE__ */ React96.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React96.createElement(PropKeyProvider, { bind: "selection" }, /* @__PURE__ */ React96.createElement(SelectionComponent, { ...selectionConfig.props }))), currentSizeConfig && /* @__PURE__ */ React96.createElement(React96.Fragment, null, /* @__PURE__ */ React96.createElement(Grid28, { item: true, xs: 6, sx: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React96.createElement(ControlFormLabel, { htmlFor: sizeFieldId }, sizeLabel)), /* @__PURE__ */ React96.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React96.createElement(PropKeyProvider, { bind: "size" }, /* @__PURE__ */ React96.createElement(
5627
5768
  SizeControl,
5628
5769
  {
5629
5770
  anchorRef: rowRef,
@@ -5637,13 +5778,13 @@ var SelectionSizeControl = createControl(
5637
5778
  );
5638
5779
 
5639
5780
  // src/controls/transition-control/data.ts
5640
- import { isVersionGreaterOrEqual } from "@elementor/utils";
5641
- import { __ as __47 } from "@wordpress/i18n";
5781
+ import { hasProInstalled, isVersionGreaterOrEqual } from "@elementor/utils";
5782
+ import { __ as __48 } from "@wordpress/i18n";
5642
5783
  var initialTransitionValue = {
5643
5784
  selection: {
5644
5785
  $$type: "key-value",
5645
5786
  value: {
5646
- key: { value: __47("All properties", "elementor"), $$type: "string" },
5787
+ key: { value: __48("All properties", "elementor"), $$type: "string" },
5647
5788
  value: { value: "all", $$type: "string" }
5648
5789
  }
5649
5790
  },
@@ -5654,8 +5795,7 @@ var getIsSiteRtl = () => {
5654
5795
  return !!window.elementorFrontend?.config?.is_rtl;
5655
5796
  };
5656
5797
  var shouldExtendTransitionProperties = () => {
5657
- const hasProInstalled = !!window.elementorPro;
5658
- if (!hasProInstalled) {
5798
+ if (!hasProInstalled()) {
5659
5799
  return false;
5660
5800
  }
5661
5801
  const proVersion = window.elementorPro?.config?.version;
@@ -5668,128 +5808,128 @@ var createTransitionPropertiesList = () => {
5668
5808
  const isSiteRtl = getIsSiteRtl();
5669
5809
  const baseProperties = [
5670
5810
  {
5671
- label: __47("Default", "elementor"),
5811
+ label: __48("Default", "elementor"),
5672
5812
  type: "category",
5673
- properties: [{ label: __47("All properties", "elementor"), value: "all" }]
5813
+ properties: [{ label: __48("All properties", "elementor"), value: "all" }]
5674
5814
  },
5675
5815
  {
5676
- label: __47("Margin", "elementor"),
5816
+ label: __48("Margin", "elementor"),
5677
5817
  type: "category",
5678
5818
  properties: [
5679
- { label: __47("Margin (all)", "elementor"), value: "margin", isDisabled: true },
5680
- { label: __47("Margin bottom", "elementor"), value: "margin-block-end", isDisabled: true },
5819
+ { label: __48("Margin (all)", "elementor"), value: "margin", isDisabled: true },
5820
+ { label: __48("Margin bottom", "elementor"), value: "margin-block-end", isDisabled: true },
5681
5821
  {
5682
- label: isSiteRtl ? __47("Margin right", "elementor") : __47("Margin left", "elementor"),
5822
+ label: isSiteRtl ? __48("Margin right", "elementor") : __48("Margin left", "elementor"),
5683
5823
  value: "margin-inline-start",
5684
5824
  isDisabled: true
5685
5825
  },
5686
5826
  {
5687
- label: isSiteRtl ? __47("Margin left", "elementor") : __47("Margin right", "elementor"),
5827
+ label: isSiteRtl ? __48("Margin left", "elementor") : __48("Margin right", "elementor"),
5688
5828
  value: "margin-inline-end",
5689
5829
  isDisabled: true
5690
5830
  },
5691
- { label: __47("Margin top", "elementor"), value: "margin-block-start", isDisabled: true }
5831
+ { label: __48("Margin top", "elementor"), value: "margin-block-start", isDisabled: true }
5692
5832
  ]
5693
5833
  },
5694
5834
  {
5695
- label: __47("Padding", "elementor"),
5835
+ label: __48("Padding", "elementor"),
5696
5836
  type: "category",
5697
5837
  properties: [
5698
- { label: __47("Padding (all)", "elementor"), value: "padding", isDisabled: true },
5699
- { label: __47("Padding bottom", "elementor"), value: "padding-block-end", isDisabled: true },
5838
+ { label: __48("Padding (all)", "elementor"), value: "padding", isDisabled: true },
5839
+ { label: __48("Padding bottom", "elementor"), value: "padding-block-end", isDisabled: true },
5700
5840
  {
5701
- label: isSiteRtl ? __47("Padding right", "elementor") : __47("Padding left", "elementor"),
5841
+ label: isSiteRtl ? __48("Padding right", "elementor") : __48("Padding left", "elementor"),
5702
5842
  value: "padding-inline-start",
5703
5843
  isDisabled: true
5704
5844
  },
5705
5845
  {
5706
- label: isSiteRtl ? __47("Padding left", "elementor") : __47("Padding right", "elementor"),
5846
+ label: isSiteRtl ? __48("Padding left", "elementor") : __48("Padding right", "elementor"),
5707
5847
  value: "padding-inline-end",
5708
5848
  isDisabled: true
5709
5849
  },
5710
- { label: __47("Padding top", "elementor"), value: "padding-block-start", isDisabled: true }
5850
+ { label: __48("Padding top", "elementor"), value: "padding-block-start", isDisabled: true }
5711
5851
  ]
5712
5852
  },
5713
5853
  {
5714
- label: __47("Flex", "elementor"),
5854
+ label: __48("Flex", "elementor"),
5715
5855
  type: "category",
5716
5856
  properties: [
5717
- { label: __47("Flex (all)", "elementor"), value: "flex", isDisabled: true },
5718
- { label: __47("Flex grow", "elementor"), value: "flex-grow", isDisabled: true },
5719
- { label: __47("Flex shrink", "elementor"), value: "flex-shrink", isDisabled: true },
5720
- { label: __47("Flex basis", "elementor"), value: "flex-basis", isDisabled: true }
5857
+ { label: __48("Flex (all)", "elementor"), value: "flex", isDisabled: true },
5858
+ { label: __48("Flex grow", "elementor"), value: "flex-grow", isDisabled: true },
5859
+ { label: __48("Flex shrink", "elementor"), value: "flex-shrink", isDisabled: true },
5860
+ { label: __48("Flex basis", "elementor"), value: "flex-basis", isDisabled: true }
5721
5861
  ]
5722
5862
  },
5723
5863
  {
5724
- label: __47("Size", "elementor"),
5864
+ label: __48("Size", "elementor"),
5725
5865
  type: "category",
5726
5866
  properties: [
5727
- { label: __47("Width", "elementor"), value: "width", isDisabled: true },
5728
- { label: __47("Height", "elementor"), value: "height", isDisabled: true },
5729
- { label: __47("Max height", "elementor"), value: "max-height", isDisabled: true },
5730
- { label: __47("Max width", "elementor"), value: "max-width", isDisabled: true },
5731
- { label: __47("Min height", "elementor"), value: "min-height", isDisabled: true },
5732
- { label: __47("Min width", "elementor"), value: "min-width", isDisabled: true }
5867
+ { label: __48("Width", "elementor"), value: "width", isDisabled: true },
5868
+ { label: __48("Height", "elementor"), value: "height", isDisabled: true },
5869
+ { label: __48("Max height", "elementor"), value: "max-height", isDisabled: true },
5870
+ { label: __48("Max width", "elementor"), value: "max-width", isDisabled: true },
5871
+ { label: __48("Min height", "elementor"), value: "min-height", isDisabled: true },
5872
+ { label: __48("Min width", "elementor"), value: "min-width", isDisabled: true }
5733
5873
  ]
5734
5874
  },
5735
5875
  {
5736
- label: __47("Position", "elementor"),
5876
+ label: __48("Position", "elementor"),
5737
5877
  type: "category",
5738
5878
  properties: [
5739
- { label: __47("Top", "elementor"), value: "inset-block-start", isDisabled: true },
5879
+ { label: __48("Top", "elementor"), value: "inset-block-start", isDisabled: true },
5740
5880
  {
5741
- label: isSiteRtl ? __47("Right", "elementor") : __47("Left", "elementor"),
5881
+ label: isSiteRtl ? __48("Right", "elementor") : __48("Left", "elementor"),
5742
5882
  value: "inset-inline-start",
5743
5883
  isDisabled: true
5744
5884
  },
5745
5885
  {
5746
- label: isSiteRtl ? __47("Left", "elementor") : __47("Right", "elementor"),
5886
+ label: isSiteRtl ? __48("Left", "elementor") : __48("Right", "elementor"),
5747
5887
  value: "inset-inline-end",
5748
5888
  isDisabled: true
5749
5889
  },
5750
- { label: __47("Bottom", "elementor"), value: "inset-block-end", isDisabled: true },
5751
- { label: __47("Z-index", "elementor"), value: "z-index", isDisabled: true }
5890
+ { label: __48("Bottom", "elementor"), value: "inset-block-end", isDisabled: true },
5891
+ { label: __48("Z-index", "elementor"), value: "z-index", isDisabled: true }
5752
5892
  ]
5753
5893
  },
5754
5894
  {
5755
- label: __47("Typography", "elementor"),
5895
+ label: __48("Typography", "elementor"),
5756
5896
  type: "category",
5757
5897
  properties: [
5758
- { label: __47("Font color", "elementor"), value: "color", isDisabled: true },
5759
- { label: __47("Font size", "elementor"), value: "font-size", isDisabled: true },
5760
- { label: __47("Line height", "elementor"), value: "line-height", isDisabled: true },
5761
- { label: __47("Letter spacing", "elementor"), value: "letter-spacing", isDisabled: true },
5762
- { label: __47("Word spacing", "elementor"), value: "word-spacing", isDisabled: true },
5763
- { label: __47("Font variations", "elementor"), value: "font-variation-settings", isDisabled: true },
5764
- { label: __47("Text stroke color", "elementor"), value: "-webkit-text-stroke-color", isDisabled: true }
5898
+ { label: __48("Font color", "elementor"), value: "color", isDisabled: true },
5899
+ { label: __48("Font size", "elementor"), value: "font-size", isDisabled: true },
5900
+ { label: __48("Line height", "elementor"), value: "line-height", isDisabled: true },
5901
+ { label: __48("Letter spacing", "elementor"), value: "letter-spacing", isDisabled: true },
5902
+ { label: __48("Word spacing", "elementor"), value: "word-spacing", isDisabled: true },
5903
+ { label: __48("Font variations", "elementor"), value: "font-variation-settings", isDisabled: true },
5904
+ { label: __48("Text stroke color", "elementor"), value: "-webkit-text-stroke-color", isDisabled: true }
5765
5905
  ]
5766
5906
  },
5767
5907
  {
5768
- label: __47("Background", "elementor"),
5908
+ label: __48("Background", "elementor"),
5769
5909
  type: "category",
5770
5910
  properties: [
5771
- { label: __47("Background color", "elementor"), value: "background-color", isDisabled: true },
5772
- { label: __47("Background position", "elementor"), value: "background-position", isDisabled: true },
5773
- { label: __47("Box shadow", "elementor"), value: "box-shadow", isDisabled: true }
5911
+ { label: __48("Background color", "elementor"), value: "background-color", isDisabled: true },
5912
+ { label: __48("Background position", "elementor"), value: "background-position", isDisabled: true },
5913
+ { label: __48("Box shadow", "elementor"), value: "box-shadow", isDisabled: true }
5774
5914
  ]
5775
5915
  },
5776
5916
  {
5777
- label: __47("Border", "elementor"),
5917
+ label: __48("Border", "elementor"),
5778
5918
  type: "category",
5779
5919
  properties: [
5780
- { label: __47("Border (all)", "elementor"), value: "border", isDisabled: true },
5781
- { label: __47("Border radius", "elementor"), value: "border-radius", isDisabled: true },
5782
- { label: __47("Border color", "elementor"), value: "border-color", isDisabled: true },
5783
- { label: __47("Border width", "elementor"), value: "border-width", isDisabled: true }
5920
+ { label: __48("Border (all)", "elementor"), value: "border", isDisabled: true },
5921
+ { label: __48("Border radius", "elementor"), value: "border-radius", isDisabled: true },
5922
+ { label: __48("Border color", "elementor"), value: "border-color", isDisabled: true },
5923
+ { label: __48("Border width", "elementor"), value: "border-width", isDisabled: true }
5784
5924
  ]
5785
5925
  },
5786
5926
  {
5787
- label: __47("Effects", "elementor"),
5927
+ label: __48("Effects", "elementor"),
5788
5928
  type: "category",
5789
5929
  properties: [
5790
- { label: __47("Opacity", "elementor"), value: "opacity", isDisabled: true },
5791
- { label: __47("Transform (all)", "elementor"), value: "transform", isDisabled: true },
5792
- { label: __47("Filter (all)", "elementor"), value: "filter", isDisabled: true }
5930
+ { label: __48("Opacity", "elementor"), value: "opacity", isDisabled: true },
5931
+ { label: __48("Transform (all)", "elementor"), value: "transform", isDisabled: true },
5932
+ { label: __48("Filter (all)", "elementor"), value: "filter", isDisabled: true }
5793
5933
  ]
5794
5934
  }
5795
5935
  ];
@@ -5825,13 +5965,13 @@ function subscribeToTransitionEvent() {
5825
5965
  }
5826
5966
 
5827
5967
  // src/controls/transition-control/transition-selector.tsx
5828
- import * as React96 from "react";
5829
- import { useMemo as useMemo13, useRef as useRef23 } from "react";
5968
+ import * as React97 from "react";
5969
+ import { useMemo as useMemo12, useRef as useRef23 } from "react";
5830
5970
  import { keyValuePropTypeUtil as keyValuePropTypeUtil2 } from "@elementor/editor-props";
5831
5971
  import { PromotionAlert, PromotionChip } from "@elementor/editor-ui";
5832
5972
  import { ChevronDownIcon as ChevronDownIcon3, VariationsIcon } from "@elementor/icons";
5833
5973
  import { bindPopover as bindPopover6, bindTrigger as bindTrigger5, Box as Box19, Popover as Popover6, UnstableTag as UnstableTag3, usePopupState as usePopupState7 } from "@elementor/ui";
5834
- import { __ as __48 } from "@wordpress/i18n";
5974
+ import { __ as __49 } from "@wordpress/i18n";
5835
5975
  var toTransitionSelectorValue = (label) => {
5836
5976
  for (const category of transitionProperties) {
5837
5977
  const property = category.properties.find((prop) => prop.label === label);
@@ -5874,7 +6014,7 @@ var TransitionSelector = ({
5874
6014
  } = value;
5875
6015
  const defaultRef = useRef23(null);
5876
6016
  const popoverState = usePopupState7({ variant: "popover" });
5877
- const disabledCategories = useMemo13(() => {
6017
+ const disabledCategories = useMemo12(() => {
5878
6018
  return new Set(
5879
6019
  transitionProperties.filter((cat) => cat.properties.some((prop) => prop.isDisabled)).map((cat) => cat.label)
5880
6020
  );
@@ -5894,7 +6034,7 @@ var TransitionSelector = ({
5894
6034
  return [
5895
6035
  first,
5896
6036
  {
5897
- label: __48("Recently Used", "elementor"),
6037
+ label: __49("Recently Used", "elementor"),
5898
6038
  items: recentItems
5899
6039
  },
5900
6040
  ...rest
@@ -5918,16 +6058,16 @@ var TransitionSelector = ({
5918
6058
  left: rect.right + 36
5919
6059
  };
5920
6060
  };
5921
- return /* @__PURE__ */ React96.createElement(Box19, { ref: defaultRef }, /* @__PURE__ */ React96.createElement(ControlActions, null, /* @__PURE__ */ React96.createElement(
6061
+ return /* @__PURE__ */ React97.createElement(Box19, { ref: defaultRef }, /* @__PURE__ */ React97.createElement(ControlActions, null, /* @__PURE__ */ React97.createElement(
5922
6062
  UnstableTag3,
5923
6063
  {
5924
6064
  variant: "outlined",
5925
6065
  label: transitionLabel,
5926
- endIcon: /* @__PURE__ */ React96.createElement(ChevronDownIcon3, { fontSize: "tiny" }),
6066
+ endIcon: /* @__PURE__ */ React97.createElement(ChevronDownIcon3, { fontSize: "tiny" }),
5927
6067
  ...bindTrigger5(popoverState),
5928
6068
  fullWidth: true
5929
6069
  }
5930
- )), /* @__PURE__ */ React96.createElement(
6070
+ )), /* @__PURE__ */ React97.createElement(
5931
6071
  Popover6,
5932
6072
  {
5933
6073
  disablePortal: true,
@@ -5938,7 +6078,7 @@ var TransitionSelector = ({
5938
6078
  anchorOrigin: { vertical: "top", horizontal: "right" },
5939
6079
  transformOrigin: { vertical: "top", horizontal: "left" }
5940
6080
  },
5941
- /* @__PURE__ */ React96.createElement(
6081
+ /* @__PURE__ */ React97.createElement(
5942
6082
  ItemSelector,
5943
6083
  {
5944
6084
  itemsList: getItemList(),
@@ -5946,10 +6086,10 @@ var TransitionSelector = ({
5946
6086
  onItemChange: handleTransitionPropertyChange,
5947
6087
  onClose: popoverState.close,
5948
6088
  sectionWidth: 268,
5949
- title: __48("Transition Property", "elementor"),
6089
+ title: __49("Transition Property", "elementor"),
5950
6090
  icon: VariationsIcon,
5951
6091
  disabledItems: includeCurrentValueInOptions(value, disabledItems),
5952
- categoryItemContentTemplate: (item) => /* @__PURE__ */ React96.createElement(
6092
+ categoryItemContentTemplate: (item) => /* @__PURE__ */ React97.createElement(
5953
6093
  Box19,
5954
6094
  {
5955
6095
  sx: {
@@ -5959,13 +6099,13 @@ var TransitionSelector = ({
5959
6099
  width: "100%"
5960
6100
  }
5961
6101
  },
5962
- /* @__PURE__ */ React96.createElement("span", null, item.value),
5963
- showPromotion && disabledCategories.has(item.value) && /* @__PURE__ */ React96.createElement(PromotionChip, null)
6102
+ /* @__PURE__ */ React97.createElement("span", null, item.value),
6103
+ showPromotion && disabledCategories.has(item.value) && /* @__PURE__ */ React97.createElement(PromotionChip, null)
5964
6104
  ),
5965
- footer: showPromotion ? /* @__PURE__ */ React96.createElement(
6105
+ footer: showPromotion ? /* @__PURE__ */ React97.createElement(
5966
6106
  PromotionAlert,
5967
6107
  {
5968
- message: __48(
6108
+ message: __49(
5969
6109
  "Upgrade to customize transition properties and control effects.",
5970
6110
  "elementor"
5971
6111
  ),
@@ -6000,8 +6140,8 @@ var areAllPropertiesUsed = (value = []) => {
6000
6140
  };
6001
6141
  var getSelectionSizeProps = (recentlyUsedList, disabledItems, showPromotion) => {
6002
6142
  return {
6003
- selectionLabel: __49("Type", "elementor"),
6004
- sizeLabel: __49("Duration", "elementor"),
6143
+ selectionLabel: __50("Type", "elementor"),
6144
+ sizeLabel: __50("Duration", "elementor"),
6005
6145
  selectionConfig: {
6006
6146
  component: TransitionSelector,
6007
6147
  props: {
@@ -6077,7 +6217,7 @@ var getInitialValue = (values = []) => {
6077
6217
  }
6078
6218
  return initialTransitionValue;
6079
6219
  };
6080
- var disableAddItemTooltipContent = /* @__PURE__ */ React97.createElement(
6220
+ var disableAddItemTooltipContent = /* @__PURE__ */ React98.createElement(
6081
6221
  Alert2,
6082
6222
  {
6083
6223
  sx: {
@@ -6085,10 +6225,10 @@ var disableAddItemTooltipContent = /* @__PURE__ */ React97.createElement(
6085
6225
  gap: 0.5
6086
6226
  },
6087
6227
  color: "secondary",
6088
- icon: /* @__PURE__ */ React97.createElement(InfoCircleFilledIcon3, null)
6228
+ icon: /* @__PURE__ */ React98.createElement(InfoCircleFilledIcon3, null)
6089
6229
  },
6090
- /* @__PURE__ */ React97.createElement(AlertTitle3, null, __49("Transitions", "elementor")),
6091
- /* @__PURE__ */ React97.createElement(Box20, { component: "span" }, /* @__PURE__ */ React97.createElement(Typography7, { variant: "body2" }, __49("Switch to 'Normal' state to add a transition.", "elementor")))
6230
+ /* @__PURE__ */ React98.createElement(AlertTitle3, null, __50("Transitions", "elementor")),
6231
+ /* @__PURE__ */ React98.createElement(Box20, { component: "span" }, /* @__PURE__ */ React98.createElement(Typography7, { variant: "body2" }, __50("Switch to 'Normal' state to add a transition.", "elementor")))
6092
6232
  );
6093
6233
  var TransitionRepeaterControl = createControl(
6094
6234
  ({
@@ -6098,18 +6238,18 @@ var TransitionRepeaterControl = createControl(
6098
6238
  const currentStyleIsNormal = currentStyleState === null;
6099
6239
  const [recentlyUsedList, setRecentlyUsedList] = useState16([]);
6100
6240
  const { value, setValue } = useBoundProp(childArrayPropTypeUtil);
6101
- const { allDisabled: disabledItems, proDisabled: proDisabledItems } = useMemo14(
6241
+ const { allDisabled: disabledItems, proDisabled: proDisabledItems } = useMemo13(
6102
6242
  () => getDisabledItemLabels(value),
6103
6243
  [value]
6104
6244
  );
6105
- const allowedTransitionSet = useMemo14(() => {
6245
+ const allowedTransitionSet = useMemo13(() => {
6106
6246
  const set = /* @__PURE__ */ new Set();
6107
6247
  transitionProperties.forEach((category) => {
6108
6248
  category.properties.forEach((prop) => set.add(prop.value));
6109
6249
  });
6110
6250
  return set;
6111
6251
  }, []);
6112
- useEffect10(() => {
6252
+ useEffect11(() => {
6113
6253
  if (!value || value.length === 0) {
6114
6254
  return;
6115
6255
  }
@@ -6121,18 +6261,18 @@ var TransitionRepeaterControl = createControl(
6121
6261
  setValue(sanitized);
6122
6262
  }
6123
6263
  }, [allowedTransitionSet]);
6124
- useEffect10(() => {
6264
+ useEffect11(() => {
6125
6265
  recentlyUsedListGetter().then(setRecentlyUsedList);
6126
6266
  }, [recentlyUsedListGetter]);
6127
- const allPropertiesUsed = useMemo14(() => areAllPropertiesUsed(value), [value]);
6267
+ const allPropertiesUsed = useMemo13(() => areAllPropertiesUsed(value), [value]);
6128
6268
  const isAddItemDisabled = !currentStyleIsNormal || allPropertiesUsed;
6129
- return /* @__PURE__ */ React97.createElement(
6269
+ return /* @__PURE__ */ React98.createElement(
6130
6270
  RepeatableControl,
6131
6271
  {
6132
- label: __49("Transitions", "elementor"),
6133
- repeaterLabel: __49("Transitions", "elementor"),
6272
+ label: __50("Transitions", "elementor"),
6273
+ repeaterLabel: __50("Transitions", "elementor"),
6134
6274
  patternLabel: "${value.selection.value.key.value}: ${value.size.value.size}${value.size.value.unit}",
6135
- placeholder: __49("Empty Transition", "elementor"),
6275
+ placeholder: __50("Empty Transition", "elementor"),
6136
6276
  showDuplicate: false,
6137
6277
  showToggle: true,
6138
6278
  initialValues: getInitialValue(value),
@@ -6153,7 +6293,7 @@ var TransitionRepeaterControl = createControl(
6153
6293
  );
6154
6294
 
6155
6295
  // src/controls/date-time-control.tsx
6156
- import * as React98 from "react";
6296
+ import * as React99 from "react";
6157
6297
  import * as dayjs from "dayjs";
6158
6298
  import { isTransformable as isTransformable2, stringPropTypeUtil as stringPropTypeUtil15 } from "@elementor/editor-props";
6159
6299
  import { DateTimePropTypeUtil } from "@elementor/editor-props";
@@ -6201,7 +6341,7 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
6201
6341
  const base = dayjs.default();
6202
6342
  return base.hour(h).minute(m).second(0).millisecond(0);
6203
6343
  };
6204
- return /* @__PURE__ */ React98.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React98.createElement(ControlActions, null, /* @__PURE__ */ React98.createElement(LocalizationProvider, null, /* @__PURE__ */ React98.createElement(Box21, { display: "flex", gap: 1, alignItems: "center" }, /* @__PURE__ */ React98.createElement(PropKeyProvider, { bind: "date" }, /* @__PURE__ */ React98.createElement(
6344
+ return /* @__PURE__ */ React99.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React99.createElement(ControlActions, null, /* @__PURE__ */ React99.createElement(LocalizationProvider, null, /* @__PURE__ */ React99.createElement(Box21, { display: "flex", gap: 1, alignItems: "center" }, /* @__PURE__ */ React99.createElement(PropKeyProvider, { bind: "date" }, /* @__PURE__ */ React99.createElement(
6205
6345
  DatePicker,
6206
6346
  {
6207
6347
  value: parseDateValue(stringPropTypeUtil15.extract(value?.date)),
@@ -6213,7 +6353,7 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
6213
6353
  openPickerIcon: { fontSize: "tiny" }
6214
6354
  }
6215
6355
  }
6216
- )), /* @__PURE__ */ React98.createElement(PropKeyProvider, { bind: "time" }, /* @__PURE__ */ React98.createElement(
6356
+ )), /* @__PURE__ */ React99.createElement(PropKeyProvider, { bind: "time" }, /* @__PURE__ */ React99.createElement(
6217
6357
  TimePicker,
6218
6358
  {
6219
6359
  value: parseTimeValue(stringPropTypeUtil15.extract(value?.time)),
@@ -6229,16 +6369,16 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
6229
6369
  });
6230
6370
 
6231
6371
  // src/controls/inline-editing-control.tsx
6232
- import * as React100 from "react";
6233
- import { useCallback as useCallback3, useEffect as useEffect12, useMemo as useMemo15 } from "react";
6372
+ import * as React101 from "react";
6373
+ import { useCallback as useCallback3, useEffect as useEffect13, useMemo as useMemo14 } from "react";
6234
6374
  import { htmlV3PropTypeUtil, parseHtmlChildren, stringPropTypeUtil as stringPropTypeUtil16 } from "@elementor/editor-props";
6235
6375
  import { Box as Box23 } from "@elementor/ui";
6236
6376
  import { debounce as debounce4 } from "@elementor/utils";
6237
6377
 
6238
6378
  // src/components/inline-editor.tsx
6239
- import * as React99 from "react";
6379
+ import * as React100 from "react";
6240
6380
  import {
6241
- useEffect as useEffect11,
6381
+ useEffect as useEffect12,
6242
6382
  useRef as useRef24
6243
6383
  } from "react";
6244
6384
  import { Box as Box22, ClickAwayListener } from "@elementor/ui";
@@ -6270,7 +6410,7 @@ function isEmpty(value = "") {
6270
6410
  var ITALIC_KEYBOARD_SHORTCUT = "i";
6271
6411
  var BOLD_KEYBOARD_SHORTCUT = "b";
6272
6412
  var UNDERLINE_KEYBOARD_SHORTCUT = "u";
6273
- var InlineEditor = React99.forwardRef((props, ref) => {
6413
+ var InlineEditor = React100.forwardRef((props, ref) => {
6274
6414
  const {
6275
6415
  value,
6276
6416
  setValue,
@@ -6370,7 +6510,7 @@ var InlineEditor = React99.forwardRef((props, ref) => {
6370
6510
  editor.commands.setContent(value, { emitUpdate: false });
6371
6511
  }
6372
6512
  }, [editor, value]);
6373
- return /* @__PURE__ */ React99.createElement(React99.Fragment, null, /* @__PURE__ */ React99.createElement(
6513
+ return /* @__PURE__ */ React100.createElement(React100.Fragment, null, /* @__PURE__ */ React100.createElement(
6374
6514
  Wrapper,
6375
6515
  {
6376
6516
  containerRef,
@@ -6379,12 +6519,12 @@ var InlineEditor = React99.forwardRef((props, ref) => {
6379
6519
  onBlur,
6380
6520
  className: wrapperClassName
6381
6521
  },
6382
- /* @__PURE__ */ React99.createElement(EditorContent, { ref, editor })
6522
+ /* @__PURE__ */ React100.createElement(EditorContent, { ref, editor })
6383
6523
  ));
6384
6524
  });
6385
6525
  var Wrapper = ({ children, containerRef, editor, sx, onBlur, className }) => {
6386
- const wrappedChildren = /* @__PURE__ */ React99.createElement(Box22, { ref: containerRef, ...sx, className }, children);
6387
- return onBlur ? /* @__PURE__ */ React99.createElement(
6526
+ const wrappedChildren = /* @__PURE__ */ React100.createElement(Box22, { ref: containerRef, ...sx, className }, children);
6527
+ return onBlur ? /* @__PURE__ */ React100.createElement(
6388
6528
  ClickAwayListener,
6389
6529
  {
6390
6530
  onClickAway: (event) => {
@@ -6395,11 +6535,11 @@ var Wrapper = ({ children, containerRef, editor, sx, onBlur, className }) => {
6395
6535
  }
6396
6536
  },
6397
6537
  wrappedChildren
6398
- ) : /* @__PURE__ */ React99.createElement(React99.Fragment, null, wrappedChildren);
6538
+ ) : /* @__PURE__ */ React100.createElement(React100.Fragment, null, wrappedChildren);
6399
6539
  };
6400
6540
  var useOnUpdate = (callback, dependencies) => {
6401
6541
  const hasMounted = useRef24(false);
6402
- useEffect11(() => {
6542
+ useEffect12(() => {
6403
6543
  if (hasMounted.current) {
6404
6544
  callback();
6405
6545
  } else {
@@ -6418,7 +6558,7 @@ var InlineEditingControl = createControl(
6418
6558
  }) => {
6419
6559
  const { value, setValue } = useBoundProp(htmlV3PropTypeUtil);
6420
6560
  const content = stringPropTypeUtil16.extract(value?.content ?? null) ?? "";
6421
- const debouncedParse = useMemo15(
6561
+ const debouncedParse = useMemo14(
6422
6562
  () => debounce4((html) => {
6423
6563
  const parsed = parseHtmlChildren(html);
6424
6564
  setValue({
@@ -6439,8 +6579,8 @@ var InlineEditingControl = createControl(
6439
6579
  },
6440
6580
  [setValue, value?.children, debouncedParse]
6441
6581
  );
6442
- useEffect12(() => () => debouncedParse.cancel(), [debouncedParse]);
6443
- return /* @__PURE__ */ React100.createElement(ControlActions, null, /* @__PURE__ */ React100.createElement(
6582
+ useEffect13(() => () => debouncedParse.cancel(), [debouncedParse]);
6583
+ return /* @__PURE__ */ React101.createElement(ControlActions, null, /* @__PURE__ */ React101.createElement(
6444
6584
  Box23,
6445
6585
  {
6446
6586
  sx: {
@@ -6478,98 +6618,98 @@ var InlineEditingControl = createControl(
6478
6618
  ...attributes,
6479
6619
  ...props
6480
6620
  },
6481
- /* @__PURE__ */ React100.createElement(InlineEditor, { value: content, setValue: handleChange })
6621
+ /* @__PURE__ */ React101.createElement(InlineEditor, { value: content, setValue: handleChange })
6482
6622
  ));
6483
6623
  }
6484
6624
  );
6485
6625
 
6486
6626
  // src/controls/email-form-action-control.tsx
6487
- import * as React101 from "react";
6627
+ import * as React102 from "react";
6488
6628
  import { emailPropTypeUtil } from "@elementor/editor-props";
6489
6629
  import { CollapsibleContent } from "@elementor/editor-ui";
6490
- import { Box as Box24, Divider as Divider5, Grid as Grid29, Stack as Stack16 } from "@elementor/ui";
6491
- import { __ as __50 } from "@wordpress/i18n";
6492
- var EmailField = ({ bind, label, placeholder }) => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React101.createElement(Grid29, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React101.createElement(Grid29, { item: true }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, label)), /* @__PURE__ */ React101.createElement(Grid29, { item: true }, /* @__PURE__ */ React101.createElement(TextControl, { placeholder }))));
6493
- var SendToField = () => /* @__PURE__ */ React101.createElement(
6630
+ import { Box as Box24, Divider as Divider5, Grid as Grid29, Stack as Stack17 } from "@elementor/ui";
6631
+ import { __ as __51 } from "@wordpress/i18n";
6632
+ var EmailField = ({ bind, label, placeholder }) => /* @__PURE__ */ React102.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React102.createElement(Grid29, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React102.createElement(Grid29, { item: true }, /* @__PURE__ */ React102.createElement(ControlFormLabel, null, label)), /* @__PURE__ */ React102.createElement(Grid29, { item: true }, /* @__PURE__ */ React102.createElement(TextControl, { placeholder }))));
6633
+ var SendToField = () => /* @__PURE__ */ React102.createElement(
6494
6634
  EmailField,
6495
6635
  {
6496
6636
  bind: "to",
6497
- label: __50("Send To", "elementor"),
6498
- placeholder: __50("Where should we send new submissions?", "elementor")
6637
+ label: __51("Send To", "elementor"),
6638
+ placeholder: __51("Where should we send new submissions?", "elementor")
6499
6639
  }
6500
6640
  );
6501
- var SubjectField = () => /* @__PURE__ */ React101.createElement(
6641
+ var SubjectField = () => /* @__PURE__ */ React102.createElement(
6502
6642
  EmailField,
6503
6643
  {
6504
6644
  bind: "subject",
6505
- label: __50("Email Subject", "elementor"),
6506
- placeholder: __50("New form submission", "elementor")
6645
+ label: __51("Email Subject", "elementor"),
6646
+ placeholder: __51("New form submission", "elementor")
6507
6647
  }
6508
6648
  );
6509
- var MessageField = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "message" }, /* @__PURE__ */ React101.createElement(Grid29, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React101.createElement(Grid29, { item: true }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, __50("Message", "elementor"))), /* @__PURE__ */ React101.createElement(Grid29, { item: true }, /* @__PURE__ */ React101.createElement(
6649
+ var MessageField = () => /* @__PURE__ */ React102.createElement(PropKeyProvider, { bind: "message" }, /* @__PURE__ */ React102.createElement(Grid29, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React102.createElement(Grid29, { item: true }, /* @__PURE__ */ React102.createElement(ControlFormLabel, null, __51("Message", "elementor"))), /* @__PURE__ */ React102.createElement(Grid29, { item: true }, /* @__PURE__ */ React102.createElement(
6510
6650
  TextAreaControl,
6511
6651
  {
6512
- placeholder: __50(
6652
+ placeholder: __51(
6513
6653
  "By default, all form fields are sent via [all-fields] shortcode.",
6514
6654
  "elementor"
6515
6655
  )
6516
6656
  }
6517
6657
  ))));
6518
- var FromEmailField = () => /* @__PURE__ */ React101.createElement(
6658
+ var FromEmailField = () => /* @__PURE__ */ React102.createElement(
6519
6659
  EmailField,
6520
6660
  {
6521
6661
  bind: "from",
6522
- label: __50("From email", "elementor"),
6523
- placeholder: __50("What email address should appear as the sender?", "elementor")
6662
+ label: __51("From email", "elementor"),
6663
+ placeholder: __51("What email address should appear as the sender?", "elementor")
6524
6664
  }
6525
6665
  );
6526
- var FromNameField = () => /* @__PURE__ */ React101.createElement(
6666
+ var FromNameField = () => /* @__PURE__ */ React102.createElement(
6527
6667
  EmailField,
6528
6668
  {
6529
6669
  bind: "from-name",
6530
- label: __50("From name", "elementor"),
6531
- placeholder: __50("What name should appear as the sender?", "elementor")
6670
+ label: __51("From name", "elementor"),
6671
+ placeholder: __51("What name should appear as the sender?", "elementor")
6532
6672
  }
6533
6673
  );
6534
- var ReplyToField = () => /* @__PURE__ */ React101.createElement(EmailField, { bind: "reply-to", label: __50("Reply-to", "elementor") });
6535
- var CcField = () => /* @__PURE__ */ React101.createElement(EmailField, { bind: "cc", label: __50("Cc", "elementor") });
6536
- var BccField = () => /* @__PURE__ */ React101.createElement(EmailField, { bind: "bcc", label: __50("Bcc", "elementor") });
6537
- var MetaDataField = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "meta-data" }, /* @__PURE__ */ React101.createElement(Stack16, { gap: 0.5 }, /* @__PURE__ */ React101.createElement(ControlLabel, null, __50("Meta data", "elementor")), /* @__PURE__ */ React101.createElement(
6674
+ var ReplyToField = () => /* @__PURE__ */ React102.createElement(EmailField, { bind: "reply-to", label: __51("Reply-to", "elementor") });
6675
+ var CcField = () => /* @__PURE__ */ React102.createElement(EmailField, { bind: "cc", label: __51("Cc", "elementor") });
6676
+ var BccField = () => /* @__PURE__ */ React102.createElement(EmailField, { bind: "bcc", label: __51("Bcc", "elementor") });
6677
+ var MetaDataField = () => /* @__PURE__ */ React102.createElement(PropKeyProvider, { bind: "meta-data" }, /* @__PURE__ */ React102.createElement(Stack17, { gap: 0.5 }, /* @__PURE__ */ React102.createElement(ControlLabel, null, __51("Meta data", "elementor")), /* @__PURE__ */ React102.createElement(
6538
6678
  ChipsControl,
6539
6679
  {
6540
6680
  options: [
6541
- { label: __50("Date", "elementor"), value: "date" },
6542
- { label: __50("Time", "elementor"), value: "time" },
6543
- { label: __50("Page URL", "elementor"), value: "page-url" },
6544
- { label: __50("User agent", "elementor"), value: "user-agent" },
6545
- { label: __50("Credit", "elementor"), value: "credit" }
6681
+ { label: __51("Date", "elementor"), value: "date" },
6682
+ { label: __51("Time", "elementor"), value: "time" },
6683
+ { label: __51("Page URL", "elementor"), value: "page-url" },
6684
+ { label: __51("User agent", "elementor"), value: "user-agent" },
6685
+ { label: __51("Credit", "elementor"), value: "credit" }
6546
6686
  ]
6547
6687
  }
6548
6688
  )));
6549
- var SendAsField = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "send-as" }, /* @__PURE__ */ React101.createElement(Grid29, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React101.createElement(Grid29, { item: true }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, __50("Send as", "elementor"))), /* @__PURE__ */ React101.createElement(Grid29, { item: true }, /* @__PURE__ */ React101.createElement(
6689
+ var SendAsField = () => /* @__PURE__ */ React102.createElement(PropKeyProvider, { bind: "send-as" }, /* @__PURE__ */ React102.createElement(Grid29, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React102.createElement(Grid29, { item: true }, /* @__PURE__ */ React102.createElement(ControlFormLabel, null, __51("Send as", "elementor"))), /* @__PURE__ */ React102.createElement(Grid29, { item: true }, /* @__PURE__ */ React102.createElement(
6550
6690
  SelectControl,
6551
6691
  {
6552
6692
  options: [
6553
- { label: __50("HTML", "elementor"), value: "html" },
6554
- { label: __50("Plain Text", "elementor"), value: "plain" }
6693
+ { label: __51("HTML", "elementor"), value: "html" },
6694
+ { label: __51("Plain Text", "elementor"), value: "plain" }
6555
6695
  ]
6556
6696
  }
6557
6697
  ))));
6558
- var AdvancedSettings = () => /* @__PURE__ */ React101.createElement(CollapsibleContent, { defaultOpen: false }, /* @__PURE__ */ React101.createElement(Box24, { sx: { pt: 2 } }, /* @__PURE__ */ React101.createElement(Stack16, { gap: 2 }, /* @__PURE__ */ React101.createElement(FromNameField, null), /* @__PURE__ */ React101.createElement(ReplyToField, null), /* @__PURE__ */ React101.createElement(CcField, null), /* @__PURE__ */ React101.createElement(BccField, null), /* @__PURE__ */ React101.createElement(Divider5, null), /* @__PURE__ */ React101.createElement(MetaDataField, null), /* @__PURE__ */ React101.createElement(SendAsField, null))));
6698
+ 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))));
6559
6699
  var EmailFormActionControl = createControl(() => {
6560
6700
  const { value, setValue, ...propContext } = useBoundProp(emailPropTypeUtil);
6561
- return /* @__PURE__ */ React101.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React101.createElement(Stack16, { gap: 2 }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, __50("Email settings", "elementor")), /* @__PURE__ */ React101.createElement(SendToField, null), /* @__PURE__ */ React101.createElement(SubjectField, null), /* @__PURE__ */ React101.createElement(MessageField, null), /* @__PURE__ */ React101.createElement(FromEmailField, null), /* @__PURE__ */ React101.createElement(AdvancedSettings, null)));
6701
+ 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)));
6562
6702
  });
6563
6703
 
6564
6704
  // src/components/promotions/display-conditions-control.tsx
6565
- import * as React103 from "react";
6705
+ import * as React104 from "react";
6566
6706
  import { useRef as useRef25 } from "react";
6567
6707
  import { SitemapIcon } from "@elementor/icons";
6568
- import { IconButton as IconButton8, Stack as Stack17, Tooltip as Tooltip9 } from "@elementor/ui";
6569
- import { __ as __51 } from "@wordpress/i18n";
6708
+ import { IconButton as IconButton8, Stack as Stack18, Tooltip as Tooltip9 } from "@elementor/ui";
6709
+ import { __ as __52 } from "@wordpress/i18n";
6570
6710
 
6571
6711
  // src/components/promotions/promotion-trigger.tsx
6572
- import * as React102 from "react";
6712
+ import * as React103 from "react";
6573
6713
  import { forwardRef as forwardRef11, useImperativeHandle, useState as useState17 } from "react";
6574
6714
  import { PromotionChip as PromotionChip2, PromotionInfotip } from "@elementor/editor-ui";
6575
6715
  import { Box as Box25 } from "@elementor/ui";
@@ -6582,7 +6722,7 @@ var PromotionTrigger = forwardRef11(
6582
6722
  const promotion = getV4Promotion(promotionKey);
6583
6723
  const toggle = () => setIsOpen((prev) => !prev);
6584
6724
  useImperativeHandle(ref, () => ({ toggle }), []);
6585
- return /* @__PURE__ */ React102.createElement(React102.Fragment, null, promotion && /* @__PURE__ */ React102.createElement(
6725
+ return /* @__PURE__ */ React103.createElement(React103.Fragment, null, promotion && /* @__PURE__ */ React103.createElement(
6586
6726
  PromotionInfotip,
6587
6727
  {
6588
6728
  title: promotion.title,
@@ -6595,7 +6735,7 @@ var PromotionTrigger = forwardRef11(
6595
6735
  setIsOpen(false);
6596
6736
  }
6597
6737
  },
6598
- /* @__PURE__ */ React102.createElement(
6738
+ /* @__PURE__ */ React103.createElement(
6599
6739
  Box25,
6600
6740
  {
6601
6741
  onClick: (e) => {
@@ -6604,18 +6744,18 @@ var PromotionTrigger = forwardRef11(
6604
6744
  },
6605
6745
  sx: { cursor: "pointer", display: "inline-flex" }
6606
6746
  },
6607
- children ?? /* @__PURE__ */ React102.createElement(PromotionChip2, null)
6747
+ children ?? /* @__PURE__ */ React103.createElement(PromotionChip2, null)
6608
6748
  )
6609
6749
  ));
6610
6750
  }
6611
6751
  );
6612
6752
 
6613
6753
  // src/components/promotions/display-conditions-control.tsx
6614
- var ARIA_LABEL = __51("Display Conditions", "elementor");
6754
+ var ARIA_LABEL = __52("Display Conditions", "elementor");
6615
6755
  var DisplayConditionsControl = createControl(() => {
6616
6756
  const triggerRef = useRef25(null);
6617
- return /* @__PURE__ */ React103.createElement(
6618
- Stack17,
6757
+ return /* @__PURE__ */ React104.createElement(
6758
+ Stack18,
6619
6759
  {
6620
6760
  direction: "row",
6621
6761
  spacing: 2,
@@ -6624,8 +6764,8 @@ var DisplayConditionsControl = createControl(() => {
6624
6764
  alignItems: "center"
6625
6765
  }
6626
6766
  },
6627
- /* @__PURE__ */ React103.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "displayConditions" }),
6628
- /* @__PURE__ */ React103.createElement(Tooltip9, { title: ARIA_LABEL, placement: "top" }, /* @__PURE__ */ React103.createElement(
6767
+ /* @__PURE__ */ React104.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "displayConditions" }),
6768
+ /* @__PURE__ */ React104.createElement(Tooltip9, { title: ARIA_LABEL, placement: "top" }, /* @__PURE__ */ React104.createElement(
6629
6769
  IconButton8,
6630
6770
  {
6631
6771
  size: "tiny",
@@ -6638,22 +6778,22 @@ var DisplayConditionsControl = createControl(() => {
6638
6778
  borderRadius: 1
6639
6779
  }
6640
6780
  },
6641
- /* @__PURE__ */ React103.createElement(SitemapIcon, { fontSize: "tiny", color: "disabled" })
6781
+ /* @__PURE__ */ React104.createElement(SitemapIcon, { fontSize: "tiny", color: "disabled" })
6642
6782
  ))
6643
6783
  );
6644
6784
  });
6645
6785
 
6646
6786
  // src/components/promotions/attributes-control.tsx
6647
- import * as React104 from "react";
6787
+ import * as React105 from "react";
6648
6788
  import { useRef as useRef26 } from "react";
6649
6789
  import { PlusIcon as PlusIcon3 } from "@elementor/icons";
6650
- import { Stack as Stack18, Tooltip as Tooltip10 } from "@elementor/ui";
6651
- import { __ as __52 } from "@wordpress/i18n";
6652
- var ARIA_LABEL2 = __52("Attributes", "elementor");
6790
+ import { Stack as Stack19, Tooltip as Tooltip10 } from "@elementor/ui";
6791
+ import { __ as __53 } from "@wordpress/i18n";
6792
+ var ARIA_LABEL2 = __53("Attributes", "elementor");
6653
6793
  var AttributesControl = createControl(() => {
6654
6794
  const triggerRef = useRef26(null);
6655
- return /* @__PURE__ */ React104.createElement(
6656
- Stack18,
6795
+ return /* @__PURE__ */ React105.createElement(
6796
+ Stack19,
6657
6797
  {
6658
6798
  direction: "row",
6659
6799
  spacing: 2,
@@ -6662,8 +6802,8 @@ var AttributesControl = createControl(() => {
6662
6802
  alignItems: "center"
6663
6803
  }
6664
6804
  },
6665
- /* @__PURE__ */ React104.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "attributes" }),
6666
- /* @__PURE__ */ React104.createElement(Tooltip10, { title: ARIA_LABEL2, placement: "top" }, /* @__PURE__ */ React104.createElement(
6805
+ /* @__PURE__ */ React105.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "attributes" }),
6806
+ /* @__PURE__ */ React105.createElement(Tooltip10, { title: ARIA_LABEL2, placement: "top" }, /* @__PURE__ */ React105.createElement(
6667
6807
  PlusIcon3,
6668
6808
  {
6669
6809
  "aria-label": ARIA_LABEL2,
@@ -6677,18 +6817,18 @@ var AttributesControl = createControl(() => {
6677
6817
  });
6678
6818
 
6679
6819
  // src/components/icon-buttons/clear-icon-button.tsx
6680
- import * as React105 from "react";
6820
+ import * as React106 from "react";
6681
6821
  import { BrushBigIcon } from "@elementor/icons";
6682
6822
  import { IconButton as IconButton9, styled as styled9, Tooltip as Tooltip11 } from "@elementor/ui";
6683
6823
  var CustomIconButton = styled9(IconButton9)(({ theme }) => ({
6684
6824
  width: theme.spacing(2.5),
6685
6825
  height: theme.spacing(2.5)
6686
6826
  }));
6687
- var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /* @__PURE__ */ React105.createElement(Tooltip11, { title: tooltipText, placement: "top", disableInteractive: true }, /* @__PURE__ */ React105.createElement(CustomIconButton, { "aria-label": tooltipText, size, onClick, disabled }, /* @__PURE__ */ React105.createElement(BrushBigIcon, { fontSize: size })));
6827
+ 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 })));
6688
6828
 
6689
6829
  // src/components/repeater/repeater.tsx
6690
- import * as React106 from "react";
6691
- import { useEffect as useEffect13, useState as useState18 } from "react";
6830
+ import * as React107 from "react";
6831
+ import { useEffect as useEffect14, useState as useState18 } from "react";
6692
6832
  import { CopyIcon as CopyIcon2, EyeIcon as EyeIcon2, EyeOffIcon as EyeOffIcon2, PlusIcon as PlusIcon4, XIcon as XIcon4 } from "@elementor/icons";
6693
6833
  import {
6694
6834
  bindPopover as bindPopover7,
@@ -6699,7 +6839,7 @@ import {
6699
6839
  Tooltip as Tooltip12,
6700
6840
  usePopupState as usePopupState8
6701
6841
  } from "@elementor/ui";
6702
- import { __ as __53 } from "@wordpress/i18n";
6842
+ import { __ as __54 } from "@wordpress/i18n";
6703
6843
  var SIZE10 = "tiny";
6704
6844
  var EMPTY_OPEN_ITEM2 = -1;
6705
6845
  var Repeater3 = ({
@@ -6780,7 +6920,7 @@ var Repeater3 = ({
6780
6920
  };
6781
6921
  const isButtonDisabled = disabled || disableAddItemButton;
6782
6922
  const shouldShowInfotip = isButtonDisabled && addButtonInfotipContent;
6783
- const addButton = /* @__PURE__ */ React106.createElement(
6923
+ const addButton = /* @__PURE__ */ React107.createElement(
6784
6924
  IconButton10,
6785
6925
  {
6786
6926
  size: SIZE10,
@@ -6789,11 +6929,11 @@ var Repeater3 = ({
6789
6929
  },
6790
6930
  disabled: isButtonDisabled,
6791
6931
  onClick: addRepeaterItem,
6792
- "aria-label": __53("Add item", "elementor")
6932
+ "aria-label": __54("Add item", "elementor")
6793
6933
  },
6794
- /* @__PURE__ */ React106.createElement(PlusIcon4, { fontSize: SIZE10 })
6934
+ /* @__PURE__ */ React107.createElement(PlusIcon4, { fontSize: SIZE10 })
6795
6935
  );
6796
- return /* @__PURE__ */ React106.createElement(SectionContent, { gap: 2 }, /* @__PURE__ */ React106.createElement(RepeaterHeader, { label, adornment: ControlAdornments }, shouldShowInfotip ? /* @__PURE__ */ React106.createElement(
6936
+ return /* @__PURE__ */ React107.createElement(SectionContent, { gap: 2 }, /* @__PURE__ */ React107.createElement(RepeaterHeader, { label, adornment: ControlAdornments }, shouldShowInfotip ? /* @__PURE__ */ React107.createElement(
6797
6937
  Infotip4,
6798
6938
  {
6799
6939
  placement: "right",
@@ -6801,20 +6941,20 @@ var Repeater3 = ({
6801
6941
  color: "secondary",
6802
6942
  slotProps: { popper: { sx: { width: 300 } } }
6803
6943
  },
6804
- /* @__PURE__ */ React106.createElement(Box26, { sx: { ...isButtonDisabled ? { cursor: "not-allowed" } : {} } }, addButton)
6805
- ) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */ React106.createElement(SortableProvider, { value: uniqueKeys, onChange: onChangeOrder }, uniqueKeys.map((key) => {
6944
+ /* @__PURE__ */ React107.createElement(Box26, { sx: { ...isButtonDisabled ? { cursor: "not-allowed" } : {} } }, addButton)
6945
+ ) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */ React107.createElement(SortableProvider, { value: uniqueKeys, onChange: onChangeOrder }, uniqueKeys.map((key) => {
6806
6946
  const index = uniqueKeys.indexOf(key);
6807
6947
  const value = items2[index];
6808
6948
  if (!value) {
6809
6949
  return null;
6810
6950
  }
6811
- return /* @__PURE__ */ React106.createElement(SortableItem, { id: key, key: `sortable-${key}`, disabled: !isSortable }, /* @__PURE__ */ React106.createElement(
6951
+ return /* @__PURE__ */ React107.createElement(SortableItem, { id: key, key: `sortable-${key}`, disabled: !isSortable }, /* @__PURE__ */ React107.createElement(
6812
6952
  RepeaterItem,
6813
6953
  {
6814
6954
  disabled,
6815
6955
  propDisabled: value?.disabled,
6816
- label: /* @__PURE__ */ React106.createElement(RepeaterItemLabelSlot, { value }, /* @__PURE__ */ React106.createElement(itemSettings.Label, { value, index })),
6817
- startIcon: /* @__PURE__ */ React106.createElement(RepeaterItemIconSlot, { value }, /* @__PURE__ */ React106.createElement(itemSettings.Icon, { value })),
6956
+ label: /* @__PURE__ */ React107.createElement(RepeaterItemLabelSlot, { value }, /* @__PURE__ */ React107.createElement(itemSettings.Label, { value, index })),
6957
+ startIcon: /* @__PURE__ */ React107.createElement(RepeaterItemIconSlot, { value }, /* @__PURE__ */ React107.createElement(itemSettings.Icon, { value })),
6818
6958
  removeItem: () => removeRepeaterItem(index),
6819
6959
  duplicateItem: () => duplicateRepeaterItem(index),
6820
6960
  toggleDisableItem: () => toggleDisableRepeaterItem(index),
@@ -6826,7 +6966,7 @@ var Repeater3 = ({
6826
6966
  actions: itemSettings.actions,
6827
6967
  value
6828
6968
  },
6829
- (props) => /* @__PURE__ */ React106.createElement(
6969
+ (props) => /* @__PURE__ */ React107.createElement(
6830
6970
  itemSettings.Content,
6831
6971
  {
6832
6972
  ...props,
@@ -6856,27 +6996,27 @@ var RepeaterItem = ({
6856
6996
  value
6857
6997
  }) => {
6858
6998
  const { popoverState, popoverProps, ref, setRef } = usePopover(openOnMount, onOpen);
6859
- const duplicateLabel = __53("Duplicate", "elementor");
6860
- const toggleLabel = propDisabled ? __53("Show", "elementor") : __53("Hide", "elementor");
6861
- const removeLabel = __53("Remove", "elementor");
6862
- return /* @__PURE__ */ React106.createElement(React106.Fragment, null, /* @__PURE__ */ React106.createElement(
6999
+ const duplicateLabel = __54("Duplicate", "elementor");
7000
+ const toggleLabel = propDisabled ? __54("Show", "elementor") : __54("Hide", "elementor");
7001
+ const removeLabel = __54("Remove", "elementor");
7002
+ return /* @__PURE__ */ React107.createElement(React107.Fragment, null, /* @__PURE__ */ React107.createElement(
6863
7003
  RepeaterTag,
6864
7004
  {
6865
7005
  disabled,
6866
7006
  label,
6867
7007
  ref: setRef,
6868
- "aria-label": __53("Open item", "elementor"),
7008
+ "aria-label": __54("Open item", "elementor"),
6869
7009
  ...bindTrigger6(popoverState),
6870
7010
  startIcon,
6871
- actions: /* @__PURE__ */ React106.createElement(React106.Fragment, null, showDuplicate && /* @__PURE__ */ React106.createElement(Tooltip12, { title: duplicateLabel, placement: "top" }, /* @__PURE__ */ React106.createElement(IconButton10, { size: SIZE10, onClick: duplicateItem, "aria-label": duplicateLabel }, /* @__PURE__ */ React106.createElement(CopyIcon2, { fontSize: SIZE10 }))), showToggle && /* @__PURE__ */ React106.createElement(Tooltip12, { title: toggleLabel, placement: "top" }, /* @__PURE__ */ React106.createElement(IconButton10, { size: SIZE10, onClick: toggleDisableItem, "aria-label": toggleLabel }, propDisabled ? /* @__PURE__ */ React106.createElement(EyeOffIcon2, { fontSize: SIZE10 }) : /* @__PURE__ */ React106.createElement(EyeIcon2, { fontSize: SIZE10 }))), actions?.(value), showRemove && /* @__PURE__ */ React106.createElement(Tooltip12, { title: removeLabel, placement: "top" }, /* @__PURE__ */ React106.createElement(IconButton10, { size: SIZE10, onClick: removeItem, "aria-label": removeLabel }, /* @__PURE__ */ React106.createElement(XIcon4, { fontSize: SIZE10 }))))
7011
+ 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 }))))
6872
7012
  }
6873
- ), /* @__PURE__ */ React106.createElement(RepeaterPopover, { width: ref?.getBoundingClientRect().width, ...popoverProps, anchorEl: ref }, /* @__PURE__ */ React106.createElement(Box26, null, children({ anchorEl: ref }))));
7013
+ ), /* @__PURE__ */ React107.createElement(RepeaterPopover, { width: ref?.getBoundingClientRect().width, ...popoverProps, anchorEl: ref }, /* @__PURE__ */ React107.createElement(Box26, null, children({ anchorEl: ref }))));
6874
7014
  };
6875
7015
  var usePopover = (openOnMount, onOpen) => {
6876
7016
  const [ref, setRef] = useState18(null);
6877
7017
  const popoverState = usePopupState8({ variant: "popover" });
6878
7018
  const popoverProps = bindPopover7(popoverState);
6879
- useEffect13(() => {
7019
+ useEffect14(() => {
6880
7020
  if (openOnMount && ref) {
6881
7021
  popoverState.open(ref);
6882
7022
  onOpen?.();
@@ -6891,9 +7031,9 @@ var usePopover = (openOnMount, onOpen) => {
6891
7031
  };
6892
7032
 
6893
7033
  // src/components/inline-editor-toolbar.tsx
6894
- import * as React108 from "react";
6895
- import { useMemo as useMemo16, useRef as useRef28, useState as useState19 } from "react";
6896
- import { getContainer as getContainer2, getElementSetting } from "@elementor/editor-elements";
7034
+ import * as React109 from "react";
7035
+ import { useMemo as useMemo15, useRef as useRef28, useState as useState19 } from "react";
7036
+ import { getContainer, getElementSetting } from "@elementor/editor-elements";
6897
7037
  import {
6898
7038
  BoldIcon,
6899
7039
  ItalicIcon,
@@ -6914,14 +7054,14 @@ import {
6914
7054
  usePopupState as usePopupState9
6915
7055
  } from "@elementor/ui";
6916
7056
  import { useEditorState } from "@tiptap/react";
6917
- import { __ as __55 } from "@wordpress/i18n";
7057
+ import { __ as __56 } from "@wordpress/i18n";
6918
7058
 
6919
7059
  // src/components/url-popover.tsx
6920
- import * as React107 from "react";
6921
- import { useEffect as useEffect14, useRef as useRef27 } from "react";
7060
+ import * as React108 from "react";
7061
+ import { useEffect as useEffect15, useRef as useRef27 } from "react";
6922
7062
  import { ExternalLinkIcon } from "@elementor/icons";
6923
- import { bindPopover as bindPopover8, Popover as Popover7, Stack as Stack19, TextField as TextField9, ToggleButton as ToggleButton2, Tooltip as Tooltip13 } from "@elementor/ui";
6924
- import { __ as __54 } from "@wordpress/i18n";
7063
+ import { bindPopover as bindPopover8, Popover as Popover7, Stack as Stack20, TextField as TextField9, ToggleButton as ToggleButton2, Tooltip as Tooltip13 } from "@elementor/ui";
7064
+ import { __ as __55 } from "@wordpress/i18n";
6925
7065
  var UrlPopover = ({
6926
7066
  popupState,
6927
7067
  restoreValue,
@@ -6932,7 +7072,7 @@ var UrlPopover = ({
6932
7072
  onToggleNewTab
6933
7073
  }) => {
6934
7074
  const inputRef = useRef27(null);
6935
- useEffect14(() => {
7075
+ useEffect15(() => {
6936
7076
  if (popupState.isOpen) {
6937
7077
  requestAnimationFrame(() => inputRef.current?.focus());
6938
7078
  }
@@ -6941,7 +7081,7 @@ var UrlPopover = ({
6941
7081
  restoreValue();
6942
7082
  popupState.close();
6943
7083
  };
6944
- return /* @__PURE__ */ React107.createElement(
7084
+ return /* @__PURE__ */ React108.createElement(
6945
7085
  Popover7,
6946
7086
  {
6947
7087
  slotProps: {
@@ -6952,30 +7092,30 @@ var UrlPopover = ({
6952
7092
  transformOrigin: { vertical: "top", horizontal: "left" },
6953
7093
  onClose: handleClose
6954
7094
  },
6955
- /* @__PURE__ */ React107.createElement(Stack19, { direction: "row", alignItems: "center", gap: 1, sx: { p: 1.5 } }, /* @__PURE__ */ React107.createElement(
7095
+ /* @__PURE__ */ React108.createElement(Stack20, { direction: "row", alignItems: "center", gap: 1, sx: { p: 1.5 } }, /* @__PURE__ */ React108.createElement(
6956
7096
  TextField9,
6957
7097
  {
6958
7098
  value,
6959
7099
  onChange,
6960
7100
  size: "tiny",
6961
7101
  fullWidth: true,
6962
- placeholder: __54("Type a URL", "elementor"),
7102
+ placeholder: __55("Type a URL", "elementor"),
6963
7103
  inputProps: { ref: inputRef },
6964
7104
  color: "secondary",
6965
7105
  InputProps: { sx: { borderRadius: "8px" } },
6966
7106
  onKeyUp: (event) => event.key === "Enter" && handleClose()
6967
7107
  }
6968
- ), /* @__PURE__ */ React107.createElement(Tooltip13, { title: __54("Open in a new tab", "elementor") }, /* @__PURE__ */ React107.createElement(
7108
+ ), /* @__PURE__ */ React108.createElement(Tooltip13, { title: __55("Open in a new tab", "elementor") }, /* @__PURE__ */ React108.createElement(
6969
7109
  ToggleButton2,
6970
7110
  {
6971
7111
  size: "tiny",
6972
7112
  value: "newTab",
6973
7113
  selected: openInNewTab,
6974
7114
  onClick: onToggleNewTab,
6975
- "aria-label": __54("Open in a new tab", "elementor"),
7115
+ "aria-label": __55("Open in a new tab", "elementor"),
6976
7116
  sx: { borderRadius: "8px" }
6977
7117
  },
6978
- /* @__PURE__ */ React107.createElement(ExternalLinkIcon, { fontSize: "tiny" })
7118
+ /* @__PURE__ */ React108.createElement(ExternalLinkIcon, { fontSize: "tiny" })
6979
7119
  )))
6980
7120
  );
6981
7121
  };
@@ -6991,7 +7131,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
6991
7131
  editor,
6992
7132
  selector: (ctx) => possibleFormats.filter((format) => ctx.editor.isActive(format))
6993
7133
  });
6994
- const formatButtonsList = useMemo16(() => {
7134
+ const formatButtonsList = useMemo15(() => {
6995
7135
  const buttons = Object.values(formatButtons);
6996
7136
  if (isElementClickable) {
6997
7137
  return buttons.filter((button) => button.action !== "link");
@@ -7028,10 +7168,10 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7028
7168
  }
7029
7169
  linkPopupState.close();
7030
7170
  };
7031
- React108.useEffect(() => {
7171
+ React109.useEffect(() => {
7032
7172
  editor?.commands?.focus();
7033
7173
  }, [editor]);
7034
- return /* @__PURE__ */ React108.createElement(
7174
+ return /* @__PURE__ */ React109.createElement(
7035
7175
  Box27,
7036
7176
  {
7037
7177
  ref: toolbarRef,
@@ -7048,8 +7188,8 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7048
7188
  ...sx
7049
7189
  }
7050
7190
  },
7051
- /* @__PURE__ */ React108.createElement(Tooltip14, { title: clearButton.label, placement: "top", sx: { borderRadius: "8px" } }, /* @__PURE__ */ React108.createElement(IconButton11, { "aria-label": clearButton.label, onClick: () => clearButton.method(editor), size: "tiny" }, clearButton.icon)),
7052
- /* @__PURE__ */ React108.createElement(
7191
+ /* @__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)),
7192
+ /* @__PURE__ */ React109.createElement(
7053
7193
  ToggleButtonGroup2,
7054
7194
  {
7055
7195
  value: editorState,
@@ -7071,7 +7211,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7071
7211
  }
7072
7212
  }
7073
7213
  },
7074
- formatButtonsList.map((button) => /* @__PURE__ */ React108.createElement(Tooltip14, { title: button.label, key: button.action, placement: "top" }, /* @__PURE__ */ React108.createElement(
7214
+ formatButtonsList.map((button) => /* @__PURE__ */ React109.createElement(Tooltip14, { title: button.label, key: button.action, placement: "top" }, /* @__PURE__ */ React109.createElement(
7075
7215
  ToggleButton3,
7076
7216
  {
7077
7217
  value: button.action,
@@ -7089,7 +7229,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7089
7229
  button.icon
7090
7230
  )))
7091
7231
  ),
7092
- /* @__PURE__ */ React108.createElement(
7232
+ /* @__PURE__ */ React109.createElement(
7093
7233
  UrlPopover,
7094
7234
  {
7095
7235
  popupState: linkPopupState,
@@ -7104,7 +7244,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
7104
7244
  );
7105
7245
  };
7106
7246
  var checkIfElementIsClickable = (elementId) => {
7107
- const container = getContainer2(elementId);
7247
+ const container = getContainer(elementId);
7108
7248
  const type = container?.model.get("widgetType");
7109
7249
  const isButton = type === "e-button";
7110
7250
  const hasLink = !!getElementSetting(elementId, "link")?.value?.destination;
@@ -7112,64 +7252,64 @@ var checkIfElementIsClickable = (elementId) => {
7112
7252
  };
7113
7253
  var toolbarButtons = {
7114
7254
  clear: {
7115
- label: __55("Clear", "elementor"),
7116
- icon: /* @__PURE__ */ React108.createElement(MinusIcon2, { fontSize: "tiny" }),
7255
+ label: __56("Clear", "elementor"),
7256
+ icon: /* @__PURE__ */ React109.createElement(MinusIcon2, { fontSize: "tiny" }),
7117
7257
  action: "clear",
7118
7258
  method: (editor) => {
7119
7259
  editor.chain().focus().clearNodes().unsetAllMarks().run();
7120
7260
  }
7121
7261
  },
7122
7262
  bold: {
7123
- label: __55("Bold", "elementor"),
7124
- icon: /* @__PURE__ */ React108.createElement(BoldIcon, { fontSize: "tiny" }),
7263
+ label: __56("Bold", "elementor"),
7264
+ icon: /* @__PURE__ */ React109.createElement(BoldIcon, { fontSize: "tiny" }),
7125
7265
  action: "bold",
7126
7266
  method: (editor) => {
7127
7267
  editor.chain().focus().toggleBold().run();
7128
7268
  }
7129
7269
  },
7130
7270
  italic: {
7131
- label: __55("Italic", "elementor"),
7132
- icon: /* @__PURE__ */ React108.createElement(ItalicIcon, { fontSize: "tiny" }),
7271
+ label: __56("Italic", "elementor"),
7272
+ icon: /* @__PURE__ */ React109.createElement(ItalicIcon, { fontSize: "tiny" }),
7133
7273
  action: "italic",
7134
7274
  method: (editor) => {
7135
7275
  editor.chain().focus().toggleItalic().run();
7136
7276
  }
7137
7277
  },
7138
7278
  underline: {
7139
- label: __55("Underline", "elementor"),
7140
- icon: /* @__PURE__ */ React108.createElement(UnderlineIcon, { fontSize: "tiny" }),
7279
+ label: __56("Underline", "elementor"),
7280
+ icon: /* @__PURE__ */ React109.createElement(UnderlineIcon, { fontSize: "tiny" }),
7141
7281
  action: "underline",
7142
7282
  method: (editor) => {
7143
7283
  editor.chain().focus().toggleUnderline().run();
7144
7284
  }
7145
7285
  },
7146
7286
  strike: {
7147
- label: __55("Strikethrough", "elementor"),
7148
- icon: /* @__PURE__ */ React108.createElement(StrikethroughIcon, { fontSize: "tiny" }),
7287
+ label: __56("Strikethrough", "elementor"),
7288
+ icon: /* @__PURE__ */ React109.createElement(StrikethroughIcon, { fontSize: "tiny" }),
7149
7289
  action: "strike",
7150
7290
  method: (editor) => {
7151
7291
  editor.chain().focus().toggleStrike().run();
7152
7292
  }
7153
7293
  },
7154
7294
  superscript: {
7155
- label: __55("Superscript", "elementor"),
7156
- icon: /* @__PURE__ */ React108.createElement(SuperscriptIcon, { fontSize: "tiny" }),
7295
+ label: __56("Superscript", "elementor"),
7296
+ icon: /* @__PURE__ */ React109.createElement(SuperscriptIcon, { fontSize: "tiny" }),
7157
7297
  action: "superscript",
7158
7298
  method: (editor) => {
7159
7299
  editor.chain().focus().toggleSuperscript().run();
7160
7300
  }
7161
7301
  },
7162
7302
  subscript: {
7163
- label: __55("Subscript", "elementor"),
7164
- icon: /* @__PURE__ */ React108.createElement(SubscriptIcon, { fontSize: "tiny" }),
7303
+ label: __56("Subscript", "elementor"),
7304
+ icon: /* @__PURE__ */ React109.createElement(SubscriptIcon, { fontSize: "tiny" }),
7165
7305
  action: "subscript",
7166
7306
  method: (editor) => {
7167
7307
  editor.chain().focus().toggleSubscript().run();
7168
7308
  }
7169
7309
  },
7170
7310
  link: {
7171
- label: __55("Link", "elementor"),
7172
- icon: /* @__PURE__ */ React108.createElement(LinkIcon3, { fontSize: "tiny" }),
7311
+ label: __56("Link", "elementor"),
7312
+ icon: /* @__PURE__ */ React109.createElement(LinkIcon3, { fontSize: "tiny" }),
7173
7313
  action: "link",
7174
7314
  method: null
7175
7315
  }
@@ -7178,7 +7318,7 @@ var { clear: clearButton, ...formatButtons } = toolbarButtons;
7178
7318
  var possibleFormats = Object.keys(formatButtons);
7179
7319
 
7180
7320
  // src/components/size/unstable-size-field.tsx
7181
- import * as React111 from "react";
7321
+ import * as React112 from "react";
7182
7322
  import { InputAdornment as InputAdornment5 } from "@elementor/ui";
7183
7323
 
7184
7324
  // src/hooks/use-size-value.ts
@@ -7221,10 +7361,10 @@ var differsFromExternal = (newState, externalState) => {
7221
7361
  };
7222
7362
 
7223
7363
  // src/components/size/unit-select.tsx
7224
- import * as React109 from "react";
7364
+ import * as React110 from "react";
7225
7365
  import { useId as useId3 } from "react";
7226
7366
  import { MenuListItem as MenuListItem7 } from "@elementor/editor-ui";
7227
- import { bindMenu as bindMenu2, bindTrigger as bindTrigger7, Button as Button5, Menu as Menu3, styled as styled10, usePopupState as usePopupState10 } from "@elementor/ui";
7367
+ import { bindMenu as bindMenu2, bindTrigger as bindTrigger7, Button as Button6, Menu as Menu3, styled as styled10, usePopupState as usePopupState10 } from "@elementor/ui";
7228
7368
  var menuItemContentStyles = {
7229
7369
  display: "flex",
7230
7370
  flexDirection: "column",
@@ -7239,7 +7379,7 @@ var UnitSelect = ({ value, showPrimaryColor, onClick, options }) => {
7239
7379
  onClick(options[index]);
7240
7380
  popupState.close();
7241
7381
  };
7242
- return /* @__PURE__ */ React109.createElement(React109.Fragment, null, /* @__PURE__ */ React109.createElement(StyledButton2, { isPrimaryColor: showPrimaryColor, size: "small", ...bindTrigger7(popupState) }, value), /* @__PURE__ */ React109.createElement(Menu3, { MenuListProps: { dense: true }, ...bindMenu2(popupState) }, options.map((option, index) => /* @__PURE__ */ React109.createElement(
7382
+ 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(
7243
7383
  MenuListItem7,
7244
7384
  {
7245
7385
  key: option,
@@ -7258,7 +7398,7 @@ var UnitSelect = ({ value, showPrimaryColor, onClick, options }) => {
7258
7398
  option.toUpperCase()
7259
7399
  ))));
7260
7400
  };
7261
- var StyledButton2 = styled10(Button5, {
7401
+ var StyledButton2 = styled10(Button6, {
7262
7402
  shouldForwardProp: (prop) => prop !== "isPrimaryColor"
7263
7403
  })(({ isPrimaryColor, theme }) => ({
7264
7404
  color: isPrimaryColor ? theme.palette.text.primary : theme.palette.text.tertiary,
@@ -7268,11 +7408,11 @@ var StyledButton2 = styled10(Button5, {
7268
7408
  }));
7269
7409
 
7270
7410
  // src/components/size/unstable-size-input.tsx
7271
- import * as React110 from "react";
7411
+ import * as React111 from "react";
7272
7412
  import { forwardRef as forwardRef12 } from "react";
7273
7413
  var UnstableSizeInput = forwardRef12(
7274
7414
  ({ type, value, onChange, onKeyDown, onKeyUp, InputProps, onBlur, focused, disabled }, ref) => {
7275
- return /* @__PURE__ */ React110.createElement(
7415
+ return /* @__PURE__ */ React111.createElement(
7276
7416
  NumberInput,
7277
7417
  {
7278
7418
  ref,
@@ -7310,7 +7450,7 @@ var UnstableSizeField = ({
7310
7450
  const shouldHighlightUnit = () => {
7311
7451
  return hasValue(size);
7312
7452
  };
7313
- return /* @__PURE__ */ React111.createElement(
7453
+ return /* @__PURE__ */ React112.createElement(
7314
7454
  UnstableSizeInput,
7315
7455
  {
7316
7456
  type: "number",
@@ -7319,8 +7459,8 @@ var UnstableSizeField = ({
7319
7459
  onChange: (event) => setSize(event.target.value),
7320
7460
  InputProps: {
7321
7461
  ...InputProps,
7322
- startAdornment: startIcon && /* @__PURE__ */ React111.createElement(InputAdornment5, { position: "start" }, startIcon),
7323
- endAdornment: /* @__PURE__ */ React111.createElement(InputAdornment5, { position: "end" }, /* @__PURE__ */ React111.createElement(
7462
+ startAdornment: startIcon && /* @__PURE__ */ React112.createElement(InputAdornment5, { position: "start" }, startIcon),
7463
+ endAdornment: /* @__PURE__ */ React112.createElement(InputAdornment5, { position: "end" }, /* @__PURE__ */ React112.createElement(
7324
7464
  UnitSelect,
7325
7465
  {
7326
7466
  options: units2,
@@ -7338,13 +7478,13 @@ var hasValue = (value) => {
7338
7478
  };
7339
7479
 
7340
7480
  // src/hooks/use-font-families.ts
7341
- import { useMemo as useMemo17 } from "react";
7481
+ import { useMemo as useMemo16 } from "react";
7342
7482
  import { getElementorConfig } from "@elementor/editor-v1-adapters";
7343
- import { __ as __56 } from "@wordpress/i18n";
7483
+ import { __ as __57 } from "@wordpress/i18n";
7344
7484
  var supportedCategories = {
7345
- system: __56("System", "elementor"),
7346
- custom: __56("Custom Fonts", "elementor"),
7347
- googlefonts: __56("Google Fonts", "elementor")
7485
+ system: __57("System", "elementor"),
7486
+ custom: __57("Custom Fonts", "elementor"),
7487
+ googlefonts: __57("Google Fonts", "elementor")
7348
7488
  };
7349
7489
  var getFontFamilies = () => {
7350
7490
  const { controls } = getElementorConfig();
@@ -7356,7 +7496,7 @@ var getFontFamilies = () => {
7356
7496
  };
7357
7497
  var useFontFamilies = () => {
7358
7498
  const fontFamilies = getFontFamilies();
7359
- return useMemo17(() => {
7499
+ return useMemo16(() => {
7360
7500
  const categoriesOrder = ["system", "custom", "googlefonts"];
7361
7501
  return Object.entries(fontFamilies || {}).reduce((acc, [font, category]) => {
7362
7502
  if (!supportedCategories[category]) {
@@ -7430,6 +7570,7 @@ export {
7430
7570
  TransitionRepeaterControl,
7431
7571
  UnstableSizeField,
7432
7572
  UrlControl,
7573
+ VideoMediaControl,
7433
7574
  createControl,
7434
7575
  createControlReplacementsRegistry,
7435
7576
  enqueueFont,
@@ -7437,14 +7578,15 @@ export {
7437
7578
  injectIntoRepeaterItemActions,
7438
7579
  injectIntoRepeaterItemIcon,
7439
7580
  injectIntoRepeaterItemLabel,
7581
+ isUnitExtendedOption,
7440
7582
  registerControlReplacement,
7441
7583
  transitionProperties,
7442
7584
  transitionsItemsList,
7443
7585
  useBoundProp,
7444
7586
  useControlActions,
7445
7587
  useControlReplacement,
7446
- useElementCanHaveChildren,
7447
7588
  useFontFamilies,
7448
- useSyncExternalState
7589
+ useSyncExternalState,
7590
+ useTypingBuffer
7449
7591
  };
7450
7592
  //# sourceMappingURL=index.mjs.map