@elementor/editor-variables 0.5.4 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/dist/index.js +167 -68
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +178 -65
- package/dist/index.mjs.map +1 -1
- package/package.json +5 -5
- package/src/components/color-variable-creation.tsx +122 -0
- package/src/components/variables-selection-popover.tsx +31 -15
- package/src/controls/color-variables-selection-control.tsx +5 -4
- package/src/controls/font-variables-selection-control.tsx +6 -5
- package/src/hooks/use-prop-variables.ts +30 -4
package/dist/index.mjs
CHANGED
|
@@ -3,8 +3,9 @@ import { styleTransformersRegistry } from "@elementor/editor-canvas";
|
|
|
3
3
|
import { controlActionsMenu, registerControlReplacement } from "@elementor/editor-editing-panel";
|
|
4
4
|
|
|
5
5
|
// src/controls/color-variables-selection-control.tsx
|
|
6
|
-
import * as
|
|
7
|
-
import { useBoundProp as
|
|
6
|
+
import * as React4 from "react";
|
|
7
|
+
import { useBoundProp as useBoundProp3 } from "@elementor/editor-controls";
|
|
8
|
+
import { colorPropTypeUtil } from "@elementor/editor-props";
|
|
8
9
|
|
|
9
10
|
// src/components/color-indicator.tsx
|
|
10
11
|
import { styled, UnstableColorIndicator } from "@elementor/ui";
|
|
@@ -25,7 +26,7 @@ var usePropVariables = (propTypeKey) => {
|
|
|
25
26
|
return useMemo(() => normalizeVariables(propTypeKey), [propTypeKey]);
|
|
26
27
|
};
|
|
27
28
|
var useVariable = (propTypeKey, key) => {
|
|
28
|
-
if (!variables[propTypeKey][key]) {
|
|
29
|
+
if (!variables[propTypeKey]?.[key]) {
|
|
29
30
|
return null;
|
|
30
31
|
}
|
|
31
32
|
return {
|
|
@@ -34,13 +35,27 @@ var useVariable = (propTypeKey, key) => {
|
|
|
34
35
|
};
|
|
35
36
|
};
|
|
36
37
|
var normalizeVariables = (propTypeKey) => {
|
|
37
|
-
return Object.entries(variables[propTypeKey]).map(([key, { label, value }]) => ({
|
|
38
|
+
return Object.entries(variables[propTypeKey] || {}).map(([key, { label, value }]) => ({
|
|
38
39
|
key,
|
|
39
40
|
label,
|
|
40
41
|
value
|
|
41
42
|
}));
|
|
42
43
|
};
|
|
43
|
-
var
|
|
44
|
+
var createVariable = (propTypeKey, variable) => {
|
|
45
|
+
const id = generateId("e-gv", Object.keys(variables[propTypeKey]).length);
|
|
46
|
+
const newVariable = {
|
|
47
|
+
value: variable.value,
|
|
48
|
+
label: variable.label,
|
|
49
|
+
key: propTypeKey
|
|
50
|
+
};
|
|
51
|
+
variables[propTypeKey][id] = newVariable || {};
|
|
52
|
+
return id;
|
|
53
|
+
};
|
|
54
|
+
var variables = window?.ElementorV4Variables || {};
|
|
55
|
+
var generateId = (prefix, variablesCount) => {
|
|
56
|
+
const randomHex = Math.random().toString(16).slice(2, 9);
|
|
57
|
+
return `${prefix}${randomHex}${variablesCount}`;
|
|
58
|
+
};
|
|
44
59
|
|
|
45
60
|
// src/prop-types/color-variable-prop-type.ts
|
|
46
61
|
import { createPropUtils } from "@elementor/editor-props";
|
|
@@ -104,22 +119,111 @@ var ColorVariablesSelection = ({ onSelect }) => {
|
|
|
104
119
|
};
|
|
105
120
|
|
|
106
121
|
// src/components/variables-selection-popover.tsx
|
|
122
|
+
import * as React3 from "react";
|
|
123
|
+
import { useId, useRef as useRef2 } from "react";
|
|
124
|
+
import { ColorFilterIcon, DetachIcon, PlusIcon } from "@elementor/icons";
|
|
125
|
+
import {
|
|
126
|
+
bindPopover as bindPopover2,
|
|
127
|
+
bindTrigger,
|
|
128
|
+
Box as Box3,
|
|
129
|
+
CloseButton as CloseButton2,
|
|
130
|
+
IconButton,
|
|
131
|
+
Popover as Popover2,
|
|
132
|
+
Stack as Stack2,
|
|
133
|
+
Typography as Typography2,
|
|
134
|
+
UnstableTag as Tag,
|
|
135
|
+
usePopupState
|
|
136
|
+
} from "@elementor/ui";
|
|
137
|
+
import { __ as __2 } from "@wordpress/i18n";
|
|
138
|
+
|
|
139
|
+
// src/components/color-variable-creation.tsx
|
|
107
140
|
import * as React2 from "react";
|
|
108
|
-
import {
|
|
109
|
-
import {
|
|
141
|
+
import { useRef, useState } from "react";
|
|
142
|
+
import { useBoundProp as useBoundProp2 } from "@elementor/editor-controls";
|
|
143
|
+
import { BrushIcon } from "@elementor/icons";
|
|
110
144
|
import {
|
|
111
145
|
bindPopover,
|
|
112
|
-
bindTrigger,
|
|
113
146
|
Box as Box2,
|
|
147
|
+
Button,
|
|
148
|
+
CardActions,
|
|
114
149
|
CloseButton,
|
|
115
|
-
|
|
150
|
+
Divider as Divider2,
|
|
151
|
+
FormLabel,
|
|
152
|
+
Grid,
|
|
116
153
|
Popover,
|
|
117
154
|
Stack,
|
|
155
|
+
TextField,
|
|
118
156
|
Typography,
|
|
119
|
-
|
|
120
|
-
usePopupState
|
|
157
|
+
UnstableColorField
|
|
121
158
|
} from "@elementor/ui";
|
|
122
159
|
import { __ } from "@wordpress/i18n";
|
|
160
|
+
var ColorVariableCreation = ({ popupState }) => {
|
|
161
|
+
const { setValue: setVariable } = useBoundProp2(colorVariablePropTypeUtil);
|
|
162
|
+
const [color, setColor] = useState("");
|
|
163
|
+
const [label, setLabel] = useState("");
|
|
164
|
+
const anchorRef = useRef(null);
|
|
165
|
+
const resetFields = () => {
|
|
166
|
+
setColor("");
|
|
167
|
+
setLabel("");
|
|
168
|
+
};
|
|
169
|
+
const closePopover = () => {
|
|
170
|
+
resetFields();
|
|
171
|
+
popupState.close();
|
|
172
|
+
};
|
|
173
|
+
const handleCreate = () => {
|
|
174
|
+
const key = createVariable(colorVariablePropTypeUtil.key, { label, value: color });
|
|
175
|
+
setVariable(key);
|
|
176
|
+
closePopover();
|
|
177
|
+
};
|
|
178
|
+
const isInValidForm = () => {
|
|
179
|
+
return !color?.trim() || !label?.trim();
|
|
180
|
+
};
|
|
181
|
+
return /* @__PURE__ */ React2.createElement(Box2, { ref: anchorRef }, /* @__PURE__ */ React2.createElement(
|
|
182
|
+
Popover,
|
|
183
|
+
{
|
|
184
|
+
...bindPopover(popupState),
|
|
185
|
+
anchorEl: anchorRef.current,
|
|
186
|
+
anchorOrigin: { vertical: "bottom", horizontal: "right" },
|
|
187
|
+
transformOrigin: { vertical: "top", horizontal: "right" }
|
|
188
|
+
},
|
|
189
|
+
/* @__PURE__ */ React2.createElement(Stack, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React2.createElement(BrushIcon, { fontSize: "tiny", sx: { mr: 0.5 } }), /* @__PURE__ */ React2.createElement(Typography, { variant: "subtitle2" }, __("Create variable", "elementor")), /* @__PURE__ */ React2.createElement(
|
|
190
|
+
CloseButton,
|
|
191
|
+
{
|
|
192
|
+
slotProps: { icon: { fontSize: "small" } },
|
|
193
|
+
sx: { ml: "auto" },
|
|
194
|
+
onClick: closePopover
|
|
195
|
+
}
|
|
196
|
+
)),
|
|
197
|
+
/* @__PURE__ */ React2.createElement(Divider2, null),
|
|
198
|
+
/* @__PURE__ */ React2.createElement(Stack, { p: 1.5, gap: 1.5 }, /* @__PURE__ */ React2.createElement(Grid, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React2.createElement(Grid, { item: true, xs: 12 }, /* @__PURE__ */ React2.createElement(FormLabel, { size: "small" }, __("Name", "elementor"))), /* @__PURE__ */ React2.createElement(Grid, { item: true, xs: 12 }, /* @__PURE__ */ React2.createElement(
|
|
199
|
+
TextField,
|
|
200
|
+
{
|
|
201
|
+
size: "tiny",
|
|
202
|
+
fullWidth: true,
|
|
203
|
+
value: label,
|
|
204
|
+
onChange: (e) => setLabel(e.target.value)
|
|
205
|
+
}
|
|
206
|
+
))), /* @__PURE__ */ React2.createElement(Grid, { container: true, gap: 0.75, alignItems: "center" }, /* @__PURE__ */ React2.createElement(Grid, { item: true, xs: 12 }, /* @__PURE__ */ React2.createElement(FormLabel, { size: "small" }, __("Value", "elementor"))), /* @__PURE__ */ React2.createElement(Grid, { item: true, xs: 12 }, /* @__PURE__ */ React2.createElement(
|
|
207
|
+
UnstableColorField,
|
|
208
|
+
{
|
|
209
|
+
size: "tiny",
|
|
210
|
+
fullWidth: true,
|
|
211
|
+
value: color,
|
|
212
|
+
onChange: setColor,
|
|
213
|
+
slotProps: {
|
|
214
|
+
colorPicker: {
|
|
215
|
+
anchorEl: anchorRef.current,
|
|
216
|
+
anchorOrigin: { vertical: "top", horizontal: "right" },
|
|
217
|
+
transformOrigin: { vertical: "top", horizontal: -10 }
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
)))),
|
|
222
|
+
/* @__PURE__ */ React2.createElement(CardActions, null, /* @__PURE__ */ React2.createElement(Button, { size: "small", onClick: closePopover, color: "secondary", variant: "text" }, __("Cancel", "elementor")), /* @__PURE__ */ React2.createElement(Button, { size: "small", variant: "contained", disabled: isInValidForm(), onClick: handleCreate }, __("Create", "elementor")))
|
|
223
|
+
));
|
|
224
|
+
};
|
|
225
|
+
|
|
226
|
+
// src/components/variables-selection-popover.tsx
|
|
123
227
|
var VariablesSelectionPopover = ({
|
|
124
228
|
selectedVariable,
|
|
125
229
|
unlinkVariable,
|
|
@@ -128,65 +232,73 @@ var VariablesSelectionPopover = ({
|
|
|
128
232
|
}) => {
|
|
129
233
|
const id = useId();
|
|
130
234
|
const popupState = usePopupState({ variant: "popover", popupId: `elementor-variables-action-${id}` });
|
|
235
|
+
const creationPopupState = usePopupState({ variant: "popover", popupId: `elementor-variables-creation-${id}` });
|
|
131
236
|
const closePopover = () => popupState.close();
|
|
237
|
+
const handleCreateButtonClick = (event) => {
|
|
238
|
+
closePopover();
|
|
239
|
+
bindTrigger(creationPopupState).onClick(event);
|
|
240
|
+
};
|
|
241
|
+
const anchorRef = useRef2(null);
|
|
132
242
|
const { label } = selectedVariable;
|
|
133
|
-
return /* @__PURE__ */
|
|
243
|
+
return /* @__PURE__ */ React3.createElement(Box3, { ref: anchorRef }, /* @__PURE__ */ React3.createElement(
|
|
134
244
|
Tag,
|
|
135
245
|
{
|
|
136
246
|
fullWidth: true,
|
|
137
247
|
showActionsOnHover: true,
|
|
138
248
|
...bindTrigger(popupState),
|
|
139
|
-
startIcon: /* @__PURE__ */
|
|
140
|
-
label: /* @__PURE__ */
|
|
141
|
-
actions: /* @__PURE__ */
|
|
249
|
+
startIcon: /* @__PURE__ */ React3.createElement(Stack2, { spacing: 1, direction: "row", alignItems: "center" }, startTagAdornment, /* @__PURE__ */ React3.createElement(ColorFilterIcon, { fontSize: "inherit", sx: { mr: 1 } })),
|
|
250
|
+
label: /* @__PURE__ */ React3.createElement(Box3, { sx: { display: "inline-grid" } }, /* @__PURE__ */ React3.createElement(Typography2, { sx: { textOverflow: "ellipsis", overflowX: "hidden" }, variant: "subtitle2" }, label)),
|
|
251
|
+
actions: /* @__PURE__ */ React3.createElement(IconButton, { size: "tiny", onClick: unlinkVariable, "aria-label": __2("Unlink", "elementor") }, /* @__PURE__ */ React3.createElement(DetachIcon, { fontSize: "tiny" }))
|
|
142
252
|
}
|
|
143
|
-
), /* @__PURE__ */
|
|
144
|
-
|
|
253
|
+
), /* @__PURE__ */ React3.createElement(
|
|
254
|
+
Popover2,
|
|
145
255
|
{
|
|
256
|
+
...bindPopover2(popupState),
|
|
146
257
|
disableScrollLock: true,
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
258
|
+
anchorEl: anchorRef.current,
|
|
259
|
+
anchorOrigin: { vertical: "bottom", horizontal: "right" },
|
|
260
|
+
transformOrigin: { vertical: "top", horizontal: "right" }
|
|
150
261
|
},
|
|
151
|
-
/* @__PURE__ */
|
|
152
|
-
|
|
262
|
+
/* @__PURE__ */ React3.createElement(Stack2, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React3.createElement(ColorFilterIcon, { fontSize: "tiny", sx: { mr: 0.5 } }), /* @__PURE__ */ React3.createElement(Typography2, { variant: "subtitle2" }, __2("Variables", "elementor")), /* @__PURE__ */ React3.createElement(Stack2, { direction: "row", sx: { ml: "auto" } }, /* @__PURE__ */ React3.createElement(
|
|
263
|
+
IconButton,
|
|
153
264
|
{
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
onClick:
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
265
|
+
...bindTrigger(creationPopupState),
|
|
266
|
+
size: "tiny",
|
|
267
|
+
onClick: handleCreateButtonClick
|
|
268
|
+
},
|
|
269
|
+
/* @__PURE__ */ React3.createElement(PlusIcon, { fontSize: "tiny" })
|
|
270
|
+
), /* @__PURE__ */ React3.createElement(CloseButton2, { slotProps: { icon: { fontSize: "tiny" } }, onClick: closePopover }))),
|
|
271
|
+
children?.({ closePopover })
|
|
272
|
+
), /* @__PURE__ */ React3.createElement(ColorVariableCreation, { popupState: creationPopupState }));
|
|
161
273
|
};
|
|
162
274
|
|
|
163
275
|
// src/controls/color-variables-selection-control.tsx
|
|
164
276
|
var ColorVariablesSelectionControl = () => {
|
|
165
|
-
const { setValue } =
|
|
166
|
-
const { value: variableValue } =
|
|
167
|
-
const unlinkVariable = () => {
|
|
168
|
-
setValue(null);
|
|
169
|
-
};
|
|
277
|
+
const { setValue } = useBoundProp3();
|
|
278
|
+
const { value: variableValue } = useBoundProp3(colorVariablePropTypeUtil);
|
|
170
279
|
const selectedVariable = useVariable(colorVariablePropTypeUtil.key, variableValue);
|
|
171
280
|
if (!selectedVariable) {
|
|
172
281
|
throw new Error(`Global color variable ${variableValue} not found`);
|
|
173
282
|
}
|
|
174
|
-
|
|
283
|
+
const unlinkVariable = () => {
|
|
284
|
+
setValue(colorPropTypeUtil.create(selectedVariable.value));
|
|
285
|
+
};
|
|
286
|
+
return /* @__PURE__ */ React4.createElement(
|
|
175
287
|
VariablesSelectionPopover,
|
|
176
288
|
{
|
|
177
289
|
selectedVariable,
|
|
178
290
|
unlinkVariable,
|
|
179
|
-
startTagAdornment: /* @__PURE__ */
|
|
291
|
+
startTagAdornment: /* @__PURE__ */ React4.createElement(ColorIndicator, { size: "inherit", component: "span", value: selectedVariable.value })
|
|
180
292
|
},
|
|
181
|
-
({ closePopover }) => /* @__PURE__ */
|
|
293
|
+
({ closePopover }) => /* @__PURE__ */ React4.createElement(ColorVariablesSelection, { onSelect: closePopover })
|
|
182
294
|
);
|
|
183
295
|
};
|
|
184
296
|
|
|
185
297
|
// src/hooks/use-prop-color-variable-action.tsx
|
|
186
|
-
import * as
|
|
187
|
-
import { useBoundProp as
|
|
298
|
+
import * as React5 from "react";
|
|
299
|
+
import { useBoundProp as useBoundProp4 } from "@elementor/editor-editing-panel";
|
|
188
300
|
import { ColorFilterIcon as ColorFilterIcon2 } from "@elementor/icons";
|
|
189
|
-
import { __ as
|
|
301
|
+
import { __ as __3 } from "@wordpress/i18n";
|
|
190
302
|
|
|
191
303
|
// src/prop-types/font-variable-prop-type.ts
|
|
192
304
|
import { createPropUtils as createPropUtils2 } from "@elementor/editor-props";
|
|
@@ -209,13 +321,13 @@ var supportsFontVariables = (propType) => {
|
|
|
209
321
|
|
|
210
322
|
// src/hooks/use-prop-color-variable-action.tsx
|
|
211
323
|
var usePropColorVariableAction = () => {
|
|
212
|
-
const { propType } =
|
|
324
|
+
const { propType } = useBoundProp4();
|
|
213
325
|
const visible = !!propType && supportsColorVariables(propType);
|
|
214
326
|
return {
|
|
215
327
|
visible,
|
|
216
328
|
icon: ColorFilterIcon2,
|
|
217
|
-
title:
|
|
218
|
-
popoverContent: ({ closePopover }) => /* @__PURE__ */
|
|
329
|
+
title: __3("Variables", "elementor"),
|
|
330
|
+
popoverContent: ({ closePopover }) => /* @__PURE__ */ React5.createElement(ColorVariablesSelection, { onSelect: closePopover })
|
|
219
331
|
};
|
|
220
332
|
};
|
|
221
333
|
|
|
@@ -247,31 +359,32 @@ import { styleTransformersRegistry as styleTransformersRegistry2 } from "@elemen
|
|
|
247
359
|
import { controlActionsMenu as controlActionsMenu2, registerControlReplacement as registerControlReplacement2 } from "@elementor/editor-editing-panel";
|
|
248
360
|
|
|
249
361
|
// src/controls/font-variables-selection-control.tsx
|
|
250
|
-
import * as
|
|
251
|
-
import { useBoundProp as
|
|
362
|
+
import * as React7 from "react";
|
|
363
|
+
import { useBoundProp as useBoundProp6 } from "@elementor/editor-controls";
|
|
364
|
+
import { stringPropTypeUtil } from "@elementor/editor-props";
|
|
252
365
|
|
|
253
366
|
// src/components/font-variables-selection.tsx
|
|
254
|
-
import * as
|
|
367
|
+
import * as React6 from "react";
|
|
255
368
|
import { Fragment as Fragment2 } from "react";
|
|
256
|
-
import { useBoundProp as
|
|
369
|
+
import { useBoundProp as useBoundProp5 } from "@elementor/editor-controls";
|
|
257
370
|
import { EditIcon as EditIcon2, TextIcon } from "@elementor/icons";
|
|
258
|
-
import { Box as
|
|
371
|
+
import { Box as Box4, Divider as Divider3, ListItemIcon as ListItemIcon2, ListItemText as ListItemText2, MenuList as MenuList2 } from "@elementor/ui";
|
|
259
372
|
var FontVariablesSelection = ({ onSelect }) => {
|
|
260
|
-
const { value: variable, setValue: setVariable } =
|
|
373
|
+
const { value: variable, setValue: setVariable } = useBoundProp5(fontVariablePropTypeUtil);
|
|
261
374
|
const variables2 = usePropVariables(fontVariablePropTypeUtil.key);
|
|
262
375
|
const handleSetVariable = (newValue) => {
|
|
263
376
|
setVariable(newValue.key);
|
|
264
377
|
onSelect?.();
|
|
265
378
|
};
|
|
266
|
-
return /* @__PURE__ */
|
|
379
|
+
return /* @__PURE__ */ React6.createElement(Fragment2, null, /* @__PURE__ */ React6.createElement(Divider3, null), /* @__PURE__ */ React6.createElement(Box4, { sx: { overflowY: "auto", height: 260, width: 220 } }, /* @__PURE__ */ React6.createElement(MenuList2, { role: "listbox", tabIndex: 0 }, variables2.map(({ value, label, key }) => /* @__PURE__ */ React6.createElement(
|
|
267
380
|
StyledMenuItem,
|
|
268
381
|
{
|
|
269
382
|
key,
|
|
270
383
|
onClick: () => handleSetVariable({ value, label, key }),
|
|
271
384
|
selected: key === variable
|
|
272
385
|
},
|
|
273
|
-
/* @__PURE__ */
|
|
274
|
-
/* @__PURE__ */
|
|
386
|
+
/* @__PURE__ */ React6.createElement(ListItemIcon2, null, /* @__PURE__ */ React6.createElement(TextIcon, null)),
|
|
387
|
+
/* @__PURE__ */ React6.createElement(
|
|
275
388
|
ListItemText2,
|
|
276
389
|
{
|
|
277
390
|
primary: label,
|
|
@@ -296,37 +409,37 @@ var FontVariablesSelection = ({ onSelect }) => {
|
|
|
296
409
|
sx: { display: "flex", alignItems: "center", gap: 1 }
|
|
297
410
|
}
|
|
298
411
|
),
|
|
299
|
-
/* @__PURE__ */
|
|
412
|
+
/* @__PURE__ */ React6.createElement(EditIcon2, { color: "action", fontSize: "inherit", sx: { mx: 1, opacity: "0" } })
|
|
300
413
|
)))));
|
|
301
414
|
};
|
|
302
415
|
|
|
303
416
|
// src/controls/font-variables-selection-control.tsx
|
|
304
417
|
var FontVariablesSelectionControl = () => {
|
|
305
|
-
const { setValue } =
|
|
306
|
-
const { value: variableValue } =
|
|
307
|
-
const unlinkVariable = () => {
|
|
308
|
-
setValue(null);
|
|
309
|
-
};
|
|
418
|
+
const { setValue: setFontFamily } = useBoundProp6();
|
|
419
|
+
const { value: variableValue } = useBoundProp6(fontVariablePropTypeUtil);
|
|
310
420
|
const selectedVariable = useVariable(fontVariablePropTypeUtil.key, variableValue);
|
|
311
421
|
if (!selectedVariable) {
|
|
312
422
|
throw new Error(`Global font variable ${variableValue} not found`);
|
|
313
423
|
}
|
|
314
|
-
|
|
424
|
+
const unlinkVariable = () => {
|
|
425
|
+
setFontFamily(stringPropTypeUtil.create(selectedVariable.value));
|
|
426
|
+
};
|
|
427
|
+
return /* @__PURE__ */ React7.createElement(VariablesSelectionPopover, { selectedVariable, unlinkVariable }, ({ closePopover }) => /* @__PURE__ */ React7.createElement(FontVariablesSelection, { onSelect: closePopover }));
|
|
315
428
|
};
|
|
316
429
|
|
|
317
430
|
// src/hooks/use-prop-font-variable-action.tsx
|
|
318
|
-
import * as
|
|
319
|
-
import { useBoundProp as
|
|
431
|
+
import * as React8 from "react";
|
|
432
|
+
import { useBoundProp as useBoundProp7 } from "@elementor/editor-editing-panel";
|
|
320
433
|
import { ColorFilterIcon as ColorFilterIcon3 } from "@elementor/icons";
|
|
321
|
-
import { __ as
|
|
434
|
+
import { __ as __4 } from "@wordpress/i18n";
|
|
322
435
|
var usePropFontVariableAction = () => {
|
|
323
|
-
const { propType } =
|
|
436
|
+
const { propType } = useBoundProp7();
|
|
324
437
|
const visible = !!propType && supportsFontVariables(propType);
|
|
325
438
|
return {
|
|
326
439
|
visible,
|
|
327
440
|
icon: ColorFilterIcon3,
|
|
328
|
-
title:
|
|
329
|
-
popoverContent: ({ closePopover }) => /* @__PURE__ */
|
|
441
|
+
title: __4("Variables", "elementor"),
|
|
442
|
+
popoverContent: ({ closePopover }) => /* @__PURE__ */ React8.createElement(FontVariablesSelection, { onSelect: closePopover })
|
|
330
443
|
};
|
|
331
444
|
};
|
|
332
445
|
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/init-color-variables.ts","../src/controls/color-variables-selection-control.tsx","../src/components/color-indicator.tsx","../src/components/color-variables-selection.tsx","../src/hooks/use-prop-variables.ts","../src/prop-types/color-variable-prop-type.ts","../src/components/styled-menu-item.tsx","../src/components/variables-selection-popover.tsx","../src/hooks/use-prop-color-variable-action.tsx","../src/prop-types/font-variable-prop-type.ts","../src/utils.ts","../src/transformers/variable-transformer.ts","../src/init-font-variables.ts","../src/controls/font-variables-selection-control.tsx","../src/components/font-variables-selection.tsx","../src/hooks/use-prop-font-variable-action.tsx","../src/init.ts"],"sourcesContent":["import { styleTransformersRegistry } from '@elementor/editor-canvas';\nimport { controlActionsMenu, registerControlReplacement } from '@elementor/editor-editing-panel';\n\nimport { ColorVariablesSelectionControl } from './controls/color-variables-selection-control';\nimport { usePropColorVariableAction } from './hooks/use-prop-color-variable-action';\nimport { colorVariablePropTypeUtil } from './prop-types/color-variable-prop-type';\nimport { variableTransformer } from './transformers/variable-transformer';\nimport { hasAssignedColorVariable } from './utils';\n\nconst { registerPopoverAction } = controlActionsMenu;\n\nexport function initColorVariables() {\n\tregisterControlReplacement( {\n\t\tcomponent: ColorVariablesSelectionControl,\n\t\tcondition: ( { value } ) => hasAssignedColorVariable( value ),\n\t} );\n\n\tregisterPopoverAction( {\n\t\tid: 'color-variables',\n\t\tuseProps: usePropColorVariableAction,\n\t} );\n\n\tstyleTransformersRegistry.register( colorVariablePropTypeUtil.key, variableTransformer );\n}\n","import * as React from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\n\nimport { ColorIndicator } from '../components/color-indicator';\nimport { ColorVariablesSelection } from '../components/color-variables-selection';\nimport { VariablesSelectionPopover } from '../components/variables-selection-popover';\nimport { useVariable } from '../hooks/use-prop-variables';\nimport { colorVariablePropTypeUtil } from '../prop-types/color-variable-prop-type';\n\nexport const ColorVariablesSelectionControl = () => {\n\tconst { setValue } = useBoundProp();\n\tconst { value: variableValue } = useBoundProp( colorVariablePropTypeUtil );\n\n\tconst unlinkVariable = () => {\n\t\tsetValue( null );\n\t};\n\n\tconst selectedVariable = useVariable( colorVariablePropTypeUtil.key, variableValue );\n\n\tif ( ! selectedVariable ) {\n\t\tthrow new Error( `Global color variable ${ variableValue } not found` );\n\t}\n\n\treturn (\n\t\t<VariablesSelectionPopover\n\t\t\tselectedVariable={ selectedVariable }\n\t\t\tunlinkVariable={ unlinkVariable }\n\t\t\tstartTagAdornment={ <ColorIndicator size=\"inherit\" component=\"span\" value={ selectedVariable.value } /> }\n\t\t>\n\t\t\t{ ( { closePopover } ) => <ColorVariablesSelection onSelect={ closePopover } /> }\n\t\t</VariablesSelectionPopover>\n\t);\n};\n","import { styled, UnstableColorIndicator } from '@elementor/ui';\n\nexport const ColorIndicator = styled( UnstableColorIndicator )( ( { theme } ) => ( {\n\tborderRadius: `${ theme.shape.borderRadius / 2 }px`,\n} ) );\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\nimport { EditIcon } from '@elementor/icons';\nimport { Box, Divider, ListItemIcon, ListItemText, MenuList } from '@elementor/ui';\n\nimport { usePropVariables } from '../hooks/use-prop-variables';\nimport { colorVariablePropTypeUtil } from '../prop-types/color-variable-prop-type';\nimport { type Variable } from '../types';\nimport { ColorIndicator } from './color-indicator';\nimport { StyledMenuItem } from './styled-menu-item';\n\ntype Props = {\n\tonSelect?: () => void;\n};\n\nexport const ColorVariablesSelection = ( { onSelect }: Props ) => {\n\tconst { value: variable, setValue: setVariable } = useBoundProp( colorVariablePropTypeUtil );\n\n\tconst variables = usePropVariables( colorVariablePropTypeUtil.key );\n\n\tconst handleSetColorVariable = ( newValue: Variable ) => {\n\t\tsetVariable( newValue.key );\n\n\t\tonSelect?.();\n\t};\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<Divider />\n\t\t\t<Box sx={ { overflowY: 'auto', height: 260, width: 220 } }>\n\t\t\t\t<MenuList role=\"listbox\" tabIndex={ 0 }>\n\t\t\t\t\t{ variables.map( ( { value, label, key } ) => (\n\t\t\t\t\t\t<StyledMenuItem\n\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\tonClick={ () => handleSetColorVariable( { value, label, key } ) }\n\t\t\t\t\t\t\tselected={ key === variable }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ListItemIcon>\n\t\t\t\t\t\t\t\t<ColorIndicator size=\"inherit\" component=\"span\" value={ value } />\n\t\t\t\t\t\t\t</ListItemIcon>\n\t\t\t\t\t\t\t<ListItemText\n\t\t\t\t\t\t\t\tprimary={ label }\n\t\t\t\t\t\t\t\tsecondary={ value }\n\t\t\t\t\t\t\t\tprimaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'body2',\n\t\t\t\t\t\t\t\t\tcolor: 'text.secondary',\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tlineHeight: 2,\n\t\t\t\t\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\ttextOverflow: 'ellipsis',\n\t\t\t\t\t\t\t\t\t\twhiteSpace: 'nowrap',\n\t\t\t\t\t\t\t\t\t\tmaxWidth: '81px',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsecondaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'caption',\n\t\t\t\t\t\t\t\t\tcolor: 'text.tertiary',\n\t\t\t\t\t\t\t\t\tstyle: { marginTop: '1px', lineHeight: '1' },\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsx={ { display: 'flex', alignItems: 'center', gap: 1 } }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EditIcon color=\"action\" fontSize=\"inherit\" sx={ { mx: 1, opacity: '0' } } />\n\t\t\t\t\t\t</StyledMenuItem>\n\t\t\t\t\t) ) }\n\t\t\t\t</MenuList>\n\t\t\t</Box>\n\t\t</Fragment>\n\t);\n};\n","import { useMemo } from 'react';\n\ntype Variables = Record< string, { value: string; label: string } >;\n\ntype VariablesGroup = Record< string, Variables >;\n\nexport const usePropVariables = ( propTypeKey: string ) => {\n\treturn useMemo( () => normalizeVariables( propTypeKey ), [ propTypeKey ] );\n};\n\nexport const useVariable = ( propTypeKey: string, key: string ) => {\n\tif ( ! variables[ propTypeKey ][ key ] ) {\n\t\treturn null;\n\t}\n\n\treturn {\n\t\t...variables[ propTypeKey ][ key ],\n\t\tkey,\n\t};\n};\n\nconst normalizeVariables = ( propTypeKey: string ) => {\n\treturn Object.entries( variables[ propTypeKey ] ).map( ( [ key, { label, value } ] ) => ( {\n\t\tkey,\n\t\tlabel,\n\t\tvalue,\n\t} ) );\n};\n\n// @ts-expect-error the temporary solution to get the list of variables from the server\nconst variables: VariablesGroup = window?.ElementorV4Variables;\n","import { createPropUtils } from '@elementor/editor-props';\nimport { z } from '@elementor/schema';\n\nexport const colorVariablePropTypeUtil = createPropUtils( 'global-color-variable', z.string() );\n","import { MenuItem, styled } from '@elementor/ui';\n\nexport const StyledMenuItem = styled( MenuItem )( () => ( {\n\tpl: 2,\n\tpr: 1,\n\tpy: 0.5,\n\t'&:hover .MuiSvgIcon-root': {\n\t\topacity: 1,\n\t},\n} ) );\n","import * as React from 'react';\nimport { useId } from 'react';\nimport { ColorFilterIcon, DetachIcon } from '@elementor/icons';\nimport {\n\tbindPopover,\n\tbindTrigger,\n\tBox,\n\tCloseButton,\n\tIconButton,\n\tPopover,\n\tStack,\n\tTypography,\n\tUnstableTag as Tag,\n\tusePopupState,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type Variable } from '../types';\n\ntype Props = {\n\tselectedVariable: Variable;\n\tunlinkVariable: () => void;\n\tchildren: ( { closePopover }: { closePopover: () => void } ) => React.ReactNode;\n\tstartTagAdornment?: React.ReactNode;\n};\n\nexport const VariablesSelectionPopover = ( {\n\tselectedVariable,\n\tunlinkVariable,\n\tstartTagAdornment,\n\tchildren,\n}: Props ) => {\n\tconst id = useId();\n\tconst popupState = usePopupState( { variant: 'popover', popupId: `elementor-variables-action-${ id }` } );\n\n\tconst closePopover = () => popupState.close();\n\n\tconst { label } = selectedVariable;\n\n\treturn (\n\t\t<Box>\n\t\t\t<Tag\n\t\t\t\tfullWidth\n\t\t\t\tshowActionsOnHover\n\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\tstartIcon={\n\t\t\t\t\t<Stack spacing={ 1 } direction=\"row\" alignItems=\"center\">\n\t\t\t\t\t\t{ startTagAdornment }\n\t\t\t\t\t\t<ColorFilterIcon fontSize={ 'inherit' } sx={ { mr: 1 } } />\n\t\t\t\t\t</Stack>\n\t\t\t\t}\n\t\t\t\tlabel={\n\t\t\t\t\t<Box sx={ { display: 'inline-grid' } }>\n\t\t\t\t\t\t<Typography sx={ { textOverflow: 'ellipsis', overflowX: 'hidden' } } variant=\"subtitle2\">\n\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t</Typography>\n\t\t\t\t\t</Box>\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<IconButton size={ 'tiny' } onClick={ unlinkVariable } aria-label={ __( 'Unlink', 'elementor' ) }>\n\t\t\t\t\t\t<DetachIcon fontSize={ 'tiny' } />\n\t\t\t\t\t</IconButton>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<Popover\n\t\t\t\tdisableScrollLock\n\t\t\t\tanchorOrigin={ { vertical: 'bottom', horizontal: 'center' } }\n\t\t\t\ttransformOrigin={ { vertical: 'top', horizontal: 'center' } }\n\t\t\t\t{ ...bindPopover( popupState ) }\n\t\t\t>\n\t\t\t\t<Stack direction=\"row\" alignItems=\"center\" pl={ 1.5 } pr={ 0.5 } py={ 1.5 }>\n\t\t\t\t\t<ColorFilterIcon fontSize={ 'tiny' } sx={ { mr: 0.5 } } />\n\t\t\t\t\t<Typography variant=\"subtitle2\">{ __( 'Variables', 'elementor' ) }</Typography>\n\t\t\t\t\t<CloseButton\n\t\t\t\t\t\tslotProps={ { icon: { fontSize: 'tiny' } } }\n\t\t\t\t\t\tsx={ { ml: 'auto' } }\n\t\t\t\t\t\tonClick={ closePopover }\n\t\t\t\t\t/>\n\t\t\t\t</Stack>\n\t\t\t\t{ children( { closePopover } ) }\n\t\t\t</Popover>\n\t\t</Box>\n\t);\n};\n","import * as React from 'react';\nimport { type PopoverActionProps, useBoundProp } from '@elementor/editor-editing-panel';\nimport { ColorFilterIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { ColorVariablesSelection } from '../components/color-variables-selection';\nimport { supportsColorVariables } from '../utils';\n\nexport const usePropColorVariableAction = (): PopoverActionProps => {\n\tconst { propType } = useBoundProp();\n\n\tconst visible = !! propType && supportsColorVariables( propType );\n\n\treturn {\n\t\tvisible,\n\t\ticon: ColorFilterIcon,\n\t\ttitle: __( 'Variables', 'elementor' ),\n\t\tpopoverContent: ( { closePopover } ) => <ColorVariablesSelection onSelect={ closePopover } />,\n\t};\n};\n","import { createPropUtils } from '@elementor/editor-props';\nimport { z } from '@elementor/schema';\n\nexport const fontVariablePropTypeUtil = createPropUtils( 'global-font-variable', z.string() );\n","import { type PropType, type PropValue } from '@elementor/editor-props';\n\nimport { colorVariablePropTypeUtil } from './prop-types/color-variable-prop-type';\nimport { fontVariablePropTypeUtil } from './prop-types/font-variable-prop-type';\n\nexport const hasAssignedColorVariable = ( propValue: PropValue ): boolean => {\n\treturn !! colorVariablePropTypeUtil.isValid( propValue );\n};\n\nexport const supportsColorVariables = ( propType: PropType ): boolean => {\n\treturn propType.kind === 'union' && colorVariablePropTypeUtil.key in propType.prop_types;\n};\n\nexport const hasAssignedFontVariable = ( propValue: PropValue ): boolean => {\n\treturn !! fontVariablePropTypeUtil.isValid( propValue );\n};\n\nexport const supportsFontVariables = ( propType: PropType ): boolean => {\n\treturn propType.kind === 'union' && fontVariablePropTypeUtil.key in propType.prop_types;\n};\n","import { createTransformer } from '@elementor/editor-canvas';\n\nexport const variableTransformer = createTransformer( ( value: string ) => {\n\tif ( ! value.trim() ) {\n\t\treturn null;\n\t}\n\n\treturn `var(--${ value })`;\n} );\n","import { styleTransformersRegistry } from '@elementor/editor-canvas';\nimport { controlActionsMenu, registerControlReplacement } from '@elementor/editor-editing-panel';\n\nimport { FontVariablesSelectionControl } from './controls/font-variables-selection-control';\nimport { usePropFontVariableAction } from './hooks/use-prop-font-variable-action';\nimport { fontVariablePropTypeUtil } from './prop-types/font-variable-prop-type';\nimport { variableTransformer } from './transformers/variable-transformer';\nimport { hasAssignedFontVariable } from './utils';\n\nconst { registerPopoverAction } = controlActionsMenu;\n\nexport function initFontVariables() {\n\tregisterControlReplacement( {\n\t\tcomponent: FontVariablesSelectionControl,\n\t\tcondition: ( { value } ) => hasAssignedFontVariable( value ),\n\t} );\n\n\tregisterPopoverAction( {\n\t\tid: 'font-variables',\n\t\tuseProps: usePropFontVariableAction,\n\t} );\n\n\tstyleTransformersRegistry.register( fontVariablePropTypeUtil.key, variableTransformer );\n}\n","import * as React from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\n\nimport { FontVariablesSelection } from '../components/font-variables-selection';\nimport { VariablesSelectionPopover } from '../components/variables-selection-popover';\nimport { useVariable } from '../hooks/use-prop-variables';\nimport { fontVariablePropTypeUtil } from '../prop-types/font-variable-prop-type';\n\nexport const FontVariablesSelectionControl = () => {\n\tconst { setValue } = useBoundProp();\n\tconst { value: variableValue } = useBoundProp( fontVariablePropTypeUtil );\n\n\tconst unlinkVariable = () => {\n\t\tsetValue( null );\n\t};\n\n\tconst selectedVariable = useVariable( fontVariablePropTypeUtil.key, variableValue );\n\n\tif ( ! selectedVariable ) {\n\t\tthrow new Error( `Global font variable ${ variableValue } not found` );\n\t}\n\n\treturn (\n\t\t<VariablesSelectionPopover selectedVariable={ selectedVariable } unlinkVariable={ unlinkVariable }>\n\t\t\t{ ( { closePopover } ) => <FontVariablesSelection onSelect={ closePopover } /> }\n\t\t</VariablesSelectionPopover>\n\t);\n};\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\nimport { EditIcon, TextIcon } from '@elementor/icons';\nimport { Box, Divider, ListItemIcon, ListItemText, MenuList } from '@elementor/ui';\n\nimport { usePropVariables } from '../hooks/use-prop-variables';\nimport { fontVariablePropTypeUtil } from '../prop-types/font-variable-prop-type';\nimport { type Variable } from '../types';\nimport { StyledMenuItem } from './styled-menu-item';\n\ntype Props = {\n\tonSelect?: () => void;\n};\n\nexport const FontVariablesSelection = ( { onSelect }: Props ) => {\n\tconst { value: variable, setValue: setVariable } = useBoundProp( fontVariablePropTypeUtil );\n\n\tconst variables = usePropVariables( fontVariablePropTypeUtil.key );\n\n\tconst handleSetVariable = ( newValue: Variable ) => {\n\t\tsetVariable( newValue.key );\n\n\t\tonSelect?.();\n\t};\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<Divider />\n\t\t\t<Box sx={ { overflowY: 'auto', height: 260, width: 220 } }>\n\t\t\t\t<MenuList role=\"listbox\" tabIndex={ 0 }>\n\t\t\t\t\t{ variables.map( ( { value, label, key } ) => (\n\t\t\t\t\t\t<StyledMenuItem\n\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\tonClick={ () => handleSetVariable( { value, label, key } ) }\n\t\t\t\t\t\t\tselected={ key === variable }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ListItemIcon>\n\t\t\t\t\t\t\t\t<TextIcon />\n\t\t\t\t\t\t\t</ListItemIcon>\n\t\t\t\t\t\t\t<ListItemText\n\t\t\t\t\t\t\t\tprimary={ label }\n\t\t\t\t\t\t\t\tsecondary={ value }\n\t\t\t\t\t\t\t\tprimaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'body2',\n\t\t\t\t\t\t\t\t\tcolor: 'text.secondary',\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tlineHeight: 2,\n\t\t\t\t\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\ttextOverflow: 'ellipsis',\n\t\t\t\t\t\t\t\t\t\twhiteSpace: 'nowrap',\n\t\t\t\t\t\t\t\t\t\tmaxWidth: '81px',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsecondaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'caption',\n\t\t\t\t\t\t\t\t\tcolor: 'text.tertiary',\n\t\t\t\t\t\t\t\t\tstyle: { marginTop: '1px', lineHeight: '1' },\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsx={ { display: 'flex', alignItems: 'center', gap: 1 } }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EditIcon color=\"action\" fontSize=\"inherit\" sx={ { mx: 1, opacity: '0' } } />\n\t\t\t\t\t\t</StyledMenuItem>\n\t\t\t\t\t) ) }\n\t\t\t\t</MenuList>\n\t\t\t</Box>\n\t\t</Fragment>\n\t);\n};\n","import * as React from 'react';\nimport { type PopoverActionProps, useBoundProp } from '@elementor/editor-editing-panel';\nimport { ColorFilterIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { FontVariablesSelection } from '../components/font-variables-selection';\nimport { supportsFontVariables } from '../utils';\n\nexport const usePropFontVariableAction = (): PopoverActionProps => {\n\tconst { propType } = useBoundProp();\n\n\tconst visible = !! propType && supportsFontVariables( propType );\n\n\treturn {\n\t\tvisible,\n\t\ticon: ColorFilterIcon,\n\t\ttitle: __( 'Variables', 'elementor' ),\n\t\tpopoverContent: ( { closePopover } ) => <FontVariablesSelection onSelect={ closePopover } />,\n\t};\n};\n","import { initColorVariables } from './init-color-variables';\nimport { initFontVariables } from './init-font-variables';\n\nexport function init() {\n\tinitColorVariables();\n\n\tinitFontVariables();\n}\n"],"mappings":"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","names":["React","useBoundProp","styled","variables","React","Box","useBoundProp","React","useBoundProp","ColorFilterIcon","__","createPropUtils","z","useBoundProp","ColorFilterIcon","__","styleTransformersRegistry","controlActionsMenu","registerControlReplacement","React","useBoundProp","React","Fragment","useBoundProp","EditIcon","Box","Divider","ListItemIcon","ListItemText","MenuList","useBoundProp","variables","Fragment","Divider","Box","MenuList","ListItemIcon","ListItemText","EditIcon","useBoundProp","React","useBoundProp","ColorFilterIcon","__","useBoundProp","ColorFilterIcon","__","registerPopoverAction","controlActionsMenu","registerControlReplacement","styleTransformersRegistry"]}
|
|
1
|
+
{"version":3,"sources":["../src/init-color-variables.ts","../src/controls/color-variables-selection-control.tsx","../src/components/color-indicator.tsx","../src/components/color-variables-selection.tsx","../src/hooks/use-prop-variables.ts","../src/prop-types/color-variable-prop-type.ts","../src/components/styled-menu-item.tsx","../src/components/variables-selection-popover.tsx","../src/components/color-variable-creation.tsx","../src/hooks/use-prop-color-variable-action.tsx","../src/prop-types/font-variable-prop-type.ts","../src/utils.ts","../src/transformers/variable-transformer.ts","../src/init-font-variables.ts","../src/controls/font-variables-selection-control.tsx","../src/components/font-variables-selection.tsx","../src/hooks/use-prop-font-variable-action.tsx","../src/init.ts"],"sourcesContent":["import { styleTransformersRegistry } from '@elementor/editor-canvas';\nimport { controlActionsMenu, registerControlReplacement } from '@elementor/editor-editing-panel';\n\nimport { ColorVariablesSelectionControl } from './controls/color-variables-selection-control';\nimport { usePropColorVariableAction } from './hooks/use-prop-color-variable-action';\nimport { colorVariablePropTypeUtil } from './prop-types/color-variable-prop-type';\nimport { variableTransformer } from './transformers/variable-transformer';\nimport { hasAssignedColorVariable } from './utils';\n\nconst { registerPopoverAction } = controlActionsMenu;\n\nexport function initColorVariables() {\n\tregisterControlReplacement( {\n\t\tcomponent: ColorVariablesSelectionControl,\n\t\tcondition: ( { value } ) => hasAssignedColorVariable( value ),\n\t} );\n\n\tregisterPopoverAction( {\n\t\tid: 'color-variables',\n\t\tuseProps: usePropColorVariableAction,\n\t} );\n\n\tstyleTransformersRegistry.register( colorVariablePropTypeUtil.key, variableTransformer );\n}\n","import * as React from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\nimport { colorPropTypeUtil } from '@elementor/editor-props';\n\nimport { ColorIndicator } from '../components/color-indicator';\nimport { ColorVariablesSelection } from '../components/color-variables-selection';\nimport { VariablesSelectionPopover } from '../components/variables-selection-popover';\nimport { useVariable } from '../hooks/use-prop-variables';\nimport { colorVariablePropTypeUtil } from '../prop-types/color-variable-prop-type';\n\nexport const ColorVariablesSelectionControl = () => {\n\tconst { setValue } = useBoundProp();\n\tconst { value: variableValue } = useBoundProp( colorVariablePropTypeUtil );\n\n\tconst selectedVariable = useVariable( colorVariablePropTypeUtil.key, variableValue );\n\n\tif ( ! selectedVariable ) {\n\t\tthrow new Error( `Global color variable ${ variableValue } not found` );\n\t}\n\n\tconst unlinkVariable = () => {\n\t\tsetValue( colorPropTypeUtil.create( selectedVariable.value ) );\n\t};\n\n\treturn (\n\t\t<VariablesSelectionPopover\n\t\t\tselectedVariable={ selectedVariable }\n\t\t\tunlinkVariable={ unlinkVariable }\n\t\t\tstartTagAdornment={ <ColorIndicator size=\"inherit\" component=\"span\" value={ selectedVariable.value } /> }\n\t\t>\n\t\t\t{ ( { closePopover } ) => <ColorVariablesSelection onSelect={ closePopover } /> }\n\t\t</VariablesSelectionPopover>\n\t);\n};\n","import { styled, UnstableColorIndicator } from '@elementor/ui';\n\nexport const ColorIndicator = styled( UnstableColorIndicator )( ( { theme } ) => ( {\n\tborderRadius: `${ theme.shape.borderRadius / 2 }px`,\n} ) );\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\nimport { EditIcon } from '@elementor/icons';\nimport { Box, Divider, ListItemIcon, ListItemText, MenuList } from '@elementor/ui';\n\nimport { usePropVariables } from '../hooks/use-prop-variables';\nimport { colorVariablePropTypeUtil } from '../prop-types/color-variable-prop-type';\nimport { type Variable } from '../types';\nimport { ColorIndicator } from './color-indicator';\nimport { StyledMenuItem } from './styled-menu-item';\n\ntype Props = {\n\tonSelect?: () => void;\n};\n\nexport const ColorVariablesSelection = ( { onSelect }: Props ) => {\n\tconst { value: variable, setValue: setVariable } = useBoundProp( colorVariablePropTypeUtil );\n\n\tconst variables = usePropVariables( colorVariablePropTypeUtil.key );\n\n\tconst handleSetColorVariable = ( newValue: Variable ) => {\n\t\tsetVariable( newValue.key );\n\n\t\tonSelect?.();\n\t};\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<Divider />\n\t\t\t<Box sx={ { overflowY: 'auto', height: 260, width: 220 } }>\n\t\t\t\t<MenuList role=\"listbox\" tabIndex={ 0 }>\n\t\t\t\t\t{ variables.map( ( { value, label, key } ) => (\n\t\t\t\t\t\t<StyledMenuItem\n\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\tonClick={ () => handleSetColorVariable( { value, label, key } ) }\n\t\t\t\t\t\t\tselected={ key === variable }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ListItemIcon>\n\t\t\t\t\t\t\t\t<ColorIndicator size=\"inherit\" component=\"span\" value={ value } />\n\t\t\t\t\t\t\t</ListItemIcon>\n\t\t\t\t\t\t\t<ListItemText\n\t\t\t\t\t\t\t\tprimary={ label }\n\t\t\t\t\t\t\t\tsecondary={ value }\n\t\t\t\t\t\t\t\tprimaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'body2',\n\t\t\t\t\t\t\t\t\tcolor: 'text.secondary',\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tlineHeight: 2,\n\t\t\t\t\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\ttextOverflow: 'ellipsis',\n\t\t\t\t\t\t\t\t\t\twhiteSpace: 'nowrap',\n\t\t\t\t\t\t\t\t\t\tmaxWidth: '81px',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsecondaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'caption',\n\t\t\t\t\t\t\t\t\tcolor: 'text.tertiary',\n\t\t\t\t\t\t\t\t\tstyle: { marginTop: '1px', lineHeight: '1' },\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsx={ { display: 'flex', alignItems: 'center', gap: 1 } }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EditIcon color=\"action\" fontSize=\"inherit\" sx={ { mx: 1, opacity: '0' } } />\n\t\t\t\t\t\t</StyledMenuItem>\n\t\t\t\t\t) ) }\n\t\t\t\t</MenuList>\n\t\t\t</Box>\n\t\t</Fragment>\n\t);\n};\n","import { useMemo } from 'react';\n\nimport { type Variable } from '../types';\n\ntype VariableData = {\n\tvalue: string;\n\tlabel: string;\n};\ntype Variables = Record< string, VariableData >;\n\ntype VariablesGroup = Record< string, Variables >;\n\nexport const usePropVariables = ( propTypeKey: string ) => {\n\treturn useMemo( () => normalizeVariables( propTypeKey ), [ propTypeKey ] );\n};\n\nexport const useVariable = ( propTypeKey: string, key: string ) => {\n\tif ( ! variables[ propTypeKey ]?.[ key ] ) {\n\t\treturn null;\n\t}\n\n\treturn {\n\t\t...variables[ propTypeKey ][ key ],\n\t\tkey,\n\t};\n};\n\nconst normalizeVariables = ( propTypeKey: string ) => {\n\treturn Object.entries( variables[ propTypeKey ] || {} ).map( ( [ key, { label, value } ] ) => ( {\n\t\tkey,\n\t\tlabel,\n\t\tvalue,\n\t} ) );\n};\n\nexport const createVariable = ( propTypeKey: string, variable: VariableData ) => {\n\tconst id = generateId( 'e-gv', Object.keys( variables[ propTypeKey ] ).length );\n\n\tconst newVariable: Variable = {\n\t\tvalue: variable.value,\n\t\tlabel: variable.label,\n\t\tkey: propTypeKey,\n\t};\n\n\tvariables[ propTypeKey ][ id ] = newVariable || {};\n\n\treturn id;\n};\n\n// @ts-expect-error the temporary solution to get the list of variables from the server\nconst variables: VariablesGroup = window?.ElementorV4Variables || {};\n\nconst generateId = ( prefix: string, variablesCount: number ) => {\n\tconst randomHex = Math.random().toString( 16 ).slice( 2, 9 );\n\n\treturn `${ prefix }${ randomHex }${ variablesCount }`;\n};\n","import { createPropUtils } from '@elementor/editor-props';\nimport { z } from '@elementor/schema';\n\nexport const colorVariablePropTypeUtil = createPropUtils( 'global-color-variable', z.string() );\n","import { MenuItem, styled } from '@elementor/ui';\n\nexport const StyledMenuItem = styled( MenuItem )( () => ( {\n\tpl: 2,\n\tpr: 1,\n\tpy: 0.5,\n\t'&:hover .MuiSvgIcon-root': {\n\t\topacity: 1,\n\t},\n} ) );\n","import * as React from 'react';\nimport { useId, useRef } from 'react';\nimport { ColorFilterIcon, DetachIcon, PlusIcon } from '@elementor/icons';\nimport {\n\tbindPopover,\n\tbindTrigger,\n\tBox,\n\tCloseButton,\n\tIconButton,\n\tPopover,\n\tStack,\n\tTypography,\n\tUnstableTag as Tag,\n\tusePopupState,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { type Variable } from '../types';\nimport { ColorVariableCreation } from './color-variable-creation';\n\ntype Props = {\n\tselectedVariable: Variable;\n\tunlinkVariable: () => void;\n\tchildren: ( { closePopover }: { closePopover: () => void } ) => React.ReactNode;\n\tstartTagAdornment?: React.ReactNode;\n};\n\nexport const VariablesSelectionPopover = ( {\n\tselectedVariable,\n\tunlinkVariable,\n\tstartTagAdornment,\n\tchildren,\n}: Props ) => {\n\tconst id = useId();\n\tconst popupState = usePopupState( { variant: 'popover', popupId: `elementor-variables-action-${ id }` } );\n\tconst creationPopupState = usePopupState( { variant: 'popover', popupId: `elementor-variables-creation-${ id }` } );\n\n\tconst closePopover = () => popupState.close();\n\n\tconst handleCreateButtonClick = ( event: React.MouseEvent ) => {\n\t\tclosePopover();\n\t\tbindTrigger( creationPopupState ).onClick( event );\n\t};\n\n\tconst anchorRef = useRef< HTMLDivElement >( null );\n\tconst { label } = selectedVariable;\n\n\treturn (\n\t\t<Box ref={ anchorRef }>\n\t\t\t<Tag\n\t\t\t\tfullWidth\n\t\t\t\tshowActionsOnHover\n\t\t\t\t{ ...bindTrigger( popupState ) }\n\t\t\t\tstartIcon={\n\t\t\t\t\t<Stack spacing={ 1 } direction=\"row\" alignItems=\"center\">\n\t\t\t\t\t\t{ startTagAdornment }\n\t\t\t\t\t\t<ColorFilterIcon fontSize={ 'inherit' } sx={ { mr: 1 } } />\n\t\t\t\t\t</Stack>\n\t\t\t\t}\n\t\t\t\tlabel={\n\t\t\t\t\t<Box sx={ { display: 'inline-grid' } }>\n\t\t\t\t\t\t<Typography sx={ { textOverflow: 'ellipsis', overflowX: 'hidden' } } variant=\"subtitle2\">\n\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t</Typography>\n\t\t\t\t\t</Box>\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<IconButton size=\"tiny\" onClick={ unlinkVariable } aria-label={ __( 'Unlink', 'elementor' ) }>\n\t\t\t\t\t\t<DetachIcon fontSize=\"tiny\" />\n\t\t\t\t\t</IconButton>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<Popover\n\t\t\t\t{ ...bindPopover( popupState ) }\n\t\t\t\tdisableScrollLock\n\t\t\t\tanchorEl={ anchorRef.current }\n\t\t\t\tanchorOrigin={ { vertical: 'bottom', horizontal: 'right' } }\n\t\t\t\ttransformOrigin={ { vertical: 'top', horizontal: 'right' } }\n\t\t\t>\n\t\t\t\t<Stack direction=\"row\" alignItems=\"center\" pl={ 1.5 } pr={ 0.5 } py={ 1.5 }>\n\t\t\t\t\t<ColorFilterIcon fontSize=\"tiny\" sx={ { mr: 0.5 } } />\n\t\t\t\t\t<Typography variant=\"subtitle2\">{ __( 'Variables', 'elementor' ) }</Typography>\n\t\t\t\t\t<Stack direction=\"row\" sx={ { ml: 'auto' } }>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\t{ ...bindTrigger( creationPopupState ) }\n\t\t\t\t\t\t\tsize=\"tiny\"\n\t\t\t\t\t\t\tonClick={ handleCreateButtonClick }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<PlusIcon fontSize=\"tiny\" />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t\t<CloseButton slotProps={ { icon: { fontSize: 'tiny' } } } onClick={ closePopover } />\n\t\t\t\t\t</Stack>\n\t\t\t\t</Stack>\n\t\t\t\t{ children?.( { closePopover } ) }\n\t\t\t</Popover>\n\n\t\t\t<ColorVariableCreation popupState={ creationPopupState } />\n\t\t</Box>\n\t);\n};\n","import * as React from 'react';\nimport { useRef, useState } from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\nimport { BrushIcon } from '@elementor/icons';\nimport {\n\tbindPopover,\n\tBox,\n\tButton,\n\tCardActions,\n\tCloseButton,\n\tDivider,\n\tFormLabel,\n\tGrid,\n\tPopover,\n\ttype PopupState,\n\tStack,\n\tTextField,\n\tTypography,\n\tUnstableColorField,\n} from '@elementor/ui';\nimport { __ } from '@wordpress/i18n';\n\nimport { createVariable } from '../hooks/use-prop-variables';\nimport { colorVariablePropTypeUtil } from '../prop-types/color-variable-prop-type';\n\nexport const ColorVariableCreation = ( { popupState }: { popupState: PopupState } ) => {\n\tconst { setValue: setVariable } = useBoundProp( colorVariablePropTypeUtil );\n\n\tconst [ color, setColor ] = useState( '' );\n\tconst [ label, setLabel ] = useState( '' );\n\n\tconst anchorRef = useRef< HTMLDivElement >( null );\n\n\tconst resetFields = () => {\n\t\tsetColor( '' );\n\t\tsetLabel( '' );\n\t};\n\n\tconst closePopover = () => {\n\t\tresetFields();\n\t\tpopupState.close();\n\t};\n\n\tconst handleCreate = () => {\n\t\tconst key = createVariable( colorVariablePropTypeUtil.key, { label, value: color } );\n\t\tsetVariable( key );\n\t\tclosePopover();\n\t};\n\n\tconst isInValidForm = () => {\n\t\treturn ! color?.trim() || ! label?.trim();\n\t};\n\n\treturn (\n\t\t<Box ref={ anchorRef }>\n\t\t\t<Popover\n\t\t\t\t{ ...bindPopover( popupState ) }\n\t\t\t\tanchorEl={ anchorRef.current }\n\t\t\t\tanchorOrigin={ { vertical: 'bottom', horizontal: 'right' } }\n\t\t\t\ttransformOrigin={ { vertical: 'top', horizontal: 'right' } }\n\t\t\t>\n\t\t\t\t<Stack direction=\"row\" alignItems=\"center\" pl={ 1.5 } pr={ 0.5 } py={ 1.5 }>\n\t\t\t\t\t<BrushIcon fontSize=\"tiny\" sx={ { mr: 0.5 } } />\n\t\t\t\t\t<Typography variant=\"subtitle2\">{ __( 'Create variable', 'elementor' ) }</Typography>\n\t\t\t\t\t<CloseButton\n\t\t\t\t\t\tslotProps={ { icon: { fontSize: 'small' } } }\n\t\t\t\t\t\tsx={ { ml: 'auto' } }\n\t\t\t\t\t\tonClick={ closePopover }\n\t\t\t\t\t/>\n\t\t\t\t</Stack>\n\n\t\t\t\t<Divider />\n\n\t\t\t\t<Stack p={ 1.5 } gap={ 1.5 }>\n\t\t\t\t\t<Grid container gap={ 0.75 } alignItems=\"center\">\n\t\t\t\t\t\t<Grid item xs={ 12 }>\n\t\t\t\t\t\t\t<FormLabel size=\"small\">{ __( 'Name', 'elementor' ) }</FormLabel>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid item xs={ 12 }>\n\t\t\t\t\t\t\t<TextField\n\t\t\t\t\t\t\t\tsize=\"tiny\"\n\t\t\t\t\t\t\t\tfullWidth\n\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\tonChange={ ( e: React.ChangeEvent< HTMLInputElement > ) => setLabel( e.target.value ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t</Grid>\n\n\t\t\t\t\t<Grid container gap={ 0.75 } alignItems=\"center\">\n\t\t\t\t\t\t<Grid item xs={ 12 }>\n\t\t\t\t\t\t\t<FormLabel size=\"small\">{ __( 'Value', 'elementor' ) }</FormLabel>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t\t<Grid item xs={ 12 }>\n\t\t\t\t\t\t\t<UnstableColorField\n\t\t\t\t\t\t\t\tsize=\"tiny\"\n\t\t\t\t\t\t\t\tfullWidth\n\t\t\t\t\t\t\t\tvalue={ color }\n\t\t\t\t\t\t\t\tonChange={ setColor }\n\t\t\t\t\t\t\t\tslotProps={ {\n\t\t\t\t\t\t\t\t\tcolorPicker: {\n\t\t\t\t\t\t\t\t\t\tanchorEl: anchorRef.current,\n\t\t\t\t\t\t\t\t\t\tanchorOrigin: { vertical: 'top', horizontal: 'right' },\n\t\t\t\t\t\t\t\t\t\ttransformOrigin: { vertical: 'top', horizontal: -10 },\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Grid>\n\t\t\t\t\t</Grid>\n\t\t\t\t</Stack>\n\n\t\t\t\t<CardActions>\n\t\t\t\t\t<Button size=\"small\" onClick={ closePopover } color=\"secondary\" variant=\"text\">\n\t\t\t\t\t\t{ __( 'Cancel', 'elementor' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button size=\"small\" variant=\"contained\" disabled={ isInValidForm() } onClick={ handleCreate }>\n\t\t\t\t\t\t{ __( 'Create', 'elementor' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</CardActions>\n\t\t\t</Popover>\n\t\t</Box>\n\t);\n};\n","import * as React from 'react';\nimport { type PopoverActionProps, useBoundProp } from '@elementor/editor-editing-panel';\nimport { ColorFilterIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { ColorVariablesSelection } from '../components/color-variables-selection';\nimport { supportsColorVariables } from '../utils';\n\nexport const usePropColorVariableAction = (): PopoverActionProps => {\n\tconst { propType } = useBoundProp();\n\n\tconst visible = !! propType && supportsColorVariables( propType );\n\n\treturn {\n\t\tvisible,\n\t\ticon: ColorFilterIcon,\n\t\ttitle: __( 'Variables', 'elementor' ),\n\t\tpopoverContent: ( { closePopover } ) => <ColorVariablesSelection onSelect={ closePopover } />,\n\t};\n};\n","import { createPropUtils } from '@elementor/editor-props';\nimport { z } from '@elementor/schema';\n\nexport const fontVariablePropTypeUtil = createPropUtils( 'global-font-variable', z.string() );\n","import { type PropType, type PropValue } from '@elementor/editor-props';\n\nimport { colorVariablePropTypeUtil } from './prop-types/color-variable-prop-type';\nimport { fontVariablePropTypeUtil } from './prop-types/font-variable-prop-type';\n\nexport const hasAssignedColorVariable = ( propValue: PropValue ): boolean => {\n\treturn !! colorVariablePropTypeUtil.isValid( propValue );\n};\n\nexport const supportsColorVariables = ( propType: PropType ): boolean => {\n\treturn propType.kind === 'union' && colorVariablePropTypeUtil.key in propType.prop_types;\n};\n\nexport const hasAssignedFontVariable = ( propValue: PropValue ): boolean => {\n\treturn !! fontVariablePropTypeUtil.isValid( propValue );\n};\n\nexport const supportsFontVariables = ( propType: PropType ): boolean => {\n\treturn propType.kind === 'union' && fontVariablePropTypeUtil.key in propType.prop_types;\n};\n","import { createTransformer } from '@elementor/editor-canvas';\n\nexport const variableTransformer = createTransformer( ( value: string ) => {\n\tif ( ! value.trim() ) {\n\t\treturn null;\n\t}\n\n\treturn `var(--${ value })`;\n} );\n","import { styleTransformersRegistry } from '@elementor/editor-canvas';\nimport { controlActionsMenu, registerControlReplacement } from '@elementor/editor-editing-panel';\n\nimport { FontVariablesSelectionControl } from './controls/font-variables-selection-control';\nimport { usePropFontVariableAction } from './hooks/use-prop-font-variable-action';\nimport { fontVariablePropTypeUtil } from './prop-types/font-variable-prop-type';\nimport { variableTransformer } from './transformers/variable-transformer';\nimport { hasAssignedFontVariable } from './utils';\n\nconst { registerPopoverAction } = controlActionsMenu;\n\nexport function initFontVariables() {\n\tregisterControlReplacement( {\n\t\tcomponent: FontVariablesSelectionControl,\n\t\tcondition: ( { value } ) => hasAssignedFontVariable( value ),\n\t} );\n\n\tregisterPopoverAction( {\n\t\tid: 'font-variables',\n\t\tuseProps: usePropFontVariableAction,\n\t} );\n\n\tstyleTransformersRegistry.register( fontVariablePropTypeUtil.key, variableTransformer );\n}\n","import * as React from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\nimport { stringPropTypeUtil } from '@elementor/editor-props';\n\nimport { FontVariablesSelection } from '../components/font-variables-selection';\nimport { VariablesSelectionPopover } from '../components/variables-selection-popover';\nimport { useVariable } from '../hooks/use-prop-variables';\nimport { fontVariablePropTypeUtil } from '../prop-types/font-variable-prop-type';\n\nexport const FontVariablesSelectionControl = () => {\n\tconst { setValue: setFontFamily } = useBoundProp();\n\tconst { value: variableValue } = useBoundProp( fontVariablePropTypeUtil );\n\n\tconst selectedVariable = useVariable( fontVariablePropTypeUtil.key, variableValue );\n\n\tif ( ! selectedVariable ) {\n\t\tthrow new Error( `Global font variable ${ variableValue } not found` );\n\t}\n\n\tconst unlinkVariable = () => {\n\t\tsetFontFamily( stringPropTypeUtil.create( selectedVariable.value ) );\n\t};\n\n\treturn (\n\t\t<VariablesSelectionPopover selectedVariable={ selectedVariable } unlinkVariable={ unlinkVariable }>\n\t\t\t{ ( { closePopover } ) => <FontVariablesSelection onSelect={ closePopover } /> }\n\t\t</VariablesSelectionPopover>\n\t);\n};\n","import * as React from 'react';\nimport { Fragment } from 'react';\nimport { useBoundProp } from '@elementor/editor-controls';\nimport { EditIcon, TextIcon } from '@elementor/icons';\nimport { Box, Divider, ListItemIcon, ListItemText, MenuList } from '@elementor/ui';\n\nimport { usePropVariables } from '../hooks/use-prop-variables';\nimport { fontVariablePropTypeUtil } from '../prop-types/font-variable-prop-type';\nimport { type Variable } from '../types';\nimport { StyledMenuItem } from './styled-menu-item';\n\ntype Props = {\n\tonSelect?: () => void;\n};\n\nexport const FontVariablesSelection = ( { onSelect }: Props ) => {\n\tconst { value: variable, setValue: setVariable } = useBoundProp( fontVariablePropTypeUtil );\n\n\tconst variables = usePropVariables( fontVariablePropTypeUtil.key );\n\n\tconst handleSetVariable = ( newValue: Variable ) => {\n\t\tsetVariable( newValue.key );\n\n\t\tonSelect?.();\n\t};\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<Divider />\n\t\t\t<Box sx={ { overflowY: 'auto', height: 260, width: 220 } }>\n\t\t\t\t<MenuList role=\"listbox\" tabIndex={ 0 }>\n\t\t\t\t\t{ variables.map( ( { value, label, key } ) => (\n\t\t\t\t\t\t<StyledMenuItem\n\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\tonClick={ () => handleSetVariable( { value, label, key } ) }\n\t\t\t\t\t\t\tselected={ key === variable }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ListItemIcon>\n\t\t\t\t\t\t\t\t<TextIcon />\n\t\t\t\t\t\t\t</ListItemIcon>\n\t\t\t\t\t\t\t<ListItemText\n\t\t\t\t\t\t\t\tprimary={ label }\n\t\t\t\t\t\t\t\tsecondary={ value }\n\t\t\t\t\t\t\t\tprimaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'body2',\n\t\t\t\t\t\t\t\t\tcolor: 'text.secondary',\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tlineHeight: 2,\n\t\t\t\t\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\ttextOverflow: 'ellipsis',\n\t\t\t\t\t\t\t\t\t\twhiteSpace: 'nowrap',\n\t\t\t\t\t\t\t\t\t\tmaxWidth: '81px',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsecondaryTypographyProps={ {\n\t\t\t\t\t\t\t\t\tvariant: 'caption',\n\t\t\t\t\t\t\t\t\tcolor: 'text.tertiary',\n\t\t\t\t\t\t\t\t\tstyle: { marginTop: '1px', lineHeight: '1' },\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsx={ { display: 'flex', alignItems: 'center', gap: 1 } }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EditIcon color=\"action\" fontSize=\"inherit\" sx={ { mx: 1, opacity: '0' } } />\n\t\t\t\t\t\t</StyledMenuItem>\n\t\t\t\t\t) ) }\n\t\t\t\t</MenuList>\n\t\t\t</Box>\n\t\t</Fragment>\n\t);\n};\n","import * as React from 'react';\nimport { type PopoverActionProps, useBoundProp } from '@elementor/editor-editing-panel';\nimport { ColorFilterIcon } from '@elementor/icons';\nimport { __ } from '@wordpress/i18n';\n\nimport { FontVariablesSelection } from '../components/font-variables-selection';\nimport { supportsFontVariables } from '../utils';\n\nexport const usePropFontVariableAction = (): PopoverActionProps => {\n\tconst { propType } = useBoundProp();\n\n\tconst visible = !! propType && supportsFontVariables( propType );\n\n\treturn {\n\t\tvisible,\n\t\ticon: ColorFilterIcon,\n\t\ttitle: __( 'Variables', 'elementor' ),\n\t\tpopoverContent: ( { closePopover } ) => <FontVariablesSelection onSelect={ closePopover } />,\n\t};\n};\n","import { initColorVariables } from './init-color-variables';\nimport { initFontVariables } from './init-font-variables';\n\nexport function init() {\n\tinitColorVariables();\n\n\tinitFontVariables();\n}\n"],"mappings":"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","names":["React","useBoundProp","styled","variables","React","useRef","bindPopover","Box","CloseButton","Popover","Stack","Typography","__","React","useBoundProp","Box","Divider","useBoundProp","Box","Divider","useRef","Box","Stack","Typography","__","Popover","bindPopover","CloseButton","useBoundProp","React","useBoundProp","ColorFilterIcon","__","createPropUtils","z","useBoundProp","ColorFilterIcon","__","styleTransformersRegistry","controlActionsMenu","registerControlReplacement","React","useBoundProp","React","Fragment","useBoundProp","EditIcon","Box","Divider","ListItemIcon","ListItemText","MenuList","useBoundProp","variables","Fragment","Divider","Box","MenuList","ListItemIcon","ListItemText","EditIcon","useBoundProp","React","useBoundProp","ColorFilterIcon","__","useBoundProp","ColorFilterIcon","__","registerPopoverAction","controlActionsMenu","registerControlReplacement","styleTransformersRegistry"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elementor/editor-variables",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"author": "Elementor Team",
|
|
6
6
|
"homepage": "https://elementor.com/",
|
|
@@ -39,14 +39,14 @@
|
|
|
39
39
|
"dev": "tsup --config=../../tsup.dev.ts"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@elementor/editor-editing-panel": "1.
|
|
43
|
-
"@elementor/editor-canvas": "0.22.
|
|
42
|
+
"@elementor/editor-editing-panel": "1.40.0",
|
|
43
|
+
"@elementor/editor-canvas": "0.22.1",
|
|
44
44
|
"@elementor/editor-props": "0.12.1",
|
|
45
45
|
"@elementor/schema": "0.1.2",
|
|
46
|
-
"@elementor/editor-controls": "0.
|
|
46
|
+
"@elementor/editor-controls": "0.33.0",
|
|
47
47
|
"@elementor/icons": "1.40.1",
|
|
48
48
|
"@wordpress/i18n": "^5.13.0",
|
|
49
|
-
"@elementor/ui": "1.34.
|
|
49
|
+
"@elementor/ui": "1.34.5"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
52
|
"react": "^18.3.1"
|