@strapi/content-manager 0.0.0-experimental.9612538209f3c68285c5dea8fe26f96e7e470afd → 0.0.0-experimental.997c519cb311bf692e8971f4bbd2e4a92694abee
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/LICENSE +18 -3
- package/dist/_chunks/{ComponentConfigurationPage-DHNM3YBz.mjs → ComponentConfigurationPage-CnL10QYC.mjs} +3 -3
- package/dist/_chunks/{ComponentConfigurationPage-DHNM3YBz.mjs.map → ComponentConfigurationPage-CnL10QYC.mjs.map} +1 -1
- package/dist/_chunks/{ComponentConfigurationPage-BvHtG7uH.js → ComponentConfigurationPage-G4EIirP8.js} +3 -3
- package/dist/_chunks/{ComponentConfigurationPage-BvHtG7uH.js.map → ComponentConfigurationPage-G4EIirP8.js.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-DOmfCEMo.js → EditConfigurationPage-B2AA1kVF.js} +3 -3
- package/dist/_chunks/{EditConfigurationPage-DOmfCEMo.js.map → EditConfigurationPage-B2AA1kVF.js.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-Cp6HAEzN.mjs → EditConfigurationPage-I2kKh9dx.mjs} +3 -3
- package/dist/_chunks/{EditConfigurationPage-Cp6HAEzN.mjs.map → EditConfigurationPage-I2kKh9dx.mjs.map} +1 -1
- package/dist/_chunks/{EditViewPage-BqNpC6hO.js → EditViewPage-CHgoNwlc.js} +19 -8
- package/dist/_chunks/EditViewPage-CHgoNwlc.js.map +1 -0
- package/dist/_chunks/{EditViewPage-BtkEx339.mjs → EditViewPage-zFjJK0s8.mjs} +19 -8
- package/dist/_chunks/EditViewPage-zFjJK0s8.mjs.map +1 -0
- package/dist/_chunks/{Field-lsPFnAmH.js → Field-9DePZh-0.js} +196 -143
- package/dist/_chunks/Field-9DePZh-0.js.map +1 -0
- package/dist/_chunks/{Field-R5NbffTB.mjs → Field-DPAzUS1M.mjs} +194 -141
- package/dist/_chunks/Field-DPAzUS1M.mjs.map +1 -0
- package/dist/_chunks/{Form-BHmXSfyy.mjs → Form-CEkENbkF.mjs} +35 -16
- package/dist/_chunks/Form-CEkENbkF.mjs.map +1 -0
- package/dist/_chunks/{Form-CcGboku8.js → Form-DPm-KZ1A.js} +35 -16
- package/dist/_chunks/Form-DPm-KZ1A.js.map +1 -0
- package/dist/_chunks/{History-Bsud8jwh.js → History-DXSbTWez.js} +28 -18
- package/dist/_chunks/History-DXSbTWez.js.map +1 -0
- package/dist/_chunks/{History-ByUPL3T3.mjs → History-utls71em.mjs} +28 -18
- package/dist/_chunks/History-utls71em.mjs.map +1 -0
- package/dist/_chunks/{ListConfigurationPage-Bm5HACXf.mjs → ListConfigurationPage-CuMXWWqb.mjs} +20 -8
- package/dist/_chunks/ListConfigurationPage-CuMXWWqb.mjs.map +1 -0
- package/dist/_chunks/{ListConfigurationPage-DiT463qx.js → ListConfigurationPage-D5C7ACZ_.js} +20 -8
- package/dist/_chunks/ListConfigurationPage-D5C7ACZ_.js.map +1 -0
- package/dist/_chunks/{ListViewPage-JSyNAAYu.mjs → ListViewPage-CdKd-PS_.mjs} +46 -37
- package/dist/_chunks/ListViewPage-CdKd-PS_.mjs.map +1 -0
- package/dist/_chunks/{ListViewPage-CsrC9L_d.js → ListViewPage-DfuwH1tt.js} +48 -39
- package/dist/_chunks/ListViewPage-DfuwH1tt.js.map +1 -0
- package/dist/_chunks/{NoContentTypePage-Bsvng4II.js → NoContentTypePage-BIxlkWWi.js} +2 -2
- package/dist/_chunks/{NoContentTypePage-Bsvng4II.js.map → NoContentTypePage-BIxlkWWi.js.map} +1 -1
- package/dist/_chunks/{NoContentTypePage-CsrQUpBE.mjs → NoContentTypePage-DkToTT7u.mjs} +2 -2
- package/dist/_chunks/{NoContentTypePage-CsrQUpBE.mjs.map → NoContentTypePage-DkToTT7u.mjs.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-CdHNJtEf.js → NoPermissionsPage-Bu4GWYb-.js} +2 -2
- package/dist/_chunks/{NoPermissionsPage-CdHNJtEf.js.map → NoPermissionsPage-Bu4GWYb-.js.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-DNmf_pj0.mjs → NoPermissionsPage-DlWi4BAH.mjs} +2 -2
- package/dist/_chunks/{NoPermissionsPage-DNmf_pj0.mjs.map → NoPermissionsPage-DlWi4BAH.mjs.map} +1 -1
- package/dist/_chunks/{Relations-CghaPv2D.js → Relations-CFjTESWQ.js} +4 -4
- package/dist/_chunks/Relations-CFjTESWQ.js.map +1 -0
- package/dist/_chunks/{Relations-u8-37jK0.mjs → Relations-QP5yn9_z.mjs} +4 -4
- package/dist/_chunks/Relations-QP5yn9_z.mjs.map +1 -0
- package/dist/_chunks/{en-fbKQxLGn.js → en-BVzUkPxZ.js} +10 -8
- package/dist/_chunks/{en-fbKQxLGn.js.map → en-BVzUkPxZ.js.map} +1 -1
- package/dist/_chunks/{en-Ux26r5pl.mjs → en-CPTj6CjC.mjs} +10 -8
- package/dist/_chunks/{en-Ux26r5pl.mjs.map → en-CPTj6CjC.mjs.map} +1 -1
- package/dist/_chunks/{index-CaE6NG4a.mjs → index-BHfS6_D5.mjs} +437 -205
- package/dist/_chunks/index-BHfS6_D5.mjs.map +1 -0
- package/dist/_chunks/{index-BOZx6IMg.js → index-DXiHxy70.js} +418 -186
- package/dist/_chunks/index-DXiHxy70.js.map +1 -0
- package/dist/_chunks/{layout-Bx7svTbY.mjs → layout-DX_52HSH.mjs} +23 -10
- package/dist/_chunks/layout-DX_52HSH.mjs.map +1 -0
- package/dist/_chunks/{layout-Ciz224q5.js → layout-bE-WUnQ0.js} +22 -9
- package/dist/_chunks/layout-bE-WUnQ0.js.map +1 -0
- package/dist/_chunks/{relations-CP8sB2YZ.js → relations-D706vblp.js} +2 -2
- package/dist/_chunks/{relations-CP8sB2YZ.js.map → relations-D706vblp.js.map} +1 -1
- package/dist/_chunks/{relations-Cxc1cEv3.mjs → relations-SCVAL_aJ.mjs} +2 -2
- package/dist/_chunks/{relations-Cxc1cEv3.mjs.map → relations-SCVAL_aJ.mjs.map} +1 -1
- package/dist/_chunks/{usePrev-B9w_-eYc.js → useDebounce-CtcjDB3L.js} +14 -1
- package/dist/_chunks/useDebounce-CtcjDB3L.js.map +1 -0
- package/dist/_chunks/useDebounce-DmuSJIF3.mjs +29 -0
- package/dist/_chunks/useDebounce-DmuSJIF3.mjs.map +1 -0
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +4 -4
- package/dist/admin/src/history/index.d.ts +3 -0
- package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
- package/dist/admin/src/index.d.ts +1 -0
- package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +1 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Relations.d.ts +20 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.d.ts +2 -2
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygFooter.d.ts +2 -2
- package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.d.ts +4 -48
- package/dist/admin/src/pages/EditView/components/Header.d.ts +10 -11
- package/dist/admin/src/services/api.d.ts +1 -1
- package/dist/admin/src/services/components.d.ts +2 -2
- package/dist/admin/src/services/contentTypes.d.ts +3 -3
- package/dist/admin/src/services/documents.d.ts +19 -17
- package/dist/admin/src/services/init.d.ts +1 -1
- package/dist/admin/src/services/relations.d.ts +2 -2
- package/dist/admin/src/services/uid.d.ts +3 -3
- package/dist/admin/src/utils/validation.d.ts +4 -1
- package/dist/server/index.js +174 -105
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +175 -106
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
- package/dist/server/src/controllers/relations.d.ts.map +1 -1
- package/dist/server/src/controllers/uid.d.ts.map +1 -1
- package/dist/server/src/controllers/validation/dimensions.d.ts +4 -2
- package/dist/server/src/controllers/validation/dimensions.d.ts.map +1 -1
- package/dist/server/src/history/services/history.d.ts.map +1 -1
- package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
- package/dist/server/src/history/services/utils.d.ts +2 -1
- package/dist/server/src/history/services/utils.d.ts.map +1 -1
- package/dist/server/src/policies/hasPermissions.d.ts.map +1 -1
- package/dist/server/src/services/document-manager.d.ts.map +1 -1
- package/dist/server/src/services/document-metadata.d.ts.map +1 -1
- package/dist/server/src/services/permission-checker.d.ts.map +1 -1
- package/dist/server/src/services/utils/populate.d.ts.map +1 -1
- package/dist/shared/contracts/collection-types.d.ts +3 -1
- package/dist/shared/contracts/collection-types.d.ts.map +1 -1
- package/package.json +9 -9
- package/dist/_chunks/EditViewPage-BqNpC6hO.js.map +0 -1
- package/dist/_chunks/EditViewPage-BtkEx339.mjs.map +0 -1
- package/dist/_chunks/Field-R5NbffTB.mjs.map +0 -1
- package/dist/_chunks/Field-lsPFnAmH.js.map +0 -1
- package/dist/_chunks/Form-BHmXSfyy.mjs.map +0 -1
- package/dist/_chunks/Form-CcGboku8.js.map +0 -1
- package/dist/_chunks/History-Bsud8jwh.js.map +0 -1
- package/dist/_chunks/History-ByUPL3T3.mjs.map +0 -1
- package/dist/_chunks/ListConfigurationPage-Bm5HACXf.mjs.map +0 -1
- package/dist/_chunks/ListConfigurationPage-DiT463qx.js.map +0 -1
- package/dist/_chunks/ListViewPage-CsrC9L_d.js.map +0 -1
- package/dist/_chunks/ListViewPage-JSyNAAYu.mjs.map +0 -1
- package/dist/_chunks/Relations-CghaPv2D.js.map +0 -1
- package/dist/_chunks/Relations-u8-37jK0.mjs.map +0 -1
- package/dist/_chunks/index-BOZx6IMg.js.map +0 -1
- package/dist/_chunks/index-CaE6NG4a.mjs.map +0 -1
- package/dist/_chunks/layout-Bx7svTbY.mjs.map +0 -1
- package/dist/_chunks/layout-Ciz224q5.js.map +0 -1
- package/dist/_chunks/usePrev-B9w_-eYc.js.map +0 -1
- package/dist/_chunks/usePrev-DH6iah0A.mjs +0 -16
- package/dist/_chunks/usePrev-DH6iah0A.mjs.map +0 -1
@@ -2,12 +2,12 @@ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import * as React from "react";
|
3
3
|
import { useState, useEffect, useCallback, memo } from "react";
|
4
4
|
import { useStrapiApp, createContext, useField, useNotification, useForm, useAPIErrorHandler, useQueryParams, useFocusInputField, InputRenderer as InputRenderer$1 } from "@strapi/admin/strapi-admin";
|
5
|
-
import { Box, SingleSelect, SingleSelectOption, Typography, Flex, BaseLink, Button, Popover, Field, Tooltip, IconButton, useComposedRefs, Portal, FocusTrap, Divider, VisuallyHidden, Grid as Grid$1, Accordion, TextButton,
|
5
|
+
import { Box, SingleSelect, SingleSelectOption, Typography, Flex, BaseLink, Button, Popover, Field, Tooltip, IconButton, useComposedRefs, Portal, FocusTrap, Divider, VisuallyHidden, Grid as Grid$1, Accordion, TextButton, TextInput, IconButtonGroup, Menu, MenuItem } from "@strapi/design-system";
|
6
6
|
import pipe$1 from "lodash/fp/pipe";
|
7
7
|
import { useIntl } from "react-intl";
|
8
|
-
import { m as DOCUMENT_META_FIELDS, g as getTranslation, c as useDoc, e as contentManagerApi, d as buildValidParams, f as useDocumentRBAC,
|
8
|
+
import { m as DOCUMENT_META_FIELDS, g as getTranslation, c as useDoc, e as contentManagerApi, n as CLONE_PATH, d as buildValidParams, f as useDocumentRBAC, o as useDocLayout } from "./index-BHfS6_D5.mjs";
|
9
9
|
import { generateNKeysBetween } from "fractional-indexing";
|
10
|
-
import { u as useComponent, C as ComponentProvider, M as MemoizedRelationsField } from "./Relations-
|
10
|
+
import { u as useComponent, C as ComponentProvider, M as MemoizedRelationsField } from "./Relations-QP5yn9_z.mjs";
|
11
11
|
import { Code, HeadingOne, HeadingTwo, HeadingThree, HeadingFour, HeadingFive, HeadingSix, Image as Image$1, NumberList, BulletList, Paragraph, Quotes, Link as Link$1, Drag, Collapse, Bold, Italic, Underline, StrikeThrough, Expand, PlusCircle, Plus, Trash, EyeStriked, CheckCircle, WarningCircle, Loader, ArrowClockwise, More } from "@strapi/icons";
|
12
12
|
import { styled, css, keyframes } from "styled-components";
|
13
13
|
import { C as ComponentIcon, a as COMPONENT_ICONS } from "./ComponentIcon-u4bIXTFY.mjs";
|
@@ -17,9 +17,9 @@ import { g as getIn } from "./objects-mKMAmfec.mjs";
|
|
17
17
|
import { Editor as Editor$1, Transforms, Node, Element, Range, Path, Point, createEditor } from "slate";
|
18
18
|
import { withHistory } from "slate-history";
|
19
19
|
import { useFocused, useSelected, ReactEditor, Editable, useSlate, Slate, withReact } from "slate-react";
|
20
|
-
import { p as prefixFileUrlWithBackendUrl, u as usePrev } from "./
|
20
|
+
import { p as prefixFileUrlWithBackendUrl, u as usePrev, a as useDebounce } from "./useDebounce-DmuSJIF3.mjs";
|
21
21
|
import * as Toolbar from "@radix-ui/react-toolbar";
|
22
|
-
import { useLocation } from "react-router-dom";
|
22
|
+
import { useLocation, useMatch } from "react-router-dom";
|
23
23
|
import CodeMirror from "codemirror5";
|
24
24
|
import sanitizeHtml from "sanitize-html";
|
25
25
|
import { getLanguage, highlight, highlightAuto } from "highlight.js";
|
@@ -860,20 +860,8 @@ const LinkContent = React.forwardRef(
|
|
860
860
|
const [linkText, setLinkText] = React.useState(elementText);
|
861
861
|
const [linkUrl, setLinkUrl] = React.useState(link.url);
|
862
862
|
const linkInputRef = React.useRef(null);
|
863
|
-
const
|
863
|
+
const isLastInsertedLink = editor.lastInsertedLinkPath ? !Path.equals(path, editor.lastInsertedLinkPath) : true;
|
864
864
|
const [isSaveDisabled, setIsSaveDisabled] = React.useState(false);
|
865
|
-
const handleOpenChange = (isOpen) => {
|
866
|
-
if (isOpen) {
|
867
|
-
setPopoverOpen(isOpen);
|
868
|
-
setShowRemoveButton(isOpen);
|
869
|
-
} else {
|
870
|
-
setPopoverOpen(isOpen);
|
871
|
-
if (link.url === "") {
|
872
|
-
removeLink(editor);
|
873
|
-
}
|
874
|
-
ReactEditor.focus(editor);
|
875
|
-
}
|
876
|
-
};
|
877
865
|
const onLinkChange = (e) => {
|
878
866
|
setIsSaveDisabled(false);
|
879
867
|
setLinkUrl(e.target.value);
|
@@ -894,15 +882,33 @@ const LinkContent = React.forwardRef(
|
|
894
882
|
editLink(editor, { url: linkUrl, text: linkText });
|
895
883
|
setPopoverOpen(false);
|
896
884
|
editor.lastInsertedLinkPath = null;
|
885
|
+
ReactEditor.focus(editor);
|
886
|
+
};
|
887
|
+
const handleClose = () => {
|
888
|
+
if (link.url === "") {
|
889
|
+
removeLink(editor);
|
890
|
+
}
|
891
|
+
setPopoverOpen(false);
|
892
|
+
ReactEditor.focus(editor);
|
897
893
|
};
|
898
894
|
React.useEffect(() => {
|
899
895
|
if (popoverOpen)
|
900
896
|
linkInputRef.current?.focus();
|
901
897
|
}, [popoverOpen]);
|
902
898
|
const inputNotDirty = !linkText || !linkUrl || link.url && link.url === linkUrl && elementText && elementText === linkText;
|
903
|
-
return /* @__PURE__ */ jsxs(Popover.Root, {
|
904
|
-
/* @__PURE__ */ jsx(Popover.Trigger, { children: /* @__PURE__ */ jsx(
|
905
|
-
|
899
|
+
return /* @__PURE__ */ jsxs(Popover.Root, { open: popoverOpen, children: [
|
900
|
+
/* @__PURE__ */ jsx(Popover.Trigger, { children: /* @__PURE__ */ jsx(
|
901
|
+
StyledBaseLink,
|
902
|
+
{
|
903
|
+
...attributes,
|
904
|
+
ref: forwardedRef,
|
905
|
+
href: link.url,
|
906
|
+
onClick: () => setPopoverOpen(true),
|
907
|
+
color: "primary600",
|
908
|
+
children
|
909
|
+
}
|
910
|
+
) }),
|
911
|
+
/* @__PURE__ */ jsx(Popover.Content, { onPointerDownOutside: handleClose, children: /* @__PURE__ */ jsxs(Flex, { padding: 4, direction: "column", gap: 4, children: [
|
906
912
|
/* @__PURE__ */ jsx(Field.Root, { width: "368px", children: /* @__PURE__ */ jsxs(Flex, { direction: "column", gap: 1, alignItems: "stretch", children: [
|
907
913
|
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
908
914
|
id: "components.Blocks.popover.text",
|
@@ -948,7 +954,7 @@ const LinkContent = React.forwardRef(
|
|
948
954
|
{
|
949
955
|
variant: "danger-light",
|
950
956
|
onClick: () => removeLink(editor),
|
951
|
-
$visible:
|
957
|
+
$visible: isLastInsertedLink,
|
952
958
|
children: formatMessage({
|
953
959
|
id: "components.Blocks.popover.remove",
|
954
960
|
defaultMessage: "Remove"
|
@@ -956,11 +962,11 @@ const LinkContent = React.forwardRef(
|
|
956
962
|
}
|
957
963
|
),
|
958
964
|
/* @__PURE__ */ jsxs(Flex, { gap: 2, children: [
|
959
|
-
/* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick:
|
965
|
+
/* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: handleClose, children: formatMessage({
|
960
966
|
id: "components.Blocks.popover.cancel",
|
961
967
|
defaultMessage: "Cancel"
|
962
968
|
}) }),
|
963
|
-
/* @__PURE__ */ jsx(Button, {
|
969
|
+
/* @__PURE__ */ jsx(Button, { disabled: Boolean(inputNotDirty) || isSaveDisabled, onClick: handleSave, children: formatMessage({
|
964
970
|
id: "components.Blocks.popover.save",
|
965
971
|
defaultMessage: "Save"
|
966
972
|
}) })
|
@@ -1401,7 +1407,7 @@ const ToolbarButton = ({
|
|
1401
1407
|
width: 7,
|
1402
1408
|
height: 7,
|
1403
1409
|
hasRadius: true,
|
1404
|
-
children: /* @__PURE__ */ jsx(Icon, {
|
1410
|
+
children: /* @__PURE__ */ jsx(Icon, { fill: disabled ? "neutral300" : enabledColor })
|
1405
1411
|
}
|
1406
1412
|
)
|
1407
1413
|
}
|
@@ -1546,6 +1552,26 @@ const ListButton = ({ block, format }) => {
|
|
1546
1552
|
}
|
1547
1553
|
return false;
|
1548
1554
|
};
|
1555
|
+
const isListDisabled = () => {
|
1556
|
+
if (disabled) {
|
1557
|
+
return true;
|
1558
|
+
}
|
1559
|
+
if (!editor.selection) {
|
1560
|
+
return false;
|
1561
|
+
}
|
1562
|
+
const anchorNodeEntry = Editor$1.above(editor, {
|
1563
|
+
at: editor.selection.anchor,
|
1564
|
+
match: (node) => !Editor$1.isEditor(node) && node.type !== "text"
|
1565
|
+
});
|
1566
|
+
const focusNodeEntry = Editor$1.above(editor, {
|
1567
|
+
at: editor.selection.focus,
|
1568
|
+
match: (node) => !Editor$1.isEditor(node) && node.type !== "text"
|
1569
|
+
});
|
1570
|
+
if (!anchorNodeEntry || !focusNodeEntry) {
|
1571
|
+
return false;
|
1572
|
+
}
|
1573
|
+
return anchorNodeEntry[0] !== focusNodeEntry[0];
|
1574
|
+
};
|
1549
1575
|
const toggleList = (format2) => {
|
1550
1576
|
let currentListEntry;
|
1551
1577
|
if (editor.selection) {
|
@@ -1579,7 +1605,7 @@ const ListButton = ({ block, format }) => {
|
|
1579
1605
|
name: format,
|
1580
1606
|
label: block.label,
|
1581
1607
|
isActive: isListActive(),
|
1582
|
-
disabled,
|
1608
|
+
disabled: isListDisabled(),
|
1583
1609
|
handleClick: () => toggleList(format)
|
1584
1610
|
}
|
1585
1611
|
);
|
@@ -1723,6 +1749,7 @@ const DragItem = styled(Flex)`
|
|
1723
1749
|
}
|
1724
1750
|
`;
|
1725
1751
|
const DragIconButton = styled(IconButton)`
|
1752
|
+
user-select: none;
|
1726
1753
|
display: flex;
|
1727
1754
|
align-items: center;
|
1728
1755
|
justify-content: center;
|
@@ -1746,7 +1773,7 @@ const DragIconButton = styled(IconButton)`
|
|
1746
1773
|
}
|
1747
1774
|
svg {
|
1748
1775
|
height: auto;
|
1749
|
-
width: ${({ theme }) => theme.spaces[3]};
|
1776
|
+
min-width: ${({ theme }) => theme.spaces[3]};
|
1750
1777
|
|
1751
1778
|
path {
|
1752
1779
|
fill: ${({ theme }) => theme.colors.neutral700};
|
@@ -1851,6 +1878,7 @@ const DragAndDropElement = ({
|
|
1851
1878
|
DragIconButton,
|
1852
1879
|
{
|
1853
1880
|
tag: "div",
|
1881
|
+
contentEditable: false,
|
1854
1882
|
role: "button",
|
1855
1883
|
tabIndex: 0,
|
1856
1884
|
withTooltip: false,
|
@@ -1863,7 +1891,7 @@ const DragAndDropElement = ({
|
|
1863
1891
|
disabled,
|
1864
1892
|
draggable: true,
|
1865
1893
|
$dragHandleTopMargin: dragHandleTopMargin,
|
1866
|
-
children: /* @__PURE__ */ jsx(Drag, { color: "
|
1894
|
+
children: /* @__PURE__ */ jsx(Drag, { color: "primary500" })
|
1867
1895
|
}
|
1868
1896
|
),
|
1869
1897
|
children
|
@@ -2187,7 +2215,7 @@ const EditorLayout$1 = ({
|
|
2187
2215
|
/* @__PURE__ */ jsx(
|
2188
2216
|
CollapseIconButton,
|
2189
2217
|
{
|
2190
|
-
|
2218
|
+
label: formatMessage({
|
2191
2219
|
id: getTranslation("components.Blocks.collapse"),
|
2192
2220
|
defaultMessage: "Collapse"
|
2193
2221
|
}),
|
@@ -2526,7 +2554,7 @@ const BlocksEditor = React.forwardRef(
|
|
2526
2554
|
!isExpandedMode && /* @__PURE__ */ jsx(
|
2527
2555
|
ExpandIconButton,
|
2528
2556
|
{
|
2529
|
-
|
2557
|
+
label: formatMessage({
|
2530
2558
|
id: getTranslation("components.Blocks.expand"),
|
2531
2559
|
defaultMessage: "Expand"
|
2532
2560
|
}),
|
@@ -2592,30 +2620,27 @@ const createDefaultForm = (contentType, components = {}) => {
|
|
2592
2620
|
const Initializer = ({ disabled, name: name2, onClick }) => {
|
2593
2621
|
const { formatMessage } = useIntl();
|
2594
2622
|
const field = useField(name2);
|
2595
|
-
return /* @__PURE__ */
|
2596
|
-
|
2597
|
-
|
2598
|
-
|
2599
|
-
|
2600
|
-
|
2601
|
-
|
2602
|
-
|
2603
|
-
|
2604
|
-
|
2605
|
-
|
2606
|
-
|
2607
|
-
|
2608
|
-
|
2609
|
-
|
2610
|
-
|
2611
|
-
|
2612
|
-
|
2613
|
-
|
2614
|
-
|
2615
|
-
|
2616
|
-
),
|
2617
|
-
field.error && /* @__PURE__ */ jsx(Typography, { textColor: "danger600", variant: "pi", children: field.error })
|
2618
|
-
] });
|
2623
|
+
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
|
2624
|
+
Box,
|
2625
|
+
{
|
2626
|
+
tag: "button",
|
2627
|
+
background: "neutral100",
|
2628
|
+
borderColor: field.error ? "danger600" : "neutral200",
|
2629
|
+
hasRadius: true,
|
2630
|
+
disabled,
|
2631
|
+
onClick,
|
2632
|
+
paddingTop: 9,
|
2633
|
+
paddingBottom: 9,
|
2634
|
+
type: "button",
|
2635
|
+
children: /* @__PURE__ */ jsxs(Flex, { direction: "column", gap: 2, children: [
|
2636
|
+
/* @__PURE__ */ jsx(Flex, { justifyContent: "center", children: /* @__PURE__ */ jsx(CircleIcon, {}) }),
|
2637
|
+
/* @__PURE__ */ jsx(Flex, { justifyContent: "center", children: /* @__PURE__ */ jsx(Typography, { textColor: "primary600", variant: "pi", fontWeight: "bold", children: formatMessage({
|
2638
|
+
id: getTranslation("components.empty-repeatable"),
|
2639
|
+
defaultMessage: "No entry yet. Click on the button below to add one."
|
2640
|
+
}) }) })
|
2641
|
+
] })
|
2642
|
+
}
|
2643
|
+
) });
|
2619
2644
|
};
|
2620
2645
|
const CircleIcon = styled(PlusCircle)`
|
2621
2646
|
width: 2.4rem;
|
@@ -2649,7 +2674,18 @@ const NonRepeatableComponent = ({
|
|
2649
2674
|
children: /* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 6, children: layout.map((row, index) => {
|
2650
2675
|
return /* @__PURE__ */ jsx(Grid$1.Root, { gap: 4, children: row.map(({ size, ...field }) => {
|
2651
2676
|
const completeFieldName = `${name2}.${field.name}`;
|
2652
|
-
return /* @__PURE__ */ jsx(
|
2677
|
+
return /* @__PURE__ */ jsx(
|
2678
|
+
Grid$1.Item,
|
2679
|
+
{
|
2680
|
+
col: size,
|
2681
|
+
s: 12,
|
2682
|
+
xs: 12,
|
2683
|
+
direction: "column",
|
2684
|
+
alignItems: "stretch",
|
2685
|
+
children: children({ ...field, name: completeFieldName })
|
2686
|
+
},
|
2687
|
+
completeFieldName
|
2688
|
+
);
|
2653
2689
|
}) }, index);
|
2654
2690
|
}) })
|
2655
2691
|
}
|
@@ -2827,7 +2863,18 @@ const RepeatableComponent = ({
|
|
2827
2863
|
children: layout.map((row, index2) => {
|
2828
2864
|
return /* @__PURE__ */ jsx(Grid$1.Root, { gap: 4, children: row.map(({ size, ...field }) => {
|
2829
2865
|
const completeFieldName = `${nameWithIndex}.${field.name}`;
|
2830
|
-
return /* @__PURE__ */ jsx(
|
2866
|
+
return /* @__PURE__ */ jsx(
|
2867
|
+
Grid$1.Item,
|
2868
|
+
{
|
2869
|
+
col: size,
|
2870
|
+
s: 12,
|
2871
|
+
xs: 12,
|
2872
|
+
direction: "column",
|
2873
|
+
alignItems: "stretch",
|
2874
|
+
children: children({ ...field, name: completeFieldName })
|
2875
|
+
},
|
2876
|
+
completeFieldName
|
2877
|
+
);
|
2831
2878
|
}) }, index2);
|
2832
2879
|
})
|
2833
2880
|
}
|
@@ -2922,7 +2969,7 @@ const Component = ({
|
|
2922
2969
|
/* @__PURE__ */ jsx(
|
2923
2970
|
IconButton,
|
2924
2971
|
{
|
2925
|
-
|
2972
|
+
variant: "ghost",
|
2926
2973
|
onClick: onDeleteComponent,
|
2927
2974
|
label: formatMessage({
|
2928
2975
|
id: getTranslation("containers.Edit.delete"),
|
@@ -2935,7 +2982,7 @@ const Component = ({
|
|
2935
2982
|
IconButton,
|
2936
2983
|
{
|
2937
2984
|
ref: composedAccordionRefs,
|
2938
|
-
|
2985
|
+
variant: "ghost",
|
2939
2986
|
onClick: (e) => e.stopPropagation(),
|
2940
2987
|
"data-handler-id": handlerId,
|
2941
2988
|
label: formatMessage({
|
@@ -3005,7 +3052,7 @@ const ComponentInput = ({
|
|
3005
3052
|
id: getTranslation("components.reset-entry"),
|
3006
3053
|
defaultMessage: "Reset Entry"
|
3007
3054
|
}),
|
3008
|
-
|
3055
|
+
variant: "ghost",
|
3009
3056
|
onClick: () => {
|
3010
3057
|
field.onChange(name2, null);
|
3011
3058
|
},
|
@@ -3034,11 +3081,8 @@ const AddComponentButton = ({
|
|
3034
3081
|
onClick,
|
3035
3082
|
disabled: isDisabled,
|
3036
3083
|
background: "neutral0",
|
3037
|
-
paddingTop: 3,
|
3038
|
-
paddingBottom: 3,
|
3039
|
-
paddingLeft: 4,
|
3040
|
-
paddingRight: 4,
|
3041
3084
|
style: { cursor: isDisabled ? "not-allowed" : "pointer" },
|
3085
|
+
variant: "tertiary",
|
3042
3086
|
children: /* @__PURE__ */ jsxs(Flex, { tag: "span", gap: 2, children: [
|
3043
3087
|
/* @__PURE__ */ jsx(StyledAddIcon, { "aria-hidden": true, $isOpen: isOpen, $hasError: hasError && !isOpen }),
|
3044
3088
|
/* @__PURE__ */ jsx(
|
@@ -3067,10 +3111,11 @@ const StyledAddIcon = styled(PlusCircle)`
|
|
3067
3111
|
}
|
3068
3112
|
`;
|
3069
3113
|
const AddComponentTitle = styled(Typography)``;
|
3070
|
-
const StyledButton = styled(
|
3114
|
+
const StyledButton = styled(Button)`
|
3071
3115
|
border-radius: 26px;
|
3072
3116
|
border-color: ${({ theme }) => theme.colors.neutral150};
|
3073
3117
|
box-shadow: ${({ theme }) => theme.shadows.filterShadow};
|
3118
|
+
height: 5rem;
|
3074
3119
|
|
3075
3120
|
&:hover {
|
3076
3121
|
${AddComponentTitle} {
|
@@ -3082,7 +3127,7 @@ const StyledButton = styled(BaseButton)`
|
|
3082
3127
|
fill: ${({ theme }) => theme.colors.primary600};
|
3083
3128
|
}
|
3084
3129
|
> path {
|
3085
|
-
fill: ${({ theme }) => theme.colors.
|
3130
|
+
fill: ${({ theme }) => theme.colors.primary600};
|
3086
3131
|
}
|
3087
3132
|
}
|
3088
3133
|
}
|
@@ -3213,18 +3258,6 @@ const NotAllowedInput = ({ hint, label, required, name: name2 }) => {
|
|
3213
3258
|
/* @__PURE__ */ jsx(Field.Hint, {})
|
3214
3259
|
] });
|
3215
3260
|
};
|
3216
|
-
function useDebounce(value, delay) {
|
3217
|
-
const [debouncedValue, setDebouncedValue] = useState(value);
|
3218
|
-
useEffect(() => {
|
3219
|
-
const handler = setTimeout(() => {
|
3220
|
-
setDebouncedValue(value);
|
3221
|
-
}, delay);
|
3222
|
-
return () => {
|
3223
|
-
clearTimeout(handler);
|
3224
|
-
};
|
3225
|
-
}, [value, delay]);
|
3226
|
-
return debouncedValue;
|
3227
|
-
}
|
3228
3261
|
const uidApi = contentManagerApi.injectEndpoints({
|
3229
3262
|
endpoints: (builder) => ({
|
3230
3263
|
getDefaultUID: builder.query({
|
@@ -3259,7 +3292,10 @@ const uidApi = contentManagerApi.injectEndpoints({
|
|
3259
3292
|
config: {
|
3260
3293
|
params
|
3261
3294
|
}
|
3262
|
-
})
|
3295
|
+
}),
|
3296
|
+
providesTags: (_res, _error, params) => [
|
3297
|
+
{ type: "UidAvailability", id: params.contentTypeUID }
|
3298
|
+
]
|
3263
3299
|
})
|
3264
3300
|
})
|
3265
3301
|
});
|
@@ -3271,8 +3307,10 @@ const UIDInput = React.forwardRef(
|
|
3271
3307
|
const allFormValues = useForm("InputUID", (form) => form.values);
|
3272
3308
|
const [availability, setAvailability] = React.useState();
|
3273
3309
|
const [showRegenerate, setShowRegenerate] = React.useState(false);
|
3310
|
+
const isCloning = useMatch(CLONE_PATH) !== null;
|
3274
3311
|
const field = useField(name2);
|
3275
3312
|
const debouncedValue = useDebounce(field.value, 300);
|
3313
|
+
const hasChanged = debouncedValue !== field.initialValue;
|
3276
3314
|
const { toggleNotification } = useNotification();
|
3277
3315
|
const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();
|
3278
3316
|
const { formatMessage } = useIntl();
|
@@ -3348,8 +3386,9 @@ const UIDInput = React.forwardRef(
|
|
3348
3386
|
params
|
3349
3387
|
},
|
3350
3388
|
{
|
3389
|
+
// Don't check availability if the value is empty or wasn't changed
|
3351
3390
|
skip: !Boolean(
|
3352
|
-
|
3391
|
+
(hasChanged || isCloning) && debouncedValue && UID_REGEX.test(debouncedValue.trim())
|
3353
3392
|
)
|
3354
3393
|
}
|
3355
3394
|
);
|
@@ -3378,6 +3417,7 @@ const UIDInput = React.forwardRef(
|
|
3378
3417
|
const isLoading = isGeneratingDefaultUID || isGeneratingUID || isCheckingAvailability;
|
3379
3418
|
const fieldRef = useFocusInputField(name2);
|
3380
3419
|
const composedRefs = useComposedRefs(ref, fieldRef);
|
3420
|
+
const shouldShowAvailability = (hasChanged || isCloning) && debouncedValue != null && availability && !showRegenerate;
|
3381
3421
|
return /* @__PURE__ */ jsxs(Field.Root, { hint, name: name2, error: field.error, required, children: [
|
3382
3422
|
/* @__PURE__ */ jsx(Field.Label, { action: labelAction, children: label }),
|
3383
3423
|
/* @__PURE__ */ jsx(
|
@@ -3386,7 +3426,7 @@ const UIDInput = React.forwardRef(
|
|
3386
3426
|
ref: composedRefs,
|
3387
3427
|
disabled: props.disabled,
|
3388
3428
|
endAction: /* @__PURE__ */ jsxs(Flex, { position: "relative", gap: 1, children: [
|
3389
|
-
|
3429
|
+
shouldShowAvailability && /* @__PURE__ */ jsxs(
|
3390
3430
|
TextValidation,
|
3391
3431
|
{
|
3392
3432
|
alignItems: "center",
|
@@ -4220,7 +4260,7 @@ const EditorLayout = ({
|
|
4220
4260
|
justifyContent: "flex-end",
|
4221
4261
|
shrink: 0,
|
4222
4262
|
width: "100%",
|
4223
|
-
children: /* @__PURE__ */ jsxs(ExpandButton$1, { onClick: onCollapse, children: [
|
4263
|
+
children: /* @__PURE__ */ jsxs(ExpandButton$1, { onClick: onCollapse, variant: "tertiary", size: "M", children: [
|
4224
4264
|
/* @__PURE__ */ jsx(Typography, { children: formatMessage({
|
4225
4265
|
id: "components.Wysiwyg.collapse",
|
4226
4266
|
defaultMessage: "Collapse"
|
@@ -4238,12 +4278,14 @@ const EditorLayout = ({
|
|
4238
4278
|
) }) });
|
4239
4279
|
}
|
4240
4280
|
return /* @__PURE__ */ jsx(
|
4241
|
-
|
4281
|
+
Flex,
|
4242
4282
|
{
|
4243
4283
|
borderColor: error ? "danger600" : "neutral200",
|
4244
4284
|
borderStyle: "solid",
|
4245
4285
|
borderWidth: "1px",
|
4246
4286
|
hasRadius: true,
|
4287
|
+
direction: "column",
|
4288
|
+
alignItems: "stretch",
|
4247
4289
|
children
|
4248
4290
|
}
|
4249
4291
|
);
|
@@ -4254,11 +4296,19 @@ const ExpandWrapper = styled(Flex)`
|
|
4254
4296
|
const BoxWithBorder = styled(Box)`
|
4255
4297
|
border-right: 1px solid ${({ theme }) => theme.colors.neutral200};
|
4256
4298
|
`;
|
4257
|
-
const ExpandButton$1 = styled(
|
4299
|
+
const ExpandButton$1 = styled(Button)`
|
4258
4300
|
background-color: transparent;
|
4259
4301
|
border: none;
|
4260
4302
|
align-items: center;
|
4261
4303
|
|
4304
|
+
& > span {
|
4305
|
+
display: flex;
|
4306
|
+
justify-content: space-between;
|
4307
|
+
align-items: center;
|
4308
|
+
width: 100%;
|
4309
|
+
font-weight: ${({ theme }) => theme.fontWeights.regular};
|
4310
|
+
}
|
4311
|
+
|
4262
4312
|
svg {
|
4263
4313
|
margin-left: ${({ theme }) => `${theme.spaces[2]}`};
|
4264
4314
|
|
@@ -4525,40 +4575,28 @@ const quoteAndCodeHandler = (editor, markdownType) => {
|
|
4525
4575
|
insertWithoutTextToEdit(editor, markdownType, line, contentLength);
|
4526
4576
|
}
|
4527
4577
|
};
|
4528
|
-
const CustomIconButton = styled(IconButton)`
|
4529
|
-
padding: ${({ theme }) => theme.spaces[2]};
|
4530
|
-
|
4531
|
-
svg {
|
4532
|
-
width: 1.8rem;
|
4533
|
-
height: 1.8rem;
|
4534
|
-
}
|
4535
|
-
`;
|
4536
|
-
const CustomLinkIconButton = styled(CustomIconButton)`
|
4537
|
-
svg {
|
4538
|
-
width: 0.8rem;
|
4539
|
-
height: 0.8rem;
|
4540
|
-
}
|
4541
|
-
`;
|
4542
4578
|
const MainButtons = styled(IconButtonGroup)`
|
4543
4579
|
margin-left: ${({ theme }) => theme.spaces[4]};
|
4544
4580
|
`;
|
4545
4581
|
const MoreButton = styled(IconButton)`
|
4546
4582
|
margin: ${({ theme }) => `0 ${theme.spaces[2]}`};
|
4547
|
-
padding: ${({ theme }) => theme.spaces[2]};
|
4548
|
-
|
4549
|
-
svg {
|
4550
|
-
width: 1.8rem;
|
4551
|
-
height: 1.8rem;
|
4552
|
-
}
|
4553
4583
|
`;
|
4554
4584
|
const IconButtonGroupMargin = styled(IconButtonGroup)`
|
4555
4585
|
margin-right: ${({ theme }) => `${theme.spaces[2]}`};
|
4556
4586
|
`;
|
4557
|
-
const ExpandButton = styled(
|
4587
|
+
const ExpandButton = styled(Button)`
|
4558
4588
|
background-color: transparent;
|
4559
4589
|
border: none;
|
4560
4590
|
align-items: center;
|
4561
4591
|
|
4592
|
+
& > span {
|
4593
|
+
display: flex;
|
4594
|
+
justify-content: space-between;
|
4595
|
+
align-items: center;
|
4596
|
+
width: 100%;
|
4597
|
+
font-weight: ${({ theme }) => theme.fontWeights.regular};
|
4598
|
+
}
|
4599
|
+
|
4562
4600
|
svg {
|
4563
4601
|
margin-left: ${({ theme }) => `${theme.spaces[2]}`};
|
4564
4602
|
path {
|
@@ -4570,8 +4608,8 @@ const ExpandButton = styled(BaseButton)`
|
|
4570
4608
|
`;
|
4571
4609
|
const WysiwygFooter = ({ onToggleExpand }) => {
|
4572
4610
|
const { formatMessage } = useIntl();
|
4573
|
-
return /* @__PURE__ */ jsx(Box, { padding: 2, background: "neutral100", borderRadius: `0 0 0.4rem 0.4rem`, children: /* @__PURE__ */ jsx(Flex, { justifyContent: "flex-end", alignItems: "flex-end", children: /* @__PURE__ */ jsxs(ExpandButton, { id: "expand", onClick: onToggleExpand, children: [
|
4574
|
-
/* @__PURE__ */ jsx(Typography, { children: formatMessage({
|
4611
|
+
return /* @__PURE__ */ jsx(Box, { padding: 2, background: "neutral100", borderRadius: `0 0 0.4rem 0.4rem`, children: /* @__PURE__ */ jsx(Flex, { justifyContent: "flex-end", alignItems: "flex-end", children: /* @__PURE__ */ jsxs(ExpandButton, { id: "expand", onClick: onToggleExpand, variant: "tertiary", size: "M", children: [
|
4612
|
+
/* @__PURE__ */ jsx(Typography, { textColor: "neutral800", children: formatMessage({
|
4575
4613
|
id: "components.WysiwygBottomControls.fullscreen",
|
4576
4614
|
defaultMessage: "Expand"
|
4577
4615
|
}) }),
|
@@ -4607,18 +4645,27 @@ const WysiwygNav = ({
|
|
4607
4645
|
borderRadius: `0.4rem 0.4rem 0 0`,
|
4608
4646
|
children: [
|
4609
4647
|
/* @__PURE__ */ jsxs(Flex, { children: [
|
4610
|
-
/* @__PURE__ */ jsx(Field.Root, { children: /* @__PURE__ */ jsxs(
|
4611
|
-
|
4612
|
-
|
4613
|
-
|
4614
|
-
|
4615
|
-
|
4616
|
-
|
4617
|
-
|
4648
|
+
/* @__PURE__ */ jsx(Field.Root, { children: /* @__PURE__ */ jsxs(
|
4649
|
+
SingleSelect,
|
4650
|
+
{
|
4651
|
+
disabled: true,
|
4652
|
+
placeholder: selectPlaceholder,
|
4653
|
+
"aria-label": selectPlaceholder,
|
4654
|
+
size: "S",
|
4655
|
+
children: [
|
4656
|
+
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h1", children: "h1" }),
|
4657
|
+
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h2", children: "h2" }),
|
4658
|
+
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h3", children: "h3" }),
|
4659
|
+
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h4", children: "h4" }),
|
4660
|
+
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h5", children: "h5" }),
|
4661
|
+
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h6", children: "h6" })
|
4662
|
+
]
|
4663
|
+
}
|
4664
|
+
) }),
|
4618
4665
|
/* @__PURE__ */ jsxs(MainButtons, { children: [
|
4619
|
-
/* @__PURE__ */ jsx(
|
4620
|
-
/* @__PURE__ */ jsx(
|
4621
|
-
/* @__PURE__ */ jsx(
|
4666
|
+
/* @__PURE__ */ jsx(IconButton, { disabled: true, label: "Bold", name: "Bold", children: /* @__PURE__ */ jsx(Bold, {}) }),
|
4667
|
+
/* @__PURE__ */ jsx(IconButton, { disabled: true, label: "Italic", name: "Italic", children: /* @__PURE__ */ jsx(Italic, {}) }),
|
4668
|
+
/* @__PURE__ */ jsx(IconButton, { disabled: true, label: "Underline", name: "Underline", children: /* @__PURE__ */ jsx(Underline, {}) })
|
4622
4669
|
] }),
|
4623
4670
|
/* @__PURE__ */ jsx(MoreButton, { disabled: true, label: "More", children: /* @__PURE__ */ jsx(More, {}) })
|
4624
4671
|
] }),
|
@@ -4645,6 +4692,7 @@ const WysiwygNav = ({
|
|
4645
4692
|
placeholder: selectPlaceholder,
|
4646
4693
|
"aria-label": selectPlaceholder,
|
4647
4694
|
onChange: (value) => onActionClick(value, editorRef),
|
4695
|
+
size: "S",
|
4648
4696
|
children: [
|
4649
4697
|
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h1", children: "h1" }),
|
4650
4698
|
/* @__PURE__ */ jsx(SingleSelectOption, { value: "h2", children: "h2" }),
|
@@ -4656,17 +4704,9 @@ const WysiwygNav = ({
|
|
4656
4704
|
}
|
4657
4705
|
) }),
|
4658
4706
|
/* @__PURE__ */ jsxs(MainButtons, { children: [
|
4707
|
+
/* @__PURE__ */ jsx(IconButton, { onClick: () => onActionClick("Bold", editorRef), label: "Bold", name: "Bold", children: /* @__PURE__ */ jsx(Bold, {}) }),
|
4659
4708
|
/* @__PURE__ */ jsx(
|
4660
|
-
|
4661
|
-
{
|
4662
|
-
onClick: () => onActionClick("Bold", editorRef),
|
4663
|
-
label: "Bold",
|
4664
|
-
name: "Bold",
|
4665
|
-
children: /* @__PURE__ */ jsx(Bold, {})
|
4666
|
-
}
|
4667
|
-
),
|
4668
|
-
/* @__PURE__ */ jsx(
|
4669
|
-
CustomIconButton,
|
4709
|
+
IconButton,
|
4670
4710
|
{
|
4671
4711
|
onClick: () => onActionClick("Italic", editorRef),
|
4672
4712
|
label: "Italic",
|
@@ -4675,7 +4715,7 @@ const WysiwygNav = ({
|
|
4675
4715
|
}
|
4676
4716
|
),
|
4677
4717
|
/* @__PURE__ */ jsx(
|
4678
|
-
|
4718
|
+
IconButton,
|
4679
4719
|
{
|
4680
4720
|
onClick: () => onActionClick("Underline", editorRef),
|
4681
4721
|
label: "Underline",
|
@@ -4689,7 +4729,7 @@ const WysiwygNav = ({
|
|
4689
4729
|
/* @__PURE__ */ jsx(Popover.Content, { sideOffset: 12, children: /* @__PURE__ */ jsxs(Flex, { padding: 2, children: [
|
4690
4730
|
/* @__PURE__ */ jsxs(IconButtonGroupMargin, { children: [
|
4691
4731
|
/* @__PURE__ */ jsx(
|
4692
|
-
|
4732
|
+
IconButton,
|
4693
4733
|
{
|
4694
4734
|
onClick: () => onActionClick("Strikethrough", editorRef, handleTogglePopover),
|
4695
4735
|
label: "Strikethrough",
|
@@ -4698,7 +4738,7 @@ const WysiwygNav = ({
|
|
4698
4738
|
}
|
4699
4739
|
),
|
4700
4740
|
/* @__PURE__ */ jsx(
|
4701
|
-
|
4741
|
+
IconButton,
|
4702
4742
|
{
|
4703
4743
|
onClick: () => onActionClick("BulletList", editorRef, handleTogglePopover),
|
4704
4744
|
label: "BulletList",
|
@@ -4707,7 +4747,7 @@ const WysiwygNav = ({
|
|
4707
4747
|
}
|
4708
4748
|
),
|
4709
4749
|
/* @__PURE__ */ jsx(
|
4710
|
-
|
4750
|
+
IconButton,
|
4711
4751
|
{
|
4712
4752
|
onClick: () => onActionClick("NumberList", editorRef, handleTogglePopover),
|
4713
4753
|
label: "NumberList",
|
@@ -4718,7 +4758,7 @@ const WysiwygNav = ({
|
|
4718
4758
|
] }),
|
4719
4759
|
/* @__PURE__ */ jsxs(IconButtonGroup, { children: [
|
4720
4760
|
/* @__PURE__ */ jsx(
|
4721
|
-
|
4761
|
+
IconButton,
|
4722
4762
|
{
|
4723
4763
|
onClick: () => onActionClick("Code", editorRef, handleTogglePopover),
|
4724
4764
|
label: "Code",
|
@@ -4727,7 +4767,7 @@ const WysiwygNav = ({
|
|
4727
4767
|
}
|
4728
4768
|
),
|
4729
4769
|
/* @__PURE__ */ jsx(
|
4730
|
-
|
4770
|
+
IconButton,
|
4731
4771
|
{
|
4732
4772
|
onClick: () => {
|
4733
4773
|
handleTogglePopover();
|
@@ -4739,7 +4779,7 @@ const WysiwygNav = ({
|
|
4739
4779
|
}
|
4740
4780
|
),
|
4741
4781
|
/* @__PURE__ */ jsx(
|
4742
|
-
|
4782
|
+
IconButton,
|
4743
4783
|
{
|
4744
4784
|
onClick: () => onActionClick("Link", editorRef, handleTogglePopover),
|
4745
4785
|
label: "Link",
|
@@ -4748,7 +4788,7 @@ const WysiwygNav = ({
|
|
4748
4788
|
}
|
4749
4789
|
),
|
4750
4790
|
/* @__PURE__ */ jsx(
|
4751
|
-
|
4791
|
+
IconButton,
|
4752
4792
|
{
|
4753
4793
|
onClick: () => onActionClick("Quote", editorRef, handleTogglePopover),
|
4754
4794
|
label: "Quote",
|
@@ -4984,7 +5024,9 @@ const useFieldHint = (hint = void 0, attribute) => {
|
|
4984
5024
|
if (!maximum && !minimum) {
|
4985
5025
|
return hint;
|
4986
5026
|
}
|
4987
|
-
const units = !["biginteger", "integer", "number"].includes(
|
5027
|
+
const units = !["biginteger", "integer", "number", "dynamiczone", "component"].includes(
|
5028
|
+
attribute.type
|
5029
|
+
) ? formatMessage(
|
4988
5030
|
{
|
4989
5031
|
id: "content-manager.form.Input.hint.character.unit",
|
4990
5032
|
defaultMessage: "{maxValue, plural, one { character} other { characters}}"
|
@@ -5078,7 +5120,7 @@ const DynamicComponent = ({
|
|
5078
5120
|
/* @__PURE__ */ jsx(
|
5079
5121
|
IconButton,
|
5080
5122
|
{
|
5081
|
-
|
5123
|
+
variant: "ghost",
|
5082
5124
|
label: formatMessage(
|
5083
5125
|
{
|
5084
5126
|
id: getTranslation("components.DynamicZone.delete-label"),
|
@@ -5093,7 +5135,7 @@ const DynamicComponent = ({
|
|
5093
5135
|
/* @__PURE__ */ jsx(
|
5094
5136
|
IconButton,
|
5095
5137
|
{
|
5096
|
-
|
5138
|
+
variant: "ghost",
|
5097
5139
|
onClick: (e) => e.stopPropagation(),
|
5098
5140
|
"data-handler-id": handlerId,
|
5099
5141
|
ref: dragRef,
|
@@ -5154,7 +5196,18 @@ const DynamicComponent = ({
|
|
5154
5196
|
] }),
|
5155
5197
|
/* @__PURE__ */ jsx(Accordion.Content, { children: /* @__PURE__ */ jsx(AccordionContentRadius, { background: "neutral0", children: /* @__PURE__ */ jsx(Box, { paddingLeft: 6, paddingRight: 6, paddingTop: 6, paddingBottom: 6, children: components[componentUid]?.layout?.map((row, rowInd) => /* @__PURE__ */ jsx(Grid$1.Root, { gap: 4, children: row.map(({ size, ...field }) => {
|
5156
5198
|
const fieldName = `${name2}.${index}.${field.name}`;
|
5157
|
-
return /* @__PURE__ */ jsx(
|
5199
|
+
return /* @__PURE__ */ jsx(
|
5200
|
+
Grid$1.Item,
|
5201
|
+
{
|
5202
|
+
col: size,
|
5203
|
+
s: 12,
|
5204
|
+
xs: 12,
|
5205
|
+
direction: "column",
|
5206
|
+
alignItems: "stretch",
|
5207
|
+
children: /* @__PURE__ */ jsx(MemoizedInputRenderer, { ...field, name: fieldName })
|
5208
|
+
},
|
5209
|
+
fieldName
|
5210
|
+
);
|
5158
5211
|
}) }, rowInd)) }) }) })
|
5159
5212
|
] }) }) })
|
5160
5213
|
] });
|
@@ -5347,7 +5400,7 @@ const DynamicZone = ({
|
|
5347
5400
|
const handleRemoveComponent = (name22, currentIndex) => () => {
|
5348
5401
|
removeFieldRow(name22, currentIndex);
|
5349
5402
|
};
|
5350
|
-
const hasError = error !== void 0
|
5403
|
+
const hasError = error !== void 0;
|
5351
5404
|
const renderButtonLabel = () => {
|
5352
5405
|
if (addComponentIsOpen) {
|
5353
5406
|
return formatMessage({ id: "app.utils.close-label", defaultMessage: "Close" });
|
@@ -5463,4 +5516,4 @@ export {
|
|
5463
5516
|
transformDocument as t,
|
5464
5517
|
useLazyComponents as u
|
5465
5518
|
};
|
5466
|
-
//# sourceMappingURL=Field-
|
5519
|
+
//# sourceMappingURL=Field-DPAzUS1M.mjs.map
|