@elementor/editor-editing-panel 1.8.1 → 1.10.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/dist/index.js CHANGED
@@ -30,10 +30,11 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  // src/index.ts
31
31
  var index_exports = {};
32
32
  __export(index_exports, {
33
- registerGlobalClassMenuItem: () => registerGlobalClassMenuItem,
34
- registerStateMenuItem: () => registerStateMenuItem,
33
+ injectIntoClassSelectorActions: () => injectIntoClassSelectorActions,
35
34
  replaceControl: () => replaceControl,
36
- useBoundProp: () => import_editor_controls47.useBoundProp
35
+ useBoundProp: () => import_editor_controls47.useBoundProp,
36
+ usePanelActions: () => usePanelActions,
37
+ usePanelStatus: () => usePanelStatus
37
38
  });
38
39
  module.exports = __toCommonJS(index_exports);
39
40
  var import_editor_controls47 = require("@elementor/editor-controls");
@@ -42,448 +43,188 @@ var import_editor_controls47 = require("@elementor/editor-controls");
42
43
  var import_editor_controls = require("@elementor/editor-controls");
43
44
  var { replaceControl, getControlReplacement } = (0, import_editor_controls.createControlReplacement)();
44
45
 
45
- // src/components/css-class-menu.tsx
46
- var React3 = __toESM(require("react"));
47
- var import_icons = require("@elementor/icons");
48
- var import_menus = require("@elementor/menus");
49
- var import_ui = require("@elementor/ui");
50
- var import_i18n = require("@wordpress/i18n");
46
+ // src/components/css-class-selector.tsx
47
+ var React7 = __toESM(require("react"));
48
+ var import_react6 = require("react");
49
+ var import_editor_elements2 = require("@elementor/editor-elements");
50
+ var import_editor_props = require("@elementor/editor-props");
51
+ var import_editor_styles_repository2 = require("@elementor/editor-styles-repository");
52
+ var import_editor_ui = require("@elementor/editor-ui");
53
+ var import_icons2 = require("@elementor/icons");
54
+ var import_locations = require("@elementor/locations");
55
+ var import_ui4 = require("@elementor/ui");
56
+ var import_i18n2 = require("@wordpress/i18n");
51
57
 
52
- // src/contexts/css-class-item-context.tsx
58
+ // src/contexts/classes-prop-context.tsx
53
59
  var React = __toESM(require("react"));
54
60
  var import_react = require("react");
