@elementor/editor-controls 4.2.0-839 → 4.2.0-841
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.d.mts +11 -1
- package/dist/index.d.ts +11 -1
- package/dist/index.js +1215 -1095
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +877 -758
- package/dist/index.mjs.map +1 -1
- package/package.json +15 -15
- package/src/components/chips-list.tsx +22 -0
- package/src/controls/chips-control.tsx +9 -7
- package/src/controls/query-chips-control.tsx +110 -0
- package/src/controls/query-control.tsx +9 -81
- package/src/hooks/use-query-autocomplete.ts +118 -0
- package/src/index.ts +1 -0
package/dist/index.mjs
CHANGED
|
@@ -2504,9 +2504,22 @@ var SelectControlWrapper = createControl(
|
|
|
2504
2504
|
);
|
|
2505
2505
|
|
|
2506
2506
|
// src/controls/chips-control.tsx
|
|
2507
|
-
import * as
|
|
2507
|
+
import * as React52 from "react";
|
|
2508
2508
|
import { stringArrayPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil6 } from "@elementor/editor-props";
|
|
2509
|
-
import { Autocomplete,
|
|
2509
|
+
import { Autocomplete, TextField as TextField5 } from "@elementor/ui";
|
|
2510
|
+
|
|
2511
|
+
// src/components/chips-list.tsx
|
|
2512
|
+
import * as React51 from "react";
|
|
2513
|
+
import { Chip } from "@elementor/ui";
|
|
2514
|
+
var CHIP_SIZE = "tiny";
|
|
2515
|
+
function ChipsList({ getLabel, getTagProps, values }) {
|
|
2516
|
+
return /* @__PURE__ */ React51.createElement(React51.Fragment, null, values.map((option, index) => {
|
|
2517
|
+
const { key, ...tagProps } = getTagProps({ index });
|
|
2518
|
+
return /* @__PURE__ */ React51.createElement(Chip, { key, label: getLabel(option), size: CHIP_SIZE, ...tagProps });
|
|
2519
|
+
}));
|
|
2520
|
+
}
|
|
2521
|
+
|
|
2522
|
+
// src/controls/chips-control.tsx
|
|
2510
2523
|
var SIZE6 = "tiny";
|
|
2511
2524
|
var ChipsControl = createControl(({ options }) => {
|
|
2512
2525
|
const { value, setValue, disabled } = useBoundProp(stringArrayPropTypeUtil);
|
|
@@ -2516,7 +2529,7 @@ var ChipsControl = createControl(({ options }) => {
|
|
|
2516
2529
|
const values = newValue.map((option) => stringPropTypeUtil6.create(option.value));
|
|
2517
2530
|
setValue(values);
|
|
2518
2531
|
};
|
|
2519
|
-
return /* @__PURE__ */
|
|
2532
|
+
return /* @__PURE__ */ React52.createElement(ControlActions, null, /* @__PURE__ */ React52.createElement(
|
|
2520
2533
|
Autocomplete,
|
|
2521
2534
|
{
|
|
2522
2535
|
fullWidth: true,
|
|
@@ -2528,21 +2541,25 @@ var ChipsControl = createControl(({ options }) => {
|
|
|
2528
2541
|
options,
|
|
2529
2542
|
getOptionLabel: (option) => option.label,
|
|
2530
2543
|
isOptionEqualToValue: (option, val) => option.value === val.value,
|
|
2531
|
-
renderInput: (params) => /* @__PURE__ */
|
|
2532
|
-
renderTags: (
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2544
|
+
renderInput: (params) => /* @__PURE__ */ React52.createElement(TextField5, { ...params }),
|
|
2545
|
+
renderTags: (tagValues, getTagProps) => /* @__PURE__ */ React52.createElement(
|
|
2546
|
+
ChipsList,
|
|
2547
|
+
{
|
|
2548
|
+
getLabel: (option) => option.label,
|
|
2549
|
+
getTagProps,
|
|
2550
|
+
values: tagValues
|
|
2551
|
+
}
|
|
2552
|
+
)
|
|
2536
2553
|
}
|
|
2537
2554
|
));
|
|
2538
2555
|
});
|
|
2539
2556
|
|
|
2540
2557
|
// src/controls/toggle-control.tsx
|
|
2541
|
-
import * as
|
|
2558
|
+
import * as React56 from "react";
|
|
2542
2559
|
import { stringPropTypeUtil as stringPropTypeUtil7 } from "@elementor/editor-props";
|
|
2543
2560
|
|
|
2544
2561
|
// src/components/control-toggle-button-group.tsx
|
|
2545
|
-
import * as
|
|
2562
|
+
import * as React54 from "react";
|
|
2546
2563
|
import { useEffect as useEffect8, useMemo as useMemo6, useRef as useRef8, useState as useState7 } from "react";
|
|
2547
2564
|
import { ChevronDownIcon } from "@elementor/icons";
|
|
2548
2565
|
import {
|
|
@@ -2557,14 +2574,14 @@ import {
|
|
|
2557
2574
|
} from "@elementor/ui";
|
|
2558
2575
|
|
|
2559
2576
|
// src/components/conditional-tooltip.tsx
|
|
2560
|
-
import * as
|
|
2577
|
+
import * as React53 from "react";
|
|
2561
2578
|
import { Tooltip as Tooltip4 } from "@elementor/ui";
|
|
2562
2579
|
var ConditionalTooltip = ({
|
|
2563
2580
|
showTooltip,
|
|
2564
2581
|
children,
|
|
2565
2582
|
label
|
|
2566
2583
|
}) => {
|
|
2567
|
-
return showTooltip && label ? /* @__PURE__ */
|
|
2584
|
+
return showTooltip && label ? /* @__PURE__ */ React53.createElement(Tooltip4, { title: label, disableFocusListener: true, placement: "top" }, children) : children;
|
|
2568
2585
|
};
|
|
2569
2586
|
|
|
2570
2587
|
// src/components/control-toggle-button-group.tsx
|
|
@@ -2595,7 +2612,7 @@ var StyledToggleButton = styled6(ToggleButton, {
|
|
|
2595
2612
|
}
|
|
2596
2613
|
`}
|
|
2597
2614
|
`;
|
|
2598
|
-
var ToggleButtonGroupUi =
|
|
2615
|
+
var ToggleButtonGroupUi = React54.forwardRef(
|
|
2599
2616
|
({
|
|
2600
2617
|
justify = "end",
|
|
2601
2618
|
size = "tiny",
|
|
@@ -2643,7 +2660,7 @@ var ToggleButtonGroupUi = React53.forwardRef(
|
|
|
2643
2660
|
return [];
|
|
2644
2661
|
};
|
|
2645
2662
|
const placeholderArray = getPlaceholderArray(placeholder);
|
|
2646
|
-
return /* @__PURE__ */
|
|
2663
|
+
return /* @__PURE__ */ React54.createElement(
|
|
2647
2664
|
StyledToggleButtonGroup,
|
|
2648
2665
|
{
|
|
2649
2666
|
ref,
|
|
@@ -2668,14 +2685,14 @@ var ToggleButtonGroupUi = React53.forwardRef(
|
|
|
2668
2685
|
disabled: optionDisabled = false
|
|
2669
2686
|
}) => {
|
|
2670
2687
|
const isPlaceholder = placeholderArray.length > 0 && placeholderArray.includes(buttonValue) && (shouldShowExclusivePlaceholder || shouldShowNonExclusivePlaceholder);
|
|
2671
|
-
return /* @__PURE__ */
|
|
2688
|
+
return /* @__PURE__ */ React54.createElement(
|
|
2672
2689
|
ConditionalTooltip,
|
|
2673
2690
|
{
|
|
2674
2691
|
key: buttonValue,
|
|
2675
2692
|
label,
|
|
2676
2693
|
showTooltip: showTooltip || false
|
|
2677
2694
|
},
|
|
2678
|
-
/* @__PURE__ */
|
|
2695
|
+
/* @__PURE__ */ React54.createElement(
|
|
2679
2696
|
StyledToggleButton,
|
|
2680
2697
|
{
|
|
2681
2698
|
value: buttonValue,
|
|
@@ -2685,12 +2702,12 @@ var ToggleButtonGroupUi = React53.forwardRef(
|
|
|
2685
2702
|
isPlaceholder,
|
|
2686
2703
|
disabled: optionDisabled
|
|
2687
2704
|
},
|
|
2688
|
-
/* @__PURE__ */
|
|
2705
|
+
/* @__PURE__ */ React54.createElement(Content3, { size })
|
|
2689
2706
|
)
|
|
2690
2707
|
);
|
|
2691
2708
|
}
|
|
2692
2709
|
),
|
|
2693
|
-
menuItems.length && exclusive && /* @__PURE__ */
|
|
2710
|
+
menuItems.length && exclusive && /* @__PURE__ */ React54.createElement(
|
|
2694
2711
|
SplitButtonGroup,
|
|
2695
2712
|
{
|
|
2696
2713
|
size,
|
|
@@ -2704,7 +2721,7 @@ var ToggleButtonGroupUi = React53.forwardRef(
|
|
|
2704
2721
|
}
|
|
2705
2722
|
);
|
|
2706
2723
|
var ControlToggleButtonGroup = (props) => {
|
|
2707
|
-
return /* @__PURE__ */
|
|
2724
|
+
return /* @__PURE__ */ React54.createElement(ControlActions, null, /* @__PURE__ */ React54.createElement(ToggleButtonGroupUi, { ...props }));
|
|
2708
2725
|
};
|
|
2709
2726
|
var SplitButtonGroup = ({
|
|
2710
2727
|
size = "tiny",
|
|
@@ -2728,7 +2745,7 @@ var SplitButtonGroup = ({
|
|
|
2728
2745
|
const shouldRemove = newValue === value;
|
|
2729
2746
|
onChange(shouldRemove ? null : newValue);
|
|
2730
2747
|
};
|
|
2731
|
-
return /* @__PURE__ */
|
|
2748
|
+
return /* @__PURE__ */ React54.createElement(React54.Fragment, null, /* @__PURE__ */ React54.createElement(
|
|
2732
2749
|
ToggleButton,
|
|
2733
2750
|
{
|
|
2734
2751
|
value: previewButton.value,
|
|
@@ -2741,7 +2758,7 @@ var SplitButtonGroup = ({
|
|
|
2741
2758
|
}
|
|
2742
2759
|
},
|
|
2743
2760
|
previewButton.renderContent({ size })
|
|
2744
|
-
), /* @__PURE__ */
|
|
2761
|
+
), /* @__PURE__ */ React54.createElement(
|
|
2745
2762
|
ToggleButton,
|
|
2746
2763
|
{
|
|
2747
2764
|
size,
|
|
@@ -2752,8 +2769,8 @@ var SplitButtonGroup = ({
|
|
|
2752
2769
|
ref: menuButtonRef,
|
|
2753
2770
|
value: "__chevron-icon-button__"
|
|
2754
2771
|
},
|
|
2755
|
-
/* @__PURE__ */
|
|
2756
|
-
), /* @__PURE__ */
|
|
2772
|
+
/* @__PURE__ */ React54.createElement(ChevronDownIcon, { fontSize: size })
|
|
2773
|
+
), /* @__PURE__ */ React54.createElement(
|
|
2757
2774
|
Menu2,
|
|
2758
2775
|
{
|
|
2759
2776
|
open: isMenuOpen,
|
|
@@ -2771,14 +2788,14 @@ var SplitButtonGroup = ({
|
|
|
2771
2788
|
mt: 0.5
|
|
2772
2789
|
}
|
|
2773
2790
|
},
|
|
2774
|
-
items2.map(({ label, value: buttonValue }) => /* @__PURE__ */
|
|
2791
|
+
items2.map(({ label, value: buttonValue }) => /* @__PURE__ */ React54.createElement(
|
|
2775
2792
|
MenuItem,
|
|
2776
2793
|
{
|
|
2777
2794
|
key: buttonValue,
|
|
2778
2795
|
selected: buttonValue === value,
|
|
2779
2796
|
onClick: () => onMenuItemClick(buttonValue)
|
|
2780
2797
|
},
|
|
2781
|
-
/* @__PURE__ */
|
|
2798
|
+
/* @__PURE__ */ React54.createElement(ListItemText, null, /* @__PURE__ */ React54.createElement(Typography3, { sx: { fontSize: "14px" } }, label))
|
|
2782
2799
|
))
|
|
2783
2800
|
));
|
|
2784
2801
|
};
|
|
@@ -2796,7 +2813,7 @@ var usePreviewButton = (items2, value) => {
|
|
|
2796
2813
|
};
|
|
2797
2814
|
|
|
2798
2815
|
// src/utils/convert-toggle-options-to-atomic.tsx
|
|
2799
|
-
import * as
|
|
2816
|
+
import * as React55 from "react";
|
|
2800
2817
|
import * as Icons from "@elementor/icons";
|
|
2801
2818
|
var convertToggleOptionsToAtomic = (options) => {
|
|
2802
2819
|
return options.map((option) => {
|
|
@@ -2807,7 +2824,7 @@ var convertToggleOptionsToAtomic = (options) => {
|
|
|
2807
2824
|
label: option.label,
|
|
2808
2825
|
renderContent: ({ size }) => {
|
|
2809
2826
|
if (IconComponent) {
|
|
2810
|
-
return /* @__PURE__ */
|
|
2827
|
+
return /* @__PURE__ */ React55.createElement(IconComponent, { fontSize: size });
|
|
2811
2828
|
}
|
|
2812
2829
|
return option.label;
|
|
2813
2830
|
},
|
|
@@ -2843,7 +2860,7 @@ var ToggleControl = createControl(
|
|
|
2843
2860
|
size,
|
|
2844
2861
|
placeholder
|
|
2845
2862
|
};
|
|
2846
|
-
return exclusive ? /* @__PURE__ */
|
|
2863
|
+
return exclusive ? /* @__PURE__ */ React56.createElement(
|
|
2847
2864
|
ControlToggleButtonGroup,
|
|
2848
2865
|
{
|
|
2849
2866
|
...toggleButtonGroupProps,
|
|
@@ -2852,7 +2869,7 @@ var ToggleControl = createControl(
|
|
|
2852
2869
|
disabled,
|
|
2853
2870
|
exclusive: true
|
|
2854
2871
|
}
|
|
2855
|
-
) : /* @__PURE__ */
|
|
2872
|
+
) : /* @__PURE__ */ React56.createElement(
|
|
2856
2873
|
ControlToggleButtonGroup,
|
|
2857
2874
|
{
|
|
2858
2875
|
...toggleButtonGroupProps,
|
|
@@ -2866,15 +2883,15 @@ var ToggleControl = createControl(
|
|
|
2866
2883
|
);
|
|
2867
2884
|
|
|
2868
2885
|
// src/controls/number-control.tsx
|
|
2869
|
-
import * as
|
|
2886
|
+
import * as React57 from "react";
|
|
2870
2887
|
import { numberPropTypeUtil } from "@elementor/editor-props";
|
|
2871
2888
|
import { InputAdornment as InputAdornment3, Typography as Typography4 } from "@elementor/ui";
|
|
2872
2889
|
var isEmptyOrNaN = (value) => value === null || value === void 0 || value === "" || Number.isNaN(Number(value));
|
|
2873
2890
|
var renderSuffix = (propType) => {
|
|
2874
2891
|
if (propType.meta?.suffix) {
|
|
2875
|
-
return /* @__PURE__ */
|
|
2892
|
+
return /* @__PURE__ */ React57.createElement(InputAdornment3, { position: "end" }, /* @__PURE__ */ React57.createElement(Typography4, { variant: "caption", color: "text.secondary" }, propType.meta.suffix));
|
|
2876
2893
|
}
|
|
2877
|
-
return /* @__PURE__ */
|
|
2894
|
+
return /* @__PURE__ */ React57.createElement(React57.Fragment, null);
|
|
2878
2895
|
};
|
|
2879
2896
|
var NumberControl = createControl(
|
|
2880
2897
|
({
|
|
@@ -2904,7 +2921,7 @@ var NumberControl = createControl(
|
|
|
2904
2921
|
}
|
|
2905
2922
|
setValue(updatedValue, void 0, { validation: () => isInputValid });
|
|
2906
2923
|
};
|
|
2907
|
-
return /* @__PURE__ */
|
|
2924
|
+
return /* @__PURE__ */ React57.createElement(ControlActions, null, /* @__PURE__ */ React57.createElement(
|
|
2908
2925
|
NumberInput,
|
|
2909
2926
|
{
|
|
2910
2927
|
size: "tiny",
|
|
@@ -2917,7 +2934,7 @@ var NumberControl = createControl(
|
|
|
2917
2934
|
placeholder: labelPlaceholder ?? (isEmptyOrNaN(placeholder) ? "" : String(placeholder)),
|
|
2918
2935
|
inputProps: { step, min },
|
|
2919
2936
|
InputProps: {
|
|
2920
|
-
startAdornment: startIcon ? /* @__PURE__ */
|
|
2937
|
+
startAdornment: startIcon ? /* @__PURE__ */ React57.createElement(InputAdornment3, { position: "start", disabled: inputDisabled ?? disabled }, startIcon) : void 0,
|
|
2921
2938
|
endAdornment: renderSuffix(propType)
|
|
2922
2939
|
}
|
|
2923
2940
|
}
|
|
@@ -2926,7 +2943,7 @@ var NumberControl = createControl(
|
|
|
2926
2943
|
);
|
|
2927
2944
|
|
|
2928
2945
|
// src/controls/equal-unequal-sizes-control.tsx
|
|
2929
|
-
import * as
|
|
2946
|
+
import * as React58 from "react";
|
|
2930
2947
|
import { useId as useId2, useRef as useRef9 } from "react";
|
|
2931
2948
|
import { bindPopover as bindPopover3, bindToggle, Box as Box7, Grid as Grid8, Popover as Popover3, Stack as Stack7, Tooltip as Tooltip5, usePopupState as usePopupState4 } from "@elementor/ui";
|
|
2932
2949
|
import { __ as __18 } from "@wordpress/i18n";
|
|
@@ -2977,14 +2994,14 @@ function EqualUnequalSizesControl({
|
|
|
2977
2994
|
}
|
|
2978
2995
|
setMasterValue(Object.values(newValue)?.pop() ?? null);
|
|
2979
2996
|
};
|
|
2980
|
-
return /* @__PURE__ */
|
|
2997
|
+
return /* @__PURE__ */ React58.createElement(React58.Fragment, null, /* @__PURE__ */ React58.createElement(Grid8, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap", ref: rowRefs[0] }, /* @__PURE__ */ React58.createElement(Grid8, { item: true, xs: 6 }, !isShowingGeneralIndicator ? /* @__PURE__ */ React58.createElement(ControlFormLabel, null, label) : /* @__PURE__ */ React58.createElement(ControlLabel, null, label)), /* @__PURE__ */ React58.createElement(Grid8, { item: true, xs: 6 }, /* @__PURE__ */ React58.createElement(Stack7, { direction: "row", alignItems: "center", gap: 1 }, /* @__PURE__ */ React58.createElement(Box7, { flexGrow: 1 }, /* @__PURE__ */ React58.createElement(
|
|
2981
2998
|
SizeControl,
|
|
2982
2999
|
{
|
|
2983
3000
|
placeholder: isMixed ? __18("Mixed", "elementor") : void 0,
|
|
2984
3001
|
enablePropTypeUnits: !isMixed || !isMixedPlaceholder,
|
|
2985
3002
|
anchorRef: rowRefs[0]
|
|
2986
3003
|
}
|
|
2987
|
-
)), /* @__PURE__ */
|
|
3004
|
+
)), /* @__PURE__ */ React58.createElement(Tooltip5, { title: tooltipLabel, placement: "top" }, /* @__PURE__ */ React58.createElement(
|
|
2988
3005
|
StyledToggleButton,
|
|
2989
3006
|
{
|
|
2990
3007
|
size: "tiny",
|
|
@@ -2996,7 +3013,7 @@ function EqualUnequalSizesControl({
|
|
|
2996
3013
|
"aria-label": tooltipLabel
|
|
2997
3014
|
},
|
|
2998
3015
|
icon
|
|
2999
|
-
))))), /* @__PURE__ */
|
|
3016
|
+
))))), /* @__PURE__ */ React58.createElement(
|
|
3000
3017
|
Popover3,
|
|
3001
3018
|
{
|
|
3002
3019
|
disablePortal: true,
|
|
@@ -3014,7 +3031,7 @@ function EqualUnequalSizesControl({
|
|
|
3014
3031
|
paper: { sx: { mt: 0.5, width: rowRefs[0].current?.getBoundingClientRect().width } }
|
|
3015
3032
|
}
|
|
3016
3033
|
},
|
|
3017
|
-
/* @__PURE__ */
|
|
3034
|
+
/* @__PURE__ */ React58.createElement(
|
|
3018
3035
|
PropProvider,
|
|
3019
3036
|
{
|
|
3020
3037
|
propType: multiSizePropType,
|
|
@@ -3023,17 +3040,17 @@ function EqualUnequalSizesControl({
|
|
|
3023
3040
|
setValue: applyMultiSizeValue,
|
|
3024
3041
|
isDisabled: () => multiSizeDisabled
|
|
3025
3042
|
},
|
|
3026
|
-
/* @__PURE__ */
|
|
3043
|
+
/* @__PURE__ */ React58.createElement(PopoverContent, { p: 1.5 }, /* @__PURE__ */ React58.createElement(PopoverGridContainer, { ref: rowRefs[1] }, /* @__PURE__ */ React58.createElement(MultiSizeValueControl, { item: items2[0], rowRef: rowRefs[1] }), /* @__PURE__ */ React58.createElement(MultiSizeValueControl, { item: items2[1], rowRef: rowRefs[1] })), /* @__PURE__ */ React58.createElement(PopoverGridContainer, { ref: rowRefs[2] }, /* @__PURE__ */ React58.createElement(MultiSizeValueControl, { item: items2[2], rowRef: rowRefs[2] }), /* @__PURE__ */ React58.createElement(MultiSizeValueControl, { item: items2[3], rowRef: rowRefs[2] })))
|
|
3027
3044
|
)
|
|
3028
3045
|
));
|
|
3029
3046
|
}
|
|
3030
3047
|
var MultiSizeValueControl = ({ item, rowRef }) => {
|
|
3031
3048
|
const { bind, label, icon, ariaLabel } = item;
|
|
3032
|
-
return /* @__PURE__ */
|
|
3049
|
+
return /* @__PURE__ */ React58.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React58.createElement(Grid8, { item: true, xs: 6 }, /* @__PURE__ */ React58.createElement(Grid8, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React58.createElement(Grid8, { item: true, xs: 12 }, /* @__PURE__ */ React58.createElement(ControlLabel, null, label)), /* @__PURE__ */ React58.createElement(Grid8, { item: true, xs: 12 }, /* @__PURE__ */ React58.createElement(SizeControl, { startIcon: icon, ariaLabel, anchorRef: rowRef })))));
|
|
3033
3050
|
};
|
|
3034
3051
|
|
|
3035
3052
|
// src/controls/linked-dimensions-control.tsx
|
|
3036
|
-
import * as
|
|
3053
|
+
import * as React65 from "react";
|
|
3037
3054
|
import { useLayoutEffect, useRef as useRef12, useState as useState9 } from "react";
|
|
3038
3055
|
import {
|
|
3039
3056
|
dimensionsPropTypeUtil,
|
|
@@ -3045,18 +3062,18 @@ import { Grid as Grid9, Stack as Stack8, Tooltip as Tooltip6 } from "@elementor/
|
|
|
3045
3062
|
import { __ as __20, sprintf as sprintf2 } from "@wordpress/i18n";
|
|
3046
3063
|
|
|
3047
3064
|
// src/controls/size-control/unstable-size-control.tsx
|
|
3048
|
-
import * as
|
|
3065
|
+
import * as React64 from "react";
|
|
3049
3066
|
import { useRef as useRef11 } from "react";
|
|
3050
3067
|
import { sizePropTypeUtil as sizePropTypeUtil4 } from "@elementor/editor-props";
|
|
3051
3068
|
|
|
3052
3069
|
// src/controls/size-control/size-component.tsx
|
|
3053
|
-
import * as
|
|
3070
|
+
import * as React63 from "react";
|
|
3054
3071
|
import { useEffect as useEffect11 } from "react";
|
|
3055
3072
|
import { useActiveBreakpoint as useActiveBreakpoint3 } from "@elementor/editor-responsive";
|
|
3056
3073
|
import { Box as Box8, usePopupState as usePopupState6 } from "@elementor/ui";
|
|
3057
3074
|
|
|
3058
3075
|
// src/controls/size-control/size-field.tsx
|
|
3059
|
-
import * as
|
|
3076
|
+
import * as React61 from "react";
|
|
3060
3077
|
import { MathFunctionIcon as MathFunctionIcon3 } from "@elementor/icons";
|
|
3061
3078
|
import { InputAdornment as InputAdornment4 } from "@elementor/ui";
|
|
3062
3079
|
|
|
@@ -3248,7 +3265,7 @@ var hasChanged = (next, current) => {
|
|
|
3248
3265
|
};
|
|
3249
3266
|
|
|
3250
3267
|
// src/controls/size-control/ui/size-input.tsx
|
|
3251
|
-
import * as
|
|
3268
|
+
import * as React59 from "react";
|
|
3252
3269
|
import { forwardRef as forwardRef8 } from "react";
|
|
3253
3270
|
var SizeInput2 = forwardRef8(
|
|
3254
3271
|
({
|
|
@@ -3265,7 +3282,7 @@ var SizeInput2 = forwardRef8(
|
|
|
3265
3282
|
inputProps,
|
|
3266
3283
|
placeholder
|
|
3267
3284
|
}, ref) => {
|
|
3268
|
-
return /* @__PURE__ */
|
|
3285
|
+
return /* @__PURE__ */ React59.createElement(
|
|
3269
3286
|
NumberInput,
|
|
3270
3287
|
{
|
|
3271
3288
|
id,
|
|
@@ -3293,7 +3310,7 @@ var getCursorStyle = (readOnly) => ({
|
|
|
3293
3310
|
});
|
|
3294
3311
|
|
|
3295
3312
|
// src/controls/size-control/ui/unit-selector.tsx
|
|
3296
|
-
import * as
|
|
3313
|
+
import * as React60 from "react";
|
|
3297
3314
|
import { useId as useId3 } from "react";
|
|
3298
3315
|
import { MenuListItem as MenuListItem3 } from "@elementor/editor-ui";
|
|
3299
3316
|
import { bindMenu as bindMenu2, bindTrigger as bindTrigger3, Button as Button3, Menu as Menu3, styled as styled7, usePopupState as usePopupState5 } from "@elementor/ui";
|
|
@@ -3319,7 +3336,7 @@ var UnitSelector = ({
|
|
|
3319
3336
|
onSelect(option);
|
|
3320
3337
|
popupState.close();
|
|
3321
3338
|
};
|
|
3322
|
-
return /* @__PURE__ */
|
|
3339
|
+
return /* @__PURE__ */ React60.createElement(React60.Fragment, null, /* @__PURE__ */ React60.createElement(
|
|
3323
3340
|
StyledButton2,
|
|
3324
3341
|
{
|
|
3325
3342
|
isHighlighted: isUnitHighlighted,
|
|
@@ -3328,7 +3345,7 @@ var UnitSelector = ({
|
|
|
3328
3345
|
...bindTrigger3(popupState)
|
|
3329
3346
|
},
|
|
3330
3347
|
optionLabelOverrides[value] ?? value
|
|
3331
|
-
), /* @__PURE__ */
|
|
3348
|
+
), /* @__PURE__ */ React60.createElement(Menu3, { MenuListProps: { dense: true }, ...bindMenu2(popupState) }, options.map((option) => /* @__PURE__ */ React60.createElement(
|
|
3332
3349
|
MenuListItem3,
|
|
3333
3350
|
{
|
|
3334
3351
|
key: option,
|
|
@@ -3359,7 +3376,7 @@ var StyledButton2 = styled7(Button3, {
|
|
|
3359
3376
|
|
|
3360
3377
|
// src/controls/size-control/size-field.tsx
|
|
3361
3378
|
var UNIT_DISPLAY_LABELS_OVERRIDES = {
|
|
3362
|
-
custom: /* @__PURE__ */
|
|
3379
|
+
custom: /* @__PURE__ */ React61.createElement(MathFunctionIcon3, { fontSize: "tiny" })
|
|
3363
3380
|
};
|
|
3364
3381
|
var SizeField = ({
|
|
3365
3382
|
value,
|
|
@@ -3394,7 +3411,7 @@ var SizeField = ({
|
|
|
3394
3411
|
setSize(newSize, isInputValid);
|
|
3395
3412
|
};
|
|
3396
3413
|
const inputType = isExtendedUnit(unit) ? "text" : "number";
|
|
3397
|
-
return /* @__PURE__ */
|
|
3414
|
+
return /* @__PURE__ */ React61.createElement(
|
|
3398
3415
|
SizeInput2,
|
|
3399
3416
|
{
|
|
3400
3417
|
disabled,
|
|
@@ -3409,8 +3426,8 @@ var SizeField = ({
|
|
|
3409
3426
|
...InputProps,
|
|
3410
3427
|
autoComplete: "off",
|
|
3411
3428
|
readOnly: isExtendedUnit(unit),
|
|
3412
|
-
startAdornment: startIcon && /* @__PURE__ */
|
|
3413
|
-
endAdornment: /* @__PURE__ */
|
|
3429
|
+
startAdornment: startIcon && /* @__PURE__ */ React61.createElement(InputAdornment4, { position: "start", disabled }, startIcon),
|
|
3430
|
+
endAdornment: /* @__PURE__ */ React61.createElement(InputAdornment4, { position: "end" }, /* @__PURE__ */ React61.createElement(
|
|
3414
3431
|
UnitSelector,
|
|
3415
3432
|
{
|
|
3416
3433
|
options: units2,
|
|
@@ -3437,7 +3454,7 @@ var shouldHighlightUnit = (value) => {
|
|
|
3437
3454
|
};
|
|
3438
3455
|
|
|
3439
3456
|
// src/controls/size-control/ui/text-field-popover.tsx
|
|
3440
|
-
import * as
|
|
3457
|
+
import * as React62 from "react";
|
|
3441
3458
|
import { useEffect as useEffect10, useRef as useRef10 } from "react";
|
|
3442
3459
|
import { PopoverHeader as PopoverHeader2 } from "@elementor/editor-ui";
|
|
3443
3460
|
import { MathFunctionIcon as MathFunctionIcon4 } from "@elementor/icons";
|
|
@@ -3464,7 +3481,7 @@ var TextFieldPopover2 = ({ popupState, anchorRef, value, onChange, onClose }) =>
|
|
|
3464
3481
|
onClose?.();
|
|
3465
3482
|
popupState.close();
|
|
3466
3483
|
};
|
|
3467
|
-
return /* @__PURE__ */
|
|
3484
|
+
return /* @__PURE__ */ React62.createElement(
|
|
3468
3485
|
Popover4,
|
|
3469
3486
|
{
|
|
3470
3487
|
disablePortal: true,
|
|
@@ -3481,15 +3498,15 @@ var TextFieldPopover2 = ({ popupState, anchorRef, value, onChange, onClose }) =>
|
|
|
3481
3498
|
transformOrigin: { vertical: "top", horizontal: "center" },
|
|
3482
3499
|
onClose: handleClose
|
|
3483
3500
|
},
|
|
3484
|
-
/* @__PURE__ */
|
|
3501
|
+
/* @__PURE__ */ React62.createElement(
|
|
3485
3502
|
PopoverHeader2,
|
|
3486
3503
|
{
|
|
3487
3504
|
title: __19("CSS function", "elementor"),
|
|
3488
3505
|
onClose: handleClose,
|
|
3489
|
-
icon: /* @__PURE__ */
|
|
3506
|
+
icon: /* @__PURE__ */ React62.createElement(MathFunctionIcon4, { fontSize: SIZE7 })
|
|
3490
3507
|
}
|
|
3491
3508
|
),
|
|
3492
|
-
/* @__PURE__ */
|
|
3509
|
+
/* @__PURE__ */ React62.createElement(
|
|
3493
3510
|
TextField6,
|
|
3494
3511
|
{
|
|
3495
3512
|
value,
|
|
@@ -3508,7 +3525,7 @@ var TextFieldPopover2 = ({ popupState, anchorRef, value, onChange, onClose }) =>
|
|
|
3508
3525
|
};
|
|
3509
3526
|
|
|
3510
3527
|
// src/controls/size-control/size-component.tsx
|
|
3511
|
-
var SizeComponent = ({ anchorRef, SizeFieldWrapper =
|
|
3528
|
+
var SizeComponent = ({ anchorRef, SizeFieldWrapper = React63.Fragment, ...sizeFieldProps }) => {
|
|
3512
3529
|
const popupState = usePopupState6({ variant: "popover" });
|
|
3513
3530
|
const activeBreakpoint = useActiveBreakpoint3();
|
|
3514
3531
|
const isCustomUnit = sizeFieldProps?.value?.unit === EXTENDED_UNITS.custom;
|
|
@@ -3538,7 +3555,7 @@ var SizeComponent = ({ anchorRef, SizeFieldWrapper = React62.Fragment, ...sizeFi
|
|
|
3538
3555
|
"aria-controls": popupState.isOpen ? popupState.popupId : void 0,
|
|
3539
3556
|
"aria-haspopup": true
|
|
3540
3557
|
};
|
|
3541
|
-
return /* @__PURE__ */
|
|
3558
|
+
return /* @__PURE__ */ React63.createElement(React63.Fragment, null, /* @__PURE__ */ React63.createElement(SizeFieldWrapper, null, /* @__PURE__ */ React63.createElement(Box8, null, /* @__PURE__ */ React63.createElement(
|
|
3542
3559
|
SizeField,
|
|
3543
3560
|
{
|
|
3544
3561
|
focused: popupState.isOpen ? true : void 0,
|
|
@@ -3552,7 +3569,7 @@ var SizeComponent = ({ anchorRef, SizeFieldWrapper = React62.Fragment, ...sizeFi
|
|
|
3552
3569
|
},
|
|
3553
3570
|
...sizeFieldProps
|
|
3554
3571
|
}
|
|
3555
|
-
))), popupState.isOpen && anchorRef?.current && /* @__PURE__ */
|
|
3572
|
+
))), popupState.isOpen && anchorRef?.current && /* @__PURE__ */ React63.createElement(
|
|
3556
3573
|
TextFieldPopover2,
|
|
3557
3574
|
{
|
|
3558
3575
|
popupState,
|
|
@@ -3683,7 +3700,7 @@ var UnstableSizeControl = createControl(
|
|
|
3683
3700
|
}
|
|
3684
3701
|
});
|
|
3685
3702
|
};
|
|
3686
|
-
return /* @__PURE__ */
|
|
3703
|
+
return /* @__PURE__ */ React64.createElement(
|
|
3687
3704
|
SizeComponent,
|
|
3688
3705
|
{
|
|
3689
3706
|
units: units2,
|
|
@@ -3787,7 +3804,7 @@ var LinkedDimensionsControl = ({ label, isSiteRtl = false, min }) => {
|
|
|
3787
3804
|
}
|
|
3788
3805
|
return sizePropTypeUtil5.extract(dimensionsPlaceholder?.[bind]);
|
|
3789
3806
|
};
|
|
3790
|
-
return /* @__PURE__ */
|
|
3807
|
+
return /* @__PURE__ */ React65.createElement(PropProvider, { ...propProviderProps }, /* @__PURE__ */ React65.createElement(Stack8, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React65.createElement(ControlFormLabel, null, label), /* @__PURE__ */ React65.createElement(Tooltip6, { title: isLinked ? unlinkedLabel : linkedLabel, placement: "top" }, /* @__PURE__ */ React65.createElement(
|
|
3791
3808
|
StyledToggleButton,
|
|
3792
3809
|
{
|
|
3793
3810
|
"aria-label": isLinked ? unlinkedLabel : linkedLabel,
|
|
@@ -3799,8 +3816,8 @@ var LinkedDimensionsControl = ({ label, isSiteRtl = false, min }) => {
|
|
|
3799
3816
|
disabled,
|
|
3800
3817
|
isPlaceholder: hasPlaceholders
|
|
3801
3818
|
},
|
|
3802
|
-
/* @__PURE__ */
|
|
3803
|
-
))), getCssDimensionProps(label, isSiteRtl).map((row, index) => /* @__PURE__ */
|
|
3819
|
+
/* @__PURE__ */ React65.createElement(LinkedIcon, { fontSize: "tiny" })
|
|
3820
|
+
))), getCssDimensionProps(label, isSiteRtl).map((row, index) => /* @__PURE__ */ React65.createElement(Stack8, { direction: "row", gap: 2, flexWrap: "nowrap", key: index, ref: gridRowRefs[index] }, row.map(({ icon, ...props }) => /* @__PURE__ */ React65.createElement(Grid9, { container: true, gap: 0.75, alignItems: "center", key: props.bind }, /* @__PURE__ */ React65.createElement(Grid9, { item: true, xs: 12 }, /* @__PURE__ */ React65.createElement(Label, { ...props })), /* @__PURE__ */ React65.createElement(Grid9, { item: true, xs: 12 }, /* @__PURE__ */ React65.createElement(
|
|
3804
3821
|
Control3,
|
|
3805
3822
|
{
|
|
3806
3823
|
bind: props.bind,
|
|
@@ -3823,7 +3840,7 @@ var Control3 = ({
|
|
|
3823
3840
|
min
|
|
3824
3841
|
}) => {
|
|
3825
3842
|
if (isLinked) {
|
|
3826
|
-
return /* @__PURE__ */
|
|
3843
|
+
return /* @__PURE__ */ React65.createElement(
|
|
3827
3844
|
UnstableSizeControl,
|
|
3828
3845
|
{
|
|
3829
3846
|
ariaLabel,
|
|
@@ -3834,7 +3851,7 @@ var Control3 = ({
|
|
|
3834
3851
|
}
|
|
3835
3852
|
);
|
|
3836
3853
|
}
|
|
3837
|
-
return /* @__PURE__ */
|
|
3854
|
+
return /* @__PURE__ */ React65.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React65.createElement(
|
|
3838
3855
|
UnstableSizeControl,
|
|
3839
3856
|
{
|
|
3840
3857
|
ariaLabel,
|
|
@@ -3846,7 +3863,7 @@ var Control3 = ({
|
|
|
3846
3863
|
));
|
|
3847
3864
|
};
|
|
3848
3865
|
var Label = ({ label, bind }) => {
|
|
3849
|
-
return /* @__PURE__ */
|
|
3866
|
+
return /* @__PURE__ */ React65.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React65.createElement(ControlLabel, null, label));
|
|
3850
3867
|
};
|
|
3851
3868
|
var getFirstDefined = (dimensions) => {
|
|
3852
3869
|
return dimensions?.["block-start"] ?? dimensions?.["inline-end"] ?? dimensions?.["block-end"] ?? dimensions?.["inline-start"];
|
|
@@ -3859,7 +3876,7 @@ function getCssDimensionProps(label, isSiteRtl) {
|
|
|
3859
3876
|
label: __20("Top", "elementor"),
|
|
3860
3877
|
/* translators: %s is the name of the main group (margin or padding) */
|
|
3861
3878
|
ariaLabel: sprintf2(__20("%s top", "elementor"), label),
|
|
3862
|
-
icon: /* @__PURE__ */
|
|
3879
|
+
icon: /* @__PURE__ */ React65.createElement(SideTopIcon, { fontSize: "tiny" })
|
|
3863
3880
|
},
|
|
3864
3881
|
{
|
|
3865
3882
|
bind: "inline-end",
|
|
@@ -3871,7 +3888,7 @@ function getCssDimensionProps(label, isSiteRtl) {
|
|
|
3871
3888
|
/* translators: %s is the name of the main group (margin or padding) */
|
|
3872
3889
|
sprintf2(__20("%s right", "elementor"), label)
|
|
3873
3890
|
),
|
|
3874
|
-
icon: isSiteRtl ? /* @__PURE__ */
|
|
3891
|
+
icon: isSiteRtl ? /* @__PURE__ */ React65.createElement(SideLeftIcon, { fontSize: "tiny" }) : /* @__PURE__ */ React65.createElement(SideRightIcon, { fontSize: "tiny" })
|
|
3875
3892
|
}
|
|
3876
3893
|
],
|
|
3877
3894
|
[
|
|
@@ -3880,7 +3897,7 @@ function getCssDimensionProps(label, isSiteRtl) {
|
|
|
3880
3897
|
label: __20("Bottom", "elementor"),
|
|
3881
3898
|
/* translators: %s is the name of the main group (margin or padding) */
|
|
3882
3899
|
ariaLabel: sprintf2(__20("%s bottom", "elementor"), label),
|
|
3883
|
-
icon: /* @__PURE__ */
|
|
3900
|
+
icon: /* @__PURE__ */ React65.createElement(SideBottomIcon, { fontSize: "tiny" })
|
|
3884
3901
|
},
|
|
3885
3902
|
{
|
|
3886
3903
|
bind: "inline-start",
|
|
@@ -3892,14 +3909,14 @@ function getCssDimensionProps(label, isSiteRtl) {
|
|
|
3892
3909
|
/* translators: %s is the name of the main group (margin or padding) */
|
|
3893
3910
|
sprintf2(__20("%s left", "elementor"), label)
|
|
3894
3911
|
),
|
|
3895
|
-
icon: isSiteRtl ? /* @__PURE__ */
|
|
3912
|
+
icon: isSiteRtl ? /* @__PURE__ */ React65.createElement(SideRightIcon, { fontSize: "tiny" }) : /* @__PURE__ */ React65.createElement(SideLeftIcon, { fontSize: "tiny" })
|
|
3896
3913
|
}
|
|
3897
3914
|
]
|
|
3898
3915
|
];
|
|
3899
3916
|
}
|
|
3900
3917
|
|
|
3901
3918
|
// src/controls/font-family-control/font-family-control.tsx
|
|
3902
|
-
import * as
|
|
3919
|
+
import * as React67 from "react";
|
|
3903
3920
|
import { useMemo as useMemo8 } from "react";
|
|
3904
3921
|
import { stringPropTypeUtil as stringPropTypeUtil8 } from "@elementor/editor-props";
|
|
3905
3922
|
import { ChevronDownIcon as ChevronDownIcon2, TextIcon } from "@elementor/icons";
|
|
@@ -3907,7 +3924,7 @@ import { bindPopover as bindPopover5, bindTrigger as bindTrigger4, Popover as Po
|
|
|
3907
3924
|
import { __ as __22 } from "@wordpress/i18n";
|
|
3908
3925
|
|
|
3909
3926
|
// src/components/item-selector.tsx
|
|
3910
|
-
import * as
|
|
3927
|
+
import * as React66 from "react";
|
|
3911
3928
|
import { useCallback as useCallback3, useEffect as useEffect12, useState as useState10 } from "react";
|
|
3912
3929
|
import { PopoverBody, PopoverHeader as PopoverHeader3, PopoverMenuList, SearchField } from "@elementor/editor-ui";
|
|
3913
3930
|
import { Box as Box9, Divider as Divider2, Link, Stack as Stack9, Typography as Typography5 } from "@elementor/ui";
|
|
@@ -3957,7 +3974,7 @@ var ItemSelector = ({
|
|
|
3957
3974
|
setSearchValue("");
|
|
3958
3975
|
onClose();
|
|
3959
3976
|
};
|
|
3960
|
-
return /* @__PURE__ */
|
|
3977
|
+
return /* @__PURE__ */ React66.createElement(PopoverBody, { width: sectionWidth, id }, /* @__PURE__ */ React66.createElement(PopoverHeader3, { title, onClose: handleClose, icon: /* @__PURE__ */ React66.createElement(IconComponent, { fontSize: "tiny" }) }), /* @__PURE__ */ React66.createElement(
|
|
3961
3978
|
SearchField,
|
|
3962
3979
|
{
|
|
3963
3980
|
value: searchValue,
|
|
@@ -3965,7 +3982,7 @@ var ItemSelector = ({
|
|
|
3965
3982
|
placeholder: __21("Search", "elementor"),
|
|
3966
3983
|
id: id + "-search"
|
|
3967
3984
|
}
|
|
3968
|
-
), /* @__PURE__ */
|
|
3985
|
+
), /* @__PURE__ */ React66.createElement(Divider2, null), /* @__PURE__ */ React66.createElement(Box9, { sx: { flex: 1, overflow: "auto", minHeight: 0 } }, filteredItemsList.length > 0 ? /* @__PURE__ */ React66.createElement(
|
|
3969
3986
|
ItemList,
|
|
3970
3987
|
{
|
|
3971
3988
|
itemListItems: filteredItemsList,
|
|
@@ -3976,7 +3993,7 @@ var ItemSelector = ({
|
|
|
3976
3993
|
onDebounce,
|
|
3977
3994
|
categoryItemContentTemplate
|
|
3978
3995
|
}
|
|
3979
|
-
) : /* @__PURE__ */
|
|
3996
|
+
) : /* @__PURE__ */ React66.createElement(
|
|
3980
3997
|
Stack9,
|
|
3981
3998
|
{
|
|
3982
3999
|
alignItems: "center",
|
|
@@ -3986,16 +4003,16 @@ var ItemSelector = ({
|
|
|
3986
4003
|
gap: 1.5,
|
|
3987
4004
|
overflow: "hidden"
|
|
3988
4005
|
},
|
|
3989
|
-
/* @__PURE__ */
|
|
3990
|
-
/* @__PURE__ */
|
|
4006
|
+
/* @__PURE__ */ React66.createElement(IconComponent, { fontSize: "large" }),
|
|
4007
|
+
/* @__PURE__ */ React66.createElement(Box9, { sx: { maxWidth: 160, overflow: "hidden" } }, /* @__PURE__ */ React66.createElement(Typography5, { align: "center", variant: "subtitle2", color: "text.secondary" }, __21("Sorry, nothing matched", "elementor")), /* @__PURE__ */ React66.createElement(
|
|
3991
4008
|
Typography5,
|
|
3992
4009
|
{
|
|
3993
4010
|
variant: "subtitle2",
|
|
3994
4011
|
color: "text.secondary",
|
|
3995
4012
|
sx: { display: "flex", width: "100%", justifyContent: "center" }
|
|
3996
4013
|
},
|
|
3997
|
-
/* @__PURE__ */
|
|
3998
|
-
/* @__PURE__ */
|
|
4014
|
+
/* @__PURE__ */ React66.createElement("span", null, "\u201C"),
|
|
4015
|
+
/* @__PURE__ */ React66.createElement(
|
|
3999
4016
|
Box9,
|
|
4000
4017
|
{
|
|
4001
4018
|
component: "span",
|
|
@@ -4003,9 +4020,9 @@ var ItemSelector = ({
|
|
|
4003
4020
|
},
|
|
4004
4021
|
searchValue
|
|
4005
4022
|
),
|
|
4006
|
-
/* @__PURE__ */
|
|
4023
|
+
/* @__PURE__ */ React66.createElement("span", null, "\u201D.")
|
|
4007
4024
|
)),
|
|
4008
|
-
/* @__PURE__ */
|
|
4025
|
+
/* @__PURE__ */ React66.createElement(
|
|
4009
4026
|
Typography5,
|
|
4010
4027
|
{
|
|
4011
4028
|
align: "center",
|
|
@@ -4014,7 +4031,7 @@ var ItemSelector = ({
|
|
|
4014
4031
|
sx: { display: "flex", flexDirection: "column" }
|
|
4015
4032
|
},
|
|
4016
4033
|
__21("Try something else.", "elementor"),
|
|
4017
|
-
/* @__PURE__ */
|
|
4034
|
+
/* @__PURE__ */ React66.createElement(
|
|
4018
4035
|
Link,
|
|
4019
4036
|
{
|
|
4020
4037
|
color: "secondary",
|
|
@@ -4046,7 +4063,7 @@ var ItemList = ({
|
|
|
4046
4063
|
});
|
|
4047
4064
|
}, 100);
|
|
4048
4065
|
const memoizedItemStyle = useCallback3((item) => itemStyle(item), [itemStyle]);
|
|
4049
|
-
return /* @__PURE__ */
|
|
4066
|
+
return /* @__PURE__ */ React66.createElement(
|
|
4050
4067
|
PopoverMenuList,
|
|
4051
4068
|
{
|
|
4052
4069
|
items: itemListItems,
|
|
@@ -4089,13 +4106,13 @@ var FontFamilyControl = createControl(
|
|
|
4089
4106
|
items: fonts
|
|
4090
4107
|
}));
|
|
4091
4108
|
}, [fontFamilies]);
|
|
4092
|
-
return /* @__PURE__ */
|
|
4109
|
+
return /* @__PURE__ */ React67.createElement(React67.Fragment, null, /* @__PURE__ */ React67.createElement(ControlActions, null, /* @__PURE__ */ React67.createElement(
|
|
4093
4110
|
UnstableTag2,
|
|
4094
4111
|
{
|
|
4095
4112
|
id: "font-family-control",
|
|
4096
4113
|
variant: "outlined",
|
|
4097
4114
|
label: fontFamily || placeholder,
|
|
4098
|
-
endIcon: /* @__PURE__ */
|
|
4115
|
+
endIcon: /* @__PURE__ */ React67.createElement(ChevronDownIcon2, { fontSize: "tiny" }),
|
|
4099
4116
|
...bindTrigger4(popoverState),
|
|
4100
4117
|
fullWidth: true,
|
|
4101
4118
|
disabled,
|
|
@@ -4107,7 +4124,7 @@ var FontFamilyControl = createControl(
|
|
|
4107
4124
|
textTransform: "capitalize"
|
|
4108
4125
|
} : void 0
|
|
4109
4126
|
}
|
|
4110
|
-
)), /* @__PURE__ */
|
|
4127
|
+
)), /* @__PURE__ */ React67.createElement(
|
|
4111
4128
|
Popover5,
|
|
4112
4129
|
{
|
|
4113
4130
|
disablePortal: true,
|
|
@@ -4117,7 +4134,7 @@ var FontFamilyControl = createControl(
|
|
|
4117
4134
|
sx: { my: 1.5 },
|
|
4118
4135
|
...bindPopover5(popoverState)
|
|
4119
4136
|
},
|
|
4120
|
-
/* @__PURE__ */
|
|
4137
|
+
/* @__PURE__ */ React67.createElement(
|
|
4121
4138
|
ItemSelector,
|
|
4122
4139
|
{
|
|
4123
4140
|
id: "font-family-selector",
|
|
@@ -4137,7 +4154,7 @@ var FontFamilyControl = createControl(
|
|
|
4137
4154
|
);
|
|
4138
4155
|
|
|
4139
4156
|
// src/controls/url-control.tsx
|
|
4140
|
-
import * as
|
|
4157
|
+
import * as React68 from "react";
|
|
4141
4158
|
import { urlPropTypeUtil as urlPropTypeUtil2 } from "@elementor/editor-props";
|
|
4142
4159
|
import { TextField as TextField7 } from "@elementor/ui";
|
|
4143
4160
|
var UrlControl = createControl(
|
|
@@ -4145,7 +4162,7 @@ var UrlControl = createControl(
|
|
|
4145
4162
|
const { value, setValue, disabled, placeholder: boundPlaceholder } = useBoundProp(urlPropTypeUtil2);
|
|
4146
4163
|
const handleChange = (event) => setValue(event.target.value);
|
|
4147
4164
|
const placeholder = propPlaceholder ?? boundPlaceholder ?? void 0;
|
|
4148
|
-
return /* @__PURE__ */
|
|
4165
|
+
return /* @__PURE__ */ React68.createElement(ControlActions, null, /* @__PURE__ */ React68.createElement(
|
|
4149
4166
|
TextField7,
|
|
4150
4167
|
{
|
|
4151
4168
|
size: "tiny",
|
|
@@ -4163,7 +4180,7 @@ var UrlControl = createControl(
|
|
|
4163
4180
|
);
|
|
4164
4181
|
|
|
4165
4182
|
// src/controls/link-control.tsx
|
|
4166
|
-
import * as
|
|
4183
|
+
import * as React73 from "react";
|
|
4167
4184
|
import { useEffect as useEffect13, useMemo as useMemo10, useState as useState12 } from "react";
|
|
4168
4185
|
import { getLinkInLinkRestriction } from "@elementor/editor-elements";
|
|
4169
4186
|
import { linkPropTypeUtil } from "@elementor/editor-props";
|
|
@@ -4174,7 +4191,7 @@ import { debounce as debounce3 } from "@elementor/utils";
|
|
|
4174
4191
|
import { __ as __25 } from "@wordpress/i18n";
|
|
4175
4192
|
|
|
4176
4193
|
// src/components/restricted-link-infotip.tsx
|
|
4177
|
-
import * as
|
|
4194
|
+
import * as React69 from "react";
|
|
4178
4195
|
import { selectElement } from "@elementor/editor-elements";
|
|
4179
4196
|
import { InfoCircleFilledIcon } from "@elementor/icons";
|
|
4180
4197
|
import { Alert, AlertAction, AlertTitle, Box as Box10, Infotip as Infotip2, Link as Link2 } from "@elementor/ui";
|
|
@@ -4204,13 +4221,13 @@ var RestrictedLinkInfotip = ({
|
|
|
4204
4221
|
selectElement(elementId);
|
|
4205
4222
|
}
|
|
4206
4223
|
};
|
|
4207
|
-
const content = /* @__PURE__ */
|
|
4224
|
+
const content = /* @__PURE__ */ React69.createElement(
|
|
4208
4225
|
Alert,
|
|
4209
4226
|
{
|
|
4210
4227
|
color: "secondary",
|
|
4211
|
-
icon: /* @__PURE__ */
|
|
4228
|
+
icon: /* @__PURE__ */ React69.createElement(InfoCircleFilledIcon, null),
|
|
4212
4229
|
size: "small",
|
|
4213
|
-
action: /* @__PURE__ */
|
|
4230
|
+
action: /* @__PURE__ */ React69.createElement(
|
|
4214
4231
|
AlertAction,
|
|
4215
4232
|
{
|
|
4216
4233
|
sx: { width: "fit-content" },
|
|
@@ -4221,10 +4238,10 @@ var RestrictedLinkInfotip = ({
|
|
|
4221
4238
|
__23("Take me there", "elementor")
|
|
4222
4239
|
)
|
|
4223
4240
|
},
|
|
4224
|
-
/* @__PURE__ */
|
|
4225
|
-
/* @__PURE__ */
|
|
4241
|
+
/* @__PURE__ */ React69.createElement(AlertTitle, null, __23("Nested links", "elementor")),
|
|
4242
|
+
/* @__PURE__ */ React69.createElement(Box10, { component: "span" }, INFOTIP_CONTENT[reason ?? "descendant"], " ", /* @__PURE__ */ React69.createElement(Link2, { href: learnMoreButton.href, target: "_blank", color: "info.main" }, learnMoreButton.label))
|
|
4226
4243
|
);
|
|
4227
|
-
return shouldRestrict && isVisible ? /* @__PURE__ */
|
|
4244
|
+
return shouldRestrict && isVisible ? /* @__PURE__ */ React69.createElement(
|
|
4228
4245
|
Infotip2,
|
|
4229
4246
|
{
|
|
4230
4247
|
placement: "right",
|
|
@@ -4232,26 +4249,18 @@ var RestrictedLinkInfotip = ({
|
|
|
4232
4249
|
color: "secondary",
|
|
4233
4250
|
slotProps: { popper: { sx: { width: 300 } } }
|
|
4234
4251
|
},
|
|
4235
|
-
/* @__PURE__ */
|
|
4236
|
-
) : /* @__PURE__ */
|
|
4252
|
+
/* @__PURE__ */ React69.createElement(Box10, null, children)
|
|
4253
|
+
) : /* @__PURE__ */ React69.createElement(React69.Fragment, null, children);
|
|
4237
4254
|
};
|
|
4238
4255
|
|
|
4239
4256
|
// src/controls/query-control.tsx
|
|
4240
|
-
import * as
|
|
4241
|
-
import {
|
|
4242
|
-
import {
|
|
4243
|
-
numberPropTypeUtil as numberPropTypeUtil2,
|
|
4244
|
-
queryPropTypeUtil,
|
|
4245
|
-
stringPropTypeUtil as stringPropTypeUtil9,
|
|
4246
|
-
urlPropTypeUtil as urlPropTypeUtil3
|
|
4247
|
-
} from "@elementor/editor-props";
|
|
4248
|
-
import { httpService as httpService2 } from "@elementor/http-client";
|
|
4257
|
+
import * as React71 from "react";
|
|
4258
|
+
import { numberPropTypeUtil as numberPropTypeUtil3, queryPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil10, urlPropTypeUtil as urlPropTypeUtil3 } from "@elementor/editor-props";
|
|
4249
4259
|
import { SearchIcon } from "@elementor/icons";
|
|
4250
|
-
import { debounce as debounce2 } from "@elementor/utils";
|
|
4251
4260
|
import { __ as __24 } from "@wordpress/i18n";
|
|
4252
4261
|
|
|
4253
4262
|
// src/components/autocomplete.tsx
|
|
4254
|
-
import * as
|
|
4263
|
+
import * as React70 from "react";
|
|
4255
4264
|
import { forwardRef as forwardRef9 } from "react";
|
|
4256
4265
|
import { XIcon as XIcon2 } from "@elementor/icons";
|
|
4257
4266
|
import {
|
|
@@ -4283,7 +4292,7 @@ var Autocomplete2 = forwardRef9((props, ref) => {
|
|
|
4283
4292
|
const valueLength = value?.toString()?.length ?? 0;
|
|
4284
4293
|
const meetsMinLength = valueLength >= minInputLength;
|
|
4285
4294
|
const shouldOpen = meetsMinLength && (allowCustomValues ? optionKeys.length > 0 : true);
|
|
4286
|
-
return /* @__PURE__ */
|
|
4295
|
+
return /* @__PURE__ */ React70.createElement(
|
|
4287
4296
|
AutocompleteBase,
|
|
4288
4297
|
{
|
|
4289
4298
|
...restProps,
|
|
@@ -4304,8 +4313,8 @@ var Autocomplete2 = forwardRef9((props, ref) => {
|
|
|
4304
4313
|
groupBy: isCategorizedOptionPool(options) ? (optionId) => findMatchingOption(options, optionId)?.groupLabel || optionId : void 0,
|
|
4305
4314
|
isOptionEqualToValue,
|
|
4306
4315
|
filterOptions: () => optionKeys,
|
|
4307
|
-
renderOption: (optionProps, optionId) => /* @__PURE__ */
|
|
4308
|
-
renderInput: (params) => /* @__PURE__ */
|
|
4316
|
+
renderOption: (optionProps, optionId) => /* @__PURE__ */ React70.createElement(Box11, { component: "li", ...optionProps, key: optionProps.id }, findMatchingOption(options, optionId)?.label ?? optionId),
|
|
4317
|
+
renderInput: (params) => /* @__PURE__ */ React70.createElement(
|
|
4309
4318
|
TextInput,
|
|
4310
4319
|
{
|
|
4311
4320
|
params,
|
|
@@ -4332,7 +4341,7 @@ var TextInput = ({
|
|
|
4332
4341
|
const onChange = (event) => {
|
|
4333
4342
|
handleChange(event.target.value);
|
|
4334
4343
|
};
|
|
4335
|
-
return /* @__PURE__ */
|
|
4344
|
+
return /* @__PURE__ */ React70.createElement(
|
|
4336
4345
|
TextField8,
|
|
4337
4346
|
{
|
|
4338
4347
|
...params,
|
|
@@ -4347,7 +4356,7 @@ var TextInput = ({
|
|
|
4347
4356
|
InputProps: {
|
|
4348
4357
|
...params.InputProps,
|
|
4349
4358
|
startAdornment: startAdornment || params.InputProps.startAdornment,
|
|
4350
|
-
endAdornment: /* @__PURE__ */
|
|
4359
|
+
endAdornment: /* @__PURE__ */ React70.createElement(ClearButton, { params, allowClear, handleChange })
|
|
4351
4360
|
}
|
|
4352
4361
|
}
|
|
4353
4362
|
);
|
|
@@ -4356,7 +4365,7 @@ var ClearButton = ({
|
|
|
4356
4365
|
allowClear,
|
|
4357
4366
|
handleChange,
|
|
4358
4367
|
params
|
|
4359
|
-
}) => /* @__PURE__ */
|
|
4368
|
+
}) => /* @__PURE__ */ React70.createElement(InputAdornment5, { position: "end" }, allowClear && /* @__PURE__ */ React70.createElement(IconButton5, { size: params.size, onClick: () => handleChange(null), sx: { cursor: "pointer" } }, /* @__PURE__ */ React70.createElement(XIcon2, { fontSize: params.size })));
|
|
4360
4369
|
function findMatchingOption(options, optionId = null) {
|
|
4361
4370
|
const formattedOption = (optionId || "").toString();
|
|
4362
4371
|
return options.find(({ id }) => formattedOption === id.toString());
|
|
@@ -4381,6 +4390,79 @@ function factoryFilter(newValue, options, minInputLength) {
|
|
|
4381
4390
|
);
|
|
4382
4391
|
}
|
|
4383
4392
|
|
|
4393
|
+
// src/hooks/use-query-autocomplete.ts
|
|
4394
|
+
import { useMemo as useMemo9, useState as useState11 } from "react";
|
|
4395
|
+
import { numberPropTypeUtil as numberPropTypeUtil2, stringPropTypeUtil as stringPropTypeUtil9 } from "@elementor/editor-props";
|
|
4396
|
+
import { httpService as httpService2 } from "@elementor/http-client";
|
|
4397
|
+
import { debounce as debounce2 } from "@elementor/utils";
|
|
4398
|
+
function useQueryAutocomplete({
|
|
4399
|
+
url,
|
|
4400
|
+
params = {},
|
|
4401
|
+
minInputLength = 2,
|
|
4402
|
+
initialQueryValue = null,
|
|
4403
|
+
excludeIds
|
|
4404
|
+
}) {
|
|
4405
|
+
const excludeIdSet = useMemo9(() => new Set((excludeIds ?? []).map(String)), [excludeIds]);
|
|
4406
|
+
const [options, setOptions] = useState11(
|
|
4407
|
+
generateFirstLoadedOption(initialQueryValue)
|
|
4408
|
+
);
|
|
4409
|
+
const debounceFetch = useMemo9(
|
|
4410
|
+
() => debounce2(
|
|
4411
|
+
(queryParams) => fetchOptions(url, queryParams).then((newOptions) => {
|
|
4412
|
+
setOptions(formatOptions(filterExcludedOptions(newOptions, excludeIdSet)));
|
|
4413
|
+
}),
|
|
4414
|
+
400
|
|
4415
|
+
),
|
|
4416
|
+
[url, excludeIdSet]
|
|
4417
|
+
);
|
|
4418
|
+
const updateOptions = (term) => {
|
|
4419
|
+
setOptions([]);
|
|
4420
|
+
if (!term || !url || term.length < minInputLength) {
|
|
4421
|
+
return;
|
|
4422
|
+
}
|
|
4423
|
+
debounceFetch({ ...params, term });
|
|
4424
|
+
};
|
|
4425
|
+
return { options, updateOptions };
|
|
4426
|
+
}
|
|
4427
|
+
async function fetchOptions(ajaxUrl, params) {
|
|
4428
|
+
if (!params || !ajaxUrl) {
|
|
4429
|
+
return [];
|
|
4430
|
+
}
|
|
4431
|
+
try {
|
|
4432
|
+
const { data: response } = await httpService2().get(ajaxUrl, { params });
|
|
4433
|
+
return response.data.value;
|
|
4434
|
+
} catch {
|
|
4435
|
+
return [];
|
|
4436
|
+
}
|
|
4437
|
+
}
|
|
4438
|
+
function formatOptions(options) {
|
|
4439
|
+
const compareKey = isCategorizedOptionPool(options) ? "groupLabel" : "label";
|
|
4440
|
+
return options.sort(
|
|
4441
|
+
(a, b) => a[compareKey] && b[compareKey] ? a[compareKey].localeCompare(b[compareKey]) : 0
|
|
4442
|
+
);
|
|
4443
|
+
}
|
|
4444
|
+
function filterExcludedOptions(options, excludeIdSet) {
|
|
4445
|
+
if (excludeIdSet.size === 0) {
|
|
4446
|
+
return options;
|
|
4447
|
+
}
|
|
4448
|
+
return options.filter((option) => !excludeIdSet.has(String(option.id)));
|
|
4449
|
+
}
|
|
4450
|
+
function extractFlatOptionFromQueryValue(queryValue) {
|
|
4451
|
+
const id = numberPropTypeUtil2.extract(queryValue?.id);
|
|
4452
|
+
const label = stringPropTypeUtil9.extract(queryValue?.label);
|
|
4453
|
+
if (id === null) {
|
|
4454
|
+
return null;
|
|
4455
|
+
}
|
|
4456
|
+
return {
|
|
4457
|
+
id: String(id),
|
|
4458
|
+
label: label || String(id)
|
|
4459
|
+
};
|
|
4460
|
+
}
|
|
4461
|
+
function generateFirstLoadedOption(queryValue) {
|
|
4462
|
+
const option = extractFlatOptionFromQueryValue(queryValue);
|
|
4463
|
+
return option ? [option] : [];
|
|
4464
|
+
}
|
|
4465
|
+
|
|
4384
4466
|
// src/controls/query-control.tsx
|
|
4385
4467
|
var QueryControl = createControl((props) => {
|
|
4386
4468
|
const { value: queryValue, setValue: setQueryValue } = useBoundProp(queryPropTypeUtil);
|
|
@@ -4393,9 +4475,12 @@ var QueryControl = createControl((props) => {
|
|
|
4393
4475
|
onSetValue,
|
|
4394
4476
|
ariaLabel
|
|
4395
4477
|
} = props || {};
|
|
4396
|
-
const
|
|
4397
|
-
|
|
4398
|
-
|
|
4478
|
+
const { options, updateOptions } = useQueryAutocomplete({
|
|
4479
|
+
url,
|
|
4480
|
+
params,
|
|
4481
|
+
minInputLength,
|
|
4482
|
+
initialQueryValue: queryValue
|
|
4483
|
+
});
|
|
4399
4484
|
const onOptionChange = (newValue) => {
|
|
4400
4485
|
if (newValue === null) {
|
|
4401
4486
|
setQueryValue(null);
|
|
@@ -4403,8 +4488,8 @@ var QueryControl = createControl((props) => {
|
|
|
4403
4488
|
return;
|
|
4404
4489
|
}
|
|
4405
4490
|
const newQueryValue = {
|
|
4406
|
-
id:
|
|
4407
|
-
label:
|
|
4491
|
+
id: numberPropTypeUtil3.create(newValue),
|
|
4492
|
+
label: stringPropTypeUtil10.create(findMatchingOption(options, newValue)?.label || null)
|
|
4408
4493
|
};
|
|
4409
4494
|
setQueryValue(newQueryValue);
|
|
4410
4495
|
onSetValue?.(queryPropTypeUtil.create(newQueryValue));
|
|
@@ -4420,30 +4505,14 @@ var QueryControl = createControl((props) => {
|
|
|
4420
4505
|
onSetValue?.(urlPropTypeUtil3.create(trimmedValue));
|
|
4421
4506
|
updateOptions(newValue);
|
|
4422
4507
|
};
|
|
4423
|
-
const updateOptions = (newValue) => {
|
|
4424
|
-
setOptions([]);
|
|
4425
|
-
if (!newValue || !url || newValue.length < minInputLength) {
|
|
4426
|
-
return;
|
|
4427
|
-
}
|
|
4428
|
-
debounceFetch({ ...params, term: newValue });
|
|
4429
|
-
};
|
|
4430
|
-
const debounceFetch = useMemo9(
|
|
4431
|
-
() => debounce2(
|
|
4432
|
-
(queryParams) => fetchOptions(url, queryParams).then((newOptions) => {
|
|
4433
|
-
setOptions(formatOptions(newOptions));
|
|
4434
|
-
}),
|
|
4435
|
-
400
|
|
4436
|
-
),
|
|
4437
|
-
[url]
|
|
4438
|
-
);
|
|
4439
4508
|
const displayValue = queryValue?.id?.value ?? urlValue;
|
|
4440
|
-
return /* @__PURE__ */
|
|
4509
|
+
return /* @__PURE__ */ React71.createElement(ControlActions, null, /* @__PURE__ */ React71.createElement(
|
|
4441
4510
|
Autocomplete2,
|
|
4442
4511
|
{
|
|
4443
4512
|
options,
|
|
4444
4513
|
allowCustomValues,
|
|
4445
4514
|
placeholder: urlPlaceholder ?? placeholder,
|
|
4446
|
-
startAdornment: /* @__PURE__ */
|
|
4515
|
+
startAdornment: /* @__PURE__ */ React71.createElement(SearchIcon, { fontSize: "tiny" }),
|
|
4447
4516
|
value: displayValue,
|
|
4448
4517
|
onOptionChange,
|
|
4449
4518
|
onTextChange,
|
|
@@ -4455,35 +4524,9 @@ var QueryControl = createControl((props) => {
|
|
|
4455
4524
|
}
|
|
4456
4525
|
));
|
|
4457
4526
|
});
|
|
4458
|
-
async function fetchOptions(ajaxUrl, params) {
|
|
4459
|
-
if (!params || !ajaxUrl) {
|
|
4460
|
-
return [];
|
|
4461
|
-
}
|
|
4462
|
-
try {
|
|
4463
|
-
const { data: response } = await httpService2().get(ajaxUrl, { params });
|
|
4464
|
-
return response.data.value;
|
|
4465
|
-
} catch {
|
|
4466
|
-
return [];
|
|
4467
|
-
}
|
|
4468
|
-
}
|
|
4469
|
-
function formatOptions(options) {
|
|
4470
|
-
const compareKey = isCategorizedOptionPool(options) ? "groupLabel" : "label";
|
|
4471
|
-
return options.sort(
|
|
4472
|
-
(a, b) => a[compareKey] && b[compareKey] ? a[compareKey].localeCompare(b[compareKey]) : 0
|
|
4473
|
-
);
|
|
4474
|
-
}
|
|
4475
|
-
function generateFirstLoadedOption(queryValue) {
|
|
4476
|
-
const id = queryValue?.id?.value;
|
|
4477
|
-
const label = queryValue?.label?.value;
|
|
4478
|
-
const option = [];
|
|
4479
|
-
if (id && label) {
|
|
4480
|
-
option.push({ id: id.toString(), label });
|
|
4481
|
-
}
|
|
4482
|
-
return option;
|
|
4483
|
-
}
|
|
4484
4527
|
|
|
4485
4528
|
// src/controls/switch-control.tsx
|
|
4486
|
-
import * as
|
|
4529
|
+
import * as React72 from "react";
|
|
4487
4530
|
import { booleanPropTypeUtil } from "@elementor/editor-props";
|
|
4488
4531
|
import { Box as Box12, Switch } from "@elementor/ui";
|
|
4489
4532
|
var SwitchControl = createControl(() => {
|
|
@@ -4491,7 +4534,7 @@ var SwitchControl = createControl(() => {
|
|
|
4491
4534
|
const handleChange = (event) => {
|
|
4492
4535
|
setValue(event.target.checked);
|
|
4493
4536
|
};
|
|
4494
|
-
return /* @__PURE__ */
|
|
4537
|
+
return /* @__PURE__ */ React72.createElement(Box12, { sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React72.createElement(
|
|
4495
4538
|
Switch,
|
|
4496
4539
|
{
|
|
4497
4540
|
checked: !!(value || placeholder),
|
|
@@ -4574,7 +4617,7 @@ var LinkControl = createControl((props) => {
|
|
|
4574
4617
|
} : null;
|
|
4575
4618
|
setLinkSessionValue({ ...linkSessionValue, value: valueToSave });
|
|
4576
4619
|
};
|
|
4577
|
-
return /* @__PURE__ */
|
|
4620
|
+
return /* @__PURE__ */ React73.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React73.createElement(Stack10, { gap: 1.5 }, /* @__PURE__ */ React73.createElement(
|
|
4578
4621
|
Stack10,
|
|
4579
4622
|
{
|
|
4580
4623
|
direction: "row",
|
|
@@ -4584,8 +4627,8 @@ var LinkControl = createControl((props) => {
|
|
|
4584
4627
|
marginInlineEnd: -0.75
|
|
4585
4628
|
}
|
|
4586
4629
|
},
|
|
4587
|
-
/* @__PURE__ */
|
|
4588
|
-
/* @__PURE__ */
|
|
4630
|
+
/* @__PURE__ */ React73.createElement(ControlLabel, null, label),
|
|
4631
|
+
/* @__PURE__ */ React73.createElement(RestrictedLinkInfotip, { isVisible: !isActive, linkInLinkRestriction }, /* @__PURE__ */ React73.createElement(
|
|
4589
4632
|
IconButton6,
|
|
4590
4633
|
{
|
|
4591
4634
|
size: SIZE8,
|
|
@@ -4593,9 +4636,9 @@ var LinkControl = createControl((props) => {
|
|
|
4593
4636
|
"aria-label": __25("Toggle link", "elementor"),
|
|
4594
4637
|
disabled: shouldDisableAddingLink
|
|
4595
4638
|
},
|
|
4596
|
-
isActive ? /* @__PURE__ */
|
|
4639
|
+
isActive ? /* @__PURE__ */ React73.createElement(MinusIcon, { fontSize: SIZE8 }) : /* @__PURE__ */ React73.createElement(PlusIcon2, { fontSize: SIZE8 })
|
|
4597
4640
|
))
|
|
4598
|
-
), /* @__PURE__ */
|
|
4641
|
+
), /* @__PURE__ */ React73.createElement(Collapse, { in: isActive, timeout: "auto", unmountOnExit: true }, /* @__PURE__ */ React73.createElement(Stack10, { gap: 1.5 }, /* @__PURE__ */ React73.createElement(PropKeyProvider, { bind: "destination" }, /* @__PURE__ */ React73.createElement(
|
|
4599
4642
|
QueryControl,
|
|
4600
4643
|
{
|
|
4601
4644
|
queryOptions,
|
|
@@ -4605,29 +4648,29 @@ var LinkControl = createControl((props) => {
|
|
|
4605
4648
|
onSetValue: onSaveValueToSession,
|
|
4606
4649
|
ariaLabel: ariaLabel || label
|
|
4607
4650
|
}
|
|
4608
|
-
)), /* @__PURE__ */
|
|
4651
|
+
)), /* @__PURE__ */ React73.createElement(PropKeyProvider, { bind: "isTargetBlank" }, /* @__PURE__ */ React73.createElement(Grid10, { container: true, alignItems: "center", flexWrap: "nowrap", justifyContent: "space-between" }, /* @__PURE__ */ React73.createElement(Grid10, { item: true }, /* @__PURE__ */ React73.createElement(ControlFormLabel, null, __25("Open in a new tab", "elementor"))), /* @__PURE__ */ React73.createElement(Grid10, { item: true, sx: { marginInlineEnd: -1 } }, /* @__PURE__ */ React73.createElement(SwitchControl, null))))))));
|
|
4609
4652
|
});
|
|
4610
4653
|
|
|
4611
4654
|
// src/controls/html-tag-control.tsx
|
|
4612
|
-
import * as
|
|
4655
|
+
import * as React75 from "react";
|
|
4613
4656
|
import { getElementLabel } from "@elementor/editor-elements";
|
|
4614
|
-
import { stringPropTypeUtil as
|
|
4657
|
+
import { stringPropTypeUtil as stringPropTypeUtil11 } from "@elementor/editor-props";
|
|
4615
4658
|
import { MenuListItem as MenuListItem4 } from "@elementor/editor-ui";
|
|
4616
4659
|
import { Select as Select2, styled as styled8, Typography as Typography6 } from "@elementor/ui";
|
|
4617
4660
|
import { __ as __26 } from "@wordpress/i18n";
|
|
4618
4661
|
|
|
4619
4662
|
// src/components/conditional-control-infotip.tsx
|
|
4620
|
-
import * as
|
|
4663
|
+
import * as React74 from "react";
|
|
4621
4664
|
import { InfoAlert } from "@elementor/editor-ui";
|
|
4622
4665
|
import { AlertTitle as AlertTitle2, Box as Box13, Infotip as Infotip3, useTheme as useTheme2 } from "@elementor/ui";
|
|
4623
4666
|
import { DirectionProvider } from "@elementor/ui";
|
|
4624
4667
|
var DEFAULT_COLOR = "secondary";
|
|
4625
|
-
var ConditionalControlInfotip =
|
|
4668
|
+
var ConditionalControlInfotip = React74.forwardRef(
|
|
4626
4669
|
({ children, title, description, alertProps, infotipProps, ...props }, ref) => {
|
|
4627
4670
|
const theme = useTheme2();
|
|
4628
4671
|
const isUiRtl = "rtl" === theme.direction;
|
|
4629
4672
|
const isEnabled = props.isEnabled && (title || description);
|
|
4630
|
-
return /* @__PURE__ */
|
|
4673
|
+
return /* @__PURE__ */ React74.createElement(Box13, { ref }, isEnabled ? /* @__PURE__ */ React74.createElement(DirectionProvider, { rtl: isUiRtl }, /* @__PURE__ */ React74.createElement(
|
|
4631
4674
|
Infotip3,
|
|
4632
4675
|
{
|
|
4633
4676
|
placement: "right",
|
|
@@ -4645,14 +4688,14 @@ var ConditionalControlInfotip = React73.forwardRef(
|
|
|
4645
4688
|
}
|
|
4646
4689
|
},
|
|
4647
4690
|
...infotipProps,
|
|
4648
|
-
content: /* @__PURE__ */
|
|
4691
|
+
content: /* @__PURE__ */ React74.createElement(
|
|
4649
4692
|
InfoAlert,
|
|
4650
4693
|
{
|
|
4651
4694
|
color: DEFAULT_COLOR,
|
|
4652
4695
|
sx: { width: 300, px: 1.5, py: 2 },
|
|
4653
4696
|
...alertProps
|
|
4654
4697
|
},
|
|
4655
|
-
/* @__PURE__ */
|
|
4698
|
+
/* @__PURE__ */ React74.createElement(Box13, { sx: { flexDirection: "column", display: "flex", gap: 0.5 } }, /* @__PURE__ */ React74.createElement(AlertTitle2, null, title), /* @__PURE__ */ React74.createElement(Box13, null, description))
|
|
4656
4699
|
)
|
|
4657
4700
|
},
|
|
4658
4701
|
children
|
|
@@ -4669,7 +4712,7 @@ var HtmlTagControl = createControl((props) => {
|
|
|
4669
4712
|
fallbackLabels = {},
|
|
4670
4713
|
context: { elementId }
|
|
4671
4714
|
} = props;
|
|
4672
|
-
const { value, setValue, disabled, placeholder } = useBoundProp(
|
|
4715
|
+
const { value, setValue, disabled, placeholder } = useBoundProp(stringPropTypeUtil11);
|
|
4673
4716
|
const handleChange = (event) => {
|
|
4674
4717
|
const newValue = event.target.value || null;
|
|
4675
4718
|
onChange?.(newValue, value);
|
|
@@ -4694,10 +4737,10 @@ var HtmlTagControl = createControl((props) => {
|
|
|
4694
4737
|
}
|
|
4695
4738
|
const placeholderOption = findOptionByValue(placeholder);
|
|
4696
4739
|
const displayText = placeholderOption?.label || placeholder;
|
|
4697
|
-
return /* @__PURE__ */
|
|
4740
|
+
return /* @__PURE__ */ React75.createElement(Typography6, { component: "span", variant: "caption", color: "text.tertiary" }, displayText);
|
|
4698
4741
|
};
|
|
4699
4742
|
const findOptionByValue = (searchValue) => options.find((opt) => opt.value === searchValue);
|
|
4700
|
-
return /* @__PURE__ */
|
|
4743
|
+
return /* @__PURE__ */ React75.createElement(ControlActions, null, /* @__PURE__ */ React75.createElement(ConditionalControlInfotip, { ...infoTipProps }, /* @__PURE__ */ React75.createElement(
|
|
4701
4744
|
StyledSelect,
|
|
4702
4745
|
{
|
|
4703
4746
|
sx: { overflow: "hidden", cursor: disabled ? "not-allowed" : void 0 },
|
|
@@ -4709,12 +4752,87 @@ var HtmlTagControl = createControl((props) => {
|
|
|
4709
4752
|
disabled,
|
|
4710
4753
|
fullWidth: true
|
|
4711
4754
|
},
|
|
4712
|
-
options.map(({ label, ...itemProps }) => /* @__PURE__ */
|
|
4755
|
+
options.map(({ label, ...itemProps }) => /* @__PURE__ */ React75.createElement(MenuListItem4, { key: itemProps.value, ...itemProps, value: itemProps.value ?? "" }, label))
|
|
4713
4756
|
)));
|
|
4714
4757
|
});
|
|
4715
4758
|
|
|
4759
|
+
// src/controls/query-chips-control.tsx
|
|
4760
|
+
import * as React76 from "react";
|
|
4761
|
+
import { useMemo as useMemo11 } from "react";
|
|
4762
|
+
import {
|
|
4763
|
+
createArrayPropUtils,
|
|
4764
|
+
numberPropTypeUtil as numberPropTypeUtil4,
|
|
4765
|
+
queryPropTypeUtil as queryPropTypeUtil2,
|
|
4766
|
+
stringPropTypeUtil as stringPropTypeUtil12
|
|
4767
|
+
} from "@elementor/editor-props";
|
|
4768
|
+
import { Autocomplete as Autocomplete3, TextField as TextField9 } from "@elementor/ui";
|
|
4769
|
+
import { __ as __27 } from "@wordpress/i18n";
|
|
4770
|
+
var queryArrayPropTypeUtil = createArrayPropUtils(queryPropTypeUtil2.key, queryPropTypeUtil2.schema);
|
|
4771
|
+
var SIZE9 = "tiny";
|
|
4772
|
+
var QueryChipsControl = createControl((props) => {
|
|
4773
|
+
const { queryOptions, placeholder, minInputLength = 2 } = props;
|
|
4774
|
+
const { value, setValue, disabled } = useBoundProp(queryArrayPropTypeUtil);
|
|
4775
|
+
const selectedChips = useMemo11(() => extractChips(value), [value]);
|
|
4776
|
+
const excludeIds = useMemo11(
|
|
4777
|
+
() => selectedChips.map((chip) => Number(chip.id)).filter((id) => Number.isFinite(id)),
|
|
4778
|
+
[selectedChips]
|
|
4779
|
+
);
|
|
4780
|
+
const { options, updateOptions } = useQueryAutocomplete({
|
|
4781
|
+
url: queryOptions.url,
|
|
4782
|
+
params: queryOptions.params,
|
|
4783
|
+
minInputLength,
|
|
4784
|
+
excludeIds
|
|
4785
|
+
});
|
|
4786
|
+
const handleChange = (_, newValue) => {
|
|
4787
|
+
setValue(
|
|
4788
|
+
newValue.map(
|
|
4789
|
+
(option) => queryPropTypeUtil2.create({
|
|
4790
|
+
id: numberPropTypeUtil4.create(Number(option.id)),
|
|
4791
|
+
label: stringPropTypeUtil12.create(option.label)
|
|
4792
|
+
})
|
|
4793
|
+
)
|
|
4794
|
+
);
|
|
4795
|
+
};
|
|
4796
|
+
const handleInputChange = (_, term) => {
|
|
4797
|
+
updateOptions(term || null);
|
|
4798
|
+
};
|
|
4799
|
+
return /* @__PURE__ */ React76.createElement(ControlActions, null, /* @__PURE__ */ React76.createElement(
|
|
4800
|
+
Autocomplete3,
|
|
4801
|
+
{
|
|
4802
|
+
multiple: true,
|
|
4803
|
+
fullWidth: true,
|
|
4804
|
+
disableClearable: true,
|
|
4805
|
+
forcePopupIcon: false,
|
|
4806
|
+
disabled,
|
|
4807
|
+
size: SIZE9,
|
|
4808
|
+
value: selectedChips,
|
|
4809
|
+
options,
|
|
4810
|
+
onChange: handleChange,
|
|
4811
|
+
onInputChange: handleInputChange,
|
|
4812
|
+
getOptionLabel: (option) => option.label,
|
|
4813
|
+
isOptionEqualToValue: (option, val) => option.id === val.id,
|
|
4814
|
+
filterOptions: (opts) => opts,
|
|
4815
|
+
renderTags: (tagValues, getTagProps) => /* @__PURE__ */ React76.createElement(
|
|
4816
|
+
ChipsList,
|
|
4817
|
+
{
|
|
4818
|
+
getLabel: (option) => option.label,
|
|
4819
|
+
getTagProps,
|
|
4820
|
+
values: tagValues
|
|
4821
|
+
}
|
|
4822
|
+
),
|
|
4823
|
+
renderInput: (params) => /* @__PURE__ */ React76.createElement(TextField9, { ...params, placeholder: placeholder ?? __27("Search", "elementor") })
|
|
4824
|
+
}
|
|
4825
|
+
));
|
|
4826
|
+
});
|
|
4827
|
+
function extractChips(value) {
|
|
4828
|
+
if (!value) {
|
|
4829
|
+
return [];
|
|
4830
|
+
}
|
|
4831
|
+
return value.map((item) => extractFlatOptionFromQueryValue(item?.value)).filter((chip) => chip !== null);
|
|
4832
|
+
}
|
|
4833
|
+
|
|
4716
4834
|
// src/controls/gap-control.tsx
|
|
4717
|
-
import * as
|
|
4835
|
+
import * as React77 from "react";
|
|
4718
4836
|
import { useLayoutEffect as useLayoutEffect2, useRef as useRef13, useState as useState13 } from "react";
|
|
4719
4837
|
import {
|
|
4720
4838
|
layoutDirectionPropTypeUtil,
|
|
@@ -4723,7 +4841,7 @@ import {
|
|
|
4723
4841
|
import { useActiveBreakpoint as useActiveBreakpoint5 } from "@elementor/editor-responsive";
|
|
4724
4842
|
import { DetachIcon as DetachIcon2, LinkIcon as LinkIcon2 } from "@elementor/icons";
|
|
4725
4843
|
import { Grid as Grid11, Stack as Stack11, Tooltip as Tooltip7 } from "@elementor/ui";
|
|
4726
|
-
import { __ as
|
|
4844
|
+
import { __ as __28 } from "@wordpress/i18n";
|
|
4727
4845
|
var GapControl = ({ label }) => {
|
|
4728
4846
|
const stackRef = useRef13(null);
|
|
4729
4847
|
const { disabled: sizeDisabled } = useBoundProp(sizePropTypeUtil6);
|
|
@@ -4771,8 +4889,8 @@ var GapControl = ({ label }) => {
|
|
|
4771
4889
|
};
|
|
4772
4890
|
const tooltipLabel = label.toLowerCase();
|
|
4773
4891
|
const LinkedIcon = isLinked ? LinkIcon2 : DetachIcon2;
|
|
4774
|
-
const linkedLabel =
|
|
4775
|
-
const unlinkedLabel =
|
|
4892
|
+
const linkedLabel = __28("Link %s", "elementor").replace("%s", tooltipLabel);
|
|
4893
|
+
const unlinkedLabel = __28("Unlink %s", "elementor").replace("%s", tooltipLabel);
|
|
4776
4894
|
const disabled = sizeDisabled || directionDisabled;
|
|
4777
4895
|
const propProviderProps = {
|
|
4778
4896
|
propType,
|
|
@@ -4792,7 +4910,7 @@ var GapControl = ({ label }) => {
|
|
|
4792
4910
|
}
|
|
4793
4911
|
return sizePropTypeUtil6.extract(directionPlaceholder?.[bind]);
|
|
4794
4912
|
};
|
|
4795
|
-
return /* @__PURE__ */
|
|
4913
|
+
return /* @__PURE__ */ React77.createElement(PropProvider, { ...propProviderProps }, /* @__PURE__ */ React77.createElement(Stack11, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React77.createElement(ControlLabel, null, label), /* @__PURE__ */ React77.createElement(Tooltip7, { title: isLinked ? unlinkedLabel : linkedLabel, placement: "top" }, /* @__PURE__ */ React77.createElement(
|
|
4796
4914
|
StyledToggleButton,
|
|
4797
4915
|
{
|
|
4798
4916
|
"aria-label": isLinked ? unlinkedLabel : linkedLabel,
|
|
@@ -4804,21 +4922,21 @@ var GapControl = ({ label }) => {
|
|
|
4804
4922
|
disabled,
|
|
4805
4923
|
isPlaceholder: hasPlaceholders
|
|
4806
4924
|
},
|
|
4807
|
-
/* @__PURE__ */
|
|
4808
|
-
))), /* @__PURE__ */
|
|
4925
|
+
/* @__PURE__ */ React77.createElement(LinkedIcon, { fontSize: "tiny" })
|
|
4926
|
+
))), /* @__PURE__ */ React77.createElement(Stack11, { direction: "row", gap: 2, flexWrap: "nowrap", ref: stackRef }, /* @__PURE__ */ React77.createElement(Grid11, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React77.createElement(Grid11, { item: true, xs: 12 }, /* @__PURE__ */ React77.createElement(ControlFormLabel, null, __28("Column", "elementor"))), /* @__PURE__ */ React77.createElement(Grid11, { item: true, xs: 12 }, /* @__PURE__ */ React77.createElement(
|
|
4809
4927
|
Control4,
|
|
4810
4928
|
{
|
|
4811
4929
|
bind: "column",
|
|
4812
|
-
ariaLabel:
|
|
4930
|
+
ariaLabel: __28("Column gap", "elementor"),
|
|
4813
4931
|
isLinked,
|
|
4814
4932
|
anchorRef: stackRef,
|
|
4815
4933
|
placeholder: getEffectivePlaceholder("column") ?? void 0
|
|
4816
4934
|
}
|
|
4817
|
-
))), /* @__PURE__ */
|
|
4935
|
+
))), /* @__PURE__ */ React77.createElement(Grid11, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React77.createElement(Grid11, { item: true, xs: 12 }, /* @__PURE__ */ React77.createElement(ControlFormLabel, null, __28("Row", "elementor"))), /* @__PURE__ */ React77.createElement(Grid11, { item: true, xs: 12 }, /* @__PURE__ */ React77.createElement(
|
|
4818
4936
|
Control4,
|
|
4819
4937
|
{
|
|
4820
4938
|
bind: "row",
|
|
4821
|
-
ariaLabel:
|
|
4939
|
+
ariaLabel: __28("Row gap", "elementor"),
|
|
4822
4940
|
isLinked,
|
|
4823
4941
|
anchorRef: stackRef,
|
|
4824
4942
|
placeholder: getEffectivePlaceholder("row") ?? void 0
|
|
@@ -4833,21 +4951,21 @@ var Control4 = ({
|
|
|
4833
4951
|
placeholder
|
|
4834
4952
|
}) => {
|
|
4835
4953
|
if (isLinked) {
|
|
4836
|
-
return /* @__PURE__ */
|
|
4954
|
+
return /* @__PURE__ */ React77.createElement(UnstableSizeControl, { anchorRef, placeholder, ariaLabel });
|
|
4837
4955
|
}
|
|
4838
|
-
return /* @__PURE__ */
|
|
4956
|
+
return /* @__PURE__ */ React77.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React77.createElement(UnstableSizeControl, { anchorRef, placeholder, ariaLabel }));
|
|
4839
4957
|
};
|
|
4840
4958
|
|
|
4841
4959
|
// src/controls/aspect-ratio-control.tsx
|
|
4842
|
-
import * as
|
|
4960
|
+
import * as React78 from "react";
|
|
4843
4961
|
import { useEffect as useEffect14, useState as useState14 } from "react";
|
|
4844
|
-
import { stringPropTypeUtil as
|
|
4962
|
+
import { stringPropTypeUtil as stringPropTypeUtil13 } from "@elementor/editor-props";
|
|
4845
4963
|
import { MenuListItem as MenuListItem5 } from "@elementor/editor-ui";
|
|
4846
4964
|
import { ArrowsMoveHorizontalIcon, ArrowsMoveVerticalIcon } from "@elementor/icons";
|
|
4847
|
-
import { Grid as Grid12, Select as Select3, Stack as Stack12, TextField as
|
|
4848
|
-
import { __ as
|
|
4965
|
+
import { Grid as Grid12, Select as Select3, Stack as Stack12, TextField as TextField10 } from "@elementor/ui";
|
|
4966
|
+
import { __ as __29 } from "@wordpress/i18n";
|
|
4849
4967
|
var RATIO_OPTIONS = [
|
|
4850
|
-
{ label:
|
|
4968
|
+
{ label: __29("Auto", "elementor"), value: "auto" },
|
|
4851
4969
|
{ label: "1/1", value: "1/1" },
|
|
4852
4970
|
{ label: "4/3", value: "4/3" },
|
|
4853
4971
|
{ label: "3/4", value: "3/4" },
|
|
@@ -4863,7 +4981,7 @@ var AspectRatioControl = createControl(({ label }) => {
|
|
|
4863
4981
|
setValue: setAspectRatioValue,
|
|
4864
4982
|
disabled,
|
|
4865
4983
|
placeholder: externalPlaceholder
|
|
4866
|
-
} = useBoundProp(
|
|
4984
|
+
} = useBoundProp(stringPropTypeUtil13);
|
|
4867
4985
|
const aspectRatioValue = currentPropValue ?? externalPlaceholder;
|
|
4868
4986
|
const isCustomSelected = aspectRatioValue && !RATIO_OPTIONS.some((option) => option.value === aspectRatioValue);
|
|
4869
4987
|
const [initialWidth, initialHeight] = isCustomSelected ? aspectRatioValue.split("/") : ["", ""];
|
|
@@ -4914,7 +5032,7 @@ var AspectRatioControl = createControl(({ label }) => {
|
|
|
4914
5032
|
};
|
|
4915
5033
|
const lookup = currentPropValue ?? externalPlaceholder;
|
|
4916
5034
|
const selectedOption = RATIO_OPTIONS.find((option) => option.value === lookup);
|
|
4917
|
-
return /* @__PURE__ */
|
|
5035
|
+
return /* @__PURE__ */ React78.createElement(ControlActions, null, /* @__PURE__ */ React78.createElement(Stack12, { direction: "column", gap: 2 }, /* @__PURE__ */ React78.createElement(Grid12, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React78.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(ControlLabel, null, label)), /* @__PURE__ */ React78.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(
|
|
4918
5036
|
Select3,
|
|
4919
5037
|
{
|
|
4920
5038
|
size: "tiny",
|
|
@@ -4926,11 +5044,11 @@ var AspectRatioControl = createControl(({ label }) => {
|
|
|
4926
5044
|
renderValue: isCustomSelected ? void 0 : () => selectedOption?.label,
|
|
4927
5045
|
fullWidth: true
|
|
4928
5046
|
},
|
|
4929
|
-
[...RATIO_OPTIONS, { label:
|
|
4930
|
-
({ label: optionLabel, ...props }) => /* @__PURE__ */
|
|
5047
|
+
[...RATIO_OPTIONS, { label: __29("Custom", "elementor"), value: CUSTOM_RATIO }].map(
|
|
5048
|
+
({ label: optionLabel, ...props }) => /* @__PURE__ */ React78.createElement(MenuListItem5, { key: props.value, ...props, value: props.value ?? "" }, optionLabel)
|
|
4931
5049
|
)
|
|
4932
|
-
))), isCustom && /* @__PURE__ */
|
|
4933
|
-
|
|
5050
|
+
))), isCustom && /* @__PURE__ */ React78.createElement(Grid12, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React78.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(
|
|
5051
|
+
TextField10,
|
|
4934
5052
|
{
|
|
4935
5053
|
size: "tiny",
|
|
4936
5054
|
type: "number",
|
|
@@ -4939,11 +5057,11 @@ var AspectRatioControl = createControl(({ label }) => {
|
|
|
4939
5057
|
value: customWidth,
|
|
4940
5058
|
onChange: handleCustomWidthChange,
|
|
4941
5059
|
InputProps: {
|
|
4942
|
-
startAdornment: /* @__PURE__ */
|
|
5060
|
+
startAdornment: /* @__PURE__ */ React78.createElement(ArrowsMoveHorizontalIcon, { fontSize: "tiny" })
|
|
4943
5061
|
}
|
|
4944
5062
|
}
|
|
4945
|
-
)), /* @__PURE__ */
|
|
4946
|
-
|
|
5063
|
+
)), /* @__PURE__ */ React78.createElement(Grid12, { item: true, xs: 6 }, /* @__PURE__ */ React78.createElement(
|
|
5064
|
+
TextField10,
|
|
4947
5065
|
{
|
|
4948
5066
|
size: "tiny",
|
|
4949
5067
|
type: "number",
|
|
@@ -4952,24 +5070,24 @@ var AspectRatioControl = createControl(({ label }) => {
|
|
|
4952
5070
|
value: customHeight,
|
|
4953
5071
|
onChange: handleCustomHeightChange,
|
|
4954
5072
|
InputProps: {
|
|
4955
|
-
startAdornment: /* @__PURE__ */
|
|
5073
|
+
startAdornment: /* @__PURE__ */ React78.createElement(ArrowsMoveVerticalIcon, { fontSize: "tiny" })
|
|
4956
5074
|
}
|
|
4957
5075
|
}
|
|
4958
5076
|
)))));
|
|
4959
5077
|
});
|
|
4960
5078
|
|
|
4961
5079
|
// src/controls/svg-media-control.tsx
|
|
4962
|
-
import * as
|
|
5080
|
+
import * as React80 from "react";
|
|
4963
5081
|
import { useState as useState16 } from "react";
|
|
4964
5082
|
import { useCurrentUserCapabilities } from "@elementor/editor-current-user";
|
|
4965
5083
|
import { svgSrcPropTypeUtil, urlPropTypeUtil as urlPropTypeUtil4 } from "@elementor/editor-props";
|
|
4966
5084
|
import { UploadIcon as UploadIcon2 } from "@elementor/icons";
|
|
4967
5085
|
import { Button as Button5, Card as Card2, CardMedia as CardMedia2, CardOverlay as CardOverlay2, CircularProgress as CircularProgress3, Stack as Stack13, styled as styled9, ThemeProvider } from "@elementor/ui";
|
|
4968
5086
|
import { useWpMediaAttachment as useWpMediaAttachment2, useWpMediaFrame as useWpMediaFrame2 } from "@elementor/wp-media";
|
|
4969
|
-
import { __ as
|
|
5087
|
+
import { __ as __31 } from "@wordpress/i18n";
|
|
4970
5088
|
|
|
4971
5089
|
// src/components/enable-unfiltered-modal.tsx
|
|
4972
|
-
import * as
|
|
5090
|
+
import * as React79 from "react";
|
|
4973
5091
|
import { useState as useState15 } from "react";
|
|
4974
5092
|
import {
|
|
4975
5093
|
Button as Button4,
|
|
@@ -4982,14 +5100,14 @@ import {
|
|
|
4982
5100
|
DialogTitle,
|
|
4983
5101
|
Divider as Divider3
|
|
4984
5102
|
} from "@elementor/ui";
|
|
4985
|
-
import { __ as
|
|
4986
|
-
var ADMIN_TITLE_TEXT =
|
|
4987
|
-
var ADMIN_CONTENT_TEXT =
|
|
5103
|
+
import { __ as __30 } from "@wordpress/i18n";
|
|
5104
|
+
var ADMIN_TITLE_TEXT = __30("Enable Unfiltered Uploads", "elementor");
|
|
5105
|
+
var ADMIN_CONTENT_TEXT = __30(
|
|
4988
5106
|
"Before you enable unfiltered files upload, note that such files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.",
|
|
4989
5107
|
"elementor"
|
|
4990
5108
|
);
|
|
4991
|
-
var ADMIN_FAILED_CONTENT_TEXT_PT1 =
|
|
4992
|
-
var ADMIN_FAILED_CONTENT_TEXT_PT2 =
|
|
5109
|
+
var ADMIN_FAILED_CONTENT_TEXT_PT1 = __30("Failed to enable unfiltered files upload.", "elementor");
|
|
5110
|
+
var ADMIN_FAILED_CONTENT_TEXT_PT2 = __30(
|
|
4993
5111
|
"You can try again, if the problem persists, please contact support.",
|
|
4994
5112
|
"elementor"
|
|
4995
5113
|
);
|
|
@@ -5014,9 +5132,9 @@ var EnableUnfilteredModal = (props) => {
|
|
|
5014
5132
|
}
|
|
5015
5133
|
};
|
|
5016
5134
|
const dialogProps = { ...props, isPending, handleEnable, isError, onClose };
|
|
5017
|
-
return /* @__PURE__ */
|
|
5135
|
+
return /* @__PURE__ */ React79.createElement(AdminDialog, { ...dialogProps });
|
|
5018
5136
|
};
|
|
5019
|
-
var AdminDialog = ({ open, onClose, handleEnable, isPending, isError }) => /* @__PURE__ */
|
|
5137
|
+
var AdminDialog = ({ open, onClose, handleEnable, isPending, isError }) => /* @__PURE__ */ React79.createElement(Dialog, { open, maxWidth: "sm", onClose: () => onClose(false) }, /* @__PURE__ */ React79.createElement(DialogHeader, { logo: false }, /* @__PURE__ */ React79.createElement(DialogTitle, null, ADMIN_TITLE_TEXT)), /* @__PURE__ */ React79.createElement(Divider3, null), /* @__PURE__ */ React79.createElement(DialogContent, null, /* @__PURE__ */ React79.createElement(DialogContentText, null, isError ? /* @__PURE__ */ React79.createElement(React79.Fragment, null, ADMIN_FAILED_CONTENT_TEXT_PT1, " ", /* @__PURE__ */ React79.createElement("br", null), " ", ADMIN_FAILED_CONTENT_TEXT_PT2) : ADMIN_CONTENT_TEXT)), /* @__PURE__ */ React79.createElement(DialogActions, null, /* @__PURE__ */ React79.createElement(Button4, { size: "medium", color: "secondary", onClick: () => onClose(false) }, __30("Cancel", "elementor")), /* @__PURE__ */ React79.createElement(
|
|
5020
5138
|
Button4,
|
|
5021
5139
|
{
|
|
5022
5140
|
size: "medium",
|
|
@@ -5025,7 +5143,7 @@ var AdminDialog = ({ open, onClose, handleEnable, isPending, isError }) => /* @_
|
|
|
5025
5143
|
color: "primary",
|
|
5026
5144
|
disabled: isPending
|
|
5027
5145
|
},
|
|
5028
|
-
isPending ? /* @__PURE__ */
|
|
5146
|
+
isPending ? /* @__PURE__ */ React79.createElement(CircularProgress2, { size: 24 }) : __30("Enable", "elementor")
|
|
5029
5147
|
)));
|
|
5030
5148
|
|
|
5031
5149
|
// src/controls/svg-media-control.tsx
|
|
@@ -5090,19 +5208,19 @@ var SvgMediaControl = createControl(() => {
|
|
|
5090
5208
|
}
|
|
5091
5209
|
};
|
|
5092
5210
|
const infotipProps = {
|
|
5093
|
-
title:
|
|
5094
|
-
description: /* @__PURE__ */
|
|
5211
|
+
title: __31("Sorry, you can't upload that file yet.", "elementor"),
|
|
5212
|
+
description: /* @__PURE__ */ React80.createElement(React80.Fragment, null, __31("To upload them anyway, ask the site administrator to enable unfiltered", "elementor"), /* @__PURE__ */ React80.createElement("br", null), __31("file uploads.", "elementor")),
|
|
5095
5213
|
isEnabled: !isAdmin
|
|
5096
5214
|
};
|
|
5097
|
-
return /* @__PURE__ */
|
|
5215
|
+
return /* @__PURE__ */ React80.createElement(Stack13, { gap: 1, "aria-label": "SVG Control" }, /* @__PURE__ */ React80.createElement(EnableUnfilteredModal, { open: unfilteredModalOpenState, onClose: onCloseUnfilteredModal }), /* @__PURE__ */ React80.createElement(ControlActions, null, /* @__PURE__ */ React80.createElement(StyledCard, { variant: "outlined" }, /* @__PURE__ */ React80.createElement(StyledCardMediaContainer, null, isFetching ? /* @__PURE__ */ React80.createElement(CircularProgress3, { role: "progressbar" }) : /* @__PURE__ */ React80.createElement(
|
|
5098
5216
|
CardMedia2,
|
|
5099
5217
|
{
|
|
5100
5218
|
component: "img",
|
|
5101
5219
|
image: src,
|
|
5102
|
-
alt:
|
|
5220
|
+
alt: __31("Preview SVG", "elementor"),
|
|
5103
5221
|
sx: { maxHeight: "140px", width: "50px" }
|
|
5104
5222
|
}
|
|
5105
|
-
)), /* @__PURE__ */
|
|
5223
|
+
)), /* @__PURE__ */ React80.createElement(
|
|
5106
5224
|
CardOverlay2,
|
|
5107
5225
|
{
|
|
5108
5226
|
sx: {
|
|
@@ -5111,7 +5229,7 @@ var SvgMediaControl = createControl(() => {
|
|
|
5111
5229
|
}
|
|
5112
5230
|
}
|
|
5113
5231
|
},
|
|
5114
|
-
/* @__PURE__ */
|
|
5232
|
+
/* @__PURE__ */ React80.createElement(Stack13, { gap: 1 }, /* @__PURE__ */ React80.createElement(
|
|
5115
5233
|
Button5,
|
|
5116
5234
|
{
|
|
5117
5235
|
size: "tiny",
|
|
@@ -5120,30 +5238,30 @@ var SvgMediaControl = createControl(() => {
|
|
|
5120
5238
|
onClick: () => handleClick(MODE_BROWSE),
|
|
5121
5239
|
"aria-label": "Select SVG"
|
|
5122
5240
|
},
|
|
5123
|
-
|
|
5124
|
-
), /* @__PURE__ */
|
|
5241
|
+
__31("Select SVG", "elementor")
|
|
5242
|
+
), /* @__PURE__ */ React80.createElement(ConditionalControlInfotip, { ...infotipProps }, /* @__PURE__ */ React80.createElement("span", null, /* @__PURE__ */ React80.createElement(ThemeProvider, { colorScheme: isAdmin ? "light" : "dark" }, /* @__PURE__ */ React80.createElement(
|
|
5125
5243
|
Button5,
|
|
5126
5244
|
{
|
|
5127
5245
|
size: "tiny",
|
|
5128
5246
|
variant: "text",
|
|
5129
5247
|
color: "inherit",
|
|
5130
|
-
startIcon: /* @__PURE__ */
|
|
5248
|
+
startIcon: /* @__PURE__ */ React80.createElement(UploadIcon2, null),
|
|
5131
5249
|
disabled: !isAdmin,
|
|
5132
5250
|
onClick: () => isAdmin && handleClick(MODE_UPLOAD),
|
|
5133
5251
|
"aria-label": "Upload SVG"
|
|
5134
5252
|
},
|
|
5135
|
-
|
|
5253
|
+
__31("Upload", "elementor")
|
|
5136
5254
|
)))))
|
|
5137
5255
|
))));
|
|
5138
5256
|
});
|
|
5139
5257
|
|
|
5140
5258
|
// src/controls/video-media-control.tsx
|
|
5141
|
-
import * as
|
|
5259
|
+
import * as React81 from "react";
|
|
5142
5260
|
import { videoSrcPropTypeUtil } from "@elementor/editor-props";
|
|
5143
5261
|
import { UploadIcon as UploadIcon3 } from "@elementor/icons";
|
|
5144
5262
|
import { Button as Button6, Card as Card3, CardMedia as CardMedia3, CardOverlay as CardOverlay3, CircularProgress as CircularProgress4, Stack as Stack14 } from "@elementor/ui";
|
|
5145
5263
|
import { useWpMediaAttachment as useWpMediaAttachment3, useWpMediaFrame as useWpMediaFrame3 } from "@elementor/wp-media";
|
|
5146
|
-
import { __ as
|
|
5264
|
+
import { __ as __32 } from "@wordpress/i18n";
|
|
5147
5265
|
var PLACEHOLDER_IMAGE = window.elementorCommon?.config?.urls?.assets + "/shapes/play-triangle.svg";
|
|
5148
5266
|
var VideoMediaControl = createControl(() => {
|
|
5149
5267
|
const { value, setValue } = useBoundProp(videoSrcPropTypeUtil);
|
|
@@ -5164,7 +5282,7 @@ var VideoMediaControl = createControl(() => {
|
|
|
5164
5282
|
});
|
|
5165
5283
|
}
|
|
5166
5284
|
});
|
|
5167
|
-
return /* @__PURE__ */
|
|
5285
|
+
return /* @__PURE__ */ React81.createElement(ControlActions, null, /* @__PURE__ */ React81.createElement(Card3, { variant: "outlined" }, /* @__PURE__ */ React81.createElement(
|
|
5168
5286
|
CardMedia3,
|
|
5169
5287
|
{
|
|
5170
5288
|
sx: {
|
|
@@ -5179,8 +5297,8 @@ var VideoMediaControl = createControl(() => {
|
|
|
5179
5297
|
alignItems: "center"
|
|
5180
5298
|
}
|
|
5181
5299
|
},
|
|
5182
|
-
/* @__PURE__ */
|
|
5183
|
-
), /* @__PURE__ */
|
|
5300
|
+
/* @__PURE__ */ React81.createElement(VideoPreview, { isFetching, videoUrl })
|
|
5301
|
+
), /* @__PURE__ */ React81.createElement(CardOverlay3, null, /* @__PURE__ */ React81.createElement(Stack14, { gap: 1 }, /* @__PURE__ */ React81.createElement(
|
|
5184
5302
|
Button6,
|
|
5185
5303
|
{
|
|
5186
5304
|
size: "tiny",
|
|
@@ -5188,25 +5306,25 @@ var VideoMediaControl = createControl(() => {
|
|
|
5188
5306
|
variant: "outlined",
|
|
5189
5307
|
onClick: () => open({ mode: "browse" })
|
|
5190
5308
|
},
|
|
5191
|
-
|
|
5192
|
-
), /* @__PURE__ */
|
|
5309
|
+
__32("Select video", "elementor")
|
|
5310
|
+
), /* @__PURE__ */ React81.createElement(
|
|
5193
5311
|
Button6,
|
|
5194
5312
|
{
|
|
5195
5313
|
size: "tiny",
|
|
5196
5314
|
variant: "text",
|
|
5197
5315
|
color: "inherit",
|
|
5198
|
-
startIcon: /* @__PURE__ */
|
|
5316
|
+
startIcon: /* @__PURE__ */ React81.createElement(UploadIcon3, null),
|
|
5199
5317
|
onClick: () => open({ mode: "upload" })
|
|
5200
5318
|
},
|
|
5201
|
-
|
|
5319
|
+
__32("Upload", "elementor")
|
|
5202
5320
|
)))));
|
|
5203
5321
|
});
|
|
5204
5322
|
var VideoPreview = ({ isFetching = false, videoUrl }) => {
|
|
5205
5323
|
if (isFetching) {
|
|
5206
|
-
return /* @__PURE__ */
|
|
5324
|
+
return /* @__PURE__ */ React81.createElement(CircularProgress4, null);
|
|
5207
5325
|
}
|
|
5208
5326
|
if (videoUrl) {
|
|
5209
|
-
return /* @__PURE__ */
|
|
5327
|
+
return /* @__PURE__ */ React81.createElement(
|
|
5210
5328
|
"video",
|
|
5211
5329
|
{
|
|
5212
5330
|
src: videoUrl,
|
|
@@ -5221,17 +5339,17 @@ var VideoPreview = ({ isFetching = false, videoUrl }) => {
|
|
|
5221
5339
|
}
|
|
5222
5340
|
);
|
|
5223
5341
|
}
|
|
5224
|
-
return /* @__PURE__ */
|
|
5342
|
+
return /* @__PURE__ */ React81.createElement("img", { src: PLACEHOLDER_IMAGE, alt: "No video selected" });
|
|
5225
5343
|
};
|
|
5226
5344
|
|
|
5227
5345
|
// src/controls/background-control/background-control.tsx
|
|
5228
|
-
import * as
|
|
5346
|
+
import * as React88 from "react";
|
|
5229
5347
|
import { backgroundPropTypeUtil } from "@elementor/editor-props";
|
|
5230
5348
|
import { Grid as Grid17 } from "@elementor/ui";
|
|
5231
|
-
import { __ as
|
|
5349
|
+
import { __ as __38 } from "@wordpress/i18n";
|
|
5232
5350
|
|
|
5233
5351
|
// src/controls/background-control/background-overlay/background-overlay-repeater-control.tsx
|
|
5234
|
-
import * as
|
|
5352
|
+
import * as React87 from "react";
|
|
5235
5353
|
import {
|
|
5236
5354
|
backgroundColorOverlayPropTypeUtil as backgroundColorOverlayPropTypeUtil2,
|
|
5237
5355
|
backgroundImageOverlayPropTypeUtil as backgroundImageOverlayPropTypeUtil2,
|
|
@@ -5240,21 +5358,21 @@ import {
|
|
|
5240
5358
|
} from "@elementor/editor-props";
|
|
5241
5359
|
import { Box as Box14, CardMedia as CardMedia4, styled as styled10, Tab, TabPanel, Tabs, UnstableColorIndicator as UnstableColorIndicator3 } from "@elementor/ui";
|
|
5242
5360
|
import { useWpMediaAttachment as useWpMediaAttachment4 } from "@elementor/wp-media";
|
|
5243
|
-
import { __ as
|
|
5361
|
+
import { __ as __37 } from "@wordpress/i18n";
|
|
5244
5362
|
|
|
5245
5363
|
// src/env.ts
|
|
5246
5364
|
import { parseEnv } from "@elementor/env";
|
|
5247
5365
|
var { env } = parseEnv("@elementor/editor-controls");
|
|
5248
5366
|
|
|
5249
5367
|
// src/controls/background-control/background-gradient-color-control.tsx
|
|
5250
|
-
import * as
|
|
5368
|
+
import * as React82 from "react";
|
|
5251
5369
|
import {
|
|
5252
5370
|
backgroundGradientOverlayPropTypeUtil,
|
|
5253
5371
|
colorPropTypeUtil as colorPropTypeUtil2,
|
|
5254
5372
|
colorStopPropTypeUtil,
|
|
5255
5373
|
gradientColorStopPropTypeUtil,
|
|
5256
|
-
numberPropTypeUtil as
|
|
5257
|
-
stringPropTypeUtil as
|
|
5374
|
+
numberPropTypeUtil as numberPropTypeUtil5,
|
|
5375
|
+
stringPropTypeUtil as stringPropTypeUtil14
|
|
5258
5376
|
} from "@elementor/editor-props";
|
|
5259
5377
|
import { UnstableGradientBox } from "@elementor/ui";
|
|
5260
5378
|
var BackgroundGradientColorControl = createControl(() => {
|
|
@@ -5262,19 +5380,19 @@ var BackgroundGradientColorControl = createControl(() => {
|
|
|
5262
5380
|
const handleChange = (newValue) => {
|
|
5263
5381
|
const transformedValue = createTransformableValue(newValue);
|
|
5264
5382
|
if (transformedValue.positions) {
|
|
5265
|
-
transformedValue.positions =
|
|
5383
|
+
transformedValue.positions = stringPropTypeUtil14.create(newValue.positions.join(" "));
|
|
5266
5384
|
}
|
|
5267
5385
|
setValue(transformedValue);
|
|
5268
5386
|
};
|
|
5269
5387
|
const createTransformableValue = (newValue) => ({
|
|
5270
5388
|
...newValue,
|
|
5271
|
-
type:
|
|
5272
|
-
angle:
|
|
5389
|
+
type: stringPropTypeUtil14.create(newValue.type),
|
|
5390
|
+
angle: numberPropTypeUtil5.create(newValue.angle),
|
|
5273
5391
|
stops: gradientColorStopPropTypeUtil.create(
|
|
5274
5392
|
newValue.stops.map(
|
|
5275
5393
|
({ color, offset }) => colorStopPropTypeUtil.create({
|
|
5276
5394
|
color: colorPropTypeUtil2.create(color),
|
|
5277
|
-
offset:
|
|
5395
|
+
offset: numberPropTypeUtil5.create(offset)
|
|
5278
5396
|
})
|
|
5279
5397
|
)
|
|
5280
5398
|
)
|
|
@@ -5294,7 +5412,7 @@ var BackgroundGradientColorControl = createControl(() => {
|
|
|
5294
5412
|
positions: positions?.value.split(" ")
|
|
5295
5413
|
};
|
|
5296
5414
|
};
|
|
5297
|
-
return /* @__PURE__ */
|
|
5415
|
+
return /* @__PURE__ */ React82.createElement(
|
|
5298
5416
|
UnstableGradientBox,
|
|
5299
5417
|
{
|
|
5300
5418
|
sx: { width: "auto", padding: 1.5 },
|
|
@@ -5304,66 +5422,66 @@ var BackgroundGradientColorControl = createControl(() => {
|
|
|
5304
5422
|
);
|
|
5305
5423
|
});
|
|
5306
5424
|
var initialBackgroundGradientOverlay = backgroundGradientOverlayPropTypeUtil.create({
|
|
5307
|
-
type:
|
|
5308
|
-
angle:
|
|
5425
|
+
type: stringPropTypeUtil14.create("linear"),
|
|
5426
|
+
angle: numberPropTypeUtil5.create(180),
|
|
5309
5427
|
stops: gradientColorStopPropTypeUtil.create([
|
|
5310
5428
|
colorStopPropTypeUtil.create({
|
|
5311
5429
|
color: colorPropTypeUtil2.create("rgb(0,0,0)"),
|
|
5312
|
-
offset:
|
|
5430
|
+
offset: numberPropTypeUtil5.create(0)
|
|
5313
5431
|
}),
|
|
5314
5432
|
colorStopPropTypeUtil.create({
|
|
5315
5433
|
color: colorPropTypeUtil2.create("rgb(255,255,255)"),
|
|
5316
|
-
offset:
|
|
5434
|
+
offset: numberPropTypeUtil5.create(100)
|
|
5317
5435
|
})
|
|
5318
5436
|
])
|
|
5319
5437
|
});
|
|
5320
5438
|
|
|
5321
5439
|
// src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-attachment.tsx
|
|
5322
|
-
import * as
|
|
5440
|
+
import * as React83 from "react";
|
|
5323
5441
|
import { PinIcon, PinnedOffIcon } from "@elementor/icons";
|
|
5324
5442
|
import { Grid as Grid13 } from "@elementor/ui";
|
|
5325
|
-
import { __ as
|
|
5443
|
+
import { __ as __33 } from "@wordpress/i18n";
|
|
5326
5444
|
var attachmentControlOptions = [
|
|
5327
5445
|
{
|
|
5328
5446
|
value: "fixed",
|
|
5329
|
-
label:
|
|
5330
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5447
|
+
label: __33("Fixed", "elementor"),
|
|
5448
|
+
renderContent: ({ size }) => /* @__PURE__ */ React83.createElement(PinIcon, { fontSize: size }),
|
|
5331
5449
|
showTooltip: true
|
|
5332
5450
|
},
|
|
5333
5451
|
{
|
|
5334
5452
|
value: "scroll",
|
|
5335
|
-
label:
|
|
5336
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5453
|
+
label: __33("Scroll", "elementor"),
|
|
5454
|
+
renderContent: ({ size }) => /* @__PURE__ */ React83.createElement(PinnedOffIcon, { fontSize: size }),
|
|
5337
5455
|
showTooltip: true
|
|
5338
5456
|
}
|
|
5339
5457
|
];
|
|
5340
5458
|
var BackgroundImageOverlayAttachment = () => {
|
|
5341
|
-
return /* @__PURE__ */
|
|
5459
|
+
return /* @__PURE__ */ React83.createElement(PopoverGridContainer, null, /* @__PURE__ */ React83.createElement(Grid13, { item: true, xs: 6 }, /* @__PURE__ */ React83.createElement(ControlFormLabel, null, __33("Attachment", "elementor"))), /* @__PURE__ */ React83.createElement(Grid13, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end", overflow: "hidden" } }, /* @__PURE__ */ React83.createElement(ToggleControl, { options: attachmentControlOptions })));
|
|
5342
5460
|
};
|
|
5343
5461
|
|
|
5344
5462
|
// src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-position.tsx
|
|
5345
|
-
import * as
|
|
5463
|
+
import * as React84 from "react";
|
|
5346
5464
|
import { useRef as useRef14 } from "react";
|
|
5347
|
-
import { backgroundImagePositionOffsetPropTypeUtil, stringPropTypeUtil as
|
|
5465
|
+
import { backgroundImagePositionOffsetPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil15 } from "@elementor/editor-props";
|
|
5348
5466
|
import { MenuListItem as MenuListItem6 } from "@elementor/editor-ui";
|
|
5349
5467
|
import { LetterXIcon, LetterYIcon } from "@elementor/icons";
|
|
5350
5468
|
import { Grid as Grid14, Select as Select4 } from "@elementor/ui";
|
|
5351
|
-
import { __ as
|
|
5469
|
+
import { __ as __34 } from "@wordpress/i18n";
|
|
5352
5470
|
var backgroundPositionOptions = [
|
|
5353
|
-
{ label:
|
|
5354
|
-
{ label:
|
|
5355
|
-
{ label:
|
|
5356
|
-
{ label:
|
|
5357
|
-
{ label:
|
|
5358
|
-
{ label:
|
|
5359
|
-
{ label:
|
|
5360
|
-
{ label:
|
|
5361
|
-
{ label:
|
|
5362
|
-
{ label:
|
|
5471
|
+
{ label: __34("Center center", "elementor"), value: "center center" },
|
|
5472
|
+
{ label: __34("Center left", "elementor"), value: "center left" },
|
|
5473
|
+
{ label: __34("Center right", "elementor"), value: "center right" },
|
|
5474
|
+
{ label: __34("Top center", "elementor"), value: "top center" },
|
|
5475
|
+
{ label: __34("Top left", "elementor"), value: "top left" },
|
|
5476
|
+
{ label: __34("Top right", "elementor"), value: "top right" },
|
|
5477
|
+
{ label: __34("Bottom center", "elementor"), value: "bottom center" },
|
|
5478
|
+
{ label: __34("Bottom left", "elementor"), value: "bottom left" },
|
|
5479
|
+
{ label: __34("Bottom right", "elementor"), value: "bottom right" },
|
|
5480
|
+
{ label: __34("Custom", "elementor"), value: "custom" }
|
|
5363
5481
|
];
|
|
5364
5482
|
var BackgroundImageOverlayPosition = () => {
|
|
5365
5483
|
const backgroundImageOffsetContext = useBoundProp(backgroundImagePositionOffsetPropTypeUtil);
|
|
5366
|
-
const stringPropContext = useBoundProp(
|
|
5484
|
+
const stringPropContext = useBoundProp(stringPropTypeUtil15);
|
|
5367
5485
|
const isCustom = !!backgroundImageOffsetContext.value;
|
|
5368
5486
|
const rowRef = useRef14(null);
|
|
5369
5487
|
const handlePositionChange = (event) => {
|
|
@@ -5374,7 +5492,7 @@ var BackgroundImageOverlayPosition = () => {
|
|
|
5374
5492
|
stringPropContext.setValue(value);
|
|
5375
5493
|
}
|
|
5376
5494
|
};
|
|
5377
|
-
return /* @__PURE__ */
|
|
5495
|
+
return /* @__PURE__ */ React84.createElement(Grid14, { container: true, spacing: 1.5 }, /* @__PURE__ */ React84.createElement(Grid14, { item: true, xs: 12 }, /* @__PURE__ */ React84.createElement(PopoverGridContainer, null, /* @__PURE__ */ React84.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React84.createElement(ControlFormLabel, null, __34("Position", "elementor"))), /* @__PURE__ */ React84.createElement(Grid14, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end", overflow: "hidden" } }, /* @__PURE__ */ React84.createElement(ControlActions, null, /* @__PURE__ */ React84.createElement(
|
|
5378
5496
|
Select4,
|
|
5379
5497
|
{
|
|
5380
5498
|
fullWidth: true,
|
|
@@ -5383,18 +5501,18 @@ var BackgroundImageOverlayPosition = () => {
|
|
|
5383
5501
|
disabled: stringPropContext.disabled,
|
|
5384
5502
|
value: (backgroundImageOffsetContext.value ? "custom" : stringPropContext.value) ?? ""
|
|
5385
5503
|
},
|
|
5386
|
-
backgroundPositionOptions.map(({ label, value }) => /* @__PURE__ */
|
|
5387
|
-
))))), isCustom ? /* @__PURE__ */
|
|
5504
|
+
backgroundPositionOptions.map(({ label, value }) => /* @__PURE__ */ React84.createElement(MenuListItem6, { key: value, value: value ?? "" }, label))
|
|
5505
|
+
))))), isCustom ? /* @__PURE__ */ React84.createElement(PropProvider, { ...backgroundImageOffsetContext }, /* @__PURE__ */ React84.createElement(Grid14, { item: true, xs: 12 }, /* @__PURE__ */ React84.createElement(Grid14, { container: true, spacing: 1.5, ref: rowRef }, /* @__PURE__ */ React84.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React84.createElement(PropKeyProvider, { bind: "x" }, /* @__PURE__ */ React84.createElement(
|
|
5388
5506
|
SizeControl,
|
|
5389
5507
|
{
|
|
5390
|
-
startIcon: /* @__PURE__ */
|
|
5508
|
+
startIcon: /* @__PURE__ */ React84.createElement(LetterXIcon, { fontSize: "tiny" }),
|
|
5391
5509
|
anchorRef: rowRef,
|
|
5392
5510
|
min: -Number.MAX_SAFE_INTEGER
|
|
5393
5511
|
}
|
|
5394
|
-
))), /* @__PURE__ */
|
|
5512
|
+
))), /* @__PURE__ */ React84.createElement(Grid14, { item: true, xs: 6 }, /* @__PURE__ */ React84.createElement(PropKeyProvider, { bind: "y" }, /* @__PURE__ */ React84.createElement(
|
|
5395
5513
|
SizeControl,
|
|
5396
5514
|
{
|
|
5397
|
-
startIcon: /* @__PURE__ */
|
|
5515
|
+
startIcon: /* @__PURE__ */ React84.createElement(LetterYIcon, { fontSize: "tiny" }),
|
|
5398
5516
|
anchorRef: rowRef,
|
|
5399
5517
|
min: -Number.MAX_SAFE_INTEGER
|
|
5400
5518
|
}
|
|
@@ -5402,44 +5520,44 @@ var BackgroundImageOverlayPosition = () => {
|
|
|
5402
5520
|
};
|
|
5403
5521
|
|
|
5404
5522
|
// src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-repeat.tsx
|
|
5405
|
-
import * as
|
|
5523
|
+
import * as React85 from "react";
|
|
5406
5524
|
import { DotsHorizontalIcon, DotsVerticalIcon, GridDotsIcon, XIcon as XIcon3 } from "@elementor/icons";
|
|
5407
5525
|
import { Grid as Grid15 } from "@elementor/ui";
|
|
5408
|
-
import { __ as
|
|
5526
|
+
import { __ as __35 } from "@wordpress/i18n";
|
|
5409
5527
|
var repeatControlOptions = [
|
|
5410
5528
|
{
|
|
5411
5529
|
value: "repeat",
|
|
5412
|
-
label:
|
|
5413
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5530
|
+
label: __35("Repeat", "elementor"),
|
|
5531
|
+
renderContent: ({ size }) => /* @__PURE__ */ React85.createElement(GridDotsIcon, { fontSize: size }),
|
|
5414
5532
|
showTooltip: true
|
|
5415
5533
|
},
|
|
5416
5534
|
{
|
|
5417
5535
|
value: "repeat-x",
|
|
5418
|
-
label:
|
|
5419
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5536
|
+
label: __35("Repeat-x", "elementor"),
|
|
5537
|
+
renderContent: ({ size }) => /* @__PURE__ */ React85.createElement(DotsHorizontalIcon, { fontSize: size }),
|
|
5420
5538
|
showTooltip: true
|
|
5421
5539
|
},
|
|
5422
5540
|
{
|
|
5423
5541
|
value: "repeat-y",
|
|
5424
|
-
label:
|
|
5425
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5542
|
+
label: __35("Repeat-y", "elementor"),
|
|
5543
|
+
renderContent: ({ size }) => /* @__PURE__ */ React85.createElement(DotsVerticalIcon, { fontSize: size }),
|
|
5426
5544
|
showTooltip: true
|
|
5427
5545
|
},
|
|
5428
5546
|
{
|
|
5429
5547
|
value: "no-repeat",
|
|
5430
|
-
label:
|
|
5431
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5548
|
+
label: __35("No-repeat", "elementor"),
|
|
5549
|
+
renderContent: ({ size }) => /* @__PURE__ */ React85.createElement(XIcon3, { fontSize: size }),
|
|
5432
5550
|
showTooltip: true
|
|
5433
5551
|
}
|
|
5434
5552
|
];
|
|
5435
5553
|
var BackgroundImageOverlayRepeat = () => {
|
|
5436
|
-
return /* @__PURE__ */
|
|
5554
|
+
return /* @__PURE__ */ React85.createElement(PopoverGridContainer, null, /* @__PURE__ */ React85.createElement(Grid15, { item: true, xs: 6 }, /* @__PURE__ */ React85.createElement(ControlFormLabel, null, __35("Repeat", "elementor"))), /* @__PURE__ */ React85.createElement(Grid15, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React85.createElement(ToggleControl, { options: repeatControlOptions })));
|
|
5437
5555
|
};
|
|
5438
5556
|
|
|
5439
5557
|
// src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-size.tsx
|
|
5440
|
-
import * as
|
|
5558
|
+
import * as React86 from "react";
|
|
5441
5559
|
import { useRef as useRef15 } from "react";
|
|
5442
|
-
import { backgroundImageSizeScalePropTypeUtil, stringPropTypeUtil as
|
|
5560
|
+
import { backgroundImageSizeScalePropTypeUtil, stringPropTypeUtil as stringPropTypeUtil16 } from "@elementor/editor-props";
|
|
5443
5561
|
import {
|
|
5444
5562
|
ArrowBarBothIcon,
|
|
5445
5563
|
ArrowsMaximizeIcon,
|
|
@@ -5449,36 +5567,36 @@ import {
|
|
|
5449
5567
|
PencilIcon
|
|
5450
5568
|
} from "@elementor/icons";
|
|
5451
5569
|
import { Grid as Grid16 } from "@elementor/ui";
|
|
5452
|
-
import { __ as
|
|
5570
|
+
import { __ as __36 } from "@wordpress/i18n";
|
|
5453
5571
|
var sizeControlOptions = [
|
|
5454
5572
|
{
|
|
5455
5573
|
value: "auto",
|
|
5456
|
-
label:
|
|
5457
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5574
|
+
label: __36("Auto", "elementor"),
|
|
5575
|
+
renderContent: ({ size }) => /* @__PURE__ */ React86.createElement(LetterAIcon, { fontSize: size }),
|
|
5458
5576
|
showTooltip: true
|
|
5459
5577
|
},
|
|
5460
5578
|
{
|
|
5461
5579
|
value: "cover",
|
|
5462
|
-
label:
|
|
5463
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5580
|
+
label: __36("Cover", "elementor"),
|
|
5581
|
+
renderContent: ({ size }) => /* @__PURE__ */ React86.createElement(ArrowsMaximizeIcon, { fontSize: size }),
|
|
5464
5582
|
showTooltip: true
|
|
5465
5583
|
},
|
|
5466
5584
|
{
|
|
5467
5585
|
value: "contain",
|
|
5468
|
-
label:
|
|
5469
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5586
|
+
label: __36("Contain", "elementor"),
|
|
5587
|
+
renderContent: ({ size }) => /* @__PURE__ */ React86.createElement(ArrowBarBothIcon, { fontSize: size }),
|
|
5470
5588
|
showTooltip: true
|
|
5471
5589
|
},
|
|
5472
5590
|
{
|
|
5473
5591
|
value: "custom",
|
|
5474
|
-
label:
|
|
5475
|
-
renderContent: ({ size }) => /* @__PURE__ */
|
|
5592
|
+
label: __36("Custom", "elementor"),
|
|
5593
|
+
renderContent: ({ size }) => /* @__PURE__ */ React86.createElement(PencilIcon, { fontSize: size }),
|
|
5476
5594
|
showTooltip: true
|
|
5477
5595
|
}
|
|
5478
5596
|
];
|
|
5479
5597
|
var BackgroundImageOverlaySize = () => {
|
|
5480
5598
|
const backgroundImageScaleContext = useBoundProp(backgroundImageSizeScalePropTypeUtil);
|
|
5481
|
-
const stringPropContext = useBoundProp(
|
|
5599
|
+
const stringPropContext = useBoundProp(stringPropTypeUtil16);
|
|
5482
5600
|
const isCustom = !!backgroundImageScaleContext.value;
|
|
5483
5601
|
const rowRef = useRef15(null);
|
|
5484
5602
|
const handleSizeChange = (size) => {
|
|
@@ -5488,7 +5606,7 @@ var BackgroundImageOverlaySize = () => {
|
|
|
5488
5606
|
stringPropContext.setValue(size);
|
|
5489
5607
|
}
|
|
5490
5608
|
};
|
|
5491
|
-
return /* @__PURE__ */
|
|
5609
|
+
return /* @__PURE__ */ React86.createElement(Grid16, { container: true, spacing: 1.5 }, /* @__PURE__ */ React86.createElement(Grid16, { item: true, xs: 12 }, /* @__PURE__ */ React86.createElement(PopoverGridContainer, null, /* @__PURE__ */ React86.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React86.createElement(ControlFormLabel, null, __36("Size", "elementor"))), /* @__PURE__ */ React86.createElement(Grid16, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React86.createElement(
|
|
5492
5610
|
ControlToggleButtonGroup,
|
|
5493
5611
|
{
|
|
5494
5612
|
exclusive: true,
|
|
@@ -5497,17 +5615,17 @@ var BackgroundImageOverlaySize = () => {
|
|
|
5497
5615
|
disabled: stringPropContext.disabled,
|
|
5498
5616
|
value: backgroundImageScaleContext.value ? "custom" : stringPropContext.value
|
|
5499
5617
|
}
|
|
5500
|
-
)))), isCustom ? /* @__PURE__ */
|
|
5618
|
+
)))), isCustom ? /* @__PURE__ */ React86.createElement(PropProvider, { ...backgroundImageScaleContext }, /* @__PURE__ */ React86.createElement(Grid16, { item: true, xs: 12, ref: rowRef }, /* @__PURE__ */ React86.createElement(PopoverGridContainer, null, /* @__PURE__ */ React86.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React86.createElement(PropKeyProvider, { bind: "width" }, /* @__PURE__ */ React86.createElement(
|
|
5501
5619
|
SizeControl,
|
|
5502
5620
|
{
|
|
5503
|
-
startIcon: /* @__PURE__ */
|
|
5621
|
+
startIcon: /* @__PURE__ */ React86.createElement(ArrowsMoveHorizontalIcon2, { fontSize: "tiny" }),
|
|
5504
5622
|
extendedOptions: ["auto"],
|
|
5505
5623
|
anchorRef: rowRef
|
|
5506
5624
|
}
|
|
5507
|
-
))), /* @__PURE__ */
|
|
5625
|
+
))), /* @__PURE__ */ React86.createElement(Grid16, { item: true, xs: 6 }, /* @__PURE__ */ React86.createElement(PropKeyProvider, { bind: "height" }, /* @__PURE__ */ React86.createElement(
|
|
5508
5626
|
SizeControl,
|
|
5509
5627
|
{
|
|
5510
|
-
startIcon: /* @__PURE__ */
|
|
5628
|
+
startIcon: /* @__PURE__ */ React86.createElement(ArrowsMoveVerticalIcon2, { fontSize: "tiny" }),
|
|
5511
5629
|
extendedOptions: ["auto"],
|
|
5512
5630
|
anchorRef: rowRef
|
|
5513
5631
|
}
|
|
@@ -5608,29 +5726,29 @@ var getInitialBackgroundOverlay = () => ({
|
|
|
5608
5726
|
}
|
|
5609
5727
|
});
|
|
5610
5728
|
var backgroundResolutionOptions = [
|
|
5611
|
-
{ label:
|
|
5612
|
-
{ label:
|
|
5613
|
-
{ label:
|
|
5614
|
-
{ label:
|
|
5729
|
+
{ label: __37("Thumbnail - 150 x 150", "elementor"), value: "thumbnail" },
|
|
5730
|
+
{ label: __37("Medium - 300 x 300", "elementor"), value: "medium" },
|
|
5731
|
+
{ label: __37("Large 1024 x 1024", "elementor"), value: "large" },
|
|
5732
|
+
{ label: __37("Full", "elementor"), value: "full" }
|
|
5615
5733
|
];
|
|
5616
5734
|
var BackgroundOverlayRepeaterControl = createControl(() => {
|
|
5617
5735
|
const { propType, value: overlayValues, setValue } = useBoundProp(backgroundOverlayPropTypeUtil);
|
|
5618
|
-
return /* @__PURE__ */
|
|
5736
|
+
return /* @__PURE__ */ React87.createElement(PropProvider, { propType, value: overlayValues, setValue }, /* @__PURE__ */ React87.createElement(
|
|
5619
5737
|
ControlRepeater,
|
|
5620
5738
|
{
|
|
5621
5739
|
initial: getInitialBackgroundOverlay(),
|
|
5622
5740
|
propTypeUtil: backgroundOverlayPropTypeUtil
|
|
5623
5741
|
},
|
|
5624
|
-
/* @__PURE__ */
|
|
5625
|
-
/* @__PURE__ */
|
|
5742
|
+
/* @__PURE__ */ React87.createElement(RepeaterHeader, { label: __37("Overlay", "elementor") }, /* @__PURE__ */ React87.createElement(TooltipAddItemAction, { newItemIndex: 0 })),
|
|
5743
|
+
/* @__PURE__ */ React87.createElement(ItemsContainer, null, /* @__PURE__ */ React87.createElement(
|
|
5626
5744
|
Item,
|
|
5627
5745
|
{
|
|
5628
5746
|
Icon: ItemIcon2,
|
|
5629
5747
|
Label: ItemLabel2,
|
|
5630
|
-
actions: /* @__PURE__ */
|
|
5748
|
+
actions: /* @__PURE__ */ React87.createElement(React87.Fragment, null, /* @__PURE__ */ React87.createElement(DuplicateItemAction, null), /* @__PURE__ */ React87.createElement(DisableItemAction, null), /* @__PURE__ */ React87.createElement(RemoveItemAction, null))
|
|
5631
5749
|
}
|
|
5632
5750
|
)),
|
|
5633
|
-
/* @__PURE__ */
|
|
5751
|
+
/* @__PURE__ */ React87.createElement(EditItemPopover, null, /* @__PURE__ */ React87.createElement(ItemContent, null))
|
|
5634
5752
|
));
|
|
5635
5753
|
});
|
|
5636
5754
|
var ItemContent = () => {
|
|
@@ -5640,27 +5758,27 @@ var ItemContent = () => {
|
|
|
5640
5758
|
gradient: initialBackgroundGradientOverlay.value
|
|
5641
5759
|
});
|
|
5642
5760
|
const { rowRef } = useRepeaterContext();
|
|
5643
|
-
return /* @__PURE__ */
|
|
5761
|
+
return /* @__PURE__ */ React87.createElement(Box14, { sx: { width: "100%" } }, /* @__PURE__ */ React87.createElement(Box14, { sx: { borderBottom: 1, borderColor: "divider" } }, /* @__PURE__ */ React87.createElement(
|
|
5644
5762
|
Tabs,
|
|
5645
5763
|
{
|
|
5646
5764
|
size: "small",
|
|
5647
5765
|
variant: "fullWidth",
|
|
5648
5766
|
...getTabsProps(),
|
|
5649
|
-
"aria-label":
|
|
5767
|
+
"aria-label": __37("Background Overlay", "elementor")
|
|
5650
5768
|
},
|
|
5651
|
-
/* @__PURE__ */
|
|
5652
|
-
/* @__PURE__ */
|
|
5653
|
-
/* @__PURE__ */
|
|
5654
|
-
)), /* @__PURE__ */
|
|
5769
|
+
/* @__PURE__ */ React87.createElement(Tab, { label: __37("Image", "elementor"), ...getTabProps("image") }),
|
|
5770
|
+
/* @__PURE__ */ React87.createElement(Tab, { label: __37("Gradient", "elementor"), ...getTabProps("gradient") }),
|
|
5771
|
+
/* @__PURE__ */ React87.createElement(Tab, { label: __37("Color", "elementor"), ...getTabProps("color") })
|
|
5772
|
+
)), /* @__PURE__ */ React87.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("image") }, /* @__PURE__ */ React87.createElement(PopoverContent, null, /* @__PURE__ */ React87.createElement(ImageOverlayContent, null))), /* @__PURE__ */ React87.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("gradient") }, /* @__PURE__ */ React87.createElement(BackgroundGradientColorControl, null)), /* @__PURE__ */ React87.createElement(TabPanel, { sx: { p: 1.5 }, ...getTabPanelProps("color") }, /* @__PURE__ */ React87.createElement(PopoverContent, null, /* @__PURE__ */ React87.createElement(ColorOverlayContent, { anchorEl: rowRef }))));
|
|
5655
5773
|
};
|
|
5656
5774
|
var ItemIcon2 = ({ value }) => {
|
|
5657
5775
|
switch (value.$$type) {
|
|
5658
5776
|
case "background-image-overlay":
|
|
5659
|
-
return /* @__PURE__ */
|
|
5777
|
+
return /* @__PURE__ */ React87.createElement(ItemIconImage, { value });
|
|
5660
5778
|
case "background-color-overlay":
|
|
5661
|
-
return /* @__PURE__ */
|
|
5779
|
+
return /* @__PURE__ */ React87.createElement(ItemIconColor, { value });
|
|
5662
5780
|
case "background-gradient-overlay":
|
|
5663
|
-
return /* @__PURE__ */
|
|
5781
|
+
return /* @__PURE__ */ React87.createElement(ItemIconGradient, { value });
|
|
5664
5782
|
default:
|
|
5665
5783
|
return null;
|
|
5666
5784
|
}
|
|
@@ -5673,11 +5791,11 @@ var extractColorFrom = (prop) => {
|
|
|
5673
5791
|
};
|
|
5674
5792
|
var ItemIconColor = ({ value: prop }) => {
|
|
5675
5793
|
const color = extractColorFrom(prop);
|
|
5676
|
-
return /* @__PURE__ */
|
|
5794
|
+
return /* @__PURE__ */ React87.createElement(StyledUnstableColorIndicator3, { size: "inherit", component: "span", value: color });
|
|
5677
5795
|
};
|
|
5678
5796
|
var ItemIconImage = ({ value }) => {
|
|
5679
5797
|
const { imageUrl } = useImage(value);
|
|
5680
|
-
return /* @__PURE__ */
|
|
5798
|
+
return /* @__PURE__ */ React87.createElement(
|
|
5681
5799
|
CardMedia4,
|
|
5682
5800
|
{
|
|
5683
5801
|
image: imageUrl,
|
|
@@ -5692,41 +5810,41 @@ var ItemIconImage = ({ value }) => {
|
|
|
5692
5810
|
};
|
|
5693
5811
|
var ItemIconGradient = ({ value }) => {
|
|
5694
5812
|
const gradient = getGradientValue(value);
|
|
5695
|
-
return /* @__PURE__ */
|
|
5813
|
+
return /* @__PURE__ */ React87.createElement(StyledUnstableColorIndicator3, { size: "inherit", component: "span", value: gradient });
|
|
5696
5814
|
};
|
|
5697
5815
|
var ItemLabel2 = ({ value }) => {
|
|
5698
5816
|
switch (value.$$type) {
|
|
5699
5817
|
case "background-image-overlay":
|
|
5700
|
-
return /* @__PURE__ */
|
|
5818
|
+
return /* @__PURE__ */ React87.createElement(ItemLabelImage, { value });
|
|
5701
5819
|
case "background-color-overlay":
|
|
5702
|
-
return /* @__PURE__ */
|
|
5820
|
+
return /* @__PURE__ */ React87.createElement(ItemLabelColor, { value });
|
|
5703
5821
|
case "background-gradient-overlay":
|
|
5704
|
-
return /* @__PURE__ */
|
|
5822
|
+
return /* @__PURE__ */ React87.createElement(ItemLabelGradient, { value });
|
|
5705
5823
|
default:
|
|
5706
5824
|
return null;
|
|
5707
5825
|
}
|
|
5708
5826
|
};
|
|
5709
5827
|
var ItemLabelColor = ({ value: prop }) => {
|
|
5710
5828
|
const color = extractColorFrom(prop);
|
|
5711
|
-
return /* @__PURE__ */
|
|
5829
|
+
return /* @__PURE__ */ React87.createElement("span", null, color);
|
|
5712
5830
|
};
|
|
5713
5831
|
var ItemLabelImage = ({ value }) => {
|
|
5714
5832
|
const { imageTitle } = useImage(value);
|
|
5715
|
-
return /* @__PURE__ */
|
|
5833
|
+
return /* @__PURE__ */ React87.createElement("span", null, imageTitle);
|
|
5716
5834
|
};
|
|
5717
5835
|
var ItemLabelGradient = ({ value }) => {
|
|
5718
5836
|
if (value.value.type.value === "linear") {
|
|
5719
|
-
return /* @__PURE__ */
|
|
5837
|
+
return /* @__PURE__ */ React87.createElement("span", null, __37("Linear Gradient", "elementor"));
|
|
5720
5838
|
}
|
|
5721
|
-
return /* @__PURE__ */
|
|
5839
|
+
return /* @__PURE__ */ React87.createElement("span", null, __37("Radial Gradient", "elementor"));
|
|
5722
5840
|
};
|
|
5723
5841
|
var ColorOverlayContent = ({ anchorEl }) => {
|
|
5724
5842
|
const propContext = useBoundProp(backgroundColorOverlayPropTypeUtil2);
|
|
5725
|
-
return /* @__PURE__ */
|
|
5843
|
+
return /* @__PURE__ */ React87.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: "color" }, /* @__PURE__ */ React87.createElement(ColorControl, { anchorEl })));
|
|
5726
5844
|
};
|
|
5727
5845
|
var ImageOverlayContent = () => {
|
|
5728
5846
|
const propContext = useBoundProp(backgroundImageOverlayPropTypeUtil2);
|
|
5729
|
-
return /* @__PURE__ */
|
|
5847
|
+
return /* @__PURE__ */ React87.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: "image" }, /* @__PURE__ */ React87.createElement(ImageControl, { sizes: backgroundResolutionOptions })), /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: "position" }, /* @__PURE__ */ React87.createElement(BackgroundImageOverlayPosition, null)), /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: "repeat" }, /* @__PURE__ */ React87.createElement(BackgroundImageOverlayRepeat, null)), /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: "size" }, /* @__PURE__ */ React87.createElement(BackgroundImageOverlaySize, null)), /* @__PURE__ */ React87.createElement(PropKeyProvider, { bind: "attachment" }, /* @__PURE__ */ React87.createElement(BackgroundImageOverlayAttachment, null)));
|
|
5730
5848
|
};
|
|
5731
5849
|
var StyledUnstableColorIndicator3 = styled10(UnstableColorIndicator3)(({ theme }) => ({
|
|
5732
5850
|
height: "1rem",
|
|
@@ -5765,28 +5883,28 @@ var getGradientValue = (value) => {
|
|
|
5765
5883
|
|
|
5766
5884
|
// src/controls/background-control/background-control.tsx
|
|
5767
5885
|
var clipOptions = [
|
|
5768
|
-
{ label:
|
|
5769
|
-
{ label:
|
|
5770
|
-
{ label:
|
|
5771
|
-
{ label:
|
|
5886
|
+
{ label: __38("Full element", "elementor"), value: "border-box" },
|
|
5887
|
+
{ label: __38("Padding edges", "elementor"), value: "padding-box" },
|
|
5888
|
+
{ label: __38("Content edges", "elementor"), value: "content-box" },
|
|
5889
|
+
{ label: __38("Text", "elementor"), value: "text" }
|
|
5772
5890
|
];
|
|
5773
|
-
var colorLabel =
|
|
5774
|
-
var clipLabel =
|
|
5891
|
+
var colorLabel = __38("Color", "elementor");
|
|
5892
|
+
var clipLabel = __38("Clipping", "elementor");
|
|
5775
5893
|
var BackgroundControl = createControl(() => {
|
|
5776
5894
|
const propContext = useBoundProp(backgroundPropTypeUtil);
|
|
5777
|
-
return /* @__PURE__ */
|
|
5895
|
+
return /* @__PURE__ */ React88.createElement(PropProvider, { ...propContext }, /* @__PURE__ */ React88.createElement(PropKeyProvider, { bind: "background-overlay" }, /* @__PURE__ */ React88.createElement(BackgroundOverlayRepeaterControl, null)), /* @__PURE__ */ React88.createElement(BackgroundColorField, null), /* @__PURE__ */ React88.createElement(BackgroundClipField, null));
|
|
5778
5896
|
});
|
|
5779
5897
|
var BackgroundColorField = () => {
|
|
5780
|
-
return /* @__PURE__ */
|
|
5898
|
+
return /* @__PURE__ */ React88.createElement(PropKeyProvider, { bind: "color" }, /* @__PURE__ */ React88.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React88.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React88.createElement(ControlLabel, null, colorLabel)), /* @__PURE__ */ React88.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React88.createElement(ColorControl, null))));
|
|
5781
5899
|
};
|
|
5782
5900
|
var BackgroundClipField = () => {
|
|
5783
|
-
return /* @__PURE__ */
|
|
5901
|
+
return /* @__PURE__ */ React88.createElement(PropKeyProvider, { bind: "clip" }, /* @__PURE__ */ React88.createElement(Grid17, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React88.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React88.createElement(ControlLabel, null, clipLabel)), /* @__PURE__ */ React88.createElement(Grid17, { item: true, xs: 6 }, /* @__PURE__ */ React88.createElement(SelectControl, { options: clipOptions }))));
|
|
5784
5902
|
};
|
|
5785
5903
|
|
|
5786
5904
|
// src/controls/repeatable-control.tsx
|
|
5787
|
-
import * as
|
|
5788
|
-
import { useMemo as
|
|
5789
|
-
import { createArrayPropUtils } from "@elementor/editor-props";
|
|
5905
|
+
import * as React89 from "react";
|
|
5906
|
+
import { useMemo as useMemo12 } from "react";
|
|
5907
|
+
import { createArrayPropUtils as createArrayPropUtils2 } from "@elementor/editor-props";
|
|
5790
5908
|
import { Box as Box15 } from "@elementor/ui";
|
|
5791
5909
|
var PLACEHOLDER_REGEX = /\$\{([^}]+)\}/g;
|
|
5792
5910
|
var RepeatableControl = createControl(
|
|
@@ -5806,11 +5924,11 @@ var RepeatableControl = createControl(
|
|
|
5806
5924
|
if (!childPropTypeUtil) {
|
|
5807
5925
|
return null;
|
|
5808
5926
|
}
|
|
5809
|
-
const childArrayPropTypeUtil2 =
|
|
5810
|
-
() =>
|
|
5927
|
+
const childArrayPropTypeUtil2 = useMemo12(
|
|
5928
|
+
() => createArrayPropUtils2(childPropTypeUtil.key, childPropTypeUtil.schema, propKey),
|
|
5811
5929
|
[childPropTypeUtil.key, childPropTypeUtil.schema, propKey]
|
|
5812
5930
|
);
|
|
5813
|
-
const contextValue =
|
|
5931
|
+
const contextValue = useMemo12(
|
|
5814
5932
|
() => ({
|
|
5815
5933
|
...childControlConfig,
|
|
5816
5934
|
placeholder: placeholder || "",
|
|
@@ -5820,14 +5938,14 @@ var RepeatableControl = createControl(
|
|
|
5820
5938
|
);
|
|
5821
5939
|
const { propType, value, setValue } = useBoundProp(childArrayPropTypeUtil2);
|
|
5822
5940
|
const newItemIndex = addItemTooltipProps?.newItemIndex === null ? void 0 : 0;
|
|
5823
|
-
return /* @__PURE__ */
|
|
5941
|
+
return /* @__PURE__ */ React89.createElement(PropProvider, { propType, value, setValue }, /* @__PURE__ */ React89.createElement(RepeatableControlContext.Provider, { value: contextValue }, /* @__PURE__ */ React89.createElement(
|
|
5824
5942
|
ControlRepeater,
|
|
5825
5943
|
{
|
|
5826
5944
|
initial: childPropTypeUtil.create(initialValues || null),
|
|
5827
5945
|
propTypeUtil: childArrayPropTypeUtil2,
|
|
5828
5946
|
isItemDisabled: isItemDisabled2
|
|
5829
5947
|
},
|
|
5830
|
-
/* @__PURE__ */
|
|
5948
|
+
/* @__PURE__ */ React89.createElement(RepeaterHeader, { label: repeaterLabel }, /* @__PURE__ */ React89.createElement(
|
|
5831
5949
|
TooltipAddItemAction,
|
|
5832
5950
|
{
|
|
5833
5951
|
...addItemTooltipProps,
|
|
@@ -5835,22 +5953,22 @@ var RepeatableControl = createControl(
|
|
|
5835
5953
|
ariaLabel: repeaterLabel
|
|
5836
5954
|
}
|
|
5837
5955
|
)),
|
|
5838
|
-
/* @__PURE__ */
|
|
5956
|
+
/* @__PURE__ */ React89.createElement(ItemsContainer, { isSortable }, /* @__PURE__ */ React89.createElement(
|
|
5839
5957
|
Item,
|
|
5840
5958
|
{
|
|
5841
5959
|
Icon: ItemIcon3,
|
|
5842
5960
|
Label: ItemLabel3,
|
|
5843
|
-
actions: /* @__PURE__ */
|
|
5961
|
+
actions: /* @__PURE__ */ React89.createElement(React89.Fragment, null, showDuplicate && /* @__PURE__ */ React89.createElement(DuplicateItemAction, null), showToggle && /* @__PURE__ */ React89.createElement(DisableItemAction, null), /* @__PURE__ */ React89.createElement(RemoveItemAction, null))
|
|
5844
5962
|
}
|
|
5845
5963
|
)),
|
|
5846
|
-
/* @__PURE__ */
|
|
5964
|
+
/* @__PURE__ */ React89.createElement(EditItemPopover, null, /* @__PURE__ */ React89.createElement(Content2, null))
|
|
5847
5965
|
)));
|
|
5848
5966
|
}
|
|
5849
5967
|
);
|
|
5850
|
-
var ItemIcon3 = () => /* @__PURE__ */
|
|
5968
|
+
var ItemIcon3 = () => /* @__PURE__ */ React89.createElement(React89.Fragment, null);
|
|
5851
5969
|
var Content2 = () => {
|
|
5852
5970
|
const { component: ChildControl, props = {} } = useRepeatableControlContext();
|
|
5853
|
-
return /* @__PURE__ */
|
|
5971
|
+
return /* @__PURE__ */ React89.createElement(PopoverContent, { p: 1.5 }, /* @__PURE__ */ React89.createElement(PopoverGridContainer, null, /* @__PURE__ */ React89.createElement(ChildControl, { ...props })));
|
|
5854
5972
|
};
|
|
5855
5973
|
var interpolate = (template, data) => {
|
|
5856
5974
|
if (!data) {
|
|
@@ -5933,7 +6051,7 @@ var ItemLabel3 = ({ value }) => {
|
|
|
5933
6051
|
const label = showPlaceholder ? placeholder : interpolate(patternLabel, value);
|
|
5934
6052
|
const isReadOnly = !!childProps?.readOnly;
|
|
5935
6053
|
const color = getTextColor(isReadOnly, showPlaceholder);
|
|
5936
|
-
return /* @__PURE__ */
|
|
6054
|
+
return /* @__PURE__ */ React89.createElement(Box15, { component: "span", color }, label);
|
|
5937
6055
|
};
|
|
5938
6056
|
var getAllProperties = (pattern) => {
|
|
5939
6057
|
const properties = pattern.match(PLACEHOLDER_REGEX)?.map((match) => match.slice(2, -1)) || [];
|
|
@@ -5941,15 +6059,15 @@ var getAllProperties = (pattern) => {
|
|
|
5941
6059
|
};
|
|
5942
6060
|
|
|
5943
6061
|
// src/controls/key-value-control.tsx
|
|
5944
|
-
import * as
|
|
5945
|
-
import { useMemo as
|
|
6062
|
+
import * as React90 from "react";
|
|
6063
|
+
import { useMemo as useMemo13, useState as useState17 } from "react";
|
|
5946
6064
|
import {
|
|
5947
6065
|
isTransformable,
|
|
5948
6066
|
keyValuePropTypeUtil,
|
|
5949
|
-
stringPropTypeUtil as
|
|
6067
|
+
stringPropTypeUtil as stringPropTypeUtil17
|
|
5950
6068
|
} from "@elementor/editor-props";
|
|
5951
6069
|
import { FormHelperText, FormLabel as FormLabel3, Grid as Grid18 } from "@elementor/ui";
|
|
5952
|
-
import { __ as
|
|
6070
|
+
import { __ as __39 } from "@wordpress/i18n";
|
|
5953
6071
|
|
|
5954
6072
|
// src/utils/escape-html-attr.ts
|
|
5955
6073
|
var escapeHtmlAttr = (value) => {
|
|
@@ -5979,17 +6097,17 @@ var KeyValueControl = createControl((props = {}) => {
|
|
|
5979
6097
|
key: getInitialFieldValue(value?.key),
|
|
5980
6098
|
value: getInitialFieldValue(value?.value)
|
|
5981
6099
|
});
|
|
5982
|
-
const keyLabel = props.keyName ||
|
|
5983
|
-
const valueLabel = props.valueName ||
|
|
6100
|
+
const keyLabel = props.keyName || __39("Key", "elementor");
|
|
6101
|
+
const valueLabel = props.valueName || __39("Value", "elementor");
|
|
5984
6102
|
const { keyHelper, valueHelper } = props.getHelperText?.(sessionState.key, sessionState.value) || {
|
|
5985
6103
|
keyHelper: void 0,
|
|
5986
6104
|
valueHelper: void 0
|
|
5987
6105
|
};
|
|
5988
|
-
const [keyRegex, valueRegex, errMsg] =
|
|
6106
|
+
const [keyRegex, valueRegex, errMsg] = useMemo13(
|
|
5989
6107
|
() => [
|
|
5990
6108
|
props.regexKey ? new RegExp(props.regexKey) : void 0,
|
|
5991
6109
|
props.regexValue ? new RegExp(props.regexValue) : void 0,
|
|
5992
|
-
props.validationErrorMessage ||
|
|
6110
|
+
props.validationErrorMessage || __39("Invalid Format", "elementor")
|
|
5993
6111
|
],
|
|
5994
6112
|
[props.regexKey, props.regexValue, props.validationErrorMessage]
|
|
5995
6113
|
);
|
|
@@ -6018,7 +6136,7 @@ var KeyValueControl = createControl((props = {}) => {
|
|
|
6018
6136
|
});
|
|
6019
6137
|
return;
|
|
6020
6138
|
}
|
|
6021
|
-
const extractedValue =
|
|
6139
|
+
const extractedValue = stringPropTypeUtil17.extract(newChangedValue);
|
|
6022
6140
|
setSessionState((prev) => ({
|
|
6023
6141
|
...prev,
|
|
6024
6142
|
[fieldType]: extractedValue
|
|
@@ -6038,14 +6156,14 @@ var KeyValueControl = createControl((props = {}) => {
|
|
|
6038
6156
|
});
|
|
6039
6157
|
}
|
|
6040
6158
|
};
|
|
6041
|
-
return /* @__PURE__ */
|
|
6159
|
+
return /* @__PURE__ */ React90.createElement(PropProvider, { ...propContext, value, setValue: handleChange }, /* @__PURE__ */ React90.createElement(Grid18, { container: true, gap: 1.5 }, /* @__PURE__ */ React90.createElement(Grid18, { item: true, xs: 12, display: "flex", flexDirection: "column" }, /* @__PURE__ */ React90.createElement(FormLabel3, { size: "tiny", sx: { pb: 1 } }, keyLabel), /* @__PURE__ */ React90.createElement(PropKeyProvider, { bind: "key" }, /* @__PURE__ */ React90.createElement(
|
|
6042
6160
|
TextControl,
|
|
6043
6161
|
{
|
|
6044
6162
|
inputValue: props.escapeHtml ? escapeHtmlAttr(sessionState.key) : sessionState.key,
|
|
6045
6163
|
error: !!keyError,
|
|
6046
6164
|
helperText: keyHelper
|
|
6047
6165
|
}
|
|
6048
|
-
)), !!keyError && /* @__PURE__ */
|
|
6166
|
+
)), !!keyError && /* @__PURE__ */ React90.createElement(FormHelperText, { error: true }, keyError)), /* @__PURE__ */ React90.createElement(Grid18, { item: true, xs: 12, display: "flex", flexDirection: "column" }, /* @__PURE__ */ React90.createElement(FormLabel3, { size: "tiny", sx: { pb: 1 } }, valueLabel), /* @__PURE__ */ React90.createElement(PropKeyProvider, { bind: "value" }, /* @__PURE__ */ React90.createElement(
|
|
6049
6167
|
TextControl,
|
|
6050
6168
|
{
|
|
6051
6169
|
inputValue: props.escapeHtml ? escapeHtmlAttr(sessionState.value) : sessionState.value,
|
|
@@ -6053,31 +6171,31 @@ var KeyValueControl = createControl((props = {}) => {
|
|
|
6053
6171
|
inputDisabled: !!keyError,
|
|
6054
6172
|
helperText: valueHelper
|
|
6055
6173
|
}
|
|
6056
|
-
)), !!valueError && /* @__PURE__ */
|
|
6174
|
+
)), !!valueError && /* @__PURE__ */ React90.createElement(FormHelperText, { error: true }, valueError))));
|
|
6057
6175
|
});
|
|
6058
6176
|
|
|
6059
6177
|
// src/controls/position-control.tsx
|
|
6060
|
-
import * as
|
|
6061
|
-
import { positionPropTypeUtil, stringPropTypeUtil as
|
|
6178
|
+
import * as React91 from "react";
|
|
6179
|
+
import { positionPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil18 } from "@elementor/editor-props";
|
|
6062
6180
|
import { MenuListItem as MenuListItem7 } from "@elementor/editor-ui";
|
|
6063
6181
|
import { LetterXIcon as LetterXIcon2, LetterYIcon as LetterYIcon2 } from "@elementor/icons";
|
|
6064
6182
|
import { Grid as Grid19, Select as Select5 } from "@elementor/ui";
|
|
6065
|
-
import { __ as
|
|
6183
|
+
import { __ as __40 } from "@wordpress/i18n";
|
|
6066
6184
|
var positionOptions = [
|
|
6067
|
-
{ label:
|
|
6068
|
-
{ label:
|
|
6069
|
-
{ label:
|
|
6070
|
-
{ label:
|
|
6071
|
-
{ label:
|
|
6072
|
-
{ label:
|
|
6073
|
-
{ label:
|
|
6074
|
-
{ label:
|
|
6075
|
-
{ label:
|
|
6076
|
-
{ label:
|
|
6185
|
+
{ label: __40("Center center", "elementor"), value: "center center" },
|
|
6186
|
+
{ label: __40("Center left", "elementor"), value: "center left" },
|
|
6187
|
+
{ label: __40("Center right", "elementor"), value: "center right" },
|
|
6188
|
+
{ label: __40("Top center", "elementor"), value: "top center" },
|
|
6189
|
+
{ label: __40("Top left", "elementor"), value: "top left" },
|
|
6190
|
+
{ label: __40("Top right", "elementor"), value: "top right" },
|
|
6191
|
+
{ label: __40("Bottom center", "elementor"), value: "bottom center" },
|
|
6192
|
+
{ label: __40("Bottom left", "elementor"), value: "bottom left" },
|
|
6193
|
+
{ label: __40("Bottom right", "elementor"), value: "bottom right" },
|
|
6194
|
+
{ label: __40("Custom", "elementor"), value: "custom" }
|
|
6077
6195
|
];
|
|
6078
6196
|
var PositionControl = () => {
|
|
6079
6197
|
const positionContext = useBoundProp(positionPropTypeUtil);
|
|
6080
|
-
const stringPropContext = useBoundProp(
|
|
6198
|
+
const stringPropContext = useBoundProp(stringPropTypeUtil18);
|
|
6081
6199
|
const isCustom = !!positionContext.value;
|
|
6082
6200
|
const placeholder = positionContext.placeholder ? "custom" : stringPropContext.placeholder ?? null;
|
|
6083
6201
|
const handlePositionChange = (event) => {
|
|
@@ -6088,7 +6206,7 @@ var PositionControl = () => {
|
|
|
6088
6206
|
stringPropContext.setValue(value);
|
|
6089
6207
|
}
|
|
6090
6208
|
};
|
|
6091
|
-
return /* @__PURE__ */
|
|
6209
|
+
return /* @__PURE__ */ React91.createElement(Grid19, { container: true, spacing: 1.5 }, /* @__PURE__ */ React91.createElement(Grid19, { item: true, xs: 12 }, /* @__PURE__ */ React91.createElement(Grid19, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React91.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React91.createElement(ControlFormLabel, null, __40("Object position", "elementor"))), /* @__PURE__ */ React91.createElement(Grid19, { item: true, xs: 6, sx: { overflow: "hidden" } }, /* @__PURE__ */ React91.createElement(
|
|
6092
6210
|
Select5,
|
|
6093
6211
|
{
|
|
6094
6212
|
size: "tiny",
|
|
@@ -6099,33 +6217,33 @@ var PositionControl = () => {
|
|
|
6099
6217
|
renderValue: (selectedValue) => getSelectRenderValue(positionOptions, placeholder, selectedValue),
|
|
6100
6218
|
fullWidth: true
|
|
6101
6219
|
},
|
|
6102
|
-
positionOptions.map(({ label, value }) => /* @__PURE__ */
|
|
6103
|
-
)))), isCustom && /* @__PURE__ */
|
|
6220
|
+
positionOptions.map(({ label, value }) => /* @__PURE__ */ React91.createElement(MenuListItem7, { key: value, value: value ?? "" }, label))
|
|
6221
|
+
)))), isCustom && /* @__PURE__ */ React91.createElement(PropProvider, { ...positionContext }, /* @__PURE__ */ React91.createElement(Grid19, { item: true, xs: 12 }, /* @__PURE__ */ React91.createElement(Grid19, { container: true, spacing: 1.5 }, /* @__PURE__ */ React91.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React91.createElement(PropKeyProvider, { bind: "x" }, /* @__PURE__ */ React91.createElement(
|
|
6104
6222
|
SizeControl,
|
|
6105
6223
|
{
|
|
6106
|
-
startIcon: /* @__PURE__ */
|
|
6224
|
+
startIcon: /* @__PURE__ */ React91.createElement(LetterXIcon2, { fontSize: "tiny" }),
|
|
6107
6225
|
min: -Number.MAX_SAFE_INTEGER
|
|
6108
6226
|
}
|
|
6109
|
-
))), /* @__PURE__ */
|
|
6227
|
+
))), /* @__PURE__ */ React91.createElement(Grid19, { item: true, xs: 6 }, /* @__PURE__ */ React91.createElement(PropKeyProvider, { bind: "y" }, /* @__PURE__ */ React91.createElement(
|
|
6110
6228
|
SizeControl,
|
|
6111
6229
|
{
|
|
6112
|
-
startIcon: /* @__PURE__ */
|
|
6230
|
+
startIcon: /* @__PURE__ */ React91.createElement(LetterYIcon2, { fontSize: "tiny" }),
|
|
6113
6231
|
min: -Number.MAX_SAFE_INTEGER
|
|
6114
6232
|
}
|
|
6115
6233
|
)))))));
|
|
6116
6234
|
};
|
|
6117
6235
|
|
|
6118
6236
|
// src/controls/transform-control/transform-repeater-control.tsx
|
|
6119
|
-
import * as
|
|
6237
|
+
import * as React104 from "react";
|
|
6120
6238
|
import { useRef as useRef24 } from "react";
|
|
6121
6239
|
import { transformFunctionsPropTypeUtil, transformPropTypeUtil } from "@elementor/editor-props";
|
|
6122
6240
|
import { AdjustmentsIcon as AdjustmentsIcon2, InfoCircleFilledIcon as InfoCircleFilledIcon2 } from "@elementor/icons";
|
|
6123
6241
|
import { bindTrigger as bindTrigger5, Box as Box19, IconButton as IconButton7, Tooltip as Tooltip8, Typography as Typography7, usePopupState as usePopupState8 } from "@elementor/ui";
|
|
6124
|
-
import { __ as
|
|
6242
|
+
import { __ as __50 } from "@wordpress/i18n";
|
|
6125
6243
|
|
|
6126
6244
|
// src/controls/transform-control/initial-values.ts
|
|
6127
6245
|
import {
|
|
6128
|
-
numberPropTypeUtil as
|
|
6246
|
+
numberPropTypeUtil as numberPropTypeUtil6,
|
|
6129
6247
|
rotateTransformPropTypeUtil,
|
|
6130
6248
|
scaleTransformPropTypeUtil,
|
|
6131
6249
|
skewTransformPropTypeUtil
|
|
@@ -6160,9 +6278,9 @@ var initialTransformValue = {
|
|
|
6160
6278
|
}
|
|
6161
6279
|
};
|
|
6162
6280
|
var initialScaleValue = scaleTransformPropTypeUtil.create({
|
|
6163
|
-
x:
|
|
6164
|
-
y:
|
|
6165
|
-
z:
|
|
6281
|
+
x: numberPropTypeUtil6.create(defaultValues.scale),
|
|
6282
|
+
y: numberPropTypeUtil6.create(defaultValues.scale),
|
|
6283
|
+
z: numberPropTypeUtil6.create(defaultValues.scale)
|
|
6166
6284
|
});
|
|
6167
6285
|
var initialRotateValue = rotateTransformPropTypeUtil.create({
|
|
6168
6286
|
x: { $$type: "size", value: { size: defaultValues.rotate.size, unit: defaultValues.rotate.unit } },
|
|
@@ -6175,24 +6293,24 @@ var initialSkewValue = skewTransformPropTypeUtil.create({
|
|
|
6175
6293
|
});
|
|
6176
6294
|
|
|
6177
6295
|
// src/controls/transform-control/transform-content.tsx
|
|
6178
|
-
import * as
|
|
6296
|
+
import * as React98 from "react";
|
|
6179
6297
|
import { Box as Box16, Tab as Tab2, TabPanel as TabPanel2, Tabs as Tabs2 } from "@elementor/ui";
|
|
6180
|
-
import { __ as
|
|
6298
|
+
import { __ as __45 } from "@wordpress/i18n";
|
|
6181
6299
|
|
|
6182
6300
|
// src/controls/transform-control/functions/move.tsx
|
|
6183
|
-
import * as
|
|
6301
|
+
import * as React93 from "react";
|
|
6184
6302
|
import { useRef as useRef17 } from "react";
|
|
6185
6303
|
import { moveTransformPropTypeUtil } from "@elementor/editor-props";
|
|
6186
6304
|
import { ArrowDownLeftIcon, ArrowDownSmallIcon, ArrowRightIcon } from "@elementor/icons";
|
|
6187
6305
|
import { Grid as Grid21 } from "@elementor/ui";
|
|
6188
|
-
import { __ as
|
|
6306
|
+
import { __ as __41 } from "@wordpress/i18n";
|
|
6189
6307
|
|
|
6190
6308
|
// src/controls/transform-control/functions/axis-row.tsx
|
|
6191
|
-
import * as
|
|
6309
|
+
import * as React92 from "react";
|
|
6192
6310
|
import { Grid as Grid20 } from "@elementor/ui";
|
|
6193
6311
|
var AxisRow = ({ label, bind, startIcon, anchorRef, units: units2, variant = "angle" }) => {
|
|
6194
6312
|
const safeId = label.replace(/\s+/g, "-").toLowerCase();
|
|
6195
|
-
return /* @__PURE__ */
|
|
6313
|
+
return /* @__PURE__ */ React92.createElement(Grid20, { item: true, xs: 12 }, /* @__PURE__ */ React92.createElement(PopoverGridContainer, { ref: anchorRef }, /* @__PURE__ */ React92.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React92.createElement(ControlLabel, { htmlFor: safeId }, label)), /* @__PURE__ */ React92.createElement(Grid20, { item: true, xs: 6 }, /* @__PURE__ */ React92.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React92.createElement(
|
|
6196
6314
|
SizeControl,
|
|
6197
6315
|
{
|
|
6198
6316
|
anchorRef,
|
|
@@ -6208,28 +6326,28 @@ var AxisRow = ({ label, bind, startIcon, anchorRef, units: units2, variant = "an
|
|
|
6208
6326
|
// src/controls/transform-control/functions/move.tsx
|
|
6209
6327
|
var moveAxisControls = [
|
|
6210
6328
|
{
|
|
6211
|
-
label:
|
|
6329
|
+
label: __41("Move X", "elementor"),
|
|
6212
6330
|
bind: "x",
|
|
6213
|
-
startIcon: /* @__PURE__ */
|
|
6331
|
+
startIcon: /* @__PURE__ */ React93.createElement(ArrowRightIcon, { fontSize: "tiny" }),
|
|
6214
6332
|
units: ["px", "%", "em", "rem", "vw"]
|
|
6215
6333
|
},
|
|
6216
6334
|
{
|
|
6217
|
-
label:
|
|
6335
|
+
label: __41("Move Y", "elementor"),
|
|
6218
6336
|
bind: "y",
|
|
6219
|
-
startIcon: /* @__PURE__ */
|
|
6337
|
+
startIcon: /* @__PURE__ */ React93.createElement(ArrowDownSmallIcon, { fontSize: "tiny" }),
|
|
6220
6338
|
units: ["px", "%", "em", "rem", "vh"]
|
|
6221
6339
|
},
|
|
6222
6340
|
{
|
|
6223
|
-
label:
|
|
6341
|
+
label: __41("Move Z", "elementor"),
|
|
6224
6342
|
bind: "z",
|
|
6225
|
-
startIcon: /* @__PURE__ */
|
|
6343
|
+
startIcon: /* @__PURE__ */ React93.createElement(ArrowDownLeftIcon, { fontSize: "tiny" }),
|
|
6226
6344
|
units: ["px", "%", "em", "rem", "vw", "vh"]
|
|
6227
6345
|
}
|
|
6228
6346
|
];
|
|
6229
6347
|
var Move = () => {
|
|
6230
6348
|
const context = useBoundProp(moveTransformPropTypeUtil);
|
|
6231
6349
|
const rowRefs = [useRef17(null), useRef17(null), useRef17(null)];
|
|
6232
|
-
return /* @__PURE__ */
|
|
6350
|
+
return /* @__PURE__ */ React93.createElement(Grid21, { container: true, spacing: 1.5 }, /* @__PURE__ */ React93.createElement(PropProvider, { ...context }, /* @__PURE__ */ React93.createElement(PropKeyProvider, { bind: TransformFunctionKeys.move }, moveAxisControls.map((control, index) => /* @__PURE__ */ React93.createElement(
|
|
6233
6351
|
AxisRow,
|
|
6234
6352
|
{
|
|
6235
6353
|
key: control.bind,
|
|
@@ -6242,34 +6360,34 @@ var Move = () => {
|
|
|
6242
6360
|
};
|
|
6243
6361
|
|
|
6244
6362
|
// src/controls/transform-control/functions/rotate.tsx
|
|
6245
|
-
import * as
|
|
6363
|
+
import * as React94 from "react";
|
|
6246
6364
|
import { useRef as useRef18 } from "react";
|
|
6247
6365
|
import { rotateTransformPropTypeUtil as rotateTransformPropTypeUtil2 } from "@elementor/editor-props";
|
|
6248
6366
|
import { Arrow360Icon, RotateClockwiseIcon } from "@elementor/icons";
|
|
6249
6367
|
import { Grid as Grid22 } from "@elementor/ui";
|
|
6250
|
-
import { __ as
|
|
6368
|
+
import { __ as __42 } from "@wordpress/i18n";
|
|
6251
6369
|
var rotateAxisControls = [
|
|
6252
6370
|
{
|
|
6253
|
-
label:
|
|
6371
|
+
label: __42("Rotate X", "elementor"),
|
|
6254
6372
|
bind: "x",
|
|
6255
|
-
startIcon: /* @__PURE__ */
|
|
6373
|
+
startIcon: /* @__PURE__ */ React94.createElement(Arrow360Icon, { fontSize: "tiny" })
|
|
6256
6374
|
},
|
|
6257
6375
|
{
|
|
6258
|
-
label:
|
|
6376
|
+
label: __42("Rotate Y", "elementor"),
|
|
6259
6377
|
bind: "y",
|
|
6260
|
-
startIcon: /* @__PURE__ */
|
|
6378
|
+
startIcon: /* @__PURE__ */ React94.createElement(Arrow360Icon, { fontSize: "tiny", style: { transform: "scaleX(-1) rotate(-90deg)" } })
|
|
6261
6379
|
},
|
|
6262
6380
|
{
|
|
6263
|
-
label:
|
|
6381
|
+
label: __42("Rotate Z", "elementor"),
|
|
6264
6382
|
bind: "z",
|
|
6265
|
-
startIcon: /* @__PURE__ */
|
|
6383
|
+
startIcon: /* @__PURE__ */ React94.createElement(RotateClockwiseIcon, { fontSize: "tiny" })
|
|
6266
6384
|
}
|
|
6267
6385
|
];
|
|
6268
6386
|
var rotateUnits = ["deg", "rad", "grad", "turn"];
|
|
6269
6387
|
var Rotate = () => {
|
|
6270
6388
|
const context = useBoundProp(rotateTransformPropTypeUtil2);
|
|
6271
6389
|
const rowRefs = [useRef18(null), useRef18(null), useRef18(null)];
|
|
6272
|
-
return /* @__PURE__ */
|
|
6390
|
+
return /* @__PURE__ */ React94.createElement(Grid22, { container: true, spacing: 1.5 }, /* @__PURE__ */ React94.createElement(PropProvider, { ...context }, /* @__PURE__ */ React94.createElement(PropKeyProvider, { bind: TransformFunctionKeys.rotate }, rotateAxisControls.map((control, index) => /* @__PURE__ */ React94.createElement(
|
|
6273
6391
|
AxisRow,
|
|
6274
6392
|
{
|
|
6275
6393
|
key: control.bind,
|
|
@@ -6281,68 +6399,68 @@ var Rotate = () => {
|
|
|
6281
6399
|
};
|
|
6282
6400
|
|
|
6283
6401
|
// src/controls/transform-control/functions/scale.tsx
|
|
6284
|
-
import * as
|
|
6402
|
+
import * as React96 from "react";
|
|
6285
6403
|
import { useRef as useRef19 } from "react";
|
|
6286
6404
|
import { scaleTransformPropTypeUtil as scaleTransformPropTypeUtil2 } from "@elementor/editor-props";
|
|
6287
6405
|
import { ArrowDownLeftIcon as ArrowDownLeftIcon2, ArrowDownSmallIcon as ArrowDownSmallIcon2, ArrowRightIcon as ArrowRightIcon2 } from "@elementor/icons";
|
|
6288
6406
|
import { Grid as Grid24 } from "@elementor/ui";
|
|
6289
|
-
import { __ as
|
|
6407
|
+
import { __ as __43 } from "@wordpress/i18n";
|
|
6290
6408
|
|
|
6291
6409
|
// src/controls/transform-control/functions/scale-axis-row.tsx
|
|
6292
|
-
import * as
|
|
6410
|
+
import * as React95 from "react";
|
|
6293
6411
|
import { Grid as Grid23 } from "@elementor/ui";
|
|
6294
6412
|
var ScaleAxisRow = ({ label, bind, startIcon, anchorRef }) => {
|
|
6295
|
-
return /* @__PURE__ */
|
|
6413
|
+
return /* @__PURE__ */ React95.createElement(Grid23, { item: true, xs: 12 }, /* @__PURE__ */ React95.createElement(PopoverGridContainer, { ref: anchorRef }, /* @__PURE__ */ React95.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React95.createElement(ControlLabel, null, label)), /* @__PURE__ */ React95.createElement(Grid23, { item: true, xs: 6 }, /* @__PURE__ */ React95.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React95.createElement(NumberControl, { step: 0.1, placeholder: "1", startIcon })))));
|
|
6296
6414
|
};
|
|
6297
6415
|
|
|
6298
6416
|
// src/controls/transform-control/functions/scale.tsx
|
|
6299
6417
|
var scaleAxisControls = [
|
|
6300
6418
|
{
|
|
6301
|
-
label:
|
|
6419
|
+
label: __43("Scale X", "elementor"),
|
|
6302
6420
|
bind: "x",
|
|
6303
|
-
startIcon: /* @__PURE__ */
|
|
6421
|
+
startIcon: /* @__PURE__ */ React96.createElement(ArrowRightIcon2, { fontSize: "tiny" })
|
|
6304
6422
|
},
|
|
6305
6423
|
{
|
|
6306
|
-
label:
|
|
6424
|
+
label: __43("Scale Y", "elementor"),
|
|
6307
6425
|
bind: "y",
|
|
6308
|
-
startIcon: /* @__PURE__ */
|
|
6426
|
+
startIcon: /* @__PURE__ */ React96.createElement(ArrowDownSmallIcon2, { fontSize: "tiny" })
|
|
6309
6427
|
},
|
|
6310
6428
|
{
|
|
6311
|
-
label:
|
|
6429
|
+
label: __43("Scale Z", "elementor"),
|
|
6312
6430
|
bind: "z",
|
|
6313
|
-
startIcon: /* @__PURE__ */
|
|
6431
|
+
startIcon: /* @__PURE__ */ React96.createElement(ArrowDownLeftIcon2, { fontSize: "tiny" })
|
|
6314
6432
|
}
|
|
6315
6433
|
];
|
|
6316
6434
|
var Scale = () => {
|
|
6317
6435
|
const context = useBoundProp(scaleTransformPropTypeUtil2);
|
|
6318
6436
|
const rowRefs = [useRef19(null), useRef19(null), useRef19(null)];
|
|
6319
|
-
return /* @__PURE__ */
|
|
6437
|
+
return /* @__PURE__ */ React96.createElement(Grid24, { container: true, spacing: 1.5 }, /* @__PURE__ */ React96.createElement(PropProvider, { ...context }, /* @__PURE__ */ React96.createElement(PropKeyProvider, { bind: TransformFunctionKeys.scale }, scaleAxisControls.map((control, index) => /* @__PURE__ */ React96.createElement(ScaleAxisRow, { key: control.bind, ...control, anchorRef: rowRefs[index] })))));
|
|
6320
6438
|
};
|
|
6321
6439
|
|
|
6322
6440
|
// src/controls/transform-control/functions/skew.tsx
|
|
6323
|
-
import * as
|
|
6441
|
+
import * as React97 from "react";
|
|
6324
6442
|
import { useRef as useRef20 } from "react";
|
|
6325
6443
|
import { skewTransformPropTypeUtil as skewTransformPropTypeUtil2 } from "@elementor/editor-props";
|
|
6326
6444
|
import { ArrowLeftIcon, ArrowRightIcon as ArrowRightIcon3 } from "@elementor/icons";
|
|
6327
6445
|
import { Grid as Grid25 } from "@elementor/ui";
|
|
6328
|
-
import { __ as
|
|
6446
|
+
import { __ as __44 } from "@wordpress/i18n";
|
|
6329
6447
|
var skewAxisControls = [
|
|
6330
6448
|
{
|
|
6331
|
-
label:
|
|
6449
|
+
label: __44("Skew X", "elementor"),
|
|
6332
6450
|
bind: "x",
|
|
6333
|
-
startIcon: /* @__PURE__ */
|
|
6451
|
+
startIcon: /* @__PURE__ */ React97.createElement(ArrowRightIcon3, { fontSize: "tiny" })
|
|
6334
6452
|
},
|
|
6335
6453
|
{
|
|
6336
|
-
label:
|
|
6454
|
+
label: __44("Skew Y", "elementor"),
|
|
6337
6455
|
bind: "y",
|
|
6338
|
-
startIcon: /* @__PURE__ */
|
|
6456
|
+
startIcon: /* @__PURE__ */ React97.createElement(ArrowLeftIcon, { fontSize: "tiny", style: { transform: "scaleX(-1) rotate(-90deg)" } })
|
|
6339
6457
|
}
|
|
6340
6458
|
];
|
|
6341
6459
|
var skewUnits = ["deg", "rad", "grad", "turn"];
|
|
6342
6460
|
var Skew = () => {
|
|
6343
6461
|
const context = useBoundProp(skewTransformPropTypeUtil2);
|
|
6344
6462
|
const rowRefs = [useRef20(null), useRef20(null), useRef20(null)];
|
|
6345
|
-
return /* @__PURE__ */
|
|
6463
|
+
return /* @__PURE__ */ React97.createElement(Grid25, { container: true, spacing: 1.5 }, /* @__PURE__ */ React97.createElement(PropProvider, { ...context }, /* @__PURE__ */ React97.createElement(PropKeyProvider, { bind: TransformFunctionKeys.skew }, skewAxisControls.map((control, index) => /* @__PURE__ */ React97.createElement(
|
|
6346
6464
|
AxisRow,
|
|
6347
6465
|
{
|
|
6348
6466
|
key: control.bind,
|
|
@@ -6447,7 +6565,7 @@ var TransformContent = () => {
|
|
|
6447
6565
|
rotate: initialRotateValue.value,
|
|
6448
6566
|
skew: initialSkewValue.value
|
|
6449
6567
|
});
|
|
6450
|
-
return /* @__PURE__ */
|
|
6568
|
+
return /* @__PURE__ */ React98.createElement(PopoverContent, null, /* @__PURE__ */ React98.createElement(Box16, { sx: { width: "100%" } }, /* @__PURE__ */ React98.createElement(Box16, { sx: { borderBottom: 1, borderColor: "divider" } }, /* @__PURE__ */ React98.createElement(
|
|
6451
6569
|
Tabs2,
|
|
6452
6570
|
{
|
|
6453
6571
|
size: "small",
|
|
@@ -6458,37 +6576,37 @@ var TransformContent = () => {
|
|
|
6458
6576
|
}
|
|
6459
6577
|
},
|
|
6460
6578
|
...getTabsProps(),
|
|
6461
|
-
"aria-label":
|
|
6579
|
+
"aria-label": __45("Transform", "elementor")
|
|
6462
6580
|
},
|
|
6463
|
-
/* @__PURE__ */
|
|
6464
|
-
/* @__PURE__ */
|
|
6465
|
-
/* @__PURE__ */
|
|
6466
|
-
/* @__PURE__ */
|
|
6467
|
-
)), /* @__PURE__ */
|
|
6581
|
+
/* @__PURE__ */ React98.createElement(Tab2, { label: __45("Move", "elementor"), ...getTabProps(TransformFunctionKeys.move) }),
|
|
6582
|
+
/* @__PURE__ */ React98.createElement(Tab2, { label: __45("Scale", "elementor"), ...getTabProps(TransformFunctionKeys.scale) }),
|
|
6583
|
+
/* @__PURE__ */ React98.createElement(Tab2, { label: __45("Rotate", "elementor"), ...getTabProps(TransformFunctionKeys.rotate) }),
|
|
6584
|
+
/* @__PURE__ */ React98.createElement(Tab2, { label: __45("Skew", "elementor"), ...getTabProps(TransformFunctionKeys.skew) })
|
|
6585
|
+
)), /* @__PURE__ */ React98.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.move) }, /* @__PURE__ */ React98.createElement(Move, null)), /* @__PURE__ */ React98.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.scale) }, /* @__PURE__ */ React98.createElement(Scale, null)), /* @__PURE__ */ React98.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.rotate) }, /* @__PURE__ */ React98.createElement(Rotate, null)), /* @__PURE__ */ React98.createElement(TabPanel2, { sx: { p: 1.5 }, ...getTabPanelProps(TransformFunctionKeys.skew) }, /* @__PURE__ */ React98.createElement(Skew, null))));
|
|
6468
6586
|
};
|
|
6469
6587
|
|
|
6470
6588
|
// src/controls/transform-control/transform-icon.tsx
|
|
6471
|
-
import * as
|
|
6589
|
+
import * as React99 from "react";
|
|
6472
6590
|
import { ArrowAutofitHeightIcon, ArrowsMaximizeIcon as ArrowsMaximizeIcon2, RotateClockwise2Icon, SkewXIcon } from "@elementor/icons";
|
|
6473
6591
|
var TransformIcon = ({ value }) => {
|
|
6474
6592
|
switch (value.$$type) {
|
|
6475
6593
|
case TransformFunctionKeys.move:
|
|
6476
|
-
return /* @__PURE__ */
|
|
6594
|
+
return /* @__PURE__ */ React99.createElement(ArrowsMaximizeIcon2, { fontSize: "tiny" });
|
|
6477
6595
|
case TransformFunctionKeys.scale:
|
|
6478
|
-
return /* @__PURE__ */
|
|
6596
|
+
return /* @__PURE__ */ React99.createElement(ArrowAutofitHeightIcon, { fontSize: "tiny" });
|
|
6479
6597
|
case TransformFunctionKeys.rotate:
|
|
6480
|
-
return /* @__PURE__ */
|
|
6598
|
+
return /* @__PURE__ */ React99.createElement(RotateClockwise2Icon, { fontSize: "tiny" });
|
|
6481
6599
|
case TransformFunctionKeys.skew:
|
|
6482
|
-
return /* @__PURE__ */
|
|
6600
|
+
return /* @__PURE__ */ React99.createElement(SkewXIcon, { fontSize: "tiny" });
|
|
6483
6601
|
default:
|
|
6484
6602
|
return null;
|
|
6485
6603
|
}
|
|
6486
6604
|
};
|
|
6487
6605
|
|
|
6488
6606
|
// src/controls/transform-control/transform-label.tsx
|
|
6489
|
-
import * as
|
|
6607
|
+
import * as React100 from "react";
|
|
6490
6608
|
import { Box as Box17 } from "@elementor/ui";
|
|
6491
|
-
import { __ as
|
|
6609
|
+
import { __ as __46 } from "@wordpress/i18n";
|
|
6492
6610
|
var orderedAxis = ["x", "y", "z"];
|
|
6493
6611
|
var formatLabel = (value, functionType) => {
|
|
6494
6612
|
return orderedAxis.map((axisKey) => {
|
|
@@ -6506,102 +6624,102 @@ var TransformLabel = (props) => {
|
|
|
6506
6624
|
const { $$type, value } = props.value;
|
|
6507
6625
|
switch ($$type) {
|
|
6508
6626
|
case TransformFunctionKeys.move:
|
|
6509
|
-
return /* @__PURE__ */
|
|
6627
|
+
return /* @__PURE__ */ React100.createElement(Label2, { label: __46("Move", "elementor"), value: formatLabel(value, "move") });
|
|
6510
6628
|
case TransformFunctionKeys.scale:
|
|
6511
|
-
return /* @__PURE__ */
|
|
6629
|
+
return /* @__PURE__ */ React100.createElement(Label2, { label: __46("Scale", "elementor"), value: formatLabel(value, "scale") });
|
|
6512
6630
|
case TransformFunctionKeys.rotate:
|
|
6513
|
-
return /* @__PURE__ */
|
|
6631
|
+
return /* @__PURE__ */ React100.createElement(Label2, { label: __46("Rotate", "elementor"), value: formatLabel(value, "rotate") });
|
|
6514
6632
|
case TransformFunctionKeys.skew:
|
|
6515
|
-
return /* @__PURE__ */
|
|
6633
|
+
return /* @__PURE__ */ React100.createElement(Label2, { label: __46("Skew", "elementor"), value: formatLabel(value, "skew") });
|
|
6516
6634
|
default:
|
|
6517
6635
|
return "";
|
|
6518
6636
|
}
|
|
6519
6637
|
};
|
|
6520
6638
|
var Label2 = ({ label, value }) => {
|
|
6521
|
-
return /* @__PURE__ */
|
|
6639
|
+
return /* @__PURE__ */ React100.createElement(Box17, { component: "span" }, label, ": ", value);
|
|
6522
6640
|
};
|
|
6523
6641
|
|
|
6524
6642
|
// src/controls/transform-control/transform-settings-control.tsx
|
|
6525
|
-
import * as
|
|
6643
|
+
import * as React103 from "react";
|
|
6526
6644
|
import { PopoverHeader as PopoverHeader4 } from "@elementor/editor-ui";
|
|
6527
6645
|
import { AdjustmentsIcon } from "@elementor/icons";
|
|
6528
6646
|
import { bindPopover as bindPopover6, Box as Box18, Divider as Divider4, Popover as Popover6 } from "@elementor/ui";
|
|
6529
|
-
import { __ as
|
|
6647
|
+
import { __ as __49 } from "@wordpress/i18n";
|
|
6530
6648
|
|
|
6531
6649
|
// src/controls/transform-control/transform-base-controls/children-perspective-control.tsx
|
|
6532
|
-
import * as
|
|
6650
|
+
import * as React101 from "react";
|
|
6533
6651
|
import { useRef as useRef22 } from "react";
|
|
6534
6652
|
import { perspectiveOriginPropTypeUtil } from "@elementor/editor-props";
|
|
6535
6653
|
import { Grid as Grid26, Stack as Stack15 } from "@elementor/ui";
|
|
6536
|
-
import { __ as
|
|
6654
|
+
import { __ as __47 } from "@wordpress/i18n";
|
|
6537
6655
|
var ORIGIN_UNITS = ["px", "%", "em", "rem"];
|
|
6538
6656
|
var PERSPECTIVE_CONTROL_FIELD = {
|
|
6539
|
-
label:
|
|
6657
|
+
label: __47("Perspective", "elementor"),
|
|
6540
6658
|
bind: "perspective",
|
|
6541
6659
|
units: ["px", "em", "rem", "vw", "vh"]
|
|
6542
6660
|
};
|
|
6543
6661
|
var CHILDREN_PERSPECTIVE_FIELDS = [
|
|
6544
6662
|
{
|
|
6545
|
-
label:
|
|
6663
|
+
label: __47("Origin X", "elementor"),
|
|
6546
6664
|
bind: "x",
|
|
6547
6665
|
units: ORIGIN_UNITS
|
|
6548
6666
|
},
|
|
6549
6667
|
{
|
|
6550
|
-
label:
|
|
6668
|
+
label: __47("Origin Y", "elementor"),
|
|
6551
6669
|
bind: "y",
|
|
6552
6670
|
units: ORIGIN_UNITS
|
|
6553
6671
|
}
|
|
6554
6672
|
];
|
|
6555
6673
|
var ChildrenPerspectiveControl = () => {
|
|
6556
|
-
return /* @__PURE__ */
|
|
6674
|
+
return /* @__PURE__ */ React101.createElement(Stack15, { direction: "column", spacing: 1.5 }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, __47("Children perspective", "elementor")), /* @__PURE__ */ React101.createElement(PerspectiveControl, null), /* @__PURE__ */ React101.createElement(PerspectiveOriginControl, null));
|
|
6557
6675
|
};
|
|
6558
|
-
var PerspectiveControl = () => /* @__PURE__ */
|
|
6559
|
-
var PerspectiveOriginControl = () => /* @__PURE__ */
|
|
6676
|
+
var PerspectiveControl = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "perspective" }, /* @__PURE__ */ React101.createElement(ControlFields, { control: PERSPECTIVE_CONTROL_FIELD, key: PERSPECTIVE_CONTROL_FIELD.bind }));
|
|
6677
|
+
var PerspectiveOriginControl = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "perspective-origin" }, /* @__PURE__ */ React101.createElement(PerspectiveOriginControlProvider, null));
|
|
6560
6678
|
var PerspectiveOriginControlProvider = () => {
|
|
6561
6679
|
const context = useBoundProp(perspectiveOriginPropTypeUtil);
|
|
6562
|
-
return /* @__PURE__ */
|
|
6680
|
+
return /* @__PURE__ */ React101.createElement(PropProvider, { ...context }, CHILDREN_PERSPECTIVE_FIELDS.map((control) => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: control.bind, key: control.bind }, /* @__PURE__ */ React101.createElement(ControlFields, { control }))));
|
|
6563
6681
|
};
|
|
6564
6682
|
var ControlFields = ({ control }) => {
|
|
6565
6683
|
const rowRef = useRef22(null);
|
|
6566
|
-
return /* @__PURE__ */
|
|
6684
|
+
return /* @__PURE__ */ React101.createElement(PopoverGridContainer, { ref: rowRef }, /* @__PURE__ */ React101.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, control.label)), /* @__PURE__ */ React101.createElement(Grid26, { item: true, xs: 6 }, /* @__PURE__ */ React101.createElement(SizeControl, { variant: "length", units: control.units, anchorRef: rowRef, disableCustom: true })));
|
|
6567
6685
|
};
|
|
6568
6686
|
|
|
6569
6687
|
// src/controls/transform-control/transform-base-controls/transform-origin-control.tsx
|
|
6570
|
-
import * as
|
|
6688
|
+
import * as React102 from "react";
|
|
6571
6689
|
import { useRef as useRef23 } from "react";
|
|
6572
6690
|
import { transformOriginPropTypeUtil } from "@elementor/editor-props";
|
|
6573
6691
|
import { Grid as Grid27, Stack as Stack16 } from "@elementor/ui";
|
|
6574
|
-
import { __ as
|
|
6692
|
+
import { __ as __48 } from "@wordpress/i18n";
|
|
6575
6693
|
var TRANSFORM_ORIGIN_UNITS = ["px", "%", "em", "rem"];
|
|
6576
6694
|
var TRANSFORM_ORIGIN_UNITS_Z_AXIS = TRANSFORM_ORIGIN_UNITS.filter((unit) => unit !== "%");
|
|
6577
6695
|
var TRANSFORM_ORIGIN_FIELDS = [
|
|
6578
6696
|
{
|
|
6579
|
-
label:
|
|
6697
|
+
label: __48("Origin X", "elementor"),
|
|
6580
6698
|
bind: "x",
|
|
6581
6699
|
units: TRANSFORM_ORIGIN_UNITS
|
|
6582
6700
|
},
|
|
6583
6701
|
{
|
|
6584
|
-
label:
|
|
6702
|
+
label: __48("Origin Y", "elementor"),
|
|
6585
6703
|
bind: "y",
|
|
6586
6704
|
units: TRANSFORM_ORIGIN_UNITS
|
|
6587
6705
|
},
|
|
6588
6706
|
{
|
|
6589
|
-
label:
|
|
6707
|
+
label: __48("Origin Z", "elementor"),
|
|
6590
6708
|
bind: "z",
|
|
6591
6709
|
units: TRANSFORM_ORIGIN_UNITS_Z_AXIS
|
|
6592
6710
|
}
|
|
6593
6711
|
];
|
|
6594
6712
|
var TransformOriginControl = () => {
|
|
6595
|
-
return /* @__PURE__ */
|
|
6713
|
+
return /* @__PURE__ */ React102.createElement(Stack16, { direction: "column", spacing: 1.5 }, /* @__PURE__ */ React102.createElement(ControlFormLabel, null, __48("Transform", "elementor")), TRANSFORM_ORIGIN_FIELDS.map((control) => /* @__PURE__ */ React102.createElement(ControlFields2, { control, key: control.bind })));
|
|
6596
6714
|
};
|
|
6597
6715
|
var ControlFields2 = ({ control }) => {
|
|
6598
6716
|
const context = useBoundProp(transformOriginPropTypeUtil);
|
|
6599
6717
|
const rowRef = useRef23(null);
|
|
6600
|
-
return /* @__PURE__ */
|
|
6718
|
+
return /* @__PURE__ */ React102.createElement(PropProvider, { ...context }, /* @__PURE__ */ React102.createElement(PropKeyProvider, { bind: control.bind }, /* @__PURE__ */ React102.createElement(PopoverGridContainer, { ref: rowRef }, /* @__PURE__ */ React102.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React102.createElement(ControlFormLabel, null, control.label)), /* @__PURE__ */ React102.createElement(Grid27, { item: true, xs: 6 }, /* @__PURE__ */ React102.createElement(SizeControl, { variant: "length", units: control.units, anchorRef: rowRef })))));
|
|
6601
6719
|
};
|
|
6602
6720
|
|
|
6603
6721
|
// src/controls/transform-control/transform-settings-control.tsx
|
|
6604
|
-
var
|
|
6722
|
+
var SIZE10 = "tiny";
|
|
6605
6723
|
var TransformSettingsControl = ({
|
|
6606
6724
|
popupState,
|
|
6607
6725
|
anchorRef,
|
|
@@ -6611,7 +6729,7 @@ var TransformSettingsControl = ({
|
|
|
6611
6729
|
...popupState,
|
|
6612
6730
|
anchorEl: anchorRef.current ?? void 0
|
|
6613
6731
|
});
|
|
6614
|
-
return /* @__PURE__ */
|
|
6732
|
+
return /* @__PURE__ */ React103.createElement(
|
|
6615
6733
|
Popover6,
|
|
6616
6734
|
{
|
|
6617
6735
|
disablePortal: true,
|
|
@@ -6626,45 +6744,45 @@ var TransformSettingsControl = ({
|
|
|
6626
6744
|
},
|
|
6627
6745
|
...popupProps
|
|
6628
6746
|
},
|
|
6629
|
-
/* @__PURE__ */
|
|
6747
|
+
/* @__PURE__ */ React103.createElement(
|
|
6630
6748
|
PopoverHeader4,
|
|
6631
6749
|
{
|
|
6632
|
-
title:
|
|
6750
|
+
title: __49("Transform settings", "elementor"),
|
|
6633
6751
|
onClose: popupState.close,
|
|
6634
|
-
icon: /* @__PURE__ */
|
|
6752
|
+
icon: /* @__PURE__ */ React103.createElement(AdjustmentsIcon, { fontSize: SIZE10 })
|
|
6635
6753
|
}
|
|
6636
6754
|
),
|
|
6637
|
-
/* @__PURE__ */
|
|
6638
|
-
/* @__PURE__ */
|
|
6755
|
+
/* @__PURE__ */ React103.createElement(Divider4, null),
|
|
6756
|
+
/* @__PURE__ */ React103.createElement(PopoverContent, { sx: { px: 2, py: 1.5 } }, /* @__PURE__ */ React103.createElement(PropKeyProvider, { bind: "transform-origin" }, /* @__PURE__ */ React103.createElement(TransformOriginControl, null)), showChildrenPerspective && /* @__PURE__ */ React103.createElement(React103.Fragment, null, /* @__PURE__ */ React103.createElement(Box18, { sx: { my: 0.5 } }, /* @__PURE__ */ React103.createElement(Divider4, null)), /* @__PURE__ */ React103.createElement(ChildrenPerspectiveControl, null)))
|
|
6639
6757
|
);
|
|
6640
6758
|
};
|
|
6641
6759
|
|
|
6642
6760
|
// src/controls/transform-control/transform-repeater-control.tsx
|
|
6643
|
-
var
|
|
6761
|
+
var SIZE11 = "tiny";
|
|
6644
6762
|
var TransformRepeaterControl = createControl(
|
|
6645
6763
|
({ showChildrenPerspective }) => {
|
|
6646
6764
|
const context = useBoundProp(transformPropTypeUtil);
|
|
6647
6765
|
const headerRef = useRef24(null);
|
|
6648
6766
|
const popupState = usePopupState8({ variant: "popover" });
|
|
6649
|
-
return /* @__PURE__ */
|
|
6767
|
+
return /* @__PURE__ */ React104.createElement(PropProvider, { ...context }, /* @__PURE__ */ React104.createElement(
|
|
6650
6768
|
TransformSettingsControl,
|
|
6651
6769
|
{
|
|
6652
6770
|
popupState,
|
|
6653
6771
|
anchorRef: headerRef,
|
|
6654
6772
|
showChildrenPerspective
|
|
6655
6773
|
}
|
|
6656
|
-
), /* @__PURE__ */
|
|
6774
|
+
), /* @__PURE__ */ React104.createElement(PropKeyProvider, { bind: "transform-functions" }, /* @__PURE__ */ React104.createElement(Repeater2, { headerRef, propType: context.propType, popupState })));
|
|
6657
6775
|
}
|
|
6658
6776
|
);
|
|
6659
|
-
var ToolTip = /* @__PURE__ */
|
|
6777
|
+
var ToolTip = /* @__PURE__ */ React104.createElement(
|
|
6660
6778
|
Box19,
|
|
6661
6779
|
{
|
|
6662
6780
|
component: "span",
|
|
6663
6781
|
"aria-label": void 0,
|
|
6664
6782
|
sx: { display: "flex", gap: 0.5, p: 2, width: 320, borderRadius: 1 }
|
|
6665
6783
|
},
|
|
6666
|
-
/* @__PURE__ */
|
|
6667
|
-
/* @__PURE__ */
|
|
6784
|
+
/* @__PURE__ */ React104.createElement(InfoCircleFilledIcon2, { sx: { color: "secondary.main" } }),
|
|
6785
|
+
/* @__PURE__ */ React104.createElement(Typography7, { variant: "body2", color: "text.secondary", fontSize: "14px" }, __50("You can use each kind of transform only once per element.", "elementor"))
|
|
6668
6786
|
);
|
|
6669
6787
|
var Repeater2 = ({
|
|
6670
6788
|
headerRef,
|
|
@@ -6678,21 +6796,21 @@ var Repeater2 = ({
|
|
|
6678
6796
|
return availableValues.find((value) => !transformValues?.some((item) => item.$$type === value.$$type));
|
|
6679
6797
|
};
|
|
6680
6798
|
const shouldDisableAddItem = !getInitialValue2();
|
|
6681
|
-
return /* @__PURE__ */
|
|
6799
|
+
return /* @__PURE__ */ React104.createElement(PropProvider, { ...transformFunctionsContext }, /* @__PURE__ */ React104.createElement(
|
|
6682
6800
|
ControlRepeater,
|
|
6683
6801
|
{
|
|
6684
6802
|
initial: getInitialValue2() ?? initialTransformValue,
|
|
6685
6803
|
propTypeUtil: transformFunctionsPropTypeUtil
|
|
6686
6804
|
},
|
|
6687
|
-
/* @__PURE__ */
|
|
6805
|
+
/* @__PURE__ */ React104.createElement(
|
|
6688
6806
|
RepeaterHeader,
|
|
6689
6807
|
{
|
|
6690
|
-
label:
|
|
6691
|
-
adornment: () => /* @__PURE__ */
|
|
6808
|
+
label: __50("Transform", "elementor"),
|
|
6809
|
+
adornment: () => /* @__PURE__ */ React104.createElement(ControlAdornments, { customContext: { path: ["transform"], propType } }),
|
|
6692
6810
|
ref: headerRef
|
|
6693
6811
|
},
|
|
6694
|
-
/* @__PURE__ */
|
|
6695
|
-
/* @__PURE__ */
|
|
6812
|
+
/* @__PURE__ */ React104.createElement(TransformBasePopoverTrigger, { popupState, repeaterBindKey: bind }),
|
|
6813
|
+
/* @__PURE__ */ React104.createElement(
|
|
6696
6814
|
TooltipAddItemAction,
|
|
6697
6815
|
{
|
|
6698
6816
|
disabled: shouldDisableAddItem,
|
|
@@ -6702,15 +6820,15 @@ var Repeater2 = ({
|
|
|
6702
6820
|
}
|
|
6703
6821
|
)
|
|
6704
6822
|
),
|
|
6705
|
-
/* @__PURE__ */
|
|
6823
|
+
/* @__PURE__ */ React104.createElement(ItemsContainer, null, /* @__PURE__ */ React104.createElement(
|
|
6706
6824
|
Item,
|
|
6707
6825
|
{
|
|
6708
6826
|
Icon: TransformIcon,
|
|
6709
6827
|
Label: TransformLabel,
|
|
6710
|
-
actions: /* @__PURE__ */
|
|
6828
|
+
actions: /* @__PURE__ */ React104.createElement(React104.Fragment, null, /* @__PURE__ */ React104.createElement(DisableItemAction, null), /* @__PURE__ */ React104.createElement(RemoveItemAction, null))
|
|
6711
6829
|
}
|
|
6712
6830
|
)),
|
|
6713
|
-
/* @__PURE__ */
|
|
6831
|
+
/* @__PURE__ */ React104.createElement(EditItemPopover, null, /* @__PURE__ */ React104.createElement(TransformContent, null))
|
|
6714
6832
|
));
|
|
6715
6833
|
};
|
|
6716
6834
|
var TransformBasePopoverTrigger = ({
|
|
@@ -6718,25 +6836,25 @@ var TransformBasePopoverTrigger = ({
|
|
|
6718
6836
|
repeaterBindKey
|
|
6719
6837
|
}) => {
|
|
6720
6838
|
const { bind } = useBoundProp();
|
|
6721
|
-
const titleLabel =
|
|
6722
|
-
return bind !== repeaterBindKey ? null : /* @__PURE__ */
|
|
6839
|
+
const titleLabel = __50("Transform settings", "elementor");
|
|
6840
|
+
return bind !== repeaterBindKey ? null : /* @__PURE__ */ React104.createElement(Tooltip8, { title: titleLabel, placement: "top" }, /* @__PURE__ */ React104.createElement(IconButton7, { size: SIZE11, "aria-label": titleLabel, ...bindTrigger5(popupState) }, /* @__PURE__ */ React104.createElement(AdjustmentsIcon2, { fontSize: SIZE11 })));
|
|
6723
6841
|
};
|
|
6724
6842
|
|
|
6725
6843
|
// src/controls/transition-control/transition-repeater-control.tsx
|
|
6726
|
-
import * as
|
|
6727
|
-
import { useEffect as useEffect15, useMemo as
|
|
6844
|
+
import * as React107 from "react";
|
|
6845
|
+
import { useEffect as useEffect15, useMemo as useMemo16, useState as useState18 } from "react";
|
|
6728
6846
|
import {
|
|
6729
|
-
createArrayPropUtils as
|
|
6847
|
+
createArrayPropUtils as createArrayPropUtils3,
|
|
6730
6848
|
selectionSizePropTypeUtil as selectionSizePropTypeUtil2
|
|
6731
6849
|
} from "@elementor/editor-props";
|
|
6732
6850
|
import { InfoCircleFilledIcon as InfoCircleFilledIcon3 } from "@elementor/icons";
|
|
6733
6851
|
import { Alert as Alert2, AlertTitle as AlertTitle3, Box as Box21, Typography as Typography8 } from "@elementor/ui";
|
|
6734
6852
|
import { hasProInstalled as hasProInstalled2 } from "@elementor/utils";
|
|
6735
|
-
import { __ as
|
|
6853
|
+
import { __ as __53 } from "@wordpress/i18n";
|
|
6736
6854
|
|
|
6737
6855
|
// src/controls/selection-size-control.tsx
|
|
6738
|
-
import * as
|
|
6739
|
-
import { useMemo as
|
|
6856
|
+
import * as React105 from "react";
|
|
6857
|
+
import { useMemo as useMemo14, useRef as useRef25 } from "react";
|
|
6740
6858
|
import { selectionSizePropTypeUtil } from "@elementor/editor-props";
|
|
6741
6859
|
import { Grid as Grid28 } from "@elementor/ui";
|
|
6742
6860
|
var SelectionSizeControl = createControl(
|
|
@@ -6744,7 +6862,7 @@ var SelectionSizeControl = createControl(
|
|
|
6744
6862
|
const { value, setValue, propType } = useBoundProp(selectionSizePropTypeUtil);
|
|
6745
6863
|
const rowRef = useRef25(null);
|
|
6746
6864
|
const sizeFieldId = sizeLabel.replace(/\s+/g, "-").toLowerCase();
|
|
6747
|
-
const currentSizeConfig =
|
|
6865
|
+
const currentSizeConfig = useMemo14(() => {
|
|
6748
6866
|
switch (value.selection.$$type) {
|
|
6749
6867
|
case "key-value":
|
|
6750
6868
|
return sizeConfigMap[value?.selection?.value.value.value || ""];
|
|
@@ -6755,7 +6873,7 @@ var SelectionSizeControl = createControl(
|
|
|
6755
6873
|
}
|
|
6756
6874
|
}, [value, sizeConfigMap]);
|
|
6757
6875
|
const SelectionComponent = selectionConfig.component;
|
|
6758
|
-
return /* @__PURE__ */
|
|
6876
|
+
return /* @__PURE__ */ React105.createElement(PropProvider, { value, setValue, propType }, /* @__PURE__ */ React105.createElement(Grid28, { container: true, spacing: 1.5, ref: rowRef }, /* @__PURE__ */ React105.createElement(Grid28, { item: true, xs: 6, sx: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React105.createElement(ControlFormLabel, null, selectionLabel)), /* @__PURE__ */ React105.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React105.createElement(PropKeyProvider, { bind: "selection" }, /* @__PURE__ */ React105.createElement(SelectionComponent, { ...selectionConfig.props }))), currentSizeConfig && /* @__PURE__ */ React105.createElement(React105.Fragment, null, /* @__PURE__ */ React105.createElement(Grid28, { item: true, xs: 6, sx: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React105.createElement(ControlFormLabel, { htmlFor: sizeFieldId }, sizeLabel)), /* @__PURE__ */ React105.createElement(Grid28, { item: true, xs: 6 }, /* @__PURE__ */ React105.createElement(PropKeyProvider, { bind: "size" }, /* @__PURE__ */ React105.createElement(
|
|
6759
6877
|
SizeControl,
|
|
6760
6878
|
{
|
|
6761
6879
|
anchorRef: rowRef,
|
|
@@ -6770,12 +6888,12 @@ var SelectionSizeControl = createControl(
|
|
|
6770
6888
|
|
|
6771
6889
|
// src/controls/transition-control/data.ts
|
|
6772
6890
|
import { hasProInstalled, isVersionGreaterOrEqual } from "@elementor/utils";
|
|
6773
|
-
import { __ as
|
|
6891
|
+
import { __ as __51 } from "@wordpress/i18n";
|
|
6774
6892
|
var initialTransitionValue = {
|
|
6775
6893
|
selection: {
|
|
6776
6894
|
$$type: "key-value",
|
|
6777
6895
|
value: {
|
|
6778
|
-
key: { value:
|
|
6896
|
+
key: { value: __51("All properties", "elementor"), $$type: "string" },
|
|
6779
6897
|
value: { value: "all", $$type: "string" }
|
|
6780
6898
|
}
|
|
6781
6899
|
},
|
|
@@ -6799,128 +6917,128 @@ var createTransitionPropertiesList = () => {
|
|
|
6799
6917
|
const isSiteRtl = getIsSiteRtl();
|
|
6800
6918
|
const baseProperties = [
|
|
6801
6919
|
{
|
|
6802
|
-
label:
|
|
6920
|
+
label: __51("Default", "elementor"),
|
|
6803
6921
|
type: "category",
|
|
6804
|
-
properties: [{ label:
|
|
6922
|
+
properties: [{ label: __51("All properties", "elementor"), value: "all" }]
|
|
6805
6923
|
},
|
|
6806
6924
|
{
|
|
6807
|
-
label:
|
|
6925
|
+
label: __51("Margin", "elementor"),
|
|
6808
6926
|
type: "category",
|
|
6809
6927
|
properties: [
|
|
6810
|
-
{ label:
|
|
6811
|
-
{ label:
|
|
6928
|
+
{ label: __51("Margin (all)", "elementor"), value: "margin", isDisabled: true },
|
|
6929
|
+
{ label: __51("Margin bottom", "elementor"), value: "margin-block-end", isDisabled: true },
|
|
6812
6930
|
{
|
|
6813
|
-
label: isSiteRtl ?
|
|
6931
|
+
label: isSiteRtl ? __51("Margin right", "elementor") : __51("Margin left", "elementor"),
|
|
6814
6932
|
value: "margin-inline-start",
|
|
6815
6933
|
isDisabled: true
|
|
6816
6934
|
},
|
|
6817
6935
|
{
|
|
6818
|
-
label: isSiteRtl ?
|
|
6936
|
+
label: isSiteRtl ? __51("Margin left", "elementor") : __51("Margin right", "elementor"),
|
|
6819
6937
|
value: "margin-inline-end",
|
|
6820
6938
|
isDisabled: true
|
|
6821
6939
|
},
|
|
6822
|
-
{ label:
|
|
6940
|
+
{ label: __51("Margin top", "elementor"), value: "margin-block-start", isDisabled: true }
|
|
6823
6941
|
]
|
|
6824
6942
|
},
|
|
6825
6943
|
{
|
|
6826
|
-
label:
|
|
6944
|
+
label: __51("Padding", "elementor"),
|
|
6827
6945
|
type: "category",
|
|
6828
6946
|
properties: [
|
|
6829
|
-
{ label:
|
|
6830
|
-
{ label:
|
|
6947
|
+
{ label: __51("Padding (all)", "elementor"), value: "padding", isDisabled: true },
|
|
6948
|
+
{ label: __51("Padding bottom", "elementor"), value: "padding-block-end", isDisabled: true },
|
|
6831
6949
|
{
|
|
6832
|
-
label: isSiteRtl ?
|
|
6950
|
+
label: isSiteRtl ? __51("Padding right", "elementor") : __51("Padding left", "elementor"),
|
|
6833
6951
|
value: "padding-inline-start",
|
|
6834
6952
|
isDisabled: true
|
|
6835
6953
|
},
|
|
6836
6954
|
{
|
|
6837
|
-
label: isSiteRtl ?
|
|
6955
|
+
label: isSiteRtl ? __51("Padding left", "elementor") : __51("Padding right", "elementor"),
|
|
6838
6956
|
value: "padding-inline-end",
|
|
6839
6957
|
isDisabled: true
|
|
6840
6958
|
},
|
|
6841
|
-
{ label:
|
|
6959
|
+
{ label: __51("Padding top", "elementor"), value: "padding-block-start", isDisabled: true }
|
|
6842
6960
|
]
|
|
6843
6961
|
},
|
|
6844
6962
|
{
|
|
6845
|
-
label:
|
|
6963
|
+
label: __51("Flex", "elementor"),
|
|
6846
6964
|
type: "category",
|
|
6847
6965
|
properties: [
|
|
6848
|
-
{ label:
|
|
6849
|
-
{ label:
|
|
6850
|
-
{ label:
|
|
6851
|
-
{ label:
|
|
6966
|
+
{ label: __51("Flex (all)", "elementor"), value: "flex", isDisabled: true },
|
|
6967
|
+
{ label: __51("Flex grow", "elementor"), value: "flex-grow", isDisabled: true },
|
|
6968
|
+
{ label: __51("Flex shrink", "elementor"), value: "flex-shrink", isDisabled: true },
|
|
6969
|
+
{ label: __51("Flex basis", "elementor"), value: "flex-basis", isDisabled: true }
|
|
6852
6970
|
]
|
|
6853
6971
|
},
|
|
6854
6972
|
{
|
|
6855
|
-
label:
|
|
6973
|
+
label: __51("Size", "elementor"),
|
|
6856
6974
|
type: "category",
|
|
6857
6975
|
properties: [
|
|
6858
|
-
{ label:
|
|
6859
|
-
{ label:
|
|
6860
|
-
{ label:
|
|
6861
|
-
{ label:
|
|
6862
|
-
{ label:
|
|
6863
|
-
{ label:
|
|
6976
|
+
{ label: __51("Width", "elementor"), value: "width", isDisabled: true },
|
|
6977
|
+
{ label: __51("Height", "elementor"), value: "height", isDisabled: true },
|
|
6978
|
+
{ label: __51("Max height", "elementor"), value: "max-height", isDisabled: true },
|
|
6979
|
+
{ label: __51("Max width", "elementor"), value: "max-width", isDisabled: true },
|
|
6980
|
+
{ label: __51("Min height", "elementor"), value: "min-height", isDisabled: true },
|
|
6981
|
+
{ label: __51("Min width", "elementor"), value: "min-width", isDisabled: true }
|
|
6864
6982
|
]
|
|
6865
6983
|
},
|
|
6866
6984
|
{
|
|
6867
|
-
label:
|
|
6985
|
+
label: __51("Position", "elementor"),
|
|
6868
6986
|
type: "category",
|
|
6869
6987
|
properties: [
|
|
6870
|
-
{ label:
|
|
6988
|
+
{ label: __51("Top", "elementor"), value: "inset-block-start", isDisabled: true },
|
|
6871
6989
|
{
|
|
6872
|
-
label: isSiteRtl ?
|
|
6990
|
+
label: isSiteRtl ? __51("Right", "elementor") : __51("Left", "elementor"),
|
|
6873
6991
|
value: "inset-inline-start",
|
|
6874
6992
|
isDisabled: true
|
|
6875
6993
|
},
|
|
6876
6994
|
{
|
|
6877
|
-
label: isSiteRtl ?
|
|
6995
|
+
label: isSiteRtl ? __51("Left", "elementor") : __51("Right", "elementor"),
|
|
6878
6996
|
value: "inset-inline-end",
|
|
6879
6997
|
isDisabled: true
|
|
6880
6998
|
},
|
|
6881
|
-
{ label:
|
|
6882
|
-
{ label:
|
|
6999
|
+
{ label: __51("Bottom", "elementor"), value: "inset-block-end", isDisabled: true },
|
|
7000
|
+
{ label: __51("Z-index", "elementor"), value: "z-index", isDisabled: true }
|
|
6883
7001
|
]
|
|
6884
7002
|
},
|
|
6885
7003
|
{
|
|
6886
|
-
label:
|
|
7004
|
+
label: __51("Typography", "elementor"),
|
|
6887
7005
|
type: "category",
|
|
6888
7006
|
properties: [
|
|
6889
|
-
{ label:
|
|
6890
|
-
{ label:
|
|
6891
|
-
{ label:
|
|
6892
|
-
{ label:
|
|
6893
|
-
{ label:
|
|
6894
|
-
{ label:
|
|
6895
|
-
{ label:
|
|
7007
|
+
{ label: __51("Font color", "elementor"), value: "color", isDisabled: true },
|
|
7008
|
+
{ label: __51("Font size", "elementor"), value: "font-size", isDisabled: true },
|
|
7009
|
+
{ label: __51("Line height", "elementor"), value: "line-height", isDisabled: true },
|
|
7010
|
+
{ label: __51("Letter spacing", "elementor"), value: "letter-spacing", isDisabled: true },
|
|
7011
|
+
{ label: __51("Word spacing", "elementor"), value: "word-spacing", isDisabled: true },
|
|
7012
|
+
{ label: __51("Font variations", "elementor"), value: "font-variation-settings", isDisabled: true },
|
|
7013
|
+
{ label: __51("Text stroke color", "elementor"), value: "-webkit-text-stroke-color", isDisabled: true }
|
|
6896
7014
|
]
|
|
6897
7015
|
},
|
|
6898
7016
|
{
|
|
6899
|
-
label:
|
|
7017
|
+
label: __51("Background", "elementor"),
|
|
6900
7018
|
type: "category",
|
|
6901
7019
|
properties: [
|
|
6902
|
-
{ label:
|
|
6903
|
-
{ label:
|
|
6904
|
-
{ label:
|
|
7020
|
+
{ label: __51("Background color", "elementor"), value: "background-color", isDisabled: true },
|
|
7021
|
+
{ label: __51("Background position", "elementor"), value: "background-position", isDisabled: true },
|
|
7022
|
+
{ label: __51("Box shadow", "elementor"), value: "box-shadow", isDisabled: true }
|
|
6905
7023
|
]
|
|
6906
7024
|
},
|
|
6907
7025
|
{
|
|
6908
|
-
label:
|
|
7026
|
+
label: __51("Border", "elementor"),
|
|
6909
7027
|
type: "category",
|
|
6910
7028
|
properties: [
|
|
6911
|
-
{ label:
|
|
6912
|
-
{ label:
|
|
6913
|
-
{ label:
|
|
6914
|
-
{ label:
|
|
7029
|
+
{ label: __51("Border (all)", "elementor"), value: "border", isDisabled: true },
|
|
7030
|
+
{ label: __51("Border radius", "elementor"), value: "border-radius", isDisabled: true },
|
|
7031
|
+
{ label: __51("Border color", "elementor"), value: "border-color", isDisabled: true },
|
|
7032
|
+
{ label: __51("Border width", "elementor"), value: "border-width", isDisabled: true }
|
|
6915
7033
|
]
|
|
6916
7034
|
},
|
|
6917
7035
|
{
|
|
6918
|
-
label:
|
|
7036
|
+
label: __51("Effects", "elementor"),
|
|
6919
7037
|
type: "category",
|
|
6920
7038
|
properties: [
|
|
6921
|
-
{ label:
|
|
6922
|
-
{ label:
|
|
6923
|
-
{ label:
|
|
7039
|
+
{ label: __51("Opacity", "elementor"), value: "opacity", isDisabled: true },
|
|
7040
|
+
{ label: __51("Transform (all)", "elementor"), value: "transform", isDisabled: true },
|
|
7041
|
+
{ label: __51("Filter (all)", "elementor"), value: "filter", isDisabled: true }
|
|
6924
7042
|
]
|
|
6925
7043
|
}
|
|
6926
7044
|
];
|
|
@@ -6956,13 +7074,13 @@ function subscribeToTransitionEvent() {
|
|
|
6956
7074
|
}
|
|
6957
7075
|
|
|
6958
7076
|
// src/controls/transition-control/transition-selector.tsx
|
|
6959
|
-
import * as
|
|
6960
|
-
import { useMemo as
|
|
7077
|
+
import * as React106 from "react";
|
|
7078
|
+
import { useMemo as useMemo15, useRef as useRef26 } from "react";
|
|
6961
7079
|
import { keyValuePropTypeUtil as keyValuePropTypeUtil2 } from "@elementor/editor-props";
|
|
6962
7080
|
import { PromotionAlert, PromotionChip } from "@elementor/editor-ui";
|
|
6963
7081
|
import { ChevronDownIcon as ChevronDownIcon3, VariationsIcon } from "@elementor/icons";
|
|
6964
7082
|
import { bindPopover as bindPopover7, bindTrigger as bindTrigger6, Box as Box20, Popover as Popover7, UnstableTag as UnstableTag3, usePopupState as usePopupState9 } from "@elementor/ui";
|
|
6965
|
-
import { __ as
|
|
7083
|
+
import { __ as __52 } from "@wordpress/i18n";
|
|
6966
7084
|
|
|
6967
7085
|
// src/utils/tracking.ts
|
|
6968
7086
|
import { getSelectedElements as getSelectedElements2 } from "@elementor/editor-elements";
|
|
@@ -7046,7 +7164,7 @@ var TransitionSelector = ({
|
|
|
7046
7164
|
} = value;
|
|
7047
7165
|
const defaultRef = useRef26(null);
|
|
7048
7166
|
const popoverState = usePopupState9({ variant: "popover" });
|
|
7049
|
-
const disabledCategories =
|
|
7167
|
+
const disabledCategories = useMemo15(() => {
|
|
7050
7168
|
return new Set(
|
|
7051
7169
|
transitionProperties.filter((cat) => cat.properties.some((prop) => prop.isDisabled)).map((cat) => cat.label)
|
|
7052
7170
|
);
|
|
@@ -7066,7 +7184,7 @@ var TransitionSelector = ({
|
|
|
7066
7184
|
return [
|
|
7067
7185
|
first,
|
|
7068
7186
|
{
|
|
7069
|
-
label:
|
|
7187
|
+
label: __52("Recently Used", "elementor"),
|
|
7070
7188
|
items: recentItems
|
|
7071
7189
|
},
|
|
7072
7190
|
...rest
|
|
@@ -7090,16 +7208,16 @@ var TransitionSelector = ({
|
|
|
7090
7208
|
left: rect.right + 36
|
|
7091
7209
|
};
|
|
7092
7210
|
};
|
|
7093
|
-
return /* @__PURE__ */
|
|
7211
|
+
return /* @__PURE__ */ React106.createElement(Box20, { ref: defaultRef }, /* @__PURE__ */ React106.createElement(ControlActions, null, /* @__PURE__ */ React106.createElement(
|
|
7094
7212
|
UnstableTag3,
|
|
7095
7213
|
{
|
|
7096
7214
|
variant: "outlined",
|
|
7097
7215
|
label: transitionLabel,
|
|
7098
|
-
endIcon: /* @__PURE__ */
|
|
7216
|
+
endIcon: /* @__PURE__ */ React106.createElement(ChevronDownIcon3, { fontSize: "tiny" }),
|
|
7099
7217
|
...bindTrigger6(popoverState),
|
|
7100
7218
|
fullWidth: true
|
|
7101
7219
|
}
|
|
7102
|
-
)), /* @__PURE__ */
|
|
7220
|
+
)), /* @__PURE__ */ React106.createElement(
|
|
7103
7221
|
Popover7,
|
|
7104
7222
|
{
|
|
7105
7223
|
disablePortal: true,
|
|
@@ -7110,7 +7228,7 @@ var TransitionSelector = ({
|
|
|
7110
7228
|
anchorOrigin: { vertical: "top", horizontal: "right" },
|
|
7111
7229
|
transformOrigin: { vertical: "top", horizontal: "left" }
|
|
7112
7230
|
},
|
|
7113
|
-
/* @__PURE__ */
|
|
7231
|
+
/* @__PURE__ */ React106.createElement(
|
|
7114
7232
|
ItemSelector,
|
|
7115
7233
|
{
|
|
7116
7234
|
itemsList: getItemList(),
|
|
@@ -7118,10 +7236,10 @@ var TransitionSelector = ({
|
|
|
7118
7236
|
onItemChange: handleTransitionPropertyChange,
|
|
7119
7237
|
onClose: popoverState.close,
|
|
7120
7238
|
sectionWidth: 268,
|
|
7121
|
-
title:
|
|
7239
|
+
title: __52("Transition Property", "elementor"),
|
|
7122
7240
|
icon: VariationsIcon,
|
|
7123
7241
|
disabledItems: includeCurrentValueInOptions(value, disabledItems),
|
|
7124
|
-
categoryItemContentTemplate: (item) => /* @__PURE__ */
|
|
7242
|
+
categoryItemContentTemplate: (item) => /* @__PURE__ */ React106.createElement(
|
|
7125
7243
|
Box20,
|
|
7126
7244
|
{
|
|
7127
7245
|
sx: {
|
|
@@ -7131,13 +7249,13 @@ var TransitionSelector = ({
|
|
|
7131
7249
|
width: "100%"
|
|
7132
7250
|
}
|
|
7133
7251
|
},
|
|
7134
|
-
/* @__PURE__ */
|
|
7135
|
-
showPromotion && disabledCategories.has(item.value) && /* @__PURE__ */
|
|
7252
|
+
/* @__PURE__ */ React106.createElement("span", null, item.value),
|
|
7253
|
+
showPromotion && disabledCategories.has(item.value) && /* @__PURE__ */ React106.createElement(PromotionChip, null)
|
|
7136
7254
|
),
|
|
7137
|
-
footer: showPromotion ? /* @__PURE__ */
|
|
7255
|
+
footer: showPromotion ? /* @__PURE__ */ React106.createElement(
|
|
7138
7256
|
PromotionAlert,
|
|
7139
7257
|
{
|
|
7140
|
-
message:
|
|
7258
|
+
message: __52(
|
|
7141
7259
|
"Upgrade to customize transition properties and control effects.",
|
|
7142
7260
|
"elementor"
|
|
7143
7261
|
),
|
|
@@ -7159,7 +7277,7 @@ var DURATION_CONFIG = {
|
|
|
7159
7277
|
units: ["s", "ms"],
|
|
7160
7278
|
defaultUnit: "ms"
|
|
7161
7279
|
};
|
|
7162
|
-
var childArrayPropTypeUtil =
|
|
7280
|
+
var childArrayPropTypeUtil = createArrayPropUtils3(
|
|
7163
7281
|
selectionSizePropTypeUtil2.key,
|
|
7164
7282
|
selectionSizePropTypeUtil2.schema,
|
|
7165
7283
|
"transition"
|
|
@@ -7176,8 +7294,8 @@ var areAllPropertiesUsed = (value = []) => {
|
|
|
7176
7294
|
};
|
|
7177
7295
|
var getSelectionSizeProps = (recentlyUsedList, disabledItems, showPromotion) => {
|
|
7178
7296
|
return {
|
|
7179
|
-
selectionLabel:
|
|
7180
|
-
sizeLabel:
|
|
7297
|
+
selectionLabel: __53("Type", "elementor"),
|
|
7298
|
+
sizeLabel: __53("Duration", "elementor"),
|
|
7181
7299
|
selectionConfig: {
|
|
7182
7300
|
component: TransitionSelector,
|
|
7183
7301
|
props: {
|
|
@@ -7253,7 +7371,7 @@ var getInitialValue = (values = []) => {
|
|
|
7253
7371
|
}
|
|
7254
7372
|
return initialTransitionValue;
|
|
7255
7373
|
};
|
|
7256
|
-
var disableAddItemTooltipContent = /* @__PURE__ */
|
|
7374
|
+
var disableAddItemTooltipContent = /* @__PURE__ */ React107.createElement(
|
|
7257
7375
|
Alert2,
|
|
7258
7376
|
{
|
|
7259
7377
|
sx: {
|
|
@@ -7261,10 +7379,10 @@ var disableAddItemTooltipContent = /* @__PURE__ */ React105.createElement(
|
|
|
7261
7379
|
gap: 0.5
|
|
7262
7380
|
},
|
|
7263
7381
|
color: "secondary",
|
|
7264
|
-
icon: /* @__PURE__ */
|
|
7382
|
+
icon: /* @__PURE__ */ React107.createElement(InfoCircleFilledIcon3, null)
|
|
7265
7383
|
},
|
|
7266
|
-
/* @__PURE__ */
|
|
7267
|
-
/* @__PURE__ */
|
|
7384
|
+
/* @__PURE__ */ React107.createElement(AlertTitle3, null, __53("Transitions", "elementor")),
|
|
7385
|
+
/* @__PURE__ */ React107.createElement(Box21, { component: "span" }, /* @__PURE__ */ React107.createElement(Typography8, { variant: "body2" }, __53("Switch to 'Normal' state to add a transition.", "elementor")))
|
|
7268
7386
|
);
|
|
7269
7387
|
var TransitionRepeaterControl = createControl(
|
|
7270
7388
|
({
|
|
@@ -7275,11 +7393,11 @@ var TransitionRepeaterControl = createControl(
|
|
|
7275
7393
|
const [recentlyUsedList, setRecentlyUsedList] = useState18([]);
|
|
7276
7394
|
const proInstalled = hasProInstalled2();
|
|
7277
7395
|
const { value, setValue } = useBoundProp(childArrayPropTypeUtil);
|
|
7278
|
-
const { allDisabled: disabledItems, proDisabled: proDisabledItems } =
|
|
7396
|
+
const { allDisabled: disabledItems, proDisabled: proDisabledItems } = useMemo16(
|
|
7279
7397
|
() => getDisabledItemLabels(value),
|
|
7280
7398
|
[value]
|
|
7281
7399
|
);
|
|
7282
|
-
const allowedTransitionSet =
|
|
7400
|
+
const allowedTransitionSet = useMemo16(() => {
|
|
7283
7401
|
const set = /* @__PURE__ */ new Set();
|
|
7284
7402
|
transitionProperties.forEach((category) => {
|
|
7285
7403
|
category.properties.forEach((prop) => {
|
|
@@ -7305,15 +7423,15 @@ var TransitionRepeaterControl = createControl(
|
|
|
7305
7423
|
useEffect15(() => {
|
|
7306
7424
|
recentlyUsedListGetter().then(setRecentlyUsedList);
|
|
7307
7425
|
}, [recentlyUsedListGetter]);
|
|
7308
|
-
const allPropertiesUsed =
|
|
7426
|
+
const allPropertiesUsed = useMemo16(() => areAllPropertiesUsed(value), [value]);
|
|
7309
7427
|
const isAddItemDisabled = !currentStyleIsNormal || allPropertiesUsed;
|
|
7310
|
-
return /* @__PURE__ */
|
|
7428
|
+
return /* @__PURE__ */ React107.createElement(
|
|
7311
7429
|
RepeatableControl,
|
|
7312
7430
|
{
|
|
7313
|
-
label:
|
|
7314
|
-
repeaterLabel:
|
|
7431
|
+
label: __53("Transitions", "elementor"),
|
|
7432
|
+
repeaterLabel: __53("Transitions", "elementor"),
|
|
7315
7433
|
patternLabel: "${value.selection.value.key.value}: ${value.size.value.size}${value.size.value.unit}",
|
|
7316
|
-
placeholder:
|
|
7434
|
+
placeholder: __53("Empty Transition", "elementor"),
|
|
7317
7435
|
showDuplicate: false,
|
|
7318
7436
|
showToggle: true,
|
|
7319
7437
|
initialValues: getInitialValue(value),
|
|
@@ -7334,9 +7452,9 @@ var TransitionRepeaterControl = createControl(
|
|
|
7334
7452
|
);
|
|
7335
7453
|
|
|
7336
7454
|
// src/controls/date-time-control.tsx
|
|
7337
|
-
import * as
|
|
7455
|
+
import * as React108 from "react";
|
|
7338
7456
|
import * as dayjs from "dayjs";
|
|
7339
|
-
import { isTransformable as isTransformable2, stringPropTypeUtil as
|
|
7457
|
+
import { isTransformable as isTransformable2, stringPropTypeUtil as stringPropTypeUtil19 } from "@elementor/editor-props";
|
|
7340
7458
|
import { DateTimePropTypeUtil } from "@elementor/editor-props";
|
|
7341
7459
|
import { Box as Box22, DatePicker, LocalizationProvider, TimePicker } from "@elementor/ui";
|
|
7342
7460
|
var DATE_FORMAT = "YYYY-MM-DD";
|
|
@@ -7382,10 +7500,10 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
|
|
|
7382
7500
|
const base = dayjs.default();
|
|
7383
7501
|
return base.hour(h).minute(m).second(0).millisecond(0);
|
|
7384
7502
|
};
|
|
7385
|
-
return /* @__PURE__ */
|
|
7503
|
+
return /* @__PURE__ */ React108.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React108.createElement(ControlActions, null, /* @__PURE__ */ React108.createElement(LocalizationProvider, null, /* @__PURE__ */ React108.createElement(Box22, { display: "flex", gap: 1, alignItems: "center" }, /* @__PURE__ */ React108.createElement(PropKeyProvider, { bind: "date" }, /* @__PURE__ */ React108.createElement(
|
|
7386
7504
|
DatePicker,
|
|
7387
7505
|
{
|
|
7388
|
-
value: parseDateValue(
|
|
7506
|
+
value: parseDateValue(stringPropTypeUtil19.extract(value?.date)),
|
|
7389
7507
|
onChange: (v) => handleChange({ date: v }, { bind: "date" }),
|
|
7390
7508
|
disabled: inputDisabled,
|
|
7391
7509
|
slotProps: {
|
|
@@ -7394,10 +7512,10 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
|
|
|
7394
7512
|
openPickerIcon: { fontSize: "tiny" }
|
|
7395
7513
|
}
|
|
7396
7514
|
}
|
|
7397
|
-
)), /* @__PURE__ */
|
|
7515
|
+
)), /* @__PURE__ */ React108.createElement(PropKeyProvider, { bind: "time" }, /* @__PURE__ */ React108.createElement(
|
|
7398
7516
|
TimePicker,
|
|
7399
7517
|
{
|
|
7400
|
-
value: parseTimeValue(
|
|
7518
|
+
value: parseTimeValue(stringPropTypeUtil19.extract(value?.time)),
|
|
7401
7519
|
onChange: (v) => handleChange({ time: v }, { bind: "time" }),
|
|
7402
7520
|
disabled: inputDisabled,
|
|
7403
7521
|
slotProps: {
|
|
@@ -7410,13 +7528,13 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
|
|
|
7410
7528
|
});
|
|
7411
7529
|
|
|
7412
7530
|
// src/controls/date-range-control.tsx
|
|
7413
|
-
import * as
|
|
7531
|
+
import * as React110 from "react";
|
|
7414
7532
|
import { dateRangePropTypeUtil, dateStringPropTypeUtil as dateStringPropTypeUtil2 } from "@elementor/editor-props";
|
|
7415
7533
|
import { FormHelperText as FormHelperText2, Grid as Grid29, Stack as Stack17 } from "@elementor/ui";
|
|
7416
|
-
import { __ as
|
|
7534
|
+
import { __ as __54 } from "@wordpress/i18n";
|
|
7417
7535
|
|
|
7418
7536
|
// src/controls/date-string-control.tsx
|
|
7419
|
-
import * as
|
|
7537
|
+
import * as React109 from "react";
|
|
7420
7538
|
import { dateStringPropTypeUtil } from "@elementor/editor-props";
|
|
7421
7539
|
import { DatePicker as DatePicker2, LocalizationProvider as LocalizationProvider2 } from "@elementor/ui";
|
|
7422
7540
|
|
|
@@ -7475,7 +7593,7 @@ var DateStringControl = createControl(
|
|
|
7475
7593
|
}
|
|
7476
7594
|
setValue(newValue.format(format));
|
|
7477
7595
|
};
|
|
7478
|
-
return /* @__PURE__ */
|
|
7596
|
+
return /* @__PURE__ */ React109.createElement(LocalizationProvider2, null, /* @__PURE__ */ React109.createElement(ControlActions, null, /* @__PURE__ */ React109.createElement(
|
|
7479
7597
|
DatePicker2,
|
|
7480
7598
|
{
|
|
7481
7599
|
value: parseDateString(value ?? ""),
|
|
@@ -7489,8 +7607,8 @@ var DateStringControl = createControl(
|
|
|
7489
7607
|
|
|
7490
7608
|
// src/controls/date-range-control.tsx
|
|
7491
7609
|
var RANGE_LABELS = {
|
|
7492
|
-
min:
|
|
7493
|
-
max:
|
|
7610
|
+
min: __54("Min date", "elementor"),
|
|
7611
|
+
max: __54("Max date", "elementor")
|
|
7494
7612
|
};
|
|
7495
7613
|
var isMaxBeforeMin = (minIso, maxIso) => {
|
|
7496
7614
|
if (!minIso || !maxIso) {
|
|
@@ -7498,38 +7616,38 @@ var isMaxBeforeMin = (minIso, maxIso) => {
|
|
|
7498
7616
|
}
|
|
7499
7617
|
return maxIso < minIso;
|
|
7500
7618
|
};
|
|
7501
|
-
var RANGE_ERROR_MESSAGE =
|
|
7619
|
+
var RANGE_ERROR_MESSAGE = __54("Max date must be on or after Min date", "elementor");
|
|
7502
7620
|
var DateRangeControl = createControl(() => {
|
|
7503
7621
|
const { value, setValue, ...propContext } = useBoundProp(dateRangePropTypeUtil);
|
|
7504
7622
|
const minString = dateStringPropTypeUtil2.extract(value?.min);
|
|
7505
7623
|
const maxString = dateStringPropTypeUtil2.extract(value?.max);
|
|
7506
7624
|
const hasInvalidRange = isMaxBeforeMin(minString, maxString);
|
|
7507
|
-
return /* @__PURE__ */
|
|
7625
|
+
return /* @__PURE__ */ React110.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React110.createElement(Stack17, { gap: 0.75 }, /* @__PURE__ */ React110.createElement(Stack17, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React110.createElement(Grid29, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React110.createElement(Grid29, { item: true, xs: 12 }, /* @__PURE__ */ React110.createElement(ControlFormLabel, null, RANGE_LABELS.min)), /* @__PURE__ */ React110.createElement(Grid29, { item: true, xs: 12 }, /* @__PURE__ */ React110.createElement(
|
|
7508
7626
|
BoundDateStringControl,
|
|
7509
7627
|
{
|
|
7510
7628
|
bind: "min",
|
|
7511
7629
|
ariaLabel: RANGE_LABELS.min,
|
|
7512
7630
|
error: hasInvalidRange
|
|
7513
7631
|
}
|
|
7514
|
-
))), /* @__PURE__ */
|
|
7632
|
+
))), /* @__PURE__ */ React110.createElement(Grid29, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React110.createElement(Grid29, { item: true, xs: 12 }, /* @__PURE__ */ React110.createElement(ControlFormLabel, null, RANGE_LABELS.max)), /* @__PURE__ */ React110.createElement(Grid29, { item: true, xs: 12 }, /* @__PURE__ */ React110.createElement(
|
|
7515
7633
|
BoundDateStringControl,
|
|
7516
7634
|
{
|
|
7517
7635
|
bind: "max",
|
|
7518
7636
|
ariaLabel: RANGE_LABELS.max,
|
|
7519
7637
|
error: hasInvalidRange
|
|
7520
7638
|
}
|
|
7521
|
-
)))), hasInvalidRange && /* @__PURE__ */
|
|
7639
|
+
)))), hasInvalidRange && /* @__PURE__ */ React110.createElement(FormHelperText2, { error: true }, RANGE_ERROR_MESSAGE)));
|
|
7522
7640
|
});
|
|
7523
7641
|
var BoundDateStringControl = ({
|
|
7524
7642
|
bind,
|
|
7525
7643
|
ariaLabel,
|
|
7526
7644
|
error
|
|
7527
7645
|
}) => {
|
|
7528
|
-
return /* @__PURE__ */
|
|
7646
|
+
return /* @__PURE__ */ React110.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React110.createElement(DateStringControl, { ariaLabel, error, coerceInvalidToNull: true }));
|
|
7529
7647
|
};
|
|
7530
7648
|
|
|
7531
7649
|
// src/controls/time-string-control.tsx
|
|
7532
|
-
import * as
|
|
7650
|
+
import * as React111 from "react";
|
|
7533
7651
|
import { timeStringPropTypeUtil } from "@elementor/editor-props";
|
|
7534
7652
|
import { LocalizationProvider as LocalizationProvider3, TimePicker as TimePicker2 } from "@elementor/ui";
|
|
7535
7653
|
var TimeStringControl = createControl(
|
|
@@ -7557,7 +7675,7 @@ var TimeStringControl = createControl(
|
|
|
7557
7675
|
}
|
|
7558
7676
|
setValue(newValue.format(format));
|
|
7559
7677
|
};
|
|
7560
|
-
return /* @__PURE__ */
|
|
7678
|
+
return /* @__PURE__ */ React111.createElement(LocalizationProvider3, null, /* @__PURE__ */ React111.createElement(ControlActions, null, /* @__PURE__ */ React111.createElement(
|
|
7561
7679
|
TimePicker2,
|
|
7562
7680
|
{
|
|
7563
7681
|
value: parseTimeString(value ?? ""),
|
|
@@ -7570,31 +7688,31 @@ var TimeStringControl = createControl(
|
|
|
7570
7688
|
);
|
|
7571
7689
|
|
|
7572
7690
|
// src/controls/time-range-control.tsx
|
|
7573
|
-
import * as
|
|
7691
|
+
import * as React112 from "react";
|
|
7574
7692
|
import { timeRangePropTypeUtil } from "@elementor/editor-props";
|
|
7575
7693
|
import { Grid as Grid30, Stack as Stack18 } from "@elementor/ui";
|
|
7576
|
-
import { __ as
|
|
7694
|
+
import { __ as __55 } from "@wordpress/i18n";
|
|
7577
7695
|
var RANGE_LABELS2 = {
|
|
7578
|
-
min:
|
|
7579
|
-
max:
|
|
7696
|
+
min: __55("Start time", "elementor"),
|
|
7697
|
+
max: __55("End time", "elementor")
|
|
7580
7698
|
};
|
|
7581
7699
|
var TimeRangeControl = createControl(() => {
|
|
7582
7700
|
const { value, setValue, ...propContext } = useBoundProp(timeRangePropTypeUtil);
|
|
7583
|
-
return /* @__PURE__ */
|
|
7701
|
+
return /* @__PURE__ */ React112.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React112.createElement(Stack18, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React112.createElement(Grid30, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React112.createElement(Grid30, { item: true, xs: 12 }, /* @__PURE__ */ React112.createElement(ControlFormLabel, null, RANGE_LABELS2.min)), /* @__PURE__ */ React112.createElement(Grid30, { item: true, xs: 12 }, /* @__PURE__ */ React112.createElement(BoundTimeStringControl, { bind: "min", ariaLabel: RANGE_LABELS2.min }))), /* @__PURE__ */ React112.createElement(Grid30, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React112.createElement(Grid30, { item: true, xs: 12 }, /* @__PURE__ */ React112.createElement(ControlFormLabel, null, RANGE_LABELS2.max)), /* @__PURE__ */ React112.createElement(Grid30, { item: true, xs: 12 }, /* @__PURE__ */ React112.createElement(BoundTimeStringControl, { bind: "max", ariaLabel: RANGE_LABELS2.max })))));
|
|
7584
7702
|
});
|
|
7585
7703
|
var BoundTimeStringControl = ({ bind, ariaLabel }) => {
|
|
7586
|
-
return /* @__PURE__ */
|
|
7704
|
+
return /* @__PURE__ */ React112.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React112.createElement(TimeStringControl, { ariaLabel, coerceInvalidToNull: true }));
|
|
7587
7705
|
};
|
|
7588
7706
|
|
|
7589
7707
|
// src/controls/inline-editing-control.tsx
|
|
7590
|
-
import * as
|
|
7591
|
-
import { useCallback as useCallback4, useEffect as useEffect17, useMemo as
|
|
7592
|
-
import { htmlV3PropTypeUtil, parseHtmlChildren, stringPropTypeUtil as
|
|
7708
|
+
import * as React114 from "react";
|
|
7709
|
+
import { useCallback as useCallback4, useEffect as useEffect17, useMemo as useMemo17 } from "react";
|
|
7710
|
+
import { htmlV3PropTypeUtil, parseHtmlChildren, stringPropTypeUtil as stringPropTypeUtil20 } from "@elementor/editor-props";
|
|
7593
7711
|
import { Box as Box24 } from "@elementor/ui";
|
|
7594
7712
|
import { debounce as debounce4 } from "@elementor/utils";
|
|
7595
7713
|
|
|
7596
7714
|
// src/components/inline-editor.tsx
|
|
7597
|
-
import * as
|
|
7715
|
+
import * as React113 from "react";
|
|
7598
7716
|
import { useEffect as useEffect16, useRef as useRef27 } from "react";
|
|
7599
7717
|
import { Box as Box23 } from "@elementor/ui";
|
|
7600
7718
|
import Bold from "@tiptap/extension-bold";
|
|
@@ -7633,7 +7751,7 @@ function htmlToPlainText(html) {
|
|
|
7633
7751
|
var ITALIC_KEYBOARD_SHORTCUT = "i";
|
|
7634
7752
|
var BOLD_KEYBOARD_SHORTCUT = "b";
|
|
7635
7753
|
var UNDERLINE_KEYBOARD_SHORTCUT = "u";
|
|
7636
|
-
var InlineEditor =
|
|
7754
|
+
var InlineEditor = React113.forwardRef((props, ref) => {
|
|
7637
7755
|
const {
|
|
7638
7756
|
value,
|
|
7639
7757
|
setValue,
|
|
@@ -7744,7 +7862,7 @@ var InlineEditor = React111.forwardRef((props, ref) => {
|
|
|
7744
7862
|
if (mountElement) {
|
|
7745
7863
|
return null;
|
|
7746
7864
|
}
|
|
7747
|
-
return /* @__PURE__ */
|
|
7865
|
+
return /* @__PURE__ */ React113.createElement(Box23, { ref: containerRef, sx, className: wrapperClassName }, /* @__PURE__ */ React113.createElement(EditorContent, { ref, editor }));
|
|
7748
7866
|
});
|
|
7749
7867
|
var useOnUpdate = (callback, dependencies) => {
|
|
7750
7868
|
const hasMounted = useRef27(false);
|
|
@@ -7766,12 +7884,12 @@ var InlineEditingControl = createControl(
|
|
|
7766
7884
|
props
|
|
7767
7885
|
}) => {
|
|
7768
7886
|
const { value, setValue, placeholder } = useBoundProp(htmlV3PropTypeUtil);
|
|
7769
|
-
const content =
|
|
7770
|
-
const debouncedParse =
|
|
7887
|
+
const content = stringPropTypeUtil20.extract(value?.content ?? null) ?? "";
|
|
7888
|
+
const debouncedParse = useMemo17(
|
|
7771
7889
|
() => debounce4((html) => {
|
|
7772
7890
|
const parsed = parseHtmlChildren(html);
|
|
7773
7891
|
setValue({
|
|
7774
|
-
content: parsed.content ?
|
|
7892
|
+
content: parsed.content ? stringPropTypeUtil20.create(parsed.content) : null,
|
|
7775
7893
|
children: parsed.children
|
|
7776
7894
|
});
|
|
7777
7895
|
}, CHILDREN_PARSE_DEBOUNCE_MS),
|
|
@@ -7781,7 +7899,7 @@ var InlineEditingControl = createControl(
|
|
|
7781
7899
|
(newValue) => {
|
|
7782
7900
|
const html = newValue ?? "";
|
|
7783
7901
|
setValue({
|
|
7784
|
-
content: html ?
|
|
7902
|
+
content: html ? stringPropTypeUtil20.create(html) : null,
|
|
7785
7903
|
children: value?.children ?? []
|
|
7786
7904
|
});
|
|
7787
7905
|
debouncedParse(html);
|
|
@@ -7789,7 +7907,7 @@ var InlineEditingControl = createControl(
|
|
|
7789
7907
|
[setValue, value?.children, debouncedParse]
|
|
7790
7908
|
);
|
|
7791
7909
|
useEffect17(() => () => debouncedParse.cancel(), [debouncedParse]);
|
|
7792
|
-
return /* @__PURE__ */
|
|
7910
|
+
return /* @__PURE__ */ React114.createElement(ControlActions, null, /* @__PURE__ */ React114.createElement(
|
|
7793
7911
|
Box24,
|
|
7794
7912
|
{
|
|
7795
7913
|
sx: {
|
|
@@ -7834,7 +7952,7 @@ var InlineEditingControl = createControl(
|
|
|
7834
7952
|
...attributes,
|
|
7835
7953
|
...props
|
|
7836
7954
|
},
|
|
7837
|
-
/* @__PURE__ */
|
|
7955
|
+
/* @__PURE__ */ React114.createElement(
|
|
7838
7956
|
InlineEditor,
|
|
7839
7957
|
{
|
|
7840
7958
|
value: content,
|
|
@@ -7847,12 +7965,12 @@ var InlineEditingControl = createControl(
|
|
|
7847
7965
|
);
|
|
7848
7966
|
|
|
7849
7967
|
// src/controls/email-form-action-control.tsx
|
|
7850
|
-
import * as
|
|
7968
|
+
import * as React115 from "react";
|
|
7851
7969
|
import { emailPropTypeUtil } from "@elementor/editor-props";
|
|
7852
7970
|
import { CollapsibleContent, InfoAlert as InfoAlert2 } from "@elementor/editor-ui";
|
|
7853
7971
|
import { Box as Box25, Divider as Divider5, Grid as Grid31, Stack as Stack19 } from "@elementor/ui";
|
|
7854
7972
|
import { hasProInstalled as hasProInstalled3, isVersionGreaterOrEqual as isVersionGreaterOrEqual2 } from "@elementor/utils";
|
|
7855
|
-
import { __ as
|
|
7973
|
+
import { __ as __56 } from "@wordpress/i18n";
|
|
7856
7974
|
|
|
7857
7975
|
// src/hooks/use-form-field-suggestions.ts
|
|
7858
7976
|
import { getContainer, getSelectedElements as getSelectedElements3 } from "@elementor/editor-elements";
|
|
@@ -7911,14 +8029,14 @@ function useFormFieldSuggestions(options) {
|
|
|
7911
8029
|
}
|
|
7912
8030
|
|
|
7913
8031
|
// src/controls/email-form-action-control.tsx
|
|
7914
|
-
var EmailField = ({ bind, label, placeholder }) => /* @__PURE__ */
|
|
7915
|
-
var SendToField = ({ placeholder }) => /* @__PURE__ */
|
|
7916
|
-
var SubjectField = () => /* @__PURE__ */
|
|
8032
|
+
var EmailField = ({ bind, label, placeholder }) => /* @__PURE__ */ React115.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React115.createElement(Grid31, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(ControlFormLabel, null, label)), /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(TextControl, { placeholder }))));
|
|
8033
|
+
var SendToField = ({ placeholder }) => /* @__PURE__ */ React115.createElement(EmailField, { bind: "to", label: __56("Send to", "elementor"), placeholder });
|
|
8034
|
+
var SubjectField = () => /* @__PURE__ */ React115.createElement(
|
|
7917
8035
|
EmailField,
|
|
7918
8036
|
{
|
|
7919
8037
|
bind: "subject",
|
|
7920
|
-
label:
|
|
7921
|
-
placeholder:
|
|
8038
|
+
label: __56("Email subject", "elementor"),
|
|
8039
|
+
placeholder: __56("New form submission", "elementor")
|
|
7922
8040
|
}
|
|
7923
8041
|
);
|
|
7924
8042
|
var MIN_PRO_VERSION_FOR_MENTIONS = "4.1.0";
|
|
@@ -7934,89 +8052,89 @@ var shouldShowMentionsInfo = () => {
|
|
|
7934
8052
|
};
|
|
7935
8053
|
var MessageField = () => {
|
|
7936
8054
|
const suggestions = useFormFieldSuggestions();
|
|
7937
|
-
return /* @__PURE__ */
|
|
8055
|
+
return /* @__PURE__ */ React115.createElement(PropKeyProvider, { bind: "message" }, /* @__PURE__ */ React115.createElement(Grid31, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(ControlFormLabel, null, __56("Message", "elementor"))), /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(MentionTextAreaControl, { suggestions })), /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(InfoAlert2, null, shouldShowMentionsInfo() ? __56(
|
|
7938
8056
|
"[all-fields] shortcode sends all fields. Type @ to insert specific fields and customize your message.",
|
|
7939
8057
|
"elementor"
|
|
7940
|
-
) :
|
|
8058
|
+
) : __56("[all-fields] shortcode sends all fields.", "elementor")))));
|
|
7941
8059
|
};
|
|
7942
|
-
var FromEmailField = () => /* @__PURE__ */
|
|
8060
|
+
var FromEmailField = () => /* @__PURE__ */ React115.createElement(
|
|
7943
8061
|
EmailField,
|
|
7944
8062
|
{
|
|
7945
8063
|
bind: "from",
|
|
7946
|
-
label:
|
|
7947
|
-
placeholder:
|
|
8064
|
+
label: __56("From email", "elementor"),
|
|
8065
|
+
placeholder: __56("What email should appear as the sender?", "elementor")
|
|
7948
8066
|
}
|
|
7949
8067
|
);
|
|
7950
|
-
var FromNameField = () => /* @__PURE__ */
|
|
8068
|
+
var FromNameField = () => /* @__PURE__ */ React115.createElement(
|
|
7951
8069
|
EmailField,
|
|
7952
8070
|
{
|
|
7953
8071
|
bind: "from-name",
|
|
7954
|
-
label:
|
|
7955
|
-
placeholder:
|
|
8072
|
+
label: __56("From name", "elementor"),
|
|
8073
|
+
placeholder: __56("What name should appear as the sender?", "elementor")
|
|
7956
8074
|
}
|
|
7957
8075
|
);
|
|
7958
8076
|
var ReplyToField = () => {
|
|
7959
8077
|
const emailSuggestions = useFormFieldSuggestions({ inputType: "email" });
|
|
7960
|
-
return /* @__PURE__ */
|
|
8078
|
+
return /* @__PURE__ */ React115.createElement(PropKeyProvider, { bind: "reply-to" }, /* @__PURE__ */ React115.createElement(Grid31, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(ControlFormLabel, null, __56("Reply-to", "elementor"))), /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(
|
|
7961
8079
|
MentionTextAreaControl,
|
|
7962
8080
|
{
|
|
7963
8081
|
suggestions: emailSuggestions,
|
|
7964
8082
|
rows: 1,
|
|
7965
8083
|
triggerPosition: "start",
|
|
7966
|
-
placeholder:
|
|
8084
|
+
placeholder: __56("You can type @ to insert an email field", "elementor")
|
|
7967
8085
|
}
|
|
7968
8086
|
))));
|
|
7969
8087
|
};
|
|
7970
|
-
var CcField = () => /* @__PURE__ */
|
|
7971
|
-
var BccField = () => /* @__PURE__ */
|
|
7972
|
-
var MetaDataField = () => /* @__PURE__ */
|
|
8088
|
+
var CcField = () => /* @__PURE__ */ React115.createElement(EmailField, { bind: "cc", label: __56("Cc", "elementor") });
|
|
8089
|
+
var BccField = () => /* @__PURE__ */ React115.createElement(EmailField, { bind: "bcc", label: __56("Bcc", "elementor") });
|
|
8090
|
+
var MetaDataField = () => /* @__PURE__ */ React115.createElement(PropKeyProvider, { bind: "meta-data" }, /* @__PURE__ */ React115.createElement(Stack19, { gap: 0.5 }, /* @__PURE__ */ React115.createElement(ControlFormLabel, null, __56("Metadata", "elementor")), /* @__PURE__ */ React115.createElement(
|
|
7973
8091
|
ChipsControl,
|
|
7974
8092
|
{
|
|
7975
8093
|
options: [
|
|
7976
|
-
{ label:
|
|
7977
|
-
{ label:
|
|
7978
|
-
{ label:
|
|
7979
|
-
{ label:
|
|
7980
|
-
{ label:
|
|
8094
|
+
{ label: __56("Date", "elementor"), value: "date" },
|
|
8095
|
+
{ label: __56("Time", "elementor"), value: "time" },
|
|
8096
|
+
{ label: __56("Page URL", "elementor"), value: "page-url" },
|
|
8097
|
+
{ label: __56("User agent", "elementor"), value: "user-agent" },
|
|
8098
|
+
{ label: __56("Credit", "elementor"), value: "credit" }
|
|
7981
8099
|
]
|
|
7982
8100
|
}
|
|
7983
8101
|
)));
|
|
7984
|
-
var SendAsField = () => /* @__PURE__ */
|
|
8102
|
+
var SendAsField = () => /* @__PURE__ */ React115.createElement(PropKeyProvider, { bind: "send-as" }, /* @__PURE__ */ React115.createElement(Grid31, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(ControlFormLabel, null, __56("Send as", "elementor"))), /* @__PURE__ */ React115.createElement(Grid31, { item: true }, /* @__PURE__ */ React115.createElement(
|
|
7985
8103
|
SelectControl,
|
|
7986
8104
|
{
|
|
7987
8105
|
options: [
|
|
7988
|
-
{ label:
|
|
7989
|
-
{ label:
|
|
8106
|
+
{ label: __56("HTML", "elementor"), value: "html" },
|
|
8107
|
+
{ label: __56("Plain Text", "elementor"), value: "plain" }
|
|
7990
8108
|
]
|
|
7991
8109
|
}
|
|
7992
8110
|
))));
|
|
7993
|
-
var AdvancedSettings = () => /* @__PURE__ */
|
|
8111
|
+
var AdvancedSettings = () => /* @__PURE__ */ React115.createElement(CollapsibleContent, { defaultOpen: false }, /* @__PURE__ */ React115.createElement(Box25, { sx: { pt: 2 } }, /* @__PURE__ */ React115.createElement(Stack19, { gap: 2 }, /* @__PURE__ */ React115.createElement(FromNameField, null), /* @__PURE__ */ React115.createElement(ReplyToField, null), /* @__PURE__ */ React115.createElement(CcField, null), /* @__PURE__ */ React115.createElement(BccField, null), /* @__PURE__ */ React115.createElement(Divider5, null), /* @__PURE__ */ React115.createElement(MetaDataField, null), /* @__PURE__ */ React115.createElement(SendAsField, null))));
|
|
7994
8112
|
var EmailFormActionControl = createControl(({ toPlaceholder }) => {
|
|
7995
8113
|
const { value, setValue, ...propContext } = useBoundProp(emailPropTypeUtil);
|
|
7996
|
-
return /* @__PURE__ */
|
|
8114
|
+
return /* @__PURE__ */ React115.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React115.createElement(Stack19, { gap: 2 }, /* @__PURE__ */ React115.createElement(ControlLabel, null, __56("Email settings", "elementor")), /* @__PURE__ */ React115.createElement(SendToField, { placeholder: toPlaceholder }), /* @__PURE__ */ React115.createElement(SubjectField, null), /* @__PURE__ */ React115.createElement(MessageField, null), /* @__PURE__ */ React115.createElement(FromEmailField, null), /* @__PURE__ */ React115.createElement(AdvancedSettings, null)));
|
|
7997
8115
|
});
|
|
7998
8116
|
|
|
7999
8117
|
// src/controls/attachment-type-control.tsx
|
|
8000
|
-
import * as
|
|
8118
|
+
import * as React116 from "react";
|
|
8001
8119
|
import { InfoAlert as InfoAlert3 } from "@elementor/editor-ui";
|
|
8002
8120
|
import { Grid as Grid32 } from "@elementor/ui";
|
|
8003
|
-
import { __ as
|
|
8121
|
+
import { __ as __57 } from "@wordpress/i18n";
|
|
8004
8122
|
var AttachmentTypeControl = createControl(({ label, options }) => {
|
|
8005
|
-
return /* @__PURE__ */
|
|
8123
|
+
return /* @__PURE__ */ React116.createElement(Grid32, { container: true, direction: "column", gap: 1 }, label && /* @__PURE__ */ React116.createElement(Grid32, { item: true }, /* @__PURE__ */ React116.createElement(ControlFormLabel, null, label)), /* @__PURE__ */ React116.createElement(Grid32, { item: true }, /* @__PURE__ */ React116.createElement(SelectControl, { options })), /* @__PURE__ */ React116.createElement(Grid32, { item: true }, /* @__PURE__ */ React116.createElement(InfoAlert3, null, __57(
|
|
8006
8124
|
"Linked uploads are saved to the server. Direct attachments will not appear under Submissions.",
|
|
8007
8125
|
"elementor"
|
|
8008
8126
|
))));
|
|
8009
8127
|
});
|
|
8010
8128
|
|
|
8011
8129
|
// src/components/promotions/display-conditions-control.tsx
|
|
8012
|
-
import * as
|
|
8130
|
+
import * as React118 from "react";
|
|
8013
8131
|
import { useRef as useRef28 } from "react";
|
|
8014
8132
|
import { SitemapIcon } from "@elementor/icons";
|
|
8015
8133
|
import { IconButton as IconButton8, Stack as Stack20, Tooltip as Tooltip9 } from "@elementor/ui";
|
|
8016
|
-
import { __ as
|
|
8134
|
+
import { __ as __58 } from "@wordpress/i18n";
|
|
8017
8135
|
|
|
8018
8136
|
// src/components/promotions/promotion-trigger.tsx
|
|
8019
|
-
import * as
|
|
8137
|
+
import * as React117 from "react";
|
|
8020
8138
|
import { forwardRef as forwardRef12, useCallback as useCallback5, useImperativeHandle, useState as useState19 } from "react";
|
|
8021
8139
|
import { PromotionChip as PromotionChip2, PromotionInfotip } from "@elementor/editor-ui";
|
|
8022
8140
|
import { Box as Box26 } from "@elementor/ui";
|
|
@@ -8036,7 +8154,7 @@ var PromotionTrigger = forwardRef12(
|
|
|
8036
8154
|
});
|
|
8037
8155
|
}, [trackingData]);
|
|
8038
8156
|
useImperativeHandle(ref, () => ({ toggle }), [toggle]);
|
|
8039
|
-
return /* @__PURE__ */
|
|
8157
|
+
return /* @__PURE__ */ React117.createElement(React117.Fragment, null, promotion && /* @__PURE__ */ React117.createElement(
|
|
8040
8158
|
PromotionInfotip,
|
|
8041
8159
|
{
|
|
8042
8160
|
title: promotion.title,
|
|
@@ -8050,7 +8168,7 @@ var PromotionTrigger = forwardRef12(
|
|
|
8050
8168
|
},
|
|
8051
8169
|
onCtaClick: () => trackUpgradePromotionClick(trackingData)
|
|
8052
8170
|
},
|
|
8053
|
-
/* @__PURE__ */
|
|
8171
|
+
/* @__PURE__ */ React117.createElement(
|
|
8054
8172
|
Box26,
|
|
8055
8173
|
{
|
|
8056
8174
|
onClick: (e) => {
|
|
@@ -8059,18 +8177,18 @@ var PromotionTrigger = forwardRef12(
|
|
|
8059
8177
|
},
|
|
8060
8178
|
sx: { cursor: "pointer", display: "inline-flex" }
|
|
8061
8179
|
},
|
|
8062
|
-
children ?? /* @__PURE__ */
|
|
8180
|
+
children ?? /* @__PURE__ */ React117.createElement(PromotionChip2, null)
|
|
8063
8181
|
)
|
|
8064
8182
|
));
|
|
8065
8183
|
}
|
|
8066
8184
|
);
|
|
8067
8185
|
|
|
8068
8186
|
// src/components/promotions/display-conditions-control.tsx
|
|
8069
|
-
var ARIA_LABEL =
|
|
8187
|
+
var ARIA_LABEL = __58("Display Conditions", "elementor");
|
|
8070
8188
|
var TRACKING_DATA = { target_name: "display_conditions", location_l2: "general" };
|
|
8071
8189
|
var DisplayConditionsControl = createControl(() => {
|
|
8072
8190
|
const triggerRef = useRef28(null);
|
|
8073
|
-
return /* @__PURE__ */
|
|
8191
|
+
return /* @__PURE__ */ React118.createElement(
|
|
8074
8192
|
Stack20,
|
|
8075
8193
|
{
|
|
8076
8194
|
direction: "row",
|
|
@@ -8080,8 +8198,8 @@ var DisplayConditionsControl = createControl(() => {
|
|
|
8080
8198
|
alignItems: "center"
|
|
8081
8199
|
}
|
|
8082
8200
|
},
|
|
8083
|
-
/* @__PURE__ */
|
|
8084
|
-
/* @__PURE__ */
|
|
8201
|
+
/* @__PURE__ */ React118.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "displayConditions", trackingData: TRACKING_DATA }),
|
|
8202
|
+
/* @__PURE__ */ React118.createElement(Tooltip9, { title: ARIA_LABEL, placement: "top" }, /* @__PURE__ */ React118.createElement(
|
|
8085
8203
|
IconButton8,
|
|
8086
8204
|
{
|
|
8087
8205
|
size: "tiny",
|
|
@@ -8094,22 +8212,22 @@ var DisplayConditionsControl = createControl(() => {
|
|
|
8094
8212
|
borderRadius: 1
|
|
8095
8213
|
}
|
|
8096
8214
|
},
|
|
8097
|
-
/* @__PURE__ */
|
|
8215
|
+
/* @__PURE__ */ React118.createElement(SitemapIcon, { fontSize: "tiny", color: "disabled" })
|
|
8098
8216
|
))
|
|
8099
8217
|
);
|
|
8100
8218
|
});
|
|
8101
8219
|
|
|
8102
8220
|
// src/components/promotions/attributes-control.tsx
|
|
8103
|
-
import * as
|
|
8221
|
+
import * as React119 from "react";
|
|
8104
8222
|
import { useRef as useRef29 } from "react";
|
|
8105
8223
|
import { PlusIcon as PlusIcon3 } from "@elementor/icons";
|
|
8106
8224
|
import { Stack as Stack21, Tooltip as Tooltip10 } from "@elementor/ui";
|
|
8107
|
-
import { __ as
|
|
8108
|
-
var ARIA_LABEL2 =
|
|
8225
|
+
import { __ as __59 } from "@wordpress/i18n";
|
|
8226
|
+
var ARIA_LABEL2 = __59("Attributes", "elementor");
|
|
8109
8227
|
var TRACKING_DATA2 = { target_name: "attributes", location_l2: "general" };
|
|
8110
8228
|
var AttributesControl = createControl(() => {
|
|
8111
8229
|
const triggerRef = useRef29(null);
|
|
8112
|
-
return /* @__PURE__ */
|
|
8230
|
+
return /* @__PURE__ */ React119.createElement(
|
|
8113
8231
|
Stack21,
|
|
8114
8232
|
{
|
|
8115
8233
|
direction: "row",
|
|
@@ -8119,8 +8237,8 @@ var AttributesControl = createControl(() => {
|
|
|
8119
8237
|
alignItems: "center"
|
|
8120
8238
|
}
|
|
8121
8239
|
},
|
|
8122
|
-
/* @__PURE__ */
|
|
8123
|
-
/* @__PURE__ */
|
|
8240
|
+
/* @__PURE__ */ React119.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "attributes", trackingData: TRACKING_DATA2 }),
|
|
8241
|
+
/* @__PURE__ */ React119.createElement(Tooltip10, { title: ARIA_LABEL2, placement: "top" }, /* @__PURE__ */ React119.createElement(
|
|
8124
8242
|
PlusIcon3,
|
|
8125
8243
|
{
|
|
8126
8244
|
"aria-label": ARIA_LABEL2,
|
|
@@ -8134,17 +8252,17 @@ var AttributesControl = createControl(() => {
|
|
|
8134
8252
|
});
|
|
8135
8253
|
|
|
8136
8254
|
// src/components/icon-buttons/clear-icon-button.tsx
|
|
8137
|
-
import * as
|
|
8255
|
+
import * as React120 from "react";
|
|
8138
8256
|
import { BrushBigIcon } from "@elementor/icons";
|
|
8139
8257
|
import { IconButton as IconButton9, styled as styled11, Tooltip as Tooltip11 } from "@elementor/ui";
|
|
8140
8258
|
var CustomIconButton = styled11(IconButton9)(({ theme }) => ({
|
|
8141
8259
|
width: theme.spacing(2.5),
|
|
8142
8260
|
height: theme.spacing(2.5)
|
|
8143
8261
|
}));
|
|
8144
|
-
var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /* @__PURE__ */
|
|
8262
|
+
var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /* @__PURE__ */ React120.createElement(Tooltip11, { title: tooltipText, placement: "top", disableInteractive: true }, /* @__PURE__ */ React120.createElement(CustomIconButton, { "aria-label": tooltipText, size, onClick, disabled }, /* @__PURE__ */ React120.createElement(BrushBigIcon, { fontSize: size })));
|
|
8145
8263
|
|
|
8146
8264
|
// src/components/repeater/repeater.tsx
|
|
8147
|
-
import * as
|
|
8265
|
+
import * as React121 from "react";
|
|
8148
8266
|
import { useEffect as useEffect18, useState as useState20 } from "react";
|
|
8149
8267
|
import { CopyIcon as CopyIcon2, EyeIcon as EyeIcon2, EyeOffIcon as EyeOffIcon2, PlusIcon as PlusIcon4, XIcon as XIcon4 } from "@elementor/icons";
|
|
8150
8268
|
import {
|
|
@@ -8156,8 +8274,8 @@ import {
|
|
|
8156
8274
|
Tooltip as Tooltip12,
|
|
8157
8275
|
usePopupState as usePopupState10
|
|
8158
8276
|
} from "@elementor/ui";
|
|
8159
|
-
import { __ as
|
|
8160
|
-
var
|
|
8277
|
+
import { __ as __60 } from "@wordpress/i18n";
|
|
8278
|
+
var SIZE12 = "tiny";
|
|
8161
8279
|
var EMPTY_OPEN_ITEM2 = -1;
|
|
8162
8280
|
var Repeater3 = ({
|
|
8163
8281
|
label,
|
|
@@ -8237,20 +8355,20 @@ var Repeater3 = ({
|
|
|
8237
8355
|
};
|
|
8238
8356
|
const isButtonDisabled = disabled || disableAddItemButton;
|
|
8239
8357
|
const shouldShowInfotip = isButtonDisabled && addButtonInfotipContent;
|
|
8240
|
-
const addButton = /* @__PURE__ */
|
|
8358
|
+
const addButton = /* @__PURE__ */ React121.createElement(
|
|
8241
8359
|
IconButton10,
|
|
8242
8360
|
{
|
|
8243
|
-
size:
|
|
8361
|
+
size: SIZE12,
|
|
8244
8362
|
sx: {
|
|
8245
8363
|
ml: "auto"
|
|
8246
8364
|
},
|
|
8247
8365
|
disabled: isButtonDisabled,
|
|
8248
8366
|
onClick: addRepeaterItem,
|
|
8249
|
-
"aria-label":
|
|
8367
|
+
"aria-label": __60("Add item", "elementor")
|
|
8250
8368
|
},
|
|
8251
|
-
/* @__PURE__ */
|
|
8369
|
+
/* @__PURE__ */ React121.createElement(PlusIcon4, { fontSize: SIZE12 })
|
|
8252
8370
|
);
|
|
8253
|
-
return /* @__PURE__ */
|
|
8371
|
+
return /* @__PURE__ */ React121.createElement(SectionContent, { gap: 2 }, /* @__PURE__ */ React121.createElement(RepeaterHeader, { label, adornment: ControlAdornments }, shouldShowInfotip ? /* @__PURE__ */ React121.createElement(
|
|
8254
8372
|
Infotip4,
|
|
8255
8373
|
{
|
|
8256
8374
|
placement: "right",
|
|
@@ -8258,20 +8376,20 @@ var Repeater3 = ({
|
|
|
8258
8376
|
color: "secondary",
|
|
8259
8377
|
slotProps: { popper: { sx: { width: 300 } } }
|
|
8260
8378
|
},
|
|
8261
|
-
/* @__PURE__ */
|
|
8262
|
-
) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */
|
|
8379
|
+
/* @__PURE__ */ React121.createElement(Box27, { sx: { ...isButtonDisabled ? { cursor: "not-allowed" } : {} } }, addButton)
|
|
8380
|
+
) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */ React121.createElement(SortableProvider, { value: uniqueKeys, onChange: onChangeOrder }, uniqueKeys.map((key) => {
|
|
8263
8381
|
const index = uniqueKeys.indexOf(key);
|
|
8264
8382
|
const value = items2[index];
|
|
8265
8383
|
if (!value) {
|
|
8266
8384
|
return null;
|
|
8267
8385
|
}
|
|
8268
|
-
return /* @__PURE__ */
|
|
8386
|
+
return /* @__PURE__ */ React121.createElement(SortableItem, { id: key, key: `sortable-${key}`, disabled: !isSortable }, /* @__PURE__ */ React121.createElement(
|
|
8269
8387
|
RepeaterItem,
|
|
8270
8388
|
{
|
|
8271
8389
|
disabled,
|
|
8272
8390
|
propDisabled: value?.disabled,
|
|
8273
|
-
label: /* @__PURE__ */
|
|
8274
|
-
startIcon: /* @__PURE__ */
|
|
8391
|
+
label: /* @__PURE__ */ React121.createElement(RepeaterItemLabelSlot, { value }, /* @__PURE__ */ React121.createElement(itemSettings.Label, { value, index })),
|
|
8392
|
+
startIcon: /* @__PURE__ */ React121.createElement(RepeaterItemIconSlot, { value }, /* @__PURE__ */ React121.createElement(itemSettings.Icon, { value })),
|
|
8275
8393
|
removeItem: () => removeRepeaterItem(index),
|
|
8276
8394
|
duplicateItem: () => duplicateRepeaterItem(index),
|
|
8277
8395
|
toggleDisableItem: () => toggleDisableRepeaterItem(index),
|
|
@@ -8285,7 +8403,7 @@ var Repeater3 = ({
|
|
|
8285
8403
|
actions: itemSettings.actions,
|
|
8286
8404
|
value
|
|
8287
8405
|
},
|
|
8288
|
-
(props) => /* @__PURE__ */
|
|
8406
|
+
(props) => /* @__PURE__ */ React121.createElement(
|
|
8289
8407
|
itemSettings.Content,
|
|
8290
8408
|
{
|
|
8291
8409
|
...props,
|
|
@@ -8327,16 +8445,16 @@ var RepeaterItem = ({
|
|
|
8327
8445
|
);
|
|
8328
8446
|
const triggerProps = bindTrigger7(popoverState);
|
|
8329
8447
|
usePopoverDismiss({ isOpen: popoverState.isOpen, onClose: popoverProps.onClose });
|
|
8330
|
-
const duplicateLabel =
|
|
8331
|
-
const toggleLabel = propDisabled ?
|
|
8332
|
-
const removeLabel =
|
|
8333
|
-
return /* @__PURE__ */
|
|
8448
|
+
const duplicateLabel = __60("Duplicate", "elementor");
|
|
8449
|
+
const toggleLabel = propDisabled ? __60("Show", "elementor") : __60("Hide", "elementor");
|
|
8450
|
+
const removeLabel = __60("Remove", "elementor");
|
|
8451
|
+
return /* @__PURE__ */ React121.createElement(Box27, { sx: { display: "contents" } }, /* @__PURE__ */ React121.createElement(
|
|
8334
8452
|
RepeaterTag,
|
|
8335
8453
|
{
|
|
8336
8454
|
disabled,
|
|
8337
8455
|
label,
|
|
8338
8456
|
ref: setRef,
|
|
8339
|
-
"aria-label":
|
|
8457
|
+
"aria-label": __60("Open item", "elementor"),
|
|
8340
8458
|
...triggerProps,
|
|
8341
8459
|
onClick: (e) => {
|
|
8342
8460
|
triggerProps.onClick(e);
|
|
@@ -8345,9 +8463,9 @@ var RepeaterItem = ({
|
|
|
8345
8463
|
}
|
|
8346
8464
|
},
|
|
8347
8465
|
startIcon,
|
|
8348
|
-
actions: /* @__PURE__ */
|
|
8466
|
+
actions: /* @__PURE__ */ React121.createElement(React121.Fragment, null, showDuplicate && /* @__PURE__ */ React121.createElement(Tooltip12, { title: duplicateLabel, placement: "top" }, /* @__PURE__ */ React121.createElement(IconButton10, { size: SIZE12, onClick: duplicateItem, "aria-label": duplicateLabel }, /* @__PURE__ */ React121.createElement(CopyIcon2, { fontSize: SIZE12 }))), showToggle && /* @__PURE__ */ React121.createElement(Tooltip12, { title: toggleLabel, placement: "top" }, /* @__PURE__ */ React121.createElement(IconButton10, { size: SIZE12, onClick: toggleDisableItem, "aria-label": toggleLabel }, propDisabled ? /* @__PURE__ */ React121.createElement(EyeOffIcon2, { fontSize: SIZE12 }) : /* @__PURE__ */ React121.createElement(EyeIcon2, { fontSize: SIZE12 }))), actions?.(value), showRemove && /* @__PURE__ */ React121.createElement(Tooltip12, { title: removeLabel, placement: "top" }, /* @__PURE__ */ React121.createElement(IconButton10, { size: SIZE12, onClick: removeItem, "aria-label": removeLabel }, /* @__PURE__ */ React121.createElement(XIcon4, { fontSize: SIZE12 }))))
|
|
8349
8467
|
}
|
|
8350
|
-
), /* @__PURE__ */
|
|
8468
|
+
), /* @__PURE__ */ React121.createElement(RepeaterPopover, { width: ref?.getBoundingClientRect().width, ...popoverProps, anchorEl: ref }, /* @__PURE__ */ React121.createElement(Box27, null, children({ anchorEl: ref }))));
|
|
8351
8469
|
};
|
|
8352
8470
|
var usePopover = (openOnMount, onOpen, onPopoverClose) => {
|
|
8353
8471
|
const [ref, setRef] = useState20(null);
|
|
@@ -8372,8 +8490,8 @@ var usePopover = (openOnMount, onOpen, onPopoverClose) => {
|
|
|
8372
8490
|
};
|
|
8373
8491
|
|
|
8374
8492
|
// src/components/inline-editor-toolbar.tsx
|
|
8375
|
-
import * as
|
|
8376
|
-
import { useEffect as useEffect20, useMemo as
|
|
8493
|
+
import * as React123 from "react";
|
|
8494
|
+
import { useEffect as useEffect20, useMemo as useMemo18, useRef as useRef31, useState as useState21 } from "react";
|
|
8377
8495
|
import { getContainer as getContainer2, getElementSetting } from "@elementor/editor-elements";
|
|
8378
8496
|
import {
|
|
8379
8497
|
BoldIcon,
|
|
@@ -8395,14 +8513,14 @@ import {
|
|
|
8395
8513
|
usePopupState as usePopupState11
|
|
8396
8514
|
} from "@elementor/ui";
|
|
8397
8515
|
import { useEditorState } from "@tiptap/react";
|
|
8398
|
-
import { __ as
|
|
8516
|
+
import { __ as __62 } from "@wordpress/i18n";
|
|
8399
8517
|
|
|
8400
8518
|
// src/components/url-popover.tsx
|
|
8401
|
-
import * as
|
|
8519
|
+
import * as React122 from "react";
|
|
8402
8520
|
import { useEffect as useEffect19, useRef as useRef30 } from "react";
|
|
8403
8521
|
import { ExternalLinkIcon } from "@elementor/icons";
|
|
8404
|
-
import { bindPopover as bindPopover9, Popover as Popover8, Stack as Stack22, TextField as
|
|
8405
|
-
import { __ as
|
|
8522
|
+
import { bindPopover as bindPopover9, Popover as Popover8, Stack as Stack22, TextField as TextField11, ToggleButton as ToggleButton2, Tooltip as Tooltip13 } from "@elementor/ui";
|
|
8523
|
+
import { __ as __61 } from "@wordpress/i18n";
|
|
8406
8524
|
var UrlPopover = ({
|
|
8407
8525
|
popupState,
|
|
8408
8526
|
restoreValue,
|
|
@@ -8422,7 +8540,7 @@ var UrlPopover = ({
|
|
|
8422
8540
|
restoreValue();
|
|
8423
8541
|
popupState.close();
|
|
8424
8542
|
};
|
|
8425
|
-
return /* @__PURE__ */
|
|
8543
|
+
return /* @__PURE__ */ React122.createElement(
|
|
8426
8544
|
Popover8,
|
|
8427
8545
|
{
|
|
8428
8546
|
slotProps: {
|
|
@@ -8433,30 +8551,30 @@ var UrlPopover = ({
|
|
|
8433
8551
|
transformOrigin: { vertical: "top", horizontal: "left" },
|
|
8434
8552
|
onClose: handleClose
|
|
8435
8553
|
},
|
|
8436
|
-
/* @__PURE__ */
|
|
8437
|
-
|
|
8554
|
+
/* @__PURE__ */ React122.createElement(Stack22, { direction: "row", alignItems: "center", gap: 1, sx: { p: 1.5 } }, /* @__PURE__ */ React122.createElement(
|
|
8555
|
+
TextField11,
|
|
8438
8556
|
{
|
|
8439
8557
|
value,
|
|
8440
8558
|
onChange,
|
|
8441
8559
|
size: "tiny",
|
|
8442
8560
|
fullWidth: true,
|
|
8443
|
-
placeholder:
|
|
8561
|
+
placeholder: __61("Type a URL", "elementor"),
|
|
8444
8562
|
inputProps: { ref: inputRef },
|
|
8445
8563
|
color: "secondary",
|
|
8446
8564
|
InputProps: { sx: { borderRadius: "8px" } },
|
|
8447
8565
|
onKeyUp: (event) => event.key === "Enter" && handleClose()
|
|
8448
8566
|
}
|
|
8449
|
-
), /* @__PURE__ */
|
|
8567
|
+
), /* @__PURE__ */ React122.createElement(Tooltip13, { title: __61("Open in a new tab", "elementor") }, /* @__PURE__ */ React122.createElement(
|
|
8450
8568
|
ToggleButton2,
|
|
8451
8569
|
{
|
|
8452
8570
|
size: "tiny",
|
|
8453
8571
|
value: "newTab",
|
|
8454
8572
|
selected: openInNewTab,
|
|
8455
8573
|
onClick: onToggleNewTab,
|
|
8456
|
-
"aria-label":
|
|
8574
|
+
"aria-label": __61("Open in a new tab", "elementor"),
|
|
8457
8575
|
sx: { borderRadius: "8px" }
|
|
8458
8576
|
},
|
|
8459
|
-
/* @__PURE__ */
|
|
8577
|
+
/* @__PURE__ */ React122.createElement(ExternalLinkIcon, { fontSize: "tiny" })
|
|
8460
8578
|
)))
|
|
8461
8579
|
);
|
|
8462
8580
|
};
|
|
@@ -8472,7 +8590,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
8472
8590
|
editor,
|
|
8473
8591
|
selector: (ctx) => possibleFormats.filter((format) => ctx.editor.isActive(format))
|
|
8474
8592
|
});
|
|
8475
|
-
const formatButtonsList =
|
|
8593
|
+
const formatButtonsList = useMemo18(() => {
|
|
8476
8594
|
const buttons = Object.values(formatButtons);
|
|
8477
8595
|
if (isElementClickable) {
|
|
8478
8596
|
return buttons.filter((button) => button.action !== "link");
|
|
@@ -8512,7 +8630,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
8512
8630
|
useEffect20(() => {
|
|
8513
8631
|
editor?.commands?.focus();
|
|
8514
8632
|
}, [editor]);
|
|
8515
|
-
return /* @__PURE__ */
|
|
8633
|
+
return /* @__PURE__ */ React123.createElement(
|
|
8516
8634
|
Box28,
|
|
8517
8635
|
{
|
|
8518
8636
|
ref: toolbarRef,
|
|
@@ -8529,8 +8647,8 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
8529
8647
|
...sx
|
|
8530
8648
|
}
|
|
8531
8649
|
},
|
|
8532
|
-
/* @__PURE__ */
|
|
8533
|
-
/* @__PURE__ */
|
|
8650
|
+
/* @__PURE__ */ React123.createElement(Tooltip14, { title: clearButton.label, placement: "top", sx: { borderRadius: "8px" } }, /* @__PURE__ */ React123.createElement(IconButton11, { "aria-label": clearButton.label, onClick: () => clearButton.method(editor), size: "tiny" }, clearButton.icon)),
|
|
8651
|
+
/* @__PURE__ */ React123.createElement(
|
|
8534
8652
|
ToggleButtonGroup2,
|
|
8535
8653
|
{
|
|
8536
8654
|
value: editorState,
|
|
@@ -8552,7 +8670,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
8552
8670
|
}
|
|
8553
8671
|
}
|
|
8554
8672
|
},
|
|
8555
|
-
formatButtonsList.map((button) => /* @__PURE__ */
|
|
8673
|
+
formatButtonsList.map((button) => /* @__PURE__ */ React123.createElement(Tooltip14, { title: button.label, key: button.action, placement: "top" }, /* @__PURE__ */ React123.createElement(
|
|
8556
8674
|
ToggleButton3,
|
|
8557
8675
|
{
|
|
8558
8676
|
value: button.action,
|
|
@@ -8570,7 +8688,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
8570
8688
|
button.icon
|
|
8571
8689
|
)))
|
|
8572
8690
|
),
|
|
8573
|
-
/* @__PURE__ */
|
|
8691
|
+
/* @__PURE__ */ React123.createElement(
|
|
8574
8692
|
UrlPopover,
|
|
8575
8693
|
{
|
|
8576
8694
|
popupState: linkPopupState,
|
|
@@ -8593,64 +8711,64 @@ var checkIfElementIsClickable = (elementId) => {
|
|
|
8593
8711
|
};
|
|
8594
8712
|
var toolbarButtons = {
|
|
8595
8713
|
clear: {
|
|
8596
|
-
label:
|
|
8597
|
-
icon: /* @__PURE__ */
|
|
8714
|
+
label: __62("Clear", "elementor"),
|
|
8715
|
+
icon: /* @__PURE__ */ React123.createElement(MinusIcon2, { fontSize: "tiny" }),
|
|
8598
8716
|
action: "clear",
|
|
8599
8717
|
method: (editor) => {
|
|
8600
8718
|
editor.chain().focus().clearNodes().unsetAllMarks().run();
|
|
8601
8719
|
}
|
|
8602
8720
|
},
|
|
8603
8721
|
bold: {
|
|
8604
|
-
label:
|
|
8605
|
-
icon: /* @__PURE__ */
|
|
8722
|
+
label: __62("Bold", "elementor"),
|
|
8723
|
+
icon: /* @__PURE__ */ React123.createElement(BoldIcon, { fontSize: "tiny" }),
|
|
8606
8724
|
action: "bold",
|
|
8607
8725
|
method: (editor) => {
|
|
8608
8726
|
editor.chain().focus().toggleBold().run();
|
|
8609
8727
|
}
|
|
8610
8728
|
},
|
|
8611
8729
|
italic: {
|
|
8612
|
-
label:
|
|
8613
|
-
icon: /* @__PURE__ */
|
|
8730
|
+
label: __62("Italic", "elementor"),
|
|
8731
|
+
icon: /* @__PURE__ */ React123.createElement(ItalicIcon, { fontSize: "tiny" }),
|
|
8614
8732
|
action: "italic",
|
|
8615
8733
|
method: (editor) => {
|
|
8616
8734
|
editor.chain().focus().toggleItalic().run();
|
|
8617
8735
|
}
|
|
8618
8736
|
},
|
|
8619
8737
|
underline: {
|
|
8620
|
-
label:
|
|
8621
|
-
icon: /* @__PURE__ */
|
|
8738
|
+
label: __62("Underline", "elementor"),
|
|
8739
|
+
icon: /* @__PURE__ */ React123.createElement(UnderlineIcon, { fontSize: "tiny" }),
|
|
8622
8740
|
action: "underline",
|
|
8623
8741
|
method: (editor) => {
|
|
8624
8742
|
editor.chain().focus().toggleUnderline().run();
|
|
8625
8743
|
}
|
|
8626
8744
|
},
|
|
8627
8745
|
strike: {
|
|
8628
|
-
label:
|
|
8629
|
-
icon: /* @__PURE__ */
|
|
8746
|
+
label: __62("Strikethrough", "elementor"),
|
|
8747
|
+
icon: /* @__PURE__ */ React123.createElement(StrikethroughIcon, { fontSize: "tiny" }),
|
|
8630
8748
|
action: "strike",
|
|
8631
8749
|
method: (editor) => {
|
|
8632
8750
|
editor.chain().focus().toggleStrike().run();
|
|
8633
8751
|
}
|
|
8634
8752
|
},
|
|
8635
8753
|
superscript: {
|
|
8636
|
-
label:
|
|
8637
|
-
icon: /* @__PURE__ */
|
|
8754
|
+
label: __62("Superscript", "elementor"),
|
|
8755
|
+
icon: /* @__PURE__ */ React123.createElement(SuperscriptIcon, { fontSize: "tiny" }),
|
|
8638
8756
|
action: "superscript",
|
|
8639
8757
|
method: (editor) => {
|
|
8640
8758
|
editor.chain().focus().toggleSuperscript().run();
|
|
8641
8759
|
}
|
|
8642
8760
|
},
|
|
8643
8761
|
subscript: {
|
|
8644
|
-
label:
|
|
8645
|
-
icon: /* @__PURE__ */
|
|
8762
|
+
label: __62("Subscript", "elementor"),
|
|
8763
|
+
icon: /* @__PURE__ */ React123.createElement(SubscriptIcon, { fontSize: "tiny" }),
|
|
8646
8764
|
action: "subscript",
|
|
8647
8765
|
method: (editor) => {
|
|
8648
8766
|
editor.chain().focus().toggleSubscript().run();
|
|
8649
8767
|
}
|
|
8650
8768
|
},
|
|
8651
8769
|
link: {
|
|
8652
|
-
label:
|
|
8653
|
-
icon: /* @__PURE__ */
|
|
8770
|
+
label: __62("Link", "elementor"),
|
|
8771
|
+
icon: /* @__PURE__ */ React123.createElement(LinkIcon3, { fontSize: "tiny" }),
|
|
8654
8772
|
action: "link",
|
|
8655
8773
|
method: null
|
|
8656
8774
|
}
|
|
@@ -8659,7 +8777,7 @@ var { clear: clearButton, ...formatButtons } = toolbarButtons;
|
|
|
8659
8777
|
var possibleFormats = Object.keys(formatButtons);
|
|
8660
8778
|
|
|
8661
8779
|
// src/components/size/unstable-size-field.tsx
|
|
8662
|
-
import * as
|
|
8780
|
+
import * as React126 from "react";
|
|
8663
8781
|
import { InputAdornment as InputAdornment6 } from "@elementor/ui";
|
|
8664
8782
|
|
|
8665
8783
|
// src/hooks/use-size-value.ts
|
|
@@ -8702,7 +8820,7 @@ var differsFromExternal = (newState, externalState) => {
|
|
|
8702
8820
|
};
|
|
8703
8821
|
|
|
8704
8822
|
// src/components/size/unit-select.tsx
|
|
8705
|
-
import * as
|
|
8823
|
+
import * as React124 from "react";
|
|
8706
8824
|
import { useId as useId4 } from "react";
|
|
8707
8825
|
import { MenuListItem as MenuListItem8 } from "@elementor/editor-ui";
|
|
8708
8826
|
import { bindMenu as bindMenu3, bindTrigger as bindTrigger8, Button as Button7, Menu as Menu4, styled as styled12, usePopupState as usePopupState12 } from "@elementor/ui";
|
|
@@ -8720,7 +8838,7 @@ var UnitSelect = ({ value, showPrimaryColor, onClick, options }) => {
|
|
|
8720
8838
|
onClick(options[index]);
|
|
8721
8839
|
popupState.close();
|
|
8722
8840
|
};
|
|
8723
|
-
return /* @__PURE__ */
|
|
8841
|
+
return /* @__PURE__ */ React124.createElement(React124.Fragment, null, /* @__PURE__ */ React124.createElement(StyledButton3, { isPrimaryColor: showPrimaryColor, size: "small", ...bindTrigger8(popupState) }, value), /* @__PURE__ */ React124.createElement(Menu4, { MenuListProps: { dense: true }, ...bindMenu3(popupState) }, options.map((option, index) => /* @__PURE__ */ React124.createElement(
|
|
8724
8842
|
MenuListItem8,
|
|
8725
8843
|
{
|
|
8726
8844
|
key: option,
|
|
@@ -8749,11 +8867,11 @@ var StyledButton3 = styled12(Button7, {
|
|
|
8749
8867
|
}));
|
|
8750
8868
|
|
|
8751
8869
|
// src/components/size/unstable-size-input.tsx
|
|
8752
|
-
import * as
|
|
8870
|
+
import * as React125 from "react";
|
|
8753
8871
|
import { forwardRef as forwardRef13 } from "react";
|
|
8754
8872
|
var UnstableSizeInput = forwardRef13(
|
|
8755
8873
|
({ type, value, onChange, onKeyDown, onKeyUp, InputProps, onBlur, focused, disabled }, ref) => {
|
|
8756
|
-
return /* @__PURE__ */
|
|
8874
|
+
return /* @__PURE__ */ React125.createElement(
|
|
8757
8875
|
NumberInput,
|
|
8758
8876
|
{
|
|
8759
8877
|
ref,
|
|
@@ -8791,7 +8909,7 @@ var UnstableSizeField = ({
|
|
|
8791
8909
|
const shouldHighlightUnit2 = () => {
|
|
8792
8910
|
return hasValue(size);
|
|
8793
8911
|
};
|
|
8794
|
-
return /* @__PURE__ */
|
|
8912
|
+
return /* @__PURE__ */ React126.createElement(
|
|
8795
8913
|
UnstableSizeInput,
|
|
8796
8914
|
{
|
|
8797
8915
|
type: "number",
|
|
@@ -8800,8 +8918,8 @@ var UnstableSizeField = ({
|
|
|
8800
8918
|
onChange: (event) => setSize(event.target.value),
|
|
8801
8919
|
InputProps: {
|
|
8802
8920
|
...InputProps,
|
|
8803
|
-
startAdornment: startIcon && /* @__PURE__ */
|
|
8804
|
-
endAdornment: /* @__PURE__ */
|
|
8921
|
+
startAdornment: startIcon && /* @__PURE__ */ React126.createElement(InputAdornment6, { position: "start" }, startIcon),
|
|
8922
|
+
endAdornment: /* @__PURE__ */ React126.createElement(InputAdornment6, { position: "end" }, /* @__PURE__ */ React126.createElement(
|
|
8805
8923
|
UnitSelect,
|
|
8806
8924
|
{
|
|
8807
8925
|
options: units2,
|
|
@@ -8819,7 +8937,7 @@ var hasValue = (value) => {
|
|
|
8819
8937
|
};
|
|
8820
8938
|
|
|
8821
8939
|
// src/hooks/use-font-families.ts
|
|
8822
|
-
import { useMemo as
|
|
8940
|
+
import { useMemo as useMemo19 } from "react";
|
|
8823
8941
|
import { getElementorConfig } from "@elementor/editor-v1-adapters";
|
|
8824
8942
|
var getFontControlConfig = () => {
|
|
8825
8943
|
const { controls } = getElementorConfig();
|
|
@@ -8827,7 +8945,7 @@ var getFontControlConfig = () => {
|
|
|
8827
8945
|
};
|
|
8828
8946
|
var useFontFamilies = () => {
|
|
8829
8947
|
const { groups, options } = getFontControlConfig();
|
|
8830
|
-
return
|
|
8948
|
+
return useMemo19(() => {
|
|
8831
8949
|
if (!groups || !options) {
|
|
8832
8950
|
return [];
|
|
8833
8951
|
}
|
|
@@ -8890,6 +9008,7 @@ export {
|
|
|
8890
9008
|
PromotionTrigger,
|
|
8891
9009
|
PropKeyProvider,
|
|
8892
9010
|
PropProvider,
|
|
9011
|
+
QueryChipsControl,
|
|
8893
9012
|
QueryControl,
|
|
8894
9013
|
RepeatableControl,
|
|
8895
9014
|
Repeater3 as Repeater,
|