@elementor/editor-controls 4.0.0-551 → 4.0.0-564
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.js +58 -33
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +65 -40
- package/dist/index.mjs.map +1 -1
- package/package.json +15 -15
- package/src/controls/chips-control.tsx +5 -3
- package/src/controls/inline-editing-control.tsx +37 -5
package/dist/index.mjs
CHANGED
|
@@ -2185,15 +2185,15 @@ var SelectControlWrapper = createControl(
|
|
|
2185
2185
|
|
|
2186
2186
|
// src/controls/chips-control.tsx
|
|
2187
2187
|
import * as React50 from "react";
|
|
2188
|
-
import { stringArrayPropTypeUtil } from "@elementor/editor-props";
|
|
2188
|
+
import { stringArrayPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil4 } from "@elementor/editor-props";
|
|
2189
2189
|
import { Autocomplete, Chip, TextField as TextField5 } from "@elementor/ui";
|
|
2190
2190
|
var SIZE6 = "tiny";
|
|
2191
2191
|
var ChipsControl = createControl(({ options }) => {
|
|
2192
2192
|
const { value, setValue, disabled } = useBoundProp(stringArrayPropTypeUtil);
|
|
2193
|
-
const selectedValues = value || [];
|
|
2193
|
+
const selectedValues = (value || []).map((item) => stringPropTypeUtil4.extract(item)).filter((val) => val !== null);
|
|
2194
2194
|
const selectedOptions = selectedValues.map((val) => options.find((opt) => opt.value === val)).filter((opt) => opt !== void 0);
|
|
2195
2195
|
const handleChange = (_, newValue) => {
|
|
2196
|
-
const values = newValue.map((option) => option.value);
|
|
2196
|
+
const values = newValue.map((option) => stringPropTypeUtil4.create(option.value));
|
|
2197
2197
|
setValue(values.length > 0 ? values : null);
|
|
2198
2198
|
};
|
|
2199
2199
|
return /* @__PURE__ */ React50.createElement(ControlActions, null, /* @__PURE__ */ React50.createElement(
|
|
@@ -2219,7 +2219,7 @@ var ChipsControl = createControl(({ options }) => {
|
|
|
2219
2219
|
|
|
2220
2220
|
// src/controls/toggle-control.tsx
|
|
2221
2221
|
import * as React54 from "react";
|
|
2222
|
-
import { stringPropTypeUtil as
|
|
2222
|
+
import { stringPropTypeUtil as stringPropTypeUtil5 } from "@elementor/editor-props";
|
|
2223
2223
|
|
|
2224
2224
|
// src/components/control-toggle-button-group.tsx
|
|
2225
2225
|
import * as React52 from "react";
|
|
@@ -2507,7 +2507,7 @@ var ToggleControl = createControl(
|
|
|
2507
2507
|
maxItems,
|
|
2508
2508
|
convertOptions = false
|
|
2509
2509
|
}) => {
|
|
2510
|
-
const { value, setValue, placeholder, disabled } = useBoundProp(
|
|
2510
|
+
const { value, setValue, placeholder, disabled } = useBoundProp(stringPropTypeUtil5);
|
|
2511
2511
|
const processedOptions = convertOptions ? convertToggleOptionsToAtomic(options) : options;
|
|
2512
2512
|
const exclusiveValues = processedOptions.filter((option) => option.exclusive).map((option) => option.value);
|
|
2513
2513
|
const handleNonExclusiveToggle = (selectedValues) => {
|
|
@@ -2885,7 +2885,7 @@ function getCssDimensionProps(label, isSiteRtl) {
|
|
|
2885
2885
|
|
|
2886
2886
|
// src/controls/font-family-control/font-family-control.tsx
|
|
2887
2887
|
import * as React59 from "react";
|
|
2888
|
-
import { stringPropTypeUtil as
|
|
2888
|
+
import { stringPropTypeUtil as stringPropTypeUtil6 } from "@elementor/editor-props";
|
|
2889
2889
|
import { ChevronDownIcon as ChevronDownIcon2, TextIcon } from "@elementor/icons";
|
|
2890
2890
|
import { bindPopover as bindPopover4, bindTrigger as bindTrigger3, Popover as Popover4, UnstableTag as UnstableTag2, usePopupState as usePopupState5 } from "@elementor/ui";
|
|
2891
2891
|
import { __ as __20 } from "@wordpress/i18n";
|
|
@@ -3064,7 +3064,7 @@ var FontFamilyControl = createControl(
|
|
|
3064
3064
|
setValue: setFontFamily,
|
|
3065
3065
|
disabled,
|
|
3066
3066
|
placeholder
|
|
3067
|
-
} = useBoundProp(
|
|
3067
|
+
} = useBoundProp(stringPropTypeUtil6);
|
|
3068
3068
|
const popoverState = usePopupState5({ variant: "popover" });
|
|
3069
3069
|
const isShowingPlaceholder = !fontFamily && placeholder;
|
|
3070
3070
|
const mapFontSubs = React59.useMemo(() => {
|
|
@@ -3221,7 +3221,7 @@ var RestrictedLinkInfotip = ({
|
|
|
3221
3221
|
// src/controls/query-control.tsx
|
|
3222
3222
|
import * as React63 from "react";
|
|
3223
3223
|
import { useMemo as useMemo7, useState as useState9 } from "react";
|
|
3224
|
-
import { numberPropTypeUtil as numberPropTypeUtil2, stringPropTypeUtil as
|
|
3224
|
+
import { numberPropTypeUtil as numberPropTypeUtil2, stringPropTypeUtil as stringPropTypeUtil7, urlPropTypeUtil as urlPropTypeUtil2 } from "@elementor/editor-props";
|
|
3225
3225
|
import { httpService as httpService2 } from "@elementor/http-client";
|
|
3226
3226
|
import { SearchIcon } from "@elementor/icons";
|
|
3227
3227
|
import { debounce as debounce2 } from "@elementor/utils";
|
|
@@ -3383,7 +3383,7 @@ var QueryControl = createControl((props) => {
|
|
|
3383
3383
|
$$type: "query",
|
|
3384
3384
|
value: {
|
|
3385
3385
|
id: numberPropTypeUtil2.create(newValue),
|
|
3386
|
-
label:
|
|
3386
|
+
label: stringPropTypeUtil7.create(findMatchingOption(options, newValue)?.label || null)
|
|
3387
3387
|
}
|
|
3388
3388
|
};
|
|
3389
3389
|
setValue(valueToSave);
|
|
@@ -3594,7 +3594,7 @@ var ToggleIconControl = ({ disabled, active, onIconClick, label }) => {
|
|
|
3594
3594
|
// src/controls/html-tag-control.tsx
|
|
3595
3595
|
import * as React67 from "react";
|
|
3596
3596
|
import { getElementLabel } from "@elementor/editor-elements";
|
|
3597
|
-
import { stringPropTypeUtil as
|
|
3597
|
+
import { stringPropTypeUtil as stringPropTypeUtil8 } from "@elementor/editor-props";
|
|
3598
3598
|
import { MenuListItem as MenuListItem3 } from "@elementor/editor-ui";
|
|
3599
3599
|
import { Select as Select2, styled as styled6, Typography as Typography5 } from "@elementor/ui";
|
|
3600
3600
|
import { __ as __24 } from "@wordpress/i18n";
|
|
@@ -3646,7 +3646,7 @@ var ConditionalControlInfotip = React66.forwardRef(
|
|
|
3646
3646
|
// src/controls/html-tag-control.tsx
|
|
3647
3647
|
var StyledSelect = styled6(Select2)(() => ({ ".MuiSelect-select.Mui-disabled": { cursor: "not-allowed" } }));
|
|
3648
3648
|
var HtmlTagControl = createControl(({ options, onChange, fallbackLabels = {} }) => {
|
|
3649
|
-
const { value, setValue, disabled, placeholder } = useBoundProp(
|
|
3649
|
+
const { value, setValue, disabled, placeholder } = useBoundProp(stringPropTypeUtil8);
|
|
3650
3650
|
const handleChange = (event) => {
|
|
3651
3651
|
const newValue = event.target.value || null;
|
|
3652
3652
|
onChange?.(newValue, value);
|
|
@@ -3800,7 +3800,7 @@ var Control4 = ({
|
|
|
3800
3800
|
// src/controls/aspect-ratio-control.tsx
|
|
3801
3801
|
import * as React69 from "react";
|
|
3802
3802
|
import { useEffect as useEffect9, useState as useState12 } from "react";
|
|
3803
|
-
import { stringPropTypeUtil as
|
|
3803
|
+
import { stringPropTypeUtil as stringPropTypeUtil9 } from "@elementor/editor-props";
|
|
3804
3804
|
import { MenuListItem as MenuListItem4 } from "@elementor/editor-ui";
|
|
3805
3805
|
import { ArrowsMoveHorizontalIcon, ArrowsMoveVerticalIcon } from "@elementor/icons";
|
|
3806
3806
|
import { Grid as Grid12, Select as Select3, Stack as Stack12, TextField as TextField8 } from "@elementor/ui";
|
|
@@ -3817,7 +3817,7 @@ var RATIO_OPTIONS = [
|
|
|
3817
3817
|
];
|
|
3818
3818
|
var CUSTOM_RATIO = "custom";
|
|
3819
3819
|
var AspectRatioControl = createControl(({ label }) => {
|
|
3820
|
-
const { value: aspectRatioValue, setValue: setAspectRatioValue, disabled } = useBoundProp(
|
|
3820
|
+
const { value: aspectRatioValue, setValue: setAspectRatioValue, disabled } = useBoundProp(stringPropTypeUtil9);
|
|
3821
3821
|
const isCustomSelected = aspectRatioValue && !RATIO_OPTIONS.some((option) => option.value === aspectRatioValue);
|
|
3822
3822
|
const [initialWidth, initialHeight] = isCustomSelected ? aspectRatioValue.split("/") : ["", ""];
|
|
3823
3823
|
const [isCustom, setIsCustom] = useState12(isCustomSelected);
|
|
@@ -4116,7 +4116,7 @@ import {
|
|
|
4116
4116
|
colorStopPropTypeUtil,
|
|
4117
4117
|
gradientColorStopPropTypeUtil,
|
|
4118
4118
|
numberPropTypeUtil as numberPropTypeUtil3,
|
|
4119
|
-
stringPropTypeUtil as
|
|
4119
|
+
stringPropTypeUtil as stringPropTypeUtil10
|
|
4120
4120
|
} from "@elementor/editor-props";
|
|
4121
4121
|
import { UnstableGradientBox } from "@elementor/ui";
|
|
4122
4122
|
var BackgroundGradientColorControl = createControl(() => {
|
|
@@ -4124,13 +4124,13 @@ var BackgroundGradientColorControl = createControl(() => {
|
|
|
4124
4124
|
const handleChange = (newValue) => {
|
|
4125
4125
|
const transformedValue = createTransformableValue(newValue);
|
|
4126
4126
|
if (transformedValue.positions) {
|
|
4127
|
-
transformedValue.positions =
|
|
4127
|
+
transformedValue.positions = stringPropTypeUtil10.create(newValue.positions.join(" "));
|
|
4128
4128
|
}
|
|
4129
4129
|
setValue(transformedValue);
|
|
4130
4130
|
};
|
|
4131
4131
|
const createTransformableValue = (newValue) => ({
|
|
4132
4132
|
...newValue,
|
|
4133
|
-
type:
|
|
4133
|
+
type: stringPropTypeUtil10.create(newValue.type),
|
|
4134
4134
|
angle: numberPropTypeUtil3.create(newValue.angle),
|
|
4135
4135
|
stops: gradientColorStopPropTypeUtil.create(
|
|
4136
4136
|
newValue.stops.map(
|
|
@@ -4166,7 +4166,7 @@ var BackgroundGradientColorControl = createControl(() => {
|
|
|
4166
4166
|
);
|
|
4167
4167
|
});
|
|
4168
4168
|
var initialBackgroundGradientOverlay = backgroundGradientOverlayPropTypeUtil.create({
|
|
4169
|
-
type:
|
|
4169
|
+
type: stringPropTypeUtil10.create("linear"),
|
|
4170
4170
|
angle: numberPropTypeUtil3.create(180),
|
|
4171
4171
|
stops: gradientColorStopPropTypeUtil.create([
|
|
4172
4172
|
colorStopPropTypeUtil.create({
|
|
@@ -4206,7 +4206,7 @@ var BackgroundImageOverlayAttachment = () => {
|
|
|
4206
4206
|
// src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-position.tsx
|
|
4207
4207
|
import * as React74 from "react";
|
|
4208
4208
|
import { useRef as useRef11 } from "react";
|
|
4209
|
-
import { backgroundImagePositionOffsetPropTypeUtil, stringPropTypeUtil as
|
|
4209
|
+
import { backgroundImagePositionOffsetPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil11 } from "@elementor/editor-props";
|
|
4210
4210
|
import { MenuListItem as MenuListItem5 } from "@elementor/editor-ui";
|
|
4211
4211
|
import { LetterXIcon, LetterYIcon } from "@elementor/icons";
|
|
4212
4212
|
import { Grid as Grid14, Select as Select4 } from "@elementor/ui";
|
|
@@ -4225,7 +4225,7 @@ var backgroundPositionOptions = [
|
|
|
4225
4225
|
];
|
|
4226
4226
|
var BackgroundImageOverlayPosition = () => {
|
|
4227
4227
|
const backgroundImageOffsetContext = useBoundProp(backgroundImagePositionOffsetPropTypeUtil);
|
|
4228
|
-
const stringPropContext = useBoundProp(
|
|
4228
|
+
const stringPropContext = useBoundProp(stringPropTypeUtil11);
|
|
4229
4229
|
const isCustom = !!backgroundImageOffsetContext.value;
|
|
4230
4230
|
const rowRef = useRef11(null);
|
|
4231
4231
|
const handlePositionChange = (event) => {
|
|
@@ -4301,7 +4301,7 @@ var BackgroundImageOverlayRepeat = () => {
|
|
|
4301
4301
|
// src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-size.tsx
|
|
4302
4302
|
import * as React76 from "react";
|
|
4303
4303
|
import { useRef as useRef12 } from "react";
|
|
4304
|
-
import { backgroundImageSizeScalePropTypeUtil, stringPropTypeUtil as
|
|
4304
|
+
import { backgroundImageSizeScalePropTypeUtil, stringPropTypeUtil as stringPropTypeUtil12 } from "@elementor/editor-props";
|
|
4305
4305
|
import {
|
|
4306
4306
|
ArrowBarBothIcon,
|
|
4307
4307
|
ArrowsMaximizeIcon,
|
|
@@ -4340,7 +4340,7 @@ var sizeControlOptions = [
|
|
|
4340
4340
|
];
|
|
4341
4341
|
var BackgroundImageOverlaySize = () => {
|
|
4342
4342
|
const backgroundImageScaleContext = useBoundProp(backgroundImageSizeScalePropTypeUtil);
|
|
4343
|
-
const stringPropContext = useBoundProp(
|
|
4343
|
+
const stringPropContext = useBoundProp(stringPropTypeUtil12);
|
|
4344
4344
|
const isCustom = !!backgroundImageScaleContext.value;
|
|
4345
4345
|
const rowRef = useRef12(null);
|
|
4346
4346
|
const handleSizeChange = (size) => {
|
|
@@ -4806,7 +4806,7 @@ import { useMemo as useMemo10, useState as useState15 } from "react";
|
|
|
4806
4806
|
import {
|
|
4807
4807
|
isTransformable,
|
|
4808
4808
|
keyValuePropTypeUtil,
|
|
4809
|
-
stringPropTypeUtil as
|
|
4809
|
+
stringPropTypeUtil as stringPropTypeUtil13
|
|
4810
4810
|
} from "@elementor/editor-props";
|
|
4811
4811
|
import { FormHelperText, FormLabel as FormLabel3, Grid as Grid18 } from "@elementor/ui";
|
|
4812
4812
|
import { __ as __35 } from "@wordpress/i18n";
|
|
@@ -4878,7 +4878,7 @@ var KeyValueControl = createControl((props = {}) => {
|
|
|
4878
4878
|
});
|
|
4879
4879
|
return;
|
|
4880
4880
|
}
|
|
4881
|
-
const extractedValue =
|
|
4881
|
+
const extractedValue = stringPropTypeUtil13.extract(newChangedValue);
|
|
4882
4882
|
setSessionState((prev) => ({
|
|
4883
4883
|
...prev,
|
|
4884
4884
|
[fieldType]: extractedValue
|
|
@@ -4918,7 +4918,7 @@ var KeyValueControl = createControl((props = {}) => {
|
|
|
4918
4918
|
|
|
4919
4919
|
// src/controls/position-control.tsx
|
|
4920
4920
|
import * as React81 from "react";
|
|
4921
|
-
import { positionPropTypeUtil, stringPropTypeUtil as
|
|
4921
|
+
import { positionPropTypeUtil, stringPropTypeUtil as stringPropTypeUtil14 } from "@elementor/editor-props";
|
|
4922
4922
|
import { MenuListItem as MenuListItem6 } from "@elementor/editor-ui";
|
|
4923
4923
|
import { LetterXIcon as LetterXIcon2, LetterYIcon as LetterYIcon2 } from "@elementor/icons";
|
|
4924
4924
|
import { Grid as Grid19, Select as Select5 } from "@elementor/ui";
|
|
@@ -4937,7 +4937,7 @@ var positionOptions = [
|
|
|
4937
4937
|
];
|
|
4938
4938
|
var PositionControl = () => {
|
|
4939
4939
|
const positionContext = useBoundProp(positionPropTypeUtil);
|
|
4940
|
-
const stringPropContext = useBoundProp(
|
|
4940
|
+
const stringPropContext = useBoundProp(stringPropTypeUtil14);
|
|
4941
4941
|
const isCustom = !!positionContext.value;
|
|
4942
4942
|
const handlePositionChange = (event) => {
|
|
4943
4943
|
const value = event.target.value || null;
|
|
@@ -6155,7 +6155,7 @@ var TransitionRepeaterControl = createControl(
|
|
|
6155
6155
|
// src/controls/date-time-control.tsx
|
|
6156
6156
|
import * as React98 from "react";
|
|
6157
6157
|
import * as dayjs from "dayjs";
|
|
6158
|
-
import { isTransformable as isTransformable2, stringPropTypeUtil as
|
|
6158
|
+
import { isTransformable as isTransformable2, stringPropTypeUtil as stringPropTypeUtil15 } from "@elementor/editor-props";
|
|
6159
6159
|
import { DateTimePropTypeUtil } from "@elementor/editor-props";
|
|
6160
6160
|
import { Box as Box21, DatePicker, LocalizationProvider, TimePicker } from "@elementor/ui";
|
|
6161
6161
|
var DATE_FORMAT = "YYYY-MM-DD";
|
|
@@ -6204,7 +6204,7 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
|
|
|
6204
6204
|
return /* @__PURE__ */ React98.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React98.createElement(ControlActions, null, /* @__PURE__ */ React98.createElement(LocalizationProvider, null, /* @__PURE__ */ React98.createElement(Box21, { display: "flex", gap: 1, alignItems: "center" }, /* @__PURE__ */ React98.createElement(PropKeyProvider, { bind: "date" }, /* @__PURE__ */ React98.createElement(
|
|
6205
6205
|
DatePicker,
|
|
6206
6206
|
{
|
|
6207
|
-
value: parseDateValue(
|
|
6207
|
+
value: parseDateValue(stringPropTypeUtil15.extract(value?.date)),
|
|
6208
6208
|
onChange: (v) => handleChange({ date: v }, { bind: "date" }),
|
|
6209
6209
|
disabled: inputDisabled,
|
|
6210
6210
|
slotProps: {
|
|
@@ -6216,7 +6216,7 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
|
|
|
6216
6216
|
)), /* @__PURE__ */ React98.createElement(PropKeyProvider, { bind: "time" }, /* @__PURE__ */ React98.createElement(
|
|
6217
6217
|
TimePicker,
|
|
6218
6218
|
{
|
|
6219
|
-
value: parseTimeValue(
|
|
6219
|
+
value: parseTimeValue(stringPropTypeUtil15.extract(value?.time)),
|
|
6220
6220
|
onChange: (v) => handleChange({ time: v }, { bind: "time" }),
|
|
6221
6221
|
disabled: inputDisabled,
|
|
6222
6222
|
slotProps: {
|
|
@@ -6230,8 +6230,10 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
|
|
|
6230
6230
|
|
|
6231
6231
|
// src/controls/inline-editing-control.tsx
|
|
6232
6232
|
import * as React100 from "react";
|
|
6233
|
-
import {
|
|
6233
|
+
import { useCallback as useCallback3, useEffect as useEffect12, useMemo as useMemo15 } from "react";
|
|
6234
|
+
import { htmlV2PropTypeUtil, parseHtmlChildren } from "@elementor/editor-props";
|
|
6234
6235
|
import { Box as Box23 } from "@elementor/ui";
|
|
6236
|
+
import { debounce as debounce4 } from "@elementor/utils";
|
|
6235
6237
|
|
|
6236
6238
|
// src/components/inline-editor.tsx
|
|
6237
6239
|
import * as React99 from "react";
|
|
@@ -6407,14 +6409,37 @@ var useOnUpdate = (callback, dependencies) => {
|
|
|
6407
6409
|
};
|
|
6408
6410
|
|
|
6409
6411
|
// src/controls/inline-editing-control.tsx
|
|
6412
|
+
var CHILDREN_PARSE_DEBOUNCE_MS = 300;
|
|
6410
6413
|
var InlineEditingControl = createControl(
|
|
6411
6414
|
({
|
|
6412
6415
|
sx,
|
|
6413
6416
|
attributes,
|
|
6414
6417
|
props
|
|
6415
6418
|
}) => {
|
|
6416
|
-
const { value, setValue } = useBoundProp(
|
|
6417
|
-
const
|
|
6419
|
+
const { value, setValue } = useBoundProp(htmlV2PropTypeUtil);
|
|
6420
|
+
const content = value?.content ?? "";
|
|
6421
|
+
const debouncedParse = useMemo15(
|
|
6422
|
+
() => debounce4((html) => {
|
|
6423
|
+
const parsed = parseHtmlChildren(html);
|
|
6424
|
+
setValue({
|
|
6425
|
+
content: parsed.content || null,
|
|
6426
|
+
children: parsed.children
|
|
6427
|
+
});
|
|
6428
|
+
}, CHILDREN_PARSE_DEBOUNCE_MS),
|
|
6429
|
+
[setValue]
|
|
6430
|
+
);
|
|
6431
|
+
const handleChange = useCallback3(
|
|
6432
|
+
(newValue) => {
|
|
6433
|
+
const html = newValue ?? "";
|
|
6434
|
+
setValue({
|
|
6435
|
+
content: html || null,
|
|
6436
|
+
children: value?.children ?? []
|
|
6437
|
+
});
|
|
6438
|
+
debouncedParse(html);
|
|
6439
|
+
},
|
|
6440
|
+
[setValue, value?.children, debouncedParse]
|
|
6441
|
+
);
|
|
6442
|
+
useEffect12(() => () => debouncedParse.cancel(), [debouncedParse]);
|
|
6418
6443
|
return /* @__PURE__ */ React100.createElement(ControlActions, null, /* @__PURE__ */ React100.createElement(
|
|
6419
6444
|
Box23,
|
|
6420
6445
|
{
|
|
@@ -6453,7 +6478,7 @@ var InlineEditingControl = createControl(
|
|
|
6453
6478
|
...attributes,
|
|
6454
6479
|
...props
|
|
6455
6480
|
},
|
|
6456
|
-
/* @__PURE__ */ React100.createElement(InlineEditor, { value:
|
|
6481
|
+
/* @__PURE__ */ React100.createElement(InlineEditor, { value: content, setValue: handleChange })
|
|
6457
6482
|
));
|
|
6458
6483
|
}
|
|
6459
6484
|
);
|
|
@@ -6585,7 +6610,7 @@ var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /*
|
|
|
6585
6610
|
|
|
6586
6611
|
// src/components/repeater/repeater.tsx
|
|
6587
6612
|
import * as React105 from "react";
|
|
6588
|
-
import { useEffect as
|
|
6613
|
+
import { useEffect as useEffect13, useState as useState18 } from "react";
|
|
6589
6614
|
import { CopyIcon as CopyIcon2, EyeIcon as EyeIcon2, EyeOffIcon as EyeOffIcon2, PlusIcon as PlusIcon4, XIcon as XIcon4 } from "@elementor/icons";
|
|
6590
6615
|
import {
|
|
6591
6616
|
bindPopover as bindPopover7,
|
|
@@ -6773,7 +6798,7 @@ var usePopover = (openOnMount, onOpen) => {
|
|
|
6773
6798
|
const [ref, setRef] = useState18(null);
|
|
6774
6799
|
const popoverState = usePopupState8({ variant: "popover" });
|
|
6775
6800
|
const popoverProps = bindPopover7(popoverState);
|
|
6776
|
-
|
|
6801
|
+
useEffect13(() => {
|
|
6777
6802
|
if (openOnMount && ref) {
|
|
6778
6803
|
popoverState.open(ref);
|
|
6779
6804
|
onOpen?.();
|
|
@@ -6789,7 +6814,7 @@ var usePopover = (openOnMount, onOpen) => {
|
|
|
6789
6814
|
|
|
6790
6815
|
// src/components/inline-editor-toolbar.tsx
|
|
6791
6816
|
import * as React107 from "react";
|
|
6792
|
-
import { useMemo as
|
|
6817
|
+
import { useMemo as useMemo16, useRef as useRef28, useState as useState19 } from "react";
|
|
6793
6818
|
import { getContainer as getContainer2, getElementSetting } from "@elementor/editor-elements";
|
|
6794
6819
|
import {
|
|
6795
6820
|
BoldIcon,
|
|
@@ -6815,7 +6840,7 @@ import { __ as __54 } from "@wordpress/i18n";
|
|
|
6815
6840
|
|
|
6816
6841
|
// src/components/url-popover.tsx
|
|
6817
6842
|
import * as React106 from "react";
|
|
6818
|
-
import { useEffect as
|
|
6843
|
+
import { useEffect as useEffect14, useRef as useRef27 } from "react";
|
|
6819
6844
|
import { ExternalLinkIcon } from "@elementor/icons";
|
|
6820
6845
|
import { bindPopover as bindPopover8, Popover as Popover7, Stack as Stack18, TextField as TextField9, ToggleButton as ToggleButton2, Tooltip as Tooltip13 } from "@elementor/ui";
|
|
6821
6846
|
import { __ as __53 } from "@wordpress/i18n";
|
|
@@ -6829,7 +6854,7 @@ var UrlPopover = ({
|
|
|
6829
6854
|
onToggleNewTab
|
|
6830
6855
|
}) => {
|
|
6831
6856
|
const inputRef = useRef27(null);
|
|
6832
|
-
|
|
6857
|
+
useEffect14(() => {
|
|
6833
6858
|
if (popupState.isOpen) {
|
|
6834
6859
|
requestAnimationFrame(() => inputRef.current?.focus());
|
|
6835
6860
|
}
|
|
@@ -6888,7 +6913,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
6888
6913
|
editor,
|
|
6889
6914
|
selector: (ctx) => possibleFormats.filter((format) => ctx.editor.isActive(format))
|
|
6890
6915
|
});
|
|
6891
|
-
const formatButtonsList =
|
|
6916
|
+
const formatButtonsList = useMemo16(() => {
|
|
6892
6917
|
const buttons = Object.values(formatButtons);
|
|
6893
6918
|
if (isElementClickable) {
|
|
6894
6919
|
return buttons.filter((button) => button.action !== "link");
|
|
@@ -7238,7 +7263,7 @@ var hasValue = (value) => {
|
|
|
7238
7263
|
};
|
|
7239
7264
|
|
|
7240
7265
|
// src/hooks/use-font-families.ts
|
|
7241
|
-
import { useMemo as
|
|
7266
|
+
import { useMemo as useMemo17 } from "react";
|
|
7242
7267
|
import { getElementorConfig } from "@elementor/editor-v1-adapters";
|
|
7243
7268
|
import { __ as __55 } from "@wordpress/i18n";
|
|
7244
7269
|
var supportedCategories = {
|
|
@@ -7256,7 +7281,7 @@ var getFontFamilies = () => {
|
|
|
7256
7281
|
};
|
|
7257
7282
|
var useFontFamilies = () => {
|
|
7258
7283
|
const fontFamilies = getFontFamilies();
|
|
7259
|
-
return
|
|
7284
|
+
return useMemo17(() => {
|
|
7260
7285
|
const categoriesOrder = ["system", "custom", "googlefonts"];
|
|
7261
7286
|
return Object.entries(fontFamilies || {}).reduce((acc, [font, category]) => {
|
|
7262
7287
|
if (!supportedCategories[category]) {
|