55
- var ClassItemContext = (0, import_react.createContext)({
56
- styleId: "",
57
- isGlobal: false,
58
- isActive: false
59
- });
60
- function CssClassItemProvider({ styleId, isGlobal, isActive, children }) {
61
- return /* @__PURE__ */ React.createElement(ClassItemContext.Provider, { value: { styleId, isGlobal, isActive } }, children);
61
+ var Context = (0, import_react.createContext)(null);
62
+ function ClassesPropProvider({ children, prop }) {
63
+ return /* @__PURE__ */ React.createElement(Context.Provider, { value: { prop } }, children);
62
64
  }
63
- function useCssClassItem() {
64
- const context = React.useContext(ClassItemContext);
65
+ function useClassesProp() {
66
+ const context = (0, import_react.useContext)(Context);
65
67
  if (!context) {
66
- throw new Error("useCssClassItem must be used within a CssClassItemProvider");
68
+ throw new Error("useClassesProp must be used within a ClassesPropProvider");
67
69
  }
68
- return context;
70
+ return context.prop;
69
71
  }
70
72
 
71
- // src/contexts/style-context.tsx
73
+ // src/contexts/element-context.tsx
72
74
  var React2 = __toESM(require("react"));
73
75
  var import_react2 = require("react");
74
- var Context = (0, import_react2.createContext)(null);
75
- function StyleProvider({ children, id, setId, meta, setMetaState }) {
76
- return /* @__PURE__ */ React2.createElement(Context.Provider, { value: { id, setId, meta, setMetaState } }, children);
77
- }
78
- function useStyle() {
79
- const context = (0, import_react2.useContext)(Context);
80
- if (!context) {
81
- throw new Error("useStyle must be used within a StyleProvider");
82
- }
83
- return context;
84
- }
85
-
86
- // src/components/css-class-menu.tsx
87
- var { useMenuItems: useStateMenuItems, registerStateMenuItem } = (0, import_menus.createMenu)({
88
- components: {
89
- StateMenuItem
90
- }
91
- });
92
- var { useMenuItems: useGlobalClassMenuItems, registerGlobalClassMenuItem } = (0, import_menus.createMenu)({
93
- components: {
94
- GlobalClassMenuItem
95
- }
96
- });
97
- function CssClassMenu({
98
- popupState,
99
- containerRef
100
- }) {
101
- const { isGlobal } = useCssClassItem();
102
- const { default: globalClassMenuItems } = useGlobalClassMenuItems();
103
- const { default: stateMenuItems } = useStateMenuItems();
104
- return /* @__PURE__ */ React3.createElement(
105
- import_ui.Menu,
106
- {
107
- MenuListProps: { dense: true },
108
- ...(0, import_ui.bindMenu)(popupState),
109
- anchorOrigin: {
110
- vertical: "top",
111
- horizontal: "right"
112
- },
113
- anchorEl: containerRef.current
114
- },
115
- isGlobal && /* @__PURE__ */ React3.createElement(GlobalClassMenuSection, null, globalClassMenuItems.map(({ id, MenuItem: MenuItemComponent }) => /* @__PURE__ */ React3.createElement(MenuItemComponent, { key: id }))),
116
- /* @__PURE__ */ React3.createElement(import_ui.ListSubheader, null, (0, import_i18n.__)("Add a pseudo selector", "elementor")),
117
- stateMenuItems.map(({ id, MenuItem: MenuItemComponent }) => /* @__PURE__ */ React3.createElement(MenuItemComponent, { key: id }))
118
- );
119
- }
120
- function StateMenuItem({ state, disabled }) {
121
- const { isActive, styleId } = useCssClassItem();
122
- const { setId: setActiveId, setMetaState: setActiveMetaState, meta } = useStyle();
123
- const { state: activeState } = meta;
124
- const isSelected = state === activeState && isActive;
125
- return /* @__PURE__ */ React3.createElement(
126
- StyledMenuItem,
127
- {
128
- selected: state === activeState && isActive,
129
- disabled,
130
- onClick: () => {
131
- if (!isActive) {
132
- setActiveId(styleId);
133
- }
134
- setActiveMetaState(state);
135
- }
136
- },
137
- isSelected && /* @__PURE__ */ React3.createElement(import_ui.ListItemIcon, null, /* @__PURE__ */ React3.createElement(import_icons.CheckIcon, null)),
138
- /* @__PURE__ */ React3.createElement(import_ui.ListItemText, { primary: state ? `:${state}` : "Normal" })
139
- );
140
- }
141
- function GlobalClassMenuItem({ text, onClick }) {
142
- return /* @__PURE__ */ React3.createElement(StyledMenuItem, { onClick }, /* @__PURE__ */ React3.createElement(import_ui.ListItemText, { primary: text }));
143
- }
144
- var GlobalClassMenuSection = (0, import_ui.styled)(import_ui.Box)(({ theme }) => ({
145
- borderBottom: `1px solid ${theme?.palette.divider}`
146
- }));
147
- var StyledMenuItem = (0, import_ui.styled)(import_ui.MenuItem)({
148
- "&:hover": {
149
- color: "text.primary"
150
- // Overriding global CSS from the editor.
151
- }
152
- });
153
-
154
- // src/init.ts
155
- var import_editor = require("@elementor/editor");
156
- var import_editor_panels3 = require("@elementor/editor-panels");
157
- var import_editor_v1_adapters4 = require("@elementor/editor-v1-adapters");
158
-
159
- // src/hooks/use-close-editor-panel.ts
160
- var import_react17 = require("react");
161
- var import_editor_elements8 = require("@elementor/editor-elements");
162
- var import_editor_v1_adapters2 = require("@elementor/editor-v1-adapters");
163
-
164
- // src/panel.ts
165
- var import_editor_panels2 = require("@elementor/editor-panels");
166
-
167
- // src/components/editing-panel.tsx
168
- var React62 = __toESM(require("react"));
169
- var import_editor_controls41 = require("@elementor/editor-controls");
170
- var import_editor_elements6 = require("@elementor/editor-elements");
171
- var import_editor_panels = require("@elementor/editor-panels");
172
- var import_session3 = require("@elementor/session");
173
- var import_ui51 = require("@elementor/ui");
174
- var import_i18n40 = require("@wordpress/i18n");
175
-
176
- // src/contexts/element-context.tsx
177
- var React4 = __toESM(require("react"));
178
- var import_react3 = require("react");
179
- var Context2 = (0, import_react3.createContext)(null);
76
+ var Context2 = (0, import_react2.createContext)(null);
180
77
  function ElementProvider({ children, element, elementType }) {
181
- return /* @__PURE__ */ React4.createElement(Context2.Provider, { value: { element, elementType } }, children);
78
+ return /* @__PURE__ */ React2.createElement(Context2.Provider, { value: { element, elementType } }, children);
182
79
  }
183
80
  function useElement() {
184
- const context = (0, import_react3.useContext)(Context2);
81
+ const context = (0, import_react2.useContext)(Context2);
185
82
  if (!context) {
186
83
  throw new Error("useElement must be used within a ElementProvider");
187
84
  }
188
85
  return context;
189
86
  }
190
87
 
191
- // src/controls-actions.ts
192
- var import_menus2 = require("@elementor/menus");
193
-
194
- // src/popover-action.tsx
195
- var React5 = __toESM(require("react"));
196
- var import_react4 = require("react");
197
- var import_icons2 = require("@elementor/icons");
198
- var import_ui2 = require("@elementor/ui");
199
- var SIZE = "tiny";
200
- function PopoverAction({
201
- title,
202
- visible = true,
203
- icon: Icon,
204
- popoverContent: PopoverContent
205
- }) {
206
- const id = (0, import_react4.useId)();
207
- const popupState = (0, import_ui2.usePopupState)({
208
- variant: "popover",
209
- popupId: `elementor-popover-action-${id}`
210
- });
211
- if (!visible) {
212
- return null;
213
- }
214
- return /* @__PURE__ */ React5.createElement(React5.Fragment, null, /* @__PURE__ */ React5.createElement(import_ui2.Tooltip, { placement: "top", title }, /* @__PURE__ */ React5.createElement(import_ui2.IconButton, { "aria-label": title, key: id, size: SIZE, ...(0, import_ui2.bindToggle)(popupState) }, /* @__PURE__ */ React5.createElement(Icon, { fontSize: SIZE }))), /* @__PURE__ */ React5.createElement(
215
- import_ui2.Popover,
216
- {
217
- disablePortal: true,
218
- disableScrollLock: true,
219
- anchorOrigin: {
220
- vertical: "bottom",
221
- horizontal: "center"
222
- },
223
- ...(0, import_ui2.bindPopover)(popupState)
224
- },
225
- /* @__PURE__ */ React5.createElement(import_ui2.Stack, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React5.createElement(Icon, { fontSize: SIZE, sx: { mr: 0.5 } }), /* @__PURE__ */ React5.createElement(import_ui2.Typography, { variant: "subtitle2" }, title), /* @__PURE__ */ React5.createElement(import_ui2.IconButton, { sx: { ml: "auto" }, size: SIZE, onClick: popupState.close }, /* @__PURE__ */ React5.createElement(import_icons2.XIcon, { fontSize: SIZE }))),
226
- /* @__PURE__ */ React5.createElement(PopoverContent, { closePopover: popupState.close })
227
- ));
228
- }
229
-
230
- // src/controls-actions.ts
231
- var controlActionsMenu = (0, import_menus2.createMenu)({
232
- components: {
233
- PopoverAction
234
- }
235
- });
236
-
237
- // src/components/editing-panel-error-fallback.tsx
238
- var React6 = __toESM(require("react"));
239
- var import_ui3 = require("@elementor/ui");
240
- function EditorPanelErrorFallback() {
241
- return /* @__PURE__ */ React6.createElement(import_ui3.Box, { role: "alert", sx: { minHeight: "100%", p: 2 } }, /* @__PURE__ */ React6.createElement(import_ui3.Alert, { severity: "error", sx: { mb: 2, maxWidth: 400, textAlign: "center" } }, /* @__PURE__ */ React6.createElement("strong", null, "Something went wrong")));
242
- }
243
-
244
- // src/components/editing-panel-tabs.tsx
245
- var React61 = __toESM(require("react"));
246
- var import_react16 = require("react");
247
- var import_ui50 = require("@elementor/ui");
248
- var import_i18n39 = require("@wordpress/i18n");
249
-
250
- // src/components/settings-tab.tsx
251
- var React12 = __toESM(require("react"));
252
- var import_editor_controls4 = require("@elementor/editor-controls");
253
- var import_session = require("@elementor/session");
88
+ // src/contexts/style-context.tsx
89
+ var React3 = __toESM(require("react"));
90
+ var import_react3 = require("react");
91
+ var import_editor_styles_repository = require("@elementor/editor-styles-repository");
254
92
 
255
- // src/controls-registry/control.tsx
256
- var React7 = __toESM(require("react"));
93
+ // src/errors.ts
257
94
  var import_utils = require("@elementor/utils");
258
-
259
- // src/controls-registry/controls-registry.tsx
260
- var import_editor_controls2 = require("@elementor/editor-controls");
261
- var controlTypes = {
262
- image: { component: import_editor_controls2.ImageControl, layout: "full" },
263
- text: { component: import_editor_controls2.TextControl, layout: "two-columns" },
264
- textarea: { component: import_editor_controls2.TextAreaControl, layout: "full" },
265
- size: { component: import_editor_controls2.SizeControl, layout: "two-columns" },
266
- select: { component: import_editor_controls2.SelectControl, layout: "two-columns" },
267
- link: { component: import_editor_controls2.LinkControl, layout: "full" },
268
- url: { component: import_editor_controls2.UrlControl, layout: "full" }
269
- };
270
- var getControlByType = (type) => controlTypes[type]?.component;
271
- var getLayoutByType = (type) => controlTypes[type].layout;
272
-
273
- // src/controls-registry/control.tsx
274
- var ControlTypeError = (0, import_utils.createError)({
275
- code: "CONTROL_TYPE_NOT_FOUND",
276
- message: `Control type not found.`
95
+ var ControlTypeNotFoundError = (0, import_utils.createError)({
96
+ code: "control_type_not_found",
97
+ message: "Control type not found."
277
98
  });
278
- var Control = ({ props, type }) => {
279
- const ControlByType = getControlByType(type);
280
- if (!ControlByType) {
281
- throw new ControlTypeError({
282
- context: { type }
283
- });
284
- }
285
- return /* @__PURE__ */ React7.createElement(ControlByType, { ...props });
286
- };
287
-
288
- // src/controls-registry/control-type-container.tsx
289
- var React8 = __toESM(require("react"));
290
- var import_ui4 = require("@elementor/ui");
291
- var ControlTypeContainer = ({
292
- controlType,
293
- children
294
- }) => {
295
- const layout = getLayoutByType(controlType);
296
- return /* @__PURE__ */ React8.createElement(StyledContainer, { layout }, children);
297
- };
298
- var StyledContainer = (0, import_ui4.styled)(import_ui4.Box, {
299
- shouldForwardProp: (prop) => !["layout"].includes(prop)
300
- })(({ layout, theme }) => ({
301
- display: "grid",
302
- gridGap: theme.spacing(1),
303
- ...getGridLayout(layout)
304
- }));
305
- var getGridLayout = (layout) => ({
306
- justifyContent: "space-between",
307
- gridTemplateColumns: {
308
- full: "1fr",
309
- "two-columns": "repeat(2, 1fr)"
310
- }[layout]
99
+ var StylesProviderNotFoundError = (0, import_utils.createError)({
100
+ code: "provider_not_found",
101
+ message: "Styles provider not found."
102
+ });
103
+ var StylesProviderCannotUpdatePropsError = (0, import_utils.createError)({
104
+ code: "provider_cannot_update_props",
105
+ message: "Styles provider doesn't support updating props."
106
+ });
107
+ var StyleNotFoundUnderProviderError = (0, import_utils.createError)({
108
+ code: "style_not_found_under_provider",
109
+ message: "Style not found under the provider."
311
110
  });
312
111
 
313
- // src/controls-registry/settings-field.tsx
314
- var React9 = __toESM(require("react"));
315
- var import_editor_controls3 = require("@elementor/editor-controls");
316
- var import_editor_elements = require("@elementor/editor-elements");
317
-
318
- // src/controls-registry/create-top-level-object-type.ts
319
- var createTopLevelOjectType = ({ schema }) => {
320
- const schemaPropType = {
321
- key: "",
322
- kind: "object",
323
- meta: {},
324
- settings: {},
325
- default: null,
326
- shape: schema
327
- };
328
- return schemaPropType;
329
- };
330
-
331
- // src/controls-registry/settings-field.tsx
332
- var SettingsField = ({ bind, children }) => {
333
- const { element, elementType } = useElement();
334
- const settingsValue = (0, import_editor_elements.useElementSetting)(element.id, bind);
335
- const value = { [bind]: settingsValue };
336
- const propType = createTopLevelOjectType({ schema: elementType.propsSchema });
337
- const setValue = (newValue) => {
338
- (0, import_editor_elements.updateSettings)({
339
- id: element.id,
340
- props: { ...newValue }
341
- });
342
- };
343
- return /* @__PURE__ */ React9.createElement(import_editor_controls3.PropProvider, { propType, value, setValue }, /* @__PURE__ */ React9.createElement(import_editor_controls3.PropKeyProvider, { bind }, children));
344
- };
345
-
346
- // src/components/section.tsx
347
- var React10 = __toESM(require("react"));
348
- var import_react5 = require("react");
349
- var import_ui6 = require("@elementor/ui");
350
-
351
- // src/components/collapse-icon.tsx
352
- var import_icons3 = require("@elementor/icons");
353
- var import_ui5 = require("@elementor/ui");
354
- var CollapseIcon = (0, import_ui5.styled)(import_icons3.ChevronDownIcon, {
355
- shouldForwardProp: (prop) => prop !== "open"
356
- })(({ theme, open }) => ({
357
- transform: open ? "rotate(180deg)" : "rotate(0deg)",
358
- transition: theme.transitions.create("transform", {
359
- duration: theme.transitions.duration.standard
360
- })
361
- }));
362
-
363
- // src/components/section.tsx
364
- function Section({ title, children, defaultExpanded = false }) {
365
- const [isOpen, setIsOpen] = (0, import_react5.useState)(!!defaultExpanded);
366
- const id = (0, import_react5.useId)();
367
- const labelId = `label-${id}`;
368
- const contentId = `content-${id}`;
369
- return /* @__PURE__ */ React10.createElement(React10.Fragment, null, /* @__PURE__ */ React10.createElement(
370
- import_ui6.ListItemButton,
371
- {
372
- id: labelId,
373
- "aria-controls": contentId,
374
- onClick: () => setIsOpen((prev) => !prev)
375
- },
376
- /* @__PURE__ */ React10.createElement(import_ui6.ListItemText, { secondary: title }),
377
- /* @__PURE__ */ React10.createElement(CollapseIcon, { open: isOpen, color: "secondary" })
378
- ), /* @__PURE__ */ React10.createElement(import_ui6.Collapse, { id: contentId, "aria-labelledby": labelId, in: isOpen, timeout: "auto", unmountOnExit: true }, /* @__PURE__ */ React10.createElement(import_ui6.Stack, { gap: 2.5, p: 2 }, children)), /* @__PURE__ */ React10.createElement(import_ui6.Divider, null));
379
- }
380
-
381
- // src/components/sections-list.tsx
382
- var React11 = __toESM(require("react"));
383
- var import_ui7 = require("@elementor/ui");
384
- function SectionsList(props) {
385
- return /* @__PURE__ */ React11.createElement(import_ui7.List, { disablePadding: true, component: "div", ...props });
386
- }
387
-
388
- // src/components/settings-tab.tsx
389
- var SettingsTab = () => {
390
- const { elementType, element } = useElement();
391
- return /* @__PURE__ */ React12.createElement(import_session.SessionStorageProvider, { prefix: element.id }, /* @__PURE__ */ React12.createElement(SectionsList, null, elementType.controls.map(({ type, value }, index) => {
392
- if (type === "control") {
393
- return /* @__PURE__ */ React12.createElement(Control2, { key: value.bind, control: value });
394
- }
395
- if (type === "section") {
396
- return /* @__PURE__ */ React12.createElement(Section, { title: value.label, key: type + "." + index, defaultExpanded: true }, value.items?.map((item) => {
397
- if (item.type === "control") {
398
- return /* @__PURE__ */ React12.createElement(Control2, { key: item.value.bind, control: item.value });
399
- }
400
- return null;
401
- }));
402
- }
403
- return null;
404
- })));
405
- };
406
- var Control2 = ({ control }) => {
407
- if (!getControlByType(control.type)) {
408
- return null;
112
+ // src/contexts/style-context.tsx
113
+ var Context3 = (0, import_react3.createContext)(null);
114
+ function StyleProvider({ children, ...props }) {
115
+ const provider = props.id === null ? null : getProviderByStyleId(props.id);
116
+ if (props.id && !provider) {
117
+ throw new StylesProviderNotFoundError({ context: { styleId: props.id } });
409
118
  }
410
- return /* @__PURE__ */ React12.createElement(SettingsField, { bind: control.bind }, /* @__PURE__ */ React12.createElement(ControlTypeContainer, { controlType: control.type }, control.label ? /* @__PURE__ */ React12.createElement(import_editor_controls4.ControlLabel, null, control.label) : null, /* @__PURE__ */ React12.createElement(Control, { type: control.type, props: control.props })));
411
- };
412
-
413
- // src/components/style-tab.tsx
414
- var React60 = __toESM(require("react"));
415
- var import_react15 = require("react");
416
- var import_editor_elements5 = require("@elementor/editor-elements");
417
- var import_editor_responsive = require("@elementor/editor-responsive");
418
- var import_session2 = require("@elementor/session");
419
- var import_ui49 = require("@elementor/ui");
420
- var import_i18n38 = require("@wordpress/i18n");
421
-
422
- // src/contexts/classes-prop-context.tsx
423
- var React13 = __toESM(require("react"));
424
- var import_react6 = require("react");
425
- var Context3 = (0, import_react6.createContext)(null);
426
- function ClassesPropProvider({ children, prop }) {
427
- return /* @__PURE__ */ React13.createElement(Context3.Provider, { value: { prop } }, children);
119
+ return /* @__PURE__ */ React3.createElement(Context3.Provider, { value: { ...props, provider } }, children);
428
120
  }
429
- function useClassesProp() {
430
- const context = (0, import_react6.useContext)(Context3);
121
+ function useStyle() {
122
+ const context = (0, import_react3.useContext)(Context3);
431
123
  if (!context) {
432
- throw new Error("useClassesProp must be used within a ClassesPropProvider");
124
+ throw new Error("useStyle must be used within a StyleProvider");
433
125
  }
434
- return context.prop;
126
+ return context;
127
+ }
128
+ function getProviderByStyleId(styleId) {
129
+ const styleProvider = import_editor_styles_repository.stylesRepository.getProviders().find((provider) => {
130
+ return provider.actions.get().find((style) => style.id === styleId);
131
+ });
132
+ return styleProvider ?? null;
435
133
  }
436
134
 
437
- // src/components/css-class-selector.tsx
438
- var React17 = __toESM(require("react"));
439
- var import_react10 = require("react");
440
- var import_editor_elements2 = require("@elementor/editor-elements");
441
- var import_editor_props = require("@elementor/editor-props");
442
- var import_editor_styles_repository = require("@elementor/editor-styles-repository");
443
- var import_icons4 = require("@elementor/icons");
444
- var import_ui11 = require("@elementor/ui");
445
- var import_i18n2 = require("@wordpress/i18n");
135
+ // src/components/css-class-menu.tsx
136
+ var React4 = __toESM(require("react"));
137
+ var import_icons = require("@elementor/icons");
138
+ var import_ui = require("@elementor/ui");
139
+ var import_i18n = require("@wordpress/i18n");
446
140
 
447
- // src/components/conditional-tooltip-wrapper.tsx
448
- var import_react7 = require("react");
449
- var React14 = __toESM(require("react"));
450
- var import_ui8 = require("@elementor/ui");
451
- var ConditionalTooltipWrapper = ({ maxWidth, title }) => {
452
- const elRef = (0, import_react7.useRef)(null);
453
- const [isOverflown, setIsOverflown] = (0, import_react7.useState)(false);
454
- (0, import_react7.useEffect)(() => {
455
- const onResize = () => {
456
- const element = elRef.current;
457
- if (element) {
458
- setIsOverflown(element.scrollWidth > element.clientWidth);
141
+ // src/hooks/use-unapply-class.ts
142
+ var import_editor_elements = require("@elementor/editor-elements");
143
+ var useUnapplyClass = (classId) => {
144
+ const { element } = useElement();
145
+ const { setId: setStyleId } = useStyle();
146
+ const classesProp = useClassesProp();
147
+ const classes = (0, import_editor_elements.useElementSetting)(element.id, classesProp);
148
+ const filteredClasses = classes?.value.filter((className) => className !== classId) ?? [];
149
+ return () => {
150
+ (0, import_editor_elements.updateElementSettings)({
151
+ id: element.id,
152
+ props: {
153
+ [classesProp]: {
154
+ $$type: "classes",
155
+ value: filteredClasses
156
+ }
459
157
  }
460
- };
461
- onResize();
462
- window.addEventListener("resize", onResize);
463
- return () => {
464
- window.removeEventListener("resize", onResize);
465
- };
466
- }, []);
467
- if (isOverflown) {
468
- return /* @__PURE__ */ React14.createElement(import_ui8.Tooltip, { title, placement: "top" }, /* @__PURE__ */ React14.createElement(Content, { maxWidth, ref: elRef }, title));
469
- }
470
- return /* @__PURE__ */ React14.createElement(Content, { maxWidth, ref: elRef }, title);
158
+ });
159
+ setStyleId(null);
160
+ };
471
161
  };
472
- var Content = React14.forwardRef(({ maxWidth, ...tooltipProps }, ref) => /* @__PURE__ */ React14.createElement(
473
- import_ui8.Box,
474
- {
475
- ref,
476
- position: "relative",
477
- sx: { overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap", maxWidth },
478
- ...tooltipProps
162
+
163
+ // src/components/css-class-menu.tsx
164
+ var STATES = ["hover", "focus", "active"];
165
+ function CssClassMenu({ styleId, isFixed = false, popupState }) {
166
+ const handleKeyDown = (e) => {
167
+ e.stopPropagation();
168
+ };
169
+ return /* @__PURE__ */ React4.createElement(
170
+ import_ui.Menu,
171
+ {
172
+ MenuListProps: { dense: true },
173
+ ...(0, import_ui.bindMenu)(popupState),
174
+ anchorOrigin: {
175
+ vertical: "top",
176
+ horizontal: "right"
177
+ },
178
+ onKeyDown: handleKeyDown
179
+ },
180
+ !isFixed && [
181
+ /* @__PURE__ */ React4.createElement(UnapplyClassMenuItem, { key: "unapply-class", styleId }),
182
+ /* @__PURE__ */ React4.createElement(import_ui.Divider, { key: "global-class-items-divider" })
183
+ ],
184
+ /* @__PURE__ */ React4.createElement(import_ui.ListSubheader, null, (0, import_i18n.__)("Add a pseudo selector", "elementor")),
185
+ /* @__PURE__ */ React4.createElement(StateMenuItem, { key: "normal", state: null, styleId }),
186
+ STATES.map((state) => {
187
+ return /* @__PURE__ */ React4.createElement(StateMenuItem, { key: state, state, styleId });
188
+ })
189
+ );
190
+ }
191
+ function StateMenuItem({ state, styleId, ...props }) {
192
+ const { id: activeId, setId: setActiveId, setMetaState: setActiveMetaState, meta } = useStyle();
193
+ const { state: activeState } = meta;
194
+ const isActive = styleId === activeId;
195
+ const isSelected = state === activeState && isActive;
196
+ return /* @__PURE__ */ React4.createElement(
197
+ StyledMenuItem,
198
+ {
199
+ ...props,
200
+ selected: isSelected,
201
+ onClick: () => {
202
+ if (!isActive) {
203
+ setActiveId(styleId);
204
+ }
205
+ setActiveMetaState(state);
206
+ }
207
+ },
208
+ isSelected && /* @__PURE__ */ React4.createElement(import_ui.ListItemIcon, null, /* @__PURE__ */ React4.createElement(import_icons.CheckIcon, null)),
209
+ /* @__PURE__ */ React4.createElement(import_ui.ListItemText, { primary: state ? `:${state}` : "Normal" })
210
+ );
211
+ }
212
+ function UnapplyClassMenuItem({ styleId, ...props }) {
213
+ const unapplyClass = useUnapplyClass(styleId);
214
+ return /* @__PURE__ */ React4.createElement(StyledMenuItem, { ...props, onClick: unapplyClass }, /* @__PURE__ */ React4.createElement(import_ui.ListItemText, { primary: "Remove" }));
215
+ }
216
+ var StyledMenuItem = (0, import_ui.styled)(import_ui.MenuItem)({
217
+ "&:hover": {
218
+ color: "text.primary"
219
+ // Overriding global CSS from the editor.
479
220
  }
480
- ));
221
+ });
481
222
 
482
223
  // src/components/editable-field.tsx
483
- var React15 = __toESM(require("react"));
484
- var import_react8 = require("react");
485
- var import_ui9 = require("@elementor/ui");
486
- var Context4 = (0, import_react8.createContext)(null);
224
+ var React5 = __toESM(require("react"));
225
+ var import_react4 = require("react");
226
+ var import_ui2 = require("@elementor/ui");
227
+ var Context4 = (0, import_react4.createContext)(null);
487
228
  var EditableFieldProvider = ({
488
229
  children,
489
230
  value,
@@ -491,9 +232,9 @@ var EditableFieldProvider = ({
491
232
  validation,
492
233
  editable
493
234
  }) => {
494
- const [isEditing, setIsEditing] = (0, import_react8.useState)(false);
495
- const [submitting, setSubmitting] = (0, import_react8.useState)(false);
496
- const [error, setError] = (0, import_react8.useState)(null);
235
+ const [isEditing, setIsEditing] = (0, import_react4.useState)(false);
236
+ const [submitting, setSubmitting] = (0, import_react4.useState)(false);
237
+ const [error, setError] = (0, import_react4.useState)(null);
497
238
  const openEditMode = () => {
498
239
  setIsEditing(true);
499
240
  };
@@ -518,7 +259,7 @@ var EditableFieldProvider = ({
518
259
  setError(validation(newValue));
519
260
  }
520
261
  };
521
- return /* @__PURE__ */ React15.createElement(
262
+ return /* @__PURE__ */ React5.createElement(
522
263
  Context4.Provider,
523
264
  {
524
265
  value: {
@@ -536,10 +277,10 @@ var EditableFieldProvider = ({
536
277
  children
537
278
  );
538
279
  };
539
- var EditableField = ({ children, ...props }) => {
540
- const ref = (0, import_react8.useRef)(null);
280
+ var EditableField = ({ children, onClick, ...props }) => {
281
+ const ref = (0, import_react4.useRef)(null);
541
282
  const { isEditing, closeEditMode, value, onChange, error, submit, editable } = useEditableField();
542
- (0, import_react8.useEffect)(() => {
283
+ (0, import_react4.useEffect)(() => {
543
284
  if (isEditing) {
544
285
  ref.current?.focus();
545
286
  selectAll();
@@ -555,6 +296,12 @@ var EditableField = ({ children, ...props }) => {
555
296
  return submit(event.target.innerText);
556
297
  }
557
298
  };
299
+ const handleClick = (event) => {
300
+ if (isEditing) {
301
+ event.stopPropagation();
302
+ }
303
+ onClick?.(event);
304
+ };
558
305
  const selectAll = () => {
559
306
  const selection = getSelection();
560
307
  if (!selection || !ref.current) {
@@ -568,7 +315,7 @@ var EditableField = ({ children, ...props }) => {
568
315
  if (!editable) {
569
316
  return children;
570
317
  }
571
- return /* @__PURE__ */ React15.createElement(import_ui9.Tooltip, { open: !!error, title: error, placement: "top" }, /* @__PURE__ */ React15.createElement("div", { onKeyDown: handleKeyDown, ...props }, /* @__PURE__ */ React15.createElement(
318
+ return /* @__PURE__ */ React5.createElement(import_ui2.Tooltip, { open: !!error, title: error, placement: "top" }, /* @__PURE__ */ React5.createElement("div", { onKeyDown: handleKeyDown, onClick: handleClick, ...props }, /* @__PURE__ */ React5.createElement(
572
319
  "span",
573
320
  {
574
321
  ref,
@@ -582,7 +329,7 @@ var EditableField = ({ children, ...props }) => {
582
329
  )));
583
330
  };
584
331
  var useEditableField = () => {
585
- const contextValue = (0, import_react8.useContext)(Context4);
332
+ const contextValue = (0, import_react4.useContext)(Context4);
586
333
  if (!contextValue) {
587
334
  throw new Error("useEditableField must be used within a EditableFieldProvider");
588
335
  }
@@ -590,9 +337,9 @@ var useEditableField = () => {
590
337
  };
591
338
 
592
339
  // src/components/multi-combobox.tsx
593
- var React16 = __toESM(require("react"));
594
- var import_react9 = require("react");
595
- var import_ui10 = require("@elementor/ui");
340
+ var React6 = __toESM(require("react"));
341
+ var import_react5 = require("react");
342
+ var import_ui3 = require("@elementor/ui");
596
343
  function MultiCombobox({
597
344
  actions = [],
598
345
  selected,
@@ -602,8 +349,8 @@ function MultiCombobox({
602
349
  }) {
603
350
  const filter = useFilterOptions();
604
351
  const { run, loading } = useActionRunner();
605
- return /* @__PURE__ */ React16.createElement(
606
- import_ui10.Autocomplete,
352
+ return /* @__PURE__ */ React6.createElement(
353
+ import_ui3.Autocomplete,
607
354
  {
608
355
  ...props,
609
356
  freeSolo: true,
@@ -615,8 +362,8 @@ function MultiCombobox({
615
362
  disabled: loading,
616
363
  value: selected,
617
364
  options: options10,
618
- renderGroup: (params) => /* @__PURE__ */ React16.createElement(Group, { ...params }),
619
- renderInput: (params) => /* @__PURE__ */ React16.createElement(import_ui10.TextField, { ...params }),
365
+ renderGroup: (params) => /* @__PURE__ */ React6.createElement(Group, { ...params }),
366
+ renderInput: (params) => /* @__PURE__ */ React6.createElement(import_ui3.TextField, { ...params }),
620
367
  onChange: (_, selectedOrInputValue, reason) => {
621
368
  const inputValue = selectedOrInputValue.find((option) => typeof option === "string");
622
369
  const optionsAndActions = selectedOrInputValue.filter((option) => typeof option !== "string");
@@ -655,28 +402,28 @@ function MultiCombobox({
655
402
  );
656
403
  }
657
404
  var Group = (params) => {
658
- const id = `combobox-group-${(0, import_react9.useId)().replace(/:/g, "_")}`;
659
- return /* @__PURE__ */ React16.createElement(StyledGroup, { role: "group", "aria-labelledby": id }, /* @__PURE__ */ React16.createElement(StyledGroupHeader, { id }, " ", params.group), /* @__PURE__ */ React16.createElement(StyledGroupItems, { role: "listbox" }, params.children));
405
+ const id = `combobox-group-${(0, import_react5.useId)().replace(/:/g, "_")}`;
406
+ return /* @__PURE__ */ React6.createElement(StyledGroup, { role: "group", "aria-labelledby": id }, /* @__PURE__ */ React6.createElement(StyledGroupHeader, { id }, " ", params.group), /* @__PURE__ */ React6.createElement(StyledGroupItems, { role: "listbox" }, params.children));
660
407
  };
661
- var StyledGroup = (0, import_ui10.styled)("li")`
408
+ var StyledGroup = (0, import_ui3.styled)("li")`
662
409
  &:not( :last-of-type ) {
663
410
  border-bottom: 1px solid ${({ theme }) => theme.palette.divider};
664
411
  }
665
412
  `;
666
- var StyledGroupHeader = (0, import_ui10.styled)(import_ui10.Box)(({ theme }) => ({
413
+ var StyledGroupHeader = (0, import_ui3.styled)(import_ui3.Box)(({ theme }) => ({
667
414
  position: "sticky",
668
415
  top: "-8px",
669
416
  padding: theme.spacing(1, 2),
670
417
  color: theme.palette.text.tertiary
671
418
  }));
672
- var StyledGroupItems = (0, import_ui10.styled)("ul")`
419
+ var StyledGroupItems = (0, import_ui3.styled)("ul")`
673
420
  padding: 0;
674
421
  `;
675
422
  function useFilterOptions() {
676
- return (0, import_react9.useState)(() => (0, import_ui10.createFilterOptions)())[0];
423
+ return (0, import_react5.useState)(() => (0, import_ui3.createFilterOptions)())[0];
677
424
  }
678
425
  function useActionRunner() {
679
- const [loading, setLoading] = (0, import_react9.useState)(false);
426
+ const [loading, setLoading] = (0, import_react5.useState)(false);
680
427
  const run = async (apply, value) => {
681
428
  setLoading(true);
682
429
  try {
@@ -709,18 +456,18 @@ var EMPTY_OPTION = {
709
456
  value: "",
710
457
  fixed: true,
711
458
  color: "primary",
712
- provider: import_editor_styles_repository.ELEMENTS_STYLES_PROVIDER_KEY
459
+ provider: import_editor_styles_repository2.ELEMENTS_STYLES_PROVIDER_KEY
713
460
  };
461
+ var { Slot: ClassSelectorActionsSlot, inject: injectIntoClassSelectorActions } = (0, import_locations.createLocation)();
714
462
  function CssClassSelector() {
715
463
  const options10 = useOptions();
716
464
  const { value: appliedIds, setValue: setAppliedIds, pushValue: pushAppliedId } = useAppliedClassesIds();
717
465
  const { id: activeId, setId: setActiveId } = useStyle();
718
466
  const actions = useCreateActions({ pushAppliedId, setActiveId });
719
467
  const handleApply = useHandleApply(appliedIds, setAppliedIds);
720
- const handleActivate = ({ value }) => setActiveId(value);
721
468
  const applied = useAppliedOptions(options10, appliedIds);
722
469
  const active = applied.find((option) => option.value === activeId) ?? EMPTY_OPTION;
723
- return /* @__PURE__ */ React17.createElement(import_ui11.Stack, { gap: 1, p: 2 }, /* @__PURE__ */ React17.createElement(import_ui11.Typography, { component: "label", variant: "caption", htmlFor: ID }, (0, import_i18n2.__)("CSS Classes", "elementor")), /* @__PURE__ */ React17.createElement(
470
+ return /* @__PURE__ */ React7.createElement(import_ui4.Stack, { gap: 1, p: 2 }, /* @__PURE__ */ React7.createElement(import_ui4.Stack, { direction: "row", gap: 1, alignItems: "center", justifyContent: "space-between" }, /* @__PURE__ */ React7.createElement(import_ui4.Typography, { component: "label", variant: "caption", htmlFor: ID }, (0, import_i18n2.__)("CSS Classes", "elementor")), /* @__PURE__ */ React7.createElement(import_ui4.Stack, { direction: "row", gap: 1 }, /* @__PURE__ */ React7.createElement(ClassSelectorActionsSlot, null))), /* @__PURE__ */ React7.createElement(
724
471
  MultiCombobox,
725
472
  {
726
473
  id: ID,
@@ -730,35 +477,36 @@ function CssClassSelector() {
730
477
  onSelect: handleApply,
731
478
  limitTags: TAGS_LIMIT,
732
479
  actions,
733
- getLimitTagsText: (more) => /* @__PURE__ */ React17.createElement(import_ui11.Chip, { size: "tiny", variant: "standard", label: `+${more}`, clickable: true }),
480
+ getLimitTagsText: (more) => /* @__PURE__ */ React7.createElement(import_ui4.Chip, { size: "tiny", variant: "standard", label: `+${more}`, clickable: true }),
734
481
  renderTags: (values, getTagProps) => values.map((value, index) => {
735
482
  const chipProps = getTagProps({ index });
736
483
  const isActive = value.value === active?.value;
484
+ const isElementsProvider = value.provider === import_editor_styles_repository2.ELEMENTS_STYLES_PROVIDER_KEY;
737
485
  const renameLabel = (newLabel) => {
738
486
  return updateClassByProvider(value.provider, { label: newLabel, id: value.value });
739
487
  };
740
- return /* @__PURE__ */ React17.createElement(
488
+ return /* @__PURE__ */ React7.createElement(
741
489
  EditableFieldProvider,
742
490
  {
743
491
  key: chipProps.key,
744
492
  value: value.label,
745
493
  onSubmit: renameLabel,
746
- editable: value.provider !== import_editor_styles_repository.ELEMENTS_STYLES_PROVIDER_KEY,
494
+ editable: !value.fixed,
747
495
  validation: (newLabel) => renameValidation(
748
496
  newLabel,
749
497
  options10.filter((option) => option.value !== value.value)
750
498
  )
751
499
  },
752
- /* @__PURE__ */ React17.createElement(
500
+ /* @__PURE__ */ React7.createElement(
753
501
  CssClassItem,
754
502
  {
755
503
  label: value.label,
756
504
  id: value.value,
757
505
  isActive,
758
- isGlobal: value.color === "global",
506
+ isFixed: value.fixed,
759
507
  color: isActive && value.color ? value.color : "default",
760
508
  chipProps,
761
- onClickActive: () => handleActivate(value)
509
+ onClickActive: () => setActiveId(isElementsProvider ? null : value.value)
762
510
  }
763
511
  )
764
512
  );
@@ -771,24 +519,24 @@ function CssClassItem({
771
519
  id,
772
520
  label,
773
521
  isActive,
774
- isGlobal,
522
+ isFixed = false,
775
523
  color: colorProp,
776
524
  chipProps,
777
525
  onClickActive
778
526
  }) {
779
527
  const { meta } = useStyle();
780
- const popupId = (0, import_react10.useId)().replace(/:/g, "_");
781
- const popupState = (0, import_ui11.usePopupState)({ variant: "popover", popupId });
782
- const chipRef = (0, import_react10.useRef)(null);
528
+ const popupId = (0, import_react6.useId)().replace(/:/g, "_");
529
+ const popupState = (0, import_ui4.usePopupState)({ variant: "popover", popupId });
530
+ const chipRef = (0, import_react6.useRef)(null);
783
531
  const { onDelete, ...chipGroupProps } = chipProps;
784
532
  const { isEditing, openEditMode, error, submitting } = useEditableField();
785
533
  const color = error ? "error" : colorProp;
786
- return /* @__PURE__ */ React17.createElement(CssClassItemProvider, { styleId: id, isActive, isGlobal }, /* @__PURE__ */ React17.createElement(import_ui11.UnstableChipGroup, { ref: chipRef, ...chipGroupProps, "aria-label": `Edit ${label}`, role: "group" }, /* @__PURE__ */ React17.createElement(
787
- import_ui11.Chip,
534
+ return /* @__PURE__ */ React7.createElement(React7.Fragment, null, /* @__PURE__ */ React7.createElement(import_ui4.UnstableChipGroup, { ref: chipRef, ...chipGroupProps, "aria-label": `Edit ${label}`, role: "group" }, /* @__PURE__ */ React7.createElement(
535
+ import_ui4.Chip,
788
536
  {
789
537
  disabled: submitting,
790
538
  size: CHIP_SIZE,
791
- label: /* @__PURE__ */ React17.createElement(
539
+ label: /* @__PURE__ */ React7.createElement(
792
540
  EditableField,
793
541
  {
794
542
  onDoubleClick: () => {
@@ -802,7 +550,7 @@ function CssClassItem({
802
550
  }
803
551
  }
804
552
  },
805
- /* @__PURE__ */ React17.createElement(ConditionalTooltipWrapper, { maxWidth: "10ch", title: label })
553
+ /* @__PURE__ */ React7.createElement(import_editor_ui.EllipsisWithTooltip, { maxWidth: "10ch", title: label })
806
554
  ),
807
555
  variant: isActive && !meta.state ? "filled" : "standard",
808
556
  color,
@@ -814,21 +562,21 @@ function CssClassItem({
814
562
  }
815
563
  }
816
564
  }
817
- ), !isEditing && /* @__PURE__ */ React17.createElement(
818
- import_ui11.Chip,
565
+ ), !isEditing && /* @__PURE__ */ React7.createElement(
566
+ import_ui4.Chip,
819
567
  {
820
568
  disabled: submitting,
821
569
  size: CHIP_SIZE,
822
- label: /* @__PURE__ */ React17.createElement(import_ui11.Stack, { direction: "row", gap: 0.5, alignItems: "center" }, isActive && meta.state && /* @__PURE__ */ React17.createElement(import_ui11.Typography, { variant: "inherit" }, meta.state), /* @__PURE__ */ React17.createElement(import_icons4.DotsVerticalIcon, { fontSize: "inherit" })),
570
+ label: /* @__PURE__ */ React7.createElement(import_ui4.Stack, { direction: "row", gap: 0.5, alignItems: "center" }, isActive && meta.state && /* @__PURE__ */ React7.createElement(import_ui4.Typography, { variant: "inherit" }, meta.state), /* @__PURE__ */ React7.createElement(import_icons2.DotsVerticalIcon, { fontSize: "inherit" })),
823
571
  variant: "filled",
824
572
  color,
825
- ...(0, import_ui11.bindTrigger)(popupState),
573
+ ...(0, import_ui4.bindTrigger)(popupState),
826
574
  "aria-label": (0, import_i18n2.__)("Open CSS Class Menu", "elementor")
827
575
  }
828
- )), /* @__PURE__ */ React17.createElement(CssClassMenu, { popupState, containerRef: chipRef }));
576
+ )), /* @__PURE__ */ React7.createElement(CssClassMenu, { styleId: id, popupState, isFixed }));
829
577
  }
830
578
  var updateClassByProvider = (provider, data) => {
831
- const providerInstance = import_editor_styles_repository.stylesRepository.getProviderByKey(provider);
579
+ const providerInstance = import_editor_styles_repository2.stylesRepository.getProviderByKey(provider);
832
580
  if (!providerInstance) {
833
581
  return;
834
582
  }
@@ -852,30 +600,30 @@ var isNameExist = (newLabel, options10) => {
852
600
  var isCharactersNotSupported = (newLabel) => !VALID_SELECTOR_REGEX.test(newLabel);
853
601
  function useOptions() {
854
602
  const { element } = useElement();
855
- return (0, import_editor_styles_repository.useAllStylesByProvider)({ elementId: element.id }).flatMap(
856
- ([provider, styleDefs]) => {
857
- const isElements = provider.key === import_editor_styles_repository.ELEMENTS_STYLES_PROVIDER_KEY;
858
- if (isElements && styleDefs.length === 0) {
859
- return [EMPTY_OPTION];
860
- }
861
- return styleDefs.map((styleDef) => {
862
- return {
863
- label: styleDef.label,
864
- value: styleDef.id,
865
- fixed: isElements,
866
- color: isElements ? "primary" : "global",
867
- provider: provider.key,
868
- group: provider.labels?.plural
869
- };
870
- });
603
+ const isProviderEditable = (provider) => !!provider.actions.updateProps;
604
+ return (0, import_editor_styles_repository2.useProviders)().filter(isProviderEditable).flatMap((provider) => {
605
+ const isElements = provider.key === import_editor_styles_repository2.ELEMENTS_STYLES_PROVIDER_KEY;
606
+ const styleDefs = provider.actions.get({ elementId: element.id });
607
+ if (isElements && styleDefs.length === 0) {
608
+ return [EMPTY_OPTION];
871
609
  }
872
- );
610
+ return styleDefs.map((styleDef) => {
611
+ return {
612
+ label: styleDef.label,
613
+ value: styleDef.id,
614
+ fixed: isElements,
615
+ color: isElements ? "primary" : "global",
616
+ provider: provider.key,
617
+ group: provider.labels?.plural
618
+ };
619
+ });
620
+ });
873
621
  }
874
622
  function useCreateActions({
875
623
  pushAppliedId,
876
624
  setActiveId
877
625
  }) {
878
- return (0, import_editor_styles_repository.useCreateActionsByProvider)().map(([provider, create]) => {
626
+ return (0, import_editor_styles_repository2.useCreateActionsByProvider)().map(([provider, create]) => {
879
627
  return {
880
628
  // translators: %s is the label of the new class.
881
629
  label: (value) => (0, import_i18n2.__)('Create new "%s"', "elementor").replace("%s", value),
@@ -901,7 +649,7 @@ function useCreateActions({
901
649
  function useAppliedOptions(options10, appliedIds) {
902
650
  const applied = options10.filter((option) => appliedIds.includes(option.value));
903
651
  const hasElementsProviderStyleApplied = applied.some(
904
- (option) => option.provider === import_editor_styles_repository.ELEMENTS_STYLES_PROVIDER_KEY
652
+ (option) => option.provider === import_editor_styles_repository2.ELEMENTS_STYLES_PROVIDER_KEY
905
653
  );
906
654
  if (!hasElementsProviderStyleApplied) {
907
655
  applied.unshift(EMPTY_OPTION);
@@ -913,7 +661,7 @@ function useAppliedClassesIds() {
913
661
  const currentClassesProp = useClassesProp();
914
662
  const value = (0, import_editor_elements2.useElementSetting)(element.id, currentClassesProp)?.value || [];
915
663
  const setValue = (ids) => {
916
- (0, import_editor_elements2.updateSettings)({
664
+ (0, import_editor_elements2.updateElementSettings)({
917
665
  id: element.id,
918
666
  props: {
919
667
  [currentClassesProp]: import_editor_props.classesPropTypeUtil.create(ids)
@@ -948,43 +696,305 @@ function useHandleApply(appliedIds, setAppliedIds) {
948
696
  if (removedValue && removedValue === activeId) {
949
697
  setActiveId(selectedValues[0] ?? null);
950
698
  }
951
- };
952
- }
699
+ };
700
+ }
701
+
702
+ // src/panel.ts
703
+ var import_editor_panels2 = require("@elementor/editor-panels");
704
+
705
+ // src/components/editing-panel.tsx
706
+ var React60 = __toESM(require("react"));
707
+ var import_editor_controls41 = require("@elementor/editor-controls");
708
+ var import_editor_elements7 = require("@elementor/editor-elements");
709
+ var import_editor_panels = require("@elementor/editor-panels");
710
+ var import_session3 = require("@elementor/session");
711
+ var import_ui50 = require("@elementor/ui");
712
+ var import_i18n40 = require("@wordpress/i18n");
713
+
714
+ // src/controls-actions.ts
715
+ var import_menus = require("@elementor/menus");
716
+
717
+ // src/popover-action.tsx
718
+ var React8 = __toESM(require("react"));
719
+ var import_react7 = require("react");
720
+ var import_icons3 = require("@elementor/icons");
721
+ var import_ui5 = require("@elementor/ui");
722
+ var SIZE = "tiny";
723
+ function PopoverAction({
724
+ title,
725
+ visible = true,
726
+ icon: Icon,
727
+ popoverContent: PopoverContent
728
+ }) {
729
+ const id = (0, import_react7.useId)();
730
+ const popupState = (0, import_ui5.usePopupState)({
731
+ variant: "popover",
732
+ popupId: `elementor-popover-action-${id}`
733
+ });
734
+ if (!visible) {
735
+ return null;
736
+ }
737
+ return /* @__PURE__ */ React8.createElement(React8.Fragment, null, /* @__PURE__ */ React8.createElement(import_ui5.Tooltip, { placement: "top", title }, /* @__PURE__ */ React8.createElement(import_ui5.IconButton, { "aria-label": title, key: id, size: SIZE, ...(0, import_ui5.bindToggle)(popupState) }, /* @__PURE__ */ React8.createElement(Icon, { fontSize: SIZE }))), /* @__PURE__ */ React8.createElement(
738
+ import_ui5.Popover,
739
+ {
740
+ disablePortal: true,
741
+ disableScrollLock: true,
742
+ anchorOrigin: {
743
+ vertical: "bottom",
744
+ horizontal: "center"
745
+ },
746
+ ...(0, import_ui5.bindPopover)(popupState)
747
+ },
748
+ /* @__PURE__ */ React8.createElement(import_ui5.Stack, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React8.createElement(Icon, { fontSize: SIZE, sx: { mr: 0.5 } }), /* @__PURE__ */ React8.createElement(import_ui5.Typography, { variant: "subtitle2" }, title), /* @__PURE__ */ React8.createElement(import_ui5.IconButton, { sx: { ml: "auto" }, size: SIZE, onClick: popupState.close }, /* @__PURE__ */ React8.createElement(import_icons3.XIcon, { fontSize: SIZE }))),
749
+ /* @__PURE__ */ React8.createElement(PopoverContent, { closePopover: popupState.close })
750
+ ));
751
+ }
752
+
753
+ // src/controls-actions.ts
754
+ var controlActionsMenu = (0, import_menus.createMenu)({
755
+ components: {
756
+ PopoverAction
757
+ }
758
+ });
759
+
760
+ // src/components/editing-panel-error-fallback.tsx
761
+ var React9 = __toESM(require("react"));
762
+ var import_ui6 = require("@elementor/ui");
763
+ function EditorPanelErrorFallback() {
764
+ return /* @__PURE__ */ React9.createElement(import_ui6.Box, { role: "alert", sx: { minHeight: "100%", p: 2 } }, /* @__PURE__ */ React9.createElement(import_ui6.Alert, { severity: "error", sx: { mb: 2, maxWidth: 400, textAlign: "center" } }, /* @__PURE__ */ React9.createElement("strong", null, "Something went wrong")));
765
+ }
766
+
767
+ // src/components/editing-panel-tabs.tsx
768
+ var React59 = __toESM(require("react"));
769
+ var import_react16 = require("react");
770
+ var import_ui49 = require("@elementor/ui");
771
+ var import_i18n39 = require("@wordpress/i18n");
772
+
773
+ // src/components/settings-tab.tsx
774
+ var React15 = __toESM(require("react"));
775
+ var import_editor_controls4 = require("@elementor/editor-controls");
776
+ var import_session = require("@elementor/session");
777
+
778
+ // src/controls-registry/control.tsx
779
+ var React10 = __toESM(require("react"));
780
+
781
+ // src/controls-registry/controls-registry.tsx
782
+ var import_editor_controls2 = require("@elementor/editor-controls");
783
+ var controlTypes = {
784
+ image: { component: import_editor_controls2.ImageControl, layout: "full" },
785
+ text: { component: import_editor_controls2.TextControl, layout: "two-columns" },
786
+ textarea: { component: import_editor_controls2.TextAreaControl, layout: "full" },
787
+ size: { component: import_editor_controls2.SizeControl, layout: "two-columns" },
788
+ select: { component: import_editor_controls2.SelectControl, layout: "two-columns" },
789
+ link: { component: import_editor_controls2.LinkControl, layout: "full" },
790
+ url: { component: import_editor_controls2.UrlControl, layout: "full" }
791
+ };
792
+ var getControlByType = (type) => controlTypes[type]?.component;
793
+ var getLayoutByType = (type) => controlTypes[type].layout;
794
+
795
+ // src/controls-registry/control.tsx
796
+ var Control = ({ props, type }) => {
797
+ const ControlByType = getControlByType(type);
798
+ if (!ControlByType) {
799
+ throw new ControlTypeNotFoundError({
800
+ context: { controlType: type }
801
+ });
802
+ }
803
+ return /* @__PURE__ */ React10.createElement(ControlByType, { ...props });
804
+ };
805
+
806
+ // src/controls-registry/control-type-container.tsx
807
+ var React11 = __toESM(require("react"));
808
+ var import_ui7 = require("@elementor/ui");
809
+ var ControlTypeContainer = ({
810
+ controlType,
811
+ children
812
+ }) => {
813
+ const layout = getLayoutByType(controlType);
814
+ return /* @__PURE__ */ React11.createElement(StyledContainer, { layout }, children);
815
+ };
816
+ var StyledContainer = (0, import_ui7.styled)(import_ui7.Box, {
817
+ shouldForwardProp: (prop) => !["layout"].includes(prop)
818
+ })(({ layout, theme }) => ({
819
+ display: "grid",
820
+ gridGap: theme.spacing(1),
821
+ ...getGridLayout(layout)
822
+ }));
823
+ var getGridLayout = (layout) => ({
824
+ justifyContent: "space-between",
825
+ gridTemplateColumns: {
826
+ full: "1fr",
827
+ "two-columns": "repeat(2, 1fr)"
828
+ }[layout]
829
+ });
830
+
831
+ // src/controls-registry/settings-field.tsx
832
+ var React12 = __toESM(require("react"));
833
+ var import_editor_controls3 = require("@elementor/editor-controls");
834
+ var import_editor_elements3 = require("@elementor/editor-elements");
835
+
836
+ // src/controls-registry/create-top-level-object-type.ts
837
+ var createTopLevelOjectType = ({ schema }) => {
838
+ const schemaPropType = {
839
+ key: "",
840
+ kind: "object",
841
+ meta: {},
842
+ settings: {},
843
+ default: null,
844
+ shape: schema
845
+ };
846
+ return schemaPropType;
847
+ };
848
+
849
+ // src/controls-registry/settings-field.tsx
850
+ var SettingsField = ({ bind, children }) => {
851
+ const { element, elementType } = useElement();
852
+ const settingsValue = (0, import_editor_elements3.useElementSetting)(element.id, bind);
853
+ const value = { [bind]: settingsValue };
854
+ const propType = createTopLevelOjectType({ schema: elementType.propsSchema });
855
+ const setValue = (newValue) => {
856
+ (0, import_editor_elements3.updateElementSettings)({
857
+ id: element.id,
858
+ props: { ...newValue }
859
+ });
860
+ };
861
+ return /* @__PURE__ */ React12.createElement(import_editor_controls3.PropProvider, { propType, value, setValue }, /* @__PURE__ */ React12.createElement(import_editor_controls3.PropKeyProvider, { bind }, children));
862
+ };
863
+
864
+ // src/components/section.tsx
865
+ var React13 = __toESM(require("react"));
866
+ var import_react8 = require("react");
867
+ var import_ui9 = require("@elementor/ui");
868
+
869
+ // src/components/collapse-icon.tsx
870
+ var import_icons4 = require("@elementor/icons");
871
+ var import_ui8 = require("@elementor/ui");
872
+ var CollapseIcon = (0, import_ui8.styled)(import_icons4.ChevronDownIcon, {
873
+ shouldForwardProp: (prop) => prop !== "open"
874
+ })(({ theme, open }) => ({
875
+ transform: open ? "rotate(180deg)" : "rotate(0deg)",
876
+ transition: theme.transitions.create("transform", {
877
+ duration: theme.transitions.duration.standard
878
+ })
879
+ }));
880
+
881
+ // src/components/section.tsx
882
+ function Section({ title, children, defaultExpanded = false }) {
883
+ const [isOpen, setIsOpen] = (0, import_react8.useState)(!!defaultExpanded);
884
+ const id = (0, import_react8.useId)();
885
+ const labelId = `label-${id}`;
886
+ const contentId = `content-${id}`;
887
+ return /* @__PURE__ */ React13.createElement(React13.Fragment, null, /* @__PURE__ */ React13.createElement(
888
+ import_ui9.ListItemButton,
889
+ {
890
+ id: labelId,
891
+ "aria-controls": contentId,
892
+ onClick: () => setIsOpen((prev) => !prev)
893
+ },
894
+ /* @__PURE__ */ React13.createElement(import_ui9.ListItemText, { secondary: title }),
895
+ /* @__PURE__ */ React13.createElement(CollapseIcon, { open: isOpen, color: "secondary" })
896
+ ), /* @__PURE__ */ React13.createElement(import_ui9.Collapse, { id: contentId, "aria-labelledby": labelId, in: isOpen, timeout: "auto", unmountOnExit: true }, /* @__PURE__ */ React13.createElement(import_ui9.Stack, { gap: 2.5, p: 2 }, children)), /* @__PURE__ */ React13.createElement(import_ui9.Divider, null));
897
+ }
898
+
899
+ // src/components/sections-list.tsx
900
+ var React14 = __toESM(require("react"));
901
+ var import_ui10 = require("@elementor/ui");
902
+ function SectionsList(props) {
903
+ return /* @__PURE__ */ React14.createElement(import_ui10.List, { disablePadding: true, component: "div", ...props });
904
+ }
905
+
906
+ // src/components/settings-tab.tsx
907
+ var SettingsTab = () => {
908
+ const { elementType, element } = useElement();
909
+ return /* @__PURE__ */ React15.createElement(import_session.SessionStorageProvider, { prefix: element.id }, /* @__PURE__ */ React15.createElement(SectionsList, null, elementType.controls.map(({ type, value }, index) => {
910
+ if (type === "control") {
911
+ return /* @__PURE__ */ React15.createElement(Control2, { key: value.bind, control: value });
912
+ }
913
+ if (type === "section") {
914
+ return /* @__PURE__ */ React15.createElement(Section, { title: value.label, key: type + "." + index, defaultExpanded: true }, value.items?.map((item) => {
915
+ if (item.type === "control") {
916
+ return /* @__PURE__ */ React15.createElement(Control2, { key: item.value.bind, control: item.value });
917
+ }
918
+ return null;
919
+ }));
920
+ }
921
+ return null;
922
+ })));
923
+ };
924
+ var Control2 = ({ control }) => {
925
+ if (!getControlByType(control.type)) {
926
+ return null;
927
+ }
928
+ return /* @__PURE__ */ React15.createElement(SettingsField, { bind: control.bind }, /* @__PURE__ */ React15.createElement(ControlTypeContainer, { controlType: control.type }, control.label ? /* @__PURE__ */ React15.createElement(import_editor_controls4.ControlLabel, null, control.label) : null, /* @__PURE__ */ React15.createElement(Control, { type: control.type, props: control.props })));
929
+ };
930
+
931
+ // src/components/style-tab.tsx
932
+ var React58 = __toESM(require("react"));
933
+ var import_react15 = require("react");
934
+ var import_editor_elements6 = require("@elementor/editor-elements");
935
+ var import_editor_responsive = require("@elementor/editor-responsive");
936
+ var import_session2 = require("@elementor/session");
937
+ var import_ui48 = require("@elementor/ui");
938
+ var import_i18n38 = require("@wordpress/i18n");
953
939
 
954
940
  // src/components/style-sections/background-section/background-section.tsx
955
- var React19 = __toESM(require("react"));
941
+ var React17 = __toESM(require("react"));
956
942
  var import_editor_controls6 = require("@elementor/editor-controls");
957
943
 
958
944
  // src/controls-registry/styles-field.tsx
959
- var React18 = __toESM(require("react"));
945
+ var React16 = __toESM(require("react"));
960
946
  var import_editor_controls5 = require("@elementor/editor-controls");
961
- var import_editor_styles = require("@elementor/editor-styles");
947
+ var import_editor_styles2 = require("@elementor/editor-styles");
962
948
 
963
949
  // src/hooks/use-styles-fields.ts
964
- var import_editor_elements3 = require("@elementor/editor-elements");
950
+ var import_react9 = require("react");
951
+ var import_editor_elements4 = require("@elementor/editor-elements");
952
+ var import_editor_styles = require("@elementor/editor-styles");
965
953
  var import_i18n3 = require("@wordpress/i18n");
966
954
  function useStylesFields(propNames) {
967
955
  const { element } = useElement();
968
- const { id, meta } = useStyle();
956
+ const { id, meta, provider } = useStyle();
969
957
  const classesProp = useClassesProp();
970
- const value = (0, import_editor_elements3.useElementStyleProps)({
971
- elementID: element.id,
972
- styleDefID: id,
958
+ const [, reRender] = (0, import_react9.useReducer)((p) => !p, false);
959
+ (0, import_react9.useEffect)(() => provider?.subscribe(reRender), [provider]);
960
+ const value = getProps({
961
+ elementId: element.id,
962
+ styleId: id,
963
+ provider,
973
964
  meta,
974
965
  propNames
975
966
  });
976
- const setValue = (newValues) => {
977
- (0, import_editor_elements3.updateStyle)({
978
- elementID: element.id,
979
- styleDefID: id,
980
- props: newValues,
981
- meta,
982
- bind: classesProp,
983
- label: (0, import_i18n3.__)("local", "elementor")
984
- });
967
+ const setValue = (props) => {
968
+ if (id === null) {
969
+ (0, import_editor_elements4.createElementStyle)({
970
+ elementId: element.id,
971
+ classesProp,
972
+ meta,
973
+ props,
974
+ label: (0, import_i18n3.__)("local", "elementor")
975
+ });
976
+ return;
977
+ }
978
+ if (!provider.actions.updateProps) {
979
+ throw new StylesProviderCannotUpdatePropsError({ context: { providerKey: provider.key } });
980
+ }
981
+ provider.actions.updateProps({ id, meta, props }, { elementId: element.id });
985
982
  };
986
983
  return [value, setValue];
987
984
  }
985
+ function getProps({ styleId, elementId, provider, meta, propNames }) {
986
+ if (!provider || !styleId) {
987
+ return null;
988
+ }
989
+ const style = provider.actions.getById?.(styleId, { elementId });
990
+ if (!style) {
991
+ throw new StyleNotFoundUnderProviderError({ context: { styleId, providerKey: provider.key } });
992
+ }
993
+ const variant = (0, import_editor_styles.getVariantByMeta)(style, meta);
994
+ return Object.fromEntries(
995
+ propNames.map((key) => [key, variant?.props[key] ?? null])
996
+ );
997
+ }
988
998
 
989
999
  // src/hooks/use-styles-field.ts
990
1000
  function useStylesField(propName) {
@@ -1001,37 +1011,37 @@ function useStylesField(propName) {
1001
1011
  // src/controls-registry/styles-field.tsx
1002
1012
  var StylesField = ({ bind, children }) => {
1003
1013
  const [value, setValue] = useStylesField(bind);
1004
- const stylesSchema = (0, import_editor_styles.getStylesSchema)();
1014
+ const stylesSchema = (0, import_editor_styles2.getStylesSchema)();
1005
1015
  const propType = createTopLevelOjectType({ schema: stylesSchema });
1006
1016
  const values = { [bind]: value };
1007
1017
  const setValues = (newValue) => {
1008
1018
  setValue(newValue[bind]);
1009
1019
  };
1010
- return /* @__PURE__ */ React18.createElement(import_editor_controls5.PropProvider, { propType, value: values, setValue: setValues }, /* @__PURE__ */ React18.createElement(import_editor_controls5.PropKeyProvider, { bind }, children));
1020
+ return /* @__PURE__ */ React16.createElement(import_editor_controls5.PropProvider, { propType, value: values, setValue: setValues }, /* @__PURE__ */ React16.createElement(import_editor_controls5.PropKeyProvider, { bind }, children));
1011
1021
  };
1012
1022
 
1013
1023
  // src/components/style-sections/background-section/background-section.tsx
1014
1024
  var BackgroundSection = () => {
1015
- return /* @__PURE__ */ React19.createElement(StylesField, { bind: "background" }, /* @__PURE__ */ React19.createElement(import_editor_controls6.BackgroundControl, null));
1025
+ return /* @__PURE__ */ React17.createElement(StylesField, { bind: "background" }, /* @__PURE__ */ React17.createElement(import_editor_controls6.BackgroundControl, null));
1016
1026
  };
1017
1027
 
1018
1028
  // src/components/style-sections/border-section/border-section.tsx
1019
- var React26 = __toESM(require("react"));
1020
- var import_ui15 = require("@elementor/ui");
1029
+ var React24 = __toESM(require("react"));
1030
+ var import_ui14 = require("@elementor/ui");
1021
1031
 
1022
1032
  // src/components/style-sections/border-section/border-field.tsx
1023
- var React24 = __toESM(require("react"));
1033
+ var React22 = __toESM(require("react"));
1024
1034
  var import_i18n7 = require("@wordpress/i18n");
1025
1035
 
1026
1036
  // src/components/add-or-remove-content.tsx
1027
- var React20 = __toESM(require("react"));
1037
+ var React18 = __toESM(require("react"));
1028
1038
  var import_editor_controls7 = require("@elementor/editor-controls");
1029
1039
  var import_icons5 = require("@elementor/icons");
1030
- var import_ui12 = require("@elementor/ui");
1040
+ var import_ui11 = require("@elementor/ui");
1031
1041
  var SIZE2 = "tiny";
1032
1042
  var AddOrRemoveContent = ({ isAdded, label, onAdd, onRemove, children }) => {
1033
- return /* @__PURE__ */ React20.createElement(import_ui12.Stack, { gap: 1.5 }, /* @__PURE__ */ React20.createElement(
1034
- import_ui12.Stack,
1043
+ return /* @__PURE__ */ React18.createElement(import_ui11.Stack, { gap: 1.5 }, /* @__PURE__ */ React18.createElement(
1044
+ import_ui11.Stack,
1035
1045
  {
1036
1046
  direction: "row",
1037
1047
  sx: {
@@ -1039,24 +1049,24 @@ var AddOrRemoveContent = ({ isAdded, label, onAdd, onRemove, children }) => {
1039
1049
  alignItems: "center"
1040
1050
  }
1041
1051
  },
1042
- /* @__PURE__ */ React20.createElement(import_editor_controls7.ControlLabel, null, label),
1043
- isAdded ? /* @__PURE__ */ React20.createElement(import_ui12.IconButton, { size: SIZE2, onClick: onRemove, "aria-label": "Remove" }, /* @__PURE__ */ React20.createElement(import_icons5.MinusIcon, { fontSize: SIZE2 })) : /* @__PURE__ */ React20.createElement(import_ui12.IconButton, { size: SIZE2, onClick: onAdd, "aria-label": "Add" }, /* @__PURE__ */ React20.createElement(import_icons5.PlusIcon, { fontSize: SIZE2 }))
1044
- ), /* @__PURE__ */ React20.createElement(import_ui12.Collapse, { in: isAdded, unmountOnExit: true }, /* @__PURE__ */ React20.createElement(import_ui12.Stack, { gap: 1.5 }, children)));
1052
+ /* @__PURE__ */ React18.createElement(import_editor_controls7.ControlLabel, null, label),
1053
+ isAdded ? /* @__PURE__ */ React18.createElement(import_ui11.IconButton, { size: SIZE2, onClick: onRemove, "aria-label": "Remove" }, /* @__PURE__ */ React18.createElement(import_icons5.MinusIcon, { fontSize: SIZE2 })) : /* @__PURE__ */ React18.createElement(import_ui11.IconButton, { size: SIZE2, onClick: onAdd, "aria-label": "Add" }, /* @__PURE__ */ React18.createElement(import_icons5.PlusIcon, { fontSize: SIZE2 }))
1054
+ ), /* @__PURE__ */ React18.createElement(import_ui11.Collapse, { in: isAdded, unmountOnExit: true }, /* @__PURE__ */ React18.createElement(import_ui11.Stack, { gap: 1.5 }, children)));
1045
1055
  };
1046
1056
 
1047
1057
  // src/components/style-sections/border-section/border-color-field.tsx
1048
- var React21 = __toESM(require("react"));
1058
+ var React19 = __toESM(require("react"));
1049
1059
  var import_editor_controls8 = require("@elementor/editor-controls");
1050
- var import_ui13 = require("@elementor/ui");
1060
+ var import_ui12 = require("@elementor/ui");
1051
1061
  var import_i18n4 = require("@wordpress/i18n");
1052
1062
  var BorderColorField = () => {
1053
- return /* @__PURE__ */ React21.createElement(StylesField, { bind: "border-color" }, /* @__PURE__ */ React21.createElement(import_ui13.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React21.createElement(import_ui13.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React21.createElement(import_editor_controls8.ControlLabel, null, (0, import_i18n4.__)("Border Color", "elementor"))), /* @__PURE__ */ React21.createElement(import_ui13.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React21.createElement(import_editor_controls8.ColorControl, null))));
1063
+ return /* @__PURE__ */ React19.createElement(StylesField, { bind: "border-color" }, /* @__PURE__ */ React19.createElement(import_ui12.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React19.createElement(import_ui12.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React19.createElement(import_editor_controls8.ControlLabel, null, (0, import_i18n4.__)("Border Color", "elementor"))), /* @__PURE__ */ React19.createElement(import_ui12.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React19.createElement(import_editor_controls8.ColorControl, null))));
1054
1064
  };
1055
1065
 
1056
1066
  // src/components/style-sections/border-section/border-style-field.tsx
1057
- var React22 = __toESM(require("react"));
1067
+ var React20 = __toESM(require("react"));
1058
1068
  var import_editor_controls9 = require("@elementor/editor-controls");
1059
- var import_ui14 = require("@elementor/ui");
1069
+ var import_ui13 = require("@elementor/ui");
1060
1070
  var import_i18n5 = require("@wordpress/i18n");
1061
1071
  var borderStyles = [
1062
1072
  { value: "none", label: (0, import_i18n5.__)("None", "elementor") },
@@ -1070,11 +1080,11 @@ var borderStyles = [
1070
1080
  { value: "outset", label: (0, import_i18n5.__)("Outset", "elementor") }
1071
1081
  ];
1072
1082
  var BorderStyleField = () => {
1073
- return /* @__PURE__ */ React22.createElement(StylesField, { bind: "border-style" }, /* @__PURE__ */ React22.createElement(import_ui14.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React22.createElement(import_ui14.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React22.createElement(import_editor_controls9.ControlLabel, null, (0, import_i18n5.__)("Border Type", "elementor"))), /* @__PURE__ */ React22.createElement(import_ui14.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React22.createElement(import_editor_controls9.SelectControl, { options: borderStyles }))));
1083
+ return /* @__PURE__ */ React20.createElement(StylesField, { bind: "border-style" }, /* @__PURE__ */ React20.createElement(import_ui13.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React20.createElement(import_ui13.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React20.createElement(import_editor_controls9.ControlLabel, null, (0, import_i18n5.__)("Border Type", "elementor"))), /* @__PURE__ */ React20.createElement(import_ui13.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React20.createElement(import_editor_controls9.SelectControl, { options: borderStyles }))));
1074
1084
  };
1075
1085
 
1076
1086
  // src/components/style-sections/border-section/border-width-field.tsx
1077
- var React23 = __toESM(require("react"));
1087
+ var React21 = __toESM(require("react"));
1078
1088
  var import_editor_controls10 = require("@elementor/editor-controls");
1079
1089
  var import_editor_props2 = require("@elementor/editor-props");
1080
1090
  var import_icons6 = require("@elementor/icons");
@@ -1082,32 +1092,32 @@ var import_i18n6 = require("@wordpress/i18n");
1082
1092
  var edges = [
1083
1093
  {
1084
1094
  label: (0, import_i18n6.__)("Top", "elementor"),
1085
- icon: /* @__PURE__ */ React23.createElement(import_icons6.SideTopIcon, { fontSize: "tiny" }),
1095
+ icon: /* @__PURE__ */ React21.createElement(import_icons6.SideTopIcon, { fontSize: "tiny" }),
1086
1096
  bind: "top"
1087
1097
  },
1088
1098
  {
1089
1099
  label: (0, import_i18n6.__)("Right", "elementor"),
1090
- icon: /* @__PURE__ */ React23.createElement(import_icons6.SideRightIcon, { fontSize: "tiny" }),
1100
+ icon: /* @__PURE__ */ React21.createElement(import_icons6.SideRightIcon, { fontSize: "tiny" }),
1091
1101
  bind: "right"
1092
1102
  },
1093
1103
  {
1094
1104
  label: (0, import_i18n6.__)("Bottom", "elementor"),
1095
- icon: /* @__PURE__ */ React23.createElement(import_icons6.SideBottomIcon, { fontSize: "tiny" }),
1105
+ icon: /* @__PURE__ */ React21.createElement(import_icons6.SideBottomIcon, { fontSize: "tiny" }),
1096
1106
  bind: "bottom"
1097
1107
  },
1098
1108
  {
1099
1109
  label: (0, import_i18n6.__)("Left", "elementor"),
1100
- icon: /* @__PURE__ */ React23.createElement(import_icons6.SideLeftIcon, { fontSize: "tiny" }),
1110
+ icon: /* @__PURE__ */ React21.createElement(import_icons6.SideLeftIcon, { fontSize: "tiny" }),
1101
1111
  bind: "left"
1102
1112
  }
1103
1113
  ];
1104
1114
  var BorderWidthField = () => {
1105
- return /* @__PURE__ */ React23.createElement(StylesField, { bind: "border-width" }, /* @__PURE__ */ React23.createElement(
1115
+ return /* @__PURE__ */ React21.createElement(StylesField, { bind: "border-width" }, /* @__PURE__ */ React21.createElement(
1106
1116
  import_editor_controls10.EqualUnequalSizesControl,
1107
1117
  {
1108
1118
  items: edges,
1109
1119
  label: (0, import_i18n6.__)("Border Width", "elementor"),
1110
- icon: /* @__PURE__ */ React23.createElement(import_icons6.SideAllIcon, { fontSize: "tiny" }),
1120
+ icon: /* @__PURE__ */ React21.createElement(import_icons6.SideAllIcon, { fontSize: "tiny" }),
1111
1121
  multiSizePropTypeUtil: import_editor_props2.borderWidthPropTypeUtil
1112
1122
  }
1113
1123
  ));
@@ -1132,7 +1142,7 @@ var BorderField = () => {
1132
1142
  });
1133
1143
  };
1134
1144
  const hasBorder = Object.values(border ?? {}).some(Boolean);
1135
- return /* @__PURE__ */ React24.createElement(
1145
+ return /* @__PURE__ */ React22.createElement(
1136
1146
  AddOrRemoveContent,
1137
1147
  {
1138
1148
  label: (0, import_i18n7.__)("Border", "elementor"),
@@ -1140,14 +1150,14 @@ var BorderField = () => {
1140
1150
  onAdd: addBorder,
1141
1151
  onRemove: removeBorder
1142
1152
  },
1143
- /* @__PURE__ */ React24.createElement(BorderWidthField, null),
1144
- /* @__PURE__ */ React24.createElement(BorderColorField, null),
1145
- /* @__PURE__ */ React24.createElement(BorderStyleField, null)
1153
+ /* @__PURE__ */ React22.createElement(BorderWidthField, null),
1154
+ /* @__PURE__ */ React22.createElement(BorderColorField, null),
1155
+ /* @__PURE__ */ React22.createElement(BorderStyleField, null)
1146
1156
  );
1147
1157
  };
1148
1158
 
1149
1159
  // src/components/style-sections/border-section/border-radius-field.tsx
1150
- var React25 = __toESM(require("react"));
1160
+ var React23 = __toESM(require("react"));
1151
1161
  var import_editor_controls11 = require("@elementor/editor-controls");
1152
1162
  var import_editor_props3 = require("@elementor/editor-props");
1153
1163
  var import_icons7 = require("@elementor/icons");
@@ -1155,53 +1165,53 @@ var import_i18n8 = require("@wordpress/i18n");
1155
1165
  var corners = [
1156
1166
  {
1157
1167
  label: (0, import_i18n8.__)("Top Left", "elementor"),
1158
- icon: /* @__PURE__ */ React25.createElement(import_icons7.RadiusTopLeftIcon, { fontSize: "tiny" }),
1168
+ icon: /* @__PURE__ */ React23.createElement(import_icons7.RadiusTopLeftIcon, { fontSize: "tiny" }),
1159
1169
  bind: "top-left"
1160
1170
  },
1161
1171
  {
1162
1172
  label: (0, import_i18n8.__)("Top Right", "elementor"),
1163
- icon: /* @__PURE__ */ React25.createElement(import_icons7.RadiusTopRightIcon, { fontSize: "tiny" }),
1173
+ icon: /* @__PURE__ */ React23.createElement(import_icons7.RadiusTopRightIcon, { fontSize: "tiny" }),
1164
1174
  bind: "top-right"
1165
1175
  },
1166
1176
  {
1167
1177
  label: (0, import_i18n8.__)("Bottom Right", "elementor"),
1168
- icon: /* @__PURE__ */ React25.createElement(import_icons7.RadiusBottomRightIcon, { fontSize: "tiny" }),
1178
+ icon: /* @__PURE__ */ React23.createElement(import_icons7.RadiusBottomRightIcon, { fontSize: "tiny" }),
1169
1179
  bind: "bottom-right"
1170
1180
  },
1171
1181
  {
1172
1182
  label: (0, import_i18n8.__)("Bottom Left", "elementor"),
1173
- icon: /* @__PURE__ */ React25.createElement(import_icons7.RadiusBottomLeftIcon, { fontSize: "tiny" }),
1183
+ icon: /* @__PURE__ */ React23.createElement(import_icons7.RadiusBottomLeftIcon, { fontSize: "tiny" }),
1174
1184
  bind: "bottom-left"
1175
1185
  }
1176
1186
  ];
1177
1187
  var BorderRadiusField = () => {
1178
- return /* @__PURE__ */ React25.createElement(StylesField, { bind: "border-radius" }, /* @__PURE__ */ React25.createElement(
1188
+ return /* @__PURE__ */ React23.createElement(StylesField, { bind: "border-radius" }, /* @__PURE__ */ React23.createElement(
1179
1189
  import_editor_controls11.EqualUnequalSizesControl,
1180
1190
  {
1181
1191
  items: corners,
1182
1192
  label: (0, import_i18n8.__)("Border Radius", "elementor"),
1183
- icon: /* @__PURE__ */ React25.createElement(import_icons7.BorderCornersIcon, { fontSize: "tiny" }),
1193
+ icon: /* @__PURE__ */ React23.createElement(import_icons7.BorderCornersIcon, { fontSize: "tiny" }),
1184
1194
  multiSizePropTypeUtil: import_editor_props3.borderRadiusPropTypeUtil
1185
1195
  }
1186
1196
  ));
1187
1197
  };
1188
1198
 
1189
1199
  // src/components/style-sections/border-section/border-section.tsx
1190
- var BorderSection = () => /* @__PURE__ */ React26.createElement(import_ui15.Stack, { gap: 1.5 }, /* @__PURE__ */ React26.createElement(BorderRadiusField, null), /* @__PURE__ */ React26.createElement(import_ui15.Divider, null), /* @__PURE__ */ React26.createElement(BorderField, null));
1200
+ var BorderSection = () => /* @__PURE__ */ React24.createElement(import_ui14.Stack, { gap: 1.5 }, /* @__PURE__ */ React24.createElement(BorderRadiusField, null), /* @__PURE__ */ React24.createElement(import_ui14.Divider, null), /* @__PURE__ */ React24.createElement(BorderField, null));
1191
1201
 
1192
1202
  // src/components/style-sections/effects-section/effects-section.tsx
1193
- var React27 = __toESM(require("react"));
1203
+ var React25 = __toESM(require("react"));
1194
1204
  var import_editor_controls12 = require("@elementor/editor-controls");
1195
- var import_ui16 = require("@elementor/ui");
1205
+ var import_ui15 = require("@elementor/ui");
1196
1206
  var EffectsSection = () => {
1197
- return /* @__PURE__ */ React27.createElement(import_ui16.Stack, { gap: 1.5 }, /* @__PURE__ */ React27.createElement(StylesField, { bind: "box-shadow" }, /* @__PURE__ */ React27.createElement(import_editor_controls12.BoxShadowRepeaterControl, null)));
1207
+ return /* @__PURE__ */ React25.createElement(import_ui15.Stack, { gap: 1.5 }, /* @__PURE__ */ React25.createElement(StylesField, { bind: "box-shadow" }, /* @__PURE__ */ React25.createElement(import_editor_controls12.BoxShadowRepeaterControl, null)));
1198
1208
  };
1199
1209
 
1200
1210
  // src/components/style-sections/layout-section/layout-section.tsx
1201
- var React38 = __toESM(require("react"));
1211
+ var React36 = __toESM(require("react"));
1202
1212
  var import_editor_controls22 = require("@elementor/editor-controls");
1203
- var import_editor_elements4 = require("@elementor/editor-elements");
1204
- var import_ui28 = require("@elementor/ui");
1213
+ var import_editor_elements5 = require("@elementor/editor-elements");
1214
+ var import_ui27 = require("@elementor/ui");
1205
1215
  var import_i18n18 = require("@wordpress/i18n");
1206
1216
 
1207
1217
  // src/hooks/use-computed-style.ts
@@ -1230,24 +1240,24 @@ function useComputedStyle(elementId) {
1230
1240
  }
1231
1241
 
1232
1242
  // src/components/style-sections/layout-section/align-items-field.tsx
1233
- var React29 = __toESM(require("react"));
1243
+ var React27 = __toESM(require("react"));
1234
1244
  var import_editor_controls13 = require("@elementor/editor-controls");
1235
1245
  var import_icons8 = require("@elementor/icons");
1236
- var import_ui19 = require("@elementor/ui");
1246
+ var import_ui18 = require("@elementor/ui");
1237
1247
  var import_i18n9 = require("@wordpress/i18n");
1238
1248
 
1239
1249
  // src/hooks/use-direction.ts
1240
- var import_ui17 = require("@elementor/ui");
1250
+ var import_ui16 = require("@elementor/ui");
1241
1251
  function useDirection() {
1242
- const theme = (0, import_ui17.useTheme)(), extendedWindow = window;
1252
+ const theme = (0, import_ui16.useTheme)(), extendedWindow = window;
1243
1253
  const isUiRtl = "rtl" === theme.direction, isSiteRtl = !!extendedWindow.elementorFrontend?.config?.is_rtl;
1244
1254
  return { isSiteRtl, isUiRtl };
1245
1255
  }
1246
1256
 
1247
1257
  // src/components/style-sections/layout-section/utils/rotated-icon.tsx
1248
- var React28 = __toESM(require("react"));
1249
- var import_react11 = require("react");
1250
- var import_ui18 = require("@elementor/ui");
1258
+ var React26 = __toESM(require("react"));
1259
+ var import_react10 = require("react");
1260
+ var import_ui17 = require("@elementor/ui");
1251
1261
  var CLOCKWISE_ANGLES = {
1252
1262
  row: 0,
1253
1263
  column: 90,
@@ -1261,13 +1271,13 @@ var COUNTER_CLOCKWISE_ANGLES = {
1261
1271
  "column-reverse": -270
1262
1272
  };
1263
1273
  var RotatedIcon = ({ icon: Icon, size, isClockwise = true, offset = 0 }) => {
1264
- const rotate = (0, import_react11.useRef)(useGetTargetAngle(isClockwise, offset));
1274
+ const rotate = (0, import_react10.useRef)(useGetTargetAngle(isClockwise, offset));
1265
1275
  rotate.current = useGetTargetAngle(isClockwise, offset, rotate);
1266
- return /* @__PURE__ */ React28.createElement(Icon, { fontSize: size, sx: { transition: ".3s", rotate: `${rotate.current}deg` } });
1276
+ return /* @__PURE__ */ React26.createElement(Icon, { fontSize: size, sx: { transition: ".3s", rotate: `${rotate.current}deg` } });
1267
1277
  };
1268
1278
  var useGetTargetAngle = (isClockwise, offset, existingRef) => {
1269
1279
  const [direction] = useStylesField("flex-direction");
1270
- const isRtl = "rtl" === (0, import_ui18.useTheme)().direction;
1280
+ const isRtl = "rtl" === (0, import_ui17.useTheme)().direction;
1271
1281
  const rotationMultiplier = isRtl ? -1 : 1;
1272
1282
  const angleMap = isClockwise ? CLOCKWISE_ANGLES : COUNTER_CLOCKWISE_ANGLES;
1273
1283
  const currentAngle = existingRef ? existingRef.current * rotationMultiplier : angleMap[direction?.value || "row"] + offset;
@@ -1278,8 +1288,8 @@ var useGetTargetAngle = (isClockwise, offset, existingRef) => {
1278
1288
  };
1279
1289
 
1280
1290
  // src/components/style-sections/layout-section/align-items-field.tsx
1281
- var StartIcon = (0, import_ui19.withDirection)(import_icons8.LayoutAlignLeftIcon);
1282
- var EndIcon = (0, import_ui19.withDirection)(import_icons8.LayoutAlignRightIcon);
1291
+ var StartIcon = (0, import_ui18.withDirection)(import_icons8.LayoutAlignLeftIcon);
1292
+ var EndIcon = (0, import_ui18.withDirection)(import_icons8.LayoutAlignRightIcon);
1283
1293
  var iconProps = {
1284
1294
  isClockwise: false,
1285
1295
  offset: 90
@@ -1288,41 +1298,41 @@ var options = [
1288
1298
  {
1289
1299
  value: "start",
1290
1300
  label: (0, import_i18n9.__)("Start", "elementor"),
1291
- renderContent: ({ size }) => /* @__PURE__ */ React29.createElement(RotatedIcon, { icon: StartIcon, size, ...iconProps }),
1301
+ renderContent: ({ size }) => /* @__PURE__ */ React27.createElement(RotatedIcon, { icon: StartIcon, size, ...iconProps }),
1292
1302
  showTooltip: true
1293
1303
  },
1294
1304
  {
1295
1305
  value: "center",
1296
1306
  label: (0, import_i18n9.__)("Center", "elementor"),
1297
- renderContent: ({ size }) => /* @__PURE__ */ React29.createElement(RotatedIcon, { icon: import_icons8.LayoutAlignCenterIcon, size, ...iconProps }),
1307
+ renderContent: ({ size }) => /* @__PURE__ */ React27.createElement(RotatedIcon, { icon: import_icons8.LayoutAlignCenterIcon, size, ...iconProps }),
1298
1308
  showTooltip: true
1299
1309
  },
1300
1310
  {
1301
1311
  value: "end",
1302
1312
  label: (0, import_i18n9.__)("End", "elementor"),
1303
- renderContent: ({ size }) => /* @__PURE__ */ React29.createElement(RotatedIcon, { icon: EndIcon, size, ...iconProps }),
1313
+ renderContent: ({ size }) => /* @__PURE__ */ React27.createElement(RotatedIcon, { icon: EndIcon, size, ...iconProps }),
1304
1314
  showTooltip: true
1305
1315
  },
1306
1316
  {
1307
1317
  value: "stretch",
1308
1318
  label: (0, import_i18n9.__)("Stretch", "elementor"),
1309
- renderContent: ({ size }) => /* @__PURE__ */ React29.createElement(RotatedIcon, { icon: import_icons8.LayoutDistributeVerticalIcon, size, ...iconProps }),
1319
+ renderContent: ({ size }) => /* @__PURE__ */ React27.createElement(RotatedIcon, { icon: import_icons8.LayoutDistributeVerticalIcon, size, ...iconProps }),
1310
1320
  showTooltip: true
1311
1321
  }
1312
1322
  ];
1313
1323
  var AlignItemsField = () => {
1314
1324
  const { isSiteRtl } = useDirection();
1315
- return /* @__PURE__ */ React29.createElement(import_ui19.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React29.createElement(import_ui19.ThemeProvider, null, /* @__PURE__ */ React29.createElement(StylesField, { bind: "align-items" }, /* @__PURE__ */ React29.createElement(import_ui19.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React29.createElement(import_ui19.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React29.createElement(import_editor_controls13.ControlLabel, null, (0, import_i18n9.__)("Align items", "elementor"))), /* @__PURE__ */ React29.createElement(import_ui19.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React29.createElement(import_editor_controls13.ToggleControl, { options }))))));
1325
+ return /* @__PURE__ */ React27.createElement(import_ui18.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React27.createElement(import_ui18.ThemeProvider, null, /* @__PURE__ */ React27.createElement(StylesField, { bind: "align-items" }, /* @__PURE__ */ React27.createElement(import_ui18.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React27.createElement(import_ui18.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React27.createElement(import_editor_controls13.ControlLabel, null, (0, import_i18n9.__)("Align items", "elementor"))), /* @__PURE__ */ React27.createElement(import_ui18.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React27.createElement(import_editor_controls13.ToggleControl, { options }))))));
1316
1326
  };
1317
1327
 
1318
1328
  // src/components/style-sections/layout-section/align-self-child-field.tsx
1319
- var React30 = __toESM(require("react"));
1329
+ var React28 = __toESM(require("react"));
1320
1330
  var import_editor_controls14 = require("@elementor/editor-controls");
1321
1331
  var import_icons9 = require("@elementor/icons");
1322
- var import_ui20 = require("@elementor/ui");
1332
+ var import_ui19 = require("@elementor/ui");
1323
1333
  var import_i18n10 = require("@wordpress/i18n");
1324
- var StartIcon2 = (0, import_ui20.withDirection)(import_icons9.LayoutAlignLeftIcon);
1325
- var EndIcon2 = (0, import_ui20.withDirection)(import_icons9.LayoutAlignRightIcon);
1334
+ var StartIcon2 = (0, import_ui19.withDirection)(import_icons9.LayoutAlignLeftIcon);
1335
+ var EndIcon2 = (0, import_ui19.withDirection)(import_icons9.LayoutAlignRightIcon);
1326
1336
  var iconProps2 = {
1327
1337
  isClockwise: false,
1328
1338
  offset: 90
@@ -1331,37 +1341,37 @@ var options2 = [
1331
1341
  {
1332
1342
  value: "start",
1333
1343
  label: (0, import_i18n10.__)("Start", "elementor"),
1334
- renderContent: ({ size }) => /* @__PURE__ */ React30.createElement(RotatedIcon, { icon: StartIcon2, size, ...iconProps2 }),
1344
+ renderContent: ({ size }) => /* @__PURE__ */ React28.createElement(RotatedIcon, { icon: StartIcon2, size, ...iconProps2 }),
1335
1345
  showTooltip: true
1336
1346
  },
1337
1347
  {
1338
1348
  value: "center",
1339
1349
  label: (0, import_i18n10.__)("Center", "elementor"),
1340
- renderContent: ({ size }) => /* @__PURE__ */ React30.createElement(RotatedIcon, { icon: import_icons9.LayoutAlignCenterIcon, size, ...iconProps2 }),
1350
+ renderContent: ({ size }) => /* @__PURE__ */ React28.createElement(RotatedIcon, { icon: import_icons9.LayoutAlignCenterIcon, size, ...iconProps2 }),
1341
1351
  showTooltip: true
1342
1352
  },
1343
1353
  {
1344
1354
  value: "end",
1345
1355
  label: (0, import_i18n10.__)("End", "elementor"),
1346
- renderContent: ({ size }) => /* @__PURE__ */ React30.createElement(RotatedIcon, { icon: EndIcon2, size, ...iconProps2 }),
1356
+ renderContent: ({ size }) => /* @__PURE__ */ React28.createElement(RotatedIcon, { icon: EndIcon2, size, ...iconProps2 }),
1347
1357
  showTooltip: true
1348
1358
  },
1349
1359
  {
1350
1360
  value: "stretch",
1351
1361
  label: (0, import_i18n10.__)("Stretch", "elementor"),
1352
- renderContent: ({ size }) => /* @__PURE__ */ React30.createElement(RotatedIcon, { icon: import_icons9.LayoutDistributeVerticalIcon, size, ...iconProps2 }),
1362
+ renderContent: ({ size }) => /* @__PURE__ */ React28.createElement(RotatedIcon, { icon: import_icons9.LayoutDistributeVerticalIcon, size, ...iconProps2 }),
1353
1363
  showTooltip: true
1354
1364
  }
1355
1365
  ];
1356
1366
  var AlignSelfChild = () => {
1357
1367
  const { isSiteRtl } = useDirection();
1358
- return /* @__PURE__ */ React30.createElement(import_ui20.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React30.createElement(import_ui20.ThemeProvider, null, /* @__PURE__ */ React30.createElement(StylesField, { bind: "align-self" }, /* @__PURE__ */ React30.createElement(import_ui20.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React30.createElement(import_ui20.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React30.createElement(import_editor_controls14.ControlLabel, null, (0, import_i18n10.__)("Align self", "elementor"))), /* @__PURE__ */ React30.createElement(import_ui20.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React30.createElement(import_editor_controls14.ToggleControl, { options: options2 }))))));
1368
+ return /* @__PURE__ */ React28.createElement(import_ui19.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React28.createElement(import_ui19.ThemeProvider, null, /* @__PURE__ */ React28.createElement(StylesField, { bind: "align-self" }, /* @__PURE__ */ React28.createElement(import_ui19.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React28.createElement(import_ui19.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React28.createElement(import_editor_controls14.ControlLabel, null, (0, import_i18n10.__)("Align self", "elementor"))), /* @__PURE__ */ React28.createElement(import_ui19.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React28.createElement(import_editor_controls14.ToggleControl, { options: options2 }))))));
1359
1369
  };
1360
1370
 
1361
1371
  // src/components/style-sections/layout-section/display-field.tsx
1362
- var React31 = __toESM(require("react"));
1372
+ var React29 = __toESM(require("react"));
1363
1373
  var import_editor_controls15 = require("@elementor/editor-controls");
1364
- var import_ui21 = require("@elementor/ui");
1374
+ var import_ui20 = require("@elementor/ui");
1365
1375
  var import_i18n11 = require("@wordpress/i18n");
1366
1376
  var DisplayField = () => {
1367
1377
  const options10 = [
@@ -1376,58 +1386,58 @@ var DisplayField = () => {
1376
1386
  label: (0, import_i18n11.__)("Flex", "elementor")
1377
1387
  }
1378
1388
  ];
1379
- return /* @__PURE__ */ React31.createElement(StylesField, { bind: "display" }, /* @__PURE__ */ React31.createElement(import_ui21.Stack, { gap: 1 }, /* @__PURE__ */ React31.createElement(import_editor_controls15.ControlLabel, null, (0, import_i18n11.__)("Display", "elementor")), /* @__PURE__ */ React31.createElement(import_editor_controls15.ToggleControl, { options: options10, fullWidth: true })));
1389
+ return /* @__PURE__ */ React29.createElement(StylesField, { bind: "display" }, /* @__PURE__ */ React29.createElement(import_ui20.Stack, { gap: 1 }, /* @__PURE__ */ React29.createElement(import_editor_controls15.ControlLabel, null, (0, import_i18n11.__)("Display", "elementor")), /* @__PURE__ */ React29.createElement(import_editor_controls15.ToggleControl, { options: options10, fullWidth: true })));
1380
1390
  };
1381
1391
 
1382
1392
  // src/components/style-sections/layout-section/flex-direction-field.tsx
1383
- var React32 = __toESM(require("react"));
1393
+ var React30 = __toESM(require("react"));
1384
1394
  var import_editor_controls16 = require("@elementor/editor-controls");
1385
1395
  var import_icons10 = require("@elementor/icons");
1386
- var import_ui22 = require("@elementor/ui");
1396
+ var import_ui21 = require("@elementor/ui");
1387
1397
  var import_i18n12 = require("@wordpress/i18n");
1388
1398
  var options3 = [
1389
1399
  {
1390
1400
  value: "row",
1391
1401
  label: (0, import_i18n12.__)("Row", "elementor"),
1392
1402
  renderContent: ({ size }) => {
1393
- const StartIcon4 = (0, import_ui22.withDirection)(import_icons10.ArrowRightIcon);
1394
- return /* @__PURE__ */ React32.createElement(StartIcon4, { fontSize: size });
1403
+ const StartIcon4 = (0, import_ui21.withDirection)(import_icons10.ArrowRightIcon);
1404
+ return /* @__PURE__ */ React30.createElement(StartIcon4, { fontSize: size });
1395
1405
  },
1396
1406
  showTooltip: true
1397
1407
  },
1398
1408
  {
1399
1409
  value: "column",
1400
1410
  label: (0, import_i18n12.__)("Column", "elementor"),
1401
- renderContent: ({ size }) => /* @__PURE__ */ React32.createElement(import_icons10.ArrowDownSmallIcon, { fontSize: size }),
1411
+ renderContent: ({ size }) => /* @__PURE__ */ React30.createElement(import_icons10.ArrowDownSmallIcon, { fontSize: size }),
1402
1412
  showTooltip: true
1403
1413
  },
1404
1414
  {
1405
1415
  value: "row-reverse",
1406
1416
  label: (0, import_i18n12.__)("Reversed row", "elementor"),
1407
1417
  renderContent: ({ size }) => {
1408
- const EndIcon4 = (0, import_ui22.withDirection)(import_icons10.ArrowLeftIcon);
1409
- return /* @__PURE__ */ React32.createElement(EndIcon4, { fontSize: size });
1418
+ const EndIcon4 = (0, import_ui21.withDirection)(import_icons10.ArrowLeftIcon);
1419
+ return /* @__PURE__ */ React30.createElement(EndIcon4, { fontSize: size });
1410
1420
  },
1411
1421
  showTooltip: true
1412
1422
  },
1413
1423
  {
1414
1424
  value: "column-reverse",
1415
1425
  label: (0, import_i18n12.__)("Reversed column", "elementor"),
1416
- renderContent: ({ size }) => /* @__PURE__ */ React32.createElement(import_icons10.ArrowUpSmallIcon, { fontSize: size }),
1426
+ renderContent: ({ size }) => /* @__PURE__ */ React30.createElement(import_icons10.ArrowUpSmallIcon, { fontSize: size }),
1417
1427
  showTooltip: true
1418
1428
  }
1419
1429
  ];
1420
1430
  var FlexDirectionField = () => {
1421
1431
  const { isSiteRtl } = useDirection();
1422
- return /* @__PURE__ */ React32.createElement(import_ui22.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React32.createElement(import_ui22.ThemeProvider, null, /* @__PURE__ */ React32.createElement(StylesField, { bind: "flex-direction" }, /* @__PURE__ */ React32.createElement(import_ui22.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React32.createElement(import_ui22.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React32.createElement(import_editor_controls16.ControlLabel, null, (0, import_i18n12.__)("Direction", "elementor"))), /* @__PURE__ */ React32.createElement(import_ui22.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React32.createElement(import_editor_controls16.ToggleControl, { options: options3 }))))));
1432
+ return /* @__PURE__ */ React30.createElement(import_ui21.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React30.createElement(import_ui21.ThemeProvider, null, /* @__PURE__ */ React30.createElement(StylesField, { bind: "flex-direction" }, /* @__PURE__ */ React30.createElement(import_ui21.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React30.createElement(import_ui21.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React30.createElement(import_editor_controls16.ControlLabel, null, (0, import_i18n12.__)("Direction", "elementor"))), /* @__PURE__ */ React30.createElement(import_ui21.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React30.createElement(import_editor_controls16.ToggleControl, { options: options3 }))))));
1423
1433
  };
1424
1434
 
1425
1435
  // src/components/style-sections/layout-section/flex-order-field.tsx
1426
- var React33 = __toESM(require("react"));
1427
- var import_react12 = require("react");
1436
+ var React31 = __toESM(require("react"));
1437
+ var import_react11 = require("react");
1428
1438
  var import_editor_controls17 = require("@elementor/editor-controls");
1429
1439
  var import_icons11 = require("@elementor/icons");
1430
- var import_ui23 = require("@elementor/ui");
1440
+ var import_ui22 = require("@elementor/ui");
1431
1441
  var import_i18n13 = require("@wordpress/i18n");
1432
1442
  var FIRST_DEFAULT_VALUE = -99999;
1433
1443
  var LAST_DEFAULT_VALUE = 99999;
@@ -1442,25 +1452,25 @@ var items = [
1442
1452
  {
1443
1453
  value: FIRST,
1444
1454
  label: (0, import_i18n13.__)("First", "elementor"),
1445
- renderContent: ({ size }) => /* @__PURE__ */ React33.createElement(import_icons11.ArrowUpSmallIcon, { fontSize: size }),
1455
+ renderContent: ({ size }) => /* @__PURE__ */ React31.createElement(import_icons11.ArrowUpSmallIcon, { fontSize: size }),
1446
1456
  showTooltip: true
1447
1457
  },
1448
1458
  {
1449
1459
  value: LAST,
1450
1460
  label: (0, import_i18n13.__)("Last", "elementor"),
1451
- renderContent: ({ size }) => /* @__PURE__ */ React33.createElement(import_icons11.ArrowDownSmallIcon, { fontSize: size }),
1461
+ renderContent: ({ size }) => /* @__PURE__ */ React31.createElement(import_icons11.ArrowDownSmallIcon, { fontSize: size }),
1452
1462
  showTooltip: true
1453
1463
  },
1454
1464
  {
1455
1465
  value: CUSTOM,
1456
1466
  label: (0, import_i18n13.__)("Custom", "elementor"),
1457
- renderContent: ({ size }) => /* @__PURE__ */ React33.createElement(import_icons11.PencilIcon, { fontSize: size }),
1467
+ renderContent: ({ size }) => /* @__PURE__ */ React31.createElement(import_icons11.PencilIcon, { fontSize: size }),
1458
1468
  showTooltip: true
1459
1469
  }
1460
1470
  ];
1461
1471
  var FlexOrderField = () => {
1462
1472
  const { isSiteRtl } = useDirection(), [order, setOrder] = useStylesField("order");
1463
- const [groupControlValue, setGroupControlValue] = (0, import_react12.useState)(getGroupControlValue(order?.value || null));
1473
+ const [groupControlValue, setGroupControlValue] = (0, import_react11.useState)(getGroupControlValue(order?.value || null));
1464
1474
  const handleToggleButtonChange = (group) => {
1465
1475
  setGroupControlValue(group);
1466
1476
  if (!group || group === CUSTOM) {
@@ -1469,7 +1479,7 @@ var FlexOrderField = () => {
1469
1479
  }
1470
1480
  setOrder({ $$type: "number", value: orderValueMap[group] });
1471
1481
  };
1472
- return /* @__PURE__ */ React33.createElement(import_ui23.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React33.createElement(import_ui23.ThemeProvider, null, /* @__PURE__ */ React33.createElement(import_ui23.Stack, { gap: 2 }, /* @__PURE__ */ React33.createElement(import_ui23.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React33.createElement(import_ui23.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React33.createElement(import_editor_controls17.ControlLabel, null, (0, import_i18n13.__)("Order", "elementor"))), /* @__PURE__ */ React33.createElement(import_ui23.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React33.createElement(
1482
+ return /* @__PURE__ */ React31.createElement(import_ui22.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React31.createElement(import_ui22.ThemeProvider, null, /* @__PURE__ */ React31.createElement(import_ui22.Stack, { gap: 2 }, /* @__PURE__ */ React31.createElement(import_ui22.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React31.createElement(import_ui22.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React31.createElement(import_editor_controls17.ControlLabel, null, (0, import_i18n13.__)("Order", "elementor"))), /* @__PURE__ */ React31.createElement(import_ui22.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React31.createElement(
1473
1483
  import_editor_controls17.ControlToggleButtonGroup,
1474
1484
  {
1475
1485
  items,
@@ -1477,7 +1487,7 @@ var FlexOrderField = () => {
1477
1487
  onChange: handleToggleButtonChange,
1478
1488
  exclusive: true
1479
1489
  }
1480
- ))), CUSTOM === groupControlValue && /* @__PURE__ */ React33.createElement(StylesField, { bind: "order" }, /* @__PURE__ */ React33.createElement(import_ui23.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React33.createElement(import_ui23.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React33.createElement(import_editor_controls17.ControlLabel, null, (0, import_i18n13.__)("Custom order", "elementor"))), /* @__PURE__ */ React33.createElement(import_ui23.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React33.createElement(
1490
+ ))), CUSTOM === groupControlValue && /* @__PURE__ */ React31.createElement(StylesField, { bind: "order" }, /* @__PURE__ */ React31.createElement(import_ui22.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React31.createElement(import_ui22.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React31.createElement(import_editor_controls17.ControlLabel, null, (0, import_i18n13.__)("Custom order", "elementor"))), /* @__PURE__ */ React31.createElement(import_ui22.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React31.createElement(
1481
1491
  import_editor_controls17.NumberControl,
1482
1492
  {
1483
1493
  min: FIRST_DEFAULT_VALUE + 1,
@@ -1497,36 +1507,37 @@ var getGroupControlValue = (order) => {
1497
1507
  };
1498
1508
 
1499
1509
  // src/components/style-sections/layout-section/flex-size-field.tsx
1500
- var React34 = __toESM(require("react"));
1510
+ var React32 = __toESM(require("react"));
1511
+ var import_react12 = require("react");
1501
1512
  var import_editor_controls18 = require("@elementor/editor-controls");
1502
1513
  var import_icons12 = require("@elementor/icons");
1503
- var import_ui24 = require("@elementor/ui");
1514
+ var import_ui23 = require("@elementor/ui");
1504
1515
  var import_i18n14 = require("@wordpress/i18n");
1505
1516
  var DEFAULT = 1;
1506
1517
  var items2 = [
1507
1518
  {
1508
1519
  value: "flex-grow",
1509
1520
  label: (0, import_i18n14.__)("Grow", "elementor"),
1510
- renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(import_icons12.ExpandIcon, { fontSize: size }),
1521
+ renderContent: ({ size }) => /* @__PURE__ */ React32.createElement(import_icons12.ExpandIcon, { fontSize: size }),
1511
1522
  showTooltip: true
1512
1523
  },
1513
1524
  {
1514
1525
  value: "flex-shrink",
1515
1526
  label: (0, import_i18n14.__)("Shrink", "elementor"),
1516
- renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(import_icons12.ShrinkIcon, { fontSize: size }),
1527
+ renderContent: ({ size }) => /* @__PURE__ */ React32.createElement(import_icons12.ShrinkIcon, { fontSize: size }),
1517
1528
  showTooltip: true
1518
1529
  },
1519
1530
  {
1520
1531
  value: "custom",
1521
1532
  label: (0, import_i18n14.__)("Custom", "elementor"),
1522
- renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(import_icons12.PencilIcon, { fontSize: size }),
1533
+ renderContent: ({ size }) => /* @__PURE__ */ React32.createElement(import_icons12.PencilIcon, { fontSize: size }),
1523
1534
  showTooltip: true
1524
1535
  }
1525
1536
  ];
1526
1537
  var FlexSizeField = () => {
1527
1538
  const { isSiteRtl } = useDirection(), [growField, setGrowField] = useStylesField("flex-grow"), [shrinkField, setShrinkField] = useStylesField("flex-shrink"), [basisField, setBasisField] = useStylesField("flex-basis");
1528
1539
  const grow = growField?.value || null, shrink = shrinkField?.value || null, basis = basisField?.value || null;
1529
- const currentGroup = React34.useMemo(() => getActiveGroup({ grow, shrink, basis }), [grow, shrink, basis]), [activeGroup, setActiveGroup] = React34.useState(currentGroup);
1540
+ const currentGroup = (0, import_react12.useMemo)(() => getActiveGroup({ grow, shrink, basis }), [grow, shrink, basis]), [activeGroup, setActiveGroup] = (0, import_react12.useState)(currentGroup);
1530
1541
  const onChangeGroup = (group = null) => {
1531
1542
  setActiveGroup(group);
1532
1543
  setBasisField(null);
@@ -1543,7 +1554,7 @@ var FlexSizeField = () => {
1543
1554
  setGrowField(null);
1544
1555
  setShrinkField({ $$type: "number", value: DEFAULT });
1545
1556
  };
1546
- return /* @__PURE__ */ React34.createElement(import_ui24.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React34.createElement(import_ui24.ThemeProvider, null, /* @__PURE__ */ React34.createElement(import_ui24.Stack, { gap: 2 }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React34.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Size", "elementor"))), /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React34.createElement(
1557
+ return /* @__PURE__ */ React32.createElement(import_ui23.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React32.createElement(import_ui23.ThemeProvider, null, /* @__PURE__ */ React32.createElement(import_ui23.Stack, { gap: 2 }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React32.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Size", "elementor"))), /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React32.createElement(
1547
1558
  import_editor_controls18.ControlToggleButtonGroup,
1548
1559
  {
1549
1560
  value: activeGroup,
@@ -1551,9 +1562,9 @@ var FlexSizeField = () => {
1551
1562
  items: items2,
1552
1563
  exclusive: true
1553
1564
  }
1554
- ))), "custom" === activeGroup && /* @__PURE__ */ React34.createElement(FlexCustomField, null))));
1565
+ ))), "custom" === activeGroup && /* @__PURE__ */ React32.createElement(FlexCustomField, null))));
1555
1566
  };
1556
- var FlexCustomField = () => /* @__PURE__ */ React34.createElement(React34.Fragment, null, /* @__PURE__ */ React34.createElement(StylesField, { bind: "flex-grow" }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React34.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Grow", "elementor"))), /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React34.createElement(import_editor_controls18.NumberControl, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React34.createElement(StylesField, { bind: "flex-shrink" }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React34.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Shrink", "elementor"))), /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React34.createElement(import_editor_controls18.NumberControl, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React34.createElement(StylesField, { bind: "flex-basis" }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React34.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Basis", "elementor"))), /* @__PURE__ */ React34.createElement(import_ui24.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React34.createElement(import_editor_controls18.SizeControl, null)))));
1567
+ var FlexCustomField = () => /* @__PURE__ */ React32.createElement(React32.Fragment, null, /* @__PURE__ */ React32.createElement(StylesField, { bind: "flex-grow" }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React32.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Grow", "elementor"))), /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React32.createElement(import_editor_controls18.NumberControl, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React32.createElement(StylesField, { bind: "flex-shrink" }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React32.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Shrink", "elementor"))), /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React32.createElement(import_editor_controls18.NumberControl, { min: 0, shouldForceInt: true })))), /* @__PURE__ */ React32.createElement(StylesField, { bind: "flex-basis" }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React32.createElement(import_editor_controls18.ControlLabel, null, (0, import_i18n14.__)("Basis", "elementor"))), /* @__PURE__ */ React32.createElement(import_ui23.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "end" } }, /* @__PURE__ */ React32.createElement(import_editor_controls18.SizeControl, null)))));
1557
1568
  var getActiveGroup = ({
1558
1569
  grow,
1559
1570
  shrink,
@@ -1575,22 +1586,22 @@ var getActiveGroup = ({
1575
1586
  };
1576
1587
 
1577
1588
  // src/components/style-sections/layout-section/gap-control-field.tsx
1578
- var React35 = __toESM(require("react"));
1589
+ var React33 = __toESM(require("react"));
1579
1590
  var import_editor_controls19 = require("@elementor/editor-controls");
1580
- var import_ui25 = require("@elementor/ui");
1591
+ var import_ui24 = require("@elementor/ui");
1581
1592
  var import_i18n15 = require("@wordpress/i18n");
1582
1593
  var GapControlField = () => {
1583
- return /* @__PURE__ */ React35.createElement(import_ui25.Stack, { gap: 1 }, /* @__PURE__ */ React35.createElement(StylesField, { bind: "gap" }, /* @__PURE__ */ React35.createElement(import_editor_controls19.GapControl, { label: (0, import_i18n15.__)("Gaps", "elementor") })));
1594
+ return /* @__PURE__ */ React33.createElement(import_ui24.Stack, { gap: 1 }, /* @__PURE__ */ React33.createElement(StylesField, { bind: "gap" }, /* @__PURE__ */ React33.createElement(import_editor_controls19.GapControl, { label: (0, import_i18n15.__)("Gaps", "elementor") })));
1584
1595
  };
1585
1596
 
1586
1597
  // src/components/style-sections/layout-section/justify-content-field.tsx
1587
- var React36 = __toESM(require("react"));
1598
+ var React34 = __toESM(require("react"));
1588
1599
  var import_editor_controls20 = require("@elementor/editor-controls");
1589
1600
  var import_icons13 = require("@elementor/icons");
1590
- var import_ui26 = require("@elementor/ui");
1601
+ var import_ui25 = require("@elementor/ui");
1591
1602
  var import_i18n16 = require("@wordpress/i18n");
1592
- var StartIcon3 = (0, import_ui26.withDirection)(import_icons13.JustifyTopIcon);
1593
- var EndIcon3 = (0, import_ui26.withDirection)(import_icons13.JustifyBottomIcon);
1603
+ var StartIcon3 = (0, import_ui25.withDirection)(import_icons13.JustifyTopIcon);
1604
+ var EndIcon3 = (0, import_ui25.withDirection)(import_icons13.JustifyBottomIcon);
1594
1605
  var iconProps3 = {
1595
1606
  isClockwise: true,
1596
1607
  offset: -90
@@ -1599,90 +1610,90 @@ var options4 = [
1599
1610
  {
1600
1611
  value: "start",
1601
1612
  label: (0, import_i18n16.__)("Start", "elementor"),
1602
- renderContent: ({ size }) => /* @__PURE__ */ React36.createElement(RotatedIcon, { icon: StartIcon3, size, ...iconProps3 }),
1613
+ renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(RotatedIcon, { icon: StartIcon3, size, ...iconProps3 }),
1603
1614
  showTooltip: true
1604
1615
  },
1605
1616
  {
1606
1617
  value: "center",
1607
1618
  label: (0, import_i18n16.__)("Center", "elementor"),
1608
- renderContent: ({ size }) => /* @__PURE__ */ React36.createElement(RotatedIcon, { icon: import_icons13.JustifyCenterIcon, size, ...iconProps3 }),
1619
+ renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(RotatedIcon, { icon: import_icons13.JustifyCenterIcon, size, ...iconProps3 }),
1609
1620
  showTooltip: true
1610
1621
  },
1611
1622
  {
1612
1623
  value: "end",
1613
1624
  label: (0, import_i18n16.__)("End", "elementor"),
1614
- renderContent: ({ size }) => /* @__PURE__ */ React36.createElement(RotatedIcon, { icon: EndIcon3, size, ...iconProps3 }),
1625
+ renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(RotatedIcon, { icon: EndIcon3, size, ...iconProps3 }),
1615
1626
  showTooltip: true
1616
1627
  },
1617
1628
  {
1618
1629
  value: "space-between",
1619
1630
  label: (0, import_i18n16.__)("Space between", "elementor"),
1620
- renderContent: ({ size }) => /* @__PURE__ */ React36.createElement(RotatedIcon, { icon: import_icons13.JustifySpaceBetweenVerticalIcon, size, ...iconProps3 }),
1631
+ renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(RotatedIcon, { icon: import_icons13.JustifySpaceBetweenVerticalIcon, size, ...iconProps3 }),
1621
1632
  showTooltip: true
1622
1633
  },
1623
1634
  {
1624
1635
  value: "space-around",
1625
1636
  label: (0, import_i18n16.__)("Space around", "elementor"),
1626
- renderContent: ({ size }) => /* @__PURE__ */ React36.createElement(RotatedIcon, { icon: import_icons13.JustifySpaceAroundVerticalIcon, size, ...iconProps3 }),
1637
+ renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(RotatedIcon, { icon: import_icons13.JustifySpaceAroundVerticalIcon, size, ...iconProps3 }),
1627
1638
  showTooltip: true
1628
1639
  },
1629
1640
  {
1630
1641
  value: "space-evenly",
1631
1642
  label: (0, import_i18n16.__)("Space evenly", "elementor"),
1632
- renderContent: ({ size }) => /* @__PURE__ */ React36.createElement(RotatedIcon, { icon: import_icons13.JustifyDistributeVerticalIcon, size, ...iconProps3 }),
1643
+ renderContent: ({ size }) => /* @__PURE__ */ React34.createElement(RotatedIcon, { icon: import_icons13.JustifyDistributeVerticalIcon, size, ...iconProps3 }),
1633
1644
  showTooltip: true
1634
1645
  }
1635
1646
  ];
1636
1647
  var JustifyContentField = () => {
1637
1648
  const { isSiteRtl } = useDirection();
1638
- return /* @__PURE__ */ React36.createElement(import_ui26.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React36.createElement(import_ui26.ThemeProvider, null, /* @__PURE__ */ React36.createElement(StylesField, { bind: "justify-content" }, /* @__PURE__ */ React36.createElement(import_ui26.Stack, { gap: 1 }, /* @__PURE__ */ React36.createElement(import_editor_controls20.ControlLabel, null, (0, import_i18n16.__)("Justify content", "elementor")), /* @__PURE__ */ React36.createElement(import_editor_controls20.ToggleControl, { options: options4, fullWidth: true })))));
1649
+ return /* @__PURE__ */ React34.createElement(import_ui25.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React34.createElement(import_ui25.ThemeProvider, null, /* @__PURE__ */ React34.createElement(StylesField, { bind: "justify-content" }, /* @__PURE__ */ React34.createElement(import_ui25.Stack, { gap: 1 }, /* @__PURE__ */ React34.createElement(import_editor_controls20.ControlLabel, null, (0, import_i18n16.__)("Justify content", "elementor")), /* @__PURE__ */ React34.createElement(import_editor_controls20.ToggleControl, { options: options4, fullWidth: true })))));
1639
1650
  };
1640
1651
 
1641
1652
  // src/components/style-sections/layout-section/wrap-field.tsx
1642
- var React37 = __toESM(require("react"));
1653
+ var React35 = __toESM(require("react"));
1643
1654
  var import_editor_controls21 = require("@elementor/editor-controls");
1644
1655
  var import_icons14 = require("@elementor/icons");
1645
- var import_ui27 = require("@elementor/ui");
1656
+ var import_ui26 = require("@elementor/ui");
1646
1657
  var import_i18n17 = require("@wordpress/i18n");
1647
1658
  var options5 = [
1648
1659
  {
1649
1660
  value: "nowrap",
1650
1661
  label: (0, import_i18n17.__)("No wrap", "elementor"),
1651
- renderContent: ({ size }) => /* @__PURE__ */ React37.createElement(import_icons14.ArrowRightIcon, { fontSize: size }),
1662
+ renderContent: ({ size }) => /* @__PURE__ */ React35.createElement(import_icons14.ArrowRightIcon, { fontSize: size }),
1652
1663
  showTooltip: true
1653
1664
  },
1654
1665
  {
1655
1666
  value: "wrap",
1656
1667
  label: (0, import_i18n17.__)("Wrap", "elementor"),
1657
- renderContent: ({ size }) => /* @__PURE__ */ React37.createElement(import_icons14.ArrowBackIcon, { fontSize: size }),
1668
+ renderContent: ({ size }) => /* @__PURE__ */ React35.createElement(import_icons14.ArrowBackIcon, { fontSize: size }),
1658
1669
  showTooltip: true
1659
1670
  },
1660
1671
  {
1661
1672
  value: "wrap-reverse",
1662
1673
  label: (0, import_i18n17.__)("Reversed wrap", "elementor"),
1663
- renderContent: ({ size }) => /* @__PURE__ */ React37.createElement(import_icons14.ArrowForwardIcon, { fontSize: size }),
1674
+ renderContent: ({ size }) => /* @__PURE__ */ React35.createElement(import_icons14.ArrowForwardIcon, { fontSize: size }),
1664
1675
  showTooltip: true
1665
1676
  }
1666
1677
  ];
1667
1678
  var WrapField = () => {
1668
1679
  const { isSiteRtl } = useDirection();
1669
- return /* @__PURE__ */ React37.createElement(import_ui27.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React37.createElement(import_ui27.ThemeProvider, null, /* @__PURE__ */ React37.createElement(StylesField, { bind: "flex-wrap" }, /* @__PURE__ */ React37.createElement(import_ui27.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React37.createElement(import_ui27.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React37.createElement(import_editor_controls21.ControlLabel, null, (0, import_i18n17.__)("Wrap", "elementor"))), /* @__PURE__ */ React37.createElement(import_ui27.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React37.createElement(import_editor_controls21.ToggleControl, { options: options5 }))))));
1680
+ return /* @__PURE__ */ React35.createElement(import_ui26.DirectionProvider, { rtl: isSiteRtl }, /* @__PURE__ */ React35.createElement(import_ui26.ThemeProvider, null, /* @__PURE__ */ React35.createElement(StylesField, { bind: "flex-wrap" }, /* @__PURE__ */ React35.createElement(import_ui26.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React35.createElement(import_ui26.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React35.createElement(import_editor_controls21.ControlLabel, null, (0, import_i18n17.__)("Wrap", "elementor"))), /* @__PURE__ */ React35.createElement(import_ui26.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React35.createElement(import_editor_controls21.ToggleControl, { options: options5 }))))));
1670
1681
  };
1671
1682
 
1672
1683
  // src/components/style-sections/layout-section/layout-section.tsx
1673
1684
  var LayoutSection = () => {
1674
1685
  const [display] = useStylesField("display");
1675
1686
  const { element } = useElement();
1676
- const parent = (0, import_editor_elements4.useParentElement)(element.id);
1687
+ const parent = (0, import_editor_elements5.useParentElement)(element.id);
1677
1688
  const parentStyle = useComputedStyle(parent?.id || null);
1678
- return /* @__PURE__ */ React38.createElement(import_ui28.Stack, { gap: 2 }, /* @__PURE__ */ React38.createElement(DisplayField, null), "flex" === display?.value && /* @__PURE__ */ React38.createElement(FlexFields, null), "flex" === parentStyle?.display && /* @__PURE__ */ React38.createElement(FlexChildFields, null));
1689
+ return /* @__PURE__ */ React36.createElement(import_ui27.Stack, { gap: 2 }, /* @__PURE__ */ React36.createElement(DisplayField, null), "flex" === display?.value && /* @__PURE__ */ React36.createElement(FlexFields, null), "flex" === parentStyle?.display && /* @__PURE__ */ React36.createElement(FlexChildFields, null));
1679
1690
  };
1680
- var FlexFields = () => /* @__PURE__ */ React38.createElement(React38.Fragment, null, /* @__PURE__ */ React38.createElement(FlexDirectionField, null), /* @__PURE__ */ React38.createElement(JustifyContentField, null), /* @__PURE__ */ React38.createElement(AlignItemsField, null), /* @__PURE__ */ React38.createElement(import_ui28.Divider, null), /* @__PURE__ */ React38.createElement(GapControlField, null), /* @__PURE__ */ React38.createElement(WrapField, null));
1681
- var FlexChildFields = () => /* @__PURE__ */ React38.createElement(React38.Fragment, null, /* @__PURE__ */ React38.createElement(import_ui28.Divider, null), /* @__PURE__ */ React38.createElement(import_editor_controls22.ControlLabel, null, (0, import_i18n18.__)("Flex child", "elementor")), /* @__PURE__ */ React38.createElement(AlignSelfChild, null), /* @__PURE__ */ React38.createElement(FlexOrderField, null), /* @__PURE__ */ React38.createElement(FlexSizeField, null));
1691
+ var FlexFields = () => /* @__PURE__ */ React36.createElement(React36.Fragment, null, /* @__PURE__ */ React36.createElement(FlexDirectionField, null), /* @__PURE__ */ React36.createElement(JustifyContentField, null), /* @__PURE__ */ React36.createElement(AlignItemsField, null), /* @__PURE__ */ React36.createElement(import_ui27.Divider, null), /* @__PURE__ */ React36.createElement(GapControlField, null), /* @__PURE__ */ React36.createElement(WrapField, null));
1692
+ var FlexChildFields = () => /* @__PURE__ */ React36.createElement(React36.Fragment, null, /* @__PURE__ */ React36.createElement(import_ui27.Divider, null), /* @__PURE__ */ React36.createElement(import_editor_controls22.ControlLabel, null, (0, import_i18n18.__)("Flex child", "elementor")), /* @__PURE__ */ React36.createElement(AlignSelfChild, null), /* @__PURE__ */ React36.createElement(FlexOrderField, null), /* @__PURE__ */ React36.createElement(FlexSizeField, null));
1682
1693
 
1683
1694
  // src/components/style-sections/position-section/position-section.tsx
1684
- var React42 = __toESM(require("react"));
1685
- var import_ui32 = require("@elementor/ui");
1695
+ var React40 = __toESM(require("react"));
1696
+ var import_ui31 = require("@elementor/ui");
1686
1697
 
1687
1698
  // src/hooks/use-session-storage.ts
1688
1699
  var import_react13 = require("react");
@@ -1722,28 +1733,28 @@ var subscribeToSessionStorage = (key, subscriber) => {
1722
1733
  };
1723
1734
 
1724
1735
  // src/components/style-sections/position-section/dimensions-field.tsx
1725
- var React39 = __toESM(require("react"));
1736
+ var React37 = __toESM(require("react"));
1726
1737
  var import_editor_controls23 = require("@elementor/editor-controls");
1727
1738
  var import_icons15 = require("@elementor/icons");
1728
- var import_ui29 = require("@elementor/ui");
1739
+ var import_ui28 = require("@elementor/ui");
1729
1740
  var import_i18n19 = require("@wordpress/i18n");
1730
1741
  var sideIcons = {
1731
- left: /* @__PURE__ */ React39.createElement(import_icons15.SideLeftIcon, { fontSize: "tiny" }),
1732
- right: /* @__PURE__ */ React39.createElement(import_icons15.SideRightIcon, { fontSize: "tiny" }),
1733
- top: /* @__PURE__ */ React39.createElement(import_icons15.SideTopIcon, { fontSize: "tiny" }),
1734
- bottom: /* @__PURE__ */ React39.createElement(import_icons15.SideBottomIcon, { fontSize: "tiny" })
1742
+ left: /* @__PURE__ */ React37.createElement(import_icons15.SideLeftIcon, { fontSize: "tiny" }),
1743
+ right: /* @__PURE__ */ React37.createElement(import_icons15.SideRightIcon, { fontSize: "tiny" }),
1744
+ top: /* @__PURE__ */ React37.createElement(import_icons15.SideTopIcon, { fontSize: "tiny" }),
1745
+ bottom: /* @__PURE__ */ React37.createElement(import_icons15.SideBottomIcon, { fontSize: "tiny" })
1735
1746
  };
1736
1747
  var DimensionsField = () => {
1737
- return /* @__PURE__ */ React39.createElement(React39.Fragment, null, /* @__PURE__ */ React39.createElement(import_ui29.Stack, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React39.createElement(DimensionField, { side: "top", label: (0, import_i18n19.__)("Top", "elementor") }), /* @__PURE__ */ React39.createElement(DimensionField, { side: "right", label: (0, import_i18n19.__)("Right", "elementor") })), /* @__PURE__ */ React39.createElement(import_ui29.Stack, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React39.createElement(DimensionField, { side: "bottom", label: (0, import_i18n19.__)("Bottom", "elementor") }), /* @__PURE__ */ React39.createElement(DimensionField, { side: "left", label: (0, import_i18n19.__)("Left", "elementor") })));
1748
+ return /* @__PURE__ */ React37.createElement(React37.Fragment, null, /* @__PURE__ */ React37.createElement(import_ui28.Stack, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React37.createElement(DimensionField, { side: "top", label: (0, import_i18n19.__)("Top", "elementor") }), /* @__PURE__ */ React37.createElement(DimensionField, { side: "right", label: (0, import_i18n19.__)("Right", "elementor") })), /* @__PURE__ */ React37.createElement(import_ui28.Stack, { direction: "row", gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React37.createElement(DimensionField, { side: "bottom", label: (0, import_i18n19.__)("Bottom", "elementor") }), /* @__PURE__ */ React37.createElement(DimensionField, { side: "left", label: (0, import_i18n19.__)("Left", "elementor") })));
1738
1749
  };
1739
1750
  var DimensionField = ({ side, label }) => {
1740
- return /* @__PURE__ */ React39.createElement(import_ui29.Grid, { container: true, gap: 1, alignItems: "center" }, /* @__PURE__ */ React39.createElement(import_ui29.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React39.createElement(import_editor_controls23.ControlLabel, null, label)), /* @__PURE__ */ React39.createElement(import_ui29.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React39.createElement(StylesField, { bind: side }, /* @__PURE__ */ React39.createElement(import_editor_controls23.SizeControl, { startIcon: sideIcons[side] }))));
1751
+ return /* @__PURE__ */ React37.createElement(import_ui28.Grid, { container: true, gap: 1, alignItems: "center" }, /* @__PURE__ */ React37.createElement(import_ui28.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React37.createElement(import_editor_controls23.ControlLabel, null, label)), /* @__PURE__ */ React37.createElement(import_ui28.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React37.createElement(StylesField, { bind: side }, /* @__PURE__ */ React37.createElement(import_editor_controls23.SizeControl, { startIcon: sideIcons[side] }))));
1741
1752
  };
1742
1753
 
1743
1754
  // src/components/style-sections/position-section/position-field.tsx
1744
- var React40 = __toESM(require("react"));
1755
+ var React38 = __toESM(require("react"));
1745
1756
  var import_editor_controls24 = require("@elementor/editor-controls");
1746
- var import_ui30 = require("@elementor/ui");
1757
+ var import_ui29 = require("@elementor/ui");
1747
1758
  var import_i18n20 = require("@wordpress/i18n");
1748
1759
  var positionOptions = [
1749
1760
  { label: (0, import_i18n20.__)("Static", "elementor"), value: "static" },
@@ -1753,16 +1764,16 @@ var positionOptions = [
1753
1764
  { label: (0, import_i18n20.__)("Sticky", "elementor"), value: "sticky" }
1754
1765
  ];
1755
1766
  var PositionField = ({ onChange }) => {
1756
- return /* @__PURE__ */ React40.createElement(StylesField, { bind: "position" }, /* @__PURE__ */ React40.createElement(import_ui30.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React40.createElement(import_ui30.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React40.createElement(import_editor_controls24.ControlLabel, null, (0, import_i18n20.__)("Position", "elementor"))), /* @__PURE__ */ React40.createElement(import_ui30.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React40.createElement(import_editor_controls24.SelectControl, { options: positionOptions, onChange }))));
1767
+ return /* @__PURE__ */ React38.createElement(StylesField, { bind: "position" }, /* @__PURE__ */ React38.createElement(import_ui29.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React38.createElement(import_ui29.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React38.createElement(import_editor_controls24.ControlLabel, null, (0, import_i18n20.__)("Position", "elementor"))), /* @__PURE__ */ React38.createElement(import_ui29.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React38.createElement(import_editor_controls24.SelectControl, { options: positionOptions, onChange }))));
1757
1768
  };
1758
1769
 
1759
1770
  // src/components/style-sections/position-section/z-index-field.tsx
1760
- var React41 = __toESM(require("react"));
1771
+ var React39 = __toESM(require("react"));
1761
1772
  var import_editor_controls25 = require("@elementor/editor-controls");
1762
- var import_ui31 = require("@elementor/ui");
1773
+ var import_ui30 = require("@elementor/ui");
1763
1774
  var import_i18n21 = require("@wordpress/i18n");
1764
1775
  var ZIndexField = () => {
1765
- return /* @__PURE__ */ React41.createElement(StylesField, { bind: "z-index" }, /* @__PURE__ */ React41.createElement(import_ui31.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React41.createElement(import_ui31.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React41.createElement(import_editor_controls25.ControlLabel, null, (0, import_i18n21.__)("Z-Index", "elementor"))), /* @__PURE__ */ React41.createElement(import_ui31.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React41.createElement(import_editor_controls25.NumberControl, null))));
1776
+ return /* @__PURE__ */ React39.createElement(StylesField, { bind: "z-index" }, /* @__PURE__ */ React39.createElement(import_ui30.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React39.createElement(import_ui30.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React39.createElement(import_editor_controls25.ControlLabel, null, (0, import_i18n21.__)("Z-Index", "elementor"))), /* @__PURE__ */ React39.createElement(import_ui30.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React39.createElement(import_editor_controls25.NumberControl, null))));
1766
1777
  };
1767
1778
 
1768
1779
  // src/components/style-sections/position-section/position-section.tsx
@@ -1794,7 +1805,7 @@ var PositionSection = () => {
1794
1805
  }
1795
1806
  };
1796
1807
  const isNotStatic = positionValue && positionValue?.value !== "static";
1797
- return /* @__PURE__ */ React42.createElement(import_ui32.Stack, { gap: 1.5 }, /* @__PURE__ */ React42.createElement(PositionField, { onChange: onPositionChange }), isNotStatic ? /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement(DimensionsField, null), /* @__PURE__ */ React42.createElement(ZIndexField, null)) : null);
1808
+ return /* @__PURE__ */ React40.createElement(import_ui31.Stack, { gap: 1.5 }, /* @__PURE__ */ React40.createElement(PositionField, { onChange: onPositionChange }), isNotStatic ? /* @__PURE__ */ React40.createElement(React40.Fragment, null, /* @__PURE__ */ React40.createElement(DimensionsField, null), /* @__PURE__ */ React40.createElement(ZIndexField, null)) : null);
1798
1809
  };
1799
1810
  var usePersistDimensions = () => {
1800
1811
  const { id: styleDefID, meta } = useStyle();
@@ -1804,90 +1815,90 @@ var usePersistDimensions = () => {
1804
1815
  };
1805
1816
 
1806
1817
  // src/components/style-sections/size-section/size-section.tsx
1807
- var React44 = __toESM(require("react"));
1818
+ var React42 = __toESM(require("react"));
1808
1819
  var import_editor_controls27 = require("@elementor/editor-controls");
1809
- var import_ui34 = require("@elementor/ui");
1820
+ var import_ui33 = require("@elementor/ui");
1810
1821
  var import_i18n23 = require("@wordpress/i18n");
1811
1822
 
1812
1823
  // src/components/style-sections/size-section/overflow-field.tsx
1813
- var React43 = __toESM(require("react"));
1824
+ var React41 = __toESM(require("react"));
1814
1825
  var import_editor_controls26 = require("@elementor/editor-controls");
1815
1826
  var import_icons16 = require("@elementor/icons");
1816
- var import_ui33 = require("@elementor/ui");
1827
+ var import_ui32 = require("@elementor/ui");
1817
1828
  var import_i18n22 = require("@wordpress/i18n");
1818
1829
  var options6 = [
1819
1830
  {
1820
1831
  value: "visible",
1821
1832
  label: (0, import_i18n22.__)("Visible", "elementor"),
1822
- renderContent: ({ size }) => /* @__PURE__ */ React43.createElement(import_icons16.EyeIcon, { fontSize: size }),
1833
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(import_icons16.EyeIcon, { fontSize: size }),
1823
1834
  showTooltip: true
1824
1835
  },
1825
1836
  {
1826
1837
  value: "hidden",
1827
1838
  label: (0, import_i18n22.__)("Hidden", "elementor"),
1828
- renderContent: ({ size }) => /* @__PURE__ */ React43.createElement(import_icons16.EyeOffIcon, { fontSize: size }),
1839
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(import_icons16.EyeOffIcon, { fontSize: size }),
1829
1840
  showTooltip: true
1830
1841
  },
1831
1842
  {
1832
1843
  value: "auto",
1833
1844
  label: (0, import_i18n22.__)("Auto", "elementor"),
1834
- renderContent: ({ size }) => /* @__PURE__ */ React43.createElement(import_icons16.ExpandBottomIcon, { fontSize: size }),
1845
+ renderContent: ({ size }) => /* @__PURE__ */ React41.createElement(import_icons16.ExpandBottomIcon, { fontSize: size }),
1835
1846
  showTooltip: true
1836
1847
  }
1837
1848
  ];
1838
1849
  var OverflowField = () => {
1839
- return /* @__PURE__ */ React43.createElement(StylesField, { bind: "overflow" }, /* @__PURE__ */ React43.createElement(import_ui33.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React43.createElement(import_ui33.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React43.createElement(import_editor_controls26.ControlLabel, null, (0, import_i18n22.__)("Overflow", "elementor"))), /* @__PURE__ */ React43.createElement(import_ui33.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React43.createElement(import_editor_controls26.ToggleControl, { options: options6 }))));
1850
+ return /* @__PURE__ */ React41.createElement(StylesField, { bind: "overflow" }, /* @__PURE__ */ React41.createElement(import_ui32.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React41.createElement(import_ui32.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React41.createElement(import_editor_controls26.ControlLabel, null, (0, import_i18n22.__)("Overflow", "elementor"))), /* @__PURE__ */ React41.createElement(import_ui32.Grid, { item: true, xs: 6, sx: { display: "flex", justifyContent: "flex-end" } }, /* @__PURE__ */ React41.createElement(import_editor_controls26.ToggleControl, { options: options6 }))));
1840
1851
  };
1841
1852
 
1842
1853
  // src/components/style-sections/size-section/size-section.tsx
1843
1854
  var SizeSection = () => {
1844
- return /* @__PURE__ */ React44.createElement(import_ui34.Stack, { gap: 1.5 }, /* @__PURE__ */ React44.createElement(import_ui34.Grid, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React44.createElement(SizeField, { bind: "width", label: (0, import_i18n23.__)("Width", "elementor") })), /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React44.createElement(SizeField, { bind: "height", label: (0, import_i18n23.__)("Height", "elementor") }))), /* @__PURE__ */ React44.createElement(import_ui34.Grid, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React44.createElement(SizeField, { bind: "min-width", label: (0, import_i18n23.__)("Min. Width", "elementor") })), /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React44.createElement(SizeField, { bind: "min-height", label: (0, import_i18n23.__)("Min. Height", "elementor") }))), /* @__PURE__ */ React44.createElement(import_ui34.Grid, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React44.createElement(SizeField, { bind: "max-width", label: (0, import_i18n23.__)("Max. Width", "elementor") })), /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React44.createElement(SizeField, { bind: "max-height", label: (0, import_i18n23.__)("Max. Height", "elementor") }))), /* @__PURE__ */ React44.createElement(import_ui34.Divider, null), /* @__PURE__ */ React44.createElement(import_ui34.Stack, null, /* @__PURE__ */ React44.createElement(OverflowField, null)));
1855
+ return /* @__PURE__ */ React42.createElement(import_ui33.Stack, { gap: 1.5 }, /* @__PURE__ */ React42.createElement(import_ui33.Grid, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(SizeField, { bind: "width", label: (0, import_i18n23.__)("Width", "elementor") })), /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(SizeField, { bind: "height", label: (0, import_i18n23.__)("Height", "elementor") }))), /* @__PURE__ */ React42.createElement(import_ui33.Grid, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(SizeField, { bind: "min-width", label: (0, import_i18n23.__)("Min. Width", "elementor") })), /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(SizeField, { bind: "min-height", label: (0, import_i18n23.__)("Min. Height", "elementor") }))), /* @__PURE__ */ React42.createElement(import_ui33.Grid, { container: true, gap: 2, flexWrap: "nowrap" }, /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(SizeField, { bind: "max-width", label: (0, import_i18n23.__)("Max. Width", "elementor") })), /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React42.createElement(SizeField, { bind: "max-height", label: (0, import_i18n23.__)("Max. Height", "elementor") }))), /* @__PURE__ */ React42.createElement(import_ui33.Divider, null), /* @__PURE__ */ React42.createElement(import_ui33.Stack, null, /* @__PURE__ */ React42.createElement(OverflowField, null)));
1845
1856
  };
1846
1857
  var SizeField = ({ label, bind }) => {
1847
- return /* @__PURE__ */ React44.createElement(StylesField, { bind }, /* @__PURE__ */ React44.createElement(import_ui34.Grid, { container: true, gap: 1, alignItems: "center" }, /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React44.createElement(import_editor_controls27.ControlLabel, null, label)), /* @__PURE__ */ React44.createElement(import_ui34.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React44.createElement(import_editor_controls27.SizeControl, null))));
1858
+ return /* @__PURE__ */ React42.createElement(StylesField, { bind }, /* @__PURE__ */ React42.createElement(import_ui33.Grid, { container: true, gap: 1, alignItems: "center" }, /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React42.createElement(import_editor_controls27.ControlLabel, null, label)), /* @__PURE__ */ React42.createElement(import_ui33.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React42.createElement(import_editor_controls27.SizeControl, null))));
1848
1859
  };
1849
1860
 
1850
1861
  // src/components/style-sections/spacing-section/spacing-section.tsx
1851
- var React45 = __toESM(require("react"));
1862
+ var React43 = __toESM(require("react"));
1852
1863
  var import_editor_controls28 = require("@elementor/editor-controls");
1853
- var import_ui35 = require("@elementor/ui");
1864
+ var import_ui34 = require("@elementor/ui");
1854
1865
  var import_i18n24 = require("@wordpress/i18n");
1855
1866
  var SpacingSection = () => {
1856
- return /* @__PURE__ */ React45.createElement(import_ui35.Stack, { gap: 1.5 }, /* @__PURE__ */ React45.createElement(StylesField, { bind: "padding" }, /* @__PURE__ */ React45.createElement(import_editor_controls28.LinkedDimensionsControl, { label: (0, import_i18n24.__)("Padding", "elementor") })), /* @__PURE__ */ React45.createElement(import_ui35.Divider, null), /* @__PURE__ */ React45.createElement(StylesField, { bind: "margin" }, /* @__PURE__ */ React45.createElement(import_editor_controls28.LinkedDimensionsControl, { label: (0, import_i18n24.__)("Margin", "elementor") })));
1867
+ return /* @__PURE__ */ React43.createElement(import_ui34.Stack, { gap: 1.5 }, /* @__PURE__ */ React43.createElement(StylesField, { bind: "padding" }, /* @__PURE__ */ React43.createElement(import_editor_controls28.LinkedDimensionsControl, { label: (0, import_i18n24.__)("Padding", "elementor") })), /* @__PURE__ */ React43.createElement(import_ui34.Divider, null), /* @__PURE__ */ React43.createElement(StylesField, { bind: "margin" }, /* @__PURE__ */ React43.createElement(import_editor_controls28.LinkedDimensionsControl, { label: (0, import_i18n24.__)("Margin", "elementor") })));
1857
1868
  };
1858
1869
 
1859
1870
  // src/components/style-sections/typography-section/typography-section.tsx
1860
- var React59 = __toESM(require("react"));
1861
- var import_ui48 = require("@elementor/ui");
1871
+ var React57 = __toESM(require("react"));
1872
+ var import_ui47 = require("@elementor/ui");
1862
1873
 
1863
1874
  // src/components/collapsible-content.tsx
1864
- var React46 = __toESM(require("react"));
1875
+ var React44 = __toESM(require("react"));
1865
1876
  var import_react14 = require("react");
1866
- var import_ui36 = require("@elementor/ui");
1877
+ var import_ui35 = require("@elementor/ui");
1867
1878
  var import_i18n25 = require("@wordpress/i18n");
1868
1879
  var CollapsibleContent = ({ children, defaultOpen = false }) => {
1869
1880
  const [open, setOpen] = (0, import_react14.useState)(defaultOpen);
1870
1881
  const handleToggle = () => {
1871
1882
  setOpen((prevOpen) => !prevOpen);
1872
1883
  };
1873
- return /* @__PURE__ */ React46.createElement(import_ui36.Stack, { sx: { py: 0.5 } }, /* @__PURE__ */ React46.createElement(
1874
- import_ui36.Button,
1884
+ return /* @__PURE__ */ React44.createElement(import_ui35.Stack, { sx: { py: 0.5 } }, /* @__PURE__ */ React44.createElement(
1885
+ import_ui35.Button,
1875
1886
  {
1876
1887
  fullWidth: true,
1877
1888
  size: "small",
1878
1889
  color: "secondary",
1879
1890
  variant: "outlined",
1880
1891
  onClick: handleToggle,
1881
- endIcon: /* @__PURE__ */ React46.createElement(CollapseIcon, { open })
1892
+ endIcon: /* @__PURE__ */ React44.createElement(CollapseIcon, { open })
1882
1893
  },
1883
1894
  open ? (0, import_i18n25.__)("Show less", "elementor") : (0, import_i18n25.__)("Show more", "elementor")
1884
- ), /* @__PURE__ */ React46.createElement(import_ui36.Collapse, { in: open, timeout: "auto", unmountOnExit: true }, children));
1895
+ ), /* @__PURE__ */ React44.createElement(import_ui35.Collapse, { in: open, timeout: "auto", unmountOnExit: true }, children));
1885
1896
  };
1886
1897
 
1887
1898
  // src/components/style-sections/typography-section/font-family-field.tsx
1888
- var React47 = __toESM(require("react"));
1899
+ var React45 = __toESM(require("react"));
1889
1900
  var import_editor_controls29 = require("@elementor/editor-controls");
1890
- var import_ui37 = require("@elementor/ui");
1901
+ var import_ui36 = require("@elementor/ui");
1891
1902
  var import_i18n26 = require("@wordpress/i18n");
1892
1903
 
1893
1904
  // src/sync/get-elementor-config.ts
@@ -1902,7 +1913,7 @@ var FontFamilyField = () => {
1902
1913
  if (!fontFamilies) {
1903
1914
  return null;
1904
1915
  }
1905
- return /* @__PURE__ */ React47.createElement(StylesField, { bind: "font-family" }, /* @__PURE__ */ React47.createElement(import_ui37.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React47.createElement(import_ui37.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(import_editor_controls29.ControlLabel, null, (0, import_i18n26.__)("Font Family", "elementor"))), /* @__PURE__ */ React47.createElement(import_ui37.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(import_editor_controls29.FontFamilyControl, { fontFamilies }))));
1916
+ return /* @__PURE__ */ React45.createElement(StylesField, { bind: "font-family" }, /* @__PURE__ */ React45.createElement(import_ui36.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React45.createElement(import_ui36.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React45.createElement(import_editor_controls29.ControlLabel, null, (0, import_i18n26.__)("Font Family", "elementor"))), /* @__PURE__ */ React45.createElement(import_ui36.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React45.createElement(import_editor_controls29.FontFamilyControl, { fontFamilies }))));
1906
1917
  };
1907
1918
  var getFontFamilies = () => {
1908
1919
  const { controls } = getElementorConfig();
@@ -1914,18 +1925,18 @@ var getFontFamilies = () => {
1914
1925
  };
1915
1926
 
1916
1927
  // src/components/style-sections/typography-section/font-size-field.tsx
1917
- var React48 = __toESM(require("react"));
1928
+ var React46 = __toESM(require("react"));
1918
1929
  var import_editor_controls30 = require("@elementor/editor-controls");
1919
- var import_ui38 = require("@elementor/ui");
1930
+ var import_ui37 = require("@elementor/ui");
1920
1931
  var import_i18n27 = require("@wordpress/i18n");
1921
1932
  var FontSizeField = () => {
1922
- return /* @__PURE__ */ React48.createElement(StylesField, { bind: "font-size" }, /* @__PURE__ */ React48.createElement(import_ui38.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React48.createElement(import_ui38.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React48.createElement(import_editor_controls30.ControlLabel, null, (0, import_i18n27.__)("Font Size", "elementor"))), /* @__PURE__ */ React48.createElement(import_ui38.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React48.createElement(import_editor_controls30.SizeControl, null))));
1933
+ return /* @__PURE__ */ React46.createElement(StylesField, { bind: "font-size" }, /* @__PURE__ */ React46.createElement(import_ui37.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React46.createElement(import_ui37.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(import_editor_controls30.ControlLabel, null, (0, import_i18n27.__)("Font Size", "elementor"))), /* @__PURE__ */ React46.createElement(import_ui37.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React46.createElement(import_editor_controls30.SizeControl, null))));
1923
1934
  };
1924
1935
 
1925
1936
  // src/components/style-sections/typography-section/font-weight-field.tsx
1926
- var React49 = __toESM(require("react"));
1937
+ var React47 = __toESM(require("react"));
1927
1938
  var import_editor_controls31 = require("@elementor/editor-controls");
1928
- var import_ui39 = require("@elementor/ui");
1939
+ var import_ui38 = require("@elementor/ui");
1929
1940
  var import_i18n28 = require("@wordpress/i18n");
1930
1941
  var fontWeightOptions = [
1931
1942
  { label: (0, import_i18n28.__)("Light - 400", "elementor"), value: "400" },
@@ -1935,92 +1946,92 @@ var fontWeightOptions = [
1935
1946
  { label: (0, import_i18n28.__)("Black - 900", "elementor"), value: "900" }
1936
1947
  ];
1937
1948
  var FontWeightField = () => {
1938
- return /* @__PURE__ */ React49.createElement(StylesField, { bind: "font-weight" }, /* @__PURE__ */ React49.createElement(import_ui39.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React49.createElement(import_ui39.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React49.createElement(import_editor_controls31.ControlLabel, null, (0, import_i18n28.__)("Font Weight", "elementor"))), /* @__PURE__ */ React49.createElement(import_ui39.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React49.createElement(import_editor_controls31.SelectControl, { options: fontWeightOptions }))));
1949
+ return /* @__PURE__ */ React47.createElement(StylesField, { bind: "font-weight" }, /* @__PURE__ */ React47.createElement(import_ui38.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React47.createElement(import_ui38.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(import_editor_controls31.ControlLabel, null, (0, import_i18n28.__)("Font Weight", "elementor"))), /* @__PURE__ */ React47.createElement(import_ui38.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React47.createElement(import_editor_controls31.SelectControl, { options: fontWeightOptions }))));
1939
1950
  };
1940
1951
 
1941
1952
  // src/components/style-sections/typography-section/letter-spacing-field.tsx
1942
- var React50 = __toESM(require("react"));
1953
+ var React48 = __toESM(require("react"));
1943
1954
  var import_editor_controls32 = require("@elementor/editor-controls");
1944
- var import_ui40 = require("@elementor/ui");
1955
+ var import_ui39 = require("@elementor/ui");
1945
1956
  var import_i18n29 = require("@wordpress/i18n");
1946
1957
  var LetterSpacingField = () => {
1947
- return /* @__PURE__ */ React50.createElement(StylesField, { bind: "letter-spacing" }, /* @__PURE__ */ React50.createElement(import_ui40.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React50.createElement(import_ui40.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React50.createElement(import_editor_controls32.ControlLabel, null, (0, import_i18n29.__)("Letter Spacing", "elementor"))), /* @__PURE__ */ React50.createElement(import_ui40.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React50.createElement(import_editor_controls32.SizeControl, null))));
1958
+ return /* @__PURE__ */ React48.createElement(StylesField, { bind: "letter-spacing" }, /* @__PURE__ */ React48.createElement(import_ui39.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React48.createElement(import_ui39.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React48.createElement(import_editor_controls32.ControlLabel, null, (0, import_i18n29.__)("Letter Spacing", "elementor"))), /* @__PURE__ */ React48.createElement(import_ui39.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React48.createElement(import_editor_controls32.SizeControl, null))));
1948
1959
  };
1949
1960
 
1950
1961
  // src/components/style-sections/typography-section/line-height-field.tsx
1951
- var React51 = __toESM(require("react"));
1962
+ var React49 = __toESM(require("react"));
1952
1963
  var import_editor_controls33 = require("@elementor/editor-controls");
1953
- var import_ui41 = require("@elementor/ui");
1964
+ var import_ui40 = require("@elementor/ui");
1954
1965
  var import_i18n30 = require("@wordpress/i18n");
1955
1966
  var LineHeightField = () => {
1956
- return /* @__PURE__ */ React51.createElement(StylesField, { bind: "line-height" }, /* @__PURE__ */ React51.createElement(import_ui41.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React51.createElement(import_ui41.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React51.createElement(import_editor_controls33.ControlLabel, null, (0, import_i18n30.__)("Line Height", "elementor"))), /* @__PURE__ */ React51.createElement(import_ui41.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React51.createElement(import_editor_controls33.SizeControl, null))));
1967
+ return /* @__PURE__ */ React49.createElement(StylesField, { bind: "line-height" }, /* @__PURE__ */ React49.createElement(import_ui40.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React49.createElement(import_ui40.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React49.createElement(import_editor_controls33.ControlLabel, null, (0, import_i18n30.__)("Line Height", "elementor"))), /* @__PURE__ */ React49.createElement(import_ui40.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React49.createElement(import_editor_controls33.SizeControl, null))));
1957
1968
  };
1958
1969
 
1959
1970
  // src/components/style-sections/typography-section/text-alignment-field.tsx
1960
- var React52 = __toESM(require("react"));
1971
+ var React50 = __toESM(require("react"));
1961
1972
  var import_editor_controls34 = require("@elementor/editor-controls");
1962
1973
  var import_icons17 = require("@elementor/icons");
1963
- var import_ui42 = require("@elementor/ui");
1974
+ var import_ui41 = require("@elementor/ui");
1964
1975
  var import_i18n31 = require("@wordpress/i18n");
1965
1976
  var options7 = [
1966
1977
  {
1967
1978
  value: "left",
1968
1979
  label: (0, import_i18n31.__)("Left", "elementor"),
1969
- renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(import_icons17.AlignLeftIcon, { fontSize: size })
1980
+ renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(import_icons17.AlignLeftIcon, { fontSize: size })
1970
1981
  },
1971
1982
  {
1972
1983
  value: "center",
1973
1984
  label: (0, import_i18n31.__)("Center", "elementor"),
1974
- renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(import_icons17.AlignCenterIcon, { fontSize: size })
1985
+ renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(import_icons17.AlignCenterIcon, { fontSize: size })
1975
1986
  },
1976
1987
  {
1977
1988
  value: "right",
1978
1989
  label: (0, import_i18n31.__)("Right", "elementor"),
1979
- renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(import_icons17.AlignRightIcon, { fontSize: size })
1990
+ renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(import_icons17.AlignRightIcon, { fontSize: size })
1980
1991
  },
1981
1992
  {
1982
1993
  value: "justify",
1983
1994
  label: (0, import_i18n31.__)("Justify", "elementor"),
1984
- renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(import_icons17.AlignJustifiedIcon, { fontSize: size })
1995
+ renderContent: ({ size }) => /* @__PURE__ */ React50.createElement(import_icons17.AlignJustifiedIcon, { fontSize: size })
1985
1996
  }
1986
1997
  ];
1987
1998
  var TextAlignmentField = () => {
1988
- return /* @__PURE__ */ React52.createElement(StylesField, { bind: "text-align" }, /* @__PURE__ */ React52.createElement(import_ui42.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React52.createElement(import_ui42.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React52.createElement(import_editor_controls34.ControlLabel, null, (0, import_i18n31.__)("Alignment", "elementor"))), /* @__PURE__ */ React52.createElement(import_ui42.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React52.createElement(import_editor_controls34.ToggleControl, { options: options7 }))));
1999
+ return /* @__PURE__ */ React50.createElement(StylesField, { bind: "text-align" }, /* @__PURE__ */ React50.createElement(import_ui41.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React50.createElement(import_ui41.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React50.createElement(import_editor_controls34.ControlLabel, null, (0, import_i18n31.__)("Alignment", "elementor"))), /* @__PURE__ */ React50.createElement(import_ui41.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React50.createElement(import_editor_controls34.ToggleControl, { options: options7 }))));
1989
2000
  };
1990
2001
 
1991
2002
  // src/components/style-sections/typography-section/text-color-field.tsx
1992
- var React53 = __toESM(require("react"));
2003
+ var React51 = __toESM(require("react"));
1993
2004
  var import_editor_controls35 = require("@elementor/editor-controls");
1994
- var import_ui43 = require("@elementor/ui");
2005
+ var import_ui42 = require("@elementor/ui");
1995
2006
  var import_i18n32 = require("@wordpress/i18n");
1996
2007
  var TextColorField = () => {
1997
- return /* @__PURE__ */ React53.createElement(StylesField, { bind: "color" }, /* @__PURE__ */ React53.createElement(import_ui43.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React53.createElement(import_ui43.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React53.createElement(import_editor_controls35.ControlLabel, null, (0, import_i18n32.__)("Text Color", "elementor"))), /* @__PURE__ */ React53.createElement(import_ui43.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React53.createElement(import_editor_controls35.ColorControl, null))));
2008
+ return /* @__PURE__ */ React51.createElement(StylesField, { bind: "color" }, /* @__PURE__ */ React51.createElement(import_ui42.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React51.createElement(import_ui42.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React51.createElement(import_editor_controls35.ControlLabel, null, (0, import_i18n32.__)("Text Color", "elementor"))), /* @__PURE__ */ React51.createElement(import_ui42.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React51.createElement(import_editor_controls35.ColorControl, null))));
1998
2009
  };
1999
2010
 
2000
2011
  // src/components/style-sections/typography-section/text-direction-field.tsx
2001
- var React54 = __toESM(require("react"));
2012
+ var React52 = __toESM(require("react"));
2002
2013
  var import_editor_controls36 = require("@elementor/editor-controls");
2003
2014
  var import_icons18 = require("@elementor/icons");
2004
- var import_ui44 = require("@elementor/ui");
2015
+ var import_ui43 = require("@elementor/ui");
2005
2016
  var import_i18n33 = require("@wordpress/i18n");
2006
2017
  var options8 = [
2007
2018
  {
2008
2019
  value: "ltr",
2009
2020
  label: (0, import_i18n33.__)("Left to Right", "elementor"),
2010
- renderContent: ({ size }) => /* @__PURE__ */ React54.createElement(import_icons18.TextDirectionLtrIcon, { fontSize: size })
2021
+ renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(import_icons18.TextDirectionLtrIcon, { fontSize: size })
2011
2022
  },
2012
2023
  {
2013
2024
  value: "rtl",
2014
2025
  label: (0, import_i18n33.__)("Right to Left", "elementor"),
2015
- renderContent: ({ size }) => /* @__PURE__ */ React54.createElement(import_icons18.TextDirectionRtlIcon, { fontSize: size })
2026
+ renderContent: ({ size }) => /* @__PURE__ */ React52.createElement(import_icons18.TextDirectionRtlIcon, { fontSize: size })
2016
2027
  }
2017
2028
  ];
2018
2029
  var TextDirectionField = () => {
2019
- return /* @__PURE__ */ React54.createElement(StylesField, { bind: "direction" }, /* @__PURE__ */ React54.createElement(import_ui44.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React54.createElement(import_ui44.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React54.createElement(import_editor_controls36.ControlLabel, null, (0, import_i18n33.__)("Direction", "elementor"))), /* @__PURE__ */ React54.createElement(import_ui44.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React54.createElement(import_editor_controls36.ToggleControl, { options: options8 }))));
2030
+ return /* @__PURE__ */ React52.createElement(StylesField, { bind: "direction" }, /* @__PURE__ */ React52.createElement(import_ui43.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React52.createElement(import_ui43.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React52.createElement(import_editor_controls36.ControlLabel, null, (0, import_i18n33.__)("Direction", "elementor"))), /* @__PURE__ */ React52.createElement(import_ui43.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React52.createElement(import_editor_controls36.ToggleControl, { options: options8 }))));
2020
2031
  };
2021
2032
 
2022
2033
  // src/components/style-sections/typography-section/text-stroke-field.tsx
2023
- var React55 = __toESM(require("react"));
2034
+ var React53 = __toESM(require("react"));
2024
2035
  var import_editor_controls37 = require("@elementor/editor-controls");
2025
2036
  var import_i18n34 = require("@wordpress/i18n");
2026
2037
  var initTextStroke = {
@@ -2048,7 +2059,7 @@ var TextStrokeField = () => {
2048
2059
  setTextStroke(null);
2049
2060
  };
2050
2061
  const hasTextStroke = Boolean(textStroke);
2051
- return /* @__PURE__ */ React55.createElement(
2062
+ return /* @__PURE__ */ React53.createElement(
2052
2063
  AddOrRemoveContent,
2053
2064
  {
2054
2065
  label: (0, import_i18n34.__)("Text Stroke", "elementor"),
@@ -2056,15 +2067,15 @@ var TextStrokeField = () => {
2056
2067
  onAdd: addTextStroke,
2057
2068
  onRemove: removeTextStroke
2058
2069
  },
2059
- /* @__PURE__ */ React55.createElement(StylesField, { bind: "-webkit-text-stroke" }, /* @__PURE__ */ React55.createElement(import_editor_controls37.StrokeControl, null))
2070
+ /* @__PURE__ */ React53.createElement(StylesField, { bind: "-webkit-text-stroke" }, /* @__PURE__ */ React53.createElement(import_editor_controls37.StrokeControl, null))
2060
2071
  );
2061
2072
  };
2062
2073
 
2063
2074
  // src/components/style-sections/typography-section/text-style-field.tsx
2064
- var React56 = __toESM(require("react"));
2075
+ var React54 = __toESM(require("react"));
2065
2076
  var import_editor_controls38 = require("@elementor/editor-controls");
2066
2077
  var import_icons19 = require("@elementor/icons");
2067
- var import_ui45 = require("@elementor/ui");
2078
+ var import_ui44 = require("@elementor/ui");
2068
2079
  var import_i18n35 = require("@wordpress/i18n");
2069
2080
  var buttonSize = "tiny";
2070
2081
  var TextStyleField = () => {
@@ -2089,7 +2100,7 @@ var TextStyleField = () => {
2089
2100
  value: newValue
2090
2101
  });
2091
2102
  };
2092
- return /* @__PURE__ */ React56.createElement(import_ui45.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React56.createElement(import_ui45.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React56.createElement(import_editor_controls38.ControlLabel, null, (0, import_i18n35.__)("Style", "elementor"))), /* @__PURE__ */ React56.createElement(import_ui45.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React56.createElement(import_ui45.ToggleButtonGroup, { value: formats }, /* @__PURE__ */ React56.createElement(
2103
+ return /* @__PURE__ */ React54.createElement(import_ui44.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React54.createElement(import_ui44.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React54.createElement(import_editor_controls38.ControlLabel, null, (0, import_i18n35.__)("Style", "elementor"))), /* @__PURE__ */ React54.createElement(import_ui44.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React54.createElement(import_ui44.ToggleButtonGroup, { value: formats }, /* @__PURE__ */ React54.createElement(
2093
2104
  ToggleButton,
2094
2105
  {
2095
2106
  value: "italic",
@@ -2097,8 +2108,8 @@ var TextStyleField = () => {
2097
2108
  "aria-label": "italic",
2098
2109
  sx: { marginLeft: "auto" }
2099
2110
  },
2100
- /* @__PURE__ */ React56.createElement(import_icons19.ItalicIcon, { fontSize: buttonSize })
2101
- ), /* @__PURE__ */ React56.createElement(
2111
+ /* @__PURE__ */ React54.createElement(import_icons19.ItalicIcon, { fontSize: buttonSize })
2112
+ ), /* @__PURE__ */ React54.createElement(
2102
2113
  ShorthandControl,
2103
2114
  {
2104
2115
  value: "line-through",
@@ -2106,8 +2117,8 @@ var TextStyleField = () => {
2106
2117
  updateValues: handleSetTextDecoration,
2107
2118
  "aria-label": "line-through"
2108
2119
  },
2109
- /* @__PURE__ */ React56.createElement(import_icons19.StrikethroughIcon, { fontSize: buttonSize })
2110
- ), /* @__PURE__ */ React56.createElement(
2120
+ /* @__PURE__ */ React54.createElement(import_icons19.StrikethroughIcon, { fontSize: buttonSize })
2121
+ ), /* @__PURE__ */ React54.createElement(
2111
2122
  ShorthandControl,
2112
2123
  {
2113
2124
  value: "underline",
@@ -2115,7 +2126,7 @@ var TextStyleField = () => {
2115
2126
  updateValues: handleSetTextDecoration,
2116
2127
  "aria-label": "underline"
2117
2128
  },
2118
- /* @__PURE__ */ React56.createElement(import_icons19.UnderlineIcon, { fontSize: buttonSize })
2129
+ /* @__PURE__ */ React54.createElement(import_icons19.UnderlineIcon, { fontSize: buttonSize })
2119
2130
  ))));
2120
2131
  };
2121
2132
  var ShorthandControl = ({
@@ -2134,52 +2145,52 @@ var ShorthandControl = ({
2134
2145
  updateValues([...valuesArr, newValue].join(" "));
2135
2146
  }
2136
2147
  };
2137
- return /* @__PURE__ */ React56.createElement(ToggleButton, { value, onChange: toggleValue, selected, "aria-label": ariaLabel }, children);
2148
+ return /* @__PURE__ */ React54.createElement(ToggleButton, { value, onChange: toggleValue, selected, "aria-label": ariaLabel }, children);
2138
2149
  };
2139
2150
  var ToggleButton = ({ onChange, ...props }) => {
2140
2151
  const handleChange = (_e, newValue) => {
2141
2152
  onChange(newValue);
2142
2153
  };
2143
- return /* @__PURE__ */ React56.createElement(import_ui45.ToggleButton, { ...props, onChange: handleChange, size: buttonSize });
2154
+ return /* @__PURE__ */ React54.createElement(import_ui44.ToggleButton, { ...props, onChange: handleChange, size: buttonSize });
2144
2155
  };
2145
2156
 
2146
2157
  // src/components/style-sections/typography-section/transform-field.tsx
2147
- var React57 = __toESM(require("react"));
2158
+ var React55 = __toESM(require("react"));
2148
2159
  var import_editor_controls39 = require("@elementor/editor-controls");
2149
2160
  var import_icons20 = require("@elementor/icons");
2150
- var import_ui46 = require("@elementor/ui");
2161
+ var import_ui45 = require("@elementor/ui");
2151
2162
  var import_i18n36 = require("@wordpress/i18n");
2152
2163
  var options9 = [
2153
2164
  {
2154
2165
  value: "capitalize",
2155
2166
  label: (0, import_i18n36.__)("Capitalize", "elementor"),
2156
- renderContent: ({ size }) => /* @__PURE__ */ React57.createElement(import_icons20.LetterCaseIcon, { fontSize: size })
2167
+ renderContent: ({ size }) => /* @__PURE__ */ React55.createElement(import_icons20.LetterCaseIcon, { fontSize: size })
2157
2168
  },
2158
2169
  {
2159
2170
  value: "uppercase",
2160
2171
  label: (0, import_i18n36.__)("Uppercase", "elementor"),
2161
- renderContent: ({ size }) => /* @__PURE__ */ React57.createElement(import_icons20.LetterCaseUpperIcon, { fontSize: size })
2172
+ renderContent: ({ size }) => /* @__PURE__ */ React55.createElement(import_icons20.LetterCaseUpperIcon, { fontSize: size })
2162
2173
  },
2163
2174
  {
2164
2175
  value: "lowercase",
2165
2176
  label: (0, import_i18n36.__)("Lowercase", "elementor"),
2166
- renderContent: ({ size }) => /* @__PURE__ */ React57.createElement(import_icons20.LetterCaseLowerIcon, { fontSize: size })
2177
+ renderContent: ({ size }) => /* @__PURE__ */ React55.createElement(import_icons20.LetterCaseLowerIcon, { fontSize: size })
2167
2178
  }
2168
2179
  ];
2169
- var TransformField = () => /* @__PURE__ */ React57.createElement(StylesField, { bind: "text-transform" }, /* @__PURE__ */ React57.createElement(import_ui46.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React57.createElement(import_ui46.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React57.createElement(import_editor_controls39.ControlLabel, null, (0, import_i18n36.__)("Transform", "elementor"))), /* @__PURE__ */ React57.createElement(import_ui46.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React57.createElement(import_editor_controls39.ToggleControl, { options: options9 }))));
2180
+ var TransformField = () => /* @__PURE__ */ React55.createElement(StylesField, { bind: "text-transform" }, /* @__PURE__ */ React55.createElement(import_ui45.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React55.createElement(import_ui45.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React55.createElement(import_editor_controls39.ControlLabel, null, (0, import_i18n36.__)("Transform", "elementor"))), /* @__PURE__ */ React55.createElement(import_ui45.Grid, { item: true, xs: 6, display: "flex", justifyContent: "end" }, /* @__PURE__ */ React55.createElement(import_editor_controls39.ToggleControl, { options: options9 }))));
2170
2181
 
2171
2182
  // src/components/style-sections/typography-section/word-spacing-field.tsx
2172
- var React58 = __toESM(require("react"));
2183
+ var React56 = __toESM(require("react"));
2173
2184
  var import_editor_controls40 = require("@elementor/editor-controls");
2174
- var import_ui47 = require("@elementor/ui");
2185
+ var import_ui46 = require("@elementor/ui");
2175
2186
  var import_i18n37 = require("@wordpress/i18n");
2176
2187
  var WordSpacingField = () => {
2177
- return /* @__PURE__ */ React58.createElement(StylesField, { bind: "word-spacing" }, /* @__PURE__ */ React58.createElement(import_ui47.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React58.createElement(import_ui47.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React58.createElement(import_editor_controls40.ControlLabel, null, (0, import_i18n37.__)("Word Spacing", "elementor"))), /* @__PURE__ */ React58.createElement(import_ui47.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React58.createElement(import_editor_controls40.SizeControl, null))));
2188
+ return /* @__PURE__ */ React56.createElement(StylesField, { bind: "word-spacing" }, /* @__PURE__ */ React56.createElement(import_ui46.Grid, { container: true, gap: 2, alignItems: "center", flexWrap: "nowrap" }, /* @__PURE__ */ React56.createElement(import_ui46.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React56.createElement(import_editor_controls40.ControlLabel, null, (0, import_i18n37.__)("Word Spacing", "elementor"))), /* @__PURE__ */ React56.createElement(import_ui46.Grid, { item: true, xs: 6 }, /* @__PURE__ */ React56.createElement(import_editor_controls40.SizeControl, null))));
2178
2189
  };
2179
2190
 
2180
2191
  // src/components/style-sections/typography-section/typography-section.tsx
2181
2192
  var TypographySection = () => {
2182
- return /* @__PURE__ */ React59.createElement(import_ui48.Stack, { gap: 1.5 }, /* @__PURE__ */ React59.createElement(FontFamilyField, null), /* @__PURE__ */ React59.createElement(FontWeightField, null), /* @__PURE__ */ React59.createElement(FontSizeField, null), /* @__PURE__ */ React59.createElement(import_ui48.Divider, null), /* @__PURE__ */ React59.createElement(TextAlignmentField, null), /* @__PURE__ */ React59.createElement(TextColorField, null), /* @__PURE__ */ React59.createElement(CollapsibleContent, null, /* @__PURE__ */ React59.createElement(import_ui48.Stack, { gap: 1.5, sx: { pt: 1.5 } }, /* @__PURE__ */ React59.createElement(LineHeightField, null), /* @__PURE__ */ React59.createElement(LetterSpacingField, null), /* @__PURE__ */ React59.createElement(WordSpacingField, null), /* @__PURE__ */ React59.createElement(import_ui48.Divider, null), /* @__PURE__ */ React59.createElement(TextStyleField, null), /* @__PURE__ */ React59.createElement(TransformField, null), /* @__PURE__ */ React59.createElement(TextDirectionField, null), /* @__PURE__ */ React59.createElement(TextStrokeField, null))));
2193
+ return /* @__PURE__ */ React57.createElement(import_ui47.Stack, { gap: 1.5 }, /* @__PURE__ */ React57.createElement(FontFamilyField, null), /* @__PURE__ */ React57.createElement(FontWeightField, null), /* @__PURE__ */ React57.createElement(FontSizeField, null), /* @__PURE__ */ React57.createElement(import_ui47.Divider, null), /* @__PURE__ */ React57.createElement(TextAlignmentField, null), /* @__PURE__ */ React57.createElement(TextColorField, null), /* @__PURE__ */ React57.createElement(CollapsibleContent, null, /* @__PURE__ */ React57.createElement(import_ui47.Stack, { gap: 1.5, sx: { pt: 1.5 } }, /* @__PURE__ */ React57.createElement(LineHeightField, null), /* @__PURE__ */ React57.createElement(LetterSpacingField, null), /* @__PURE__ */ React57.createElement(WordSpacingField, null), /* @__PURE__ */ React57.createElement(import_ui47.Divider, null), /* @__PURE__ */ React57.createElement(TextStyleField, null), /* @__PURE__ */ React57.createElement(TransformField, null), /* @__PURE__ */ React57.createElement(TextDirectionField, null), /* @__PURE__ */ React57.createElement(TextStrokeField, null))));
2183
2194
  };
2184
2195
 
2185
2196
  // src/components/style-tab.tsx
@@ -2189,7 +2200,7 @@ var StyleTab = () => {
2189
2200
  const [activeStyleDefId, setActiveStyleDefId] = useActiveStyleDefId(currentClassesProp);
2190
2201
  const [activeStyleState, setActiveStyleState] = (0, import_react15.useState)(null);
2191
2202
  const breakpoint = (0, import_editor_responsive.useActiveBreakpoint)();
2192
- return /* @__PURE__ */ React60.createElement(ClassesPropProvider, { prop: currentClassesProp }, /* @__PURE__ */ React60.createElement(
2203
+ return /* @__PURE__ */ React58.createElement(ClassesPropProvider, { prop: currentClassesProp }, /* @__PURE__ */ React58.createElement(
2193
2204
  StyleProvider,
2194
2205
  {
2195
2206
  meta: { breakpoint, state: activeStyleState },
@@ -2200,7 +2211,7 @@ var StyleTab = () => {
2200
2211
  },
2201
2212
  setMetaState: setActiveStyleState
2202
2213
  },
2203
- /* @__PURE__ */ React60.createElement(import_session2.SessionStorageProvider, { prefix: activeStyleDefId ?? "" }, /* @__PURE__ */ React60.createElement(CssClassSelector, null), /* @__PURE__ */ React60.createElement(import_ui49.Divider, null), /* @__PURE__ */ React60.createElement(SectionsList, null, /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Layout", "elementor") }, /* @__PURE__ */ React60.createElement(LayoutSection, null)), /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Spacing", "elementor") }, /* @__PURE__ */ React60.createElement(SpacingSection, null)), /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Size", "elementor") }, /* @__PURE__ */ React60.createElement(SizeSection, null)), /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Position", "elementor") }, /* @__PURE__ */ React60.createElement(PositionSection, null)), /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Typography", "elementor") }, /* @__PURE__ */ React60.createElement(TypographySection, null)), /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Background", "elementor") }, /* @__PURE__ */ React60.createElement(BackgroundSection, null)), /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Border", "elementor") }, /* @__PURE__ */ React60.createElement(BorderSection, null)), /* @__PURE__ */ React60.createElement(Section, { title: (0, import_i18n38.__)("Effects", "elementor") }, /* @__PURE__ */ React60.createElement(EffectsSection, null))))
2214
+ /* @__PURE__ */ React58.createElement(import_session2.SessionStorageProvider, { prefix: activeStyleDefId ?? "" }, /* @__PURE__ */ React58.createElement(CssClassSelector, null), /* @__PURE__ */ React58.createElement(import_ui48.Divider, null), /* @__PURE__ */ React58.createElement(SectionsList, null, /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Layout", "elementor") }, /* @__PURE__ */ React58.createElement(LayoutSection, null)), /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Spacing", "elementor") }, /* @__PURE__ */ React58.createElement(SpacingSection, null)), /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Size", "elementor") }, /* @__PURE__ */ React58.createElement(SizeSection, null)), /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Position", "elementor") }, /* @__PURE__ */ React58.createElement(PositionSection, null)), /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Typography", "elementor") }, /* @__PURE__ */ React58.createElement(TypographySection, null)), /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Background", "elementor") }, /* @__PURE__ */ React58.createElement(BackgroundSection, null)), /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Border", "elementor") }, /* @__PURE__ */ React58.createElement(BorderSection, null)), /* @__PURE__ */ React58.createElement(Section, { title: (0, import_i18n38.__)("Effects", "elementor") }, /* @__PURE__ */ React58.createElement(EffectsSection, null))))
2204
2215
  ));
2205
2216
  };
2206
2217
  function useActiveStyleDefId(currentClassesProp) {
@@ -2210,8 +2221,8 @@ function useActiveStyleDefId(currentClassesProp) {
2210
2221
  }
2211
2222
  function useFirstElementStyleDef(currentClassesProp) {
2212
2223
  const { element } = useElement();
2213
- const classesIds = (0, import_editor_elements5.useElementSetting)(element.id, currentClassesProp)?.value || [];
2214
- const stylesDefs = (0, import_editor_elements5.useElementStyles)(element.id);
2224
+ const classesIds = (0, import_editor_elements6.useElementSetting)(element.id, currentClassesProp)?.value || [];
2225
+ const stylesDefs = (0, import_editor_elements6.useElementStyles)(element.id);
2215
2226
  return Object.values(stylesDefs).find((styleDef) => classesIds.includes(styleDef.id));
2216
2227
  }
2217
2228
  function useCurrentClassesProp() {
@@ -2228,25 +2239,25 @@ function useCurrentClassesProp() {
2228
2239
  // src/components/editing-panel-tabs.tsx
2229
2240
  var EditingPanelTabs = () => {
2230
2241
  const { element } = useElement();
2231
- const { getTabProps, getTabPanelProps, getTabsProps } = (0, import_ui50.useTabs)("settings");
2242
+ const { getTabProps, getTabPanelProps, getTabsProps } = (0, import_ui49.useTabs)("settings");
2232
2243
  return (
2233
2244
  // When switching between elements, the local states should be reset. We are using key to rerender the tabs.
2234
2245
  // Reference: https://react.dev/learn/preserving-and-resetting-state#resetting-a-form-with-a-key
2235
- /* @__PURE__ */ React61.createElement(import_react16.Fragment, { key: element.id }, /* @__PURE__ */ React61.createElement(import_ui50.Stack, { direction: "column", sx: { width: "100%" } }, /* @__PURE__ */ React61.createElement(import_ui50.Tabs, { variant: "fullWidth", indicatorColor: "secondary", textColor: "inherit", ...getTabsProps() }, /* @__PURE__ */ React61.createElement(import_ui50.Tab, { label: (0, import_i18n39.__)("General", "elementor"), ...getTabProps("settings") }), /* @__PURE__ */ React61.createElement(import_ui50.Tab, { label: (0, import_i18n39.__)("Style", "elementor"), ...getTabProps("style") })), /* @__PURE__ */ React61.createElement(import_ui50.Divider, null), /* @__PURE__ */ React61.createElement(import_ui50.TabPanel, { ...getTabPanelProps("settings"), disablePadding: true }, /* @__PURE__ */ React61.createElement(SettingsTab, null)), /* @__PURE__ */ React61.createElement(import_ui50.TabPanel, { ...getTabPanelProps("style"), disablePadding: true }, /* @__PURE__ */ React61.createElement(StyleTab, null))))
2246
+ /* @__PURE__ */ React59.createElement(import_react16.Fragment, { key: element.id }, /* @__PURE__ */ React59.createElement(import_ui49.Stack, { direction: "column", sx: { width: "100%" } }, /* @__PURE__ */ React59.createElement(import_ui49.Tabs, { variant: "fullWidth", indicatorColor: "secondary", textColor: "inherit", ...getTabsProps() }, /* @__PURE__ */ React59.createElement(import_ui49.Tab, { label: (0, import_i18n39.__)("General", "elementor"), ...getTabProps("settings") }), /* @__PURE__ */ React59.createElement(import_ui49.Tab, { label: (0, import_i18n39.__)("Style", "elementor"), ...getTabProps("style") })), /* @__PURE__ */ React59.createElement(import_ui49.Divider, null), /* @__PURE__ */ React59.createElement(import_ui49.TabPanel, { ...getTabPanelProps("settings"), disablePadding: true }, /* @__PURE__ */ React59.createElement(SettingsTab, null)), /* @__PURE__ */ React59.createElement(import_ui49.TabPanel, { ...getTabPanelProps("style"), disablePadding: true }, /* @__PURE__ */ React59.createElement(StyleTab, null))))
2236
2247
  );
2237
2248
  };
2238
2249
 
2239
2250
  // src/components/editing-panel.tsx
2240
2251
  var { useMenuItems } = controlActionsMenu;
2241
2252
  var EditingPanel = () => {
2242
- const { element, elementType } = (0, import_editor_elements6.useSelectedElement)();
2253
+ const { element, elementType } = (0, import_editor_elements7.useSelectedElement)();
2243
2254
  const controlReplacement = getControlReplacement();
2244
2255
  const menuItems = useMenuItems().default;
2245
2256
  if (!element || !elementType) {
2246
2257
  return null;
2247
2258
  }
2248
2259
  const panelTitle = (0, import_i18n40.__)("Edit %s", "elementor").replace("%s", elementType.title);
2249
- return /* @__PURE__ */ React62.createElement(import_ui51.ErrorBoundary, { fallback: /* @__PURE__ */ React62.createElement(EditorPanelErrorFallback, null) }, /* @__PURE__ */ React62.createElement(import_session3.SessionStorageProvider, { prefix: "elementor" }, /* @__PURE__ */ React62.createElement(import_editor_panels.Panel, null, /* @__PURE__ */ React62.createElement(import_editor_panels.PanelHeader, null, /* @__PURE__ */ React62.createElement(import_editor_panels.PanelHeaderTitle, null, panelTitle)), /* @__PURE__ */ React62.createElement(import_editor_panels.PanelBody, null, /* @__PURE__ */ React62.createElement(import_editor_controls41.ControlActionsProvider, { items: menuItems }, /* @__PURE__ */ React62.createElement(import_editor_controls41.ControlReplacementProvider, { ...controlReplacement }, /* @__PURE__ */ React62.createElement(ElementProvider, { element, elementType }, /* @__PURE__ */ React62.createElement(EditingPanelTabs, null))))))));
2260
+ return /* @__PURE__ */ React60.createElement(import_ui50.ErrorBoundary, { fallback: /* @__PURE__ */ React60.createElement(EditorPanelErrorFallback, null) }, /* @__PURE__ */ React60.createElement(import_session3.SessionStorageProvider, { prefix: "elementor" }, /* @__PURE__ */ React60.createElement(import_editor_panels.Panel, null, /* @__PURE__ */ React60.createElement(import_editor_panels.PanelHeader, null, /* @__PURE__ */ React60.createElement(import_editor_panels.PanelHeaderTitle, null, panelTitle)), /* @__PURE__ */ React60.createElement(import_editor_panels.PanelBody, null, /* @__PURE__ */ React60.createElement(import_editor_controls41.ControlActionsProvider, { items: menuItems }, /* @__PURE__ */ React60.createElement(import_editor_controls41.ControlReplacementProvider, { ...controlReplacement }, /* @__PURE__ */ React60.createElement(ElementProvider, { element, elementType }, /* @__PURE__ */ React60.createElement(EditingPanelTabs, null))))))));
2250
2261
  };
2251
2262
 
2252
2263
  // src/panel.ts
@@ -2255,11 +2266,21 @@ var { panel, usePanelActions, usePanelStatus } = (0, import_editor_panels2.__cre
2255
2266
  component: EditingPanel
2256
2267
  });
2257
2268
 
2269
+ // src/init.ts
2270
+ var import_editor = require("@elementor/editor");
2271
+ var import_editor_panels3 = require("@elementor/editor-panels");
2272
+ var import_editor_v1_adapters4 = require("@elementor/editor-v1-adapters");
2273
+
2274
+ // src/hooks/use-close-editor-panel.ts
2275
+ var import_react17 = require("react");
2276
+ var import_editor_elements9 = require("@elementor/editor-elements");
2277
+ var import_editor_v1_adapters2 = require("@elementor/editor-v1-adapters");
2278
+
2258
2279
  // src/sync/is-atomic-widget-selected.ts
2259
- var import_editor_elements7 = require("@elementor/editor-elements");
2280
+ var import_editor_elements8 = require("@elementor/editor-elements");
2260
2281
  var isAtomicWidgetSelected = () => {
2261
- const selectedElements = (0, import_editor_elements7.getSelectedElements)();
2262
- const widgetCache = (0, import_editor_elements7.getWidgetsCache)();
2282
+ const selectedElements = (0, import_editor_elements8.getSelectedElements)();
2283
+ const widgetCache = (0, import_editor_elements8.getWidgetsCache)();
2263
2284
  if (selectedElements.length !== 1) {
2264
2285
  return false;
2265
2286
  }
@@ -2271,9 +2292,9 @@ var useCloseEditorPanel = () => {
2271
2292
  const { close } = usePanelActions();
2272
2293
  return (0, import_react17.useEffect)(() => {
2273
2294
  return (0, import_editor_v1_adapters2.__privateListenTo)((0, import_editor_v1_adapters2.commandStartEvent)("document/elements/delete"), (e) => {
2274
- const selectedElement = (0, import_editor_elements8.getSelectedElements)()[0];
2295
+ const selectedElement = (0, import_editor_elements9.getSelectedElements)()[0];
2275
2296
  const { container: deletedContainer } = e?.args;
2276
- const isSelectedElementInDeletedContainer = deletedContainer && selectedElement && (0, import_editor_elements8.isElementInContainer)(selectedElement, deletedContainer);
2297
+ const isSelectedElementInDeletedContainer = deletedContainer && selectedElement && (0, import_editor_elements9.isElementInContainer)(selectedElement, deletedContainer);
2277
2298
  if (isSelectedElementInDeletedContainer && isAtomicWidgetSelected()) {
2278
2299
  close();
2279
2300
  }
@@ -2302,68 +2323,12 @@ var EditingPanelHooks = () => {
2302
2323
  return null;
2303
2324
  };
2304
2325
 
2305
- // src/hooks/use-unapply-class.ts
2306
- var import_editor_elements9 = require("@elementor/editor-elements");
2307
- var useUnapplyClass = (classId) => {
2308
- const { element } = useElement();
2309
- const classesProp = useClassesProp();
2310
- const classes = (0, import_editor_elements9.useElementSetting)(element.id, classesProp);
2311
- const filteredClasses = classes?.value.filter((className) => className !== classId);
2312
- return () => {
2313
- (0, import_editor_elements9.updateSettings)({
2314
- id: element.id,
2315
- props: {
2316
- [classesProp]: {
2317
- $$type: "classes",
2318
- value: filteredClasses
2319
- }
2320
- }
2321
- });
2322
- };
2323
- };
2324
-
2325
- // src/css-classes.ts
2326
- var STATES = ["hover", "focus", "active"];
2327
- function initCssClasses() {
2328
- registerStateItems();
2329
- registerGlobalClassItems();
2330
- }
2331
- function registerStateItems() {
2332
- registerStateMenuItem({
2333
- id: "normal",
2334
- props: {
2335
- state: null
2336
- }
2337
- });
2338
- STATES.forEach((state) => {
2339
- registerStateMenuItem({
2340
- id: state,
2341
- props: {
2342
- state
2343
- }
2344
- });
2345
- });
2346
- }
2347
- function registerGlobalClassItems() {
2348
- registerGlobalClassMenuItem({
2349
- id: "unapply-class",
2350
- useProps: () => {
2351
- const { styleId: currentClass } = useCssClassItem();
2352
- const unapplyClass = useUnapplyClass(currentClass);
2353
- return {
2354
- text: "Remove",
2355
- onClick: unapplyClass
2356
- };
2357
- }
2358
- });
2359
- }
2360
-
2361
2326
  // src/dynamics/components/dynamic-selection-control.tsx
2362
- var React65 = __toESM(require("react"));
2327
+ var React63 = __toESM(require("react"));
2363
2328
  var import_react22 = require("react");
2364
2329
  var import_editor_controls45 = require("@elementor/editor-controls");
2365
2330
  var import_icons22 = require("@elementor/icons");
2366
- var import_ui53 = require("@elementor/ui");
2331
+ var import_ui52 = require("@elementor/ui");
2367
2332
  var import_i18n42 = require("@wordpress/i18n");
2368
2333
 
2369
2334
  // src/hooks/use-persist-dynamic-value.ts
@@ -2374,7 +2339,7 @@ var usePersistDynamicValue = (propKey) => {
2374
2339
  };
2375
2340
 
2376
2341
  // src/dynamics/dynamic-control.tsx
2377
- var React63 = __toESM(require("react"));
2342
+ var React61 = __toESM(require("react"));
2378
2343
  var import_editor_controls43 = require("@elementor/editor-controls");
2379
2344
 
2380
2345
  // src/dynamics/hooks/use-dynamic-tag.ts
@@ -2473,15 +2438,15 @@ var DynamicControl = ({ bind, children }) => {
2473
2438
  });
2474
2439
  };
2475
2440
  const propType = createTopLevelOjectType({ schema: dynamicTag.props_schema });
2476
- return /* @__PURE__ */ React63.createElement(import_editor_controls43.PropProvider, { propType, setValue: setDynamicValue, value: { [bind]: dynamicValue } }, /* @__PURE__ */ React63.createElement(import_editor_controls43.PropKeyProvider, { bind }, children));
2441
+ return /* @__PURE__ */ React61.createElement(import_editor_controls43.PropProvider, { propType, setValue: setDynamicValue, value: { [bind]: dynamicValue } }, /* @__PURE__ */ React61.createElement(import_editor_controls43.PropKeyProvider, { bind }, children));
2477
2442
  };
2478
2443
 
2479
2444
  // src/dynamics/components/dynamic-selection.tsx
2480
- var React64 = __toESM(require("react"));
2445
+ var React62 = __toESM(require("react"));
2481
2446
  var import_react21 = require("react");
2482
2447
  var import_editor_controls44 = require("@elementor/editor-controls");
2483
2448
  var import_icons21 = require("@elementor/icons");
2484
- var import_ui52 = require("@elementor/ui");
2449
+ var import_ui51 = require("@elementor/ui");
2485
2450
  var import_i18n41 = require("@wordpress/i18n");
2486
2451
  var SIZE3 = "tiny";
2487
2452
  var DynamicSelection = ({ onSelect }) => {
@@ -2502,8 +2467,8 @@ var DynamicSelection = ({ onSelect }) => {
2502
2467
  setValue({ name: value, settings: {} });
2503
2468
  onSelect?.();
2504
2469
  };
2505
- return /* @__PURE__ */ React64.createElement(import_ui52.Stack, null, /* @__PURE__ */ React64.createElement(import_ui52.Box, { px: 1.5, pb: 1 }, /* @__PURE__ */ React64.createElement(
2506
- import_ui52.TextField,
2470
+ return /* @__PURE__ */ React62.createElement(import_ui51.Stack, null, /* @__PURE__ */ React62.createElement(import_ui51.Box, { px: 1.5, pb: 1 }, /* @__PURE__ */ React62.createElement(
2471
+ import_ui51.TextField,
2507
2472
  {
2508
2473
  fullWidth: true,
2509
2474
  size: SIZE3,
@@ -2511,13 +2476,13 @@ var DynamicSelection = ({ onSelect }) => {
2511
2476
  onChange: handleSearch,
2512
2477
  placeholder: (0, import_i18n41.__)("Search dynamic tag", "elementor"),
2513
2478
  InputProps: {
2514
- startAdornment: /* @__PURE__ */ React64.createElement(import_ui52.InputAdornment, { position: "start" }, /* @__PURE__ */ React64.createElement(import_icons21.SearchIcon, { fontSize: SIZE3 }))
2479
+ startAdornment: /* @__PURE__ */ React62.createElement(import_ui51.InputAdornment, { position: "start" }, /* @__PURE__ */ React62.createElement(import_icons21.SearchIcon, { fontSize: SIZE3 }))
2515
2480
  }
2516
2481
  }
2517
- )), /* @__PURE__ */ React64.createElement(import_ui52.Divider, null), /* @__PURE__ */ React64.createElement(import_ui52.Box, { sx: { overflowY: "auto", height: 260, width: 220 } }, options10.length > 0 ? /* @__PURE__ */ React64.createElement(import_ui52.MenuList, { role: "listbox", tabIndex: 0 }, options10.map(([category, items3], index) => /* @__PURE__ */ React64.createElement(import_react21.Fragment, { key: index }, /* @__PURE__ */ React64.createElement(import_ui52.ListSubheader, { sx: { typography: "caption", color: "text.tertiary" } }, dynamicGroups?.[category]?.title || category), items3.map(({ value, label: tagLabel }) => {
2482
+ )), /* @__PURE__ */ React62.createElement(import_ui51.Divider, null), /* @__PURE__ */ React62.createElement(import_ui51.Box, { sx: { overflowY: "auto", height: 260, width: 220 } }, options10.length > 0 ? /* @__PURE__ */ React62.createElement(import_ui51.MenuList, { role: "listbox", tabIndex: 0 }, options10.map(([category, items3], index) => /* @__PURE__ */ React62.createElement(import_react21.Fragment, { key: index }, /* @__PURE__ */ React62.createElement(import_ui51.ListSubheader, { sx: { typography: "caption", color: "text.tertiary" } }, dynamicGroups?.[category]?.title || category), items3.map(({ value, label: tagLabel }) => {
2518
2483
  const isSelected = isCurrentValueDynamic && value === dynamicValue?.name;
2519
- return /* @__PURE__ */ React64.createElement(
2520
- import_ui52.MenuItem,
2484
+ return /* @__PURE__ */ React62.createElement(
2485
+ import_ui51.MenuItem,
2521
2486
  {
2522
2487
  key: value,
2523
2488
  selected: isSelected,
@@ -2527,8 +2492,8 @@ var DynamicSelection = ({ onSelect }) => {
2527
2492
  },
2528
2493
  tagLabel
2529
2494
  );
2530
- })))) : /* @__PURE__ */ React64.createElement(import_ui52.Stack, { alignItems: "center", p: 2.5, gap: 1.5 }, /* @__PURE__ */ React64.createElement(import_icons21.PhotoIcon, { fontSize: "large" }), /* @__PURE__ */ React64.createElement(import_ui52.Typography, { align: "center", variant: "caption", color: "text.secondary" }, (0, import_i18n41.__)("Sorry, nothing matched", "elementor"), /* @__PURE__ */ React64.createElement("br", null), "\u201C", searchValue, "\u201D."), /* @__PURE__ */ React64.createElement(import_ui52.Typography, { align: "center", variant: "caption", color: "text.secondary" }, /* @__PURE__ */ React64.createElement(
2531
- import_ui52.Link,
2495
+ })))) : /* @__PURE__ */ React62.createElement(import_ui51.Stack, { alignItems: "center", p: 2.5, gap: 1.5 }, /* @__PURE__ */ React62.createElement(import_icons21.PhotoIcon, { fontSize: "large" }), /* @__PURE__ */ React62.createElement(import_ui51.Typography, { align: "center", variant: "caption", color: "text.secondary" }, (0, import_i18n41.__)("Sorry, nothing matched", "elementor"), /* @__PURE__ */ React62.createElement("br", null), "\u201C", searchValue, "\u201D."), /* @__PURE__ */ React62.createElement(import_ui51.Typography, { align: "center", variant: "caption", color: "text.secondary" }, /* @__PURE__ */ React62.createElement(
2496
+ import_ui51.Link,
2532
2497
  {
2533
2498
  color: "secondary",
2534
2499
  variant: "caption",
@@ -2562,7 +2527,7 @@ var DynamicSelectionControl = () => {
2562
2527
  const [propValueFromHistory] = usePersistDynamicValue(bind);
2563
2528
  const { name: tagName = "" } = value;
2564
2529
  const selectionPopoverId = (0, import_react22.useId)();
2565
- const selectionPopoverState = (0, import_ui53.usePopupState)({ variant: "popover", popupId: selectionPopoverId });
2530
+ const selectionPopoverState = (0, import_ui52.usePopupState)({ variant: "popover", popupId: selectionPopoverId });
2566
2531
  const dynamicTag = useDynamicTag(tagName);
2567
2532
  const removeDynamicTag = () => {
2568
2533
  setAnyValue(propValueFromHistory ?? null);
@@ -2570,70 +2535,70 @@ var DynamicSelectionControl = () => {
2570
2535
  if (!dynamicTag) {
2571
2536
  throw new Error(`Dynamic tag ${tagName} not found`);
2572
2537
  }
2573
- return /* @__PURE__ */ React65.createElement(import_ui53.Box, null, /* @__PURE__ */ React65.createElement(
2574
- import_ui53.UnstableTag,
2538
+ return /* @__PURE__ */ React63.createElement(import_ui52.Box, null, /* @__PURE__ */ React63.createElement(
2539
+ import_ui52.UnstableTag,
2575
2540
  {
2576
2541
  fullWidth: true,
2577
2542
  showActionsOnHover: true,
2578
2543
  label: dynamicTag.label,
2579
- startIcon: /* @__PURE__ */ React65.createElement(import_icons22.DatabaseIcon, { fontSize: SIZE4 }),
2580
- ...(0, import_ui53.bindTrigger)(selectionPopoverState),
2581
- actions: /* @__PURE__ */ React65.createElement(React65.Fragment, null, /* @__PURE__ */ React65.createElement(DynamicSettingsPopover, { dynamicTag }), /* @__PURE__ */ React65.createElement(
2582
- import_ui53.IconButton,
2544
+ startIcon: /* @__PURE__ */ React63.createElement(import_icons22.DatabaseIcon, { fontSize: SIZE4 }),
2545
+ ...(0, import_ui52.bindTrigger)(selectionPopoverState),
2546
+ actions: /* @__PURE__ */ React63.createElement(React63.Fragment, null, /* @__PURE__ */ React63.createElement(DynamicSettingsPopover, { dynamicTag }), /* @__PURE__ */ React63.createElement(
2547
+ import_ui52.IconButton,
2583
2548
  {
2584
2549
  size: SIZE4,
2585
2550
  onClick: removeDynamicTag,
2586
2551
  "aria-label": (0, import_i18n42.__)("Remove dynamic value", "elementor")
2587
2552
  },
2588
- /* @__PURE__ */ React65.createElement(import_icons22.XIcon, { fontSize: SIZE4 })
2553
+ /* @__PURE__ */ React63.createElement(import_icons22.XIcon, { fontSize: SIZE4 })
2589
2554
  ))
2590
2555
  }
2591
- ), /* @__PURE__ */ React65.createElement(
2592
- import_ui53.Popover,
2556
+ ), /* @__PURE__ */ React63.createElement(
2557
+ import_ui52.Popover,
2593
2558
  {
2594
2559
  disablePortal: true,
2595
2560
  disableScrollLock: true,
2596
2561
  anchorOrigin: { vertical: "bottom", horizontal: "left" },
2597
- ...(0, import_ui53.bindPopover)(selectionPopoverState)
2562
+ ...(0, import_ui52.bindPopover)(selectionPopoverState)
2598
2563
  },
2599
- /* @__PURE__ */ React65.createElement(import_ui53.Stack, null, /* @__PURE__ */ React65.createElement(import_ui53.Stack, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React65.createElement(import_icons22.DatabaseIcon, { fontSize: SIZE4, sx: { mr: 0.5 } }), /* @__PURE__ */ React65.createElement(import_ui53.Typography, { variant: "subtitle2" }, (0, import_i18n42.__)("Dynamic Tags", "elementor")), /* @__PURE__ */ React65.createElement(import_ui53.IconButton, { size: SIZE4, sx: { ml: "auto" }, onClick: selectionPopoverState.close }, /* @__PURE__ */ React65.createElement(import_icons22.XIcon, { fontSize: SIZE4 }))), /* @__PURE__ */ React65.createElement(DynamicSelection, { onSelect: selectionPopoverState.close }))
2564
+ /* @__PURE__ */ React63.createElement(import_ui52.Stack, null, /* @__PURE__ */ React63.createElement(import_ui52.Stack, { direction: "row", alignItems: "center", pl: 1.5, pr: 0.5, py: 1.5 }, /* @__PURE__ */ React63.createElement(import_icons22.DatabaseIcon, { fontSize: SIZE4, sx: { mr: 0.5 } }), /* @__PURE__ */ React63.createElement(import_ui52.Typography, { variant: "subtitle2" }, (0, import_i18n42.__)("Dynamic Tags", "elementor")), /* @__PURE__ */ React63.createElement(import_ui52.IconButton, { size: SIZE4, sx: { ml: "auto" }, onClick: selectionPopoverState.close }, /* @__PURE__ */ React63.createElement(import_icons22.XIcon, { fontSize: SIZE4 }))), /* @__PURE__ */ React63.createElement(DynamicSelection, { onSelect: selectionPopoverState.close }))
2600
2565
  ));
2601
2566
  };
2602
2567
  var DynamicSettingsPopover = ({ dynamicTag }) => {
2603
2568
  const popupId = (0, import_react22.useId)();
2604
- const settingsPopupState = (0, import_ui53.usePopupState)({ variant: "popover", popupId });
2569
+ const settingsPopupState = (0, import_ui52.usePopupState)({ variant: "popover", popupId });
2605
2570
  const hasDynamicSettings = !!dynamicTag.atomic_controls.length;
2606
2571
  if (!hasDynamicSettings) {
2607
2572
  return null;
2608
2573
  }
2609
- return /* @__PURE__ */ React65.createElement(React65.Fragment, null, /* @__PURE__ */ React65.createElement(
2610
- import_ui53.IconButton,
2574
+ return /* @__PURE__ */ React63.createElement(React63.Fragment, null, /* @__PURE__ */ React63.createElement(
2575
+ import_ui52.IconButton,
2611
2576
  {
2612
2577
  size: SIZE4,
2613
- ...(0, import_ui53.bindTrigger)(settingsPopupState),
2578
+ ...(0, import_ui52.bindTrigger)(settingsPopupState),
2614
2579
  "aria-label": (0, import_i18n42.__)("Settings", "elementor")
2615
2580
  },
2616
- /* @__PURE__ */ React65.createElement(import_icons22.SettingsIcon, { fontSize: SIZE4 })
2617
- ), /* @__PURE__ */ React65.createElement(
2618
- import_ui53.Popover,
2581
+ /* @__PURE__ */ React63.createElement(import_icons22.SettingsIcon, { fontSize: SIZE4 })
2582
+ ), /* @__PURE__ */ React63.createElement(
2583
+ import_ui52.Popover,
2619
2584
  {
2620
2585
  disableScrollLock: true,
2621
2586
  anchorOrigin: { vertical: "bottom", horizontal: "center" },
2622
- ...(0, import_ui53.bindPopover)(settingsPopupState)
2587
+ ...(0, import_ui52.bindPopover)(settingsPopupState)
2623
2588
  },
2624
- /* @__PURE__ */ React65.createElement(import_ui53.Paper, { component: import_ui53.Stack, sx: { minHeight: "300px", width: "220px" } }, /* @__PURE__ */ React65.createElement(import_ui53.Stack, { direction: "row", alignItems: "center", px: 1.5, pt: 2, pb: 1 }, /* @__PURE__ */ React65.createElement(import_icons22.DatabaseIcon, { fontSize: SIZE4, sx: { mr: 0.5 } }), /* @__PURE__ */ React65.createElement(import_ui53.Typography, { variant: "subtitle2" }, dynamicTag.label), /* @__PURE__ */ React65.createElement(import_ui53.IconButton, { sx: { ml: "auto" }, size: SIZE4, onClick: settingsPopupState.close }, /* @__PURE__ */ React65.createElement(import_icons22.XIcon, { fontSize: SIZE4 }))), /* @__PURE__ */ React65.createElement(DynamicSettings, { controls: dynamicTag.atomic_controls }))
2589
+ /* @__PURE__ */ React63.createElement(import_ui52.Paper, { component: import_ui52.Stack, sx: { minHeight: "300px", width: "220px" } }, /* @__PURE__ */ React63.createElement(import_ui52.Stack, { direction: "row", alignItems: "center", px: 1.5, pt: 2, pb: 1 }, /* @__PURE__ */ React63.createElement(import_icons22.DatabaseIcon, { fontSize: SIZE4, sx: { mr: 0.5 } }), /* @__PURE__ */ React63.createElement(import_ui52.Typography, { variant: "subtitle2" }, dynamicTag.label), /* @__PURE__ */ React63.createElement(import_ui52.IconButton, { sx: { ml: "auto" }, size: SIZE4, onClick: settingsPopupState.close }, /* @__PURE__ */ React63.createElement(import_icons22.XIcon, { fontSize: SIZE4 }))), /* @__PURE__ */ React63.createElement(DynamicSettings, { controls: dynamicTag.atomic_controls }))
2625
2590
  ));
2626
2591
  };
2627
2592
  var DynamicSettings = ({ controls }) => {
2628
2593
  const tabs = controls.filter(({ type }) => type === "section");
2629
- const { getTabsProps, getTabProps, getTabPanelProps } = (0, import_ui53.useTabs)(0);
2594
+ const { getTabsProps, getTabProps, getTabPanelProps } = (0, import_ui52.useTabs)(0);
2630
2595
  if (!tabs.length) {
2631
2596
  return null;
2632
2597
  }
2633
- return /* @__PURE__ */ React65.createElement(React65.Fragment, null, /* @__PURE__ */ React65.createElement(import_ui53.Tabs, { indicatorColor: "secondary", textColor: "secondary", ...getTabsProps() }, tabs.map(({ value }, index) => /* @__PURE__ */ React65.createElement(import_ui53.Tab, { key: index, label: value.label, sx: { px: 1, py: 0.5 }, ...getTabProps(index) }))), /* @__PURE__ */ React65.createElement(import_ui53.Divider, null), tabs.map(({ value }, index) => {
2634
- return /* @__PURE__ */ React65.createElement(import_ui53.TabPanel, { key: index, sx: { flexGrow: 1 }, ...getTabPanelProps(index) }, /* @__PURE__ */ React65.createElement(import_ui53.Stack, { gap: 1, px: 2 }, value.items.map((item) => {
2598
+ return /* @__PURE__ */ React63.createElement(React63.Fragment, null, /* @__PURE__ */ React63.createElement(import_ui52.Tabs, { indicatorColor: "secondary", textColor: "secondary", ...getTabsProps() }, tabs.map(({ value }, index) => /* @__PURE__ */ React63.createElement(import_ui52.Tab, { key: index, label: value.label, sx: { px: 1, py: 0.5 }, ...getTabProps(index) }))), /* @__PURE__ */ React63.createElement(import_ui52.Divider, null), tabs.map(({ value }, index) => {
2599
+ return /* @__PURE__ */ React63.createElement(import_ui52.TabPanel, { key: index, sx: { flexGrow: 1 }, ...getTabPanelProps(index) }, /* @__PURE__ */ React63.createElement(import_ui52.Stack, { gap: 1, px: 2 }, value.items.map((item) => {
2635
2600
  if (item.type === "control") {
2636
- return /* @__PURE__ */ React65.createElement(Control3, { key: item.value.bind, control: item.value });
2601
+ return /* @__PURE__ */ React63.createElement(Control3, { key: item.value.bind, control: item.value });
2637
2602
  }
2638
2603
  return null;
2639
2604
  })));
@@ -2643,11 +2608,11 @@ var Control3 = ({ control }) => {
2643
2608
  if (!getControlByType(control.type)) {
2644
2609
  return null;
2645
2610
  }
2646
- return /* @__PURE__ */ React65.createElement(DynamicControl, { bind: control.bind }, control.label ? /* @__PURE__ */ React65.createElement(import_editor_controls45.ControlLabel, null, control.label) : null, /* @__PURE__ */ React65.createElement(Control, { type: control.type, props: control.props }));
2611
+ return /* @__PURE__ */ React63.createElement(DynamicControl, { bind: control.bind }, control.label ? /* @__PURE__ */ React63.createElement(import_editor_controls45.ControlLabel, null, control.label) : null, /* @__PURE__ */ React63.createElement(Control, { type: control.type, props: control.props }));
2647
2612
  };
2648
2613
 
2649
2614
  // src/dynamics/hooks/use-prop-dynamic-action.tsx
2650
- var React66 = __toESM(require("react"));
2615
+ var React64 = __toESM(require("react"));
2651
2616
  var import_editor_controls46 = require("@elementor/editor-controls");
2652
2617
  var import_icons23 = require("@elementor/icons");
2653
2618
  var import_i18n43 = require("@wordpress/i18n");
@@ -2658,7 +2623,7 @@ var usePropDynamicAction = () => {
2658
2623
  visible,
2659
2624
  icon: import_icons23.DatabaseIcon,
2660
2625
  title: (0, import_i18n43.__)("Dynamic Tags", "elementor"),
2661
- popoverContent: ({ closePopover }) => /* @__PURE__ */ React66.createElement(DynamicSelection, { onSelect: closePopover })
2626
+ popoverContent: ({ closePopover }) => /* @__PURE__ */ React64.createElement(DynamicSelection, { onSelect: closePopover })
2662
2627
  };
2663
2628
  };
2664
2629
 
@@ -2684,7 +2649,6 @@ function init2() {
2684
2649
  component: EditingPanelHooks
2685
2650
  });
2686
2651
  init();
2687
- initCssClasses();
2688
2652
  }
2689
2653
  var blockV1Panel = () => {
2690
2654
  (0, import_editor_v1_adapters4.__privateBlockDataCommand)({
@@ -2697,9 +2661,10 @@ var blockV1Panel = () => {
2697
2661
  init2();
2698
2662
  // Annotate the CommonJS export names for ESM import in node:
2699
2663
  0 && (module.exports = {
2700
- registerGlobalClassMenuItem,
2701
- registerStateMenuItem,
2664
+ injectIntoClassSelectorActions,
2702
2665
  replaceControl,
2703
- useBoundProp
2666
+ useBoundProp,
2667
+ usePanelActions,
2668
+ usePanelStatus
2704
2669
  });
2705
2670
  //# sourceMappingURL=index.js.map