@strapi/content-type-builder 5.37.1 → 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 (437) hide show
  1. package/dist/admin/components/AIChat/Chat.js.map +1 -1
  2. package/dist/admin/components/AIChat/Chat.mjs +2 -2
  3. package/dist/admin/components/AIChat/Chat.mjs.map +1 -1
  4. package/dist/admin/components/AIChat/FeedbackModal.js.map +1 -1
  5. package/dist/admin/components/AIChat/FeedbackModal.mjs +1 -1
  6. package/dist/admin/components/AIChat/FeedbackModal.mjs.map +1 -1
  7. package/dist/admin/components/AIChat/UploadCodeModal.js.map +1 -1
  8. package/dist/admin/components/AIChat/UploadCodeModal.mjs +1 -1
  9. package/dist/admin/components/AIChat/UploadCodeModal.mjs.map +1 -1
  10. package/dist/admin/components/AIChat/UploadFigmaModal.js.map +1 -1
  11. package/dist/admin/components/AIChat/UploadFigmaModal.mjs +1 -1
  12. package/dist/admin/components/AIChat/UploadFigmaModal.mjs.map +1 -1
  13. package/dist/admin/components/AIChat/components/Alert.js.map +1 -1
  14. package/dist/admin/components/AIChat/components/Alert.mjs.map +1 -1
  15. package/dist/admin/components/AIChat/components/AnimatedBox.js.map +1 -1
  16. package/dist/admin/components/AIChat/components/AnimatedBox.mjs.map +1 -1
  17. package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.js.map +1 -1
  18. package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.mjs.map +1 -1
  19. package/dist/admin/components/AIChat/components/Attachments/components/Attachment.js.map +1 -1
  20. package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs +1 -1
  21. package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs.map +1 -1
  22. package/dist/admin/components/AIChat/components/Base64Image.js.map +1 -1
  23. package/dist/admin/components/AIChat/components/Base64Image.mjs.map +1 -1
  24. package/dist/admin/components/AIChat/components/Collapsible.js.map +1 -1
  25. package/dist/admin/components/AIChat/components/Collapsible.mjs.map +1 -1
  26. package/dist/admin/components/AIChat/components/Dropzone.js +2 -6
  27. package/dist/admin/components/AIChat/components/Dropzone.js.map +1 -1
  28. package/dist/admin/components/AIChat/components/Dropzone.mjs +3 -7
  29. package/dist/admin/components/AIChat/components/Dropzone.mjs.map +1 -1
  30. package/dist/admin/components/AIChat/components/FloatingPanel.js.map +1 -1
  31. package/dist/admin/components/AIChat/components/FloatingPanel.mjs +1 -1
  32. package/dist/admin/components/AIChat/components/FloatingPanel.mjs.map +1 -1
  33. package/dist/admin/components/AIChat/components/FullScreenImage.js.map +1 -1
  34. package/dist/admin/components/AIChat/components/FullScreenImage.mjs.map +1 -1
  35. package/dist/admin/components/AIChat/components/ImagePreview.js.map +1 -1
  36. package/dist/admin/components/AIChat/components/ImagePreview.mjs +1 -1
  37. package/dist/admin/components/AIChat/components/ImagePreview.mjs.map +1 -1
  38. package/dist/admin/components/AIChat/components/Input.js +1 -5
  39. package/dist/admin/components/AIChat/components/Input.js.map +1 -1
  40. package/dist/admin/components/AIChat/components/Input.mjs +4 -7
  41. package/dist/admin/components/AIChat/components/Input.mjs.map +1 -1
  42. package/dist/admin/components/AIChat/components/Messages/Marker.js.map +1 -1
  43. package/dist/admin/components/AIChat/components/Messages/Marker.mjs +2 -2
  44. package/dist/admin/components/AIChat/components/Messages/Marker.mjs.map +1 -1
  45. package/dist/admin/components/AIChat/components/Messages/Message.js.map +1 -1
  46. package/dist/admin/components/AIChat/components/Messages/Message.mjs +1 -1
  47. package/dist/admin/components/AIChat/components/Messages/Message.mjs.map +1 -1
  48. package/dist/admin/components/AIChat/components/ResizableTextArea.js.map +1 -1
  49. package/dist/admin/components/AIChat/components/ResizableTextArea.mjs.map +1 -1
  50. package/dist/admin/components/AIChat/components/SimpleMenu.js.map +1 -1
  51. package/dist/admin/components/AIChat/components/SimpleMenu.mjs.map +1 -1
  52. package/dist/admin/components/AIChat/components/StepModal.js.map +1 -1
  53. package/dist/admin/components/AIChat/components/StepModal.mjs.map +1 -1
  54. package/dist/admin/components/AIChat/components/animations.js.map +1 -1
  55. package/dist/admin/components/AIChat/components/animations.mjs.map +1 -1
  56. package/dist/admin/components/AIChat/components/icons/FigmaIcon.js.map +1 -1
  57. package/dist/admin/components/AIChat/components/icons/FigmaIcon.mjs.map +1 -1
  58. package/dist/admin/components/AIChat/components/icons/StopIcon.js.map +1 -1
  59. package/dist/admin/components/AIChat/components/icons/StopIcon.mjs.map +1 -1
  60. package/dist/admin/components/AIChat/hooks/useAIFetch.js.map +1 -1
  61. package/dist/admin/components/AIChat/hooks/useAIFetch.mjs.map +1 -1
  62. package/dist/admin/components/AIChat/hooks/useAttachments.js.map +1 -1
  63. package/dist/admin/components/AIChat/hooks/useAttachments.mjs.map +1 -1
  64. package/dist/admin/components/AIChat/hooks/useChatTitle.js.map +1 -1
  65. package/dist/admin/components/AIChat/hooks/useChatTitle.mjs.map +1 -1
  66. package/dist/admin/components/AIChat/hooks/useCodeUpload.js.map +1 -1
  67. package/dist/admin/components/AIChat/hooks/useCodeUpload.mjs.map +1 -1
  68. package/dist/admin/components/AIChat/hooks/useFeedback.js.map +1 -1
  69. package/dist/admin/components/AIChat/hooks/useFeedback.mjs.map +1 -1
  70. package/dist/admin/components/AIChat/hooks/useFigmaUpload.js.map +1 -1
  71. package/dist/admin/components/AIChat/hooks/useFigmaUpload.mjs.map +1 -1
  72. package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.js.map +1 -1
  73. package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.mjs.map +1 -1
  74. package/dist/admin/components/AIChat/hooks/useTranslations.js.map +1 -1
  75. package/dist/admin/components/AIChat/hooks/useTranslations.mjs.map +1 -1
  76. package/dist/admin/components/AIChat/lib/aiClient.js.map +1 -1
  77. package/dist/admin/components/AIChat/lib/aiClient.mjs.map +1 -1
  78. package/dist/admin/components/AIChat/lib/constants.js.map +1 -1
  79. package/dist/admin/components/AIChat/lib/constants.mjs.map +1 -1
  80. package/dist/admin/components/AIChat/lib/misc.js.map +1 -1
  81. package/dist/admin/components/AIChat/lib/misc.mjs.map +1 -1
  82. package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.js.map +1 -1
  83. package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.mjs.map +1 -1
  84. package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.js.map +1 -1
  85. package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.mjs.map +1 -1
  86. package/dist/admin/components/AIChat/providers/ChatProvider.js.map +1 -1
  87. package/dist/admin/components/AIChat/providers/ChatProvider.mjs.map +1 -1
  88. package/dist/admin/components/AIChat/providers/SchemaProvider.js.map +1 -1
  89. package/dist/admin/components/AIChat/providers/SchemaProvider.mjs.map +1 -1
  90. package/dist/admin/components/AllowedTypesSelect.js.map +1 -1
  91. package/dist/admin/components/AllowedTypesSelect.mjs.map +1 -1
  92. package/dist/admin/components/ApplyConditionButton.js.map +1 -1
  93. package/dist/admin/components/ApplyConditionButton.mjs.map +1 -1
  94. package/dist/admin/components/AttributeIcon.js.map +1 -1
  95. package/dist/admin/components/AttributeIcon.mjs +1 -1
  96. package/dist/admin/components/AttributeIcon.mjs.map +1 -1
  97. package/dist/admin/components/AttributeOptions/AttributeList.js.map +1 -1
  98. package/dist/admin/components/AttributeOptions/AttributeList.mjs.map +1 -1
  99. package/dist/admin/components/AttributeOptions/AttributeOption.js.map +1 -1
  100. package/dist/admin/components/AttributeOptions/AttributeOption.mjs.map +1 -1
  101. package/dist/admin/components/AttributeOptions/AttributeOptions.js.map +1 -1
  102. package/dist/admin/components/AttributeOptions/AttributeOptions.mjs.map +1 -1
  103. package/dist/admin/components/AttributeOptions/CustomFieldOption.js.map +1 -1
  104. package/dist/admin/components/AttributeOptions/CustomFieldOption.mjs.map +1 -1
  105. package/dist/admin/components/AttributeOptions/CustomFieldsList.js.map +1 -1
  106. package/dist/admin/components/AttributeOptions/CustomFieldsList.mjs.map +1 -1
  107. package/dist/admin/components/AttributeOptions/EmptyAttributes.js.map +1 -1
  108. package/dist/admin/components/AttributeOptions/EmptyAttributes.mjs.map +1 -1
  109. package/dist/admin/components/AttributeOptions/OptionBoxWrapper.js.map +1 -1
  110. package/dist/admin/components/AttributeOptions/OptionBoxWrapper.mjs.map +1 -1
  111. package/dist/admin/components/AttributeRow.js.map +1 -1
  112. package/dist/admin/components/AttributeRow.mjs +1 -1
  113. package/dist/admin/components/AttributeRow.mjs.map +1 -1
  114. package/dist/admin/components/AutoReloadOverlayBlocker.js.map +1 -1
  115. package/dist/admin/components/AutoReloadOverlayBlocker.mjs.map +1 -1
  116. package/dist/admin/components/BooleanDefaultValueSelect.js.map +1 -1
  117. package/dist/admin/components/BooleanDefaultValueSelect.mjs.map +1 -1
  118. package/dist/admin/components/BooleanRadioGroup.js.map +1 -1
  119. package/dist/admin/components/BooleanRadioGroup.mjs.map +1 -1
  120. package/dist/admin/components/CTBSession/CTBSessionProvider.js.map +1 -1
  121. package/dist/admin/components/CTBSession/CTBSessionProvider.mjs.map +1 -1
  122. package/dist/admin/components/CTBSession/sessionContext.js.map +1 -1
  123. package/dist/admin/components/CTBSession/sessionContext.mjs.map +1 -1
  124. package/dist/admin/components/CTBSession/useCTBSession.js.map +1 -1
  125. package/dist/admin/components/CTBSession/useCTBSession.mjs.map +1 -1
  126. package/dist/admin/components/CTBSession/useCTBTracking.js.map +1 -1
  127. package/dist/admin/components/CTBSession/useCTBTracking.mjs.map +1 -1
  128. package/dist/admin/components/CheckboxWithNumberField.js.map +1 -1
  129. package/dist/admin/components/CheckboxWithNumberField.mjs.map +1 -1
  130. package/dist/admin/components/ComponentCard/ComponentCard.js.map +1 -1
  131. package/dist/admin/components/ComponentCard/ComponentCard.mjs +1 -1
  132. package/dist/admin/components/ComponentCard/ComponentCard.mjs.map +1 -1
  133. package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.js.map +1 -1
  134. package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.mjs.map +1 -1
  135. package/dist/admin/components/ComponentList.js.map +1 -1
  136. package/dist/admin/components/ComponentList.mjs.map +1 -1
  137. package/dist/admin/components/ComponentRow.js.map +1 -1
  138. package/dist/admin/components/ComponentRow.mjs.map +1 -1
  139. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js.map +1 -1
  140. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs +2 -2
  141. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs.map +1 -1
  142. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js.map +1 -1
  143. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs.map +1 -1
  144. package/dist/admin/components/ContentTypeRadioGroup.js.map +1 -1
  145. package/dist/admin/components/ContentTypeRadioGroup.mjs.map +1 -1
  146. package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.js.map +1 -1
  147. package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.mjs.map +1 -1
  148. package/dist/admin/components/CustomRadioGroup/Styles.js.map +1 -1
  149. package/dist/admin/components/CustomRadioGroup/Styles.mjs +1 -1
  150. package/dist/admin/components/CustomRadioGroup/Styles.mjs.map +1 -1
  151. package/dist/admin/components/DataManager/DataManagerContext.js.map +1 -1
  152. package/dist/admin/components/DataManager/DataManagerContext.mjs.map +1 -1
  153. package/dist/admin/components/DataManager/DataManagerProvider.js.map +1 -1
  154. package/dist/admin/components/DataManager/DataManagerProvider.mjs +1 -1
  155. package/dist/admin/components/DataManager/DataManagerProvider.mjs.map +1 -1
  156. package/dist/admin/components/DataManager/reducer.js.map +1 -1
  157. package/dist/admin/components/DataManager/reducer.mjs.map +1 -1
  158. package/dist/admin/components/DataManager/undoRedo.js.map +1 -1
  159. package/dist/admin/components/DataManager/undoRedo.mjs.map +1 -1
  160. package/dist/admin/components/DataManager/useDataManager.js.map +1 -1
  161. package/dist/admin/components/DataManager/useDataManager.mjs.map +1 -1
  162. package/dist/admin/components/DataManager/useServerRestartWatcher.js.map +1 -1
  163. package/dist/admin/components/DataManager/useServerRestartWatcher.mjs.map +1 -1
  164. package/dist/admin/components/DataManager/utils/cleanData.js.map +1 -1
  165. package/dist/admin/components/DataManager/utils/cleanData.mjs.map +1 -1
  166. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.js.map +1 -1
  167. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.mjs.map +1 -1
  168. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.js.map +1 -1
  169. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.mjs.map +1 -1
  170. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.js.map +1 -1
  171. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.mjs.map +1 -1
  172. package/dist/admin/components/DisplayedType.js.map +1 -1
  173. package/dist/admin/components/DisplayedType.mjs.map +1 -1
  174. package/dist/admin/components/DraftAndPublishToggle.js.map +1 -1
  175. package/dist/admin/components/DraftAndPublishToggle.mjs.map +1 -1
  176. package/dist/admin/components/DynamicZoneList.js.map +1 -1
  177. package/dist/admin/components/DynamicZoneList.mjs +1 -1
  178. package/dist/admin/components/DynamicZoneList.mjs.map +1 -1
  179. package/dist/admin/components/ExitPrompt.js.map +1 -1
  180. package/dist/admin/components/ExitPrompt.mjs.map +1 -1
  181. package/dist/admin/components/Footers.js.map +1 -1
  182. package/dist/admin/components/Footers.mjs +2 -2
  183. package/dist/admin/components/Footers.mjs.map +1 -1
  184. package/dist/admin/components/FormModal/FormModal.js.map +1 -1
  185. package/dist/admin/components/FormModal/FormModal.mjs +1 -1
  186. package/dist/admin/components/FormModal/FormModal.mjs.map +1 -1
  187. package/dist/admin/components/FormModal/attributes/ConditionForm.js.map +1 -1
  188. package/dist/admin/components/FormModal/attributes/ConditionForm.mjs.map +1 -1
  189. package/dist/admin/components/FormModal/attributes/advancedForm.js.map +1 -1
  190. package/dist/admin/components/FormModal/attributes/advancedForm.mjs.map +1 -1
  191. package/dist/admin/components/FormModal/attributes/attributeOptions.js.map +1 -1
  192. package/dist/admin/components/FormModal/attributes/attributeOptions.mjs.map +1 -1
  193. package/dist/admin/components/FormModal/attributes/baseForm.js.map +1 -1
  194. package/dist/admin/components/FormModal/attributes/baseForm.mjs.map +1 -1
  195. package/dist/admin/components/FormModal/attributes/commonBaseForm.js.map +1 -1
  196. package/dist/admin/components/FormModal/attributes/commonBaseForm.mjs.map +1 -1
  197. package/dist/admin/components/FormModal/attributes/form.js.map +1 -1
  198. package/dist/admin/components/FormModal/attributes/form.mjs.map +1 -1
  199. package/dist/admin/components/FormModal/attributes/nameField.js.map +1 -1
  200. package/dist/admin/components/FormModal/attributes/nameField.mjs.map +1 -1
  201. package/dist/admin/components/FormModal/attributes/types.js.map +1 -1
  202. package/dist/admin/components/FormModal/attributes/types.mjs +1 -1
  203. package/dist/admin/components/FormModal/attributes/types.mjs.map +1 -1
  204. package/dist/admin/components/FormModal/attributes/validation/common.js.map +1 -1
  205. package/dist/admin/components/FormModal/attributes/validation/common.mjs.map +1 -1
  206. package/dist/admin/components/FormModal/component/componentField.js.map +1 -1
  207. package/dist/admin/components/FormModal/component/componentField.mjs.map +1 -1
  208. package/dist/admin/components/FormModal/component/componentForm.js.map +1 -1
  209. package/dist/admin/components/FormModal/component/componentForm.mjs.map +1 -1
  210. package/dist/admin/components/FormModal/component/createComponentSchema.js.map +1 -1
  211. package/dist/admin/components/FormModal/component/createComponentSchema.mjs.map +1 -1
  212. package/dist/admin/components/FormModal/contentType/contentTypeForm.js.map +1 -1
  213. package/dist/admin/components/FormModal/contentType/contentTypeForm.mjs.map +1 -1
  214. package/dist/admin/components/FormModal/contentType/createContentTypeSchema.js.map +1 -1
  215. package/dist/admin/components/FormModal/contentType/createContentTypeSchema.mjs.map +1 -1
  216. package/dist/admin/components/FormModal/dynamiczoneForm.js.map +1 -1
  217. package/dist/admin/components/FormModal/dynamiczoneForm.mjs.map +1 -1
  218. package/dist/admin/components/FormModal/forms/forms.js.map +1 -1
  219. package/dist/admin/components/FormModal/forms/forms.mjs.map +1 -1
  220. package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.js.map +1 -1
  221. package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.mjs.map +1 -1
  222. package/dist/admin/components/FormModal/forms/utils/createCollectionName.js.map +1 -1
  223. package/dist/admin/components/FormModal/forms/utils/createCollectionName.mjs.map +1 -1
  224. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.js.map +1 -1
  225. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.mjs.map +1 -1
  226. package/dist/admin/components/FormModal/reducer.js.map +1 -1
  227. package/dist/admin/components/FormModal/reducer.mjs.map +1 -1
  228. package/dist/admin/components/FormModal/utils/canEditContentType.js.map +1 -1
  229. package/dist/admin/components/FormModal/utils/canEditContentType.mjs.map +1 -1
  230. package/dist/admin/components/FormModal/utils/createUid.js.map +1 -1
  231. package/dist/admin/components/FormModal/utils/createUid.mjs.map +1 -1
  232. package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.js.map +1 -1
  233. package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.mjs.map +1 -1
  234. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.js.map +1 -1
  235. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.mjs.map +1 -1
  236. package/dist/admin/components/FormModal/utils/getFormInputNames.js.map +1 -1
  237. package/dist/admin/components/FormModal/utils/getFormInputNames.mjs.map +1 -1
  238. package/dist/admin/components/FormModal/utils/relations.js.map +1 -1
  239. package/dist/admin/components/FormModal/utils/relations.mjs.map +1 -1
  240. package/dist/admin/components/FormModalEndActions.js.map +1 -1
  241. package/dist/admin/components/FormModalEndActions.mjs.map +1 -1
  242. package/dist/admin/components/FormModalHeader.js.map +1 -1
  243. package/dist/admin/components/FormModalHeader.mjs.map +1 -1
  244. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.js.map +1 -1
  245. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.mjs.map +1 -1
  246. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js.map +1 -1
  247. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs.map +1 -1
  248. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.js.map +1 -1
  249. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.mjs.map +1 -1
  250. package/dist/admin/components/FormModalSubHeader.js.map +1 -1
  251. package/dist/admin/components/FormModalSubHeader.mjs.map +1 -1
  252. package/dist/admin/components/GenericInputs.js +1 -5
  253. package/dist/admin/components/GenericInputs.js.map +1 -1
  254. package/dist/admin/components/GenericInputs.mjs +1 -5
  255. package/dist/admin/components/GenericInputs.mjs.map +1 -1
  256. package/dist/admin/components/IconPicker/IconPicker.js.map +1 -1
  257. package/dist/admin/components/IconPicker/IconPicker.mjs +1 -1
  258. package/dist/admin/components/IconPicker/IconPicker.mjs.map +1 -1
  259. package/dist/admin/components/IconPicker/constants.js.map +1 -1
  260. package/dist/admin/components/IconPicker/constants.mjs.map +1 -1
  261. package/dist/admin/components/List.js.map +1 -1
  262. package/dist/admin/components/List.mjs +1 -1
  263. package/dist/admin/components/List.mjs.map +1 -1
  264. package/dist/admin/components/PluralName.js.map +1 -1
  265. package/dist/admin/components/PluralName.mjs.map +1 -1
  266. package/dist/admin/components/Relation/Relation.js.map +1 -1
  267. package/dist/admin/components/Relation/Relation.mjs.map +1 -1
  268. package/dist/admin/components/Relation/RelationField/RelationField.js.map +1 -1
  269. package/dist/admin/components/Relation/RelationField/RelationField.mjs.map +1 -1
  270. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js.map +1 -1
  271. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs.map +1 -1
  272. package/dist/admin/components/Relation/RelationNaturePicker/Components.js.map +1 -1
  273. package/dist/admin/components/Relation/RelationNaturePicker/Components.mjs.map +1 -1
  274. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js.map +1 -1
  275. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs +1 -1
  276. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs.map +1 -1
  277. package/dist/admin/components/SelectCategory.js.map +1 -1
  278. package/dist/admin/components/SelectCategory.mjs.map +1 -1
  279. package/dist/admin/components/SelectComponent.js.map +1 -1
  280. package/dist/admin/components/SelectComponent.mjs.map +1 -1
  281. package/dist/admin/components/SelectComponents.js.map +1 -1
  282. package/dist/admin/components/SelectComponents.mjs.map +1 -1
  283. package/dist/admin/components/SelectDateType.js.map +1 -1
  284. package/dist/admin/components/SelectDateType.mjs.map +1 -1
  285. package/dist/admin/components/SelectNumber.js.map +1 -1
  286. package/dist/admin/components/SelectNumber.mjs.map +1 -1
  287. package/dist/admin/components/SingularName.js.map +1 -1
  288. package/dist/admin/components/SingularName.mjs.map +1 -1
  289. package/dist/admin/components/Status.js.map +1 -1
  290. package/dist/admin/components/Status.mjs.map +1 -1
  291. package/dist/admin/components/TabForm.js.map +1 -1
  292. package/dist/admin/components/TabForm.mjs.map +1 -1
  293. package/dist/admin/components/TextareaEnum.js.map +1 -1
  294. package/dist/admin/components/TextareaEnum.mjs.map +1 -1
  295. package/dist/admin/constants.js.map +1 -1
  296. package/dist/admin/constants.mjs.map +1 -1
  297. package/dist/admin/icons/Curve.js.map +1 -1
  298. package/dist/admin/icons/Curve.mjs.map +1 -1
  299. package/dist/admin/index.js.map +1 -1
  300. package/dist/admin/index.mjs.map +1 -1
  301. package/dist/admin/pages/App/index.js.map +1 -1
  302. package/dist/admin/pages/App/index.mjs.map +1 -1
  303. package/dist/admin/pages/ListView/EmptyState.js.map +1 -1
  304. package/dist/admin/pages/ListView/EmptyState.mjs +1 -1
  305. package/dist/admin/pages/ListView/EmptyState.mjs.map +1 -1
  306. package/dist/admin/pages/ListView/LinkToCMSettingsView.js.map +1 -1
  307. package/dist/admin/pages/ListView/LinkToCMSettingsView.mjs.map +1 -1
  308. package/dist/admin/pages/ListView/ListView.js.map +1 -1
  309. package/dist/admin/pages/ListView/ListView.mjs +1 -1
  310. package/dist/admin/pages/ListView/ListView.mjs.map +1 -1
  311. package/dist/admin/reducers.js +4 -4
  312. package/dist/admin/reducers.js.map +1 -1
  313. package/dist/admin/reducers.mjs +4 -4
  314. package/dist/admin/reducers.mjs.map +1 -1
  315. package/dist/admin/translations/es.json.js +36 -3
  316. package/dist/admin/translations/es.json.js.map +1 -1
  317. package/dist/admin/translations/es.json.mjs +36 -3
  318. package/dist/admin/translations/es.json.mjs.map +1 -1
  319. package/dist/admin/utils/conditions.js.map +1 -1
  320. package/dist/admin/utils/conditions.mjs.map +1 -1
  321. package/dist/admin/utils/findAttribute.js.map +1 -1
  322. package/dist/admin/utils/findAttribute.mjs.map +1 -1
  323. package/dist/admin/utils/formAPI.js.map +1 -1
  324. package/dist/admin/utils/formAPI.mjs.map +1 -1
  325. package/dist/admin/utils/getAttributeDisplayedType.js.map +1 -1
  326. package/dist/admin/utils/getAttributeDisplayedType.mjs.map +1 -1
  327. package/dist/admin/utils/getMaxDepth.js.map +1 -1
  328. package/dist/admin/utils/getMaxDepth.mjs.map +1 -1
  329. package/dist/admin/utils/getRelationType.js.map +1 -1
  330. package/dist/admin/utils/getRelationType.mjs.map +1 -1
  331. package/dist/admin/utils/getTrad.js.map +1 -1
  332. package/dist/admin/utils/getTrad.mjs.map +1 -1
  333. package/dist/admin/utils/getYupInnerErrors.js.map +1 -1
  334. package/dist/admin/utils/getYupInnerErrors.mjs.map +1 -1
  335. package/dist/admin/utils/isAllowedContentTypesForRelations.js.map +1 -1
  336. package/dist/admin/utils/isAllowedContentTypesForRelations.mjs.map +1 -1
  337. package/dist/admin/utils/makeUnique.js.map +1 -1
  338. package/dist/admin/utils/makeUnique.mjs.map +1 -1
  339. package/dist/admin/utils/nameToSlug.js.map +1 -1
  340. package/dist/admin/utils/nameToSlug.mjs.map +1 -1
  341. package/dist/admin/utils/parseDateValue.js.map +1 -1
  342. package/dist/admin/utils/parseDateValue.mjs.map +1 -1
  343. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -1
  344. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -1
  345. package/dist/admin/utils/timeFormat.js.map +1 -1
  346. package/dist/admin/utils/timeFormat.mjs.map +1 -1
  347. package/dist/admin/utils/toRegressedEnumValue.js.map +1 -1
  348. package/dist/admin/utils/toRegressedEnumValue.mjs.map +1 -1
  349. package/dist/server/bootstrap.js.map +1 -1
  350. package/dist/server/bootstrap.mjs.map +1 -1
  351. package/dist/server/config.js.map +1 -1
  352. package/dist/server/config.mjs.map +1 -1
  353. package/dist/server/controllers/builder.js.map +1 -1
  354. package/dist/server/controllers/builder.mjs.map +1 -1
  355. package/dist/server/controllers/component-categories.js.map +1 -1
  356. package/dist/server/controllers/component-categories.mjs.map +1 -1
  357. package/dist/server/controllers/components.js.map +1 -1
  358. package/dist/server/controllers/components.mjs +1 -1
  359. package/dist/server/controllers/components.mjs.map +1 -1
  360. package/dist/server/controllers/content-types.js.map +1 -1
  361. package/dist/server/controllers/content-types.mjs +1 -1
  362. package/dist/server/controllers/content-types.mjs.map +1 -1
  363. package/dist/server/controllers/index.js.map +1 -1
  364. package/dist/server/controllers/index.mjs.map +1 -1
  365. package/dist/server/controllers/schema.js.map +1 -1
  366. package/dist/server/controllers/schema.mjs.map +1 -1
  367. package/dist/server/controllers/validation/common.js.map +1 -1
  368. package/dist/server/controllers/validation/common.mjs.map +1 -1
  369. package/dist/server/controllers/validation/component-category.js.map +1 -1
  370. package/dist/server/controllers/validation/component-category.mjs.map +1 -1
  371. package/dist/server/controllers/validation/component.js.map +1 -1
  372. package/dist/server/controllers/validation/component.mjs +1 -1
  373. package/dist/server/controllers/validation/component.mjs.map +1 -1
  374. package/dist/server/controllers/validation/content-type.js.map +1 -1
  375. package/dist/server/controllers/validation/content-type.mjs.map +1 -1
  376. package/dist/server/controllers/validation/data-transform.js.map +1 -1
  377. package/dist/server/controllers/validation/data-transform.mjs.map +1 -1
  378. package/dist/server/controllers/validation/model-schema.js.map +1 -1
  379. package/dist/server/controllers/validation/model-schema.mjs.map +1 -1
  380. package/dist/server/controllers/validation/relations.js.map +1 -1
  381. package/dist/server/controllers/validation/relations.mjs.map +1 -1
  382. package/dist/server/controllers/validation/schema.js.map +1 -1
  383. package/dist/server/controllers/validation/schema.mjs +1 -1
  384. package/dist/server/controllers/validation/schema.mjs.map +1 -1
  385. package/dist/server/controllers/validation/types.js +0 -1
  386. package/dist/server/controllers/validation/types.js.map +1 -1
  387. package/dist/server/controllers/validation/types.mjs +1 -2
  388. package/dist/server/controllers/validation/types.mjs.map +1 -1
  389. package/dist/server/index.js +8 -8
  390. package/dist/server/middlewares/is-development-mode.js.map +1 -1
  391. package/dist/server/middlewares/is-development-mode.mjs.map +1 -1
  392. package/dist/server/register.js.map +1 -1
  393. package/dist/server/register.mjs.map +1 -1
  394. package/dist/server/routes/admin.js.map +1 -1
  395. package/dist/server/routes/admin.mjs.map +1 -1
  396. package/dist/server/routes/content-api.js.map +1 -1
  397. package/dist/server/routes/content-api.mjs.map +1 -1
  398. package/dist/server/routes/index.js.map +1 -1
  399. package/dist/server/routes/index.mjs.map +1 -1
  400. package/dist/server/services/api-handler.js.map +1 -1
  401. package/dist/server/services/api-handler.mjs.map +1 -1
  402. package/dist/server/services/builder.js.map +1 -1
  403. package/dist/server/services/builder.mjs.map +1 -1
  404. package/dist/server/services/component-categories.js.map +1 -1
  405. package/dist/server/services/component-categories.mjs +1 -1
  406. package/dist/server/services/component-categories.mjs.map +1 -1
  407. package/dist/server/services/components.js.map +1 -1
  408. package/dist/server/services/components.mjs +1 -1
  409. package/dist/server/services/components.mjs.map +1 -1
  410. package/dist/server/services/constants.js.map +1 -1
  411. package/dist/server/services/constants.mjs.map +1 -1
  412. package/dist/server/services/content-types.js.map +1 -1
  413. package/dist/server/services/content-types.mjs +1 -1
  414. package/dist/server/services/content-types.mjs.map +1 -1
  415. package/dist/server/services/index.js.map +1 -1
  416. package/dist/server/services/index.mjs.map +1 -1
  417. package/dist/server/services/schema-builder/component-builder.js.map +1 -1
  418. package/dist/server/services/schema-builder/component-builder.mjs +1 -1
  419. package/dist/server/services/schema-builder/component-builder.mjs.map +1 -1
  420. package/dist/server/services/schema-builder/content-type-builder.js.map +1 -1
  421. package/dist/server/services/schema-builder/content-type-builder.mjs +2 -2
  422. package/dist/server/services/schema-builder/content-type-builder.mjs.map +1 -1
  423. package/dist/server/services/schema-builder/index.js.map +1 -1
  424. package/dist/server/services/schema-builder/index.mjs +3 -3
  425. package/dist/server/services/schema-builder/index.mjs.map +1 -1
  426. package/dist/server/services/schema-builder/schema-handler.js.map +1 -1
  427. package/dist/server/services/schema-builder/schema-handler.mjs.map +1 -1
  428. package/dist/server/services/schema.js.map +1 -1
  429. package/dist/server/services/schema.mjs +1 -1
  430. package/dist/server/services/schema.mjs.map +1 -1
  431. package/dist/server/utils/attributes.js.map +1 -1
  432. package/dist/server/utils/attributes.mjs.map +1 -1
  433. package/dist/server/utils/index.js.map +1 -1
  434. package/dist/server/utils/index.mjs.map +1 -1
  435. package/dist/server/utils/typeguards.js.map +1 -1
  436. package/dist/server/utils/typeguards.mjs.map +1 -1
  437. package/package.json +15 -10
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeOptions.mjs","sources":["../../../../admin/src/components/AttributeOptions/AttributeOptions.tsx"],"sourcesContent":["/**\n *\n * AttributeOptions\n *\n */\n\nimport { Divider, Flex, Modal, Tabs, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../utils';\nimport { IconByType } from '../AttributeIcon';\n\nimport { AttributeList } from './AttributeList';\nimport { CustomFieldsList } from './CustomFieldsList';\n\ntype AttributeOptionsProps = {\n attributes: IconByType[][];\n forTarget: string;\n kind: string;\n};\n\nexport const AttributeOptions = ({ attributes, forTarget, kind }: AttributeOptionsProps) => {\n const { formatMessage } = useIntl();\n\n const defaultTabId = getTrad('modalForm.tabs.default');\n const customTabId = getTrad('modalForm.tabs.custom');\n\n const titleIdSuffix = forTarget.includes('component') ? 'component' : kind;\n const titleId = getTrad(`modalForm.sub-header.chooseAttribute.${titleIdSuffix}`);\n\n return (\n <Modal.Body>\n <Tabs.Root variant=\"simple\" defaultValue=\"default\">\n <Flex justifyContent=\"space-between\">\n <Typography variant=\"beta\" tag=\"h2\">\n {formatMessage({ id: titleId, defaultMessage: 'Select a field' })}\n </Typography>\n <Tabs.List>\n <Tabs.Trigger value=\"default\">\n {formatMessage({ id: defaultTabId, defaultMessage: 'Default' })}\n </Tabs.Trigger>\n <Tabs.Trigger value=\"custom\">\n {formatMessage({ id: customTabId, defaultMessage: 'Custom' })}\n </Tabs.Trigger>\n </Tabs.List>\n </Flex>\n <Divider marginBottom={6} />\n <Tabs.Content value=\"default\">\n <AttributeList attributes={attributes} />\n </Tabs.Content>\n <Tabs.Content value=\"custom\">\n <CustomFieldsList />\n </Tabs.Content>\n </Tabs.Root>\n </Modal.Body>\n );\n};\n"],"names":["AttributeOptions","attributes","forTarget","kind","formatMessage","useIntl","defaultTabId","getTrad","customTabId","titleIdSuffix","includes","titleId","_jsx","Modal","Body","_jsxs","Tabs","Root","variant","defaultValue","Flex","justifyContent","Typography","tag","id","defaultMessage","List","Trigger","value","Divider","marginBottom","Content","AttributeList","CustomFieldsList"],"mappings":";;;;;;;AAqBO,MAAMA,mBAAmB,CAAC,EAAEC,UAAU,EAAEC,SAAS,EAAEC,IAAI,EAAyB,GAAA;IACrF,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,MAAMC,eAAeC,OAAQ,CAAA,wBAAA,CAAA;AAC7B,IAAA,MAAMC,cAAcD,OAAQ,CAAA,uBAAA,CAAA;AAE5B,IAAA,MAAME,aAAgBP,GAAAA,SAAAA,CAAUQ,QAAQ,CAAC,eAAe,WAAcP,GAAAA,IAAAA;AACtE,IAAA,MAAMQ,OAAUJ,GAAAA,OAAAA,CAAQ,CAAC,qCAAqC,EAAEE,aAAe,CAAA,CAAA,CAAA;IAE/E,qBACEG,GAAA,CAACC,MAAMC,IAAI,EAAA;gCACTC,IAAA,CAACC,KAAKC,IAAI,EAAA;YAACC,OAAQ,EAAA,QAAA;YAASC,YAAa,EAAA,SAAA;;8BACvCJ,IAACK,CAAAA,IAAAA,EAAAA;oBAAKC,cAAe,EAAA,eAAA;;sCACnBT,GAACU,CAAAA,UAAAA,EAAAA;4BAAWJ,OAAQ,EAAA,MAAA;4BAAOK,GAAI,EAAA,IAAA;sCAC5BnB,aAAc,CAAA;gCAAEoB,EAAIb,EAAAA,OAAAA;gCAASc,cAAgB,EAAA;AAAiB,6BAAA;;AAEjE,sCAAAV,IAAA,CAACC,KAAKU,IAAI,EAAA;;AACR,8CAAAd,GAAA,CAACI,KAAKW,OAAO,EAAA;oCAACC,KAAM,EAAA,SAAA;8CACjBxB,aAAc,CAAA;wCAAEoB,EAAIlB,EAAAA,YAAAA;wCAAcmB,cAAgB,EAAA;AAAU,qCAAA;;AAE/D,8CAAAb,GAAA,CAACI,KAAKW,OAAO,EAAA;oCAACC,KAAM,EAAA,QAAA;8CACjBxB,aAAc,CAAA;wCAAEoB,EAAIhB,EAAAA,WAAAA;wCAAaiB,cAAgB,EAAA;AAAS,qCAAA;;;;;;8BAIjEb,GAACiB,CAAAA,OAAAA,EAAAA;oBAAQC,YAAc,EAAA;;AACvB,8BAAAlB,GAAA,CAACI,KAAKe,OAAO,EAAA;oBAACH,KAAM,EAAA,SAAA;AAClB,oBAAA,QAAA,gBAAAhB,GAACoB,CAAAA,aAAAA,EAAAA;wBAAc/B,UAAYA,EAAAA;;;AAE7B,8BAAAW,GAAA,CAACI,KAAKe,OAAO,EAAA;oBAACH,KAAM,EAAA,QAAA;AAClB,oBAAA,QAAA,gBAAAhB,GAACqB,CAAAA,gBAAAA,EAAAA,EAAAA;;;;;AAKX;;;;"}
1
+ {"version":3,"file":"AttributeOptions.mjs","sources":["../../../../admin/src/components/AttributeOptions/AttributeOptions.tsx"],"sourcesContent":["/**\n *\n * AttributeOptions\n *\n */\n\nimport { Divider, Flex, Modal, Tabs, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../utils';\nimport { IconByType } from '../AttributeIcon';\n\nimport { AttributeList } from './AttributeList';\nimport { CustomFieldsList } from './CustomFieldsList';\n\ntype AttributeOptionsProps = {\n attributes: IconByType[][];\n forTarget: string;\n kind: string;\n};\n\nexport const AttributeOptions = ({ attributes, forTarget, kind }: AttributeOptionsProps) => {\n const { formatMessage } = useIntl();\n\n const defaultTabId = getTrad('modalForm.tabs.default');\n const customTabId = getTrad('modalForm.tabs.custom');\n\n const titleIdSuffix = forTarget.includes('component') ? 'component' : kind;\n const titleId = getTrad(`modalForm.sub-header.chooseAttribute.${titleIdSuffix}`);\n\n return (\n <Modal.Body>\n <Tabs.Root variant=\"simple\" defaultValue=\"default\">\n <Flex justifyContent=\"space-between\">\n <Typography variant=\"beta\" tag=\"h2\">\n {formatMessage({ id: titleId, defaultMessage: 'Select a field' })}\n </Typography>\n <Tabs.List>\n <Tabs.Trigger value=\"default\">\n {formatMessage({ id: defaultTabId, defaultMessage: 'Default' })}\n </Tabs.Trigger>\n <Tabs.Trigger value=\"custom\">\n {formatMessage({ id: customTabId, defaultMessage: 'Custom' })}\n </Tabs.Trigger>\n </Tabs.List>\n </Flex>\n <Divider marginBottom={6} />\n <Tabs.Content value=\"default\">\n <AttributeList attributes={attributes} />\n </Tabs.Content>\n <Tabs.Content value=\"custom\">\n <CustomFieldsList />\n </Tabs.Content>\n </Tabs.Root>\n </Modal.Body>\n );\n};\n"],"names":["AttributeOptions","attributes","forTarget","kind","formatMessage","useIntl","defaultTabId","getTrad","customTabId","titleIdSuffix","includes","titleId","_jsx","Modal","Body","_jsxs","Tabs","Root","variant","defaultValue","Flex","justifyContent","Typography","tag","id","defaultMessage","List","Trigger","value","Divider","marginBottom","Content","AttributeList","CustomFieldsList"],"mappings":";;;;;;;AAqBO,MAAMA,mBAAmB,CAAC,EAAEC,UAAU,EAAEC,SAAS,EAAEC,IAAI,EAAyB,GAAA;IACrF,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,MAAMC,eAAeC,OAAAA,CAAQ,wBAAA,CAAA;AAC7B,IAAA,MAAMC,cAAcD,OAAAA,CAAQ,uBAAA,CAAA;AAE5B,IAAA,MAAME,aAAAA,GAAgBP,SAAAA,CAAUQ,QAAQ,CAAC,eAAe,WAAA,GAAcP,IAAAA;AACtE,IAAA,MAAMQ,OAAAA,GAAUJ,OAAAA,CAAQ,CAAC,qCAAqC,EAAEE,aAAAA,CAAAA,CAAe,CAAA;IAE/E,qBACEG,GAAA,CAACC,MAAMC,IAAI,EAAA;gCACTC,IAAA,CAACC,KAAKC,IAAI,EAAA;YAACC,OAAAA,EAAQ,QAAA;YAASC,YAAAA,EAAa,SAAA;;8BACvCJ,IAAA,CAACK,IAAAA,EAAAA;oBAAKC,cAAAA,EAAe,eAAA;;sCACnBT,GAAA,CAACU,UAAAA,EAAAA;4BAAWJ,OAAAA,EAAQ,MAAA;4BAAOK,GAAAA,EAAI,IAAA;sCAC5BnB,aAAAA,CAAc;gCAAEoB,EAAAA,EAAIb,OAAAA;gCAASc,cAAAA,EAAgB;AAAiB,6BAAA;;AAEjE,sCAAAV,IAAA,CAACC,KAAKU,IAAI,EAAA;;AACR,8CAAAd,GAAA,CAACI,KAAKW,OAAO,EAAA;oCAACC,KAAAA,EAAM,SAAA;8CACjBxB,aAAAA,CAAc;wCAAEoB,EAAAA,EAAIlB,YAAAA;wCAAcmB,cAAAA,EAAgB;AAAU,qCAAA;;AAE/D,8CAAAb,GAAA,CAACI,KAAKW,OAAO,EAAA;oCAACC,KAAAA,EAAM,QAAA;8CACjBxB,aAAAA,CAAc;wCAAEoB,EAAAA,EAAIhB,WAAAA;wCAAaiB,cAAAA,EAAgB;AAAS,qCAAA;;;;;;8BAIjEb,GAAA,CAACiB,OAAAA,EAAAA;oBAAQC,YAAAA,EAAc;;AACvB,8BAAAlB,GAAA,CAACI,KAAKe,OAAO,EAAA;oBAACH,KAAAA,EAAM,SAAA;AAClB,oBAAA,QAAA,gBAAAhB,GAAA,CAACoB,aAAAA,EAAAA;wBAAc/B,UAAAA,EAAYA;;;AAE7B,8BAAAW,GAAA,CAACI,KAAKe,OAAO,EAAA;oBAACH,KAAAA,EAAM,QAAA;AAClB,oBAAA,QAAA,gBAAAhB,GAAA,CAACqB,gBAAAA,EAAAA,EAAAA;;;;;AAKX;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomFieldOption.js","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldOption.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { AttributeIcon, IconByType } from '../AttributeIcon';\nimport { useFormModalNavigation } from '../FormModalNavigation/useFormModalNavigation';\n\nimport { OptionBoxWrapper } from './OptionBoxWrapper';\n\nexport type CustomFieldOption = {\n name: string;\n type: IconByType;\n icon: React.ComponentType;\n intlLabel: {\n id: string;\n defaultMessage: string;\n };\n intlDescription: {\n id: string;\n defaultMessage: string;\n };\n};\n\ntype CustomFieldOptionProps = {\n customFieldUid: string;\n customField: NonNullable<ReturnType<StrapiAppContextValue['customFields']['get']>>;\n};\n\nexport const CustomFieldOption = ({ customFieldUid, customField }: CustomFieldOptionProps) => {\n const { type, intlLabel, intlDescription } = customField;\n const { formatMessage } = useIntl();\n\n const { onClickSelectCustomField } = useFormModalNavigation();\n\n const handleClick = () => {\n onClickSelectCustomField({\n attributeType: type,\n customFieldUid,\n });\n };\n\n return (\n <OptionBoxWrapper padding={4} tag=\"button\" hasRadius type=\"button\" onClick={handleClick}>\n <Flex>\n <AttributeIcon type={type} customField={customFieldUid} />\n <Box paddingLeft={4}>\n <Flex>\n <Typography fontWeight=\"bold\" textColor=\"neutral800\">\n {formatMessage(intlLabel)}\n </Typography>\n </Flex>\n <Flex>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage(intlDescription)}\n </Typography>\n </Flex>\n </Box>\n </Flex>\n </OptionBoxWrapper>\n );\n};\n"],"names":["CustomFieldOption","customFieldUid","customField","type","intlLabel","intlDescription","formatMessage","useIntl","onClickSelectCustomField","useFormModalNavigation","handleClick","attributeType","_jsx","OptionBoxWrapper","padding","tag","hasRadius","onClick","_jsxs","Flex","AttributeIcon","Box","paddingLeft","Typography","fontWeight","textColor","variant"],"mappings":";;;;;;;;;;MA8BaA,iBAAoB,GAAA,CAAC,EAAEC,cAAc,EAAEC,WAAW,EAA0B,GAAA;AACvF,IAAA,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAEC,eAAe,EAAE,GAAGH,WAAAA;IAC7C,MAAM,EAAEI,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAE1B,MAAM,EAAEC,wBAAwB,EAAE,GAAGC,6CAAAA,EAAAA;AAErC,IAAA,MAAMC,WAAc,GAAA,IAAA;QAClBF,wBAAyB,CAAA;YACvBG,aAAeR,EAAAA,IAAAA;AACfF,YAAAA;AACF,SAAA,CAAA;AACF,KAAA;AAEA,IAAA,qBACEW,cAACC,CAAAA,iCAAAA,EAAAA;QAAiBC,OAAS,EAAA,CAAA;QAAGC,GAAI,EAAA,QAAA;QAASC,SAAS,EAAA,IAAA;QAACb,IAAK,EAAA,QAAA;QAASc,OAASP,EAAAA,WAAAA;AAC1E,QAAA,QAAA,gBAAAQ,eAACC,CAAAA,iBAAAA,EAAAA;;8BACCP,cAACQ,CAAAA,2BAAAA,EAAAA;oBAAcjB,IAAMA,EAAAA,IAAAA;oBAAMD,WAAaD,EAAAA;;8BACxCiB,eAACG,CAAAA,gBAAAA,EAAAA;oBAAIC,WAAa,EAAA,CAAA;;sCAChBV,cAACO,CAAAA,iBAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,cAACW,CAAAA,uBAAAA,EAAAA;gCAAWC,UAAW,EAAA,MAAA;gCAAOC,SAAU,EAAA,YAAA;0CACrCnB,aAAcF,CAAAA,SAAAA;;;sCAGnBQ,cAACO,CAAAA,iBAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,cAACW,CAAAA,uBAAAA,EAAAA;gCAAWG,OAAQ,EAAA,IAAA;gCAAKD,SAAU,EAAA,YAAA;0CAChCnB,aAAcD,CAAAA,eAAAA;;;;;;;;AAO7B;;;;"}
1
+ {"version":3,"file":"CustomFieldOption.js","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldOption.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { AttributeIcon, IconByType } from '../AttributeIcon';\nimport { useFormModalNavigation } from '../FormModalNavigation/useFormModalNavigation';\n\nimport { OptionBoxWrapper } from './OptionBoxWrapper';\n\nexport type CustomFieldOption = {\n name: string;\n type: IconByType;\n icon: React.ComponentType;\n intlLabel: {\n id: string;\n defaultMessage: string;\n };\n intlDescription: {\n id: string;\n defaultMessage: string;\n };\n};\n\ntype CustomFieldOptionProps = {\n customFieldUid: string;\n customField: NonNullable<ReturnType<StrapiAppContextValue['customFields']['get']>>;\n};\n\nexport const CustomFieldOption = ({ customFieldUid, customField }: CustomFieldOptionProps) => {\n const { type, intlLabel, intlDescription } = customField;\n const { formatMessage } = useIntl();\n\n const { onClickSelectCustomField } = useFormModalNavigation();\n\n const handleClick = () => {\n onClickSelectCustomField({\n attributeType: type,\n customFieldUid,\n });\n };\n\n return (\n <OptionBoxWrapper padding={4} tag=\"button\" hasRadius type=\"button\" onClick={handleClick}>\n <Flex>\n <AttributeIcon type={type} customField={customFieldUid} />\n <Box paddingLeft={4}>\n <Flex>\n <Typography fontWeight=\"bold\" textColor=\"neutral800\">\n {formatMessage(intlLabel)}\n </Typography>\n </Flex>\n <Flex>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage(intlDescription)}\n </Typography>\n </Flex>\n </Box>\n </Flex>\n </OptionBoxWrapper>\n );\n};\n"],"names":["CustomFieldOption","customFieldUid","customField","type","intlLabel","intlDescription","formatMessage","useIntl","onClickSelectCustomField","useFormModalNavigation","handleClick","attributeType","_jsx","OptionBoxWrapper","padding","tag","hasRadius","onClick","_jsxs","Flex","AttributeIcon","Box","paddingLeft","Typography","fontWeight","textColor","variant"],"mappings":";;;;;;;;;;MA8BaA,iBAAAA,GAAoB,CAAC,EAAEC,cAAc,EAAEC,WAAW,EAA0B,GAAA;AACvF,IAAA,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAEC,eAAe,EAAE,GAAGH,WAAAA;IAC7C,MAAM,EAAEI,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAE1B,MAAM,EAAEC,wBAAwB,EAAE,GAAGC,6CAAAA,EAAAA;AAErC,IAAA,MAAMC,WAAAA,GAAc,IAAA;QAClBF,wBAAAA,CAAyB;YACvBG,aAAAA,EAAeR,IAAAA;AACfF,YAAAA;AACF,SAAA,CAAA;AACF,IAAA,CAAA;AAEA,IAAA,qBACEW,cAAA,CAACC,iCAAAA,EAAAA;QAAiBC,OAAAA,EAAS,CAAA;QAAGC,GAAAA,EAAI,QAAA;QAASC,SAAS,EAAA,IAAA;QAACb,IAAAA,EAAK,QAAA;QAASc,OAAAA,EAASP,WAAAA;AAC1E,QAAA,QAAA,gBAAAQ,eAAA,CAACC,iBAAAA,EAAAA;;8BACCP,cAAA,CAACQ,2BAAAA,EAAAA;oBAAcjB,IAAAA,EAAMA,IAAAA;oBAAMD,WAAAA,EAAaD;;8BACxCiB,eAAA,CAACG,gBAAAA,EAAAA;oBAAIC,WAAAA,EAAa,CAAA;;sCAChBV,cAAA,CAACO,iBAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,cAAA,CAACW,uBAAAA,EAAAA;gCAAWC,UAAAA,EAAW,MAAA;gCAAOC,SAAAA,EAAU,YAAA;0CACrCnB,aAAAA,CAAcF,SAAAA;;;sCAGnBQ,cAAA,CAACO,iBAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,cAAA,CAACW,uBAAAA,EAAAA;gCAAWG,OAAAA,EAAQ,IAAA;gCAAKD,SAAAA,EAAU,YAAA;0CAChCnB,aAAAA,CAAcD,eAAAA;;;;;;;;AAO7B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomFieldOption.mjs","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldOption.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { AttributeIcon, IconByType } from '../AttributeIcon';\nimport { useFormModalNavigation } from '../FormModalNavigation/useFormModalNavigation';\n\nimport { OptionBoxWrapper } from './OptionBoxWrapper';\n\nexport type CustomFieldOption = {\n name: string;\n type: IconByType;\n icon: React.ComponentType;\n intlLabel: {\n id: string;\n defaultMessage: string;\n };\n intlDescription: {\n id: string;\n defaultMessage: string;\n };\n};\n\ntype CustomFieldOptionProps = {\n customFieldUid: string;\n customField: NonNullable<ReturnType<StrapiAppContextValue['customFields']['get']>>;\n};\n\nexport const CustomFieldOption = ({ customFieldUid, customField }: CustomFieldOptionProps) => {\n const { type, intlLabel, intlDescription } = customField;\n const { formatMessage } = useIntl();\n\n const { onClickSelectCustomField } = useFormModalNavigation();\n\n const handleClick = () => {\n onClickSelectCustomField({\n attributeType: type,\n customFieldUid,\n });\n };\n\n return (\n <OptionBoxWrapper padding={4} tag=\"button\" hasRadius type=\"button\" onClick={handleClick}>\n <Flex>\n <AttributeIcon type={type} customField={customFieldUid} />\n <Box paddingLeft={4}>\n <Flex>\n <Typography fontWeight=\"bold\" textColor=\"neutral800\">\n {formatMessage(intlLabel)}\n </Typography>\n </Flex>\n <Flex>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage(intlDescription)}\n </Typography>\n </Flex>\n </Box>\n </Flex>\n </OptionBoxWrapper>\n );\n};\n"],"names":["CustomFieldOption","customFieldUid","customField","type","intlLabel","intlDescription","formatMessage","useIntl","onClickSelectCustomField","useFormModalNavigation","handleClick","attributeType","_jsx","OptionBoxWrapper","padding","tag","hasRadius","onClick","_jsxs","Flex","AttributeIcon","Box","paddingLeft","Typography","fontWeight","textColor","variant"],"mappings":";;;;;;;;MA8BaA,iBAAoB,GAAA,CAAC,EAAEC,cAAc,EAAEC,WAAW,EAA0B,GAAA;AACvF,IAAA,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAEC,eAAe,EAAE,GAAGH,WAAAA;IAC7C,MAAM,EAAEI,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAE1B,MAAM,EAAEC,wBAAwB,EAAE,GAAGC,sBAAAA,EAAAA;AAErC,IAAA,MAAMC,WAAc,GAAA,IAAA;QAClBF,wBAAyB,CAAA;YACvBG,aAAeR,EAAAA,IAAAA;AACfF,YAAAA;AACF,SAAA,CAAA;AACF,KAAA;AAEA,IAAA,qBACEW,GAACC,CAAAA,gBAAAA,EAAAA;QAAiBC,OAAS,EAAA,CAAA;QAAGC,GAAI,EAAA,QAAA;QAASC,SAAS,EAAA,IAAA;QAACb,IAAK,EAAA,QAAA;QAASc,OAASP,EAAAA,WAAAA;AAC1E,QAAA,QAAA,gBAAAQ,IAACC,CAAAA,IAAAA,EAAAA;;8BACCP,GAACQ,CAAAA,aAAAA,EAAAA;oBAAcjB,IAAMA,EAAAA,IAAAA;oBAAMD,WAAaD,EAAAA;;8BACxCiB,IAACG,CAAAA,GAAAA,EAAAA;oBAAIC,WAAa,EAAA,CAAA;;sCAChBV,GAACO,CAAAA,IAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,GAACW,CAAAA,UAAAA,EAAAA;gCAAWC,UAAW,EAAA,MAAA;gCAAOC,SAAU,EAAA,YAAA;0CACrCnB,aAAcF,CAAAA,SAAAA;;;sCAGnBQ,GAACO,CAAAA,IAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,GAACW,CAAAA,UAAAA,EAAAA;gCAAWG,OAAQ,EAAA,IAAA;gCAAKD,SAAU,EAAA,YAAA;0CAChCnB,aAAcD,CAAAA,eAAAA;;;;;;;;AAO7B;;;;"}
1
+ {"version":3,"file":"CustomFieldOption.mjs","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldOption.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { AttributeIcon, IconByType } from '../AttributeIcon';\nimport { useFormModalNavigation } from '../FormModalNavigation/useFormModalNavigation';\n\nimport { OptionBoxWrapper } from './OptionBoxWrapper';\n\nexport type CustomFieldOption = {\n name: string;\n type: IconByType;\n icon: React.ComponentType;\n intlLabel: {\n id: string;\n defaultMessage: string;\n };\n intlDescription: {\n id: string;\n defaultMessage: string;\n };\n};\n\ntype CustomFieldOptionProps = {\n customFieldUid: string;\n customField: NonNullable<ReturnType<StrapiAppContextValue['customFields']['get']>>;\n};\n\nexport const CustomFieldOption = ({ customFieldUid, customField }: CustomFieldOptionProps) => {\n const { type, intlLabel, intlDescription } = customField;\n const { formatMessage } = useIntl();\n\n const { onClickSelectCustomField } = useFormModalNavigation();\n\n const handleClick = () => {\n onClickSelectCustomField({\n attributeType: type,\n customFieldUid,\n });\n };\n\n return (\n <OptionBoxWrapper padding={4} tag=\"button\" hasRadius type=\"button\" onClick={handleClick}>\n <Flex>\n <AttributeIcon type={type} customField={customFieldUid} />\n <Box paddingLeft={4}>\n <Flex>\n <Typography fontWeight=\"bold\" textColor=\"neutral800\">\n {formatMessage(intlLabel)}\n </Typography>\n </Flex>\n <Flex>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage(intlDescription)}\n </Typography>\n </Flex>\n </Box>\n </Flex>\n </OptionBoxWrapper>\n );\n};\n"],"names":["CustomFieldOption","customFieldUid","customField","type","intlLabel","intlDescription","formatMessage","useIntl","onClickSelectCustomField","useFormModalNavigation","handleClick","attributeType","_jsx","OptionBoxWrapper","padding","tag","hasRadius","onClick","_jsxs","Flex","AttributeIcon","Box","paddingLeft","Typography","fontWeight","textColor","variant"],"mappings":";;;;;;;;MA8BaA,iBAAAA,GAAoB,CAAC,EAAEC,cAAc,EAAEC,WAAW,EAA0B,GAAA;AACvF,IAAA,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAEC,eAAe,EAAE,GAAGH,WAAAA;IAC7C,MAAM,EAAEI,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAE1B,MAAM,EAAEC,wBAAwB,EAAE,GAAGC,sBAAAA,EAAAA;AAErC,IAAA,MAAMC,WAAAA,GAAc,IAAA;QAClBF,wBAAAA,CAAyB;YACvBG,aAAAA,EAAeR,IAAAA;AACfF,YAAAA;AACF,SAAA,CAAA;AACF,IAAA,CAAA;AAEA,IAAA,qBACEW,GAAA,CAACC,gBAAAA,EAAAA;QAAiBC,OAAAA,EAAS,CAAA;QAAGC,GAAAA,EAAI,QAAA;QAASC,SAAS,EAAA,IAAA;QAACb,IAAAA,EAAK,QAAA;QAASc,OAAAA,EAASP,WAAAA;AAC1E,QAAA,QAAA,gBAAAQ,IAAA,CAACC,IAAAA,EAAAA;;8BACCP,GAAA,CAACQ,aAAAA,EAAAA;oBAAcjB,IAAAA,EAAMA,IAAAA;oBAAMD,WAAAA,EAAaD;;8BACxCiB,IAAA,CAACG,GAAAA,EAAAA;oBAAIC,WAAAA,EAAa,CAAA;;sCAChBV,GAAA,CAACO,IAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,GAAA,CAACW,UAAAA,EAAAA;gCAAWC,UAAAA,EAAW,MAAA;gCAAOC,SAAAA,EAAU,YAAA;0CACrCnB,aAAAA,CAAcF,SAAAA;;;sCAGnBQ,GAAA,CAACO,IAAAA,EAAAA;AACC,4BAAA,QAAA,gBAAAP,GAAA,CAACW,UAAAA,EAAAA;gCAAWG,OAAAA,EAAQ,IAAA;gCAAKD,SAAAA,EAAU,YAAA;0CAChCnB,aAAAA,CAAcD,eAAAA;;;;;;;;AAO7B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomFieldsList.js","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldsList.tsx"],"sourcesContent":["import { useStrapiApp } from '@strapi/admin/strapi-admin';\nimport { Flex, Grid, KeyboardNavigable, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../utils';\n\nimport { CustomFieldOption } from './CustomFieldOption';\nimport { EmptyAttributes } from './EmptyAttributes';\n\nexport const CustomFieldsList = () => {\n const { formatMessage } = useIntl();\n const getAllCustomFields = useStrapiApp('CustomFieldsList', (state) => state.customFields.getAll);\n // TODO change this once useCustomFields is typed (helper-plugin types are solved)\n const registeredCustomFields = Object.entries(getAllCustomFields());\n\n if (!registeredCustomFields.length) {\n return <EmptyAttributes />;\n }\n\n // Sort the array alphabetically by customField name\n const sortedCustomFields = registeredCustomFields.sort((a, b) =>\n a[1].name > b[1].name ? 1 : -1\n );\n\n return (\n <KeyboardNavigable tagName=\"button\">\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Grid.Root gap={3}>\n {sortedCustomFields.map(([uid, customField]) => (\n <Grid.Item key={uid} col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <CustomFieldOption key={uid} customFieldUid={uid} customField={customField} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Link\n href=\"https://docs.strapi.io/developer-docs/latest/development/custom-fields.html\"\n isExternal\n >\n {formatMessage({\n id: getTrad('modalForm.tabs.custom.howToLink'),\n defaultMessage: 'How to add custom fields',\n })}\n </Link>\n </Flex>\n </KeyboardNavigable>\n );\n};\n"],"names":["CustomFieldsList","formatMessage","useIntl","getAllCustomFields","useStrapiApp","state","customFields","getAll","registeredCustomFields","Object","entries","length","_jsx","EmptyAttributes","sortedCustomFields","sort","a","b","name","KeyboardNavigable","tagName","_jsxs","Flex","direction","alignItems","gap","Grid","Root","map","uid","customField","Item","col","xs","CustomFieldOption","customFieldUid","Link","href","isExternal","id","getTrad","defaultMessage"],"mappings":";;;;;;;;;;MASaA,gBAAmB,GAAA,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAMC,kBAAAA,GAAqBC,yBAAa,kBAAoB,EAAA,CAACC,QAAUA,KAAMC,CAAAA,YAAY,CAACC,MAAM,CAAA;;IAEhG,MAAMC,sBAAAA,GAAyBC,MAAOC,CAAAA,OAAO,CAACP,kBAAAA,EAAAA,CAAAA;IAE9C,IAAI,CAACK,sBAAuBG,CAAAA,MAAM,EAAE;AAClC,QAAA,qBAAOC,cAACC,CAAAA,+BAAAA,EAAAA,EAAAA,CAAAA;AACV;;IAGA,MAAMC,kBAAAA,GAAqBN,uBAAuBO,IAAI,CAAC,CAACC,CAAGC,EAAAA,CAAAA,GACzDD,CAAC,CAAC,CAAA,CAAE,CAACE,IAAI,GAAGD,CAAC,CAAC,CAAA,CAAE,CAACC,IAAI,GAAG,IAAI,CAAC,CAAA,CAAA;AAG/B,IAAA,qBACEN,cAACO,CAAAA,8BAAAA,EAAAA;QAAkBC,OAAQ,EAAA,QAAA;AACzB,QAAA,QAAA,gBAAAC,eAACC,CAAAA,iBAAAA,EAAAA;YAAKC,SAAU,EAAA,QAAA;YAASC,UAAW,EAAA,SAAA;YAAUC,GAAK,EAAA,CAAA;;AACjD,8BAAAb,cAAA,CAACc,kBAAKC,IAAI,EAAA;oBAACF,GAAK,EAAA,CAAA;8BACbX,kBAAmBc,CAAAA,GAAG,CAAC,CAAC,CAACC,KAAKC,WAAY,CAAA,iBACzClB,cAACc,CAAAA,iBAAAA,CAAKK,IAAI,EAAA;4BAAWC,GAAK,EAAA,CAAA;4BAAGC,EAAI,EAAA,EAAA;4BAAIV,SAAU,EAAA,QAAA;4BAASC,UAAW,EAAA,SAAA;AACjE,4BAAA,QAAA,gBAAAZ,cAACsB,CAAAA,mCAAAA,EAAAA;gCAA4BC,cAAgBN,EAAAA,GAAAA;gCAAKC,WAAaA,EAAAA;AAAvCD,6BAAAA,EAAAA,GAAAA;AADVA,yBAAAA,EAAAA,GAAAA,CAAAA;;8BAKpBjB,cAACwB,CAAAA,iBAAAA,EAAAA;oBACCC,IAAK,EAAA,6EAAA;oBACLC,UAAU,EAAA,IAAA;8BAETrC,aAAc,CAAA;AACbsC,wBAAAA,EAAAA,EAAIC,eAAQ,CAAA,iCAAA,CAAA;wBACZC,cAAgB,EAAA;AAClB,qBAAA;;;;;AAKV;;;;"}
1
+ {"version":3,"file":"CustomFieldsList.js","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldsList.tsx"],"sourcesContent":["import { useStrapiApp } from '@strapi/admin/strapi-admin';\nimport { Flex, Grid, KeyboardNavigable, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../utils';\n\nimport { CustomFieldOption } from './CustomFieldOption';\nimport { EmptyAttributes } from './EmptyAttributes';\n\nexport const CustomFieldsList = () => {\n const { formatMessage } = useIntl();\n const getAllCustomFields = useStrapiApp('CustomFieldsList', (state) => state.customFields.getAll);\n // TODO change this once useCustomFields is typed (helper-plugin types are solved)\n const registeredCustomFields = Object.entries(getAllCustomFields());\n\n if (!registeredCustomFields.length) {\n return <EmptyAttributes />;\n }\n\n // Sort the array alphabetically by customField name\n const sortedCustomFields = registeredCustomFields.sort((a, b) =>\n a[1].name > b[1].name ? 1 : -1\n );\n\n return (\n <KeyboardNavigable tagName=\"button\">\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Grid.Root gap={3}>\n {sortedCustomFields.map(([uid, customField]) => (\n <Grid.Item key={uid} col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <CustomFieldOption key={uid} customFieldUid={uid} customField={customField} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Link\n href=\"https://docs.strapi.io/developer-docs/latest/development/custom-fields.html\"\n isExternal\n >\n {formatMessage({\n id: getTrad('modalForm.tabs.custom.howToLink'),\n defaultMessage: 'How to add custom fields',\n })}\n </Link>\n </Flex>\n </KeyboardNavigable>\n );\n};\n"],"names":["CustomFieldsList","formatMessage","useIntl","getAllCustomFields","useStrapiApp","state","customFields","getAll","registeredCustomFields","Object","entries","length","_jsx","EmptyAttributes","sortedCustomFields","sort","a","b","name","KeyboardNavigable","tagName","_jsxs","Flex","direction","alignItems","gap","Grid","Root","map","uid","customField","Item","col","xs","CustomFieldOption","customFieldUid","Link","href","isExternal","id","getTrad","defaultMessage"],"mappings":";;;;;;;;;;MASaA,gBAAAA,GAAmB,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAMC,kBAAAA,GAAqBC,yBAAa,kBAAA,EAAoB,CAACC,QAAUA,KAAAA,CAAMC,YAAY,CAACC,MAAM,CAAA;;IAEhG,MAAMC,sBAAAA,GAAyBC,MAAAA,CAAOC,OAAO,CAACP,kBAAAA,EAAAA,CAAAA;IAE9C,IAAI,CAACK,sBAAAA,CAAuBG,MAAM,EAAE;AAClC,QAAA,qBAAOC,cAAA,CAACC,+BAAAA,EAAAA,EAAAA,CAAAA;AACV,IAAA;;IAGA,MAAMC,kBAAAA,GAAqBN,uBAAuBO,IAAI,CAAC,CAACC,CAAAA,EAAGC,CAAAA,GACzDD,CAAC,CAAC,CAAA,CAAE,CAACE,IAAI,GAAGD,CAAC,CAAC,CAAA,CAAE,CAACC,IAAI,GAAG,IAAI,EAAC,CAAA;AAG/B,IAAA,qBACEN,cAAA,CAACO,8BAAAA,EAAAA;QAAkBC,OAAAA,EAAQ,QAAA;AACzB,QAAA,QAAA,gBAAAC,eAAA,CAACC,iBAAAA,EAAAA;YAAKC,SAAAA,EAAU,QAAA;YAASC,UAAAA,EAAW,SAAA;YAAUC,GAAAA,EAAK,CAAA;;AACjD,8BAAAb,cAAA,CAACc,kBAAKC,IAAI,EAAA;oBAACF,GAAAA,EAAK,CAAA;8BACbX,kBAAAA,CAAmBc,GAAG,CAAC,CAAC,CAACC,KAAKC,WAAAA,CAAY,iBACzClB,cAAA,CAACc,iBAAAA,CAAKK,IAAI,EAAA;4BAAWC,GAAAA,EAAK,CAAA;4BAAGC,EAAAA,EAAI,EAAA;4BAAIV,SAAAA,EAAU,QAAA;4BAASC,UAAAA,EAAW,SAAA;AACjE,4BAAA,QAAA,gBAAAZ,cAAA,CAACsB,mCAAAA,EAAAA;gCAA4BC,cAAAA,EAAgBN,GAAAA;gCAAKC,WAAAA,EAAaA;AAAvCD,6BAAAA,EAAAA,GAAAA;AADVA,yBAAAA,EAAAA,GAAAA,CAAAA;;8BAKpBjB,cAAA,CAACwB,iBAAAA,EAAAA;oBACCC,IAAAA,EAAK,6EAAA;oBACLC,UAAU,EAAA,IAAA;8BAETrC,aAAAA,CAAc;AACbsC,wBAAAA,EAAAA,EAAIC,eAAAA,CAAQ,iCAAA,CAAA;wBACZC,cAAAA,EAAgB;AAClB,qBAAA;;;;;AAKV;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomFieldsList.mjs","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldsList.tsx"],"sourcesContent":["import { useStrapiApp } from '@strapi/admin/strapi-admin';\nimport { Flex, Grid, KeyboardNavigable, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../utils';\n\nimport { CustomFieldOption } from './CustomFieldOption';\nimport { EmptyAttributes } from './EmptyAttributes';\n\nexport const CustomFieldsList = () => {\n const { formatMessage } = useIntl();\n const getAllCustomFields = useStrapiApp('CustomFieldsList', (state) => state.customFields.getAll);\n // TODO change this once useCustomFields is typed (helper-plugin types are solved)\n const registeredCustomFields = Object.entries(getAllCustomFields());\n\n if (!registeredCustomFields.length) {\n return <EmptyAttributes />;\n }\n\n // Sort the array alphabetically by customField name\n const sortedCustomFields = registeredCustomFields.sort((a, b) =>\n a[1].name > b[1].name ? 1 : -1\n );\n\n return (\n <KeyboardNavigable tagName=\"button\">\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Grid.Root gap={3}>\n {sortedCustomFields.map(([uid, customField]) => (\n <Grid.Item key={uid} col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <CustomFieldOption key={uid} customFieldUid={uid} customField={customField} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Link\n href=\"https://docs.strapi.io/developer-docs/latest/development/custom-fields.html\"\n isExternal\n >\n {formatMessage({\n id: getTrad('modalForm.tabs.custom.howToLink'),\n defaultMessage: 'How to add custom fields',\n })}\n </Link>\n </Flex>\n </KeyboardNavigable>\n );\n};\n"],"names":["CustomFieldsList","formatMessage","useIntl","getAllCustomFields","useStrapiApp","state","customFields","getAll","registeredCustomFields","Object","entries","length","_jsx","EmptyAttributes","sortedCustomFields","sort","a","b","name","KeyboardNavigable","tagName","_jsxs","Flex","direction","alignItems","gap","Grid","Root","map","uid","customField","Item","col","xs","CustomFieldOption","customFieldUid","Link","href","isExternal","id","getTrad","defaultMessage"],"mappings":";;;;;;;;MASaA,gBAAmB,GAAA,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAMC,kBAAAA,GAAqBC,aAAa,kBAAoB,EAAA,CAACC,QAAUA,KAAMC,CAAAA,YAAY,CAACC,MAAM,CAAA;;IAEhG,MAAMC,sBAAAA,GAAyBC,MAAOC,CAAAA,OAAO,CAACP,kBAAAA,EAAAA,CAAAA;IAE9C,IAAI,CAACK,sBAAuBG,CAAAA,MAAM,EAAE;AAClC,QAAA,qBAAOC,GAACC,CAAAA,eAAAA,EAAAA,EAAAA,CAAAA;AACV;;IAGA,MAAMC,kBAAAA,GAAqBN,uBAAuBO,IAAI,CAAC,CAACC,CAAGC,EAAAA,CAAAA,GACzDD,CAAC,CAAC,CAAA,CAAE,CAACE,IAAI,GAAGD,CAAC,CAAC,CAAA,CAAE,CAACC,IAAI,GAAG,IAAI,CAAC,CAAA,CAAA;AAG/B,IAAA,qBACEN,GAACO,CAAAA,iBAAAA,EAAAA;QAAkBC,OAAQ,EAAA,QAAA;AACzB,QAAA,QAAA,gBAAAC,IAACC,CAAAA,IAAAA,EAAAA;YAAKC,SAAU,EAAA,QAAA;YAASC,UAAW,EAAA,SAAA;YAAUC,GAAK,EAAA,CAAA;;AACjD,8BAAAb,GAAA,CAACc,KAAKC,IAAI,EAAA;oBAACF,GAAK,EAAA,CAAA;8BACbX,kBAAmBc,CAAAA,GAAG,CAAC,CAAC,CAACC,KAAKC,WAAY,CAAA,iBACzClB,GAACc,CAAAA,IAAAA,CAAKK,IAAI,EAAA;4BAAWC,GAAK,EAAA,CAAA;4BAAGC,EAAI,EAAA,EAAA;4BAAIV,SAAU,EAAA,QAAA;4BAASC,UAAW,EAAA,SAAA;AACjE,4BAAA,QAAA,gBAAAZ,GAACsB,CAAAA,iBAAAA,EAAAA;gCAA4BC,cAAgBN,EAAAA,GAAAA;gCAAKC,WAAaA,EAAAA;AAAvCD,6BAAAA,EAAAA,GAAAA;AADVA,yBAAAA,EAAAA,GAAAA,CAAAA;;8BAKpBjB,GAACwB,CAAAA,IAAAA,EAAAA;oBACCC,IAAK,EAAA,6EAAA;oBACLC,UAAU,EAAA,IAAA;8BAETrC,aAAc,CAAA;AACbsC,wBAAAA,EAAAA,EAAIC,OAAQ,CAAA,iCAAA,CAAA;wBACZC,cAAgB,EAAA;AAClB,qBAAA;;;;;AAKV;;;;"}
1
+ {"version":3,"file":"CustomFieldsList.mjs","sources":["../../../../admin/src/components/AttributeOptions/CustomFieldsList.tsx"],"sourcesContent":["import { useStrapiApp } from '@strapi/admin/strapi-admin';\nimport { Flex, Grid, KeyboardNavigable, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../../utils';\n\nimport { CustomFieldOption } from './CustomFieldOption';\nimport { EmptyAttributes } from './EmptyAttributes';\n\nexport const CustomFieldsList = () => {\n const { formatMessage } = useIntl();\n const getAllCustomFields = useStrapiApp('CustomFieldsList', (state) => state.customFields.getAll);\n // TODO change this once useCustomFields is typed (helper-plugin types are solved)\n const registeredCustomFields = Object.entries(getAllCustomFields());\n\n if (!registeredCustomFields.length) {\n return <EmptyAttributes />;\n }\n\n // Sort the array alphabetically by customField name\n const sortedCustomFields = registeredCustomFields.sort((a, b) =>\n a[1].name > b[1].name ? 1 : -1\n );\n\n return (\n <KeyboardNavigable tagName=\"button\">\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Grid.Root gap={3}>\n {sortedCustomFields.map(([uid, customField]) => (\n <Grid.Item key={uid} col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <CustomFieldOption key={uid} customFieldUid={uid} customField={customField} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Link\n href=\"https://docs.strapi.io/developer-docs/latest/development/custom-fields.html\"\n isExternal\n >\n {formatMessage({\n id: getTrad('modalForm.tabs.custom.howToLink'),\n defaultMessage: 'How to add custom fields',\n })}\n </Link>\n </Flex>\n </KeyboardNavigable>\n );\n};\n"],"names":["CustomFieldsList","formatMessage","useIntl","getAllCustomFields","useStrapiApp","state","customFields","getAll","registeredCustomFields","Object","entries","length","_jsx","EmptyAttributes","sortedCustomFields","sort","a","b","name","KeyboardNavigable","tagName","_jsxs","Flex","direction","alignItems","gap","Grid","Root","map","uid","customField","Item","col","xs","CustomFieldOption","customFieldUid","Link","href","isExternal","id","getTrad","defaultMessage"],"mappings":";;;;;;;;MASaA,gBAAAA,GAAmB,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAMC,kBAAAA,GAAqBC,aAAa,kBAAA,EAAoB,CAACC,QAAUA,KAAAA,CAAMC,YAAY,CAACC,MAAM,CAAA;;IAEhG,MAAMC,sBAAAA,GAAyBC,MAAAA,CAAOC,OAAO,CAACP,kBAAAA,EAAAA,CAAAA;IAE9C,IAAI,CAACK,sBAAAA,CAAuBG,MAAM,EAAE;AAClC,QAAA,qBAAOC,GAAA,CAACC,eAAAA,EAAAA,EAAAA,CAAAA;AACV,IAAA;;IAGA,MAAMC,kBAAAA,GAAqBN,uBAAuBO,IAAI,CAAC,CAACC,CAAAA,EAAGC,CAAAA,GACzDD,CAAC,CAAC,CAAA,CAAE,CAACE,IAAI,GAAGD,CAAC,CAAC,CAAA,CAAE,CAACC,IAAI,GAAG,IAAI,EAAC,CAAA;AAG/B,IAAA,qBACEN,GAAA,CAACO,iBAAAA,EAAAA;QAAkBC,OAAAA,EAAQ,QAAA;AACzB,QAAA,QAAA,gBAAAC,IAAA,CAACC,IAAAA,EAAAA;YAAKC,SAAAA,EAAU,QAAA;YAASC,UAAAA,EAAW,SAAA;YAAUC,GAAAA,EAAK,CAAA;;AACjD,8BAAAb,GAAA,CAACc,KAAKC,IAAI,EAAA;oBAACF,GAAAA,EAAK,CAAA;8BACbX,kBAAAA,CAAmBc,GAAG,CAAC,CAAC,CAACC,KAAKC,WAAAA,CAAY,iBACzClB,GAAA,CAACc,IAAAA,CAAKK,IAAI,EAAA;4BAAWC,GAAAA,EAAK,CAAA;4BAAGC,EAAAA,EAAI,EAAA;4BAAIV,SAAAA,EAAU,QAAA;4BAASC,UAAAA,EAAW,SAAA;AACjE,4BAAA,QAAA,gBAAAZ,GAAA,CAACsB,iBAAAA,EAAAA;gCAA4BC,cAAAA,EAAgBN,GAAAA;gCAAKC,WAAAA,EAAaA;AAAvCD,6BAAAA,EAAAA,GAAAA;AADVA,yBAAAA,EAAAA,GAAAA,CAAAA;;8BAKpBjB,GAAA,CAACwB,IAAAA,EAAAA;oBACCC,IAAAA,EAAK,6EAAA;oBACLC,UAAU,EAAA,IAAA;8BAETrC,aAAAA,CAAc;AACbsC,wBAAAA,EAAAA,EAAIC,OAAAA,CAAQ,iCAAA,CAAA;wBACZC,cAAAA,EAAgB;AAClB,qBAAA;;;;;AAKV;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EmptyAttributes.js","sources":["../../../../admin/src/components/AttributeOptions/EmptyAttributes.tsx"],"sourcesContent":["import { Box, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { getTrad } from '../../utils';\n\nconst EmptyCard = styled(Box)`\n background: ${({ theme }) =>\n `linear-gradient(180deg, rgba(234, 234, 239, 0) 0%, ${theme.colors.neutral150} 100%)`};\n opacity: 0.33;\n`;\n\nexport const EmptyCardGrid = () => {\n return (\n <Flex wrap=\"wrap\" gap={4}>\n {[...Array(4)].map((_, idx) => {\n return (\n <EmptyCard\n // eslint-disable-next-line react/no-array-index-key\n key={`empty-card-${idx}`}\n height=\"138px\"\n width=\"375px\"\n hasRadius\n />\n );\n })}\n </Flex>\n );\n};\n\nexport const EmptyAttributes = () => {\n const { formatMessage } = useIntl();\n\n return (\n <Box position=\"relative\">\n <EmptyCardGrid />\n <Box position=\"absolute\" top={6} width=\"100%\">\n <Flex alignItems=\"center\" justifyContent=\"center\" direction=\"column\">\n <EmptyDocuments width=\"160px\" height=\"88px\" />\n <Box paddingTop={6} paddingBottom={4}>\n <Box textAlign=\"center\">\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.heading'),\n defaultMessage: 'Nothing in here yet.',\n })}\n </Typography>\n <Box paddingTop={4}>\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.sub-heading'),\n defaultMessage:\n 'Find what you are looking for through a wide range of extensions.',\n })}\n </Typography>\n </Box>\n </Box>\n </Box>\n <LinkButton\n tag={Link}\n to={`https://market.strapi.io?${qs.stringify({ categories: 'Custom fields' })}`}\n variant=\"secondary\"\n target=\"_blank\"\n startIcon={<Plus />}\n >\n {formatMessage({\n id: getTrad('modalForm.empty.button'),\n defaultMessage: 'Add custom fields',\n })}\n </LinkButton>\n </Flex>\n </Box>\n </Box>\n );\n};\n"],"names":["EmptyCard","styled","Box","theme","colors","neutral150","EmptyCardGrid","_jsx","Flex","wrap","gap","Array","map","_","idx","height","width","hasRadius","EmptyAttributes","formatMessage","useIntl","_jsxs","position","top","alignItems","justifyContent","direction","EmptyDocuments","paddingTop","paddingBottom","textAlign","Typography","variant","tag","textColor","id","getTrad","defaultMessage","LinkButton","Link","to","qs","stringify","categories","target","startIcon","Plus"],"mappings":"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"}
1
+ {"version":3,"file":"EmptyAttributes.js","sources":["../../../../admin/src/components/AttributeOptions/EmptyAttributes.tsx"],"sourcesContent":["import { Box, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { getTrad } from '../../utils';\n\nconst EmptyCard = styled(Box)`\n background: ${({ theme }) =>\n `linear-gradient(180deg, rgba(234, 234, 239, 0) 0%, ${theme.colors.neutral150} 100%)`};\n opacity: 0.33;\n`;\n\nexport const EmptyCardGrid = () => {\n return (\n <Flex wrap=\"wrap\" gap={4}>\n {[...Array(4)].map((_, idx) => {\n return (\n <EmptyCard\n // eslint-disable-next-line react/no-array-index-key\n key={`empty-card-${idx}`}\n height=\"138px\"\n width=\"375px\"\n hasRadius\n />\n );\n })}\n </Flex>\n );\n};\n\nexport const EmptyAttributes = () => {\n const { formatMessage } = useIntl();\n\n return (\n <Box position=\"relative\">\n <EmptyCardGrid />\n <Box position=\"absolute\" top={6} width=\"100%\">\n <Flex alignItems=\"center\" justifyContent=\"center\" direction=\"column\">\n <EmptyDocuments width=\"160px\" height=\"88px\" />\n <Box paddingTop={6} paddingBottom={4}>\n <Box textAlign=\"center\">\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.heading'),\n defaultMessage: 'Nothing in here yet.',\n })}\n </Typography>\n <Box paddingTop={4}>\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.sub-heading'),\n defaultMessage:\n 'Find what you are looking for through a wide range of extensions.',\n })}\n </Typography>\n </Box>\n </Box>\n </Box>\n <LinkButton\n tag={Link}\n to={`https://market.strapi.io?${qs.stringify({ categories: 'Custom fields' })}`}\n variant=\"secondary\"\n target=\"_blank\"\n startIcon={<Plus />}\n >\n {formatMessage({\n id: getTrad('modalForm.empty.button'),\n defaultMessage: 'Add custom fields',\n })}\n </LinkButton>\n </Flex>\n </Box>\n </Box>\n );\n};\n"],"names":["EmptyCard","styled","Box","theme","colors","neutral150","EmptyCardGrid","_jsx","Flex","wrap","gap","Array","map","_","idx","height","width","hasRadius","EmptyAttributes","formatMessage","useIntl","_jsxs","position","top","alignItems","justifyContent","direction","EmptyDocuments","paddingTop","paddingBottom","textAlign","Typography","variant","tag","textColor","id","getTrad","defaultMessage","LinkButton","Link","to","qs","stringify","categories","target","startIcon","Plus"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EmptyAttributes.mjs","sources":["../../../../admin/src/components/AttributeOptions/EmptyAttributes.tsx"],"sourcesContent":["import { Box, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { getTrad } from '../../utils';\n\nconst EmptyCard = styled(Box)`\n background: ${({ theme }) =>\n `linear-gradient(180deg, rgba(234, 234, 239, 0) 0%, ${theme.colors.neutral150} 100%)`};\n opacity: 0.33;\n`;\n\nexport const EmptyCardGrid = () => {\n return (\n <Flex wrap=\"wrap\" gap={4}>\n {[...Array(4)].map((_, idx) => {\n return (\n <EmptyCard\n // eslint-disable-next-line react/no-array-index-key\n key={`empty-card-${idx}`}\n height=\"138px\"\n width=\"375px\"\n hasRadius\n />\n );\n })}\n </Flex>\n );\n};\n\nexport const EmptyAttributes = () => {\n const { formatMessage } = useIntl();\n\n return (\n <Box position=\"relative\">\n <EmptyCardGrid />\n <Box position=\"absolute\" top={6} width=\"100%\">\n <Flex alignItems=\"center\" justifyContent=\"center\" direction=\"column\">\n <EmptyDocuments width=\"160px\" height=\"88px\" />\n <Box paddingTop={6} paddingBottom={4}>\n <Box textAlign=\"center\">\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.heading'),\n defaultMessage: 'Nothing in here yet.',\n })}\n </Typography>\n <Box paddingTop={4}>\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.sub-heading'),\n defaultMessage:\n 'Find what you are looking for through a wide range of extensions.',\n })}\n </Typography>\n </Box>\n </Box>\n </Box>\n <LinkButton\n tag={Link}\n to={`https://market.strapi.io?${qs.stringify({ categories: 'Custom fields' })}`}\n variant=\"secondary\"\n target=\"_blank\"\n startIcon={<Plus />}\n >\n {formatMessage({\n id: getTrad('modalForm.empty.button'),\n defaultMessage: 'Add custom fields',\n })}\n </LinkButton>\n </Flex>\n </Box>\n </Box>\n );\n};\n"],"names":["EmptyCard","styled","Box","theme","colors","neutral150","EmptyCardGrid","_jsx","Flex","wrap","gap","Array","map","_","idx","height","width","hasRadius","EmptyAttributes","formatMessage","useIntl","_jsxs","position","top","alignItems","justifyContent","direction","EmptyDocuments","paddingTop","paddingBottom","textAlign","Typography","variant","tag","textColor","id","getTrad","defaultMessage","LinkButton","Link","to","qs","stringify","categories","target","startIcon","Plus"],"mappings":";;;;;;;;;;AAUA,MAAMA,SAAAA,GAAYC,MAAOC,CAAAA,GAAAA,CAAI;AACf,cAAA,EAAE,CAAC,EAAEC,KAAK,EAAE,GACtB,CAAC,mDAAmD,EAAEA,KAAAA,CAAMC,MAAM,CAACC,UAAU,CAAC,MAAM,CAAC,CAAC;;AAE1F,CAAC;MAEYC,aAAgB,GAAA,IAAA;AAC3B,IAAA,qBACEC,GAACC,CAAAA,IAAAA,EAAAA;QAAKC,IAAK,EAAA,MAAA;QAAOC,GAAK,EAAA,CAAA;AACpB,QAAA,QAAA,EAAA;eAAIC,KAAM,CAAA,CAAA;SAAG,CAACC,GAAG,CAAC,CAACC,CAAGC,EAAAA,GAAAA,GAAAA;AACrB,YAAA,qBACEP,GAACP,CAAAA,SAAAA,EAAAA;gBAGCe,MAAO,EAAA,OAAA;gBACPC,KAAM,EAAA,OAAA;gBACNC,SAAS,EAAA;eAHJ,CAAC,WAAW,EAAEH,GAAK,CAAA,CAAA,CAAA;AAM9B,SAAA;;AAGN;MAEaI,eAAkB,GAAA,IAAA;IAC7B,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,qBACEC,IAACnB,CAAAA,GAAAA,EAAAA;QAAIoB,QAAS,EAAA,UAAA;;0BACZf,GAACD,CAAAA,aAAAA,EAAAA,EAAAA,CAAAA;0BACDC,GAACL,CAAAA,GAAAA,EAAAA;gBAAIoB,QAAS,EAAA,UAAA;gBAAWC,GAAK,EAAA,CAAA;gBAAGP,KAAM,EAAA,MAAA;AACrC,gBAAA,QAAA,gBAAAK,IAACb,CAAAA,IAAAA,EAAAA;oBAAKgB,UAAW,EAAA,QAAA;oBAASC,cAAe,EAAA,QAAA;oBAASC,SAAU,EAAA,QAAA;;sCAC1DnB,GAACoB,CAAAA,cAAAA,EAAAA;4BAAeX,KAAM,EAAA,OAAA;4BAAQD,MAAO,EAAA;;sCACrCR,GAACL,CAAAA,GAAAA,EAAAA;4BAAI0B,UAAY,EAAA,CAAA;4BAAGC,aAAe,EAAA,CAAA;AACjC,4BAAA,QAAA,gBAAAR,IAACnB,CAAAA,GAAAA,EAAAA;gCAAI4B,SAAU,EAAA,QAAA;;kDACbvB,GAACwB,CAAAA,UAAAA,EAAAA;wCAAWC,OAAQ,EAAA,OAAA;wCAAQC,GAAI,EAAA,GAAA;wCAAIC,SAAU,EAAA,YAAA;kDAC3Cf,aAAc,CAAA;AACbgB,4CAAAA,EAAAA,EAAIC,OAAQ,CAAA,yBAAA,CAAA;4CACZC,cAAgB,EAAA;AAClB,yCAAA;;kDAEF9B,GAACL,CAAAA,GAAAA,EAAAA;wCAAI0B,UAAY,EAAA,CAAA;AACf,wCAAA,QAAA,gBAAArB,GAACwB,CAAAA,UAAAA,EAAAA;4CAAWC,OAAQ,EAAA,OAAA;4CAAQC,GAAI,EAAA,GAAA;4CAAIC,SAAU,EAAA,YAAA;sDAC3Cf,aAAc,CAAA;AACbgB,gDAAAA,EAAAA,EAAIC,OAAQ,CAAA,6BAAA,CAAA;gDACZC,cACE,EAAA;AACJ,6CAAA;;;;;;sCAKR9B,GAAC+B,CAAAA,UAAAA,EAAAA;4BACCL,GAAKM,EAAAA,IAAAA;AACLC,4BAAAA,EAAAA,EAAI,CAAC,yBAAyB,EAAEC,EAAAA,CAAGC,SAAS,CAAC;gCAAEC,UAAY,EAAA;6BAAoB,CAAA,CAAA,CAAA;4BAC/EX,OAAQ,EAAA,WAAA;4BACRY,MAAO,EAAA,QAAA;AACPC,4BAAAA,SAAAA,gBAAWtC,GAACuC,CAAAA,IAAAA,EAAAA,EAAAA,CAAAA;sCAEX3B,aAAc,CAAA;AACbgB,gCAAAA,EAAAA,EAAIC,OAAQ,CAAA,wBAAA,CAAA;gCACZC,cAAgB,EAAA;AAClB,6BAAA;;;;;;;AAMZ;;;;"}
1
+ {"version":3,"file":"EmptyAttributes.mjs","sources":["../../../../admin/src/components/AttributeOptions/EmptyAttributes.tsx"],"sourcesContent":["import { Box, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { getTrad } from '../../utils';\n\nconst EmptyCard = styled(Box)`\n background: ${({ theme }) =>\n `linear-gradient(180deg, rgba(234, 234, 239, 0) 0%, ${theme.colors.neutral150} 100%)`};\n opacity: 0.33;\n`;\n\nexport const EmptyCardGrid = () => {\n return (\n <Flex wrap=\"wrap\" gap={4}>\n {[...Array(4)].map((_, idx) => {\n return (\n <EmptyCard\n // eslint-disable-next-line react/no-array-index-key\n key={`empty-card-${idx}`}\n height=\"138px\"\n width=\"375px\"\n hasRadius\n />\n );\n })}\n </Flex>\n );\n};\n\nexport const EmptyAttributes = () => {\n const { formatMessage } = useIntl();\n\n return (\n <Box position=\"relative\">\n <EmptyCardGrid />\n <Box position=\"absolute\" top={6} width=\"100%\">\n <Flex alignItems=\"center\" justifyContent=\"center\" direction=\"column\">\n <EmptyDocuments width=\"160px\" height=\"88px\" />\n <Box paddingTop={6} paddingBottom={4}>\n <Box textAlign=\"center\">\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.heading'),\n defaultMessage: 'Nothing in here yet.',\n })}\n </Typography>\n <Box paddingTop={4}>\n <Typography variant=\"delta\" tag=\"p\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('modalForm.empty.sub-heading'),\n defaultMessage:\n 'Find what you are looking for through a wide range of extensions.',\n })}\n </Typography>\n </Box>\n </Box>\n </Box>\n <LinkButton\n tag={Link}\n to={`https://market.strapi.io?${qs.stringify({ categories: 'Custom fields' })}`}\n variant=\"secondary\"\n target=\"_blank\"\n startIcon={<Plus />}\n >\n {formatMessage({\n id: getTrad('modalForm.empty.button'),\n defaultMessage: 'Add custom fields',\n })}\n </LinkButton>\n </Flex>\n </Box>\n </Box>\n );\n};\n"],"names":["EmptyCard","styled","Box","theme","colors","neutral150","EmptyCardGrid","_jsx","Flex","wrap","gap","Array","map","_","idx","height","width","hasRadius","EmptyAttributes","formatMessage","useIntl","_jsxs","position","top","alignItems","justifyContent","direction","EmptyDocuments","paddingTop","paddingBottom","textAlign","Typography","variant","tag","textColor","id","getTrad","defaultMessage","LinkButton","Link","to","qs","stringify","categories","target","startIcon","Plus"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OptionBoxWrapper.js","sources":["../../../../admin/src/components/AttributeOptions/OptionBoxWrapper.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nexport const OptionBoxWrapper = styled(Box)`\n width: 100%;\n height: 100%;\n border: 1px solid ${({ theme }) => theme.colors.neutral200};\n text-align: left;\n &:hover {\n cursor: pointer;\n background: ${({ theme }) => theme.colors.primary100};\n border: 1px solid ${({ theme }) => theme.colors.primary200};\n }\n`;\n"],"names":["OptionBoxWrapper","styled","Box","theme","colors","neutral200","primary100","primary200"],"mappings":";;;;;AAGaA,MAAAA,gBAAAA,GAAmBC,uBAAOC,CAAAA,gBAAAA,CAAI;;;oBAGvB,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,MAAM,CAACC,UAAU,CAAC;;;;gBAI7C,EAAE,CAAC,EAAEF,KAAK,EAAE,GAAKA,KAAMC,CAAAA,MAAM,CAACE,UAAU,CAAC;sBACnC,EAAE,CAAC,EAAEH,KAAK,EAAE,GAAKA,KAAMC,CAAAA,MAAM,CAACG,UAAU,CAAC;;AAE/D;;;;"}
1
+ {"version":3,"file":"OptionBoxWrapper.js","sources":["../../../../admin/src/components/AttributeOptions/OptionBoxWrapper.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nexport const OptionBoxWrapper = styled(Box)`\n width: 100%;\n height: 100%;\n border: 1px solid ${({ theme }) => theme.colors.neutral200};\n text-align: left;\n &:hover {\n cursor: pointer;\n background: ${({ theme }) => theme.colors.primary100};\n border: 1px solid ${({ theme }) => theme.colors.primary200};\n }\n`;\n"],"names":["OptionBoxWrapper","styled","Box","theme","colors","neutral200","primary100","primary200"],"mappings":";;;;;AAGO,MAAMA,gBAAAA,GAAmBC,uBAAAA,CAAOC,gBAAAA,CAAI;;;oBAGvB,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAACC,UAAU,CAAC;;;;gBAI7C,EAAE,CAAC,EAAEF,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAACE,UAAU,CAAC;sBACnC,EAAE,CAAC,EAAEH,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAACG,UAAU,CAAC;;AAE/D;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OptionBoxWrapper.mjs","sources":["../../../../admin/src/components/AttributeOptions/OptionBoxWrapper.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nexport const OptionBoxWrapper = styled(Box)`\n width: 100%;\n height: 100%;\n border: 1px solid ${({ theme }) => theme.colors.neutral200};\n text-align: left;\n &:hover {\n cursor: pointer;\n background: ${({ theme }) => theme.colors.primary100};\n border: 1px solid ${({ theme }) => theme.colors.primary200};\n }\n`;\n"],"names":["OptionBoxWrapper","styled","Box","theme","colors","neutral200","primary100","primary200"],"mappings":";;;AAGaA,MAAAA,gBAAAA,GAAmBC,MAAOC,CAAAA,GAAAA,CAAI;;;oBAGvB,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,MAAM,CAACC,UAAU,CAAC;;;;gBAI7C,EAAE,CAAC,EAAEF,KAAK,EAAE,GAAKA,KAAMC,CAAAA,MAAM,CAACE,UAAU,CAAC;sBACnC,EAAE,CAAC,EAAEH,KAAK,EAAE,GAAKA,KAAMC,CAAAA,MAAM,CAACG,UAAU,CAAC;;AAE/D;;;;"}
1
+ {"version":3,"file":"OptionBoxWrapper.mjs","sources":["../../../../admin/src/components/AttributeOptions/OptionBoxWrapper.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nexport const OptionBoxWrapper = styled(Box)`\n width: 100%;\n height: 100%;\n border: 1px solid ${({ theme }) => theme.colors.neutral200};\n text-align: left;\n &:hover {\n cursor: pointer;\n background: ${({ theme }) => theme.colors.primary100};\n border: 1px solid ${({ theme }) => theme.colors.primary200};\n }\n`;\n"],"names":["OptionBoxWrapper","styled","Box","theme","colors","neutral200","primary100","primary200"],"mappings":";;;AAGO,MAAMA,gBAAAA,GAAmBC,MAAAA,CAAOC,GAAAA,CAAI;;;oBAGvB,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAACC,UAAU,CAAC;;;;gBAI7C,EAAE,CAAC,EAAEF,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAACE,UAAU,CAAC;sBACnC,EAAE,CAAC,EAAEH,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAACG,UAAU,CAAC;;AAE/D;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeRow.js","sources":["../../../admin/src/components/AttributeRow.tsx"],"sourcesContent":["import { forwardRef, memo, useState } from 'react';\n\nimport { ConfirmDialog } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, IconButton, Typography, Link, Badge, Dialog } from '@strapi/design-system';\nimport { ChevronDown, Drag, Lock, Pencil, Trash } from '@strapi/icons';\nimport get from 'lodash/get';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { Link as NavLink } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { Curve } from '../icons/Curve';\nimport { checkDependentRows } from '../utils/conditions';\nimport { getAttributeDisplayedType } from '../utils/getAttributeDisplayedType';\nimport { getRelationType } from '../utils/getRelationType';\nimport { getTrad } from '../utils/getTrad';\n\nimport { AttributeIcon } from './AttributeIcon';\nimport { ComponentList } from './ComponentList';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { DisplayedType } from './DisplayedType';\nimport { DynamicZoneList } from './DynamicZoneList';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\nimport { StatusBadge } from './Status';\n\nimport type { AnyAttribute, Component, ContentType } from '../types';\nimport type { DraggableAttributes, DraggableSyntheticListeners } from '@dnd-kit/core';\nimport type { UID } from '@strapi/types';\n\nexport const GridWrapper = styled(Flex)<{ $isOverlay?: boolean; $isDragging?: boolean }>`\n justify-content: space-between;\n\n border-top: ${({ theme, $isOverlay }) =>\n $isOverlay ? 'none' : `1px solid ${theme.colors.neutral150}`};\n\n padding-top: ${({ theme }) => theme.spaces[4]};\n padding-bottom: ${({ theme }) => theme.spaces[4]};\n\n opacity: ${({ $isDragging }) => ($isDragging ? 0 : 1)};\n align-items: center;\n`;\n\nexport type AttributeRowProps = {\n item: {\n id: string;\n index: number;\n } & AnyAttribute;\n firstLoopComponentUid?: UID.Component | null;\n isFromDynamicZone?: boolean;\n addComponentToDZ?: () => void;\n secondLoopComponentUid?: UID.Component | null;\n type: ContentType | Component;\n isDragging?: boolean;\n style?: Record<string, unknown>;\n listeners?: DraggableSyntheticListeners;\n attributes?: DraggableAttributes;\n isOverlay?: boolean;\n handleRef?: (element: HTMLElement | null) => void;\n};\n\nconst StyledAttributeRow = styled(Box)`\n list-style: none;\n list-style-type: none;\n`;\n\nexport const AttributeRow = forwardRef<HTMLLIElement, AttributeRowProps>((props, ref) => {\n const { style, ...rest } = props;\n\n return (\n <StyledAttributeRow\n tag=\"li\"\n ref={ref}\n {...props.attributes}\n style={style}\n background=\"neutral0\"\n shadow={props.isOverlay ? 'filterShadow' : 'none'}\n aria-label={props.item.name}\n >\n <MemoizedRow {...rest} />\n </StyledAttributeRow>\n );\n});\n\nconst MemoizedRow = memo((props: Omit<AttributeRowProps, 'style'>) => {\n const {\n item,\n firstLoopComponentUid,\n isFromDynamicZone,\n addComponentToDZ,\n secondLoopComponentUid,\n type,\n isDragging,\n isOverlay,\n handleRef,\n listeners,\n } = props;\n const shouldHideNestedInfos = isOverlay || isDragging;\n\n const [isOpen, setIsOpen] = useState<boolean>(true);\n\n const isTypeDeleted = type.status === 'REMOVED';\n\n const { contentTypes, removeAttribute, isInDevelopmentMode } = useDataManager();\n const { onOpenModalEditField, onOpenModalEditCustomField } = useFormModalNavigation();\n\n const { formatMessage } = useIntl();\n const [showConfirmDialog, setShowConfirmDialog] = useState(false);\n\n const isDeleted = item.status === 'REMOVED';\n\n const isMorph = item.type === 'relation' && item.relation.includes('morph');\n const ico = ['integer', 'biginteger', 'float', 'decimal'].includes(item.type)\n ? 'number'\n : item.type;\n\n const targetContentType = item.type === 'relation' ? get(contentTypes, item.target) : null;\n const isPluginContentType = get(targetContentType, 'plugin');\n\n const src = 'target' in item && item.target ? 'relation' : ico;\n\n const handleDelete = (e: React.MouseEvent | React.KeyboardEvent) => {\n e.stopPropagation();\n const dependentRows = checkDependentRows(contentTypes, item.name);\n if (dependentRows.length > 0) {\n setShowConfirmDialog(true);\n } else {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n }\n };\n\n const handleConfirmDelete = () => {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n setShowConfirmDialog(false);\n };\n\n const handleCancelDelete = () => {\n setShowConfirmDialog(false);\n };\n\n const handleClick = (e?: React.MouseEvent | React.KeyboardEvent) => {\n if (e) {\n e.stopPropagation();\n }\n\n if (isMorph) {\n return;\n }\n\n if (item.configurable !== false) {\n const editTargetUid = (secondLoopComponentUid || firstLoopComponentUid || type.uid)!;\n\n const attributeType = getAttributeDisplayedType(item.type);\n const step = item.type === 'component' ? '2' : null;\n\n if (item.customField) {\n onOpenModalEditCustomField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n customFieldUid: item.customField,\n });\n } else {\n onOpenModalEditField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n step,\n });\n }\n }\n };\n\n let loopNumber;\n\n if (secondLoopComponentUid && firstLoopComponentUid) {\n loopNumber = 2;\n } else if (firstLoopComponentUid) {\n loopNumber = 1;\n } else {\n loopNumber = 0;\n }\n\n const canEdit = !isTypeDeleted && !isDeleted;\n const canDelete = !isTypeDeleted && !isDeleted;\n\n const cursor = isTypeDeleted || isDeleted ? 'not-allowed' : 'move';\n\n const canClick = isInDevelopmentMode && item.configurable !== false && !isMorph && canEdit;\n\n return (\n <>\n <GridWrapper\n $isOverlay={isOverlay}\n $isDragging={isDragging}\n onClick={canClick ? handleClick : undefined}\n paddingLeft={4}\n paddingRight={4}\n >\n <Flex alignItems=\"center\" overflow=\"hidden\" gap={2}>\n {loopNumber !== 0 && !isOverlay && (\n <Curve color={isFromDynamicZone ? 'primary200' : 'neutral150'} />\n )}\n {isInDevelopmentMode && (\n <IconButton\n cursor={cursor}\n role=\"Handle\"\n ref={handleRef}\n {...listeners}\n variant=\"ghost\"\n withTooltip={false}\n label={`${formatMessage({\n id: 'app.utils.drag',\n defaultMessage: 'Drag',\n })} ${item.name}`}\n disabled={isTypeDeleted || isDeleted}\n style={{ outlineOffset: '-2px' }}\n >\n <Drag />\n </IconButton>\n )}\n <Flex gap={4}>\n <Flex gap={4} alignItems=\"center\">\n <AttributeIcon type={src} customField={item.customField} />\n <Typography\n textColor=\"neutral800\"\n fontWeight=\"bold\"\n textDecoration={isDeleted ? 'line-through' : 'none'}\n ellipsis\n overflow=\"hidden\"\n >\n {item.name}\n {'required' in item && item.required && (\n <Typography textColor=\"danger600\">*&nbsp;</Typography>\n )}\n </Typography>\n </Flex>\n <Flex>\n <Typography textColor=\"neutral600\">\n <DisplayedType\n type={item.type}\n customField={item.customField}\n repeatable={'repeatable' in item && item.repeatable}\n multiple={'multiple' in item && item.multiple}\n />\n {'conditions' in item &&\n item.conditions &&\n Object.keys(item.conditions).length > 0 && <Badge margin={4}>conditional</Badge>}\n {item.type === 'relation' && (\n <>\n &nbsp;({getRelationType(item.relation, item.targetAttribute)})&nbsp;\n {targetContentType &&\n formatMessage({\n id: getTrad('modelPage.attribute.with'),\n defaultMessage: 'with',\n })}\n &nbsp;\n {targetContentType && (\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/content-types/${targetContentType.uid}`}\n >\n {upperFirst(targetContentType.info.displayName)}\n </Link>\n )}\n {isPluginContentType &&\n `(${formatMessage({\n id: getTrad(`from`),\n defaultMessage: 'from',\n })}: ${isPluginContentType})`}\n </>\n )}\n {item.type === 'component' && <ComponentLink uid={item.component} />}\n </Typography>\n </Flex>\n </Flex>\n </Flex>\n\n <Box>\n <Flex justifyContent=\"flex-end\" gap={1} onClick={(e) => e.stopPropagation()}>\n <>\n <Box>{item.status && <StatusBadge status={item.status} />}</Box>\n {['component', 'dynamiczone'].includes(item.type) && (\n <IconButton\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n\n if (isOpen) {\n setIsOpen(false);\n } else {\n setIsOpen(true);\n }\n }}\n aria-expanded={isOpen}\n label={formatMessage({\n id: 'app.utils.toggle',\n defaultMessage: 'Toggle',\n })}\n variant=\"ghost\"\n withTooltip={false}\n >\n <ChevronDown\n aria-hidden\n fill=\"neutral500\"\n style={{\n transform: `rotate(${isOpen ? '0deg' : '-90deg'})`,\n transition: 'transform 0.5s',\n }}\n />\n </IconButton>\n )}\n {isInDevelopmentMode && item.configurable !== false ? (\n <>\n {!isMorph && (\n <IconButton\n onClick={handleClick}\n label={`${formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canEdit}\n >\n <Pencil />\n </IconButton>\n )}\n <IconButton\n onClick={handleDelete}\n label={`${formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canDelete}\n >\n <Trash />\n </IconButton>\n <Dialog.Root open={showConfirmDialog} onOpenChange={setShowConfirmDialog}>\n <ConfirmDialog onConfirm={handleConfirmDelete} onCancel={handleCancelDelete}>\n <Box>\n <Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions'\n ),\n defaultMessage:\n 'The following fields have conditions that depend on this field: ',\n })}\n <Typography fontWeight=\"bold\">\n {checkDependentRows(contentTypes, item.name)\n .map(({ attribute }) => attribute)\n .join(', ')}\n </Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions-end'\n ),\n defaultMessage: '. Are you sure you want to delete it?',\n })}\n </Typography>\n </Box>\n </ConfirmDialog>\n </Dialog.Root>\n </>\n ) : (\n <Flex padding={2}>\n <Lock fill=\"neutral500\" />\n </Flex>\n )}\n </>\n </Flex>\n </Box>\n </GridWrapper>\n\n <SubRow $shouldHideNestedInfos={shouldHideNestedInfos} $isOpen={isOpen}>\n {item.type === 'component' && (\n <ComponentList\n {...item}\n isFromDynamicZone={isFromDynamicZone}\n firstLoopComponentUid={firstLoopComponentUid}\n />\n )}\n\n {item.type === 'dynamiczone' && (\n <DynamicZoneList\n {...item}\n disabled={isTypeDeleted || item.status === 'REMOVED'}\n addComponent={addComponentToDZ!}\n forTarget={type.modelType}\n targetUid={type.uid}\n />\n )}\n </SubRow>\n </>\n );\n});\n\nconst SubRow = styled(Box)<{ $isOpen: boolean; $shouldHideNestedInfos?: boolean }>`\n display: ${({ $shouldHideNestedInfos }) => ($shouldHideNestedInfos ? 'none' : 'block')};\n max-height: ${({ $isOpen }) => ($isOpen ? '9999px' : '0px')};\n overflow: hidden;\n\n transition: ${({ $isOpen }) =>\n $isOpen ? 'max-height 1s ease-in-out' : 'max-height 0.5s cubic-bezier(0, 1, 0, 1)'};\n`;\n\nconst ComponentLink = ({ uid }: { uid: UID.Component }) => {\n const { components } = useDataManager();\n const type = get(components, uid);\n\n return (\n <>\n &nbsp;(\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/component-categories/${type.category}/${type.uid}`}\n >\n {upperFirst(type.info.displayName)}\n </Link>\n )\n </>\n );\n};\n"],"names":["GridWrapper","styled","Flex","theme","$isOverlay","colors","neutral150","spaces","$isDragging","StyledAttributeRow","Box","AttributeRow","forwardRef","props","ref","style","rest","_jsx","tag","attributes","background","shadow","isOverlay","aria-label","item","name","MemoizedRow","memo","firstLoopComponentUid","isFromDynamicZone","addComponentToDZ","secondLoopComponentUid","type","isDragging","handleRef","listeners","shouldHideNestedInfos","isOpen","setIsOpen","useState","isTypeDeleted","status","contentTypes","removeAttribute","isInDevelopmentMode","useDataManager","onOpenModalEditField","onOpenModalEditCustomField","useFormModalNavigation","formatMessage","useIntl","showConfirmDialog","setShowConfirmDialog","isDeleted","isMorph","relation","includes","ico","targetContentType","get","target","isPluginContentType","src","handleDelete","e","stopPropagation","dependentRows","checkDependentRows","length","forTarget","modelType","targetUid","uid","attributeToRemoveName","handleConfirmDelete","handleCancelDelete","handleClick","configurable","editTargetUid","attributeType","getAttributeDisplayedType","step","customField","attributeName","customFieldUid","loopNumber","canEdit","canDelete","cursor","canClick","_jsxs","_Fragment","onClick","undefined","paddingLeft","paddingRight","alignItems","overflow","gap","Curve","color","IconButton","role","variant","withTooltip","label","id","defaultMessage","disabled","outlineOffset","Drag","AttributeIcon","Typography","textColor","fontWeight","textDecoration","ellipsis","required","DisplayedType","repeatable","multiple","conditions","Object","keys","Badge","margin","getRelationType","targetAttribute","getTrad","Link","NavLink","to","upperFirst","info","displayName","ComponentLink","component","justifyContent","StatusBadge","preventDefault","aria-expanded","ChevronDown","aria-hidden","fill","transform","transition","Pencil","Trash","Dialog","Root","open","onOpenChange","ConfirmDialog","onConfirm","onCancel","map","attribute","join","padding","Lock","SubRow","$shouldHideNestedInfos","$isOpen","ComponentList","DynamicZoneList","addComponent","components","category"],"mappings":"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"}
1
+ {"version":3,"file":"AttributeRow.js","sources":["../../../admin/src/components/AttributeRow.tsx"],"sourcesContent":["import { forwardRef, memo, useState } from 'react';\n\nimport { ConfirmDialog } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, IconButton, Typography, Link, Badge, Dialog } from '@strapi/design-system';\nimport { ChevronDown, Drag, Lock, Pencil, Trash } from '@strapi/icons';\nimport get from 'lodash/get';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { Link as NavLink } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { Curve } from '../icons/Curve';\nimport { checkDependentRows } from '../utils/conditions';\nimport { getAttributeDisplayedType } from '../utils/getAttributeDisplayedType';\nimport { getRelationType } from '../utils/getRelationType';\nimport { getTrad } from '../utils/getTrad';\n\nimport { AttributeIcon } from './AttributeIcon';\nimport { ComponentList } from './ComponentList';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { DisplayedType } from './DisplayedType';\nimport { DynamicZoneList } from './DynamicZoneList';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\nimport { StatusBadge } from './Status';\n\nimport type { AnyAttribute, Component, ContentType } from '../types';\nimport type { DraggableAttributes, DraggableSyntheticListeners } from '@dnd-kit/core';\nimport type { UID } from '@strapi/types';\n\nexport const GridWrapper = styled(Flex)<{ $isOverlay?: boolean; $isDragging?: boolean }>`\n justify-content: space-between;\n\n border-top: ${({ theme, $isOverlay }) =>\n $isOverlay ? 'none' : `1px solid ${theme.colors.neutral150}`};\n\n padding-top: ${({ theme }) => theme.spaces[4]};\n padding-bottom: ${({ theme }) => theme.spaces[4]};\n\n opacity: ${({ $isDragging }) => ($isDragging ? 0 : 1)};\n align-items: center;\n`;\n\nexport type AttributeRowProps = {\n item: {\n id: string;\n index: number;\n } & AnyAttribute;\n firstLoopComponentUid?: UID.Component | null;\n isFromDynamicZone?: boolean;\n addComponentToDZ?: () => void;\n secondLoopComponentUid?: UID.Component | null;\n type: ContentType | Component;\n isDragging?: boolean;\n style?: Record<string, unknown>;\n listeners?: DraggableSyntheticListeners;\n attributes?: DraggableAttributes;\n isOverlay?: boolean;\n handleRef?: (element: HTMLElement | null) => void;\n};\n\nconst StyledAttributeRow = styled(Box)`\n list-style: none;\n list-style-type: none;\n`;\n\nexport const AttributeRow = forwardRef<HTMLLIElement, AttributeRowProps>((props, ref) => {\n const { style, ...rest } = props;\n\n return (\n <StyledAttributeRow\n tag=\"li\"\n ref={ref}\n {...props.attributes}\n style={style}\n background=\"neutral0\"\n shadow={props.isOverlay ? 'filterShadow' : 'none'}\n aria-label={props.item.name}\n >\n <MemoizedRow {...rest} />\n </StyledAttributeRow>\n );\n});\n\nconst MemoizedRow = memo((props: Omit<AttributeRowProps, 'style'>) => {\n const {\n item,\n firstLoopComponentUid,\n isFromDynamicZone,\n addComponentToDZ,\n secondLoopComponentUid,\n type,\n isDragging,\n isOverlay,\n handleRef,\n listeners,\n } = props;\n const shouldHideNestedInfos = isOverlay || isDragging;\n\n const [isOpen, setIsOpen] = useState<boolean>(true);\n\n const isTypeDeleted = type.status === 'REMOVED';\n\n const { contentTypes, removeAttribute, isInDevelopmentMode } = useDataManager();\n const { onOpenModalEditField, onOpenModalEditCustomField } = useFormModalNavigation();\n\n const { formatMessage } = useIntl();\n const [showConfirmDialog, setShowConfirmDialog] = useState(false);\n\n const isDeleted = item.status === 'REMOVED';\n\n const isMorph = item.type === 'relation' && item.relation.includes('morph');\n const ico = ['integer', 'biginteger', 'float', 'decimal'].includes(item.type)\n ? 'number'\n : item.type;\n\n const targetContentType = item.type === 'relation' ? get(contentTypes, item.target) : null;\n const isPluginContentType = get(targetContentType, 'plugin');\n\n const src = 'target' in item && item.target ? 'relation' : ico;\n\n const handleDelete = (e: React.MouseEvent | React.KeyboardEvent) => {\n e.stopPropagation();\n const dependentRows = checkDependentRows(contentTypes, item.name);\n if (dependentRows.length > 0) {\n setShowConfirmDialog(true);\n } else {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n }\n };\n\n const handleConfirmDelete = () => {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n setShowConfirmDialog(false);\n };\n\n const handleCancelDelete = () => {\n setShowConfirmDialog(false);\n };\n\n const handleClick = (e?: React.MouseEvent | React.KeyboardEvent) => {\n if (e) {\n e.stopPropagation();\n }\n\n if (isMorph) {\n return;\n }\n\n if (item.configurable !== false) {\n const editTargetUid = (secondLoopComponentUid || firstLoopComponentUid || type.uid)!;\n\n const attributeType = getAttributeDisplayedType(item.type);\n const step = item.type === 'component' ? '2' : null;\n\n if (item.customField) {\n onOpenModalEditCustomField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n customFieldUid: item.customField,\n });\n } else {\n onOpenModalEditField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n step,\n });\n }\n }\n };\n\n let loopNumber;\n\n if (secondLoopComponentUid && firstLoopComponentUid) {\n loopNumber = 2;\n } else if (firstLoopComponentUid) {\n loopNumber = 1;\n } else {\n loopNumber = 0;\n }\n\n const canEdit = !isTypeDeleted && !isDeleted;\n const canDelete = !isTypeDeleted && !isDeleted;\n\n const cursor = isTypeDeleted || isDeleted ? 'not-allowed' : 'move';\n\n const canClick = isInDevelopmentMode && item.configurable !== false && !isMorph && canEdit;\n\n return (\n <>\n <GridWrapper\n $isOverlay={isOverlay}\n $isDragging={isDragging}\n onClick={canClick ? handleClick : undefined}\n paddingLeft={4}\n paddingRight={4}\n >\n <Flex alignItems=\"center\" overflow=\"hidden\" gap={2}>\n {loopNumber !== 0 && !isOverlay && (\n <Curve color={isFromDynamicZone ? 'primary200' : 'neutral150'} />\n )}\n {isInDevelopmentMode && (\n <IconButton\n cursor={cursor}\n role=\"Handle\"\n ref={handleRef}\n {...listeners}\n variant=\"ghost\"\n withTooltip={false}\n label={`${formatMessage({\n id: 'app.utils.drag',\n defaultMessage: 'Drag',\n })} ${item.name}`}\n disabled={isTypeDeleted || isDeleted}\n style={{ outlineOffset: '-2px' }}\n >\n <Drag />\n </IconButton>\n )}\n <Flex gap={4}>\n <Flex gap={4} alignItems=\"center\">\n <AttributeIcon type={src} customField={item.customField} />\n <Typography\n textColor=\"neutral800\"\n fontWeight=\"bold\"\n textDecoration={isDeleted ? 'line-through' : 'none'}\n ellipsis\n overflow=\"hidden\"\n >\n {item.name}\n {'required' in item && item.required && (\n <Typography textColor=\"danger600\">*&nbsp;</Typography>\n )}\n </Typography>\n </Flex>\n <Flex>\n <Typography textColor=\"neutral600\">\n <DisplayedType\n type={item.type}\n customField={item.customField}\n repeatable={'repeatable' in item && item.repeatable}\n multiple={'multiple' in item && item.multiple}\n />\n {'conditions' in item &&\n item.conditions &&\n Object.keys(item.conditions).length > 0 && <Badge margin={4}>conditional</Badge>}\n {item.type === 'relation' && (\n <>\n &nbsp;({getRelationType(item.relation, item.targetAttribute)})&nbsp;\n {targetContentType &&\n formatMessage({\n id: getTrad('modelPage.attribute.with'),\n defaultMessage: 'with',\n })}\n &nbsp;\n {targetContentType && (\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/content-types/${targetContentType.uid}`}\n >\n {upperFirst(targetContentType.info.displayName)}\n </Link>\n )}\n {isPluginContentType &&\n `(${formatMessage({\n id: getTrad(`from`),\n defaultMessage: 'from',\n })}: ${isPluginContentType})`}\n </>\n )}\n {item.type === 'component' && <ComponentLink uid={item.component} />}\n </Typography>\n </Flex>\n </Flex>\n </Flex>\n\n <Box>\n <Flex justifyContent=\"flex-end\" gap={1} onClick={(e) => e.stopPropagation()}>\n <>\n <Box>{item.status && <StatusBadge status={item.status} />}</Box>\n {['component', 'dynamiczone'].includes(item.type) && (\n <IconButton\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n\n if (isOpen) {\n setIsOpen(false);\n } else {\n setIsOpen(true);\n }\n }}\n aria-expanded={isOpen}\n label={formatMessage({\n id: 'app.utils.toggle',\n defaultMessage: 'Toggle',\n })}\n variant=\"ghost\"\n withTooltip={false}\n >\n <ChevronDown\n aria-hidden\n fill=\"neutral500\"\n style={{\n transform: `rotate(${isOpen ? '0deg' : '-90deg'})`,\n transition: 'transform 0.5s',\n }}\n />\n </IconButton>\n )}\n {isInDevelopmentMode && item.configurable !== false ? (\n <>\n {!isMorph && (\n <IconButton\n onClick={handleClick}\n label={`${formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canEdit}\n >\n <Pencil />\n </IconButton>\n )}\n <IconButton\n onClick={handleDelete}\n label={`${formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canDelete}\n >\n <Trash />\n </IconButton>\n <Dialog.Root open={showConfirmDialog} onOpenChange={setShowConfirmDialog}>\n <ConfirmDialog onConfirm={handleConfirmDelete} onCancel={handleCancelDelete}>\n <Box>\n <Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions'\n ),\n defaultMessage:\n 'The following fields have conditions that depend on this field: ',\n })}\n <Typography fontWeight=\"bold\">\n {checkDependentRows(contentTypes, item.name)\n .map(({ attribute }) => attribute)\n .join(', ')}\n </Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions-end'\n ),\n defaultMessage: '. Are you sure you want to delete it?',\n })}\n </Typography>\n </Box>\n </ConfirmDialog>\n </Dialog.Root>\n </>\n ) : (\n <Flex padding={2}>\n <Lock fill=\"neutral500\" />\n </Flex>\n )}\n </>\n </Flex>\n </Box>\n </GridWrapper>\n\n <SubRow $shouldHideNestedInfos={shouldHideNestedInfos} $isOpen={isOpen}>\n {item.type === 'component' && (\n <ComponentList\n {...item}\n isFromDynamicZone={isFromDynamicZone}\n firstLoopComponentUid={firstLoopComponentUid}\n />\n )}\n\n {item.type === 'dynamiczone' && (\n <DynamicZoneList\n {...item}\n disabled={isTypeDeleted || item.status === 'REMOVED'}\n addComponent={addComponentToDZ!}\n forTarget={type.modelType}\n targetUid={type.uid}\n />\n )}\n </SubRow>\n </>\n );\n});\n\nconst SubRow = styled(Box)<{ $isOpen: boolean; $shouldHideNestedInfos?: boolean }>`\n display: ${({ $shouldHideNestedInfos }) => ($shouldHideNestedInfos ? 'none' : 'block')};\n max-height: ${({ $isOpen }) => ($isOpen ? '9999px' : '0px')};\n overflow: hidden;\n\n transition: ${({ $isOpen }) =>\n $isOpen ? 'max-height 1s ease-in-out' : 'max-height 0.5s cubic-bezier(0, 1, 0, 1)'};\n`;\n\nconst ComponentLink = ({ uid }: { uid: UID.Component }) => {\n const { components } = useDataManager();\n const type = get(components, uid);\n\n return (\n <>\n &nbsp;(\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/component-categories/${type.category}/${type.uid}`}\n >\n {upperFirst(type.info.displayName)}\n </Link>\n )\n </>\n );\n};\n"],"names":["GridWrapper","styled","Flex","theme","$isOverlay","colors","neutral150","spaces","$isDragging","StyledAttributeRow","Box","AttributeRow","forwardRef","props","ref","style","rest","_jsx","tag","attributes","background","shadow","isOverlay","aria-label","item","name","MemoizedRow","memo","firstLoopComponentUid","isFromDynamicZone","addComponentToDZ","secondLoopComponentUid","type","isDragging","handleRef","listeners","shouldHideNestedInfos","isOpen","setIsOpen","useState","isTypeDeleted","status","contentTypes","removeAttribute","isInDevelopmentMode","useDataManager","onOpenModalEditField","onOpenModalEditCustomField","useFormModalNavigation","formatMessage","useIntl","showConfirmDialog","setShowConfirmDialog","isDeleted","isMorph","relation","includes","ico","targetContentType","get","target","isPluginContentType","src","handleDelete","e","stopPropagation","dependentRows","checkDependentRows","length","forTarget","modelType","targetUid","uid","attributeToRemoveName","handleConfirmDelete","handleCancelDelete","handleClick","configurable","editTargetUid","attributeType","getAttributeDisplayedType","step","customField","attributeName","customFieldUid","loopNumber","canEdit","canDelete","cursor","canClick","_jsxs","_Fragment","onClick","undefined","paddingLeft","paddingRight","alignItems","overflow","gap","Curve","color","IconButton","role","variant","withTooltip","label","id","defaultMessage","disabled","outlineOffset","Drag","AttributeIcon","Typography","textColor","fontWeight","textDecoration","ellipsis","required","DisplayedType","repeatable","multiple","conditions","Object","keys","Badge","margin","getRelationType","targetAttribute","getTrad","Link","NavLink","to","upperFirst","info","displayName","ComponentLink","component","justifyContent","StatusBadge","preventDefault","aria-expanded","ChevronDown","aria-hidden","fill","transform","transition","Pencil","Trash","Dialog","Root","open","onOpenChange","ConfirmDialog","onConfirm","onCancel","map","attribute","join","padding","Lock","SubRow","$shouldHideNestedInfos","$isOpen","ComponentList","DynamicZoneList","addComponent","components","category"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { forwardRef, memo, useState } from 'react';
3
3
  import { ConfirmDialog } from '@strapi/admin/strapi-admin';
4
- import { Flex, Box, IconButton, Typography, Badge, Link, Dialog } from '@strapi/design-system';
4
+ import { Box, Flex, IconButton, Typography, Badge, Link, Dialog } from '@strapi/design-system';
5
5
  import { Drag, ChevronDown, Pencil, Trash, Lock } from '@strapi/icons';
6
6
  import get from 'lodash/get';
7
7
  import upperFirst from 'lodash/upperFirst';
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeRow.mjs","sources":["../../../admin/src/components/AttributeRow.tsx"],"sourcesContent":["import { forwardRef, memo, useState } from 'react';\n\nimport { ConfirmDialog } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, IconButton, Typography, Link, Badge, Dialog } from '@strapi/design-system';\nimport { ChevronDown, Drag, Lock, Pencil, Trash } from '@strapi/icons';\nimport get from 'lodash/get';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { Link as NavLink } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { Curve } from '../icons/Curve';\nimport { checkDependentRows } from '../utils/conditions';\nimport { getAttributeDisplayedType } from '../utils/getAttributeDisplayedType';\nimport { getRelationType } from '../utils/getRelationType';\nimport { getTrad } from '../utils/getTrad';\n\nimport { AttributeIcon } from './AttributeIcon';\nimport { ComponentList } from './ComponentList';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { DisplayedType } from './DisplayedType';\nimport { DynamicZoneList } from './DynamicZoneList';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\nimport { StatusBadge } from './Status';\n\nimport type { AnyAttribute, Component, ContentType } from '../types';\nimport type { DraggableAttributes, DraggableSyntheticListeners } from '@dnd-kit/core';\nimport type { UID } from '@strapi/types';\n\nexport const GridWrapper = styled(Flex)<{ $isOverlay?: boolean; $isDragging?: boolean }>`\n justify-content: space-between;\n\n border-top: ${({ theme, $isOverlay }) =>\n $isOverlay ? 'none' : `1px solid ${theme.colors.neutral150}`};\n\n padding-top: ${({ theme }) => theme.spaces[4]};\n padding-bottom: ${({ theme }) => theme.spaces[4]};\n\n opacity: ${({ $isDragging }) => ($isDragging ? 0 : 1)};\n align-items: center;\n`;\n\nexport type AttributeRowProps = {\n item: {\n id: string;\n index: number;\n } & AnyAttribute;\n firstLoopComponentUid?: UID.Component | null;\n isFromDynamicZone?: boolean;\n addComponentToDZ?: () => void;\n secondLoopComponentUid?: UID.Component | null;\n type: ContentType | Component;\n isDragging?: boolean;\n style?: Record<string, unknown>;\n listeners?: DraggableSyntheticListeners;\n attributes?: DraggableAttributes;\n isOverlay?: boolean;\n handleRef?: (element: HTMLElement | null) => void;\n};\n\nconst StyledAttributeRow = styled(Box)`\n list-style: none;\n list-style-type: none;\n`;\n\nexport const AttributeRow = forwardRef<HTMLLIElement, AttributeRowProps>((props, ref) => {\n const { style, ...rest } = props;\n\n return (\n <StyledAttributeRow\n tag=\"li\"\n ref={ref}\n {...props.attributes}\n style={style}\n background=\"neutral0\"\n shadow={props.isOverlay ? 'filterShadow' : 'none'}\n aria-label={props.item.name}\n >\n <MemoizedRow {...rest} />\n </StyledAttributeRow>\n );\n});\n\nconst MemoizedRow = memo((props: Omit<AttributeRowProps, 'style'>) => {\n const {\n item,\n firstLoopComponentUid,\n isFromDynamicZone,\n addComponentToDZ,\n secondLoopComponentUid,\n type,\n isDragging,\n isOverlay,\n handleRef,\n listeners,\n } = props;\n const shouldHideNestedInfos = isOverlay || isDragging;\n\n const [isOpen, setIsOpen] = useState<boolean>(true);\n\n const isTypeDeleted = type.status === 'REMOVED';\n\n const { contentTypes, removeAttribute, isInDevelopmentMode } = useDataManager();\n const { onOpenModalEditField, onOpenModalEditCustomField } = useFormModalNavigation();\n\n const { formatMessage } = useIntl();\n const [showConfirmDialog, setShowConfirmDialog] = useState(false);\n\n const isDeleted = item.status === 'REMOVED';\n\n const isMorph = item.type === 'relation' && item.relation.includes('morph');\n const ico = ['integer', 'biginteger', 'float', 'decimal'].includes(item.type)\n ? 'number'\n : item.type;\n\n const targetContentType = item.type === 'relation' ? get(contentTypes, item.target) : null;\n const isPluginContentType = get(targetContentType, 'plugin');\n\n const src = 'target' in item && item.target ? 'relation' : ico;\n\n const handleDelete = (e: React.MouseEvent | React.KeyboardEvent) => {\n e.stopPropagation();\n const dependentRows = checkDependentRows(contentTypes, item.name);\n if (dependentRows.length > 0) {\n setShowConfirmDialog(true);\n } else {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n }\n };\n\n const handleConfirmDelete = () => {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n setShowConfirmDialog(false);\n };\n\n const handleCancelDelete = () => {\n setShowConfirmDialog(false);\n };\n\n const handleClick = (e?: React.MouseEvent | React.KeyboardEvent) => {\n if (e) {\n e.stopPropagation();\n }\n\n if (isMorph) {\n return;\n }\n\n if (item.configurable !== false) {\n const editTargetUid = (secondLoopComponentUid || firstLoopComponentUid || type.uid)!;\n\n const attributeType = getAttributeDisplayedType(item.type);\n const step = item.type === 'component' ? '2' : null;\n\n if (item.customField) {\n onOpenModalEditCustomField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n customFieldUid: item.customField,\n });\n } else {\n onOpenModalEditField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n step,\n });\n }\n }\n };\n\n let loopNumber;\n\n if (secondLoopComponentUid && firstLoopComponentUid) {\n loopNumber = 2;\n } else if (firstLoopComponentUid) {\n loopNumber = 1;\n } else {\n loopNumber = 0;\n }\n\n const canEdit = !isTypeDeleted && !isDeleted;\n const canDelete = !isTypeDeleted && !isDeleted;\n\n const cursor = isTypeDeleted || isDeleted ? 'not-allowed' : 'move';\n\n const canClick = isInDevelopmentMode && item.configurable !== false && !isMorph && canEdit;\n\n return (\n <>\n <GridWrapper\n $isOverlay={isOverlay}\n $isDragging={isDragging}\n onClick={canClick ? handleClick : undefined}\n paddingLeft={4}\n paddingRight={4}\n >\n <Flex alignItems=\"center\" overflow=\"hidden\" gap={2}>\n {loopNumber !== 0 && !isOverlay && (\n <Curve color={isFromDynamicZone ? 'primary200' : 'neutral150'} />\n )}\n {isInDevelopmentMode && (\n <IconButton\n cursor={cursor}\n role=\"Handle\"\n ref={handleRef}\n {...listeners}\n variant=\"ghost\"\n withTooltip={false}\n label={`${formatMessage({\n id: 'app.utils.drag',\n defaultMessage: 'Drag',\n })} ${item.name}`}\n disabled={isTypeDeleted || isDeleted}\n style={{ outlineOffset: '-2px' }}\n >\n <Drag />\n </IconButton>\n )}\n <Flex gap={4}>\n <Flex gap={4} alignItems=\"center\">\n <AttributeIcon type={src} customField={item.customField} />\n <Typography\n textColor=\"neutral800\"\n fontWeight=\"bold\"\n textDecoration={isDeleted ? 'line-through' : 'none'}\n ellipsis\n overflow=\"hidden\"\n >\n {item.name}\n {'required' in item && item.required && (\n <Typography textColor=\"danger600\">*&nbsp;</Typography>\n )}\n </Typography>\n </Flex>\n <Flex>\n <Typography textColor=\"neutral600\">\n <DisplayedType\n type={item.type}\n customField={item.customField}\n repeatable={'repeatable' in item && item.repeatable}\n multiple={'multiple' in item && item.multiple}\n />\n {'conditions' in item &&\n item.conditions &&\n Object.keys(item.conditions).length > 0 && <Badge margin={4}>conditional</Badge>}\n {item.type === 'relation' && (\n <>\n &nbsp;({getRelationType(item.relation, item.targetAttribute)})&nbsp;\n {targetContentType &&\n formatMessage({\n id: getTrad('modelPage.attribute.with'),\n defaultMessage: 'with',\n })}\n &nbsp;\n {targetContentType && (\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/content-types/${targetContentType.uid}`}\n >\n {upperFirst(targetContentType.info.displayName)}\n </Link>\n )}\n {isPluginContentType &&\n `(${formatMessage({\n id: getTrad(`from`),\n defaultMessage: 'from',\n })}: ${isPluginContentType})`}\n </>\n )}\n {item.type === 'component' && <ComponentLink uid={item.component} />}\n </Typography>\n </Flex>\n </Flex>\n </Flex>\n\n <Box>\n <Flex justifyContent=\"flex-end\" gap={1} onClick={(e) => e.stopPropagation()}>\n <>\n <Box>{item.status && <StatusBadge status={item.status} />}</Box>\n {['component', 'dynamiczone'].includes(item.type) && (\n <IconButton\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n\n if (isOpen) {\n setIsOpen(false);\n } else {\n setIsOpen(true);\n }\n }}\n aria-expanded={isOpen}\n label={formatMessage({\n id: 'app.utils.toggle',\n defaultMessage: 'Toggle',\n })}\n variant=\"ghost\"\n withTooltip={false}\n >\n <ChevronDown\n aria-hidden\n fill=\"neutral500\"\n style={{\n transform: `rotate(${isOpen ? '0deg' : '-90deg'})`,\n transition: 'transform 0.5s',\n }}\n />\n </IconButton>\n )}\n {isInDevelopmentMode && item.configurable !== false ? (\n <>\n {!isMorph && (\n <IconButton\n onClick={handleClick}\n label={`${formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canEdit}\n >\n <Pencil />\n </IconButton>\n )}\n <IconButton\n onClick={handleDelete}\n label={`${formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canDelete}\n >\n <Trash />\n </IconButton>\n <Dialog.Root open={showConfirmDialog} onOpenChange={setShowConfirmDialog}>\n <ConfirmDialog onConfirm={handleConfirmDelete} onCancel={handleCancelDelete}>\n <Box>\n <Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions'\n ),\n defaultMessage:\n 'The following fields have conditions that depend on this field: ',\n })}\n <Typography fontWeight=\"bold\">\n {checkDependentRows(contentTypes, item.name)\n .map(({ attribute }) => attribute)\n .join(', ')}\n </Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions-end'\n ),\n defaultMessage: '. Are you sure you want to delete it?',\n })}\n </Typography>\n </Box>\n </ConfirmDialog>\n </Dialog.Root>\n </>\n ) : (\n <Flex padding={2}>\n <Lock fill=\"neutral500\" />\n </Flex>\n )}\n </>\n </Flex>\n </Box>\n </GridWrapper>\n\n <SubRow $shouldHideNestedInfos={shouldHideNestedInfos} $isOpen={isOpen}>\n {item.type === 'component' && (\n <ComponentList\n {...item}\n isFromDynamicZone={isFromDynamicZone}\n firstLoopComponentUid={firstLoopComponentUid}\n />\n )}\n\n {item.type === 'dynamiczone' && (\n <DynamicZoneList\n {...item}\n disabled={isTypeDeleted || item.status === 'REMOVED'}\n addComponent={addComponentToDZ!}\n forTarget={type.modelType}\n targetUid={type.uid}\n />\n )}\n </SubRow>\n </>\n );\n});\n\nconst SubRow = styled(Box)<{ $isOpen: boolean; $shouldHideNestedInfos?: boolean }>`\n display: ${({ $shouldHideNestedInfos }) => ($shouldHideNestedInfos ? 'none' : 'block')};\n max-height: ${({ $isOpen }) => ($isOpen ? '9999px' : '0px')};\n overflow: hidden;\n\n transition: ${({ $isOpen }) =>\n $isOpen ? 'max-height 1s ease-in-out' : 'max-height 0.5s cubic-bezier(0, 1, 0, 1)'};\n`;\n\nconst ComponentLink = ({ uid }: { uid: UID.Component }) => {\n const { components } = useDataManager();\n const type = get(components, uid);\n\n return (\n <>\n &nbsp;(\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/component-categories/${type.category}/${type.uid}`}\n >\n {upperFirst(type.info.displayName)}\n </Link>\n )\n </>\n );\n};\n"],"names":["GridWrapper","styled","Flex","theme","$isOverlay","colors","neutral150","spaces","$isDragging","StyledAttributeRow","Box","AttributeRow","forwardRef","props","ref","style","rest","_jsx","tag","attributes","background","shadow","isOverlay","aria-label","item","name","MemoizedRow","memo","firstLoopComponentUid","isFromDynamicZone","addComponentToDZ","secondLoopComponentUid","type","isDragging","handleRef","listeners","shouldHideNestedInfos","isOpen","setIsOpen","useState","isTypeDeleted","status","contentTypes","removeAttribute","isInDevelopmentMode","useDataManager","onOpenModalEditField","onOpenModalEditCustomField","useFormModalNavigation","formatMessage","useIntl","showConfirmDialog","setShowConfirmDialog","isDeleted","isMorph","relation","includes","ico","targetContentType","get","target","isPluginContentType","src","handleDelete","e","stopPropagation","dependentRows","checkDependentRows","length","forTarget","modelType","targetUid","uid","attributeToRemoveName","handleConfirmDelete","handleCancelDelete","handleClick","configurable","editTargetUid","attributeType","getAttributeDisplayedType","step","customField","attributeName","customFieldUid","loopNumber","canEdit","canDelete","cursor","canClick","_jsxs","_Fragment","onClick","undefined","paddingLeft","paddingRight","alignItems","overflow","gap","Curve","color","IconButton","role","variant","withTooltip","label","id","defaultMessage","disabled","outlineOffset","Drag","AttributeIcon","Typography","textColor","fontWeight","textDecoration","ellipsis","required","DisplayedType","repeatable","multiple","conditions","Object","keys","Badge","margin","getRelationType","targetAttribute","getTrad","Link","NavLink","to","upperFirst","info","displayName","ComponentLink","component","justifyContent","StatusBadge","preventDefault","aria-expanded","ChevronDown","aria-hidden","fill","transform","transition","Pencil","Trash","Dialog","Root","open","onOpenChange","ConfirmDialog","onConfirm","onCancel","map","attribute","join","padding","Lock","SubRow","$shouldHideNestedInfos","$isOpen","ComponentList","DynamicZoneList","addComponent","components","category"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AA6BaA,MAAAA,WAAAA,GAAcC,MAAOC,CAAAA,IAAAA,CAAsD;;;AAG1E,cAAA,EAAE,CAAC,EAAEC,KAAK,EAAEC,UAAU,EAAE,GAClCA,UAAAA,GAAa,MAAS,GAAA,CAAC,UAAU,EAAED,KAAAA,CAAME,MAAM,CAACC,UAAU,EAAE,CAAC;;eAElD,EAAE,CAAC,EAAEH,KAAK,EAAE,GAAKA,KAAMI,CAAAA,MAAM,CAAC,CAAA,CAAE,CAAC;kBAC9B,EAAE,CAAC,EAAEJ,KAAK,EAAE,GAAKA,KAAMI,CAAAA,MAAM,CAAC,CAAA,CAAE,CAAC;;AAExC,WAAA,EAAE,CAAC,EAAEC,WAAW,EAAE,GAAMA,WAAAA,GAAc,IAAI,CAAG,CAAA;;AAExD;AAoBA,MAAMC,kBAAAA,GAAqBR,MAAOS,CAAAA,GAAAA,CAAI;;;AAGtC,CAAC;AAEYC,MAAAA,YAAAA,iBAAeC,UAA6C,CAAA,CAACC,KAAOC,EAAAA,GAAAA,GAAAA;AAC/E,IAAA,MAAM,EAAEC,KAAK,EAAE,GAAGC,MAAM,GAAGH,KAAAA;AAE3B,IAAA,qBACEI,GAACR,CAAAA,kBAAAA,EAAAA;QACCS,GAAI,EAAA,IAAA;QACJJ,GAAKA,EAAAA,GAAAA;AACJ,QAAA,GAAGD,MAAMM,UAAU;QACpBJ,KAAOA,EAAAA,KAAAA;QACPK,UAAW,EAAA,UAAA;QACXC,MAAQR,EAAAA,KAAAA,CAAMS,SAAS,GAAG,cAAiB,GAAA,MAAA;QAC3CC,YAAYV,EAAAA,KAAAA,CAAMW,IAAI,CAACC,IAAI;AAE3B,QAAA,QAAA,gBAAAR,GAACS,CAAAA,WAAAA,EAAAA;AAAa,YAAA,GAAGV;;;AAGvB,CAAG;AAEH,MAAMU,WAAAA,iBAAcC,KAAK,CAACd,KAAAA,GAAAA;IACxB,MAAM,EACJW,IAAI,EACJI,qBAAqB,EACrBC,iBAAiB,EACjBC,gBAAgB,EAChBC,sBAAsB,EACtBC,IAAI,EACJC,UAAU,EACVX,SAAS,EACTY,SAAS,EACTC,SAAS,EACV,GAAGtB,KAAAA;AACJ,IAAA,MAAMuB,wBAAwBd,SAAaW,IAAAA,UAAAA;AAE3C,IAAA,MAAM,CAACI,MAAAA,EAAQC,SAAU,CAAA,GAAGC,QAAkB,CAAA,IAAA,CAAA;IAE9C,MAAMC,aAAAA,GAAgBR,IAAKS,CAAAA,MAAM,KAAK,SAAA;AAEtC,IAAA,MAAM,EAAEC,YAAY,EAAEC,eAAe,EAAEC,mBAAmB,EAAE,GAAGC,cAAAA,EAAAA;AAC/D,IAAA,MAAM,EAAEC,oBAAoB,EAAEC,0BAA0B,EAAE,GAAGC,sBAAAA,EAAAA;IAE7D,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAM,CAACC,iBAAAA,EAAmBC,oBAAqB,CAAA,GAAGb,QAAS,CAAA,KAAA,CAAA;IAE3D,MAAMc,SAAAA,GAAY7B,IAAKiB,CAAAA,MAAM,KAAK,SAAA;IAElC,MAAMa,OAAAA,GAAU9B,KAAKQ,IAAI,KAAK,cAAcR,IAAK+B,CAAAA,QAAQ,CAACC,QAAQ,CAAC,OAAA,CAAA;AACnE,IAAA,MAAMC,GAAM,GAAA;AAAC,QAAA,SAAA;AAAW,QAAA,YAAA;AAAc,QAAA,OAAA;AAAS,QAAA;AAAU,KAAA,CAACD,QAAQ,CAAChC,IAAAA,CAAKQ,IAAI,CACxE,GAAA,QAAA,GACAR,KAAKQ,IAAI;IAEb,MAAM0B,iBAAAA,GAAoBlC,KAAKQ,IAAI,KAAK,aAAa2B,GAAIjB,CAAAA,YAAAA,EAAclB,IAAKoC,CAAAA,MAAM,CAAI,GAAA,IAAA;IACtF,MAAMC,mBAAAA,GAAsBF,IAAID,iBAAmB,EAAA,QAAA,CAAA;AAEnD,IAAA,MAAMI,MAAM,QAAYtC,IAAAA,IAAAA,IAAQA,IAAKoC,CAAAA,MAAM,GAAG,UAAaH,GAAAA,GAAAA;AAE3D,IAAA,MAAMM,eAAe,CAACC,CAAAA,GAAAA;AACpBA,QAAAA,CAAAA,CAAEC,eAAe,EAAA;AACjB,QAAA,MAAMC,aAAgBC,GAAAA,kBAAAA,CAAmBzB,YAAclB,EAAAA,IAAAA,CAAKC,IAAI,CAAA;QAChE,IAAIyC,aAAAA,CAAcE,MAAM,GAAG,CAAG,EAAA;YAC5BhB,oBAAqB,CAAA,IAAA,CAAA;SAChB,MAAA;YACLT,eAAgB,CAAA;AACd0B,gBAAAA,SAAAA,EAAWrC,KAAKsC,SAAS;AACzBC,gBAAAA,SAAAA,EAAWvC,KAAKwC,GAAG;AACnBC,gBAAAA,qBAAAA,EAAuBjD,KAAKC;AAC9B,aAAA,CAAA;AACF;AACF,KAAA;AAEA,IAAA,MAAMiD,mBAAsB,GAAA,IAAA;QAC1B/B,eAAgB,CAAA;AACd0B,YAAAA,SAAAA,EAAWrC,KAAKsC,SAAS;AACzBC,YAAAA,SAAAA,EAAWvC,KAAKwC,GAAG;AACnBC,YAAAA,qBAAAA,EAAuBjD,KAAKC;AAC9B,SAAA,CAAA;QACA2B,oBAAqB,CAAA,KAAA,CAAA;AACvB,KAAA;AAEA,IAAA,MAAMuB,kBAAqB,GAAA,IAAA;QACzBvB,oBAAqB,CAAA,KAAA,CAAA;AACvB,KAAA;AAEA,IAAA,MAAMwB,cAAc,CAACZ,CAAAA,GAAAA;AACnB,QAAA,IAAIA,CAAG,EAAA;AACLA,YAAAA,CAAAA,CAAEC,eAAe,EAAA;AACnB;AAEA,QAAA,IAAIX,OAAS,EAAA;AACX,YAAA;AACF;QAEA,IAAI9B,IAAAA,CAAKqD,YAAY,KAAK,KAAO,EAAA;AAC/B,YAAA,MAAMC,aAAiB/C,GAAAA,sBAAAA,IAA0BH,qBAAyBI,IAAAA,IAAAA,CAAKwC,GAAG;YAElF,MAAMO,aAAAA,GAAgBC,yBAA0BxD,CAAAA,IAAAA,CAAKQ,IAAI,CAAA;AACzD,YAAA,MAAMiD,IAAOzD,GAAAA,IAAAA,CAAKQ,IAAI,KAAK,cAAc,GAAM,GAAA,IAAA;YAE/C,IAAIR,IAAAA,CAAK0D,WAAW,EAAE;gBACpBnC,0BAA2B,CAAA;AACzBsB,oBAAAA,SAAAA,EAAWrC,KAAKsC,SAAS;oBACzBC,SAAWO,EAAAA,aAAAA;AACXK,oBAAAA,aAAAA,EAAe3D,KAAKC,IAAI;AACxBsD,oBAAAA,aAAAA;AACAK,oBAAAA,cAAAA,EAAgB5D,KAAK0D;AACvB,iBAAA,CAAA;aACK,MAAA;gBACLpC,oBAAqB,CAAA;AACnBuB,oBAAAA,SAAAA,EAAWrC,KAAKsC,SAAS;oBACzBC,SAAWO,EAAAA,aAAAA;AACXK,oBAAAA,aAAAA,EAAe3D,KAAKC,IAAI;AACxBsD,oBAAAA,aAAAA;AACAE,oBAAAA;AACF,iBAAA,CAAA;AACF;AACF;AACF,KAAA;IAEA,IAAII,UAAAA;AAEJ,IAAA,IAAItD,0BAA0BH,qBAAuB,EAAA;QACnDyD,UAAa,GAAA,CAAA;AACf,KAAA,MAAO,IAAIzD,qBAAuB,EAAA;QAChCyD,UAAa,GAAA,CAAA;KACR,MAAA;QACLA,UAAa,GAAA,CAAA;AACf;IAEA,MAAMC,OAAAA,GAAU,CAAC9C,aAAAA,IAAiB,CAACa,SAAAA;IACnC,MAAMkC,SAAAA,GAAY,CAAC/C,aAAAA,IAAiB,CAACa,SAAAA;IAErC,MAAMmC,MAAAA,GAAShD,aAAiBa,IAAAA,SAAAA,GAAY,aAAgB,GAAA,MAAA;AAE5D,IAAA,MAAMoC,WAAW7C,mBAAuBpB,IAAAA,IAAAA,CAAKqD,YAAY,KAAK,KAAA,IAAS,CAACvB,OAAWgC,IAAAA,OAAAA;IAEnF,qBACEI,IAAA,CAAAC,QAAA,EAAA;;0BACED,IAAC1F,CAAAA,WAAAA,EAAAA;gBACCI,UAAYkB,EAAAA,SAAAA;gBACZd,WAAayB,EAAAA,UAAAA;AACb2D,gBAAAA,OAAAA,EAASH,WAAWb,WAAciB,GAAAA,SAAAA;gBAClCC,WAAa,EAAA,CAAA;gBACbC,YAAc,EAAA,CAAA;;kCAEdL,IAACxF,CAAAA,IAAAA,EAAAA;wBAAK8F,UAAW,EAAA,QAAA;wBAASC,QAAS,EAAA,QAAA;wBAASC,GAAK,EAAA,CAAA;;4BAC9Cb,UAAe,KAAA,CAAA,IAAK,CAAC/D,SAAAA,kBACpBL,GAACkF,CAAAA,KAAAA,EAAAA;AAAMC,gCAAAA,KAAAA,EAAOvE,oBAAoB,YAAe,GAAA;;AAElDe,4BAAAA,mBAAAA,kBACC3B,GAACoF,CAAAA,UAAAA,EAAAA;gCACCb,MAAQA,EAAAA,MAAAA;gCACRc,IAAK,EAAA,QAAA;gCACLxF,GAAKoB,EAAAA,SAAAA;AACJ,gCAAA,GAAGC,SAAS;gCACboE,OAAQ,EAAA,OAAA;gCACRC,WAAa,EAAA,KAAA;AACbC,gCAAAA,KAAAA,EAAO,GAAGxD,aAAc,CAAA;oCACtByD,EAAI,EAAA,gBAAA;oCACJC,cAAgB,EAAA;AAClB,iCAAA,CAAA,CAAG,CAAC,EAAEnF,IAAKC,CAAAA,IAAI,CAAE,CAAA;AACjBmF,gCAAAA,QAAAA,EAAUpE,aAAiBa,IAAAA,SAAAA;gCAC3BtC,KAAO,EAAA;oCAAE8F,aAAe,EAAA;AAAO,iCAAA;AAE/B,gCAAA,QAAA,gBAAA5F,GAAC6F,CAAAA,IAAAA,EAAAA,EAAAA;;0CAGLpB,IAACxF,CAAAA,IAAAA,EAAAA;gCAAKgG,GAAK,EAAA,CAAA;;kDACTR,IAACxF,CAAAA,IAAAA,EAAAA;wCAAKgG,GAAK,EAAA,CAAA;wCAAGF,UAAW,EAAA,QAAA;;0DACvB/E,GAAC8F,CAAAA,aAAAA,EAAAA;gDAAc/E,IAAM8B,EAAAA,GAAAA;AAAKoB,gDAAAA,WAAAA,EAAa1D,KAAK0D;;0DAC5CQ,IAACsB,CAAAA,UAAAA,EAAAA;gDACCC,SAAU,EAAA,YAAA;gDACVC,UAAW,EAAA,MAAA;AACXC,gDAAAA,cAAAA,EAAgB9D,YAAY,cAAiB,GAAA,MAAA;gDAC7C+D,QAAQ,EAAA,IAAA;gDACRnB,QAAS,EAAA,QAAA;;AAERzE,oDAAAA,IAAAA,CAAKC,IAAI;AACT,oDAAA,UAAA,IAAcD,IAAQA,IAAAA,IAAAA,CAAK6F,QAAQ,kBAClCpG,GAAC+F,CAAAA,UAAAA,EAAAA;wDAAWC,SAAU,EAAA,WAAA;AAAY,wDAAA,QAAA,EAAA;;;;;;kDAIxChG,GAACf,CAAAA,IAAAA,EAAAA;AACC,wCAAA,QAAA,gBAAAwF,IAACsB,CAAAA,UAAAA,EAAAA;4CAAWC,SAAU,EAAA,YAAA;;8DACpBhG,GAACqG,CAAAA,aAAAA,EAAAA;AACCtF,oDAAAA,IAAAA,EAAMR,KAAKQ,IAAI;AACfkD,oDAAAA,WAAAA,EAAa1D,KAAK0D,WAAW;oDAC7BqC,UAAY,EAAA,YAAA,IAAgB/F,IAAQA,IAAAA,IAAAA,CAAK+F,UAAU;oDACnDC,QAAU,EAAA,UAAA,IAAchG,IAAQA,IAAAA,IAAAA,CAAKgG;;AAEtC,gDAAA,YAAA,IAAgBhG,IACfA,IAAAA,IAAAA,CAAKiG,UAAU,IACfC,MAAOC,CAAAA,IAAI,CAACnG,IAAAA,CAAKiG,UAAU,CAAA,CAAErD,MAAM,GAAG,mBAAKnD,GAAC2G,CAAAA,KAAAA,EAAAA;oDAAMC,MAAQ,EAAA,CAAA;AAAG,oDAAA,QAAA,EAAA;;gDAC9DrG,IAAKQ,CAAAA,IAAI,KAAK,UACb,kBAAA0D,IAAA,CAAAC,QAAA,EAAA;;AAAE,wDAAA,IAAA;AACQmC,wDAAAA,eAAAA,CAAgBtG,IAAK+B,CAAAA,QAAQ,EAAE/B,IAAAA,CAAKuG,eAAe,CAAA;AAAE,wDAAA,IAAA;AAC5DrE,wDAAAA,iBAAAA,IACCT,aAAc,CAAA;AACZyD,4DAAAA,EAAAA,EAAIsB,OAAQ,CAAA,0BAAA,CAAA;4DACZrB,cAAgB,EAAA;AAClB,yDAAA,CAAA;AAAG,wDAAA,GAAA;AAEJjD,wDAAAA,iBAAAA,kBACCzC,GAACgH,CAAAA,IAAAA,EAAAA;4DACCrC,OAAS,EAAA,CAAC5B,CAAMA,GAAAA,CAAAA,CAAEC,eAAe,EAAA;4DACjC/C,GAAKgH,EAAAA,MAAAA;AACLC,4DAAAA,EAAAA,EAAI,CAAC,4CAA4C,EAAEzE,iBAAAA,CAAkBc,GAAG,CAAE,CAAA;sEAEzE4D,UAAW1E,CAAAA,iBAAAA,CAAkB2E,IAAI,CAACC,WAAW;;wDAGjDzE,mBACC,IAAA,CAAC,CAAC,EAAEZ,aAAc,CAAA;4DAChByD,EAAIsB,EAAAA,OAAAA,CAAQ,CAAC,IAAI,CAAC,CAAA;4DAClBrB,cAAgB,EAAA;AAClB,yDAAA,CAAA,CAAG,EAAE,EAAE9C,mBAAoB,CAAA,CAAC;;;gDAGjCrC,IAAKQ,CAAAA,IAAI,KAAK,WAAA,kBAAef,GAACsH,CAAAA,aAAAA,EAAAA;AAAc/D,oDAAAA,GAAAA,EAAKhD,KAAKgH;;;;;;;;;kCAM/DvH,GAACP,CAAAA,GAAAA,EAAAA;AACC,wBAAA,QAAA,gBAAAO,GAACf,CAAAA,IAAAA,EAAAA;4BAAKuI,cAAe,EAAA,UAAA;4BAAWvC,GAAK,EAAA,CAAA;4BAAGN,OAAS,EAAA,CAAC5B,CAAMA,GAAAA,CAAAA,CAAEC,eAAe,EAAA;oDACvEyB,IAAA,CAAAC,QAAA,EAAA;;kDACE1E,GAACP,CAAAA,GAAAA,EAAAA;kDAAKc,IAAKiB,CAAAA,MAAM,kBAAIxB,GAACyH,CAAAA,WAAAA,EAAAA;AAAYjG,4CAAAA,MAAAA,EAAQjB,KAAKiB;;;AAC9C,oCAAA;AAAC,wCAAA,WAAA;AAAa,wCAAA;AAAc,qCAAA,CAACe,QAAQ,CAAChC,IAAKQ,CAAAA,IAAI,mBAC9Cf,GAACoF,CAAAA,UAAAA,EAAAA;AACCT,wCAAAA,OAAAA,EAAS,CAAC5B,CAAAA,GAAAA;AACRA,4CAAAA,CAAAA,CAAE2E,cAAc,EAAA;AAChB3E,4CAAAA,CAAAA,CAAEC,eAAe,EAAA;AAEjB,4CAAA,IAAI5B,MAAQ,EAAA;gDACVC,SAAU,CAAA,KAAA,CAAA;6CACL,MAAA;gDACLA,SAAU,CAAA,IAAA,CAAA;AACZ;AACF,yCAAA;wCACAsG,eAAevG,EAAAA,MAAAA;AACfoE,wCAAAA,KAAAA,EAAOxD,aAAc,CAAA;4CACnByD,EAAI,EAAA,kBAAA;4CACJC,cAAgB,EAAA;AAClB,yCAAA,CAAA;wCACAJ,OAAQ,EAAA,OAAA;wCACRC,WAAa,EAAA,KAAA;AAEb,wCAAA,QAAA,gBAAAvF,GAAC4H,CAAAA,WAAAA,EAAAA;4CACCC,aAAW,EAAA,IAAA;4CACXC,IAAK,EAAA,YAAA;4CACLhI,KAAO,EAAA;AACLiI,gDAAAA,SAAAA,EAAW,CAAC,OAAO,EAAE3G,SAAS,MAAS,GAAA,QAAA,CAAS,CAAC,CAAC;gDAClD4G,UAAY,EAAA;AACd;;;oCAILrG,mBAAuBpB,IAAAA,IAAAA,CAAKqD,YAAY,KAAK,KAC5C,iBAAAa,IAAA,CAAAC,QAAA,EAAA;;AACG,4CAAA,CAACrC,yBACArC,GAACoF,CAAAA,UAAAA,EAAAA;gDACCT,OAAShB,EAAAA,WAAAA;AACT6B,gDAAAA,KAAAA,EAAO,GAAGxD,aAAc,CAAA;oDACtByD,EAAI,EAAA,gBAAA;oDACJC,cAAgB,EAAA;AAClB,iDAAA,CAAA,CAAG,CAAC,EAAEnF,IAAKC,CAAAA,IAAI,CAAE,CAAA;gDACjB8E,OAAQ,EAAA,OAAA;AACRK,gDAAAA,QAAAA,EAAU,CAACtB,OAAAA;AAEX,gDAAA,QAAA,gBAAArE,GAACiI,CAAAA,MAAAA,EAAAA,EAAAA;;0DAGLjI,GAACoF,CAAAA,UAAAA,EAAAA;gDACCT,OAAS7B,EAAAA,YAAAA;AACT0C,gDAAAA,KAAAA,EAAO,GAAGxD,aAAc,CAAA;oDACtByD,EAAI,EAAA,eAAA;oDACJC,cAAgB,EAAA;AAClB,iDAAA,CAAA,CAAG,CAAC,EAAEnF,IAAKC,CAAAA,IAAI,CAAE,CAAA;gDACjB8E,OAAQ,EAAA,OAAA;AACRK,gDAAAA,QAAAA,EAAU,CAACrB,SAAAA;AAEX,gDAAA,QAAA,gBAAAtE,GAACkI,CAAAA,KAAAA,EAAAA,EAAAA;;AAEH,0DAAAlI,GAAA,CAACmI,OAAOC,IAAI,EAAA;gDAACC,IAAMnG,EAAAA,iBAAAA;gDAAmBoG,YAAcnG,EAAAA,oBAAAA;AAClD,gDAAA,QAAA,gBAAAnC,GAACuI,CAAAA,aAAAA,EAAAA;oDAAcC,SAAW/E,EAAAA,mBAAAA;oDAAqBgF,QAAU/E,EAAAA,kBAAAA;AACvD,oDAAA,QAAA,gBAAA1D,GAACP,CAAAA,GAAAA,EAAAA;AACC,wDAAA,QAAA,gBAAAgF,IAACsB,CAAAA,UAAAA,EAAAA;;gEACE/D,aAAc,CAAA;AACbyD,oEAAAA,EAAAA,EAAIsB,OACF,CAAA,2DAAA,CAAA;oEAEFrB,cACE,EAAA;AACJ,iEAAA,CAAA;8EACA1F,GAAC+F,CAAAA,UAAAA,EAAAA;oEAAWE,UAAW,EAAA,MAAA;AACpB/C,oEAAAA,QAAAA,EAAAA,kBAAAA,CAAmBzB,YAAclB,EAAAA,IAAAA,CAAKC,IAAI,CAAA,CACxCkI,GAAG,CAAC,CAAC,EAAEC,SAAS,EAAE,GAAKA,SAAAA,CAAAA,CACvBC,IAAI,CAAC,IAAA;;gEAET5G,aAAc,CAAA;AACbyD,oEAAAA,EAAAA,EAAIsB,OACF,CAAA,+DAAA,CAAA;oEAEFrB,cAAgB,EAAA;AAClB,iEAAA;;;;;;;uDAOV1F,GAACf,CAAAA,IAAAA,EAAAA;wCAAK4J,OAAS,EAAA,CAAA;AACb,wCAAA,QAAA,gBAAA7I,GAAC8I,CAAAA,IAAAA,EAAAA;4CAAKhB,IAAK,EAAA;;;;;;;;;0BAQvBrD,IAACsE,CAAAA,MAAAA,EAAAA;gBAAOC,sBAAwB7H,EAAAA,qBAAAA;gBAAuB8H,OAAS7H,EAAAA,MAAAA;;oBAC7Db,IAAKQ,CAAAA,IAAI,KAAK,WAAA,kBACbf,GAACkJ,CAAAA,aAAAA,EAAAA;AACE,wBAAA,GAAG3I,IAAI;wBACRK,iBAAmBA,EAAAA,iBAAAA;wBACnBD,qBAAuBA,EAAAA;;oBAI1BJ,IAAKQ,CAAAA,IAAI,KAAK,aAAA,kBACbf,GAACmJ,CAAAA,eAAAA,EAAAA;AACE,wBAAA,GAAG5I,IAAI;wBACRoF,QAAUpE,EAAAA,aAAAA,IAAiBhB,IAAKiB,CAAAA,MAAM,KAAK,SAAA;wBAC3C4H,YAAcvI,EAAAA,gBAAAA;AACduC,wBAAAA,SAAAA,EAAWrC,KAAKsC,SAAS;AACzBC,wBAAAA,SAAAA,EAAWvC,KAAKwC;;;;;;AAM5B,CAAA,CAAA;AAEA,MAAMwF,MAAAA,GAAS/J,MAAOS,CAAAA,GAAAA,CAA4D;AACvE,WAAA,EAAE,CAAC,EAAEuJ,sBAAsB,EAAE,GAAMA,sBAAAA,GAAyB,SAAS,OAAS,CAAA;AAC3E,cAAA,EAAE,CAAC,EAAEC,OAAO,EAAE,GAAMA,OAAAA,GAAU,WAAW,KAAO,CAAA;;;AAGhD,cAAA,EAAE,CAAC,EAAEA,OAAO,EAAE,GACxBA,OAAAA,GAAU,8BAA8B,0CAA2C,CAAA;AACvF,CAAC;AAED,MAAM3B,aAAgB,GAAA,CAAC,EAAE/D,GAAG,EAA0B,GAAA;IACpD,MAAM,EAAE8F,UAAU,EAAE,GAAGzH,cAAAA,EAAAA;IACvB,MAAMb,IAAAA,GAAO2B,IAAI2G,UAAY9F,EAAAA,GAAAA,CAAAA;IAE7B,qBACEkB,IAAA,CAAAC,QAAA,EAAA;;AAAE,YAAA,IAAA;0BAEA1E,GAACgH,CAAAA,IAAAA,EAAAA;gBACCrC,OAAS,EAAA,CAAC5B,CAAMA,GAAAA,CAAAA,CAAEC,eAAe,EAAA;gBACjC/C,GAAKgH,EAAAA,MAAAA;gBACLC,EAAI,EAAA,CAAC,mDAAmD,EAAEnG,IAAKuI,CAAAA,QAAQ,CAAC,CAAC,EAAEvI,IAAKwC,CAAAA,GAAG,CAAE,CAAA;0BAEpF4D,UAAWpG,CAAAA,IAAAA,CAAKqG,IAAI,CAACC,WAAW;;AAC5B,YAAA;;;AAIb,CAAA;;;;"}
1
+ {"version":3,"file":"AttributeRow.mjs","sources":["../../../admin/src/components/AttributeRow.tsx"],"sourcesContent":["import { forwardRef, memo, useState } from 'react';\n\nimport { ConfirmDialog } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, IconButton, Typography, Link, Badge, Dialog } from '@strapi/design-system';\nimport { ChevronDown, Drag, Lock, Pencil, Trash } from '@strapi/icons';\nimport get from 'lodash/get';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { Link as NavLink } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { Curve } from '../icons/Curve';\nimport { checkDependentRows } from '../utils/conditions';\nimport { getAttributeDisplayedType } from '../utils/getAttributeDisplayedType';\nimport { getRelationType } from '../utils/getRelationType';\nimport { getTrad } from '../utils/getTrad';\n\nimport { AttributeIcon } from './AttributeIcon';\nimport { ComponentList } from './ComponentList';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { DisplayedType } from './DisplayedType';\nimport { DynamicZoneList } from './DynamicZoneList';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\nimport { StatusBadge } from './Status';\n\nimport type { AnyAttribute, Component, ContentType } from '../types';\nimport type { DraggableAttributes, DraggableSyntheticListeners } from '@dnd-kit/core';\nimport type { UID } from '@strapi/types';\n\nexport const GridWrapper = styled(Flex)<{ $isOverlay?: boolean; $isDragging?: boolean }>`\n justify-content: space-between;\n\n border-top: ${({ theme, $isOverlay }) =>\n $isOverlay ? 'none' : `1px solid ${theme.colors.neutral150}`};\n\n padding-top: ${({ theme }) => theme.spaces[4]};\n padding-bottom: ${({ theme }) => theme.spaces[4]};\n\n opacity: ${({ $isDragging }) => ($isDragging ? 0 : 1)};\n align-items: center;\n`;\n\nexport type AttributeRowProps = {\n item: {\n id: string;\n index: number;\n } & AnyAttribute;\n firstLoopComponentUid?: UID.Component | null;\n isFromDynamicZone?: boolean;\n addComponentToDZ?: () => void;\n secondLoopComponentUid?: UID.Component | null;\n type: ContentType | Component;\n isDragging?: boolean;\n style?: Record<string, unknown>;\n listeners?: DraggableSyntheticListeners;\n attributes?: DraggableAttributes;\n isOverlay?: boolean;\n handleRef?: (element: HTMLElement | null) => void;\n};\n\nconst StyledAttributeRow = styled(Box)`\n list-style: none;\n list-style-type: none;\n`;\n\nexport const AttributeRow = forwardRef<HTMLLIElement, AttributeRowProps>((props, ref) => {\n const { style, ...rest } = props;\n\n return (\n <StyledAttributeRow\n tag=\"li\"\n ref={ref}\n {...props.attributes}\n style={style}\n background=\"neutral0\"\n shadow={props.isOverlay ? 'filterShadow' : 'none'}\n aria-label={props.item.name}\n >\n <MemoizedRow {...rest} />\n </StyledAttributeRow>\n );\n});\n\nconst MemoizedRow = memo((props: Omit<AttributeRowProps, 'style'>) => {\n const {\n item,\n firstLoopComponentUid,\n isFromDynamicZone,\n addComponentToDZ,\n secondLoopComponentUid,\n type,\n isDragging,\n isOverlay,\n handleRef,\n listeners,\n } = props;\n const shouldHideNestedInfos = isOverlay || isDragging;\n\n const [isOpen, setIsOpen] = useState<boolean>(true);\n\n const isTypeDeleted = type.status === 'REMOVED';\n\n const { contentTypes, removeAttribute, isInDevelopmentMode } = useDataManager();\n const { onOpenModalEditField, onOpenModalEditCustomField } = useFormModalNavigation();\n\n const { formatMessage } = useIntl();\n const [showConfirmDialog, setShowConfirmDialog] = useState(false);\n\n const isDeleted = item.status === 'REMOVED';\n\n const isMorph = item.type === 'relation' && item.relation.includes('morph');\n const ico = ['integer', 'biginteger', 'float', 'decimal'].includes(item.type)\n ? 'number'\n : item.type;\n\n const targetContentType = item.type === 'relation' ? get(contentTypes, item.target) : null;\n const isPluginContentType = get(targetContentType, 'plugin');\n\n const src = 'target' in item && item.target ? 'relation' : ico;\n\n const handleDelete = (e: React.MouseEvent | React.KeyboardEvent) => {\n e.stopPropagation();\n const dependentRows = checkDependentRows(contentTypes, item.name);\n if (dependentRows.length > 0) {\n setShowConfirmDialog(true);\n } else {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n }\n };\n\n const handleConfirmDelete = () => {\n removeAttribute({\n forTarget: type.modelType,\n targetUid: type.uid,\n attributeToRemoveName: item.name,\n });\n setShowConfirmDialog(false);\n };\n\n const handleCancelDelete = () => {\n setShowConfirmDialog(false);\n };\n\n const handleClick = (e?: React.MouseEvent | React.KeyboardEvent) => {\n if (e) {\n e.stopPropagation();\n }\n\n if (isMorph) {\n return;\n }\n\n if (item.configurable !== false) {\n const editTargetUid = (secondLoopComponentUid || firstLoopComponentUid || type.uid)!;\n\n const attributeType = getAttributeDisplayedType(item.type);\n const step = item.type === 'component' ? '2' : null;\n\n if (item.customField) {\n onOpenModalEditCustomField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n customFieldUid: item.customField,\n });\n } else {\n onOpenModalEditField({\n forTarget: type.modelType,\n targetUid: editTargetUid,\n attributeName: item.name,\n attributeType,\n step,\n });\n }\n }\n };\n\n let loopNumber;\n\n if (secondLoopComponentUid && firstLoopComponentUid) {\n loopNumber = 2;\n } else if (firstLoopComponentUid) {\n loopNumber = 1;\n } else {\n loopNumber = 0;\n }\n\n const canEdit = !isTypeDeleted && !isDeleted;\n const canDelete = !isTypeDeleted && !isDeleted;\n\n const cursor = isTypeDeleted || isDeleted ? 'not-allowed' : 'move';\n\n const canClick = isInDevelopmentMode && item.configurable !== false && !isMorph && canEdit;\n\n return (\n <>\n <GridWrapper\n $isOverlay={isOverlay}\n $isDragging={isDragging}\n onClick={canClick ? handleClick : undefined}\n paddingLeft={4}\n paddingRight={4}\n >\n <Flex alignItems=\"center\" overflow=\"hidden\" gap={2}>\n {loopNumber !== 0 && !isOverlay && (\n <Curve color={isFromDynamicZone ? 'primary200' : 'neutral150'} />\n )}\n {isInDevelopmentMode && (\n <IconButton\n cursor={cursor}\n role=\"Handle\"\n ref={handleRef}\n {...listeners}\n variant=\"ghost\"\n withTooltip={false}\n label={`${formatMessage({\n id: 'app.utils.drag',\n defaultMessage: 'Drag',\n })} ${item.name}`}\n disabled={isTypeDeleted || isDeleted}\n style={{ outlineOffset: '-2px' }}\n >\n <Drag />\n </IconButton>\n )}\n <Flex gap={4}>\n <Flex gap={4} alignItems=\"center\">\n <AttributeIcon type={src} customField={item.customField} />\n <Typography\n textColor=\"neutral800\"\n fontWeight=\"bold\"\n textDecoration={isDeleted ? 'line-through' : 'none'}\n ellipsis\n overflow=\"hidden\"\n >\n {item.name}\n {'required' in item && item.required && (\n <Typography textColor=\"danger600\">*&nbsp;</Typography>\n )}\n </Typography>\n </Flex>\n <Flex>\n <Typography textColor=\"neutral600\">\n <DisplayedType\n type={item.type}\n customField={item.customField}\n repeatable={'repeatable' in item && item.repeatable}\n multiple={'multiple' in item && item.multiple}\n />\n {'conditions' in item &&\n item.conditions &&\n Object.keys(item.conditions).length > 0 && <Badge margin={4}>conditional</Badge>}\n {item.type === 'relation' && (\n <>\n &nbsp;({getRelationType(item.relation, item.targetAttribute)})&nbsp;\n {targetContentType &&\n formatMessage({\n id: getTrad('modelPage.attribute.with'),\n defaultMessage: 'with',\n })}\n &nbsp;\n {targetContentType && (\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/content-types/${targetContentType.uid}`}\n >\n {upperFirst(targetContentType.info.displayName)}\n </Link>\n )}\n {isPluginContentType &&\n `(${formatMessage({\n id: getTrad(`from`),\n defaultMessage: 'from',\n })}: ${isPluginContentType})`}\n </>\n )}\n {item.type === 'component' && <ComponentLink uid={item.component} />}\n </Typography>\n </Flex>\n </Flex>\n </Flex>\n\n <Box>\n <Flex justifyContent=\"flex-end\" gap={1} onClick={(e) => e.stopPropagation()}>\n <>\n <Box>{item.status && <StatusBadge status={item.status} />}</Box>\n {['component', 'dynamiczone'].includes(item.type) && (\n <IconButton\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n\n if (isOpen) {\n setIsOpen(false);\n } else {\n setIsOpen(true);\n }\n }}\n aria-expanded={isOpen}\n label={formatMessage({\n id: 'app.utils.toggle',\n defaultMessage: 'Toggle',\n })}\n variant=\"ghost\"\n withTooltip={false}\n >\n <ChevronDown\n aria-hidden\n fill=\"neutral500\"\n style={{\n transform: `rotate(${isOpen ? '0deg' : '-90deg'})`,\n transition: 'transform 0.5s',\n }}\n />\n </IconButton>\n )}\n {isInDevelopmentMode && item.configurable !== false ? (\n <>\n {!isMorph && (\n <IconButton\n onClick={handleClick}\n label={`${formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canEdit}\n >\n <Pencil />\n </IconButton>\n )}\n <IconButton\n onClick={handleDelete}\n label={`${formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })} ${item.name}`}\n variant=\"ghost\"\n disabled={!canDelete}\n >\n <Trash />\n </IconButton>\n <Dialog.Root open={showConfirmDialog} onOpenChange={setShowConfirmDialog}>\n <ConfirmDialog onConfirm={handleConfirmDelete} onCancel={handleCancelDelete}>\n <Box>\n <Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions'\n ),\n defaultMessage:\n 'The following fields have conditions that depend on this field: ',\n })}\n <Typography fontWeight=\"bold\">\n {checkDependentRows(contentTypes, item.name)\n .map(({ attribute }) => attribute)\n .join(', ')}\n </Typography>\n {formatMessage({\n id: getTrad(\n 'popUpWarning.bodyMessage.delete-attribute-with-conditions-end'\n ),\n defaultMessage: '. Are you sure you want to delete it?',\n })}\n </Typography>\n </Box>\n </ConfirmDialog>\n </Dialog.Root>\n </>\n ) : (\n <Flex padding={2}>\n <Lock fill=\"neutral500\" />\n </Flex>\n )}\n </>\n </Flex>\n </Box>\n </GridWrapper>\n\n <SubRow $shouldHideNestedInfos={shouldHideNestedInfos} $isOpen={isOpen}>\n {item.type === 'component' && (\n <ComponentList\n {...item}\n isFromDynamicZone={isFromDynamicZone}\n firstLoopComponentUid={firstLoopComponentUid}\n />\n )}\n\n {item.type === 'dynamiczone' && (\n <DynamicZoneList\n {...item}\n disabled={isTypeDeleted || item.status === 'REMOVED'}\n addComponent={addComponentToDZ!}\n forTarget={type.modelType}\n targetUid={type.uid}\n />\n )}\n </SubRow>\n </>\n );\n});\n\nconst SubRow = styled(Box)<{ $isOpen: boolean; $shouldHideNestedInfos?: boolean }>`\n display: ${({ $shouldHideNestedInfos }) => ($shouldHideNestedInfos ? 'none' : 'block')};\n max-height: ${({ $isOpen }) => ($isOpen ? '9999px' : '0px')};\n overflow: hidden;\n\n transition: ${({ $isOpen }) =>\n $isOpen ? 'max-height 1s ease-in-out' : 'max-height 0.5s cubic-bezier(0, 1, 0, 1)'};\n`;\n\nconst ComponentLink = ({ uid }: { uid: UID.Component }) => {\n const { components } = useDataManager();\n const type = get(components, uid);\n\n return (\n <>\n &nbsp;(\n <Link\n onClick={(e) => e.stopPropagation()}\n tag={NavLink}\n to={`/plugins/content-type-builder/component-categories/${type.category}/${type.uid}`}\n >\n {upperFirst(type.info.displayName)}\n </Link>\n )\n </>\n );\n};\n"],"names":["GridWrapper","styled","Flex","theme","$isOverlay","colors","neutral150","spaces","$isDragging","StyledAttributeRow","Box","AttributeRow","forwardRef","props","ref","style","rest","_jsx","tag","attributes","background","shadow","isOverlay","aria-label","item","name","MemoizedRow","memo","firstLoopComponentUid","isFromDynamicZone","addComponentToDZ","secondLoopComponentUid","type","isDragging","handleRef","listeners","shouldHideNestedInfos","isOpen","setIsOpen","useState","isTypeDeleted","status","contentTypes","removeAttribute","isInDevelopmentMode","useDataManager","onOpenModalEditField","onOpenModalEditCustomField","useFormModalNavigation","formatMessage","useIntl","showConfirmDialog","setShowConfirmDialog","isDeleted","isMorph","relation","includes","ico","targetContentType","get","target","isPluginContentType","src","handleDelete","e","stopPropagation","dependentRows","checkDependentRows","length","forTarget","modelType","targetUid","uid","attributeToRemoveName","handleConfirmDelete","handleCancelDelete","handleClick","configurable","editTargetUid","attributeType","getAttributeDisplayedType","step","customField","attributeName","customFieldUid","loopNumber","canEdit","canDelete","cursor","canClick","_jsxs","_Fragment","onClick","undefined","paddingLeft","paddingRight","alignItems","overflow","gap","Curve","color","IconButton","role","variant","withTooltip","label","id","defaultMessage","disabled","outlineOffset","Drag","AttributeIcon","Typography","textColor","fontWeight","textDecoration","ellipsis","required","DisplayedType","repeatable","multiple","conditions","Object","keys","Badge","margin","getRelationType","targetAttribute","getTrad","Link","NavLink","to","upperFirst","info","displayName","ComponentLink","component","justifyContent","StatusBadge","preventDefault","aria-expanded","ChevronDown","aria-hidden","fill","transform","transition","Pencil","Trash","Dialog","Root","open","onOpenChange","ConfirmDialog","onConfirm","onCancel","map","attribute","join","padding","Lock","SubRow","$shouldHideNestedInfos","$isOpen","ComponentList","DynamicZoneList","addComponent","components","category"],"mappings":"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"}