@elementor/editor-components 3.35.0-427 → 3.35.0-428

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
@@ -44,7 +44,7 @@ var import_editor_panels4 = require("@elementor/editor-panels");
44
44
  var import_editor_styles_repository2 = require("@elementor/editor-styles-repository");
45
45
  var import_editor_v1_adapters10 = require("@elementor/editor-v1-adapters");
46
46
  var import_store78 = require("@elementor/store");
47
- var import_i18n28 = require("@wordpress/i18n");
47
+ var import_i18n29 = require("@wordpress/i18n");
48
48
 
49
49
  // src/component-instance-transformer.ts
50
50
  var import_editor_canvas = require("@elementor/editor-canvas");
@@ -1635,8 +1635,8 @@ function getComponentName() {
1635
1635
  }
1636
1636
 
1637
1637
  // src/components/components-tab/components.tsx
1638
- var React17 = __toESM(require("react"));
1639
- var import_editor_ui7 = require("@elementor/editor-ui");
1638
+ var React18 = __toESM(require("react"));
1639
+ var import_editor_ui8 = require("@elementor/editor-ui");
1640
1640
 
1641
1641
  // src/hooks/use-components.ts
1642
1642
  var import_store27 = require("@elementor/store");
@@ -1695,12 +1695,12 @@ var ComponentSearch = () => {
1695
1695
  };
1696
1696
 
1697
1697
  // src/components/components-tab/components-list.tsx
1698
- var React16 = __toESM(require("react"));
1698
+ var React17 = __toESM(require("react"));
1699
1699
  var import_react9 = require("react");
1700
1700
  var import_editor_mcp = require("@elementor/editor-mcp");
1701
1701
  var import_icons10 = require("@elementor/icons");
1702
1702
  var import_ui15 = require("@elementor/ui");
1703
- var import_i18n18 = require("@wordpress/i18n");
1703
+ var import_i18n19 = require("@wordpress/i18n");
1704
1704
 
1705
1705
  // src/store/actions/rename-component.ts
1706
1706
  var import_editor_documents7 = require("@elementor/editor-documents");
@@ -2046,14 +2046,14 @@ function AngiePromotionCard({ onClose }) {
2046
2046
  }
2047
2047
 
2048
2048
  // src/components/components-tab/components-item.tsx
2049
- var React14 = __toESM(require("react"));
2049
+ var React15 = __toESM(require("react"));
2050
2050
  var import_react8 = require("react");
2051
2051
  var import_editor_canvas5 = require("@elementor/editor-canvas");
2052
2052
  var import_editor_elements8 = require("@elementor/editor-elements");
2053
- var import_editor_ui6 = require("@elementor/editor-ui");
2053
+ var import_editor_ui7 = require("@elementor/editor-ui");
2054
2054
  var import_icons9 = require("@elementor/icons");
2055
2055
  var import_ui13 = require("@elementor/ui");
2056
- var import_i18n17 = require("@wordpress/i18n");
2056
+ var import_i18n18 = require("@wordpress/i18n");
2057
2057
 
2058
2058
  // src/store/actions/archive-component.ts
2059
2059
  var import_editor_documents8 = require("@elementor/editor-documents");
@@ -2293,16 +2293,28 @@ var createComponentModel2 = (component) => {
2293
2293
  };
2294
2294
  };
2295
2295
 
2296
+ // src/components/components-tab/delete-confirmation-dialog.tsx
2297
+ var React14 = __toESM(require("react"));
2298
+ var import_editor_ui6 = require("@elementor/editor-ui");
2299
+ var import_i18n17 = require("@wordpress/i18n");
2300
+ function DeleteConfirmationDialog({ open, onClose, onConfirm }) {
2301
+ return /* @__PURE__ */ React14.createElement(import_editor_ui6.ConfirmationDialog, { open, onClose }, /* @__PURE__ */ React14.createElement(import_editor_ui6.ConfirmationDialog.Title, null, (0, import_i18n17.__)("Delete this component?", "elementor")), /* @__PURE__ */ React14.createElement(import_editor_ui6.ConfirmationDialog.Content, null, /* @__PURE__ */ React14.createElement(import_editor_ui6.ConfirmationDialog.ContentText, null, (0, import_i18n17.__)(
2302
+ "Existing instances on your pages will remain functional. You will no longer find this component in your list.",
2303
+ "elementor"
2304
+ ))), /* @__PURE__ */ React14.createElement(import_editor_ui6.ConfirmationDialog.Actions, { onClose, onConfirm }));
2305
+ }
2306
+
2296
2307
  // src/components/components-tab/components-item.tsx
2297
2308
  var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2298
2309
  const itemRef = (0, import_react8.useRef)(null);
