@strapi/content-manager 5.38.0 → 5.38.1

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 (62) hide show
  1. package/dist/admin/history/components/VersionContent.js +48 -16
  2. package/dist/admin/history/components/VersionContent.js.map +1 -1
  3. package/dist/admin/history/components/VersionContent.mjs +48 -16
  4. package/dist/admin/history/components/VersionContent.mjs.map +1 -1
  5. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.js +51 -0
  6. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.js.map +1 -1
  7. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.mjs +52 -1
  8. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.mjs.map +1 -1
  9. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.js +6 -2
  10. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.js.map +1 -1
  11. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.mjs +6 -2
  12. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.mjs.map +1 -1
  13. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.js.map +1 -1
  14. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.mjs.map +1 -1
  15. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js +1 -1
  16. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js.map +1 -1
  17. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs +1 -1
  18. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs.map +1 -1
  19. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs +1 -1
  20. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js +148 -111
  21. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js.map +1 -1
  22. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs +152 -115
  23. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs.map +1 -1
  24. package/dist/admin/pages/EditView/components/InputRenderer.js +15 -5
  25. package/dist/admin/pages/EditView/components/InputRenderer.js.map +1 -1
  26. package/dist/admin/pages/EditView/components/InputRenderer.mjs +15 -5
  27. package/dist/admin/pages/EditView/components/InputRenderer.mjs.map +1 -1
  28. package/dist/admin/pages/ListView/components/Filters.js +54 -1
  29. package/dist/admin/pages/ListView/components/Filters.js.map +1 -1
  30. package/dist/admin/pages/ListView/components/Filters.mjs +54 -1
  31. package/dist/admin/pages/ListView/components/Filters.mjs.map +1 -1
  32. package/dist/admin/src/exports.d.ts +1 -1
  33. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.d.ts +1 -0
  34. package/dist/admin/src/utils/conditionalFields.d.ts +12 -0
  35. package/dist/admin/translations/en.json.js +5 -0
  36. package/dist/admin/translations/en.json.js.map +1 -1
  37. package/dist/admin/translations/en.json.mjs +5 -0
  38. package/dist/admin/translations/en.json.mjs.map +1 -1
  39. package/dist/admin/translations/es.json.js +136 -2
  40. package/dist/admin/translations/es.json.js.map +1 -1
  41. package/dist/admin/translations/es.json.mjs +136 -2
  42. package/dist/admin/translations/es.json.mjs.map +1 -1
  43. package/dist/admin/utils/conditionalFields.js +76 -0
  44. package/dist/admin/utils/conditionalFields.js.map +1 -0
  45. package/dist/admin/utils/conditionalFields.mjs +69 -0
  46. package/dist/admin/utils/conditionalFields.mjs.map +1 -0
  47. package/dist/server/controllers/collection-types.js +157 -4
  48. package/dist/server/controllers/collection-types.js.map +1 -1
  49. package/dist/server/controllers/collection-types.mjs +159 -6
  50. package/dist/server/controllers/collection-types.mjs.map +1 -1
  51. package/dist/server/controllers/single-types.js +19 -4
  52. package/dist/server/controllers/single-types.js.map +1 -1
  53. package/dist/server/controllers/single-types.mjs +19 -4
  54. package/dist/server/controllers/single-types.mjs.map +1 -1
  55. package/dist/server/preview/services/preview.js +2 -1
  56. package/dist/server/preview/services/preview.js.map +1 -1
  57. package/dist/server/preview/services/preview.mjs +2 -1
  58. package/dist/server/preview/services/preview.mjs.map +1 -1
  59. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  60. package/dist/server/src/controllers/single-types.d.ts.map +1 -1
  61. package/dist/server/src/preview/services/preview.d.ts.map +1 -1
  62. package/package.json +13 -8
