@strapi/content-manager 5.1.1 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/dist/_chunks/{ComponentConfigurationPage-CpJNPBgk.js → ComponentConfigurationPage-Cr0ttPAZ.js} +3 -3
  2. package/dist/_chunks/{ComponentConfigurationPage-CpJNPBgk.js.map → ComponentConfigurationPage-Cr0ttPAZ.js.map} +1 -1
  3. package/dist/_chunks/{ComponentConfigurationPage-TYDPg5WG.mjs → ComponentConfigurationPage-UGIFDkPO.mjs} +3 -3
  4. package/dist/_chunks/{ComponentConfigurationPage-TYDPg5WG.mjs.map → ComponentConfigurationPage-UGIFDkPO.mjs.map} +1 -1
  5. package/dist/_chunks/{EditConfigurationPage-DqL8Pq5r.mjs → EditConfigurationPage-7hF4_8yK.mjs} +3 -3
  6. package/dist/_chunks/{EditConfigurationPage-DqL8Pq5r.mjs.map → EditConfigurationPage-7hF4_8yK.mjs.map} +1 -1
  7. package/dist/_chunks/{EditConfigurationPage-CFDe6SA1.js → EditConfigurationPage-Ds3BOL2z.js} +3 -3
  8. package/dist/_chunks/{EditConfigurationPage-CFDe6SA1.js.map → EditConfigurationPage-Ds3BOL2z.js.map} +1 -1
  9. package/dist/_chunks/{EditViewPage-RXrFLav2.mjs → EditViewPage-CA98g5_g.mjs} +38 -8
  10. package/dist/_chunks/EditViewPage-CA98g5_g.mjs.map +1 -0
  11. package/dist/_chunks/{EditViewPage-khfP2CR3.js → EditViewPage-DoQm9llG.js} +37 -7
  12. package/dist/_chunks/EditViewPage-DoQm9llG.js.map +1 -0
  13. package/dist/_chunks/{Field--rQeS6Zj.mjs → Field-B2C1tq9_.mjs} +26 -6
  14. package/dist/_chunks/Field-B2C1tq9_.mjs.map +1 -0
  15. package/dist/_chunks/{Field-C1ftmTe9.js → Field-CQtLQzHl.js} +26 -6
  16. package/dist/_chunks/Field-CQtLQzHl.js.map +1 -0
  17. package/dist/_chunks/{Form-COtGXyUE.mjs → Form-CxQ2pPjq.mjs} +2 -2
  18. package/dist/_chunks/{Form-COtGXyUE.mjs.map → Form-CxQ2pPjq.mjs.map} +1 -1
  19. package/dist/_chunks/{Form-CwdX5oLw.js → Form-YQaS3_NH.js} +2 -2
  20. package/dist/_chunks/{Form-CwdX5oLw.js.map → Form-YQaS3_NH.js.map} +1 -1
  21. package/dist/_chunks/{History-BevwkPO1.mjs → History-DTYKr2Cg.mjs} +4 -11
  22. package/dist/_chunks/History-DTYKr2Cg.mjs.map +1 -0
  23. package/dist/_chunks/{History-DKS2aqqM.js → History-DbdpigyF.js} +4 -11
  24. package/dist/_chunks/History-DbdpigyF.js.map +1 -0
  25. package/dist/_chunks/{ListConfigurationPage-DNfZDtDA.mjs → ListConfigurationPage-DQG-j52q.mjs} +2 -2
  26. package/dist/_chunks/{ListConfigurationPage-DNfZDtDA.mjs.map → ListConfigurationPage-DQG-j52q.mjs.map} +1 -1
  27. package/dist/_chunks/{ListConfigurationPage-LSYSPZHH.js → ListConfigurationPage-DRGhXnUA.js} +2 -2
  28. package/dist/_chunks/{ListConfigurationPage-LSYSPZHH.js.map → ListConfigurationPage-DRGhXnUA.js.map} +1 -1
  29. package/dist/_chunks/{ListViewPage-DlUpqLIo.js → ListViewPage-CVIEfYWN.js} +16 -5
  30. package/dist/_chunks/{ListViewPage-DlUpqLIo.js.map → ListViewPage-CVIEfYWN.js.map} +1 -1
  31. package/dist/_chunks/{ListViewPage-C1PyuYRS.mjs → ListViewPage-DAekmnvp.mjs} +16 -5
  32. package/dist/_chunks/{ListViewPage-C1PyuYRS.mjs.map → ListViewPage-DAekmnvp.mjs.map} +1 -1
  33. package/dist/_chunks/{NoContentTypePage-C9q744z1.mjs → NoContentTypePage-5kwUPeFg.mjs} +2 -2
  34. package/dist/_chunks/{NoContentTypePage-C9q744z1.mjs.map → NoContentTypePage-5kwUPeFg.mjs.map} +1 -1
  35. package/dist/_chunks/{NoContentTypePage-m8wt3sf6.js → NoContentTypePage-CTcfA2-Q.js} +2 -2
  36. package/dist/_chunks/{NoContentTypePage-m8wt3sf6.js.map → NoContentTypePage-CTcfA2-Q.js.map} +1 -1
  37. package/dist/_chunks/{NoPermissionsPage-8BM-LWta.mjs → NoPermissionsPage-d-JtEVAw.mjs} +2 -2
  38. package/dist/_chunks/{NoPermissionsPage-8BM-LWta.mjs.map → NoPermissionsPage-d-JtEVAw.mjs.map} +1 -1
  39. package/dist/_chunks/{NoPermissionsPage-DLfPsA0Q.js → NoPermissionsPage-pVeCVj9a.js} +2 -2
  40. package/dist/_chunks/{NoPermissionsPage-DLfPsA0Q.js.map → NoPermissionsPage-pVeCVj9a.js.map} +1 -1
  41. package/dist/_chunks/Preview-COsm52rZ.js +307 -0
  42. package/dist/_chunks/Preview-COsm52rZ.js.map +1 -0
  43. package/dist/_chunks/Preview-gkmvcwhu.mjs +288 -0
  44. package/dist/_chunks/Preview-gkmvcwhu.mjs.map +1 -0
  45. package/dist/_chunks/{Relations-D25xRcFy.mjs → Relations-7ItTFWp7.mjs} +3 -3
  46. package/dist/_chunks/{Relations-D25xRcFy.mjs.map → Relations-7ItTFWp7.mjs.map} +1 -1
  47. package/dist/_chunks/{Relations-OMriCP_L.js → Relations-Beo_uDz1.js} +3 -3
  48. package/dist/_chunks/{Relations-OMriCP_L.js.map → Relations-Beo_uDz1.js.map} +1 -1
  49. package/dist/_chunks/{en-Bdpa50w3.js → en-CHOp_xJv.js} +6 -1
  50. package/dist/_chunks/{en-Bdpa50w3.js.map → en-CHOp_xJv.js.map} +1 -1
  51. package/dist/_chunks/{en-CZw4xdPY.mjs → en-D_BMf0hT.mjs} +6 -1
  52. package/dist/_chunks/{en-CZw4xdPY.mjs.map → en-D_BMf0hT.mjs.map} +1 -1
  53. package/dist/_chunks/{index-DqZnjo8F.js → index-CJX65DLa.js} +68 -94
  54. package/dist/_chunks/index-CJX65DLa.js.map +1 -0
  55. package/dist/_chunks/{index-BvGihCJp.mjs → index-D3IiO0X8.mjs} +74 -100
  56. package/dist/_chunks/index-D3IiO0X8.mjs.map +1 -0
  57. package/dist/_chunks/{layout-CmaemAO3.js → layout-9fI2_QJt.js} +3 -3
  58. package/dist/_chunks/{layout-CmaemAO3.js.map → layout-9fI2_QJt.js.map} +1 -1
  59. package/dist/_chunks/{layout-ykHSe2KQ.mjs → layout-OhrmoJVB.mjs} +3 -3
  60. package/dist/_chunks/{layout-ykHSe2KQ.mjs.map → layout-OhrmoJVB.mjs.map} +1 -1
  61. package/dist/_chunks/{relations-D9fKsCLY.js → relations-DIT8sP52.js} +6 -3
  62. package/dist/_chunks/relations-DIT8sP52.js.map +1 -0
  63. package/dist/_chunks/{relations-u-Vz51Ea.mjs → relations-sRERvWmr.mjs} +6 -3
  64. package/dist/_chunks/relations-sRERvWmr.mjs.map +1 -0
  65. package/dist/admin/index.js +1 -1
  66. package/dist/admin/index.mjs +4 -4
  67. package/dist/admin/src/pages/EditView/EditViewPage.d.ts +9 -1
  68. package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +1 -1
  69. package/dist/admin/src/preview/components/PreviewContent.d.ts +2 -0
  70. package/dist/admin/src/preview/components/PreviewHeader.d.ts +2 -0
  71. package/dist/admin/src/preview/pages/Preview.d.ts +11 -0
  72. package/dist/admin/src/preview/routes.d.ts +3 -0
  73. package/dist/admin/src/router.d.ts +1 -1
  74. package/dist/server/index.js.map +1 -1
  75. package/dist/server/index.mjs.map +1 -1
  76. package/dist/server/src/services/document-manager.d.ts.map +1 -1
  77. package/package.json +8 -8
  78. package/dist/_chunks/EditViewPage-RXrFLav2.mjs.map +0 -1
  79. package/dist/_chunks/EditViewPage-khfP2CR3.js.map +0 -1
  80. package/dist/_chunks/Field--rQeS6Zj.mjs.map +0 -1
  81. package/dist/_chunks/Field-C1ftmTe9.js.map +0 -1
  82. package/dist/_chunks/History-BevwkPO1.mjs.map +0 -1
  83. package/dist/_chunks/History-DKS2aqqM.js.map +0 -1
  84. package/dist/_chunks/index-BvGihCJp.mjs.map +0 -1
  85. package/dist/_chunks/index-DqZnjo8F.js.map +0 -1
  86. package/dist/_chunks/relations-D9fKsCLY.js.map +0 -1
  87. package/dist/_chunks/relations-u-Vz51Ea.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditViewPage-DoQm9llG.js","sources":["../../admin/src/hooks/useOnce.ts","../../admin/src/pages/EditView/components/FormLayout.tsx","../../admin/src/pages/EditView/EditViewPage.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport * as React from 'react';\n\nexport const useOnce = (effect: React.EffectCallback) => React.useEffect(effect, emptyDeps);\n\nconst emptyDeps: React.DependencyList = [];\n","import { Box, Flex, Grid } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { useDoc } from '../../../hooks/useDocument';\nimport { EditLayout } from '../../../hooks/useDocumentLayout';\n\nimport { InputRenderer } from './InputRenderer';\n\ninterface FormLayoutProps extends Pick<EditLayout, 'layout'> {}\n\nconst FormLayout = ({ layout }: FormLayoutProps) => {\n const { formatMessage } = useIntl();\n const { model } = useDoc();\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n {layout.map((panel, index) => {\n if (panel.some((row) => row.some((field) => field.type === 'dynamiczone'))) {\n const [row] = panel;\n const [field] = row;\n\n const fieldWithTranslatedLabel = {\n ...field,\n label: formatMessage({\n id: `content-manager.content-types.${model}.${field.name}`,\n defaultMessage: field.label,\n }),\n };\n\n return (\n <Grid.Root key={field.name} gap={4}>\n <Grid.Item col={12} s={12} xs={12} direction=\"column\" alignItems=\"stretch\">\n <InputRenderer {...fieldWithTranslatedLabel} />\n </Grid.Item>\n </Grid.Root>\n );\n }\n\n return (\n <Box\n key={index}\n hasRadius\n background=\"neutral0\"\n shadow=\"tableShadow\"\n paddingLeft={6}\n paddingRight={6}\n paddingTop={6}\n paddingBottom={6}\n borderColor=\"neutral150\"\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n {panel.map((row, gridRowIndex) => (\n <Grid.Root key={gridRowIndex} gap={4}>\n {row.map(({ size, ...field }) => {\n const fieldWithTranslatedLabel = {\n ...field,\n label: formatMessage({\n id: `content-manager.content-types.${model}.${field.name}`,\n defaultMessage: field.label,\n }),\n };\n return (\n <Grid.Item\n col={size}\n key={field.name}\n s={12}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...fieldWithTranslatedLabel} />\n </Grid.Item>\n );\n })}\n </Grid.Root>\n ))}\n </Flex>\n </Box>\n );\n })}\n </Flex>\n );\n};\n\nexport { FormLayout, FormLayoutProps };\n","import * as React from 'react';\n\nimport {\n Page,\n Blocker,\n Form,\n useRBAC,\n useNotification,\n useQueryParams,\n} from '@strapi/admin/strapi-admin';\nimport { Grid, Main, Tabs } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useParams } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { SINGLE_TYPES } from '../../constants/collections';\nimport { PERMISSIONS } from '../../constants/plugin';\nimport { DocumentRBAC, useDocumentRBAC } from '../../features/DocumentRBAC';\nimport { type UseDocument, useDoc } from '../../hooks/useDocument';\nimport { useDocumentLayout } from '../../hooks/useDocumentLayout';\nimport { useLazyComponents } from '../../hooks/useLazyComponents';\nimport { useOnce } from '../../hooks/useOnce';\nimport { getTranslation } from '../../utils/translations';\nimport { createYupSchema } from '../../utils/validation';\n\nimport { FormLayout } from './components/FormLayout';\nimport { Header } from './components/Header';\nimport { Panels } from './components/Panels';\nimport { transformDocument } from './utils/data';\nimport { createDefaultForm } from './utils/forms';\n\n/* -------------------------------------------------------------------------------------------------\n * EditViewPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditViewPage = () => {\n const location = useLocation();\n const [\n {\n query: { status },\n },\n setQuery,\n ] = useQueryParams<{ status: 'draft' | 'published' }>({\n status: 'draft',\n });\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n\n const {\n document,\n meta,\n isLoading: isLoadingDocument,\n schema,\n components,\n collectionType,\n id,\n model,\n hasError,\n } = useDoc();\n\n const hasDraftAndPublished = schema?.options?.draftAndPublish ?? false;\n\n useOnce(() => {\n /**\n * We only ever want to fire the notification once otherwise\n * whenever the app re-renders it'll pop up regardless of\n * what we do because the state comes from react-router-dom\n */\n if (location?.state && 'error' in location.state) {\n toggleNotification({\n type: 'danger',\n message: location.state.error,\n timeout: 5000,\n });\n }\n });\n\n const isLoadingActionsRBAC = useDocumentRBAC('EditViewPage', (state) => state.isLoading);\n\n const isSingleType = collectionType === SINGLE_TYPES;\n\n /**\n * single-types don't current have an id, but because they're a singleton\n * we can simply use the update operation to continuously update the same\n * document with varying params.\n */\n const isCreatingDocument = !id && !isSingleType;\n\n const {\n isLoading: isLoadingLayout,\n edit: {\n layout,\n settings: { mainField },\n },\n } = useDocumentLayout(model);\n\n const { isLazyLoading } = useLazyComponents([]);\n\n const isLoading = isLoadingActionsRBAC || isLoadingDocument || isLoadingLayout || isLazyLoading;\n\n /**\n * Here we prepare the form for editing, we need to:\n * - remove prohibited fields from the document (passwords | ADD YOURS WHEN THERES A NEW ONE)\n * - swap out count objects on relations for empty arrays\n * - set __temp_key__ on array objects for drag & drop\n *\n * We also prepare the form for new documents, so we need to:\n * - set default values on fields\n */\n const initialValues = React.useMemo(() => {\n if ((!document && !isCreatingDocument && !isSingleType) || !schema) {\n return undefined;\n }\n\n /**\n * Check that we have an ID so we know the\n * document has been created in some way.\n */\n const form = document?.id ? document : createDefaultForm(schema, components);\n\n return transformDocument(schema, components)(form);\n }, [document, isCreatingDocument, isSingleType, schema, components]);\n\n if (hasError) {\n return <Page.Error />;\n }\n\n if (isLoading && !document?.documentId) {\n return <Page.Loading />;\n }\n\n if (!initialValues) {\n return <Page.Error />;\n }\n\n const handleTabChange = (status: string) => {\n if (status === 'published' || status === 'draft') {\n setQuery({ status }, 'push', true);\n }\n };\n\n /**\n * We look to see what the mainField is from the configuration, if it's an id\n * we don't use it because it's a uuid format and not very user friendly.\n * Instead, we display the schema name for single-type documents\n * or \"Untitled\".\n */\n let documentTitle = 'Untitled';\n if (mainField !== 'id' && document?.[mainField]) {\n documentTitle = document[mainField];\n } else if (isSingleType && schema?.info.displayName) {\n documentTitle = schema.info.displayName;\n }\n\n const validateSync = (values: Record<string, unknown>, options: Record<string, string>) => {\n const yupSchema = createYupSchema(schema?.attributes, components, {\n status,\n ...options,\n });\n\n return yupSchema.validateSync(values, { abortEarly: false });\n };\n\n return (\n <Main paddingLeft={10} paddingRight={10}>\n <Page.Title>{documentTitle}</Page.Title>\n <Form\n disabled={hasDraftAndPublished && status === 'published'}\n initialValues={initialValues}\n method={isCreatingDocument ? 'POST' : 'PUT'}\n validate={(values: Record<string, unknown>, options: Record<string, string>) => {\n const yupSchema = createYupSchema(schema?.attributes, components, {\n status,\n ...options,\n });\n\n return yupSchema.validate(values, { abortEarly: false });\n }}\n initialErrors={location?.state?.forceValidation ? validateSync(initialValues, {}) : {}}\n >\n {({ resetForm }) => (\n <>\n <Header\n isCreating={isCreatingDocument}\n status={hasDraftAndPublished ? getDocumentStatus(document, meta) : undefined}\n title={documentTitle}\n />\n <Tabs.Root variant=\"simple\" value={status} onValueChange={handleTabChange}>\n <Tabs.List\n aria-label={formatMessage({\n id: getTranslation('containers.edit.tabs.label'),\n defaultMessage: 'Document status',\n })}\n >\n {hasDraftAndPublished ? (\n <>\n <StatusTab value=\"draft\">\n {formatMessage({\n id: getTranslation('containers.edit.tabs.draft'),\n defaultMessage: 'draft',\n })}\n </StatusTab>\n <StatusTab\n disabled={!meta || meta.availableStatus.length === 0}\n value=\"published\"\n >\n {formatMessage({\n id: getTranslation('containers.edit.tabs.published'),\n defaultMessage: 'published',\n })}\n </StatusTab>\n </>\n ) : null}\n </Tabs.List>\n <Grid.Root paddingTop={8} gap={4}>\n <Grid.Item col={9} s={12} direction=\"column\" alignItems=\"stretch\">\n <Tabs.Content value=\"draft\">\n <FormLayout layout={layout} />\n </Tabs.Content>\n <Tabs.Content value=\"published\">\n <FormLayout layout={layout} />\n </Tabs.Content>\n </Grid.Item>\n <Grid.Item col={3} s={12} direction=\"column\" alignItems=\"stretch\">\n <Panels />\n </Grid.Item>\n </Grid.Root>\n </Tabs.Root>\n <Blocker\n // We reset the form to the published version to avoid errors like – https://strapi-inc.atlassian.net/browse/CONTENT-2284\n onProceed={resetForm}\n />\n </>\n )}\n </Form>\n </Main>\n );\n};\n\nconst StatusTab = styled(Tabs.Trigger)`\n text-transform: uppercase;\n`;\n\n/**\n * @internal\n * @description Returns the status of the document where its latest state takes priority,\n * this typically will be \"published\" unless a user has edited their draft in which we should\n * display \"modified\".\n */\nconst getDocumentStatus = (\n document: ReturnType<UseDocument>['document'],\n meta: ReturnType<UseDocument>['meta']\n): 'draft' | 'published' | 'modified' => {\n const docStatus = document?.status;\n const statuses = meta?.availableStatus ?? [];\n\n /**\n * Creating an entry\n */\n if (!docStatus) {\n return 'draft';\n }\n\n /**\n * We're viewing a draft, but the document could have a published version\n */\n if (docStatus === 'draft' && statuses.find((doc) => doc.publishedAt !== null)) {\n return 'published';\n }\n\n return docStatus;\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedEditViewPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedEditViewPage = () => {\n const { slug = '' } = useParams<{\n slug: string;\n }>();\n const {\n permissions = [],\n isLoading,\n error,\n } = useRBAC(\n PERMISSIONS.map((action) => ({\n action,\n subject: slug,\n }))\n );\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n if (error || !slug) {\n return <Page.Error />;\n }\n\n return (\n <Page.Protect permissions={permissions}>\n {({ permissions }) => (\n <DocumentRBAC permissions={permissions}>\n <EditViewPage />\n </DocumentRBAC>\n )}\n </Page.Protect>\n );\n};\n\nexport { EditViewPage, ProtectedEditViewPage, getDocumentStatus };\n"],"names":["React","useIntl","useDoc","jsx","Flex","index","Grid","InputRenderer","Box","useLocation","useQueryParams","useNotification","useDocumentRBAC","SINGLE_TYPES","useDocumentLayout","useLazyComponents","createDefaultForm","transformDocument","Page","status","createYupSchema","jsxs","Main","Form","Fragment","Header","Tabs","getTranslation","Panels","Blocker","styled","useParams","useRBAC","PERMISSIONS","permissions","DocumentRBAC"],"mappings":"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"}
@@ -5,9 +5,9 @@ import { useStrapiApp, createContext, useField, useNotification, useForm, useAPI
5
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, n as CLONE_PATH, d as buildValidParams, f as useDocumentRBAC, S as SINGLE_TYPES, o as useDocLayout } from "./index-BvGihCJp.mjs";
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, S as SINGLE_TYPES, o as useDocLayout } from "./index-D3IiO0X8.mjs";
9
9
  import { generateNKeysBetween } from "fractional-indexing";
10
- import { u as useComponent, C as ComponentProvider, M as MemoizedRelationsField } from "./Relations-D25xRcFy.mjs";
10
+ import { u as useComponent, C as ComponentProvider, M as MemoizedRelationsField } from "./Relations-7ItTFWp7.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";
@@ -2658,6 +2658,7 @@ const NonRepeatableComponent = ({
2658
2658
  children,
2659
2659
  layout
2660
2660
  }) => {
2661
+ const { formatMessage } = useIntl();
2661
2662
  const { value } = useField(name2);
2662
2663
  const level = useComponent("NonRepeatableComponent", (state) => state.level);
2663
2664
  const isNested = level > 0;
@@ -2674,6 +2675,10 @@ const NonRepeatableComponent = ({
2674
2675
  children: /* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 6, children: layout.map((row, index) => {
2675
2676
  return /* @__PURE__ */ jsx(Grid$1.Root, { gap: 4, children: row.map(({ size, ...field }) => {
2676
2677
  const completeFieldName = `${name2}.${field.name}`;
2678
+ const translatedLabel = formatMessage({
2679
+ id: `content-manager.components.${attribute.component}.${field.name}`,
2680
+ defaultMessage: field.label
2681
+ });
2677
2682
  return /* @__PURE__ */ jsx(
2678
2683
  Grid$1.Item,
2679
2684
  {
@@ -2682,7 +2687,7 @@ const NonRepeatableComponent = ({
2682
2687
  xs: 12,
2683
2688
  direction: "column",
2684
2689
  alignItems: "stretch",
2685
- children: children({ ...field, name: completeFieldName })
2690
+ children: children({ ...field, label: translatedLabel, name: completeFieldName })
2686
2691
  },
2687
2692
  completeFieldName
2688
2693
  );
@@ -2884,6 +2889,10 @@ const RepeatableComponent = ({
2884
2889
  children: layout.map((row, index2) => {
2885
2890
  return /* @__PURE__ */ jsx(Grid$1.Root, { gap: 4, children: row.map(({ size, ...field }) => {
2886
2891
  const completeFieldName = `${nameWithIndex}.${field.name}`;
2892
+ const translatedLabel = formatMessage({
2893
+ id: `content-manager.components.${attribute.component}.${field.name}`,
2894
+ defaultMessage: field.label
2895
+ });
2887
2896
  return /* @__PURE__ */ jsx(
2888
2897
  Grid$1.Item,
2889
2898
  {
@@ -2892,7 +2901,11 @@ const RepeatableComponent = ({
2892
2901
  xs: 12,
2893
2902
  direction: "column",
2894
2903
  alignItems: "stretch",
2895
- children: children({ ...field, name: completeFieldName })
2904
+ children: children({
2905
+ ...field,
2906
+ label: translatedLabel,
2907
+ name: completeFieldName
2908
+ })
2896
2909
  },
2897
2910
  completeFieldName
2898
2911
  );
@@ -5237,6 +5250,13 @@ const DynamicComponent = ({
5237
5250
  alignItems: "stretch",
5238
5251
  children: /* @__PURE__ */ jsx(Grid$1.Root, { gap: 4, children: row.map(({ size, ...field }) => {
5239
5252
  const fieldName = `${name2}.${index}.${field.name}`;
5253
+ const fieldWithTranslatedLabel = {
5254
+ ...field,
5255
+ label: formatMessage({
5256
+ id: `content-manager.components.${componentUid}.${field.name}`,
5257
+ defaultMessage: field.label
5258
+ })
5259
+ };
5240
5260
  return /* @__PURE__ */ jsx(
5241
5261
  Grid$1.Item,
5242
5262
  {
@@ -5245,7 +5265,7 @@ const DynamicComponent = ({
5245
5265
  xs: 12,
5246
5266
  direction: "column",
5247
5267
  alignItems: "stretch",
5248
- children: /* @__PURE__ */ jsx(MemoizedInputRenderer, { ...field, name: fieldName })
5268
+ children: /* @__PURE__ */ jsx(MemoizedInputRenderer, { ...fieldWithTranslatedLabel, name: fieldName })
5249
5269
  },
5250
5270
  fieldName
5251
5271
  );
@@ -5560,4 +5580,4 @@ export {
5560
5580
  transformDocument as t,
5561
5581
  useLazyComponents as u
5562
5582
  };
5563
- //# sourceMappingURL=Field--rQeS6Zj.mjs.map
5583
+ //# sourceMappingURL=Field-B2C1tq9_.mjs.map