2310
+ const [isDeleteDialogOpen, setIsDeleteDialogOpen] = (0, import_react8.useState)(false);
2299
2311
  const {
2300
2312
  ref: editableRef,
2301
2313
  isEditing,
2302
2314
  openEditMode,
2303
2315
  error,
2304
2316
  getProps: getEditableProps
2305
- } = (0, import_editor_ui6.useEditable)({
2317
+ } = (0, import_editor_ui7.useEditable)({
2306
2318
  value: component.name,
2307
2319
  onSubmit: renameComponent2,
2308
2320
  validation: validateComponentTitle
@@ -2319,15 +2331,22 @@ var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2319
2331
  loadComponentsAssets([componentModel]);
2320
2332
  (0, import_editor_canvas5.endDragElementFromPanel)();
2321
2333
  };
2322
- const handleArchiveClick = () => {
2334
+ const handleDeleteClick = () => {
2323
2335
  popupState.close();
2336
+ setIsDeleteDialogOpen(true);
2337
+ };
2338
+ const handleDeleteConfirm = () => {
2324
2339
  if (!component.id) {
2325
2340
  throw new Error("Component ID is required");
2326
2341
  }
2342
+ setIsDeleteDialogOpen(false);
2327
2343
  archiveComponent(component.id, component.name);
2328
2344
  };
2329
- return /* @__PURE__ */ React14.createElement(import_ui13.Stack, null, /* @__PURE__ */ React14.createElement(
2330
- import_editor_ui6.WarningInfotip,
2345
+ const handleDeleteDialogClose = () => {
2346
+ setIsDeleteDialogOpen(false);
2347
+ };
2348
+ return /* @__PURE__ */ React15.createElement(import_ui13.Stack, null, /* @__PURE__ */ React15.createElement(
2349
+ import_editor_ui7.WarningInfotip,
2331
2350
  {
2332
2351
  open: Boolean(error),
2333
2352
  text: error ?? "",
@@ -2335,7 +2354,7 @@ var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2335
2354
  width: itemRef.current?.getBoundingClientRect().width,
2336
2355
  offset: [0, -15]
2337
2356
  },
2338
- /* @__PURE__ */ React14.createElement(
2357
+ /* @__PURE__ */ React15.createElement(
2339
2358
  import_ui13.ListItemButton,
2340
2359
  {
2341
2360
  draggable: true,
@@ -2354,7 +2373,7 @@ var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2354
2373
  gap: 1
2355
2374
  }
2356
2375
  },
2357
- /* @__PURE__ */ React14.createElement(
2376
+ /* @__PURE__ */ React15.createElement(
2358
2377
  import_ui13.Box,
2359
2378
  {
2360
2379
  display: "flex",
@@ -2364,17 +2383,17 @@ var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2364
2383
  flexGrow: 1,
2365
2384
  onClick: handleClick
2366
2385
  },
2367
- /* @__PURE__ */ React14.createElement(import_ui13.ListItemIcon, { size: "tiny" }, /* @__PURE__ */ React14.createElement(import_icons9.ComponentsIcon, { fontSize: "tiny" })),
2368
- /* @__PURE__ */ React14.createElement(Indicator, { isActive: isEditing, isError: !!error }, /* @__PURE__ */ React14.createElement(import_ui13.Box, { display: "flex", flex: 1, minWidth: 0, flexGrow: 1 }, isEditing ? /* @__PURE__ */ React14.createElement(
2369
- import_editor_ui6.EditableField,
2386
+ /* @__PURE__ */ React15.createElement(import_ui13.ListItemIcon, { size: "tiny" }, /* @__PURE__ */ React15.createElement(import_icons9.ComponentsIcon, { fontSize: "tiny" })),
2387
+ /* @__PURE__ */ React15.createElement(Indicator, { isActive: isEditing, isError: !!error }, /* @__PURE__ */ React15.createElement(import_ui13.Box, { display: "flex", flex: 1, minWidth: 0, flexGrow: 1 }, isEditing ? /* @__PURE__ */ React15.createElement(
2388
+ import_editor_ui7.EditableField,
2370
2389
  {
2371
2390
  ref: editableRef,
2372
2391
  as: import_ui13.Typography,
2373
2392
  variant: "caption",
2374
2393
  ...getEditableProps()
2375
2394
  }
2376
- ) : /* @__PURE__ */ React14.createElement(
2377
- import_editor_ui6.EllipsisWithTooltip,
2395
+ ) : /* @__PURE__ */ React15.createElement(
2396
+ import_editor_ui7.EllipsisWithTooltip,
2378
2397
  {
2379
2398
  title: component.name,
2380
2399
  as: import_ui13.Typography,
@@ -2383,9 +2402,9 @@ var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2383
2402
  }
2384
2403
  )))
2385
2404
  ),
2386
- /* @__PURE__ */ React14.createElement(import_ui13.IconButton, { size: "tiny", ...(0, import_ui13.bindTrigger)(popupState), "aria-label": "More actions" }, /* @__PURE__ */ React14.createElement(import_icons9.DotsVerticalIcon, { fontSize: "tiny" }))
2405
+ /* @__PURE__ */ React15.createElement(import_ui13.IconButton, { size: "tiny", ...(0, import_ui13.bindTrigger)(popupState), "aria-label": "More actions" }, /* @__PURE__ */ React15.createElement(import_icons9.DotsVerticalIcon, { fontSize: "tiny" }))
2387
2406
  )
2388
- ), /* @__PURE__ */ React14.createElement(
2407
+ ), /* @__PURE__ */ React15.createElement(
2389
2408
  import_ui13.Menu,
2390
2409
  {
2391
2410
  ...(0, import_ui13.bindMenu)(popupState),
@@ -2398,8 +2417,8 @@ var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2398
2417
  horizontal: "right"
2399
2418
  }
2400
2419
  },
2401
- /* @__PURE__ */ React14.createElement(
2402
- import_editor_ui6.MenuListItem,
2420
+ /* @__PURE__ */ React15.createElement(
2421
+ import_editor_ui7.MenuListItem,
2403
2422
  {
2404
2423
  sx: { minWidth: "160px" },
2405
2424
  onClick: () => {
@@ -2407,9 +2426,16 @@ var ComponentItem = ({ component, renameComponent: renameComponent2 }) => {
2407
2426
  openEditMode();
2408
2427
  }
2409
2428
  },
2410
- (0, import_i18n17.__)("Rename", "elementor")
2429
+ (0, import_i18n18.__)("Rename", "elementor")
2411
2430
  ),
2412
- /* @__PURE__ */ React14.createElement(import_editor_ui6.MenuListItem, { sx: { minWidth: "160px" }, onClick: handleArchiveClick }, /* @__PURE__ */ React14.createElement(import_ui13.Typography, { variant: "caption", sx: { color: "error.light" } }, (0, import_i18n17.__)("Delete", "elementor")))
2431
+ /* @__PURE__ */ React15.createElement(import_editor_ui7.MenuListItem, { sx: { minWidth: "160px" }, onClick: handleDeleteClick }, /* @__PURE__ */ React15.createElement(import_ui13.Typography, { variant: "caption", sx: { color: "error.light" } }, (0, import_i18n18.__)("Delete", "elementor")))
2432
+ ), /* @__PURE__ */ React15.createElement(
2433
+ DeleteConfirmationDialog,
2434
+ {
2435
+ open: isDeleteDialogOpen,
2436
+ onClose: handleDeleteDialogClose,
2437
+ onConfirm: handleDeleteConfirm
2438
+ }
2413
2439
  ));
2414
2440
  };
2415
2441
  var addComponentToPage = (model) => {
@@ -2454,12 +2480,12 @@ var getIndicatorBorder = ({ isActive, isError, theme }) => {
2454
2480
  };
2455
2481
 
2456
2482
  // src/components/components-tab/loading-components.tsx
2457
- var React15 = __toESM(require("react"));
2483
+ var React16 = __toESM(require("react"));
2458
2484
  var import_ui14 = require("@elementor/ui");
2459
2485
  var ROWS_COUNT = 6;
2460
2486
  var rows = Array.from({ length: ROWS_COUNT }, (_, index) => index);
2461
2487
  var LoadingComponents = () => {
2462
- return /* @__PURE__ */ React15.createElement(
2488
+ return /* @__PURE__ */ React16.createElement(
2463
2489
  import_ui14.Stack,
2464
2490
  {
2465
2491
  "aria-label": "Loading components",
@@ -2481,14 +2507,14 @@ var LoadingComponents = () => {
2481
2507
  }
2482
2508
  }
2483
2509
  },
2484
- rows.map((row) => /* @__PURE__ */ React15.createElement(
2510
+ rows.map((row) => /* @__PURE__ */ React16.createElement(
2485
2511
  import_ui14.ListItemButton,
2486
2512
  {
2487
2513
  key: row,
2488
2514
  sx: { border: "solid 1px", borderColor: "divider", py: 0.5, px: 1 },
2489
2515
  shape: "rounded"
2490
2516
  },
2491
- /* @__PURE__ */ React15.createElement(import_ui14.Box, { display: "flex", gap: 1, width: "100%" }, /* @__PURE__ */ React15.createElement(import_ui14.Skeleton, { variant: "text", width: "24px", height: "36px" }), /* @__PURE__ */ React15.createElement(import_ui14.Skeleton, { variant: "text", width: "100%", height: "36px" }))
2517
+ /* @__PURE__ */ React16.createElement(import_ui14.Box, { display: "flex", gap: 1, width: "100%" }, /* @__PURE__ */ React16.createElement(import_ui14.Skeleton, { variant: "text", width: "24px", height: "36px" }), /* @__PURE__ */ React16.createElement(import_ui14.Skeleton, { variant: "text", width: "100%", height: "36px" }))
2492
2518
  ))
2493
2519
  );
2494
2520
  };
@@ -2502,16 +2528,16 @@ var SUBTITLE_OVERRIDE_SX = {
2502
2528
  function ComponentsList() {
2503
2529
  const { components, isLoading, searchValue } = useFilteredComponents();
2504
2530
  if (isLoading) {
2505
- return /* @__PURE__ */ React16.createElement(LoadingComponents, null);
2531
+ return /* @__PURE__ */ React17.createElement(LoadingComponents, null);
2506
2532
  }
2507
2533
  const isEmpty = !components || components.length === 0;
2508
2534
  if (isEmpty) {
2509
2535
  if (searchValue.length > 0) {
2510
- return /* @__PURE__ */ React16.createElement(EmptySearchResult, null);
2536
+ return /* @__PURE__ */ React17.createElement(EmptySearchResult, null);
2511
2537
  }
2512
- return /* @__PURE__ */ React16.createElement(EmptyState, null);
2538
+ return /* @__PURE__ */ React17.createElement(EmptyState, null);
2513
2539
  }
2514
- return /* @__PURE__ */ React16.createElement(import_ui15.List, { sx: { display: "flex", flexDirection: "column", gap: 1, px: 2 } }, components.map((component) => /* @__PURE__ */ React16.createElement(
2540
+ return /* @__PURE__ */ React17.createElement(import_ui15.List, { sx: { display: "flex", flexDirection: "column", gap: 1, px: 2 } }, components.map((component) => /* @__PURE__ */ React17.createElement(
2515
2541
  ComponentItem,
2516
2542
  {
2517
2543
  key: component.uid,
@@ -2528,7 +2554,7 @@ var EmptyState = () => {
2528
2554
  const sdk = (0, import_editor_mcp.getAngieSdk)();
2529
2555
  if (sdk.isAngieReady()) {
2530
2556
  sdk.triggerAngie({
2531
- prompt: (0, import_i18n18.__)(
2557
+ prompt: (0, import_i18n19.__)(
2532
2558
  "Create a [hero/testimonial/product card/CTA/feature] component for my [business type]. Include [describe what you want]",
2533
2559
  "elementor"
2534
2560
  ),
@@ -2538,7 +2564,7 @@ var EmptyState = () => {
2538
2564
  setIsAngieModalOpen(true);
2539
2565
  }
2540
2566
  };
2541
- return /* @__PURE__ */ React16.createElement(
2567
+ return /* @__PURE__ */ React17.createElement(
2542
2568
  import_ui15.Stack,
2543
2569
  {
2544
2570
  alignItems: "center",
@@ -2548,7 +2574,7 @@ var EmptyState = () => {
2548
2574
  gap: 2,
2549
2575
  overflow: "hidden"
2550
2576
  },
2551
- /* @__PURE__ */ React16.createElement(import_ui15.Stack, { alignItems: "center", gap: 1 }, /* @__PURE__ */ React16.createElement(import_icons10.ComponentsIcon, { fontSize: "large", sx: { color: "text.secondary" } }), /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "subtitle2", color: "text.secondary", sx: SUBTITLE_OVERRIDE_SX }, (0, import_i18n18.__)("No components yet", "elementor")), /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "secondary", sx: { maxWidth: 200 } }, (0, import_i18n18.__)("Components are reusable blocks that sync across your site.", "elementor"), /* @__PURE__ */ React16.createElement("br", null), (0, import_i18n18.__)("Create once, use everywhere.", "elementor")), /* @__PURE__ */ React16.createElement(
2577
+ /* @__PURE__ */ React17.createElement(import_ui15.Stack, { alignItems: "center", gap: 1 }, /* @__PURE__ */ React17.createElement(import_icons10.ComponentsIcon, { fontSize: "large", sx: { color: "text.secondary" } }), /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "subtitle2", color: "text.secondary", sx: SUBTITLE_OVERRIDE_SX }, (0, import_i18n19.__)("No components yet", "elementor")), /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "secondary", sx: { maxWidth: 200 } }, (0, import_i18n19.__)("Components are reusable blocks that sync across your site.", "elementor"), /* @__PURE__ */ React17.createElement("br", null), (0, import_i18n19.__)("Create once, use everywhere.", "elementor")), /* @__PURE__ */ React17.createElement(
2552
2578
  import_ui15.Link,
2553
2579
  {
2554
2580
  href: LEARN_MORE_URL,
@@ -2557,28 +2583,28 @@ var EmptyState = () => {
2557
2583
  variant: "caption",
2558
2584
  color: "info.main"
2559
2585
  },
2560
- (0, import_i18n18.__)("Learn more about components", "elementor")
2586
+ (0, import_i18n19.__)("Learn more about components", "elementor")
2561
2587
  )),
2562
- /* @__PURE__ */ React16.createElement(import_ui15.Divider, { sx: { width: "100%" } }),
2563
- /* @__PURE__ */ React16.createElement(import_ui15.Stack, { alignItems: "center", gap: 1, width: "100%" }, /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "subtitle2", color: "text.secondary", sx: SUBTITLE_OVERRIDE_SX }, (0, import_i18n18.__)("Create your first one:", "elementor")), /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "secondary", sx: { maxWidth: 228 } }, (0, import_i18n18.__)(
2588
+ /* @__PURE__ */ React17.createElement(import_ui15.Divider, { sx: { width: "100%" } }),
2589
+ /* @__PURE__ */ React17.createElement(import_ui15.Stack, { alignItems: "center", gap: 1, width: "100%" }, /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "subtitle2", color: "text.secondary", sx: SUBTITLE_OVERRIDE_SX }, (0, import_i18n19.__)("Create your first one:", "elementor")), /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "secondary", sx: { maxWidth: 228 } }, (0, import_i18n19.__)(
2564
2590
  'Right-click any div-block or flexbox on your canvas or structure and select "Create component"',
2565
2591
  "elementor"
2566
- )), /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "secondary" }, (0, import_i18n18.__)("Or", "elementor")), /* @__PURE__ */ React16.createElement(AngiePromotionModal, { open: isAngieModalOpen, onClose: () => setIsAngieModalOpen(false) }, /* @__PURE__ */ React16.createElement(
2592
+ )), /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "secondary" }, (0, import_i18n19.__)("Or", "elementor")), /* @__PURE__ */ React17.createElement(AngiePromotionModal, { open: isAngieModalOpen, onClose: () => setIsAngieModalOpen(false) }, /* @__PURE__ */ React17.createElement(
2567
2593
  import_ui15.Button,
2568
2594
  {
2569
2595
  color: "secondary",
2570
2596
  variant: "outlined",
2571
2597
  size: "small",
2572
2598
  onClick: handleCreateWithAI,
2573
- endIcon: /* @__PURE__ */ React16.createElement(import_icons10.AIIcon, null)
2599
+ endIcon: /* @__PURE__ */ React17.createElement(import_icons10.AIIcon, null)
2574
2600
  },
2575
- (0, import_i18n18.__)("Create component with AI", "elementor")
2601
+ (0, import_i18n19.__)("Create component with AI", "elementor")
2576
2602
  )))
2577
2603
  );
2578
2604
  };
2579
2605
  var EmptySearchResult = () => {
2580
2606
  const { searchValue, clearSearch } = useSearch();
2581
- return /* @__PURE__ */ React16.createElement(
2607
+ return /* @__PURE__ */ React17.createElement(
2582
2608
  import_ui15.Stack,
2583
2609
  {
2584
2610
  color: "text.secondary",
@@ -2588,16 +2614,16 @@ var EmptySearchResult = () => {
2588
2614
  overflow: "hidden",
2589
2615
  justifySelf: "center"
2590
2616
  },
2591
- /* @__PURE__ */ React16.createElement(import_icons10.ComponentsIcon, null),
2592
- /* @__PURE__ */ React16.createElement(
2617
+ /* @__PURE__ */ React17.createElement(import_icons10.ComponentsIcon, null),
2618
+ /* @__PURE__ */ React17.createElement(
2593
2619
  import_ui15.Box,
2594
2620
  {
2595
2621
  sx: {
2596
2622
  width: "100%"
2597
2623
  }
2598
2624
  },
2599
- /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "subtitle2", color: "inherit", sx: SUBTITLE_OVERRIDE_SX }, (0, import_i18n18.__)("Sorry, nothing matched", "elementor")),
2600
- searchValue && /* @__PURE__ */ React16.createElement(
2625
+ /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "subtitle2", color: "inherit", sx: SUBTITLE_OVERRIDE_SX }, (0, import_i18n19.__)("Sorry, nothing matched", "elementor")),
2626
+ searchValue && /* @__PURE__ */ React17.createElement(
2601
2627
  import_ui15.Typography,
2602
2628
  {
2603
2629
  variant: "subtitle2",
@@ -2609,8 +2635,8 @@ var EmptySearchResult = () => {
2609
2635
  justifyContent: "center"
2610
2636
  }
2611
2637
  },
2612
- /* @__PURE__ */ React16.createElement("span", null, "\u201C"),
2613
- /* @__PURE__ */ React16.createElement(
2638
+ /* @__PURE__ */ React17.createElement("span", null, "\u201C"),
2639
+ /* @__PURE__ */ React17.createElement(
2614
2640
  "span",
2615
2641
  {
2616
2642
  style: {
@@ -2621,11 +2647,11 @@ var EmptySearchResult = () => {
2621
2647
  },
2622
2648
  searchValue
2623
2649
  ),
2624
- /* @__PURE__ */ React16.createElement("span", null, "\u201D.")
2650
+ /* @__PURE__ */ React17.createElement("span", null, "\u201D.")
2625
2651
  )
2626
2652
  ),
2627
- /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "inherit" }, (0, import_i18n18.__)("Try something else.", "elementor")),
2628
- /* @__PURE__ */ React16.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "inherit" }, /* @__PURE__ */ React16.createElement(import_ui15.Link, { color: "secondary", variant: "caption", component: "button", onClick: clearSearch }, (0, import_i18n18.__)("Clear & try again", "elementor")))
2653
+ /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "inherit" }, (0, import_i18n19.__)("Try something else.", "elementor")),
2654
+ /* @__PURE__ */ React17.createElement(import_ui15.Typography, { align: "center", variant: "caption", color: "inherit" }, /* @__PURE__ */ React17.createElement(import_ui15.Link, { color: "secondary", variant: "caption", component: "button", onClick: clearSearch }, (0, import_i18n19.__)("Clear & try again", "elementor")))
2629
2655
  );
2630
2656
  };
2631
2657
  var useFilteredComponents = () => {
@@ -2644,25 +2670,25 @@ var useFilteredComponents = () => {
2644
2670
  var ComponentsContent = () => {
2645
2671
  const { components, isLoading } = useComponents();
2646
2672
  const hasComponents = !isLoading && components.length > 0;
2647
- return /* @__PURE__ */ React17.createElement(React17.Fragment, null, hasComponents && /* @__PURE__ */ React17.createElement(ComponentSearch, null), /* @__PURE__ */ React17.createElement(ComponentsList, null));
2673
+ return /* @__PURE__ */ React18.createElement(React18.Fragment, null, hasComponents && /* @__PURE__ */ React18.createElement(ComponentSearch, null), /* @__PURE__ */ React18.createElement(ComponentsList, null));
2648
2674
  };
2649
2675
  var Components = () => {
2650
- return /* @__PURE__ */ React17.createElement(import_editor_ui7.ThemeProvider, null, /* @__PURE__ */ React17.createElement(SearchProvider, { localStorageKey: "elementor-components-search" }, /* @__PURE__ */ React17.createElement(ComponentsContent, null)));
2676
+ return /* @__PURE__ */ React18.createElement(import_editor_ui8.ThemeProvider, null, /* @__PURE__ */ React18.createElement(SearchProvider, { localStorageKey: "elementor-components-search" }, /* @__PURE__ */ React18.createElement(ComponentsContent, null)));
2651
2677
  };
2652
2678
 
2653
2679
  // src/components/consts.ts
2654
2680
  var COMPONENT_DOCUMENT_TYPE = "elementor_component";
2655
2681
 
2656
2682
  // src/components/create-component-form/create-component-form.tsx
2657
- var React18 = __toESM(require("react"));
2683
+ var React19 = __toESM(require("react"));
2658
2684
  var import_react11 = require("react");
2659
2685
  var import_editor_elements10 = require("@elementor/editor-elements");
2660
2686
  var import_editor_notifications3 = require("@elementor/editor-notifications");
2661
- var import_editor_ui8 = require("@elementor/editor-ui");
2687
+ var import_editor_ui9 = require("@elementor/editor-ui");
2662
2688
  var import_icons11 = require("@elementor/icons");
2663
2689
  var import_store47 = require("@elementor/store");
2664
2690
  var import_ui16 = require("@elementor/ui");
2665
- var import_i18n20 = require("@wordpress/i18n");
2691
+ var import_i18n21 = require("@wordpress/i18n");
2666
2692
 
2667
2693
  // src/prevent-non-atomic-nesting.ts
2668
2694
  var import_editor_canvas6 = require("@elementor/editor-canvas");
@@ -2670,10 +2696,10 @@ var import_editor_elements9 = require("@elementor/editor-elements");
2670
2696
  var import_editor_notifications2 = require("@elementor/editor-notifications");
2671
2697
  var import_editor_v1_adapters4 = require("@elementor/editor-v1-adapters");
2672
2698
  var import_store43 = require("@elementor/store");
2673
- var import_i18n19 = require("@wordpress/i18n");
2699
+ var import_i18n20 = require("@wordpress/i18n");
2674
2700
  var NON_ATOMIC_ELEMENT_ALERT = {
2675
2701
  type: "default",
2676
- message: (0, import_i18n19.__)("This widget isn't compatible with components. Use atomic elements instead.", "elementor"),
2702
+ message: (0, import_i18n20.__)("This widget isn't compatible with components. Use atomic elements instead.", "elementor"),
2677
2703
  id: "non-atomic-element-blocked"
2678
2704
  };
2679
2705
  function initNonAtomicNestingPrevention() {
@@ -2893,7 +2919,7 @@ function CreateComponentForm() {
2893
2919
  if (nonAtomicElements.length > 0) {
2894
2920
  (0, import_editor_notifications3.notify)({
2895
2921
  type: "default",
2896
- message: (0, import_i18n20.__)(
2922
+ message: (0, import_i18n21.__)(
2897
2923
  "Components require atomic elements only. Remove widgets to create this component.",
2898
2924
  "elementor"
2899
2925
  ),
@@ -2932,12 +2958,12 @@ function CreateComponentForm() {
2932
2958
  }
2933
2959
  (0, import_editor_notifications3.notify)({
2934
2960
  type: "success",
2935
- message: (0, import_i18n20.__)("Component created successfully.", "elementor"),
2961
+ message: (0, import_i18n21.__)("Component created successfully.", "elementor"),
2936
2962
  id: `component-saved-successfully-${uid}`
2937
2963
  });
2938
2964
  resetAndClosePopup();
2939
2965
  } catch {
2940
- const errorMessage = (0, import_i18n20.__)("Failed to create component. Please try again.", "elementor");
2966
+ const errorMessage = (0, import_i18n21.__)("Failed to create component. Please try again.", "elementor");
2941
2967
  (0, import_editor_notifications3.notify)({
2942
2968
  type: "error",
2943
2969
  message: errorMessage,
@@ -2956,7 +2982,7 @@ function CreateComponentForm() {
2956
2982
  ...eventData.current
2957
2983
  });
2958
2984
  };
2959
- return /* @__PURE__ */ React18.createElement(import_editor_ui8.ThemeProvider, null, /* @__PURE__ */ React18.createElement(
2985
+ return /* @__PURE__ */ React19.createElement(import_editor_ui9.ThemeProvider, null, /* @__PURE__ */ React19.createElement(
2960
2986
  import_ui16.Popover,
2961
2987
  {
2962
2988
  open: element !== null,
@@ -2964,7 +2990,7 @@ function CreateComponentForm() {
2964
2990
  anchorReference: "anchorPosition",
2965
2991
  anchorPosition
2966
2992
  },
2967
- element !== null && /* @__PURE__ */ React18.createElement(
2993
+ element !== null && /* @__PURE__ */ React19.createElement(
2968
2994
  Form2,
2969
2995
  {
2970
2996
  initialValues: { componentName: element.elementLabel },
@@ -3000,13 +3026,13 @@ var Form2 = ({
3000
3026
  }
3001
3027
  };
3002
3028
  const texts = {
3003
- heading: (0, import_i18n20.__)("Create component", "elementor"),
3004
- name: (0, import_i18n20.__)("Name", "elementor"),
3005
- cancel: (0, import_i18n20.__)("Cancel", "elementor"),
3006
- create: (0, import_i18n20.__)("Create", "elementor")
3029
+ heading: (0, import_i18n21.__)("Create component", "elementor"),
3030
+ name: (0, import_i18n21.__)("Name", "elementor"),
3031
+ cancel: (0, import_i18n21.__)("Cancel", "elementor"),
3032
+ create: (0, import_i18n21.__)("Create", "elementor")
3007
3033
  };
3008
3034
  const nameInputId = "component-name";
3009
- return /* @__PURE__ */ React18.createElement(import_editor_ui8.Form, { onSubmit: handleSubmit }, /* @__PURE__ */ React18.createElement(import_ui16.Stack, { alignItems: "start", width: "268px" }, /* @__PURE__ */ React18.createElement(
3035
+ return /* @__PURE__ */ React19.createElement(import_editor_ui9.Form, { onSubmit: handleSubmit }, /* @__PURE__ */ React19.createElement(import_ui16.Stack, { alignItems: "start", width: "268px" }, /* @__PURE__ */ React19.createElement(
3010
3036
  import_ui16.Stack,
3011
3037
  {
3012
3038
  direction: "row",
@@ -3015,9 +3041,9 @@ var Form2 = ({
3015
3041
  px: 1.5,
3016
3042
  sx: { columnGap: 0.5, borderBottom: "1px solid", borderColor: "divider", width: "100%" }
3017
3043
  },
3018
- /* @__PURE__ */ React18.createElement(import_icons11.ComponentsIcon, { fontSize: FONT_SIZE }),
3019
- /* @__PURE__ */ React18.createElement(import_ui16.Typography, { variant: "caption", sx: { color: "text.primary", fontWeight: "500", lineHeight: 1 } }, texts.heading)
3020
- ), /* @__PURE__ */ React18.createElement(import_ui16.Grid, { container: true, gap: 0.75, alignItems: "start", p: 1.5 }, /* @__PURE__ */ React18.createElement(import_ui16.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React18.createElement(import_ui16.FormLabel, { htmlFor: nameInputId, size: "tiny" }, texts.name)), /* @__PURE__ */ React18.createElement(import_ui16.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React18.createElement(
3044
+ /* @__PURE__ */ React19.createElement(import_icons11.ComponentsIcon, { fontSize: FONT_SIZE }),
3045
+ /* @__PURE__ */ React19.createElement(import_ui16.Typography, { variant: "caption", sx: { color: "text.primary", fontWeight: "500", lineHeight: 1 } }, texts.heading)
3046
+ ), /* @__PURE__ */ React19.createElement(import_ui16.Grid, { container: true, gap: 0.75, alignItems: "start", p: 1.5 }, /* @__PURE__ */ React19.createElement(import_ui16.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React19.createElement(import_ui16.FormLabel, { htmlFor: nameInputId, size: "tiny" }, texts.name)), /* @__PURE__ */ React19.createElement(import_ui16.Grid, { item: true, xs: 12 }, /* @__PURE__ */ React19.createElement(
3021
3047
  import_ui16.TextField,
3022
3048
  {
3023
3049
  id: nameInputId,
@@ -3029,11 +3055,11 @@ var Form2 = ({
3029
3055
  error: Boolean(errors.componentName),
3030
3056
  helperText: errors.componentName
3031
3057
  }
3032
- ))), /* @__PURE__ */ React18.createElement(import_ui16.Stack, { direction: "row", justifyContent: "flex-end", alignSelf: "end", py: 1, px: 1.5 }, /* @__PURE__ */ React18.createElement(import_ui16.Button, { onClick: closePopup, color: "secondary", variant: "text", size: "small" }, texts.cancel), /* @__PURE__ */ React18.createElement(import_ui16.Button, { type: "submit", disabled: !isValid, variant: "contained", color: "primary", size: "small" }, texts.create))));
3058
+ ))), /* @__PURE__ */ React19.createElement(import_ui16.Stack, { direction: "row", justifyContent: "flex-end", alignSelf: "end", py: 1, px: 1.5 }, /* @__PURE__ */ React19.createElement(import_ui16.Button, { onClick: closePopup, color: "secondary", variant: "text", size: "small" }, texts.cancel), /* @__PURE__ */ React19.createElement(import_ui16.Button, { type: "submit", disabled: !isValid, variant: "contained", color: "primary", size: "small" }, texts.create))));
3033
3059
  };
3034
3060
 
3035
3061
  // src/components/edit-component/edit-component.tsx
3036
- var React20 = __toESM(require("react"));
3062
+ var React21 = __toESM(require("react"));
3037
3063
  var import_react14 = require("react");
3038
3064
  var import_editor_documents11 = require("@elementor/editor-documents");
3039
3065
  var import_editor_v1_adapters7 = require("@elementor/editor-v1-adapters");
@@ -3056,10 +3082,10 @@ function updateCurrentComponent({
3056
3082
  }
3057
3083
 
3058
3084
  // src/components/edit-component/component-modal.tsx
3059
- var React19 = __toESM(require("react"));
3085
+ var React20 = __toESM(require("react"));
3060
3086
  var import_react13 = require("react");
3061
3087
  var import_react_dom = require("react-dom");
3062
- var import_i18n21 = require("@wordpress/i18n");
3088
+ var import_i18n22 = require("@wordpress/i18n");
3063
3089
 
3064
3090
  // src/hooks/use-canvas-document.ts
3065
3091
  var import_editor_canvas7 = require("@elementor/editor-canvas");
@@ -3149,7 +3175,7 @@ function ComponentModal({ element, onClose }) {
3149
3175
  return null;
3150
3176
  }
3151
3177
  return (0, import_react_dom.createPortal)(
3152
- /* @__PURE__ */ React19.createElement(React19.Fragment, null, /* @__PURE__ */ React19.createElement(BlockEditPage, null), /* @__PURE__ */ React19.createElement(Backdrop, { canvas: canvasDocument, element, onClose })),
3178
+ /* @__PURE__ */ React20.createElement(React20.Fragment, null, /* @__PURE__ */ React20.createElement(BlockEditPage, null), /* @__PURE__ */ React20.createElement(Backdrop, { canvas: canvasDocument, element, onClose })),
3153
3179
  canvasDocument.body
3154
3180
  );
3155
3181
  }
@@ -3173,7 +3199,7 @@ function Backdrop({ canvas, element, onClose }) {
3173
3199
  onClose();
3174
3200
  }
3175
3201
  };
3176
- return /* @__PURE__ */ React19.createElement(
3202
+ return /* @__PURE__ */ React20.createElement(
3177
3203
  "div",
3178
3204
  {
3179
3205
  style: backdropStyle,
@@ -3181,7 +3207,7 @@ function Backdrop({ canvas, element, onClose }) {
3181
3207
  onKeyDown: handleKeyDown,
3182
3208
  role: "button",
3183
3209
  tabIndex: 0,
3184
- "aria-label": (0, import_i18n21.__)("Exit component editing mode", "elementor")
3210
+ "aria-label": (0, import_i18n22.__)("Exit component editing mode", "elementor")
3185
3211
  }
3186
3212
  );
3187
3213
  }
@@ -3231,7 +3257,7 @@ function BlockEditPage() {
3231
3257
  }
3232
3258
  }
3233
3259
  `;
3234
- return /* @__PURE__ */ React19.createElement("style", { "data-e-style-id": "e-block-v3-document-handles-styles" }, blockV3DocumentHandlesStyles);
3260
+ return /* @__PURE__ */ React20.createElement("style", { "data-e-style-id": "e-block-v3-document-handles-styles" }, blockV3DocumentHandlesStyles);
3235
3261
  }
3236
3262
 
3237
3263
  // src/components/edit-component/edit-component.tsx
@@ -3244,7 +3270,7 @@ function EditComponent() {
3244
3270
  if (!elementDom) {
3245
3271
  return null;
3246
3272
  }
3247
- return /* @__PURE__ */ React20.createElement(ComponentModal, { element: elementDom, onClose });
3273
+ return /* @__PURE__ */ React21.createElement(ComponentModal, { element: elementDom, onClose });
3248
3274
  }
3249
3275
  function useHandleDocumentSwitches() {
3250
3276
  const documentsManager = (0, import_editor_documents11.getV1DocumentsManager)();
@@ -3314,33 +3340,33 @@ function getComponentDOMElement(id2) {
3314
3340
  }
3315
3341
 
3316
3342
  // src/components/in-edit-mode.tsx
3317
- var React21 = __toESM(require("react"));
3318
- var import_editor_ui9 = require("@elementor/editor-ui");
3343
+ var React22 = __toESM(require("react"));
3344
+ var import_editor_ui10 = require("@elementor/editor-ui");
3319
3345
  var import_icons12 = require("@elementor/icons");
3320
3346
  var import_ui17 = require("@elementor/ui");
3321
- var import_i18n22 = require("@wordpress/i18n");
3347
+ var import_i18n23 = require("@wordpress/i18n");
3322
3348
  var openEditModeDialog = (lockedBy) => {
3323
- (0, import_editor_ui9.openDialog)({
3324
- component: /* @__PURE__ */ React21.createElement(EditModeDialog, { lockedBy })
3349
+ (0, import_editor_ui10.openDialog)({
3350
+ component: /* @__PURE__ */ React22.createElement(EditModeDialog, { lockedBy })
3325
3351
  });
3326
3352
  };
3327
3353
  var EditModeDialog = ({ lockedBy }) => {
3328
- const content = (0, import_i18n22.__)("%s is currently editing this document", "elementor").replace("%s", lockedBy);
3329
- return /* @__PURE__ */ React21.createElement(React21.Fragment, null, /* @__PURE__ */ React21.createElement(import_ui17.DialogHeader, { logo: false }, /* @__PURE__ */ React21.createElement(import_ui17.Box, { display: "flex", alignItems: "center", gap: 1 }, /* @__PURE__ */ React21.createElement(import_ui17.Icon, { color: "secondary" }, /* @__PURE__ */ React21.createElement(import_icons12.InfoCircleFilledIcon, { fontSize: "medium" })), /* @__PURE__ */ React21.createElement(import_ui17.Typography, { variant: "subtitle1" }, content))), /* @__PURE__ */ React21.createElement(import_ui17.DialogContent, null, /* @__PURE__ */ React21.createElement(import_ui17.Stack, { spacing: 2, direction: "column" }, /* @__PURE__ */ React21.createElement(import_ui17.Typography, { variant: "body2" }, (0, import_i18n22.__)(
3354
+ const content = (0, import_i18n23.__)("%s is currently editing this document", "elementor").replace("%s", lockedBy);
3355
+ return /* @__PURE__ */ React22.createElement(React22.Fragment, null, /* @__PURE__ */ React22.createElement(import_ui17.DialogHeader, { logo: false }, /* @__PURE__ */ React22.createElement(import_ui17.Box, { display: "flex", alignItems: "center", gap: 1 }, /* @__PURE__ */ React22.createElement(import_ui17.Icon, { color: "secondary" }, /* @__PURE__ */ React22.createElement(import_icons12.InfoCircleFilledIcon, { fontSize: "medium" })), /* @__PURE__ */ React22.createElement(import_ui17.Typography, { variant: "subtitle1" }, content))), /* @__PURE__ */ React22.createElement(import_ui17.DialogContent, null, /* @__PURE__ */ React22.createElement(import_ui17.Stack, { spacing: 2, direction: "column" }, /* @__PURE__ */ React22.createElement(import_ui17.Typography, { variant: "body2" }, (0, import_i18n23.__)(
3330
3356
  "You can wait for them to finish or reach out to coordinate your changes together.",
3331
3357
  "elementor"
3332
- )), /* @__PURE__ */ React21.createElement(import_ui17.DialogActions, null, /* @__PURE__ */ React21.createElement(import_ui17.Button, { color: "secondary", variant: "contained", onClick: import_editor_ui9.closeDialog }, (0, import_i18n22.__)("Close", "elementor"))))));
3358
+ )), /* @__PURE__ */ React22.createElement(import_ui17.DialogActions, null, /* @__PURE__ */ React22.createElement(import_ui17.Button, { color: "secondary", variant: "contained", onClick: import_editor_ui10.closeDialog }, (0, import_i18n23.__)("Close", "elementor"))))));
3333
3359
  };
3334
3360
 
3335
3361
  // src/components/instance-editing-panel/instance-editing-panel.tsx
3336
- var React26 = __toESM(require("react"));
3362
+ var React27 = __toESM(require("react"));
3337
3363
  var import_editor_controls4 = require("@elementor/editor-controls");
3338
3364
  var import_editor_editing_panel5 = require("@elementor/editor-editing-panel");
3339
3365
  var import_editor_elements14 = require("@elementor/editor-elements");
3340
3366
  var import_editor_panels3 = require("@elementor/editor-panels");
3341
3367
  var import_icons14 = require("@elementor/icons");
3342
3368
  var import_ui22 = require("@elementor/ui");
3343
- var import_i18n24 = require("@wordpress/i18n");
3369
+ var import_i18n25 = require("@wordpress/i18n");
3344
3370
 
3345
3371
  // src/hooks/use-component-instance-settings.ts
3346
3372
  var import_editor_editing_panel2 = require("@elementor/editor-editing-panel");
@@ -3406,12 +3432,12 @@ function useComponentInstanceSettings() {
3406
3432
  }
3407
3433
 
3408
3434
  // src/components/instance-editing-panel/empty-state.tsx
3409
- var React22 = __toESM(require("react"));
3435
+ var React23 = __toESM(require("react"));
3410
3436
  var import_icons13 = require("@elementor/icons");
3411
3437
  var import_ui18 = require("@elementor/ui");
3412
- var import_i18n23 = require("@wordpress/i18n");
3438
+ var import_i18n24 = require("@wordpress/i18n");
3413
3439
  var EmptyState2 = ({ onEditComponent }) => {
3414
- return /* @__PURE__ */ React22.createElement(
3440
+ return /* @__PURE__ */ React23.createElement(
3415
3441
  import_ui18.Stack,
3416
3442
  {
3417
3443
  alignItems: "center",
@@ -3421,25 +3447,25 @@ var EmptyState2 = ({ onEditComponent }) => {
3421
3447
  sx: { p: 2.5, pt: 8, pb: 5.5, mt: 1 },
3422
3448
  gap: 1.5
3423
3449
  },
3424
- /* @__PURE__ */ React22.createElement(import_icons13.ComponentPropListIcon, { fontSize: "large" }),
3425
- /* @__PURE__ */ React22.createElement(import_ui18.Typography, { align: "center", variant: "subtitle2" }, (0, import_i18n23.__)("No properties yet", "elementor")),
3426
- /* @__PURE__ */ React22.createElement(import_ui18.Typography, { align: "center", variant: "caption", maxWidth: "170px" }, (0, import_i18n23.__)(
3450
+ /* @__PURE__ */ React23.createElement(import_icons13.ComponentPropListIcon, { fontSize: "large" }),
3451
+ /* @__PURE__ */ React23.createElement(import_ui18.Typography, { align: "center", variant: "subtitle2" }, (0, import_i18n24.__)("No properties yet", "elementor")),
3452
+ /* @__PURE__ */ React23.createElement(import_ui18.Typography, { align: "center", variant: "caption", maxWidth: "170px" }, (0, import_i18n24.__)(
3427
3453
  "Edit the component to add properties, manage them or update the design across all instances.",
3428
3454
  "elementor"
3429
3455
  )),
3430
- /* @__PURE__ */ React22.createElement(import_ui18.Button, { variant: "outlined", color: "secondary", size: "small", sx: { mt: 1 }, onClick: onEditComponent }, /* @__PURE__ */ React22.createElement(import_icons13.PencilIcon, { fontSize: "small" }), (0, import_i18n23.__)("Edit component", "elementor"))
3456
+ /* @__PURE__ */ React23.createElement(import_ui18.Button, { variant: "outlined", color: "secondary", size: "small", sx: { mt: 1 }, onClick: onEditComponent }, /* @__PURE__ */ React23.createElement(import_icons13.PencilIcon, { fontSize: "small" }), (0, import_i18n24.__)("Edit component", "elementor"))
3431
3457
  );
3432
3458
  };
3433
3459
 
3434
3460
  // src/components/instance-editing-panel/override-props-group.tsx
3435
- var React25 = __toESM(require("react"));
3461
+ var React26 = __toESM(require("react"));
3436
3462
  var import_react15 = require("react");
3437
3463
  var import_editor_editing_panel4 = require("@elementor/editor-editing-panel");
3438
- var import_editor_ui10 = require("@elementor/editor-ui");
3464
+ var import_editor_ui11 = require("@elementor/editor-ui");
3439
3465
  var import_ui21 = require("@elementor/ui");
3440
3466
 
3441
3467
  // src/components/instance-editing-panel/override-prop-control.tsx
3442
- var React24 = __toESM(require("react"));
3468
+ var React25 = __toESM(require("react"));
3443
3469
  var import_editor_controls3 = require("@elementor/editor-controls");
3444
3470
  var import_editor_editing_panel3 = require("@elementor/editor-editing-panel");
3445
3471
  var import_ui20 = require("@elementor/ui");
@@ -3529,16 +3555,16 @@ function getPropType({ widgetType, propKey }) {
3529
3555
  }
3530
3556
 
3531
3557
  // src/components/control-label.tsx
3532
- var React23 = __toESM(require("react"));
3558
+ var React24 = __toESM(require("react"));
3533
3559
  var import_editor_controls2 = require("@elementor/editor-controls");
3534
3560
  var import_ui19 = require("@elementor/ui");
3535
3561
  var ControlLabel = ({ children, ...props }) => {
3536
- return /* @__PURE__ */ React23.createElement(import_ui19.Stack, { direction: "row", alignItems: "center", justifyItems: "start", gap: 0.25 }, /* @__PURE__ */ React23.createElement(import_editor_controls2.ControlFormLabel, { ...props }, children), /* @__PURE__ */ React23.createElement(import_editor_controls2.ControlAdornments, null));
3562
+ return /* @__PURE__ */ React24.createElement(import_ui19.Stack, { direction: "row", alignItems: "center", justifyItems: "start", gap: 0.25 }, /* @__PURE__ */ React24.createElement(import_editor_controls2.ControlFormLabel, { ...props }, children), /* @__PURE__ */ React24.createElement(import_editor_controls2.ControlAdornments, null));
3537
3563
  };
3538
3564
 
3539
3565
  // src/components/instance-editing-panel/override-prop-control.tsx
3540
3566
  function OverridePropControl({ overridableProp, overrides }) {
3541
- return /* @__PURE__ */ React24.createElement(import_editor_editing_panel3.SettingsField, { bind: "component_instance", propDisplayName: overridableProp.label }, /* @__PURE__ */ React24.createElement(OverrideControl, { overridableProp, overrides }));
3567
+ return /* @__PURE__ */ React25.createElement(import_editor_editing_panel3.SettingsField, { bind: "component_instance", propDisplayName: overridableProp.label }, /* @__PURE__ */ React25.createElement(OverrideControl, { overridableProp, overrides }));
3542
3568
  }
3543
3569
  function OverrideControl({ overridableProp, overrides }) {
3544
3570
  const componentId = useCurrentComponentId();
@@ -3585,7 +3611,7 @@ function OverrideControl({ overridableProp, overrides }) {
3585
3611
  updateOverridableProp(componentId, overridableValue, { elType, widgetType, propKey });
3586
3612
  }
3587
3613
  };
3588
- return /* @__PURE__ */ React24.createElement(
3614
+ return /* @__PURE__ */ React25.createElement(
3589
3615
  import_editor_controls3.PropProvider,
3590
3616
  {
3591
3617
  propType: propTypeSchema,
@@ -3595,7 +3621,7 @@ function OverrideControl({ overridableProp, overrides }) {
3595
3621
  return false;
3596
3622
  }
3597
3623
  },
3598
- /* @__PURE__ */ React24.createElement(import_editor_controls3.PropKeyProvider, { bind: overridableProp.overrideKey }, /* @__PURE__ */ React24.createElement(import_ui20.Stack, { direction: "column", gap: 1, mb: 1.5 }, /* @__PURE__ */ React24.createElement(ControlLabel, null, overridableProp.label), getControl(controls, overridableProp?.originPropFields ?? overridableProp)))
3624
+ /* @__PURE__ */ React25.createElement(import_editor_controls3.PropKeyProvider, { bind: overridableProp.overrideKey }, /* @__PURE__ */ React25.createElement(import_ui20.Stack, { direction: "column", gap: 1, mb: 1.5 }, /* @__PURE__ */ React25.createElement(ControlLabel, null, overridableProp.label), getControl(controls, overridableProp?.originPropFields ?? overridableProp)))
3599
3625
  );
3600
3626
  }
3601
3627
  function getPropValue(value) {
@@ -3648,7 +3674,7 @@ function createOverrideValue(overrideKey, overrideValue, componentId) {
3648
3674
  function getControl(controls, originPropFields) {
3649
3675
  const ControlComponent = import_editor_editing_panel3.controlsRegistry.get(controls[originPropFields.propKey].value.type);
3650
3676
  const controlProps = controls[originPropFields.propKey].value.props;
3651
- return /* @__PURE__ */ React24.createElement(ControlComponent, { ...controlProps });
3677
+ return /* @__PURE__ */ React25.createElement(ControlComponent, { ...controlProps });
3652
3678
  }
3653
3679
 
3654
3680
  // src/components/instance-editing-panel/override-props-group.tsx
@@ -3661,7 +3687,7 @@ function OverridePropsGroup({ group, props, overrides }) {
3661
3687
  const labelId = `label-${id2}`;
3662
3688
  const contentId = `content-${id2}`;
3663
3689
  const title = group.label;
3664
- return /* @__PURE__ */ React25.createElement(import_ui21.Box, { "aria-label": `${title} section` }, /* @__PURE__ */ React25.createElement(
3690
+ return /* @__PURE__ */ React26.createElement(import_ui21.Box, { "aria-label": `${title} section` }, /* @__PURE__ */ React26.createElement(
3665
3691
  import_ui21.ListItemButton,
3666
3692
  {
3667
3693
  id: labelId,
@@ -3671,7 +3697,7 @@ function OverridePropsGroup({ group, props, overrides }) {
3671
3697
  p: 0,
3672
3698
  sx: { "&:hover": { backgroundColor: "transparent" } }
3673
3699
  },
3674
- /* @__PURE__ */ React25.createElement(import_ui21.Stack, { direction: "row", alignItems: "center", justifyItems: "start", flexGrow: 1, gap: 0.5 }, /* @__PURE__ */ React25.createElement(
3700
+ /* @__PURE__ */ React26.createElement(import_ui21.Stack, { direction: "row", alignItems: "center", justifyItems: "start", flexGrow: 1, gap: 0.5 }, /* @__PURE__ */ React26.createElement(
3675
3701
  import_ui21.ListItemText,
3676
3702
  {
3677
3703
  secondary: title,
@@ -3679,8 +3705,8 @@ function OverridePropsGroup({ group, props, overrides }) {
3679
3705
  sx: { flexGrow: 0, flexShrink: 1, marginInlineEnd: 1 }
3680
3706
  }
3681
3707
  )),
3682
- /* @__PURE__ */ React25.createElement(import_editor_ui10.CollapseIcon, { open: isOpen, color: "secondary", fontSize: "tiny" })
3683
- ), /* @__PURE__ */ React25.createElement(import_ui21.Collapse, { id: contentId, "aria-labelledby": labelId, in: isOpen, timeout: "auto" }, /* @__PURE__ */ React25.createElement(import_ui21.Stack, { direction: "column", gap: 1, p: 2 }, group.props.map((overrideKey) => /* @__PURE__ */ React25.createElement(
3708
+ /* @__PURE__ */ React26.createElement(import_editor_ui11.CollapseIcon, { open: isOpen, color: "secondary", fontSize: "tiny" })
3709
+ ), /* @__PURE__ */ React26.createElement(import_ui21.Collapse, { id: contentId, "aria-labelledby": labelId, in: isOpen, timeout: "auto" }, /* @__PURE__ */ React26.createElement(import_ui21.Stack, { direction: "column", gap: 1, p: 2 }, group.props.map((overrideKey) => /* @__PURE__ */ React26.createElement(
3684
3710
  OverridePropControl,
3685
3711
  {
3686
3712
  key: overrideKey,
@@ -3701,12 +3727,12 @@ function InstanceEditingPanel() {
3701
3727
  if (!componentId || !overridableProps || !component) {
3702
3728
  return null;
3703
3729
  }
3704
- const panelTitle = (0, import_i18n24.__)("Edit %s", "elementor").replace("%s", component.name);
3730
+ const panelTitle = (0, import_i18n25.__)("Edit %s", "elementor").replace("%s", component.name);
3705
3731
  const handleEditComponent = () => switchToComponent(componentId, componentInstanceId);
3706
3732
  const isNonEmptyGroup = (group) => group !== null && group.props.length > 0;
3707
3733
  const groups = overridableProps.groups.order.map((groupId) => overridableProps.groups.items[groupId] ?? null).filter(isNonEmptyGroup);
3708
3734
  const isEmpty = groups.length === 0 || Object.keys(overridableProps.props).length === 0;
3709
- return /* @__PURE__ */ React26.createElement(React26.Fragment, null, /* @__PURE__ */ React26.createElement(import_editor_panels3.PanelHeader, { sx: { justifyContent: "start", px: 2 } }, /* @__PURE__ */ React26.createElement(import_ui22.Stack, { direction: "row", alignContent: "space-between", flexGrow: 1 }, /* @__PURE__ */ React26.createElement(import_ui22.Stack, { direction: "row", alignItems: "center", justifyContent: "start", gap: 1, flexGrow: 1 }, /* @__PURE__ */ React26.createElement(import_icons14.ComponentsIcon, { fontSize: "small", sx: { color: "text.tertiary" } }), /* @__PURE__ */ React26.createElement(import_editor_panels3.PanelHeaderTitle, null, component.name)), /* @__PURE__ */ React26.createElement(import_ui22.Tooltip, { title: panelTitle }, /* @__PURE__ */ React26.createElement(import_ui22.IconButton, { size: "tiny", onClick: handleEditComponent, "aria-label": panelTitle }, /* @__PURE__ */ React26.createElement(import_icons14.PencilIcon, { fontSize: "tiny" }))))), /* @__PURE__ */ React26.createElement(import_editor_panels3.PanelBody, null, /* @__PURE__ */ React26.createElement(import_editor_controls4.ControlAdornmentsProvider, { items: (0, import_editor_editing_panel5.getFieldIndicators)("settings") }, isEmpty ? /* @__PURE__ */ React26.createElement(EmptyState2, { onEditComponent: handleEditComponent }) : /* @__PURE__ */ React26.createElement(import_ui22.Stack, { direction: "column", alignItems: "stretch" }, groups.map((group) => /* @__PURE__ */ React26.createElement(
3735
+ return /* @__PURE__ */ React27.createElement(React27.Fragment, null, /* @__PURE__ */ React27.createElement(import_editor_panels3.PanelHeader, { sx: { justifyContent: "start", px: 2 } }, /* @__PURE__ */ React27.createElement(import_ui22.Stack, { direction: "row", alignContent: "space-between", flexGrow: 1 }, /* @__PURE__ */ React27.createElement(import_ui22.Stack, { direction: "row", alignItems: "center", justifyContent: "start", gap: 1, flexGrow: 1 }, /* @__PURE__ */ React27.createElement(import_icons14.ComponentsIcon, { fontSize: "small", sx: { color: "text.tertiary" } }), /* @__PURE__ */ React27.createElement(import_editor_panels3.PanelHeaderTitle, null, component.name)), /* @__PURE__ */ React27.createElement(import_ui22.Tooltip, { title: panelTitle }, /* @__PURE__ */ React27.createElement(import_ui22.IconButton, { size: "tiny", onClick: handleEditComponent, "aria-label": panelTitle }, /* @__PURE__ */ React27.createElement(import_icons14.PencilIcon, { fontSize: "tiny" }))))), /* @__PURE__ */ React27.createElement(import_editor_panels3.PanelBody, null, /* @__PURE__ */ React27.createElement(import_editor_controls4.ControlAdornmentsProvider, { items: (0, import_editor_editing_panel5.getFieldIndicators)("settings") }, isEmpty ? /* @__PURE__ */ React27.createElement(EmptyState2, { onEditComponent: handleEditComponent }) : /* @__PURE__ */ React27.createElement(import_ui22.Stack, { direction: "column", alignItems: "stretch" }, groups.map((group) => /* @__PURE__ */ React27.createElement(
3710
3736
  OverridePropsGroup,
3711
3737
  {
3712
3738
  key: group.id,
@@ -3718,16 +3744,16 @@ function InstanceEditingPanel() {
3718
3744
  }
3719
3745
 
3720
3746
  // src/components/overridable-props/overridable-prop-control.tsx
3721
- var React28 = __toESM(require("react"));
3747
+ var React29 = __toESM(require("react"));
3722
3748
  var import_editor_controls5 = require("@elementor/editor-controls");
3723
3749
  var import_editor_editing_panel6 = require("@elementor/editor-editing-panel");
3724
3750
 
3725
3751
  // src/provider/overridable-prop-context.tsx
3726
- var React27 = __toESM(require("react"));
3752
+ var React28 = __toESM(require("react"));
3727
3753
  var import_react16 = require("react");
3728
3754
  var OverridablePropContext = (0, import_react16.createContext)(null);
3729
3755
  function OverridablePropProvider({ children, ...props }) {
3730
- return /* @__PURE__ */ React27.createElement(OverridablePropContext.Provider, { value: props }, children);
3756
+ return /* @__PURE__ */ React28.createElement(OverridablePropContext.Provider, { value: props }, children);
3731
3757
  }
3732
3758
  var useOverridablePropValue = () => (0, import_react16.useContext)(OverridablePropContext)?.value;
3733
3759
 
@@ -3766,7 +3792,7 @@ function OverridablePropControl({
3766
3792
  });
3767
3793
  const propValue = isComponentInstance2 ? (value.origin_value?.value).override_value : value.origin_value;
3768
3794
  const objectPlaceholder = placeholder ? { [bind]: placeholder } : void 0;
3769
- return /* @__PURE__ */ React28.createElement(OverridablePropProvider, { value }, /* @__PURE__ */ React28.createElement(
3795
+ return /* @__PURE__ */ React29.createElement(OverridablePropProvider, { value }, /* @__PURE__ */ React29.createElement(
3770
3796
  import_editor_controls5.PropProvider,
3771
3797
  {
3772
3798
  ...propContext,
@@ -3777,17 +3803,17 @@ function OverridablePropControl({
3777
3803
  },
3778
3804
  placeholder: objectPlaceholder
3779
3805
  },
3780
- /* @__PURE__ */ React28.createElement(import_editor_controls5.PropKeyProvider, { bind }, /* @__PURE__ */ React28.createElement(import_editor_controls5.ControlReplacementsProvider, { replacements: [] }, /* @__PURE__ */ React28.createElement(OriginalControl, { ...props })))
3806
+ /* @__PURE__ */ React29.createElement(import_editor_controls5.PropKeyProvider, { bind }, /* @__PURE__ */ React29.createElement(import_editor_controls5.ControlReplacementsProvider, { replacements: [] }, /* @__PURE__ */ React29.createElement(OriginalControl, { ...props })))
3781
3807
  ));
3782
3808
  }
3783
3809
 
3784
3810
  // src/components/overridable-props/overridable-prop-indicator.tsx
3785
- var React30 = __toESM(require("react"));
3811
+ var React31 = __toESM(require("react"));
3786
3812
  var import_editor_controls6 = require("@elementor/editor-controls");
3787
3813
  var import_editor_editing_panel7 = require("@elementor/editor-editing-panel");
3788
3814
  var import_editor_elements15 = require("@elementor/editor-elements");
3789
3815
  var import_ui24 = require("@elementor/ui");
3790
- var import_i18n26 = require("@wordpress/i18n");
3816
+ var import_i18n27 = require("@wordpress/i18n");
3791
3817
 
3792
3818
  // src/store/actions/set-overridable-prop.ts
3793
3819
  var import_store58 = require("@elementor/store");
@@ -3854,11 +3880,11 @@ function setOverridableProp({
3854
3880
  }
3855
3881
 
3856
3882
  // src/components/overridable-props/indicator.tsx
3857
- var React29 = __toESM(require("react"));
3883
+ var React30 = __toESM(require("react"));
3858
3884
  var import_react17 = require("react");
3859
3885
  var import_icons15 = require("@elementor/icons");
3860
3886
  var import_ui23 = require("@elementor/ui");
3861
- var import_i18n25 = require("@wordpress/i18n");
3887
+ var import_i18n26 = require("@wordpress/i18n");
3862
3888
  var SIZE2 = "tiny";
3863
3889
  var IconContainer = (0, import_ui23.styled)(import_ui23.Box)`
3864
3890
  pointer-events: none;
@@ -3914,13 +3940,13 @@ var Content = (0, import_ui23.styled)(import_ui23.Box)`
3914
3940
  }
3915
3941
  }
3916
3942
  `;
3917
- var Indicator2 = (0, import_react17.forwardRef)(({ isOpen, isOverridable, ...props }, ref) => /* @__PURE__ */ React29.createElement(Content, { ref, ...props, className: isOpen || isOverridable ? "enlarged" : "" }, /* @__PURE__ */ React29.createElement(
3943
+ var Indicator2 = (0, import_react17.forwardRef)(({ isOpen, isOverridable, ...props }, ref) => /* @__PURE__ */ React30.createElement(Content, { ref, ...props, className: isOpen || isOverridable ? "enlarged" : "" }, /* @__PURE__ */ React30.createElement(
3918
3944
  IconContainer,
3919
3945
  {
3920
3946
  className: "icon",
3921
- "aria-label": isOverridable ? (0, import_i18n25.__)("Overridable property", "elementor") : (0, import_i18n25.__)("Make prop overridable", "elementor")
3947
+ "aria-label": isOverridable ? (0, import_i18n26.__)("Overridable property", "elementor") : (0, import_i18n26.__)("Make prop overridable", "elementor")
3922
3948
  },
3923
- isOverridable ? /* @__PURE__ */ React29.createElement(import_icons15.CheckIcon, { fontSize: SIZE2 }) : /* @__PURE__ */ React29.createElement(import_icons15.PlusIcon, { fontSize: SIZE2 })
3949
+ isOverridable ? /* @__PURE__ */ React30.createElement(import_icons15.CheckIcon, { fontSize: SIZE2 }) : /* @__PURE__ */ React30.createElement(import_icons15.PlusIcon, { fontSize: SIZE2 })
3924
3950
  )));
3925
3951
 
3926
3952
  // src/components/overridable-props/utils/get-overridable-prop.ts
@@ -3945,7 +3971,7 @@ function OverridablePropIndicator() {
3945
3971
  if (!isPropAllowed(bind) || !componentId || !overridableProps) {
3946
3972
  return null;
3947
3973
  }
3948
- return /* @__PURE__ */ React30.createElement(Content2, { componentId, overridableProps });
3974
+ return /* @__PURE__ */ React31.createElement(Content2, { componentId, overridableProps });
3949
3975
  }
3950
3976
  function Content2({ componentId, overridableProps }) {
3951
3977
  const {
@@ -3989,7 +4015,7 @@ function Content2({ componentId, overridableProps }) {
3989
4015
  popupState.close();
3990
4016
  };
3991
4017
  const overridableConfig = overridableValue ? getOverridableProp({ componentId, overrideKey: overridableValue.override_key }) : void 0;
3992
- return /* @__PURE__ */ React30.createElement(React30.Fragment, null, /* @__PURE__ */ React30.createElement(import_ui24.Tooltip, { placement: "top", title: (0, import_i18n26.__)("Override Property", "elementor") }, /* @__PURE__ */ React30.createElement(Indicator2, { ...triggerProps, isOpen: !!popoverProps.open, isOverridable: !!overridableValue })), /* @__PURE__ */ React30.createElement(
4018
+ return /* @__PURE__ */ React31.createElement(React31.Fragment, null, /* @__PURE__ */ React31.createElement(import_ui24.Tooltip, { placement: "top", title: (0, import_i18n27.__)("Override Property", "elementor") }, /* @__PURE__ */ React31.createElement(Indicator2, { ...triggerProps, isOpen: !!popoverProps.open, isOverridable: !!overridableValue })), /* @__PURE__ */ React31.createElement(
3993
4019
  import_ui24.Popover,
3994
4020
  {
3995
4021
  disableScrollLock: true,
@@ -4006,7 +4032,7 @@ function Content2({ componentId, overridableProps }) {
4006
4032
  },
4007
4033
  ...popoverProps
4008
4034
  },
4009
- /* @__PURE__ */ React30.createElement(
4035
+ /* @__PURE__ */ React31.createElement(
4010
4036
  OverridablePropForm,
4011
4037
  {
4012
4038
  onSubmit: handleSubmit,
@@ -4452,11 +4478,11 @@ var import_editor_elements18 = require("@elementor/editor-elements");
4452
4478
  var import_editor_notifications4 = require("@elementor/editor-notifications");
4453
4479
  var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
4454
4480
  var import_store64 = require("@elementor/store");
4455
- var import_i18n27 = require("@wordpress/i18n");
4481
+ var import_i18n28 = require("@wordpress/i18n");
4456
4482
  var COMPONENT_TYPE = "e-component";
4457
4483
  var COMPONENT_CIRCULAR_NESTING_ALERT = {
4458
4484
  type: "default",
4459
- message: (0, import_i18n27.__)("Can't add this component - components that contain each other can't be nested.", "elementor"),
4485
+ message: (0, import_i18n28.__)("Can't add this component - components that contain each other can't be nested.", "elementor"),
4460
4486
  id: "circular-component-nesting-blocked"
4461
4487
  };
4462
4488
  function initCircularNestingPrevention() {
@@ -4788,7 +4814,7 @@ function init() {
4788
4814
  window.elementorCommon.__beforeSave = beforeSave;
4789
4815
  (0, import_editor_elements_panel.injectTab)({
4790
4816
  id: "components",
4791
- label: (0, import_i18n28.__)("Components", "elementor"),
4817
+ label: (0, import_i18n29.__)("Components", "elementor"),
4792
4818
  component: Components,
4793
4819
  position: 1
4794
4820
  });