@elementor/editor-controls 4.0.0-552 → 4.0.0-573
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +253 -148
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +235 -131
- package/dist/index.mjs.map +1 -1
- package/package.json +15 -15
- package/src/controls/chips-control.tsx +5 -3
- package/src/controls/email-form-action-control.tsx +151 -0
- package/src/controls/inline-editing-control.tsx +37 -5
- package/src/index.ts +1 -0
package/dist/index.js
CHANGED
|
@@ -45,6 +45,7 @@ __export(index_exports, {
|
|
|
45
45
|
ControlToggleButtonGroup: () => ControlToggleButtonGroup,
|
|
46
46
|
DateTimeControl: () => DateTimeControl,
|
|
47
47
|
DisplayConditionsControl: () => DisplayConditionsControl,
|
|
48
|
+
EmailFormActionControl: () => EmailFormActionControl,
|
|
48
49
|
EqualUnequalSizesControl: () => EqualUnequalSizesControl,
|
|
49
50
|
FilterRepeaterControl: () => FilterRepeaterControl,
|
|
50
51
|
FontFamilyControl: () => FontFamilyControl,
|
|
@@ -2269,10 +2270,10 @@ var import_ui37 = require("@elementor/ui");
|
|
|
2269
2270
|
var SIZE6 = "tiny";
|
|
2270
2271
|
var ChipsControl = createControl(({ options }) => {
|
|
2271
2272
|
const { value, setValue, disabled } = useBoundProp(import_editor_props16.stringArrayPropTypeUtil);
|
|
2272
|
-
const selectedValues = value || [];
|
|
2273
|
+
const selectedValues = (value || []).map((item) => import_editor_props16.stringPropTypeUtil.extract(item)).filter((val) => val !== null);
|
|
2273
2274
|
const selectedOptions = selectedValues.map((val) => options.find((opt) => opt.value === val)).filter((opt) => opt !== void 0);
|
|
2274
2275
|
const handleChange = (_, newValue) => {
|
|
2275
|
-
const values = newValue.map((option) => option.value);
|
|
2276
|
+
const values = newValue.map((option) => import_editor_props16.stringPropTypeUtil.create(option.value));
|
|
2276
2277
|
setValue(values.length > 0 ? values : null);
|
|
2277
2278
|
};
|
|
2278
2279
|
return /* @__PURE__ */ React50.createElement(ControlActions, null, /* @__PURE__ */ React50.createElement(
|
|
@@ -6244,8 +6245,10 @@ var DateTimeControl = createControl(({ inputDisabled }) => {
|
|
|
6244
6245
|
|
|
6245
6246
|
// src/controls/inline-editing-control.tsx
|
|
6246
6247
|
var React100 = __toESM(require("react"));
|
|
6248
|
+
var import_react54 = require("react");
|
|
6247
6249
|
var import_editor_props52 = require("@elementor/editor-props");
|
|
6248
6250
|
var import_ui86 = require("@elementor/ui");
|
|
6251
|
+
var import_utils7 = require("@elementor/utils");
|
|
6249
6252
|
|
|
6250
6253
|
// src/components/inline-editor.tsx
|
|
6251
6254
|
var React99 = __toESM(require("react"));
|
|
@@ -6418,14 +6421,37 @@ var useOnUpdate = (callback, dependencies) => {
|
|
|
6418
6421
|
};
|
|
6419
6422
|
|
|
6420
6423
|
// src/controls/inline-editing-control.tsx
|
|
6424
|
+
var CHILDREN_PARSE_DEBOUNCE_MS = 300;
|
|
6421
6425
|
var InlineEditingControl = createControl(
|
|
6422
6426
|
({
|
|
6423
6427
|
sx,
|
|
6424
6428
|
attributes,
|
|
6425
6429
|
props
|
|
6426
6430
|
}) => {
|
|
6427
|
-
const { value, setValue } = useBoundProp(import_editor_props52.
|
|
6428
|
-
const
|
|
6431
|
+
const { value, setValue } = useBoundProp(import_editor_props52.htmlV2PropTypeUtil);
|
|
6432
|
+
const content = value?.content ?? "";
|
|
6433
|
+
const debouncedParse = (0, import_react54.useMemo)(
|
|
6434
|
+
() => (0, import_utils7.debounce)((html) => {
|
|
6435
|
+
const parsed = (0, import_editor_props52.parseHtmlChildren)(html);
|
|
6436
|
+
setValue({
|
|
6437
|
+
content: parsed.content || null,
|
|
6438
|
+
children: parsed.children
|
|
6439
|
+
});
|
|
6440
|
+
}, CHILDREN_PARSE_DEBOUNCE_MS),
|
|
6441
|
+
[setValue]
|
|
6442
|
+
);
|
|
6443
|
+
const handleChange = (0, import_react54.useCallback)(
|
|
6444
|
+
(newValue) => {
|
|
6445
|
+
const html = newValue ?? "";
|
|
6446
|
+
setValue({
|
|
6447
|
+
content: html || null,
|
|
6448
|
+
children: value?.children ?? []
|
|
6449
|
+
});
|
|
6450
|
+
debouncedParse(html);
|
|
6451
|
+
},
|
|
6452
|
+
[setValue, value?.children, debouncedParse]
|
|
6453
|
+
);
|
|
6454
|
+
(0, import_react54.useEffect)(() => () => debouncedParse.cancel(), [debouncedParse]);
|
|
6429
6455
|
return /* @__PURE__ */ React100.createElement(ControlActions, null, /* @__PURE__ */ React100.createElement(
|
|
6430
6456
|
import_ui86.Box,
|
|
6431
6457
|
{
|
|
@@ -6464,34 +6490,112 @@ var InlineEditingControl = createControl(
|
|
|
6464
6490
|
...attributes,
|
|
6465
6491
|
...props
|
|
6466
6492
|
},
|
|
6467
|
-
/* @__PURE__ */ React100.createElement(InlineEditor, { value:
|
|
6493
|
+
/* @__PURE__ */ React100.createElement(InlineEditor, { value: content, setValue: handleChange })
|
|
6468
6494
|
));
|
|
6469
6495
|
}
|
|
6470
6496
|
);
|
|
6471
6497
|
|
|
6498
|
+
// src/controls/email-form-action-control.tsx
|
|
6499
|
+
var React101 = __toESM(require("react"));
|
|
6500
|
+
var import_editor_props53 = require("@elementor/editor-props");
|
|
6501
|
+
var import_editor_ui13 = require("@elementor/editor-ui");
|
|
6502
|
+
var import_ui87 = require("@elementor/ui");
|
|
6503
|
+
var import_i18n50 = require("@wordpress/i18n");
|
|
6504
|
+
var EmailField = ({ bind, label, placeholder }) => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind }, /* @__PURE__ */ React101.createElement(import_ui87.Grid, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React101.createElement(import_ui87.Grid, { item: true }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, label)), /* @__PURE__ */ React101.createElement(import_ui87.Grid, { item: true }, /* @__PURE__ */ React101.createElement(TextControl, { placeholder }))));
|
|
6505
|
+
var SendToField = () => /* @__PURE__ */ React101.createElement(
|
|
6506
|
+
EmailField,
|
|
6507
|
+
{
|
|
6508
|
+
bind: "to",
|
|
6509
|
+
label: (0, import_i18n50.__)("Send To", "elementor"),
|
|
6510
|
+
placeholder: (0, import_i18n50.__)("Where should we send new submissions?", "elementor")
|
|
6511
|
+
}
|
|
6512
|
+
);
|
|
6513
|
+
var SubjectField = () => /* @__PURE__ */ React101.createElement(
|
|
6514
|
+
EmailField,
|
|
6515
|
+
{
|
|
6516
|
+
bind: "subject",
|
|
6517
|
+
label: (0, import_i18n50.__)("Email Subject", "elementor"),
|
|
6518
|
+
placeholder: (0, import_i18n50.__)("New form submission", "elementor")
|
|
6519
|
+
}
|
|
6520
|
+
);
|
|
6521
|
+
var MessageField = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "message" }, /* @__PURE__ */ React101.createElement(import_ui87.Grid, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React101.createElement(import_ui87.Grid, { item: true }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, (0, import_i18n50.__)("Message", "elementor"))), /* @__PURE__ */ React101.createElement(import_ui87.Grid, { item: true }, /* @__PURE__ */ React101.createElement(
|
|
6522
|
+
TextAreaControl,
|
|
6523
|
+
{
|
|
6524
|
+
placeholder: (0, import_i18n50.__)(
|
|
6525
|
+
"By default, all form fields are sent via [all-fields] shortcode.",
|
|
6526
|
+
"elementor"
|
|
6527
|
+
)
|
|
6528
|
+
}
|
|
6529
|
+
))));
|
|
6530
|
+
var FromEmailField = () => /* @__PURE__ */ React101.createElement(
|
|
6531
|
+
EmailField,
|
|
6532
|
+
{
|
|
6533
|
+
bind: "from",
|
|
6534
|
+
label: (0, import_i18n50.__)("From email", "elementor"),
|
|
6535
|
+
placeholder: (0, import_i18n50.__)("What email address should appear as the sender?", "elementor")
|
|
6536
|
+
}
|
|
6537
|
+
);
|
|
6538
|
+
var FromNameField = () => /* @__PURE__ */ React101.createElement(
|
|
6539
|
+
EmailField,
|
|
6540
|
+
{
|
|
6541
|
+
bind: "from-name",
|
|
6542
|
+
label: (0, import_i18n50.__)("From name", "elementor"),
|
|
6543
|
+
placeholder: (0, import_i18n50.__)("What name should appear as the sender?", "elementor")
|
|
6544
|
+
}
|
|
6545
|
+
);
|
|
6546
|
+
var ReplyToField = () => /* @__PURE__ */ React101.createElement(EmailField, { bind: "reply-to", label: (0, import_i18n50.__)("Reply-to", "elementor") });
|
|
6547
|
+
var CcField = () => /* @__PURE__ */ React101.createElement(EmailField, { bind: "cc", label: (0, import_i18n50.__)("Cc", "elementor") });
|
|
6548
|
+
var BccField = () => /* @__PURE__ */ React101.createElement(EmailField, { bind: "bcc", label: (0, import_i18n50.__)("Bcc", "elementor") });
|
|
6549
|
+
var MetaDataField = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "meta-data" }, /* @__PURE__ */ React101.createElement(import_ui87.Stack, { gap: 0.5 }, /* @__PURE__ */ React101.createElement(ControlLabel, null, (0, import_i18n50.__)("Meta data", "elementor")), /* @__PURE__ */ React101.createElement(
|
|
6550
|
+
ChipsControl,
|
|
6551
|
+
{
|
|
6552
|
+
options: [
|
|
6553
|
+
{ label: (0, import_i18n50.__)("Date", "elementor"), value: "date" },
|
|
6554
|
+
{ label: (0, import_i18n50.__)("Time", "elementor"), value: "time" },
|
|
6555
|
+
{ label: (0, import_i18n50.__)("Page URL", "elementor"), value: "page-url" },
|
|
6556
|
+
{ label: (0, import_i18n50.__)("User agent", "elementor"), value: "user-agent" },
|
|
6557
|
+
{ label: (0, import_i18n50.__)("Credit", "elementor"), value: "credit" }
|
|
6558
|
+
]
|
|
6559
|
+
}
|
|
6560
|
+
)));
|
|
6561
|
+
var SendAsField = () => /* @__PURE__ */ React101.createElement(PropKeyProvider, { bind: "send-as" }, /* @__PURE__ */ React101.createElement(import_ui87.Grid, { container: true, direction: "column", gap: 0.5 }, /* @__PURE__ */ React101.createElement(import_ui87.Grid, { item: true }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, (0, import_i18n50.__)("Send as", "elementor"))), /* @__PURE__ */ React101.createElement(import_ui87.Grid, { item: true }, /* @__PURE__ */ React101.createElement(
|
|
6562
|
+
SelectControl,
|
|
6563
|
+
{
|
|
6564
|
+
options: [
|
|
6565
|
+
{ label: (0, import_i18n50.__)("HTML", "elementor"), value: "html" },
|
|
6566
|
+
{ label: (0, import_i18n50.__)("Plain Text", "elementor"), value: "plain" }
|
|
6567
|
+
]
|
|
6568
|
+
}
|
|
6569
|
+
))));
|
|
6570
|
+
var AdvancedSettings = () => /* @__PURE__ */ React101.createElement(import_editor_ui13.CollapsibleContent, { defaultOpen: false }, /* @__PURE__ */ React101.createElement(import_ui87.Box, { sx: { pt: 2 } }, /* @__PURE__ */ React101.createElement(import_ui87.Stack, { gap: 2 }, /* @__PURE__ */ React101.createElement(FromNameField, null), /* @__PURE__ */ React101.createElement(ReplyToField, null), /* @__PURE__ */ React101.createElement(CcField, null), /* @__PURE__ */ React101.createElement(BccField, null), /* @__PURE__ */ React101.createElement(import_ui87.Divider, null), /* @__PURE__ */ React101.createElement(MetaDataField, null), /* @__PURE__ */ React101.createElement(SendAsField, null))));
|
|
6571
|
+
var EmailFormActionControl = createControl(() => {
|
|
6572
|
+
const { value, setValue, ...propContext } = useBoundProp(import_editor_props53.emailPropTypeUtil);
|
|
6573
|
+
return /* @__PURE__ */ React101.createElement(PropProvider, { ...propContext, value, setValue }, /* @__PURE__ */ React101.createElement(import_ui87.Stack, { gap: 2 }, /* @__PURE__ */ React101.createElement(ControlFormLabel, null, (0, import_i18n50.__)("Email settings", "elementor")), /* @__PURE__ */ React101.createElement(SendToField, null), /* @__PURE__ */ React101.createElement(SubjectField, null), /* @__PURE__ */ React101.createElement(MessageField, null), /* @__PURE__ */ React101.createElement(FromEmailField, null), /* @__PURE__ */ React101.createElement(AdvancedSettings, null)));
|
|
6574
|
+
});
|
|
6575
|
+
|
|
6472
6576
|
// src/components/promotions/display-conditions-control.tsx
|
|
6473
|
-
var
|
|
6474
|
-
var
|
|
6577
|
+
var React103 = __toESM(require("react"));
|
|
6578
|
+
var import_react56 = require("react");
|
|
6475
6579
|
var import_icons33 = require("@elementor/icons");
|
|
6476
|
-
var
|
|
6477
|
-
var
|
|
6580
|
+
var import_ui89 = require("@elementor/ui");
|
|
6581
|
+
var import_i18n51 = require("@wordpress/i18n");
|
|
6478
6582
|
|
|
6479
6583
|
// src/components/promotions/promotion-trigger.tsx
|
|
6480
|
-
var
|
|
6481
|
-
var
|
|
6482
|
-
var
|
|
6483
|
-
var
|
|
6584
|
+
var React102 = __toESM(require("react"));
|
|
6585
|
+
var import_react55 = require("react");
|
|
6586
|
+
var import_editor_ui14 = require("@elementor/editor-ui");
|
|
6587
|
+
var import_ui88 = require("@elementor/ui");
|
|
6484
6588
|
function getV4Promotion(key) {
|
|
6485
6589
|
return window.elementor?.config?.v4Promotions?.[key];
|
|
6486
6590
|
}
|
|
6487
|
-
var PromotionTrigger = (0,
|
|
6591
|
+
var PromotionTrigger = (0, import_react55.forwardRef)(
|
|
6488
6592
|
({ promotionKey, children }, ref) => {
|
|
6489
|
-
const [isOpen, setIsOpen] = (0,
|
|
6593
|
+
const [isOpen, setIsOpen] = (0, import_react55.useState)(false);
|
|
6490
6594
|
const promotion = getV4Promotion(promotionKey);
|
|
6491
6595
|
const toggle = () => setIsOpen((prev) => !prev);
|
|
6492
|
-
(0,
|
|
6493
|
-
return /* @__PURE__ */
|
|
6494
|
-
|
|
6596
|
+
(0, import_react55.useImperativeHandle)(ref, () => ({ toggle }), []);
|
|
6597
|
+
return /* @__PURE__ */ React102.createElement(React102.Fragment, null, promotion && /* @__PURE__ */ React102.createElement(
|
|
6598
|
+
import_editor_ui14.PromotionInfotip,
|
|
6495
6599
|
{
|
|
6496
6600
|
title: promotion.title,
|
|
6497
6601
|
content: promotion.content,
|
|
@@ -6503,8 +6607,8 @@ var PromotionTrigger = (0, import_react54.forwardRef)(
|
|
|
6503
6607
|
setIsOpen(false);
|
|
6504
6608
|
}
|
|
6505
6609
|
},
|
|
6506
|
-
/* @__PURE__ */
|
|
6507
|
-
|
|
6610
|
+
/* @__PURE__ */ React102.createElement(
|
|
6611
|
+
import_ui88.Box,
|
|
6508
6612
|
{
|
|
6509
6613
|
onClick: (e) => {
|
|
6510
6614
|
e.stopPropagation();
|
|
@@ -6512,18 +6616,18 @@ var PromotionTrigger = (0, import_react54.forwardRef)(
|
|
|
6512
6616
|
},
|
|
6513
6617
|
sx: { cursor: "pointer", display: "inline-flex" }
|
|
6514
6618
|
},
|
|
6515
|
-
children ?? /* @__PURE__ */
|
|
6619
|
+
children ?? /* @__PURE__ */ React102.createElement(import_editor_ui14.PromotionChip, null)
|
|
6516
6620
|
)
|
|
6517
6621
|
));
|
|
6518
6622
|
}
|
|
6519
6623
|
);
|
|
6520
6624
|
|
|
6521
6625
|
// src/components/promotions/display-conditions-control.tsx
|
|
6522
|
-
var ARIA_LABEL = (0,
|
|
6626
|
+
var ARIA_LABEL = (0, import_i18n51.__)("Display Conditions", "elementor");
|
|
6523
6627
|
var DisplayConditionsControl = createControl(() => {
|
|
6524
|
-
const triggerRef = (0,
|
|
6525
|
-
return /* @__PURE__ */
|
|
6526
|
-
|
|
6628
|
+
const triggerRef = (0, import_react56.useRef)(null);
|
|
6629
|
+
return /* @__PURE__ */ React103.createElement(
|
|
6630
|
+
import_ui89.Stack,
|
|
6527
6631
|
{
|
|
6528
6632
|
direction: "row",
|
|
6529
6633
|
spacing: 2,
|
|
@@ -6532,9 +6636,9 @@ var DisplayConditionsControl = createControl(() => {
|
|
|
6532
6636
|
alignItems: "center"
|
|
6533
6637
|
}
|
|
6534
6638
|
},
|
|
6535
|
-
/* @__PURE__ */
|
|
6536
|
-
/* @__PURE__ */
|
|
6537
|
-
|
|
6639
|
+
/* @__PURE__ */ React103.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "displayConditions" }),
|
|
6640
|
+
/* @__PURE__ */ React103.createElement(import_ui89.Tooltip, { title: ARIA_LABEL, placement: "top" }, /* @__PURE__ */ React103.createElement(
|
|
6641
|
+
import_ui89.IconButton,
|
|
6538
6642
|
{
|
|
6539
6643
|
size: "tiny",
|
|
6540
6644
|
"aria-label": ARIA_LABEL,
|
|
@@ -6546,22 +6650,22 @@ var DisplayConditionsControl = createControl(() => {
|
|
|
6546
6650
|
borderRadius: 1
|
|
6547
6651
|
}
|
|
6548
6652
|
},
|
|
6549
|
-
/* @__PURE__ */
|
|
6653
|
+
/* @__PURE__ */ React103.createElement(import_icons33.SitemapIcon, { fontSize: "tiny", color: "disabled" })
|
|
6550
6654
|
))
|
|
6551
6655
|
);
|
|
6552
6656
|
});
|
|
6553
6657
|
|
|
6554
6658
|
// src/components/promotions/attributes-control.tsx
|
|
6555
|
-
var
|
|
6556
|
-
var
|
|
6659
|
+
var React104 = __toESM(require("react"));
|
|
6660
|
+
var import_react57 = require("react");
|
|
6557
6661
|
var import_icons34 = require("@elementor/icons");
|
|
6558
|
-
var
|
|
6559
|
-
var
|
|
6560
|
-
var ARIA_LABEL2 = (0,
|
|
6662
|
+
var import_ui90 = require("@elementor/ui");
|
|
6663
|
+
var import_i18n52 = require("@wordpress/i18n");
|
|
6664
|
+
var ARIA_LABEL2 = (0, import_i18n52.__)("Attributes", "elementor");
|
|
6561
6665
|
var AttributesControl = createControl(() => {
|
|
6562
|
-
const triggerRef = (0,
|
|
6563
|
-
return /* @__PURE__ */
|
|
6564
|
-
|
|
6666
|
+
const triggerRef = (0, import_react57.useRef)(null);
|
|
6667
|
+
return /* @__PURE__ */ React104.createElement(
|
|
6668
|
+
import_ui90.Stack,
|
|
6565
6669
|
{
|
|
6566
6670
|
direction: "row",
|
|
6567
6671
|
spacing: 2,
|
|
@@ -6570,8 +6674,8 @@ var AttributesControl = createControl(() => {
|
|
|
6570
6674
|
alignItems: "center"
|
|
6571
6675
|
}
|
|
6572
6676
|
},
|
|
6573
|
-
/* @__PURE__ */
|
|
6574
|
-
/* @__PURE__ */
|
|
6677
|
+
/* @__PURE__ */ React104.createElement(PromotionTrigger, { ref: triggerRef, promotionKey: "attributes" }),
|
|
6678
|
+
/* @__PURE__ */ React104.createElement(import_ui90.Tooltip, { title: ARIA_LABEL2, placement: "top" }, /* @__PURE__ */ React104.createElement(
|
|
6575
6679
|
import_icons34.PlusIcon,
|
|
6576
6680
|
{
|
|
6577
6681
|
"aria-label": ARIA_LABEL2,
|
|
@@ -6585,21 +6689,21 @@ var AttributesControl = createControl(() => {
|
|
|
6585
6689
|
});
|
|
6586
6690
|
|
|
6587
6691
|
// src/components/icon-buttons/clear-icon-button.tsx
|
|
6588
|
-
var
|
|
6692
|
+
var React105 = __toESM(require("react"));
|
|
6589
6693
|
var import_icons35 = require("@elementor/icons");
|
|
6590
|
-
var
|
|
6591
|
-
var CustomIconButton = (0,
|
|
6694
|
+
var import_ui91 = require("@elementor/ui");
|
|
6695
|
+
var CustomIconButton = (0, import_ui91.styled)(import_ui91.IconButton)(({ theme }) => ({
|
|
6592
6696
|
width: theme.spacing(2.5),
|
|
6593
6697
|
height: theme.spacing(2.5)
|
|
6594
6698
|
}));
|
|
6595
|
-
var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /* @__PURE__ */
|
|
6699
|
+
var ClearIconButton = ({ tooltipText, onClick, disabled, size = "tiny" }) => /* @__PURE__ */ React105.createElement(import_ui91.Tooltip, { title: tooltipText, placement: "top", disableInteractive: true }, /* @__PURE__ */ React105.createElement(CustomIconButton, { "aria-label": tooltipText, size, onClick, disabled }, /* @__PURE__ */ React105.createElement(import_icons35.BrushBigIcon, { fontSize: size })));
|
|
6596
6700
|
|
|
6597
6701
|
// src/components/repeater/repeater.tsx
|
|
6598
|
-
var
|
|
6599
|
-
var
|
|
6702
|
+
var React106 = __toESM(require("react"));
|
|
6703
|
+
var import_react58 = require("react");
|
|
6600
6704
|
var import_icons36 = require("@elementor/icons");
|
|
6601
|
-
var
|
|
6602
|
-
var
|
|
6705
|
+
var import_ui92 = require("@elementor/ui");
|
|
6706
|
+
var import_i18n53 = require("@wordpress/i18n");
|
|
6603
6707
|
var SIZE10 = "tiny";
|
|
6604
6708
|
var EMPTY_OPEN_ITEM2 = -1;
|
|
6605
6709
|
var Repeater3 = ({
|
|
@@ -6617,7 +6721,7 @@ var Repeater3 = ({
|
|
|
6617
6721
|
openItem: initialOpenItem = EMPTY_OPEN_ITEM2,
|
|
6618
6722
|
isSortable = true
|
|
6619
6723
|
}) => {
|
|
6620
|
-
const [openItem, setOpenItem] = (0,
|
|
6724
|
+
const [openItem, setOpenItem] = (0, import_react58.useState)(initialOpenItem);
|
|
6621
6725
|
const uniqueKeys = items2.map(
|
|
6622
6726
|
(item, index) => isSortable && "getId" in itemSettings ? itemSettings.getId({ item, index }) : String(index)
|
|
6623
6727
|
);
|
|
@@ -6680,8 +6784,8 @@ var Repeater3 = ({
|
|
|
6680
6784
|
};
|
|
6681
6785
|
const isButtonDisabled = disabled || disableAddItemButton;
|
|
6682
6786
|
const shouldShowInfotip = isButtonDisabled && addButtonInfotipContent;
|
|
6683
|
-
const addButton = /* @__PURE__ */
|
|
6684
|
-
|
|
6787
|
+
const addButton = /* @__PURE__ */ React106.createElement(
|
|
6788
|
+
import_ui92.IconButton,
|
|
6685
6789
|
{
|
|
6686
6790
|
size: SIZE10,
|
|
6687
6791
|
sx: {
|
|
@@ -6689,32 +6793,32 @@ var Repeater3 = ({
|
|
|
6689
6793
|
},
|
|
6690
6794
|
disabled: isButtonDisabled,
|
|
6691
6795
|
onClick: addRepeaterItem,
|
|
6692
|
-
"aria-label": (0,
|
|
6796
|
+
"aria-label": (0, import_i18n53.__)("Add item", "elementor")
|
|
6693
6797
|
},
|
|
6694
|
-
/* @__PURE__ */
|
|
6798
|
+
/* @__PURE__ */ React106.createElement(import_icons36.PlusIcon, { fontSize: SIZE10 })
|
|
6695
6799
|
);
|
|
6696
|
-
return /* @__PURE__ */
|
|
6697
|
-
|
|
6800
|
+
return /* @__PURE__ */ React106.createElement(SectionContent, { gap: 2 }, /* @__PURE__ */ React106.createElement(RepeaterHeader, { label, adornment: ControlAdornments }, shouldShowInfotip ? /* @__PURE__ */ React106.createElement(
|
|
6801
|
+
import_ui92.Infotip,
|
|
6698
6802
|
{
|
|
6699
6803
|
placement: "right",
|
|
6700
6804
|
content: addButtonInfotipContent,
|
|
6701
6805
|
color: "secondary",
|
|
6702
6806
|
slotProps: { popper: { sx: { width: 300 } } }
|
|
6703
6807
|
},
|
|
6704
|
-
/* @__PURE__ */
|
|
6705
|
-
) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */
|
|
6808
|
+
/* @__PURE__ */ React106.createElement(import_ui92.Box, { sx: { ...isButtonDisabled ? { cursor: "not-allowed" } : {} } }, addButton)
|
|
6809
|
+
) : addButton), 0 < uniqueKeys.length && /* @__PURE__ */ React106.createElement(SortableProvider, { value: uniqueKeys, onChange: onChangeOrder }, uniqueKeys.map((key) => {
|
|
6706
6810
|
const index = uniqueKeys.indexOf(key);
|
|
6707
6811
|
const value = items2[index];
|
|
6708
6812
|
if (!value) {
|
|
6709
6813
|
return null;
|
|
6710
6814
|
}
|
|
6711
|
-
return /* @__PURE__ */
|
|
6815
|
+
return /* @__PURE__ */ React106.createElement(SortableItem, { id: key, key: `sortable-${key}`, disabled: !isSortable }, /* @__PURE__ */ React106.createElement(
|
|
6712
6816
|
RepeaterItem,
|
|
6713
6817
|
{
|
|
6714
6818
|
disabled,
|
|
6715
6819
|
propDisabled: value?.disabled,
|
|
6716
|
-
label: /* @__PURE__ */
|
|
6717
|
-
startIcon: /* @__PURE__ */
|
|
6820
|
+
label: /* @__PURE__ */ React106.createElement(RepeaterItemLabelSlot, { value }, /* @__PURE__ */ React106.createElement(itemSettings.Label, { value, index })),
|
|
6821
|
+
startIcon: /* @__PURE__ */ React106.createElement(RepeaterItemIconSlot, { value }, /* @__PURE__ */ React106.createElement(itemSettings.Icon, { value })),
|
|
6718
6822
|
removeItem: () => removeRepeaterItem(index),
|
|
6719
6823
|
duplicateItem: () => duplicateRepeaterItem(index),
|
|
6720
6824
|
toggleDisableItem: () => toggleDisableRepeaterItem(index),
|
|
@@ -6726,7 +6830,7 @@ var Repeater3 = ({
|
|
|
6726
6830
|
actions: itemSettings.actions,
|
|
6727
6831
|
value
|
|
6728
6832
|
},
|
|
6729
|
-
(props) => /* @__PURE__ */
|
|
6833
|
+
(props) => /* @__PURE__ */ React106.createElement(
|
|
6730
6834
|
itemSettings.Content,
|
|
6731
6835
|
{
|
|
6732
6836
|
...props,
|
|
@@ -6756,27 +6860,27 @@ var RepeaterItem = ({
|
|
|
6756
6860
|
value
|
|
6757
6861
|
}) => {
|
|
6758
6862
|
const { popoverState, popoverProps, ref, setRef } = usePopover(openOnMount, onOpen);
|
|
6759
|
-
const duplicateLabel = (0,
|
|
6760
|
-
const toggleLabel = propDisabled ? (0,
|
|
6761
|
-
const removeLabel = (0,
|
|
6762
|
-
return /* @__PURE__ */
|
|
6863
|
+
const duplicateLabel = (0, import_i18n53.__)("Duplicate", "elementor");
|
|
6864
|
+
const toggleLabel = propDisabled ? (0, import_i18n53.__)("Show", "elementor") : (0, import_i18n53.__)("Hide", "elementor");
|
|
6865
|
+
const removeLabel = (0, import_i18n53.__)("Remove", "elementor");
|
|
6866
|
+
return /* @__PURE__ */ React106.createElement(React106.Fragment, null, /* @__PURE__ */ React106.createElement(
|
|
6763
6867
|
RepeaterTag,
|
|
6764
6868
|
{
|
|
6765
6869
|
disabled,
|
|
6766
6870
|
label,
|
|
6767
6871
|
ref: setRef,
|
|
6768
|
-
"aria-label": (0,
|
|
6769
|
-
...(0,
|
|
6872
|
+
"aria-label": (0, import_i18n53.__)("Open item", "elementor"),
|
|
6873
|
+
...(0, import_ui92.bindTrigger)(popoverState),
|
|
6770
6874
|
startIcon,
|
|
6771
|
-
actions: /* @__PURE__ */
|
|
6875
|
+
actions: /* @__PURE__ */ React106.createElement(React106.Fragment, null, showDuplicate && /* @__PURE__ */ React106.createElement(import_ui92.Tooltip, { title: duplicateLabel, placement: "top" }, /* @__PURE__ */ React106.createElement(import_ui92.IconButton, { size: SIZE10, onClick: duplicateItem, "aria-label": duplicateLabel }, /* @__PURE__ */ React106.createElement(import_icons36.CopyIcon, { fontSize: SIZE10 }))), showToggle && /* @__PURE__ */ React106.createElement(import_ui92.Tooltip, { title: toggleLabel, placement: "top" }, /* @__PURE__ */ React106.createElement(import_ui92.IconButton, { size: SIZE10, onClick: toggleDisableItem, "aria-label": toggleLabel }, propDisabled ? /* @__PURE__ */ React106.createElement(import_icons36.EyeOffIcon, { fontSize: SIZE10 }) : /* @__PURE__ */ React106.createElement(import_icons36.EyeIcon, { fontSize: SIZE10 }))), actions?.(value), showRemove && /* @__PURE__ */ React106.createElement(import_ui92.Tooltip, { title: removeLabel, placement: "top" }, /* @__PURE__ */ React106.createElement(import_ui92.IconButton, { size: SIZE10, onClick: removeItem, "aria-label": removeLabel }, /* @__PURE__ */ React106.createElement(import_icons36.XIcon, { fontSize: SIZE10 }))))
|
|
6772
6876
|
}
|
|
6773
|
-
), /* @__PURE__ */
|
|
6877
|
+
), /* @__PURE__ */ React106.createElement(RepeaterPopover, { width: ref?.getBoundingClientRect().width, ...popoverProps, anchorEl: ref }, /* @__PURE__ */ React106.createElement(import_ui92.Box, null, children({ anchorEl: ref }))));
|
|
6774
6878
|
};
|
|
6775
6879
|
var usePopover = (openOnMount, onOpen) => {
|
|
6776
|
-
const [ref, setRef] = (0,
|
|
6777
|
-
const popoverState = (0,
|
|
6778
|
-
const popoverProps = (0,
|
|
6779
|
-
(0,
|
|
6880
|
+
const [ref, setRef] = (0, import_react58.useState)(null);
|
|
6881
|
+
const popoverState = (0, import_ui92.usePopupState)({ variant: "popover" });
|
|
6882
|
+
const popoverProps = (0, import_ui92.bindPopover)(popoverState);
|
|
6883
|
+
(0, import_react58.useEffect)(() => {
|
|
6780
6884
|
if (openOnMount && ref) {
|
|
6781
6885
|
popoverState.open(ref);
|
|
6782
6886
|
onOpen?.();
|
|
@@ -6791,20 +6895,20 @@ var usePopover = (openOnMount, onOpen) => {
|
|
|
6791
6895
|
};
|
|
6792
6896
|
|
|
6793
6897
|
// src/components/inline-editor-toolbar.tsx
|
|
6794
|
-
var
|
|
6795
|
-
var
|
|
6898
|
+
var React108 = __toESM(require("react"));
|
|
6899
|
+
var import_react60 = require("react");
|
|
6796
6900
|
var import_editor_elements6 = require("@elementor/editor-elements");
|
|
6797
6901
|
var import_icons38 = require("@elementor/icons");
|
|
6798
|
-
var
|
|
6799
|
-
var
|
|
6800
|
-
var
|
|
6902
|
+
var import_ui94 = require("@elementor/ui");
|
|
6903
|
+
var import_react61 = require("@tiptap/react");
|
|
6904
|
+
var import_i18n55 = require("@wordpress/i18n");
|
|
6801
6905
|
|
|
6802
6906
|
// src/components/url-popover.tsx
|
|
6803
|
-
var
|
|
6804
|
-
var
|
|
6907
|
+
var React107 = __toESM(require("react"));
|
|
6908
|
+
var import_react59 = require("react");
|
|
6805
6909
|
var import_icons37 = require("@elementor/icons");
|
|
6806
|
-
var
|
|
6807
|
-
var
|
|
6910
|
+
var import_ui93 = require("@elementor/ui");
|
|
6911
|
+
var import_i18n54 = require("@wordpress/i18n");
|
|
6808
6912
|
var UrlPopover = ({
|
|
6809
6913
|
popupState,
|
|
6810
6914
|
restoreValue,
|
|
@@ -6814,8 +6918,8 @@ var UrlPopover = ({
|
|
|
6814
6918
|
openInNewTab,
|
|
6815
6919
|
onToggleNewTab
|
|
6816
6920
|
}) => {
|
|
6817
|
-
const inputRef = (0,
|
|
6818
|
-
(0,
|
|
6921
|
+
const inputRef = (0, import_react59.useRef)(null);
|
|
6922
|
+
(0, import_react59.useEffect)(() => {
|
|
6819
6923
|
if (popupState.isOpen) {
|
|
6820
6924
|
requestAnimationFrame(() => inputRef.current?.focus());
|
|
6821
6925
|
}
|
|
@@ -6824,57 +6928,57 @@ var UrlPopover = ({
|
|
|
6824
6928
|
restoreValue();
|
|
6825
6929
|
popupState.close();
|
|
6826
6930
|
};
|
|
6827
|
-
return /* @__PURE__ */
|
|
6828
|
-
|
|
6931
|
+
return /* @__PURE__ */ React107.createElement(
|
|
6932
|
+
import_ui93.Popover,
|
|
6829
6933
|
{
|
|
6830
6934
|
slotProps: {
|
|
6831
6935
|
paper: { sx: { borderRadius: "16px", width: anchorRef.current?.offsetWidth + "px", marginTop: -1 } }
|
|
6832
6936
|
},
|
|
6833
|
-
...(0,
|
|
6937
|
+
...(0, import_ui93.bindPopover)(popupState),
|
|
6834
6938
|
anchorOrigin: { vertical: "top", horizontal: "left" },
|
|
6835
6939
|
transformOrigin: { vertical: "top", horizontal: "left" },
|
|
6836
6940
|
onClose: handleClose
|
|
6837
6941
|
},
|
|
6838
|
-
/* @__PURE__ */
|
|
6839
|
-
|
|
6942
|
+
/* @__PURE__ */ React107.createElement(import_ui93.Stack, { direction: "row", alignItems: "center", gap: 1, sx: { p: 1.5 } }, /* @__PURE__ */ React107.createElement(
|
|
6943
|
+
import_ui93.TextField,
|
|
6840
6944
|
{
|
|
6841
6945
|
value,
|
|
6842
6946
|
onChange,
|
|
6843
6947
|
size: "tiny",
|
|
6844
6948
|
fullWidth: true,
|
|
6845
|
-
placeholder: (0,
|
|
6949
|
+
placeholder: (0, import_i18n54.__)("Type a URL", "elementor"),
|
|
6846
6950
|
inputProps: { ref: inputRef },
|
|
6847
6951
|
color: "secondary",
|
|
6848
6952
|
InputProps: { sx: { borderRadius: "8px" } },
|
|
6849
6953
|
onKeyUp: (event) => event.key === "Enter" && handleClose()
|
|
6850
6954
|
}
|
|
6851
|
-
), /* @__PURE__ */
|
|
6852
|
-
|
|
6955
|
+
), /* @__PURE__ */ React107.createElement(import_ui93.Tooltip, { title: (0, import_i18n54.__)("Open in a new tab", "elementor") }, /* @__PURE__ */ React107.createElement(
|
|
6956
|
+
import_ui93.ToggleButton,
|
|
6853
6957
|
{
|
|
6854
6958
|
size: "tiny",
|
|
6855
6959
|
value: "newTab",
|
|
6856
6960
|
selected: openInNewTab,
|
|
6857
6961
|
onClick: onToggleNewTab,
|
|
6858
|
-
"aria-label": (0,
|
|
6962
|
+
"aria-label": (0, import_i18n54.__)("Open in a new tab", "elementor"),
|
|
6859
6963
|
sx: { borderRadius: "8px" }
|
|
6860
6964
|
},
|
|
6861
|
-
/* @__PURE__ */
|
|
6965
|
+
/* @__PURE__ */ React107.createElement(import_icons37.ExternalLinkIcon, { fontSize: "tiny" })
|
|
6862
6966
|
)))
|
|
6863
6967
|
);
|
|
6864
6968
|
};
|
|
6865
6969
|
|
|
6866
6970
|
// src/components/inline-editor-toolbar.tsx
|
|
6867
6971
|
var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
6868
|
-
const [urlValue, setUrlValue] = (0,
|
|
6869
|
-
const [openInNewTab, setOpenInNewTab] = (0,
|
|
6870
|
-
const toolbarRef = (0,
|
|
6871
|
-
const linkPopupState = (0,
|
|
6972
|
+
const [urlValue, setUrlValue] = (0, import_react60.useState)("");
|
|
6973
|
+
const [openInNewTab, setOpenInNewTab] = (0, import_react60.useState)(false);
|
|
6974
|
+
const toolbarRef = (0, import_react60.useRef)(null);
|
|
6975
|
+
const linkPopupState = (0, import_ui94.usePopupState)({ variant: "popover" });
|
|
6872
6976
|
const isElementClickable = elementId ? checkIfElementIsClickable(elementId) : false;
|
|
6873
|
-
const editorState = (0,
|
|
6977
|
+
const editorState = (0, import_react61.useEditorState)({
|
|
6874
6978
|
editor,
|
|
6875
6979
|
selector: (ctx) => possibleFormats.filter((format) => ctx.editor.isActive(format))
|
|
6876
6980
|
});
|
|
6877
|
-
const formatButtonsList = (0,
|
|
6981
|
+
const formatButtonsList = (0, import_react60.useMemo)(() => {
|
|
6878
6982
|
const buttons = Object.values(formatButtons);
|
|
6879
6983
|
if (isElementClickable) {
|
|
6880
6984
|
return buttons.filter((button) => button.action !== "link");
|
|
@@ -6911,11 +7015,11 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
6911
7015
|
}
|
|
6912
7016
|
linkPopupState.close();
|
|
6913
7017
|
};
|
|
6914
|
-
|
|
7018
|
+
React108.useEffect(() => {
|
|
6915
7019
|
editor?.commands?.focus();
|
|
6916
7020
|
}, [editor]);
|
|
6917
|
-
return /* @__PURE__ */
|
|
6918
|
-
|
|
7021
|
+
return /* @__PURE__ */ React108.createElement(
|
|
7022
|
+
import_ui94.Box,
|
|
6919
7023
|
{
|
|
6920
7024
|
ref: toolbarRef,
|
|
6921
7025
|
sx: {
|
|
@@ -6931,9 +7035,9 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
6931
7035
|
...sx
|
|
6932
7036
|
}
|
|
6933
7037
|
},
|
|
6934
|
-
/* @__PURE__ */
|
|
6935
|
-
/* @__PURE__ */
|
|
6936
|
-
|
|
7038
|
+
/* @__PURE__ */ React108.createElement(import_ui94.Tooltip, { title: clearButton.label, placement: "top", sx: { borderRadius: "8px" } }, /* @__PURE__ */ React108.createElement(import_ui94.IconButton, { "aria-label": clearButton.label, onClick: () => clearButton.method(editor), size: "tiny" }, clearButton.icon)),
|
|
7039
|
+
/* @__PURE__ */ React108.createElement(
|
|
7040
|
+
import_ui94.ToggleButtonGroup,
|
|
6937
7041
|
{
|
|
6938
7042
|
value: editorState,
|
|
6939
7043
|
size: "tiny",
|
|
@@ -6941,7 +7045,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
6941
7045
|
display: "flex",
|
|
6942
7046
|
gap: 0.5,
|
|
6943
7047
|
border: "none",
|
|
6944
|
-
[`& .${
|
|
7048
|
+
[`& .${import_ui94.toggleButtonGroupClasses.firstButton}, & .${import_ui94.toggleButtonGroupClasses.middleButton}, & .${import_ui94.toggleButtonGroupClasses.lastButton}`]: {
|
|
6945
7049
|
borderRadius: "8px",
|
|
6946
7050
|
border: "none",
|
|
6947
7051
|
marginLeft: 0,
|
|
@@ -6954,8 +7058,8 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
6954
7058
|
}
|
|
6955
7059
|
}
|
|
6956
7060
|
},
|
|
6957
|
-
formatButtonsList.map((button) => /* @__PURE__ */
|
|
6958
|
-
|
|
7061
|
+
formatButtonsList.map((button) => /* @__PURE__ */ React108.createElement(import_ui94.Tooltip, { title: button.label, key: button.action, placement: "top" }, /* @__PURE__ */ React108.createElement(
|
|
7062
|
+
import_ui94.ToggleButton,
|
|
6959
7063
|
{
|
|
6960
7064
|
value: button.action,
|
|
6961
7065
|
"aria-label": button.label,
|
|
@@ -6972,7 +7076,7 @@ var InlineEditorToolbar = ({ editor, elementId, sx = {} }) => {
|
|
|
6972
7076
|
button.icon
|
|
6973
7077
|
)))
|
|
6974
7078
|
),
|
|
6975
|
-
/* @__PURE__ */
|
|
7079
|
+
/* @__PURE__ */ React108.createElement(
|
|
6976
7080
|
UrlPopover,
|
|
6977
7081
|
{
|
|
6978
7082
|
popupState: linkPopupState,
|
|
@@ -6995,64 +7099,64 @@ var checkIfElementIsClickable = (elementId) => {
|
|
|
6995
7099
|
};
|
|
6996
7100
|
var toolbarButtons = {
|
|
6997
7101
|
clear: {
|
|
6998
|
-
label: (0,
|
|
6999
|
-
icon: /* @__PURE__ */
|
|
7102
|
+
label: (0, import_i18n55.__)("Clear", "elementor"),
|
|
7103
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.MinusIcon, { fontSize: "tiny" }),
|
|
7000
7104
|
action: "clear",
|
|
7001
7105
|
method: (editor) => {
|
|
7002
7106
|
editor.chain().focus().clearNodes().unsetAllMarks().run();
|
|
7003
7107
|
}
|
|
7004
7108
|
},
|
|
7005
7109
|
bold: {
|
|
7006
|
-
label: (0,
|
|
7007
|
-
icon: /* @__PURE__ */
|
|
7110
|
+
label: (0, import_i18n55.__)("Bold", "elementor"),
|
|
7111
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.BoldIcon, { fontSize: "tiny" }),
|
|
7008
7112
|
action: "bold",
|
|
7009
7113
|
method: (editor) => {
|
|
7010
7114
|
editor.chain().focus().toggleBold().run();
|
|
7011
7115
|
}
|
|
7012
7116
|
},
|
|
7013
7117
|
italic: {
|
|
7014
|
-
label: (0,
|
|
7015
|
-
icon: /* @__PURE__ */
|
|
7118
|
+
label: (0, import_i18n55.__)("Italic", "elementor"),
|
|
7119
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.ItalicIcon, { fontSize: "tiny" }),
|
|
7016
7120
|
action: "italic",
|
|
7017
7121
|
method: (editor) => {
|
|
7018
7122
|
editor.chain().focus().toggleItalic().run();
|
|
7019
7123
|
}
|
|
7020
7124
|
},
|
|
7021
7125
|
underline: {
|
|
7022
|
-
label: (0,
|
|
7023
|
-
icon: /* @__PURE__ */
|
|
7126
|
+
label: (0, import_i18n55.__)("Underline", "elementor"),
|
|
7127
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.UnderlineIcon, { fontSize: "tiny" }),
|
|
7024
7128
|
action: "underline",
|
|
7025
7129
|
method: (editor) => {
|
|
7026
7130
|
editor.chain().focus().toggleUnderline().run();
|
|
7027
7131
|
}
|
|
7028
7132
|
},
|
|
7029
7133
|
strike: {
|
|
7030
|
-
label: (0,
|
|
7031
|
-
icon: /* @__PURE__ */
|
|
7134
|
+
label: (0, import_i18n55.__)("Strikethrough", "elementor"),
|
|
7135
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.StrikethroughIcon, { fontSize: "tiny" }),
|
|
7032
7136
|
action: "strike",
|
|
7033
7137
|
method: (editor) => {
|
|
7034
7138
|
editor.chain().focus().toggleStrike().run();
|
|
7035
7139
|
}
|
|
7036
7140
|
},
|
|
7037
7141
|
superscript: {
|
|
7038
|
-
label: (0,
|
|
7039
|
-
icon: /* @__PURE__ */
|
|
7142
|
+
label: (0, import_i18n55.__)("Superscript", "elementor"),
|
|
7143
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.SuperscriptIcon, { fontSize: "tiny" }),
|
|
7040
7144
|
action: "superscript",
|
|
7041
7145
|
method: (editor) => {
|
|
7042
7146
|
editor.chain().focus().toggleSuperscript().run();
|
|
7043
7147
|
}
|
|
7044
7148
|
},
|
|
7045
7149
|
subscript: {
|
|
7046
|
-
label: (0,
|
|
7047
|
-
icon: /* @__PURE__ */
|
|
7150
|
+
label: (0, import_i18n55.__)("Subscript", "elementor"),
|
|
7151
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.SubscriptIcon, { fontSize: "tiny" }),
|
|
7048
7152
|
action: "subscript",
|
|
7049
7153
|
method: (editor) => {
|
|
7050
7154
|
editor.chain().focus().toggleSubscript().run();
|
|
7051
7155
|
}
|
|
7052
7156
|
},
|
|
7053
7157
|
link: {
|
|
7054
|
-
label: (0,
|
|
7055
|
-
icon: /* @__PURE__ */
|
|
7158
|
+
label: (0, import_i18n55.__)("Link", "elementor"),
|
|
7159
|
+
icon: /* @__PURE__ */ React108.createElement(import_icons38.LinkIcon, { fontSize: "tiny" }),
|
|
7056
7160
|
action: "link",
|
|
7057
7161
|
method: null
|
|
7058
7162
|
}
|
|
@@ -7061,8 +7165,8 @@ var { clear: clearButton, ...formatButtons } = toolbarButtons;
|
|
|
7061
7165
|
var possibleFormats = Object.keys(formatButtons);
|
|
7062
7166
|
|
|
7063
7167
|
// src/components/size/unstable-size-field.tsx
|
|
7064
|
-
var
|
|
7065
|
-
var
|
|
7168
|
+
var React111 = __toESM(require("react"));
|
|
7169
|
+
var import_ui96 = require("@elementor/ui");
|
|
7066
7170
|
|
|
7067
7171
|
// src/hooks/use-size-value.ts
|
|
7068
7172
|
var useSizeValue = (externalValue, onChange, defaultValue) => {
|
|
@@ -7102,26 +7206,26 @@ var differsFromExternal = (newState, externalState) => {
|
|
|
7102
7206
|
};
|
|
7103
7207
|
|
|
7104
7208
|
// src/components/size/unit-select.tsx
|
|
7105
|
-
var
|
|
7106
|
-
var
|
|
7107
|
-
var
|
|
7108
|
-
var
|
|
7209
|
+
var React109 = __toESM(require("react"));
|
|
7210
|
+
var import_react62 = require("react");
|
|
7211
|
+
var import_editor_ui15 = require("@elementor/editor-ui");
|
|
7212
|
+
var import_ui95 = require("@elementor/ui");
|
|
7109
7213
|
var menuItemContentStyles = {
|
|
7110
7214
|
display: "flex",
|
|
7111
7215
|
flexDirection: "column",
|
|
7112
7216
|
justifyContent: "center"
|
|
7113
7217
|
};
|
|
7114
7218
|
var UnitSelect = ({ value, showPrimaryColor, onClick, options }) => {
|
|
7115
|
-
const popupState = (0,
|
|
7219
|
+
const popupState = (0, import_ui95.usePopupState)({
|
|
7116
7220
|
variant: "popover",
|
|
7117
|
-
popupId: (0,
|
|
7221
|
+
popupId: (0, import_react62.useId)()
|
|
7118
7222
|
});
|
|
7119
7223
|
const handleMenuItemClick = (index) => {
|
|
7120
7224
|
onClick(options[index]);
|
|
7121
7225
|
popupState.close();
|
|
7122
7226
|
};
|
|
7123
|
-
return /* @__PURE__ */
|
|
7124
|
-
|
|
7227
|
+
return /* @__PURE__ */ React109.createElement(React109.Fragment, null, /* @__PURE__ */ React109.createElement(StyledButton2, { isPrimaryColor: showPrimaryColor, size: "small", ...(0, import_ui95.bindTrigger)(popupState) }, value), /* @__PURE__ */ React109.createElement(import_ui95.Menu, { MenuListProps: { dense: true }, ...(0, import_ui95.bindMenu)(popupState) }, options.map((option, index) => /* @__PURE__ */ React109.createElement(
|
|
7228
|
+
import_editor_ui15.MenuListItem,
|
|
7125
7229
|
{
|
|
7126
7230
|
key: option,
|
|
7127
7231
|
onClick: () => handleMenuItemClick(index),
|
|
@@ -7139,7 +7243,7 @@ var UnitSelect = ({ value, showPrimaryColor, onClick, options }) => {
|
|
|
7139
7243
|
option.toUpperCase()
|
|
7140
7244
|
))));
|
|
7141
7245
|
};
|
|
7142
|
-
var StyledButton2 = (0,
|
|
7246
|
+
var StyledButton2 = (0, import_ui95.styled)(import_ui95.Button, {
|
|
7143
7247
|
shouldForwardProp: (prop) => prop !== "isPrimaryColor"
|
|
7144
7248
|
})(({ isPrimaryColor, theme }) => ({
|
|
7145
7249
|
color: isPrimaryColor ? theme.palette.text.primary : theme.palette.text.tertiary,
|
|
@@ -7149,11 +7253,11 @@ var StyledButton2 = (0, import_ui94.styled)(import_ui94.Button, {
|
|
|
7149
7253
|
}));
|
|
7150
7254
|
|
|
7151
7255
|
// src/components/size/unstable-size-input.tsx
|
|
7152
|
-
var
|
|
7153
|
-
var
|
|
7154
|
-
var UnstableSizeInput = (0,
|
|
7256
|
+
var React110 = __toESM(require("react"));
|
|
7257
|
+
var import_react63 = require("react");
|
|
7258
|
+
var UnstableSizeInput = (0, import_react63.forwardRef)(
|
|
7155
7259
|
({ type, value, onChange, onKeyDown, onKeyUp, InputProps, onBlur, focused, disabled }, ref) => {
|
|
7156
|
-
return /* @__PURE__ */
|
|
7260
|
+
return /* @__PURE__ */ React110.createElement(
|
|
7157
7261
|
NumberInput,
|
|
7158
7262
|
{
|
|
7159
7263
|
ref,
|
|
@@ -7197,7 +7301,7 @@ var UnstableSizeField = ({
|
|
|
7197
7301
|
const shouldHighlightUnit = () => {
|
|
7198
7302
|
return hasValue(size);
|
|
7199
7303
|
};
|
|
7200
|
-
return /* @__PURE__ */
|
|
7304
|
+
return /* @__PURE__ */ React111.createElement(
|
|
7201
7305
|
UnstableSizeInput,
|
|
7202
7306
|
{
|
|
7203
7307
|
type: "number",
|
|
@@ -7206,7 +7310,7 @@ var UnstableSizeField = ({
|
|
|
7206
7310
|
onChange: (event) => setSize(event.target.value),
|
|
7207
7311
|
InputProps: {
|
|
7208
7312
|
...InputProps,
|
|
7209
|
-
endAdornment: /* @__PURE__ */
|
|
7313
|
+
endAdornment: /* @__PURE__ */ React111.createElement(import_ui96.InputAdornment, { position: "end" }, /* @__PURE__ */ React111.createElement(
|
|
7210
7314
|
UnitSelect,
|
|
7211
7315
|
{
|
|
7212
7316
|
options: units2,
|
|
@@ -7224,13 +7328,13 @@ var hasValue = (value) => {
|
|
|
7224
7328
|
};
|
|
7225
7329
|
|
|
7226
7330
|
// src/hooks/use-font-families.ts
|
|
7227
|
-
var
|
|
7331
|
+
var import_react64 = require("react");
|
|
7228
7332
|
var import_editor_v1_adapters = require("@elementor/editor-v1-adapters");
|
|
7229
|
-
var
|
|
7333
|
+
var import_i18n56 = require("@wordpress/i18n");
|
|
7230
7334
|
var supportedCategories = {
|
|
7231
|
-
system: (0,
|
|
7232
|
-
custom: (0,
|
|
7233
|
-
googlefonts: (0,
|
|
7335
|
+
system: (0, import_i18n56.__)("System", "elementor"),
|
|
7336
|
+
custom: (0, import_i18n56.__)("Custom Fonts", "elementor"),
|
|
7337
|
+
googlefonts: (0, import_i18n56.__)("Google Fonts", "elementor")
|
|
7234
7338
|
};
|
|
7235
7339
|
var getFontFamilies = () => {
|
|
7236
7340
|
const { controls } = (0, import_editor_v1_adapters.getElementorConfig)();
|
|
@@ -7242,7 +7346,7 @@ var getFontFamilies = () => {
|
|
|
7242
7346
|
};
|
|
7243
7347
|
var useFontFamilies = () => {
|
|
7244
7348
|
const fontFamilies = getFontFamilies();
|
|
7245
|
-
return (0,
|
|
7349
|
+
return (0, import_react64.useMemo)(() => {
|
|
7246
7350
|
const categoriesOrder = ["system", "custom", "googlefonts"];
|
|
7247
7351
|
return Object.entries(fontFamilies || {}).reduce((acc, [font, category]) => {
|
|
7248
7352
|
if (!supportedCategories[category]) {
|
|
@@ -7277,6 +7381,7 @@ var useFontFamilies = () => {
|
|
|
7277
7381
|
ControlToggleButtonGroup,
|
|
7278
7382
|
DateTimeControl,
|
|
7279
7383
|
DisplayConditionsControl,
|
|
7384
|
+
EmailFormActionControl,
|
|
7280
7385
|
EqualUnequalSizesControl,
|
|
7281
7386
|
FilterRepeaterControl,
|
|
7282
7387
|
FontFamilyControl,
|