@@ -77,7 +77,7 @@ const DynamicComponent = ({ componentUid, disabled, index, name, onRemoveCompone
77
77
  * so a unique value for their state is enough.
78
78
  */ const accordionValue = React.useId();
79
79
  const { value = [], rawError } = useField(`${name}.${index}`);
80
- const [collapseToOpen, setCollapseToOpen] = React.useState('');
80
+ const [collapseToOpen, setCollapseToOpen] = React.useState(value.id ? '' : accordionValue);
81
81
  React.useEffect(()=>{
82
82
  if (rawError && value) {
83
83
  setCollapseToOpen(accordionValue);
@@ -1 +1 @@
1
- {"version":3,"file":"DynamicComponent.mjs","sources":["../../../../../../../admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useForm, useField, useIsDesktop } from '@strapi/admin/strapi-admin';\nimport {\n Accordion,\n Box,\n Flex,\n Grid,\n IconButton,\n useComposedRefs,\n Menu,\n BoxComponent,\n} from '@strapi/design-system';\nimport { Drag, More, Trash, ArrowUp, ArrowDown } from '@strapi/icons';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { COMPONENT_ICONS } from '../../../../../components/ComponentIcon';\nimport { ItemTypes } from '../../../../../constants/dragAndDrop';\nimport { useDocumentContext } from '../../../../../hooks/useDocumentContext';\nimport { useDocumentLayout } from '../../../../../hooks/useDocumentLayout';\nimport { type UseDragAndDropOptions, useDragAndDrop } from '../../../../../hooks/useDragAndDrop';\nimport { getIn } from '../../../../../utils/objects';\nimport { getTranslation } from '../../../../../utils/translations';\nimport { ResponsiveGridItem, ResponsiveGridRoot } from '../../FormLayout';\nimport { InputRenderer, type InputRendererProps } from '../../InputRenderer';\n\nimport type { ComponentPickerProps } from './ComponentPicker';\n\ninterface DynamicComponentProps\n extends Pick<UseDragAndDropOptions, 'onGrabItem' | 'onDropItem' | 'onCancel'>,\n Pick<ComponentPickerProps, 'dynamicComponentsByCategory'> {\n componentUid: string;\n disabled?: boolean;\n index: number;\n name: string;\n onAddComponent: (componentUid: string, index: number) => void;\n onRemoveComponentClick: () => void;\n onMoveComponent: (dragIndex: number, hoverIndex: number) => void;\n totalLength: number;\n children?: (props: InputRendererProps) => React.ReactNode;\n}\n\nconst DynamicComponent = ({\n componentUid,\n disabled,\n index,\n name,\n onRemoveComponentClick,\n onMoveComponent,\n onGrabItem,\n onDropItem,\n onCancel,\n dynamicComponentsByCategory = {},\n onAddComponent,\n totalLength,\n children,\n}: DynamicComponentProps) => {\n const { formatMessage } = useIntl();\n const formValues = useForm('DynamicComponent', (state) => state.values);\n const { currentDocument, currentDocumentMeta } = useDocumentContext('DynamicComponent');\n const isDesktop = useIsDesktop();\n\n const {\n edit: { components },\n } = useDocumentLayout(currentDocumentMeta.model);\n\n const title = React.useMemo(() => {\n const { mainField } = components[componentUid]?.settings ?? { mainField: 'id' };\n\n const mainFieldValue = getIn(formValues, `${name}.${index}.${mainField}`);\n\n const displayedValue =\n mainField === 'id' || !mainFieldValue ? '' : String(mainFieldValue).trim();\n\n const mainValue = displayedValue.length > 0 ? `- ${displayedValue}` : displayedValue;\n\n return mainValue;\n }, [componentUid, components, formValues, name, index]);\n\n const { icon, displayName } = React.useMemo(() => {\n const [category] = componentUid.split('.');\n const { icon, displayName } = (dynamicComponentsByCategory[category] ?? []).find(\n (component) => component.uid === componentUid\n ) ?? { icon: null, displayName: null };\n\n return { icon, displayName };\n }, [componentUid, dynamicComponentsByCategory]);\n\n const [{ handlerId, isDragging, handleKeyDown }, boxRef, dropRef, dragRef, dragPreviewRef] =\n useDragAndDrop(!disabled, {\n type: `${ItemTypes.DYNAMIC_ZONE}_${name}`,\n index,\n item: {\n index,\n displayedValue: `${displayName} ${title}`,\n icon,\n },\n onMoveItem: onMoveComponent,\n onDropItem,\n onGrabItem,\n onCancel,\n });\n\n React.useEffect(() => {\n dragPreviewRef(getEmptyImage(), { captureDraggingState: false });\n }, [dragPreviewRef, index]);\n\n /**\n * We don't need the accordion's to communicate with each other,\n * so a unique value for their state is enough.\n */\n const accordionValue = React.useId();\n\n const { value = [], rawError } = useField(`${name}.${index}`);\n\n const [collapseToOpen, setCollapseToOpen] = React.useState<string>('');\n\n React.useEffect(() => {\n if (rawError && value) {\n setCollapseToOpen(accordionValue);\n }\n }, [rawError, value, accordionValue]);\n\n const composedBoxRefs = useComposedRefs(boxRef, dropRef);\n\n const handleMoveUp = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n if (index > 0) {\n onMoveComponent(index - 1, index);\n }\n },\n [index, onMoveComponent]\n );\n\n const handleMoveDown = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n if (index < totalLength - 1) {\n onMoveComponent(index + 1, index);\n }\n },\n [index, totalLength, onMoveComponent]\n );\n\n const canMoveUp = index > 0;\n const canMoveDown = index < totalLength - 1;\n\n const accordionActions = disabled ? null : (\n <>\n <IconButton\n variant=\"ghost\"\n label={formatMessage(\n {\n id: getTranslation('components.DynamicZone.delete-label'),\n defaultMessage: 'Delete {name}',\n },\n { name: title }\n )}\n onClick={onRemoveComponentClick}\n >\n <Trash />\n </IconButton>\n {isDesktop && (\n <IconButton\n variant=\"ghost\"\n onClick={(e) => e.stopPropagation()}\n data-handler-id={handlerId}\n ref={dragRef}\n label={formatMessage({\n id: getTranslation('components.DragHandle-label'),\n defaultMessage: 'Drag',\n })}\n onKeyDown={handleKeyDown}\n >\n <Drag />\n </IconButton>\n )}\n {!isDesktop && (\n <>\n {canMoveUp && (\n <IconButton\n variant=\"ghost\"\n onClick={handleMoveUp}\n disabled={!canMoveUp}\n label={formatMessage({\n id: getTranslation('components.DynamicZone.move-up'),\n defaultMessage: 'Move up',\n })}\n >\n <ArrowUp />\n </IconButton>\n )}\n {canMoveDown && (\n <IconButton\n variant=\"ghost\"\n onClick={handleMoveDown}\n disabled={!canMoveDown}\n label={formatMessage({\n id: getTranslation('components.DynamicZone.move-down'),\n defaultMessage: 'Move down',\n })}\n >\n <ArrowDown />\n </IconButton>\n )}\n </>\n )}\n <Menu.Root>\n <Menu.Trigger size=\"S\" endIcon={null} paddingLeft={0} paddingRight={0}>\n <IconButton\n variant=\"ghost\"\n label={formatMessage({\n id: getTranslation('components.DynamicZone.more-actions'),\n defaultMessage: 'More actions',\n })}\n tag=\"span\"\n >\n <More aria-hidden focusable={false} />\n </IconButton>\n </Menu.Trigger>\n <Menu.Content>\n <Menu.SubRoot>\n <Menu.SubTrigger>\n {formatMessage({\n id: getTranslation('components.DynamicZone.add-item-above'),\n defaultMessage: 'Add component above',\n })}\n </Menu.SubTrigger>\n <Menu.SubContent>\n {Object.entries(dynamicComponentsByCategory).map(([category, components]) => (\n <React.Fragment key={category}>\n <Menu.Label>{category}</Menu.Label>\n {components.map(({ displayName, uid }) => (\n <Menu.Item key={uid} onSelect={() => onAddComponent(uid, index)}>\n {displayName}\n </Menu.Item>\n ))}\n </React.Fragment>\n ))}\n </Menu.SubContent>\n </Menu.SubRoot>\n <Menu.SubRoot>\n <Menu.SubTrigger>\n {formatMessage({\n id: getTranslation('components.DynamicZone.add-item-below'),\n defaultMessage: 'Add component below',\n })}\n </Menu.SubTrigger>\n <Menu.SubContent>\n {Object.entries(dynamicComponentsByCategory).map(([category, components]) => (\n <React.Fragment key={category}>\n <Menu.Label>{category}</Menu.Label>\n {components.map(({ displayName, uid }) => (\n <Menu.Item key={uid} onSelect={() => onAddComponent(uid, index + 1)}>\n {displayName}\n </Menu.Item>\n ))}\n </React.Fragment>\n ))}\n </Menu.SubContent>\n </Menu.SubRoot>\n </Menu.Content>\n </Menu.Root>\n </>\n );\n\n const accordionTitle = title ? `${displayName} ${title}` : displayName;\n\n return (\n <ComponentContainer tag=\"li\" width=\"100%\">\n <Flex justifyContent=\"center\">\n <Rectangle background=\"neutral200\" />\n </Flex>\n <StyledBox ref={composedBoxRefs} hasRadius>\n {isDragging ? (\n <Preview />\n ) : (\n <Accordion.Root value={collapseToOpen} onValueChange={setCollapseToOpen}>\n <Accordion.Item value={accordionValue}>\n <Accordion.Header>\n <Accordion.Trigger\n icon={\n icon && COMPONENT_ICONS[icon]\n ? COMPONENT_ICONS[icon]\n : COMPONENT_ICONS.dashboard\n }\n >\n {accordionTitle}\n </Accordion.Trigger>\n <Accordion.Actions>{accordionActions}</Accordion.Actions>\n </Accordion.Header>\n <Accordion.Content>\n <AccordionContentRadius background=\"neutral0\">\n <Box padding={{ initial: 4, medium: 6 }}>\n <Grid.Root gap={4}>\n {components[componentUid]?.layout?.map((row, rowInd) => {\n return (\n <Grid.Item\n col={12}\n key={rowInd}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <ResponsiveGridRoot gap={4}>\n {row.map(({ size, ...field }) => {\n const fieldName = `${name}.${index}.${field.name}`;\n\n const fieldWithTranslatedLabel = {\n ...field,\n label: formatMessage({\n id: `content-manager.components.${componentUid}.${field.name}`,\n defaultMessage: field.label,\n }),\n };\n\n return (\n <ResponsiveGridItem\n col={size}\n key={fieldName}\n s={12}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n {children ? (\n children({\n ...fieldWithTranslatedLabel,\n document: currentDocument,\n name: fieldName,\n })\n ) : (\n <InputRenderer\n {...fieldWithTranslatedLabel}\n document={currentDocument}\n name={fieldName}\n />\n )}\n </ResponsiveGridItem>\n );\n })}\n </ResponsiveGridRoot>\n </Grid.Item>\n );\n })}\n </Grid.Root>\n </Box>\n </AccordionContentRadius>\n </Accordion.Content>\n </Accordion.Item>\n </Accordion.Root>\n )}\n </StyledBox>\n </ComponentContainer>\n );\n};\n\n// TODO: Delete once https://github.com/strapi/design-system/pull/858\n// is merged and released.\nconst StyledBox = styled<BoxComponent>(Box)`\n > div:first-child {\n box-shadow: ${({ theme }) => theme.shadows.tableShadow};\n }\n`;\n\nconst AccordionContentRadius = styled<BoxComponent>(Box)`\n border-radius: 0 0 ${({ theme }) => theme.spaces[1]} ${({ theme }) => theme.spaces[1]};\n`;\n\nconst Rectangle = styled<BoxComponent>(Box)`\n width: ${({ theme }) => theme.spaces[2]};\n height: ${({ theme }) => theme.spaces[4]};\n`;\n\nconst Preview = styled.span`\n display: block;\n background-color: ${({ theme }) => theme.colors.primary100};\n outline: 1px dashed ${({ theme }) => theme.colors.primary500};\n outline-offset: -1px;\n padding: ${({ theme }) => theme.spaces[6]};\n`;\n\nconst ComponentContainer = styled<BoxComponent<'li'>>(Box)`\n list-style: none;\n padding: 0;\n margin: 0;\n`;\n\nexport { DynamicComponent };\nexport type { DynamicComponentProps };\n"],"names":["DynamicComponent","componentUid","disabled","index","name","onRemoveComponentClick","onMoveComponent","onGrabItem","onDropItem","onCancel","dynamicComponentsByCategory","onAddComponent","totalLength","children","formatMessage","useIntl","formValues","useForm","state","values","currentDocument","currentDocumentMeta","useDocumentContext","isDesktop","useIsDesktop","edit","components","useDocumentLayout","model","title","React","useMemo","mainField","settings","mainFieldValue","getIn","displayedValue","String","trim","mainValue","length","icon","displayName","category","split","find","component","uid","handlerId","isDragging","handleKeyDown","boxRef","dropRef","dragRef","dragPreviewRef","useDragAndDrop","type","ItemTypes","DYNAMIC_ZONE","item","onMoveItem","useEffect","getEmptyImage","captureDraggingState","accordionValue","useId","value","rawError","useField","collapseToOpen","setCollapseToOpen","useState","composedBoxRefs","useComposedRefs","handleMoveUp","useCallback","e","stopPropagation","handleMoveDown","canMoveUp","canMoveDown","accordionActions","_jsxs","_Fragment","_jsx","IconButton","variant","label","id","getTranslation","defaultMessage","onClick","Trash","data-handler-id","ref","onKeyDown","Drag","ArrowUp","ArrowDown","Menu","Root","Trigger","size","endIcon","paddingLeft","paddingRight","tag","More","aria-hidden","focusable","Content","SubRoot","SubTrigger","SubContent","Object","entries","map","Fragment","Label","Item","onSelect","accordionTitle","ComponentContainer","width","Flex","justifyContent","Rectangle","background","StyledBox","hasRadius","Preview","Accordion","onValueChange","Header","COMPONENT_ICONS","dashboard","Actions","AccordionContentRadius","Box","padding","initial","medium","Grid","gap","layout","row","rowInd","col","xs","direction","alignItems","ResponsiveGridRoot","field","fieldName","fieldWithTranslatedLabel","ResponsiveGridItem","s","document","InputRenderer","styled","theme","shadows","tableShadow","spaces","span","colors","primary100","primary500"],"mappings":";;;;;;;;;;;;;;;;;;AA4CA,MAAMA,gBAAAA,GAAmB,CAAC,EACxBC,YAAY,EACZC,QAAQ,EACRC,KAAK,EACLC,IAAI,EACJC,sBAAsB,EACtBC,eAAe,EACfC,UAAU,EACVC,UAAU,EACVC,QAAQ,EACRC,2BAAAA,GAA8B,EAAE,EAChCC,cAAc,EACdC,WAAW,EACXC,QAAQ,EACc,GAAA;IACtB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAMC,aAAaC,OAAAA,CAAQ,kBAAA,EAAoB,CAACC,KAAAA,GAAUA,MAAMC,MAAM,CAAA;AACtE,IAAA,MAAM,EAAEC,eAAe,EAAEC,mBAAmB,EAAE,GAAGC,kBAAAA,CAAmB,kBAAA,CAAA;AACpE,IAAA,MAAMC,SAAAA,GAAYC,YAAAA,EAAAA;IAElB,MAAM,EACJC,MAAM,EAAEC,UAAU,EAAE,EACrB,GAAGC,iBAAAA,CAAkBN,mBAAAA,CAAoBO,KAAK,CAAA;IAE/C,MAAMC,KAAAA,GAAQC,KAAAA,CAAMC,OAAO,CAAC,IAAA;QAC1B,MAAM,EAAEC,SAAS,EAAE,GAAGN,UAAU,CAACzB,YAAAA,CAAa,EAAEgC,QAAAA,IAAY;YAAED,SAAAA,EAAW;AAAK,SAAA;QAE9E,MAAME,cAAAA,GAAiBC,KAAAA,CAAMnB,UAAAA,EAAY,CAAA,EAAGZ,IAAAA,CAAK,CAAC,EAAED,KAAAA,CAAM,CAAC,EAAE6B,SAAAA,CAAAA,CAAW,CAAA;QAExE,MAAMI,cAAAA,GACJJ,cAAc,IAAA,IAAQ,CAACE,iBAAiB,EAAA,GAAKG,MAAAA,CAAOH,gBAAgBI,IAAI,EAAA;QAE1E,MAAMC,SAAAA,GAAYH,eAAeI,MAAM,GAAG,IAAI,CAAC,EAAE,EAAEJ,cAAAA,CAAAA,CAAgB,GAAGA,cAAAA;QAEtE,OAAOG,SAAAA;IACT,CAAA,EAAG;AAACtC,QAAAA,YAAAA;AAAcyB,QAAAA,UAAAA;AAAYV,QAAAA,UAAAA;AAAYZ,QAAAA,IAAAA;AAAMD,QAAAA;AAAM,KAAA,CAAA;IAEtD,MAAM,EAAEsC,IAAI,EAAEC,WAAW,EAAE,GAAGZ,KAAAA,CAAMC,OAAO,CAAC,IAAA;AAC1C,QAAA,MAAM,CAACY,QAAAA,CAAS,GAAG1C,YAAAA,CAAa2C,KAAK,CAAC,GAAA,CAAA;QACtC,MAAM,EAAEH,IAAI,EAAEC,WAAW,EAAE,GAAIhC,CAAAA,2BAA2B,CAACiC,QAAAA,CAAS,IAAI,EAAC,EAAGE,IAAI,CAC9E,CAACC,SAAAA,GAAcA,SAAAA,CAAUC,GAAG,KAAK9C,YAAAA,CAAAA,IAC9B;YAAEwC,IAAAA,EAAM,IAAA;YAAMC,WAAAA,EAAa;AAAK,SAAA;QAErC,OAAO;AAAED,YAAAA,IAAAA;AAAMC,YAAAA;AAAY,SAAA;IAC7B,CAAA,EAAG;AAACzC,QAAAA,YAAAA;AAAcS,QAAAA;AAA4B,KAAA,CAAA;AAE9C,IAAA,MAAM,CAAC,EAAEsC,SAAS,EAAEC,UAAU,EAAEC,aAAa,EAAE,EAAEC,MAAAA,EAAQC,SAASC,OAAAA,EAASC,cAAAA,CAAe,GACxFC,cAAAA,CAAe,CAACrD,QAAAA,EAAU;AACxBsD,QAAAA,IAAAA,EAAM,GAAGC,SAAAA,CAAUC,YAAY,CAAC,CAAC,EAAEtD,IAAAA,CAAAA,CAAM;AACzCD,QAAAA,KAAAA;QACAwD,IAAAA,EAAM;AACJxD,YAAAA,KAAAA;AACAiC,YAAAA,cAAAA,EAAgB,CAAA,EAAGM,WAAAA,CAAY,CAAC,EAAEb,KAAAA,CAAAA,CAAO;AACzCY,YAAAA;AACF,SAAA;QACAmB,UAAAA,EAAYtD,eAAAA;AACZE,QAAAA,UAAAA;AACAD,QAAAA,UAAAA;AACAE,QAAAA;AACF,KAAA,CAAA;AAEFqB,IAAAA,KAAAA,CAAM+B,SAAS,CAAC,IAAA;AACdP,QAAAA,cAAAA,CAAeQ,aAAAA,EAAAA,EAAiB;YAAEC,oBAAAA,EAAsB;AAAM,SAAA,CAAA;IAChE,CAAA,EAAG;AAACT,QAAAA,cAAAA;AAAgBnD,QAAAA;AAAM,KAAA,CAAA;AAE1B;;;MAIA,MAAM6D,cAAAA,GAAiBlC,KAAAA,CAAMmC,KAAK,EAAA;AAElC,IAAA,MAAM,EAAEC,KAAAA,GAAQ,EAAE,EAAEC,QAAQ,EAAE,GAAGC,QAAAA,CAAS,CAAA,EAAGhE,IAAAA,CAAK,CAAC,EAAED,KAAAA,CAAAA,CAAO,CAAA;AAE5D,IAAA,MAAM,CAACkE,cAAAA,EAAgBC,iBAAAA,CAAkB,GAAGxC,KAAAA,CAAMyC,QAAQ,CAAS,EAAA,CAAA;AAEnEzC,IAAAA,KAAAA,CAAM+B,SAAS,CAAC,IAAA;AACd,QAAA,IAAIM,YAAYD,KAAAA,EAAO;YACrBI,iBAAAA,CAAkBN,cAAAA,CAAAA;AACpB,QAAA;IACF,CAAA,EAAG;AAACG,QAAAA,QAAAA;AAAUD,QAAAA,KAAAA;AAAOF,QAAAA;AAAe,KAAA,CAAA;IAEpC,MAAMQ,eAAAA,GAAkBC,gBAAgBtB,MAAAA,EAAQC,OAAAA,CAAAA;AAEhD,IAAA,MAAMsB,YAAAA,GAAe5C,KAAAA,CAAM6C,WAAW,CACpC,CAACC,CAAAA,GAAAA;AACCA,QAAAA,CAAAA,CAAEC,eAAe,EAAA;AACjB,QAAA,IAAI1E,QAAQ,CAAA,EAAG;AACbG,YAAAA,eAAAA,CAAgBH,QAAQ,CAAA,EAAGA,KAAAA,CAAAA;AAC7B,QAAA;IACF,CAAA,EACA;AAACA,QAAAA,KAAAA;AAAOG,QAAAA;AAAgB,KAAA,CAAA;AAG1B,IAAA,MAAMwE,cAAAA,GAAiBhD,KAAAA,CAAM6C,WAAW,CACtC,CAACC,CAAAA,GAAAA;AACCA,QAAAA,CAAAA,CAAEC,eAAe,EAAA;QACjB,IAAI1E,KAAAA,GAAQS,cAAc,CAAA,EAAG;AAC3BN,YAAAA,eAAAA,CAAgBH,QAAQ,CAAA,EAAGA,KAAAA,CAAAA;AAC7B,QAAA;IACF,CAAA,EACA;AAACA,QAAAA,KAAAA;AAAOS,QAAAA,WAAAA;AAAaN,QAAAA;AAAgB,KAAA,CAAA;AAGvC,IAAA,MAAMyE,YAAY5E,KAAAA,GAAQ,CAAA;IAC1B,MAAM6E,WAAAA,GAAc7E,QAAQS,WAAAA,GAAc,CAAA;IAE1C,MAAMqE,gBAAAA,GAAmB/E,WAAW,IAAA,iBAClCgF,IAAA,CAAAC,QAAA,EAAA;;0BACEC,GAAA,CAACC,UAAAA,EAAAA;gBACCC,OAAAA,EAAQ,OAAA;AACRC,gBAAAA,KAAAA,EAAOzE,aAAAA,CACL;AACE0E,oBAAAA,EAAAA,EAAIC,cAAAA,CAAe,qCAAA,CAAA;oBACnBC,cAAAA,EAAgB;iBAClB,EACA;oBAAEtF,IAAAA,EAAMyB;AAAM,iBAAA,CAAA;gBAEhB8D,OAAAA,EAAStF,sBAAAA;AAET,gBAAA,QAAA,gBAAA+E,GAAA,CAACQ,KAAAA,EAAAA,EAAAA;;AAEFrE,YAAAA,SAAAA,kBACC6D,GAAA,CAACC,UAAAA,EAAAA;gBACCC,OAAAA,EAAQ,OAAA;gBACRK,OAAAA,EAAS,CAACf,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;gBACjCgB,iBAAAA,EAAiB7C,SAAAA;gBACjB8C,GAAAA,EAAKzC,OAAAA;AACLkC,gBAAAA,KAAAA,EAAOzE,aAAAA,CAAc;AACnB0E,oBAAAA,EAAAA,EAAIC,cAAAA,CAAe,6BAAA,CAAA;oBACnBC,cAAAA,EAAgB;AAClB,iBAAA,CAAA;gBACAK,SAAAA,EAAW7C,aAAAA;AAEX,gBAAA,QAAA,gBAAAkC,GAAA,CAACY,IAAAA,EAAAA,EAAAA;;AAGJ,YAAA,CAACzE,SAAAA,kBACA2D,IAAA,CAAAC,QAAA,EAAA;;AACGJ,oBAAAA,SAAAA,kBACCK,GAAA,CAACC,UAAAA,EAAAA;wBACCC,OAAAA,EAAQ,OAAA;wBACRK,OAAAA,EAASjB,YAAAA;AACTxE,wBAAAA,QAAAA,EAAU,CAAC6E,SAAAA;AACXQ,wBAAAA,KAAAA,EAAOzE,aAAAA,CAAc;AACnB0E,4BAAAA,EAAAA,EAAIC,cAAAA,CAAe,gCAAA,CAAA;4BACnBC,cAAAA,EAAgB;AAClB,yBAAA,CAAA;AAEA,wBAAA,QAAA,gBAAAN,GAAA,CAACa,OAAAA,EAAAA,EAAAA;;AAGJjB,oBAAAA,WAAAA,kBACCI,GAAA,CAACC,UAAAA,EAAAA;wBACCC,OAAAA,EAAQ,OAAA;wBACRK,OAAAA,EAASb,cAAAA;AACT5E,wBAAAA,QAAAA,EAAU,CAAC8E,WAAAA;AACXO,wBAAAA,KAAAA,EAAOzE,aAAAA,CAAc;AACnB0E,4BAAAA,EAAAA,EAAIC,cAAAA,CAAe,kCAAA,CAAA;4BACnBC,cAAAA,EAAgB;AAClB,yBAAA,CAAA;AAEA,wBAAA,QAAA,gBAAAN,GAAA,CAACc,SAAAA,EAAAA,EAAAA;;;;AAKT,0BAAAhB,IAAA,CAACiB,KAAKC,IAAI,EAAA;;AACR,kCAAAhB,GAAA,CAACe,KAAKE,OAAO,EAAA;wBAACC,IAAAA,EAAK,GAAA;wBAAIC,OAAAA,EAAS,IAAA;wBAAMC,WAAAA,EAAa,CAAA;wBAAGC,YAAAA,EAAc,CAAA;AAClE,wBAAA,QAAA,gBAAArB,GAAA,CAACC,UAAAA,EAAAA;4BACCC,OAAAA,EAAQ,OAAA;AACRC,4BAAAA,KAAAA,EAAOzE,aAAAA,CAAc;AACnB0E,gCAAAA,EAAAA,EAAIC,cAAAA,CAAe,qCAAA,CAAA;gCACnBC,cAAAA,EAAgB;AAClB,6BAAA,CAAA;4BACAgB,GAAAA,EAAI,MAAA;AAEJ,4BAAA,QAAA,gBAAAtB,GAAA,CAACuB,IAAAA,EAAAA;gCAAKC,aAAW,EAAA,IAAA;gCAACC,SAAAA,EAAW;;;;AAGjC,kCAAA3B,IAAA,CAACiB,KAAKW,OAAO,EAAA;;AACX,0CAAA5B,IAAA,CAACiB,KAAKY,OAAO,EAAA;;AACX,kDAAA3B,GAAA,CAACe,KAAKa,UAAU,EAAA;kDACblG,aAAAA,CAAc;AACb0E,4CAAAA,EAAAA,EAAIC,cAAAA,CAAe,uCAAA,CAAA;4CACnBC,cAAAA,EAAgB;AAClB,yCAAA;;AAEF,kDAAAN,GAAA,CAACe,KAAKc,UAAU,EAAA;AACbC,wCAAAA,QAAAA,EAAAA,MAAAA,CAAOC,OAAO,CAACzG,2BAAAA,CAAAA,CAA6B0G,GAAG,CAAC,CAAC,CAACzE,QAAAA,EAAUjB,UAAAA,CAAW,iBACtEwD,IAAA,CAACpD,KAAAA,CAAMuF,QAAQ,EAAA;;AACb,kEAAAjC,GAAA,CAACe,KAAKmB,KAAK,EAAA;AAAE3E,wDAAAA,QAAAA,EAAAA;;oDACZjB,UAAAA,CAAW0F,GAAG,CAAC,CAAC,EAAE1E,WAAW,EAAEK,GAAG,EAAE,iBACnCqC,GAAA,CAACe,IAAAA,CAAKoB,IAAI,EAAA;4DAAWC,QAAAA,EAAU,IAAM7G,eAAeoC,GAAAA,EAAK5C,KAAAA,CAAAA;AACtDuC,4DAAAA,QAAAA,EAAAA;AADaK,yDAAAA,EAAAA,GAAAA,CAAAA;;AAHCJ,6CAAAA,EAAAA,QAAAA,CAAAA;;;;AAW3B,0CAAAuC,IAAA,CAACiB,KAAKY,OAAO,EAAA;;AACX,kDAAA3B,GAAA,CAACe,KAAKa,UAAU,EAAA;kDACblG,aAAAA,CAAc;AACb0E,4CAAAA,EAAAA,EAAIC,cAAAA,CAAe,uCAAA,CAAA;4CACnBC,cAAAA,EAAgB;AAClB,yCAAA;;AAEF,kDAAAN,GAAA,CAACe,KAAKc,UAAU,EAAA;AACbC,wCAAAA,QAAAA,EAAAA,MAAAA,CAAOC,OAAO,CAACzG,2BAAAA,CAAAA,CAA6B0G,GAAG,CAAC,CAAC,CAACzE,QAAAA,EAAUjB,UAAAA,CAAW,iBACtEwD,IAAA,CAACpD,KAAAA,CAAMuF,QAAQ,EAAA;;AACb,kEAAAjC,GAAA,CAACe,KAAKmB,KAAK,EAAA;AAAE3E,wDAAAA,QAAAA,EAAAA;;oDACZjB,UAAAA,CAAW0F,GAAG,CAAC,CAAC,EAAE1E,WAAW,EAAEK,GAAG,EAAE,iBACnCqC,GAAA,CAACe,IAAAA,CAAKoB,IAAI,EAAA;4DAAWC,QAAAA,EAAU,IAAM7G,cAAAA,CAAeoC,GAAAA,EAAK5C,KAAAA,GAAQ,CAAA,CAAA;AAC9DuC,4DAAAA,QAAAA,EAAAA;AADaK,yDAAAA,EAAAA,GAAAA,CAAAA;;AAHCJ,6CAAAA,EAAAA,QAAAA,CAAAA;;;;;;;;;;AAgBnC,IAAA,MAAM8E,iBAAiB5F,KAAAA,GAAQ,CAAA,EAAGa,YAAY,CAAC,EAAEb,OAAO,GAAGa,WAAAA;AAE3D,IAAA,qBACEwC,IAAA,CAACwC,kBAAAA,EAAAA;QAAmBhB,GAAAA,EAAI,IAAA;QAAKiB,KAAAA,EAAM,MAAA;;0BACjCvC,GAAA,CAACwC,IAAAA,EAAAA;gBAAKC,cAAAA,EAAe,QAAA;AACnB,gBAAA,QAAA,gBAAAzC,GAAA,CAAC0C,SAAAA,EAAAA;oBAAUC,UAAAA,EAAW;;;0BAExB3C,GAAA,CAAC4C,SAAAA,EAAAA;gBAAUlC,GAAAA,EAAKtB,eAAAA;gBAAiByD,SAAS,EAAA,IAAA;AACvChF,gBAAAA,QAAAA,EAAAA,UAAAA,iBACCmC,GAAA,CAAC8C,OAAAA,EAAAA,EAAAA,CAAAA,iBAED9C,GAAA,CAAC+C,SAAAA,CAAU/B,IAAI,EAAA;oBAAClC,KAAAA,EAAOG,cAAAA;oBAAgB+D,aAAAA,EAAe9D,iBAAAA;4CACpDY,IAAA,CAACiD,UAAUZ,IAAI,EAAA;wBAACrD,KAAAA,EAAOF,cAAAA;;AACrB,0CAAAkB,IAAA,CAACiD,UAAUE,MAAM,EAAA;;AACf,kDAAAjD,GAAA,CAAC+C,UAAU9B,OAAO,EAAA;wCAChB5D,IAAAA,EACEA,IAAAA,IAAQ6F,eAAe,CAAC7F,IAAAA,CAAK,GACzB6F,eAAe,CAAC7F,IAAAA,CAAK,GACrB6F,eAAAA,CAAgBC,SAAS;AAG9Bd,wCAAAA,QAAAA,EAAAA;;AAEH,kDAAArC,GAAA,CAAC+C,UAAUK,OAAO,EAAA;AAAEvD,wCAAAA,QAAAA,EAAAA;;;;AAEtB,0CAAAG,GAAA,CAAC+C,UAAUrB,OAAO,EAAA;AAChB,gCAAA,QAAA,gBAAA1B,GAAA,CAACqD,sBAAAA,EAAAA;oCAAuBV,UAAAA,EAAW,UAAA;AACjC,oCAAA,QAAA,gBAAA3C,GAAA,CAACsD,GAAAA,EAAAA;wCAAIC,OAAAA,EAAS;4CAAEC,OAAAA,EAAS,CAAA;4CAAGC,MAAAA,EAAQ;AAAE,yCAAA;gEACpCzD,GAAA,CAAC0D,KAAK1C,IAAI,EAAA;4CAAC2C,GAAAA,EAAK,CAAA;AACbrH,4CAAAA,QAAAA,EAAAA,UAAU,CAACzB,YAAAA,CAAa,EAAE+I,MAAAA,EAAQ5B,GAAAA,CAAI,CAAC6B,GAAAA,EAAKC,MAAAA,GAAAA;gDAC3C,qBACE9D,GAAA,CAAC0D,KAAKvB,IAAI,EAAA;oDACR4B,GAAAA,EAAK,EAAA;oDAELC,EAAAA,EAAI,EAAA;oDACJC,SAAAA,EAAU,QAAA;oDACVC,UAAAA,EAAW,SAAA;AAEX,oDAAA,QAAA,gBAAAlE,GAAA,CAACmE,kBAAAA,EAAAA;wDAAmBR,GAAAA,EAAK,CAAA;AACtBE,wDAAAA,QAAAA,EAAAA,GAAAA,CAAI7B,GAAG,CAAC,CAAC,EAAEd,IAAI,EAAE,GAAGkD,KAAAA,EAAO,GAAA;4DAC1B,MAAMC,SAAAA,GAAY,CAAA,EAAGrJ,IAAAA,CAAK,CAAC,EAAED,MAAM,CAAC,EAAEqJ,KAAAA,CAAMpJ,IAAI,CAAA,CAAE;AAElD,4DAAA,MAAMsJ,wBAAAA,GAA2B;AAC/B,gEAAA,GAAGF,KAAK;AACRjE,gEAAAA,KAAAA,EAAOzE,aAAAA,CAAc;oEACnB0E,EAAAA,EAAI,CAAC,2BAA2B,EAAEvF,YAAAA,CAAa,CAAC,EAAEuJ,KAAAA,CAAMpJ,IAAI,CAAA,CAAE;AAC9DsF,oEAAAA,cAAAA,EAAgB8D,MAAMjE;AACxB,iEAAA;AACF,6DAAA;AAEA,4DAAA,qBACEH,GAAA,CAACuE,kBAAAA,EAAAA;gEACCR,GAAAA,EAAK7C,IAAAA;gEAELsD,CAAAA,EAAG,EAAA;gEACHR,EAAAA,EAAI,EAAA;gEACJC,SAAAA,EAAU,QAAA;gEACVC,UAAAA,EAAW,SAAA;AAEVzI,gEAAAA,QAAAA,EAAAA,QAAAA,GACCA,QAAAA,CAAS;AACP,oEAAA,GAAG6I,wBAAwB;oEAC3BG,QAAAA,EAAUzI,eAAAA;oEACVhB,IAAAA,EAAMqJ;AACR,iEAAA,CAAA,iBAEArE,GAAA,CAAC0E,qBAAAA,EAAAA;AACE,oEAAA,GAAGJ,wBAAwB;oEAC5BG,QAAAA,EAAUzI,eAAAA;oEACVhB,IAAAA,EAAMqJ;;AAhBLA,6DAAAA,EAAAA,SAAAA,CAAAA;AAqBX,wDAAA,CAAA;;AAzCGP,iDAAAA,EAAAA,MAAAA,CAAAA;AA6CX,4CAAA,CAAA;;;;;;;;;;;AAWtB;AAEA;AACA;AACA,MAAMlB,SAAAA,GAAY+B,MAAAA,CAAqBrB,GAAAA,CAAI;;gBAE3B,EAAE,CAAC,EAAEsB,KAAK,EAAE,GAAKA,KAAAA,CAAMC,OAAO,CAACC,WAAW,CAAC;;AAE3D,CAAC;AAED,MAAMzB,sBAAAA,GAAyBsB,MAAAA,CAAqBrB,GAAAA,CAAI;qBACnC,EAAE,CAAC,EAAEsB,KAAK,EAAE,GAAKA,KAAAA,CAAMG,MAAM,CAAC,CAAA,CAAE,CAAC,CAAC,EAAE,CAAC,EAAEH,KAAK,EAAE,GAAKA,KAAAA,CAAMG,MAAM,CAAC,CAAA,CAAE,CAAC;AACxF,CAAC;AAED,MAAMrC,SAAAA,GAAYiC,MAAAA,CAAqBrB,GAAAA,CAAI;SAClC,EAAE,CAAC,EAAEsB,KAAK,EAAE,GAAKA,KAAAA,CAAMG,MAAM,CAAC,CAAA,CAAE,CAAC;UAChC,EAAE,CAAC,EAAEH,KAAK,EAAE,GAAKA,KAAAA,CAAMG,MAAM,CAAC,CAAA,CAAE,CAAC;AAC3C,CAAC;AAED,MAAMjC,OAAAA,GAAU6B,MAAAA,CAAOK,IAAI;;oBAEP,EAAE,CAAC,EAAEJ,KAAK,EAAE,GAAKA,KAAAA,CAAMK,MAAM,CAACC,UAAU,CAAC;sBACvC,EAAE,CAAC,EAAEN,KAAK,EAAE,GAAKA,KAAAA,CAAMK,MAAM,CAACE,UAAU,CAAC;;WAEpD,EAAE,CAAC,EAAEP,KAAK,EAAE,GAAKA,KAAAA,CAAMG,MAAM,CAAC,CAAA,CAAE,CAAC;AAC5C,CAAC;AAED,MAAMzC,kBAAAA,GAAqBqC,MAAAA,CAA2BrB,GAAAA,CAAI;;;;AAI1D,CAAC;;;;"}
1
+ {"version":3,"file":"DynamicComponent.mjs","sources":["../../../../../../../admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useForm, useField, useIsDesktop } from '@strapi/admin/strapi-admin';\nimport {\n Accordion,\n Box,\n Flex,\n Grid,\n IconButton,\n useComposedRefs,\n Menu,\n BoxComponent,\n} from '@strapi/design-system';\nimport { Drag, More, Trash, ArrowUp, ArrowDown } from '@strapi/icons';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { COMPONENT_ICONS } from '../../../../../components/ComponentIcon';\nimport { ItemTypes } from '../../../../../constants/dragAndDrop';\nimport { useDocumentContext } from '../../../../../hooks/useDocumentContext';\nimport { useDocumentLayout } from '../../../../../hooks/useDocumentLayout';\nimport { type UseDragAndDropOptions, useDragAndDrop } from '../../../../../hooks/useDragAndDrop';\nimport { getIn } from '../../../../../utils/objects';\nimport { getTranslation } from '../../../../../utils/translations';\nimport { ResponsiveGridItem, ResponsiveGridRoot } from '../../FormLayout';\nimport { InputRenderer, type InputRendererProps } from '../../InputRenderer';\n\nimport type { ComponentPickerProps } from './ComponentPicker';\n\ninterface DynamicComponentProps\n extends Pick<UseDragAndDropOptions, 'onGrabItem' | 'onDropItem' | 'onCancel'>,\n Pick<ComponentPickerProps, 'dynamicComponentsByCategory'> {\n componentUid: string;\n disabled?: boolean;\n index: number;\n name: string;\n onAddComponent: (componentUid: string, index: number) => void;\n onRemoveComponentClick: () => void;\n onMoveComponent: (dragIndex: number, hoverIndex: number) => void;\n totalLength: number;\n children?: (props: InputRendererProps) => React.ReactNode;\n}\n\nconst DynamicComponent = ({\n componentUid,\n disabled,\n index,\n name,\n onRemoveComponentClick,\n onMoveComponent,\n onGrabItem,\n onDropItem,\n onCancel,\n dynamicComponentsByCategory = {},\n onAddComponent,\n totalLength,\n children,\n}: DynamicComponentProps) => {\n const { formatMessage } = useIntl();\n const formValues = useForm('DynamicComponent', (state) => state.values);\n const { currentDocument, currentDocumentMeta } = useDocumentContext('DynamicComponent');\n const isDesktop = useIsDesktop();\n\n const {\n edit: { components },\n } = useDocumentLayout(currentDocumentMeta.model);\n\n const title = React.useMemo(() => {\n const { mainField } = components[componentUid]?.settings ?? { mainField: 'id' };\n\n const mainFieldValue = getIn(formValues, `${name}.${index}.${mainField}`);\n\n const displayedValue =\n mainField === 'id' || !mainFieldValue ? '' : String(mainFieldValue).trim();\n\n const mainValue = displayedValue.length > 0 ? `- ${displayedValue}` : displayedValue;\n\n return mainValue;\n }, [componentUid, components, formValues, name, index]);\n\n const { icon, displayName } = React.useMemo(() => {\n const [category] = componentUid.split('.');\n const { icon, displayName } = (dynamicComponentsByCategory[category] ?? []).find(\n (component) => component.uid === componentUid\n ) ?? { icon: null, displayName: null };\n\n return { icon, displayName };\n }, [componentUid, dynamicComponentsByCategory]);\n\n const [{ handlerId, isDragging, handleKeyDown }, boxRef, dropRef, dragRef, dragPreviewRef] =\n useDragAndDrop(!disabled, {\n type: `${ItemTypes.DYNAMIC_ZONE}_${name}`,\n index,\n item: {\n index,\n displayedValue: `${displayName} ${title}`,\n icon,\n },\n onMoveItem: onMoveComponent,\n onDropItem,\n onGrabItem,\n onCancel,\n });\n\n React.useEffect(() => {\n dragPreviewRef(getEmptyImage(), { captureDraggingState: false });\n }, [dragPreviewRef, index]);\n\n /**\n * We don't need the accordion's to communicate with each other,\n * so a unique value for their state is enough.\n */\n const accordionValue = React.useId();\n\n const { value = [], rawError } = useField(`${name}.${index}`);\n\n const [collapseToOpen, setCollapseToOpen] = React.useState<string>(\n value.id ? '' : accordionValue\n );\n\n React.useEffect(() => {\n if (rawError && value) {\n setCollapseToOpen(accordionValue);\n }\n }, [rawError, value, accordionValue]);\n\n const composedBoxRefs = useComposedRefs(boxRef, dropRef);\n\n const handleMoveUp = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n if (index > 0) {\n onMoveComponent(index - 1, index);\n }\n },\n [index, onMoveComponent]\n );\n\n const handleMoveDown = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n if (index < totalLength - 1) {\n onMoveComponent(index + 1, index);\n }\n },\n [index, totalLength, onMoveComponent]\n );\n\n const canMoveUp = index > 0;\n const canMoveDown = index < totalLength - 1;\n\n const accordionActions = disabled ? null : (\n <>\n <IconButton\n variant=\"ghost\"\n label={formatMessage(\n {\n id: getTranslation('components.DynamicZone.delete-label'),\n defaultMessage: 'Delete {name}',\n },\n { name: title }\n )}\n onClick={onRemoveComponentClick}\n >\n <Trash />\n </IconButton>\n {isDesktop && (\n <IconButton\n variant=\"ghost\"\n onClick={(e) => e.stopPropagation()}\n data-handler-id={handlerId}\n ref={dragRef}\n label={formatMessage({\n id: getTranslation('components.DragHandle-label'),\n defaultMessage: 'Drag',\n })}\n onKeyDown={handleKeyDown}\n >\n <Drag />\n </IconButton>\n )}\n {!isDesktop && (\n <>\n {canMoveUp && (\n <IconButton\n variant=\"ghost\"\n onClick={handleMoveUp}\n disabled={!canMoveUp}\n label={formatMessage({\n id: getTranslation('components.DynamicZone.move-up'),\n defaultMessage: 'Move up',\n })}\n >\n <ArrowUp />\n </IconButton>\n )}\n {canMoveDown && (\n <IconButton\n variant=\"ghost\"\n onClick={handleMoveDown}\n disabled={!canMoveDown}\n label={formatMessage({\n id: getTranslation('components.DynamicZone.move-down'),\n defaultMessage: 'Move down',\n })}\n >\n <ArrowDown />\n </IconButton>\n )}\n </>\n )}\n <Menu.Root>\n <Menu.Trigger size=\"S\" endIcon={null} paddingLeft={0} paddingRight={0}>\n <IconButton\n variant=\"ghost\"\n label={formatMessage({\n id: getTranslation('components.DynamicZone.more-actions'),\n defaultMessage: 'More actions',\n })}\n tag=\"span\"\n >\n <More aria-hidden focusable={false} />\n </IconButton>\n </Menu.Trigger>\n <Menu.Content>\n <Menu.SubRoot>\n <Menu.SubTrigger>\n {formatMessage({\n id: getTranslation('components.DynamicZone.add-item-above'),\n defaultMessage: 'Add component above',\n })}\n </Menu.SubTrigger>\n <Menu.SubContent>\n {Object.entries(dynamicComponentsByCategory).map(([category, components]) => (\n <React.Fragment key={category}>\n <Menu.Label>{category}</Menu.Label>\n {components.map(({ displayName, uid }) => (\n <Menu.Item key={uid} onSelect={() => onAddComponent(uid, index)}>\n {displayName}\n </Menu.Item>\n ))}\n </React.Fragment>\n ))}\n </Menu.SubContent>\n </Menu.SubRoot>\n <Menu.SubRoot>\n <Menu.SubTrigger>\n {formatMessage({\n id: getTranslation('components.DynamicZone.add-item-below'),\n defaultMessage: 'Add component below',\n })}\n </Menu.SubTrigger>\n <Menu.SubContent>\n {Object.entries(dynamicComponentsByCategory).map(([category, components]) => (\n <React.Fragment key={category}>\n <Menu.Label>{category}</Menu.Label>\n {components.map(({ displayName, uid }) => (\n <Menu.Item key={uid} onSelect={() => onAddComponent(uid, index + 1)}>\n {displayName}\n </Menu.Item>\n ))}\n </React.Fragment>\n ))}\n </Menu.SubContent>\n </Menu.SubRoot>\n </Menu.Content>\n </Menu.Root>\n </>\n );\n\n const accordionTitle = title ? `${displayName} ${title}` : displayName;\n\n return (\n <ComponentContainer tag=\"li\" width=\"100%\">\n <Flex justifyContent=\"center\">\n <Rectangle background=\"neutral200\" />\n </Flex>\n <StyledBox ref={composedBoxRefs} hasRadius>\n {isDragging ? (\n <Preview />\n ) : (\n <Accordion.Root value={collapseToOpen} onValueChange={setCollapseToOpen}>\n <Accordion.Item value={accordionValue}>\n <Accordion.Header>\n <Accordion.Trigger\n icon={\n icon && COMPONENT_ICONS[icon]\n ? COMPONENT_ICONS[icon]\n : COMPONENT_ICONS.dashboard\n }\n >\n {accordionTitle}\n </Accordion.Trigger>\n <Accordion.Actions>{accordionActions}</Accordion.Actions>\n </Accordion.Header>\n <Accordion.Content>\n <AccordionContentRadius background=\"neutral0\">\n <Box padding={{ initial: 4, medium: 6 }}>\n <Grid.Root gap={4}>\n {components[componentUid]?.layout?.map((row, rowInd) => {\n return (\n <Grid.Item\n col={12}\n key={rowInd}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <ResponsiveGridRoot gap={4}>\n {row.map(({ size, ...field }) => {\n const fieldName = `${name}.${index}.${field.name}`;\n\n const fieldWithTranslatedLabel = {\n ...field,\n label: formatMessage({\n id: `content-manager.components.${componentUid}.${field.name}`,\n defaultMessage: field.label,\n }),\n };\n\n return (\n <ResponsiveGridItem\n col={size}\n key={fieldName}\n s={12}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n {children ? (\n children({\n ...fieldWithTranslatedLabel,\n document: currentDocument,\n name: fieldName,\n })\n ) : (\n <InputRenderer\n {...fieldWithTranslatedLabel}\n document={currentDocument}\n name={fieldName}\n />\n )}\n </ResponsiveGridItem>\n );\n })}\n </ResponsiveGridRoot>\n </Grid.Item>\n );\n })}\n </Grid.Root>\n </Box>\n </AccordionContentRadius>\n </Accordion.Content>\n </Accordion.Item>\n </Accordion.Root>\n )}\n </StyledBox>\n </ComponentContainer>\n );\n};\n\n// TODO: Delete once https://github.com/strapi/design-system/pull/858\n// is merged and released.\nconst StyledBox = styled<BoxComponent>(Box)`\n > div:first-child {\n box-shadow: ${({ theme }) => theme.shadows.tableShadow};\n }\n`;\n\nconst AccordionContentRadius = styled<BoxComponent>(Box)`\n border-radius: 0 0 ${({ theme }) => theme.spaces[1]} ${({ theme }) => theme.spaces[1]};\n`;\n\nconst Rectangle = styled<BoxComponent>(Box)`\n width: ${({ theme }) => theme.spaces[2]};\n height: ${({ theme }) => theme.spaces[4]};\n`;\n\nconst Preview = styled.span`\n display: block;\n background-color: ${({ theme }) => theme.colors.primary100};\n outline: 1px dashed ${({ theme }) => theme.colors.primary500};\n outline-offset: -1px;\n padding: ${({ theme }) => theme.spaces[6]};\n`;\n\nconst ComponentContainer = styled<BoxComponent<'li'>>(Box)`\n list-style: none;\n padding: 0;\n margin: 0;\n`;\n\nexport { DynamicComponent };\nexport type { DynamicComponentProps };\n"],"names":["DynamicComponent","componentUid","disabled","index","name","onRemoveComponentClick","onMoveComponent","onGrabItem","onDropItem","onCancel","dynamicComponentsByCategory","onAddComponent","totalLength","children","formatMessage","useIntl","formValues","useForm","state","values","currentDocument","currentDocumentMeta","useDocumentContext","isDesktop","useIsDesktop","edit","components","useDocumentLayout","model","title","React","useMemo","mainField","settings","mainFieldValue","getIn","displayedValue","String","trim","mainValue","length","icon","displayName","category","split","find","component","uid","handlerId","isDragging","handleKeyDown","boxRef","dropRef","dragRef","dragPreviewRef","useDragAndDrop","type","ItemTypes","DYNAMIC_ZONE","item","onMoveItem","useEffect","getEmptyImage","captureDraggingState","accordionValue","useId","value","rawError","useField","collapseToOpen","setCollapseToOpen","useState","id","composedBoxRefs","useComposedRefs","handleMoveUp","useCallback","e","stopPropagation","handleMoveDown","canMoveUp","canMoveDown","accordionActions","_jsxs","_Fragment","_jsx","IconButton","variant","label","getTranslation","defaultMessage","onClick","Trash","data-handler-id","ref","onKeyDown","Drag","ArrowUp","ArrowDown","Menu","Root","Trigger","size","endIcon","paddingLeft","paddingRight","tag","More","aria-hidden","focusable","Content","SubRoot","SubTrigger","SubContent","Object","entries","map","Fragment","Label","Item","onSelect","accordionTitle","ComponentContainer","width","Flex","justifyContent","Rectangle","background","StyledBox","hasRadius","Preview","Accordion","onValueChange","Header","COMPONENT_ICONS","dashboard","Actions","AccordionContentRadius","Box","padding","initial","medium","Grid","gap","layout","row","rowInd","col","xs","direction","alignItems","ResponsiveGridRoot","field","fieldName","fieldWithTranslatedLabel","ResponsiveGridItem","s","document","InputRenderer","styled","theme","shadows","tableShadow","spaces","span","colors","primary100","primary500"],"mappings":"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"}
@@ -6,7 +6,7 @@ import { ArrowLeft, ArrowsOut, WarningCircle } from '@strapi/icons';
6
6
  import { useIntl } from 'react-intl';
7
7
  import { Link, useNavigate, useLocation } from 'react-router-dom';
8
8
  import { styled } from 'styled-components';
9
- import { SINGLE_TYPES, COLLECTION_TYPES } from '../../../../../constants/collections.mjs';
9
+ import { COLLECTION_TYPES, SINGLE_TYPES } from '../../../../../constants/collections.mjs';
10
10
  import { PERMISSIONS } from '../../../../../constants/plugin.mjs';
11
11
  import { buildValidParams } from '../../../../../utils/api.mjs';
12
12
  import 'date-fns';