@strapi/content-type-builder 5.13.0-beta.1 → 5.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/dist/admin/components/AttributeIcon.js +0 -1
  2. package/dist/admin/components/AttributeIcon.js.map +1 -1
  3. package/dist/admin/components/AttributeIcon.mjs +0 -1
  4. package/dist/admin/components/AttributeIcon.mjs.map +1 -1
  5. package/dist/admin/components/AttributeOptions/AttributeOption.js +1 -1
  6. package/dist/admin/components/AttributeOptions/AttributeOption.js.map +1 -1
  7. package/dist/admin/components/AttributeOptions/AttributeOption.mjs +1 -1
  8. package/dist/admin/components/AttributeOptions/AttributeOption.mjs.map +1 -1
  9. package/dist/admin/components/AttributeOptions/CustomFieldOption.js +1 -1
  10. package/dist/admin/components/AttributeOptions/CustomFieldOption.js.map +1 -1
  11. package/dist/admin/components/AttributeOptions/CustomFieldOption.mjs +1 -1
  12. package/dist/admin/components/AttributeOptions/CustomFieldOption.mjs.map +1 -1
  13. package/dist/admin/components/AutoReloadOverlayBlocker.js +2 -5
  14. package/dist/admin/components/AutoReloadOverlayBlocker.js.map +1 -1
  15. package/dist/admin/components/AutoReloadOverlayBlocker.mjs +2 -5
  16. package/dist/admin/components/AutoReloadOverlayBlocker.mjs.map +1 -1
  17. package/dist/admin/components/ComponentCard/ComponentCard.js +11 -13
  18. package/dist/admin/components/ComponentCard/ComponentCard.js.map +1 -1
  19. package/dist/admin/components/ComponentCard/ComponentCard.mjs +11 -13
  20. package/dist/admin/components/ComponentCard/ComponentCard.mjs.map +1 -1
  21. package/dist/admin/components/ComponentList.js +26 -12
  22. package/dist/admin/components/ComponentList.js.map +1 -1
  23. package/dist/admin/components/ComponentList.mjs +26 -12
  24. package/dist/admin/components/ComponentList.mjs.map +1 -1
  25. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js +70 -253
  26. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js.map +1 -1
  27. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs +73 -256
  28. package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs.map +1 -1
  29. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js +81 -53
  30. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js.map +1 -1
  31. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs +82 -54
  32. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs.map +1 -1
  33. package/dist/admin/components/DisplayedType.js +14 -14
  34. package/dist/admin/components/DisplayedType.js.map +1 -1
  35. package/dist/admin/components/DisplayedType.mjs +15 -15
  36. package/dist/admin/components/DisplayedType.mjs.map +1 -1
  37. package/dist/admin/components/DynamicZoneList.js +38 -34
  38. package/dist/admin/components/DynamicZoneList.js.map +1 -1
  39. package/dist/admin/components/DynamicZoneList.mjs +40 -36
  40. package/dist/admin/components/DynamicZoneList.mjs.map +1 -1
  41. package/dist/admin/components/FormModal/FormModal.js +164 -198
  42. package/dist/admin/components/FormModal/FormModal.js.map +1 -1
  43. package/dist/admin/components/FormModal/FormModal.mjs +165 -198
  44. package/dist/admin/components/FormModal/FormModal.mjs.map +1 -1
  45. package/dist/admin/components/FormModal/attributes/types.js.map +1 -1
  46. package/dist/admin/components/FormModal/attributes/types.mjs.map +1 -1
  47. package/dist/admin/components/FormModal/attributes/validation/common.js.map +1 -1
  48. package/dist/admin/components/FormModal/attributes/validation/common.mjs.map +1 -1
  49. package/dist/admin/components/FormModal/component/createComponentSchema.js +2 -2
  50. package/dist/admin/components/FormModal/component/createComponentSchema.js.map +1 -1
  51. package/dist/admin/components/FormModal/component/createComponentSchema.mjs +1 -1
  52. package/dist/admin/components/FormModal/component/createComponentSchema.mjs.map +1 -1
  53. package/dist/admin/components/FormModal/forms/forms.js +27 -10
  54. package/dist/admin/components/FormModal/forms/forms.js.map +1 -1
  55. package/dist/admin/components/FormModal/forms/forms.mjs +27 -10
  56. package/dist/admin/components/FormModal/forms/forms.mjs.map +1 -1
  57. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.js.map +1 -1
  58. package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.mjs.map +1 -1
  59. package/dist/admin/components/FormModal/reducer.js +4 -4
  60. package/dist/admin/components/FormModal/reducer.js.map +1 -1
  61. package/dist/admin/components/FormModal/reducer.mjs +4 -4
  62. package/dist/admin/components/FormModal/reducer.mjs.map +1 -1
  63. package/dist/admin/components/FormModal/utils/canEditContentType.js +14 -9
  64. package/dist/admin/components/FormModal/utils/canEditContentType.js.map +1 -1
  65. package/dist/admin/components/FormModal/utils/canEditContentType.mjs +14 -9
  66. package/dist/admin/components/FormModal/utils/canEditContentType.mjs.map +1 -1
  67. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.js.map +1 -1
  68. package/dist/admin/components/FormModal/utils/getAttributesToDisplay.mjs.map +1 -1
  69. package/dist/admin/components/FormModalEndActions.js +34 -1
  70. package/dist/admin/components/FormModalEndActions.js.map +1 -1
  71. package/dist/admin/components/FormModalEndActions.mjs +34 -1
  72. package/dist/admin/components/FormModalEndActions.mjs.map +1 -1
  73. package/dist/admin/components/FormModalHeader.js +28 -10
  74. package/dist/admin/components/FormModalHeader.js.map +1 -1
  75. package/dist/admin/components/FormModalHeader.mjs +28 -10
  76. package/dist/admin/components/FormModalHeader.mjs.map +1 -1
  77. package/dist/admin/components/FormModalSubHeader.js.map +1 -1
  78. package/dist/admin/components/FormModalSubHeader.mjs.map +1 -1
  79. package/dist/admin/components/GenericInputs.js +5 -9
  80. package/dist/admin/components/GenericInputs.js.map +1 -1
  81. package/dist/admin/components/GenericInputs.mjs +5 -9
  82. package/dist/admin/components/GenericInputs.mjs.map +1 -1
  83. package/dist/admin/components/List.js +199 -149
  84. package/dist/admin/components/List.js.map +1 -1
  85. package/dist/admin/components/List.mjs +202 -151
  86. package/dist/admin/components/List.mjs.map +1 -1
  87. package/dist/admin/components/Relation/Relation.js +2 -3
  88. package/dist/admin/components/Relation/Relation.js.map +1 -1
  89. package/dist/admin/components/Relation/Relation.mjs +2 -3
  90. package/dist/admin/components/Relation/Relation.mjs.map +1 -1
  91. package/dist/admin/components/Relation/RelationField/RelationField.js +1 -1
  92. package/dist/admin/components/Relation/RelationField/RelationField.js.map +1 -1
  93. package/dist/admin/components/Relation/RelationField/RelationField.mjs +1 -1
  94. package/dist/admin/components/Relation/RelationField/RelationField.mjs.map +1 -1
  95. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js +5 -6
  96. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js.map +1 -1
  97. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs +5 -6
  98. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs.map +1 -1
  99. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js +21 -19
  100. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js.map +1 -1
  101. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs +21 -19
  102. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs.map +1 -1
  103. package/dist/admin/components/SelectCategory.js +1 -1
  104. package/dist/admin/components/SelectCategory.js.map +1 -1
  105. package/dist/admin/components/SelectCategory.mjs +1 -1
  106. package/dist/admin/components/SelectCategory.mjs.map +1 -1
  107. package/dist/admin/components/SelectComponent.js +6 -3
  108. package/dist/admin/components/SelectComponent.js.map +1 -1
  109. package/dist/admin/components/SelectComponent.mjs +6 -3
  110. package/dist/admin/components/SelectComponent.mjs.map +1 -1
  111. package/dist/admin/components/SelectComponents.js +6 -9
  112. package/dist/admin/components/SelectComponents.js.map +1 -1
  113. package/dist/admin/components/SelectComponents.mjs +6 -9
  114. package/dist/admin/components/SelectComponents.mjs.map +1 -1
  115. package/dist/admin/components/SelectNumber.js +4 -0
  116. package/dist/admin/components/SelectNumber.js.map +1 -1
  117. package/dist/admin/components/SelectNumber.mjs +4 -0
  118. package/dist/admin/components/SelectNumber.mjs.map +1 -1
  119. package/dist/admin/components/TabForm.js +1 -2
  120. package/dist/admin/components/TabForm.js.map +1 -1
  121. package/dist/admin/components/TabForm.mjs +1 -2
  122. package/dist/admin/components/TabForm.mjs.map +1 -1
  123. package/dist/admin/icons/Curve.js +1 -1
  124. package/dist/admin/icons/Curve.js.map +1 -1
  125. package/dist/admin/icons/Curve.mjs +1 -1
  126. package/dist/admin/icons/Curve.mjs.map +1 -1
  127. package/dist/admin/pages/App/index.js +19 -39
  128. package/dist/admin/pages/App/index.js.map +1 -1
  129. package/dist/admin/pages/App/index.mjs +21 -41
  130. package/dist/admin/pages/App/index.mjs.map +1 -1
  131. package/dist/admin/pages/ListView/LinkToCMSettingsView.js +17 -26
  132. package/dist/admin/pages/ListView/LinkToCMSettingsView.js.map +1 -1
  133. package/dist/admin/pages/ListView/LinkToCMSettingsView.mjs +17 -26
  134. package/dist/admin/pages/ListView/LinkToCMSettingsView.mjs.map +1 -1
  135. package/dist/admin/pages/ListView/ListView.js +158 -105
  136. package/dist/admin/pages/ListView/ListView.js.map +1 -1
  137. package/dist/admin/pages/ListView/ListView.mjs +163 -110
  138. package/dist/admin/pages/ListView/ListView.mjs.map +1 -1
  139. package/dist/admin/reducers.js +4 -3
  140. package/dist/admin/reducers.js.map +1 -1
  141. package/dist/admin/reducers.mjs +4 -3
  142. package/dist/admin/reducers.mjs.map +1 -1
  143. package/dist/admin/src/components/AutoReloadOverlayBlocker.d.ts +2 -2
  144. package/dist/admin/src/components/ComponentCard/ComponentCard.d.ts +1 -5
  145. package/dist/admin/src/components/ComponentList.d.ts +6 -4
  146. package/dist/admin/src/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.d.ts +14 -29
  147. package/dist/admin/src/components/DisplayedType.d.ts +1 -2
  148. package/dist/admin/src/components/DynamicZoneList.d.ts +5 -8
  149. package/dist/admin/src/components/FormModal/forms/forms.d.ts +38 -2
  150. package/dist/admin/src/components/FormModal/forms/utils/getUsedAttributeNames.d.ts +2 -3
  151. package/dist/admin/src/components/FormModal/reducer.d.ts +4 -10
  152. package/dist/admin/src/components/FormModal/utils/canEditContentType.d.ts +4 -4
  153. package/dist/admin/src/components/FormModal/utils/getAttributesToDisplay.d.ts +1 -1
  154. package/dist/admin/src/components/FormModalEndActions.d.ts +5 -1
  155. package/dist/admin/src/components/FormModalHeader.d.ts +7 -10
  156. package/dist/admin/src/components/FormModalSubHeader.d.ts +3 -3
  157. package/dist/admin/src/components/GenericInputs.d.ts +1 -2
  158. package/dist/admin/src/components/List.d.ts +13 -16
  159. package/dist/admin/src/components/Relation/Relation.d.ts +1 -2
  160. package/dist/admin/src/components/Relation/RelationField/RelationField.d.ts +1 -2
  161. package/dist/admin/src/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.d.ts +2 -3
  162. package/dist/admin/src/components/Relation/RelationNaturePicker/RelationNaturePicker.d.ts +1 -2
  163. package/dist/admin/src/components/SelectComponents.d.ts +1 -3
  164. package/dist/admin/src/components/SelectNumber.d.ts +7 -1
  165. package/dist/admin/src/pages/ListView/LinkToCMSettingsView.d.ts +4 -3
  166. package/dist/admin/src/pages/ListView/ListView.d.ts +1 -1
  167. package/dist/admin/src/reducers.d.ts +8 -2
  168. package/dist/admin/src/types.d.ts +43 -40
  169. package/dist/admin/src/utils/findAttribute.d.ts +2 -2
  170. package/dist/admin/src/utils/formAPI.d.ts +1 -43
  171. package/dist/admin/src/utils/getMaxDepth.d.ts +2 -2
  172. package/dist/admin/src/utils/getRelationType.d.ts +1 -1
  173. package/dist/admin/src/utils/isAllowedContentTypesForRelations.d.ts +1 -1
  174. package/dist/admin/translations/de.json.js +1 -0
  175. package/dist/admin/translations/de.json.js.map +1 -1
  176. package/dist/admin/translations/de.json.mjs +1 -0
  177. package/dist/admin/translations/de.json.mjs.map +1 -1
  178. package/dist/admin/translations/dk.json.js +1 -0
  179. package/dist/admin/translations/dk.json.js.map +1 -1
  180. package/dist/admin/translations/dk.json.mjs +1 -0
  181. package/dist/admin/translations/dk.json.mjs.map +1 -1
  182. package/dist/admin/translations/en.json.js +2 -4
  183. package/dist/admin/translations/en.json.js.map +1 -1
  184. package/dist/admin/translations/en.json.mjs +2 -4
  185. package/dist/admin/translations/en.json.mjs.map +1 -1
  186. package/dist/admin/translations/es.json.js +1 -0
  187. package/dist/admin/translations/es.json.js.map +1 -1
  188. package/dist/admin/translations/es.json.mjs +1 -0
  189. package/dist/admin/translations/es.json.mjs.map +1 -1
  190. package/dist/admin/translations/ko.json.js +1 -0
  191. package/dist/admin/translations/ko.json.js.map +1 -1
  192. package/dist/admin/translations/ko.json.mjs +1 -0
  193. package/dist/admin/translations/ko.json.mjs.map +1 -1
  194. package/dist/admin/translations/pl.json.js +1 -0
  195. package/dist/admin/translations/pl.json.js.map +1 -1
  196. package/dist/admin/translations/pl.json.mjs +1 -0
  197. package/dist/admin/translations/pl.json.mjs.map +1 -1
  198. package/dist/admin/translations/pt-BR.json.js +1 -0
  199. package/dist/admin/translations/pt-BR.json.js.map +1 -1
  200. package/dist/admin/translations/pt-BR.json.mjs +1 -0
  201. package/dist/admin/translations/pt-BR.json.mjs.map +1 -1
  202. package/dist/admin/translations/sv.json.js +1 -0
  203. package/dist/admin/translations/sv.json.js.map +1 -1
  204. package/dist/admin/translations/sv.json.mjs +1 -0
  205. package/dist/admin/translations/sv.json.mjs.map +1 -1
  206. package/dist/admin/translations/tr.json.js +1 -0
  207. package/dist/admin/translations/tr.json.js.map +1 -1
  208. package/dist/admin/translations/tr.json.mjs +1 -0
  209. package/dist/admin/translations/tr.json.mjs.map +1 -1
  210. package/dist/admin/translations/zh.json.js +1 -0
  211. package/dist/admin/translations/zh.json.js.map +1 -1
  212. package/dist/admin/translations/zh.json.mjs +1 -0
  213. package/dist/admin/translations/zh.json.mjs.map +1 -1
  214. package/dist/admin/utils/findAttribute.js.map +1 -1
  215. package/dist/admin/utils/findAttribute.mjs.map +1 -1
  216. package/dist/admin/utils/formAPI.js +1 -0
  217. package/dist/admin/utils/formAPI.js.map +1 -1
  218. package/dist/admin/utils/formAPI.mjs +1 -0
  219. package/dist/admin/utils/formAPI.mjs.map +1 -1
  220. package/dist/admin/utils/getMaxDepth.js.map +1 -1
  221. package/dist/admin/utils/getMaxDepth.mjs.map +1 -1
  222. package/dist/admin/utils/getRelationType.js.map +1 -1
  223. package/dist/admin/utils/getRelationType.mjs.map +1 -1
  224. package/dist/admin/utils/isAllowedContentTypesForRelations.js.map +1 -1
  225. package/dist/admin/utils/isAllowedContentTypesForRelations.mjs.map +1 -1
  226. package/dist/server/controllers/index.js +1 -3
  227. package/dist/server/controllers/index.js.map +1 -1
  228. package/dist/server/controllers/index.mjs +1 -3
  229. package/dist/server/controllers/index.mjs.map +1 -1
  230. package/dist/server/controllers/validation/common.js +0 -2
  231. package/dist/server/controllers/validation/common.js.map +1 -1
  232. package/dist/server/controllers/validation/common.mjs +1 -2
  233. package/dist/server/controllers/validation/common.mjs.map +1 -1
  234. package/dist/server/controllers/validation/content-type.js.map +1 -1
  235. package/dist/server/controllers/validation/content-type.mjs.map +1 -1
  236. package/dist/server/routes/admin.js +0 -51
  237. package/dist/server/routes/admin.js.map +1 -1
  238. package/dist/server/routes/admin.mjs +0 -51
  239. package/dist/server/routes/admin.mjs.map +1 -1
  240. package/dist/server/services/index.js +1 -3
  241. package/dist/server/services/index.js.map +1 -1
  242. package/dist/server/services/index.mjs +1 -3
  243. package/dist/server/services/index.mjs.map +1 -1
  244. package/dist/server/services/schema-builder/component-builder.js +2 -12
  245. package/dist/server/services/schema-builder/component-builder.js.map +1 -1
  246. package/dist/server/services/schema-builder/component-builder.mjs +2 -12
  247. package/dist/server/services/schema-builder/component-builder.mjs.map +1 -1
  248. package/dist/server/services/schema-builder/content-type-builder.js +28 -43
  249. package/dist/server/services/schema-builder/content-type-builder.js.map +1 -1
  250. package/dist/server/services/schema-builder/content-type-builder.mjs +28 -43
  251. package/dist/server/services/schema-builder/content-type-builder.mjs.map +1 -1
  252. package/dist/server/services/schema-builder/index.js +49 -51
  253. package/dist/server/services/schema-builder/index.js.map +1 -1
  254. package/dist/server/services/schema-builder/index.mjs +49 -51
  255. package/dist/server/services/schema-builder/index.mjs.map +1 -1
  256. package/dist/server/src/controllers/index.d.ts +0 -5
  257. package/dist/server/src/controllers/index.d.ts.map +1 -1
  258. package/dist/server/src/controllers/validation/common.d.ts +0 -1
  259. package/dist/server/src/controllers/validation/common.d.ts.map +1 -1
  260. package/dist/server/src/controllers/validation/content-type.d.ts +2 -3
  261. package/dist/server/src/controllers/validation/content-type.d.ts.map +1 -1
  262. package/dist/server/src/index.d.ts +0 -6
  263. package/dist/server/src/index.d.ts.map +1 -1
  264. package/dist/server/src/routes/admin.d.ts.map +1 -1
  265. package/dist/server/src/services/index.d.ts +0 -2
  266. package/dist/server/src/services/index.d.ts.map +1 -1
  267. package/dist/server/src/services/schema-builder/component-builder.d.ts +0 -1
  268. package/dist/server/src/services/schema-builder/component-builder.d.ts.map +1 -1
  269. package/dist/server/src/services/schema-builder/content-type-builder.d.ts +3 -2
  270. package/dist/server/src/services/schema-builder/content-type-builder.d.ts.map +1 -1
  271. package/dist/server/src/services/schema-builder/index.d.ts +0 -3
  272. package/dist/server/src/services/schema-builder/index.d.ts.map +1 -1
  273. package/dist/server/src/utils/index.d.ts +0 -2
  274. package/dist/server/src/utils/index.d.ts.map +1 -1
  275. package/dist/server/utils/index.js.map +1 -1
  276. package/dist/server/utils/index.mjs.map +1 -1
  277. package/package.json +6 -11
  278. package/dist/admin/components/AttributeRow.js +0 -342
  279. package/dist/admin/components/AttributeRow.js.map +0 -1
  280. package/dist/admin/components/AttributeRow.mjs +0 -339
  281. package/dist/admin/components/AttributeRow.mjs.map +0 -1
  282. package/dist/admin/components/ComponentRow.js +0 -42
  283. package/dist/admin/components/ComponentRow.js.map +0 -1
  284. package/dist/admin/components/ComponentRow.mjs +0 -40
  285. package/dist/admin/components/ComponentRow.mjs.map +0 -1
  286. package/dist/admin/components/DataManager/DataManagerContext.js +0 -9
  287. package/dist/admin/components/DataManager/DataManagerContext.js.map +0 -1
  288. package/dist/admin/components/DataManager/DataManagerContext.mjs +0 -7
  289. package/dist/admin/components/DataManager/DataManagerContext.mjs.map +0 -1
  290. package/dist/admin/components/DataManager/DataManagerProvider.js +0 -344
  291. package/dist/admin/components/DataManager/DataManagerProvider.js.map +0 -1
  292. package/dist/admin/components/DataManager/DataManagerProvider.mjs +0 -323
  293. package/dist/admin/components/DataManager/DataManagerProvider.mjs.map +0 -1
  294. package/dist/admin/components/DataManager/reducer.js +0 -546
  295. package/dist/admin/components/DataManager/reducer.js.map +0 -1
  296. package/dist/admin/components/DataManager/reducer.mjs +0 -542
  297. package/dist/admin/components/DataManager/reducer.mjs.map +0 -1
  298. package/dist/admin/components/DataManager/undoRedo.js +0 -102
  299. package/dist/admin/components/DataManager/undoRedo.js.map +0 -1
  300. package/dist/admin/components/DataManager/undoRedo.mjs +0 -100
  301. package/dist/admin/components/DataManager/undoRedo.mjs.map +0 -1
  302. package/dist/admin/components/DataManager/useDataManager.js +0 -9
  303. package/dist/admin/components/DataManager/useDataManager.js.map +0 -1
  304. package/dist/admin/components/DataManager/useDataManager.mjs +0 -7
  305. package/dist/admin/components/DataManager/useDataManager.mjs.map +0 -1
  306. package/dist/admin/components/DataManager/useServerRestartWatcher.js +0 -35
  307. package/dist/admin/components/DataManager/useServerRestartWatcher.js.map +0 -1
  308. package/dist/admin/components/DataManager/useServerRestartWatcher.mjs +0 -33
  309. package/dist/admin/components/DataManager/useServerRestartWatcher.mjs.map +0 -1
  310. package/dist/admin/components/DataManager/utils/cleanData.js +0 -128
  311. package/dist/admin/components/DataManager/utils/cleanData.js.map +0 -1
  312. package/dist/admin/components/DataManager/utils/cleanData.mjs +0 -125
  313. package/dist/admin/components/DataManager/utils/cleanData.mjs.map +0 -1
  314. package/dist/admin/components/DataManager/utils/formatSchemas.js +0 -21
  315. package/dist/admin/components/DataManager/utils/formatSchemas.js.map +0 -1
  316. package/dist/admin/components/DataManager/utils/formatSchemas.mjs +0 -18
  317. package/dist/admin/components/DataManager/utils/formatSchemas.mjs.map +0 -1
  318. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.js +0 -34
  319. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.js.map +0 -1
  320. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.mjs +0 -31
  321. package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.mjs.map +0 -1
  322. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.js +0 -45
  323. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.js.map +0 -1
  324. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.mjs +0 -43
  325. package/dist/admin/components/DataManager/utils/retrieveNestedComponents.mjs.map +0 -1
  326. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.js +0 -17
  327. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.js.map +0 -1
  328. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.mjs +0 -15
  329. package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.mjs.map +0 -1
  330. package/dist/admin/components/ExitPrompt.js +0 -50
  331. package/dist/admin/components/ExitPrompt.js.map +0 -1
  332. package/dist/admin/components/ExitPrompt.mjs +0 -48
  333. package/dist/admin/components/ExitPrompt.mjs.map +0 -1
  334. package/dist/admin/components/Footers.js +0 -95
  335. package/dist/admin/components/Footers.js.map +0 -1
  336. package/dist/admin/components/Footers.mjs +0 -92
  337. package/dist/admin/components/Footers.mjs.map +0 -1
  338. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.js +0 -28
  339. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.js.map +0 -1
  340. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.mjs +0 -7
  341. package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.mjs.map +0 -1
  342. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js +0 -205
  343. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js.map +0 -1
  344. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs +0 -202
  345. package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs.map +0 -1
  346. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.js +0 -9
  347. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.js.map +0 -1
  348. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.mjs +0 -7
  349. package/dist/admin/components/FormModalNavigation/useFormModalNavigation.mjs.map +0 -1
  350. package/dist/admin/components/Status.js +0 -73
  351. package/dist/admin/components/Status.js.map +0 -1
  352. package/dist/admin/components/Status.mjs +0 -70
  353. package/dist/admin/components/Status.mjs.map +0 -1
  354. package/dist/admin/pages/ListView/EmptyState.js +0 -38
  355. package/dist/admin/pages/ListView/EmptyState.js.map +0 -1
  356. package/dist/admin/pages/ListView/EmptyState.mjs +0 -36
  357. package/dist/admin/pages/ListView/EmptyState.mjs.map +0 -1
  358. package/dist/admin/src/components/AttributeRow.d.ts +0 -28
  359. package/dist/admin/src/components/ComponentRow.d.ts +0 -11
  360. package/dist/admin/src/components/DataManager/DataManagerContext.d.ts +0 -138
  361. package/dist/admin/src/components/DataManager/DataManagerProvider.d.ts +0 -6
  362. package/dist/admin/src/components/DataManager/reducer.d.ts +0 -278
  363. package/dist/admin/src/components/DataManager/undoRedo.d.ts +0 -23
  364. package/dist/admin/src/components/DataManager/useDataManager.d.ts +0 -1
  365. package/dist/admin/src/components/DataManager/useServerRestartWatcher.d.ts +0 -1
  366. package/dist/admin/src/components/DataManager/utils/cleanData.d.ts +0 -311
  367. package/dist/admin/src/components/DataManager/utils/formatSchemas.d.ts +0 -3
  368. package/dist/admin/src/components/DataManager/utils/retrieveComponentsThatHaveComponents.d.ts +0 -12
  369. package/dist/admin/src/components/DataManager/utils/retrieveNestedComponents.d.ts +0 -8
  370. package/dist/admin/src/components/DataManager/utils/retrieveSpecificInfoFromComponents.d.ts +0 -1
  371. package/dist/admin/src/components/ExitPrompt.d.ts +0 -1
  372. package/dist/admin/src/components/Footers.d.ts +0 -13
  373. package/dist/admin/src/components/FormModalNavigation/FormModalNavigationContext.d.ts +0 -19
  374. package/dist/admin/src/components/FormModalNavigation/FormModalNavigationProvider.d.ts +0 -54
  375. package/dist/admin/src/components/FormModalNavigation/useFormModalNavigation.d.ts +0 -1
  376. package/dist/admin/src/components/Status.d.ts +0 -6
  377. package/dist/admin/src/pages/ListView/EmptyState.d.ts +0 -1
  378. package/dist/server/controllers/schema.js +0 -55
  379. package/dist/server/controllers/schema.js.map +0 -1
  380. package/dist/server/controllers/schema.mjs +0 -53
  381. package/dist/server/controllers/schema.mjs.map +0 -1
  382. package/dist/server/controllers/validation/schema.js +0 -612
  383. package/dist/server/controllers/validation/schema.js.map +0 -1
  384. package/dist/server/controllers/validation/schema.mjs +0 -610
  385. package/dist/server/controllers/validation/schema.mjs.map +0 -1
  386. package/dist/server/services/schema.js +0 -246
  387. package/dist/server/services/schema.js.map +0 -1
  388. package/dist/server/services/schema.mjs +0 -242
  389. package/dist/server/services/schema.mjs.map +0 -1
  390. package/dist/server/src/controllers/schema.d.ts +0 -8
  391. package/dist/server/src/controllers/schema.d.ts.map +0 -1
  392. package/dist/server/src/controllers/validation/schema.d.ts +0 -80968
  393. package/dist/server/src/controllers/validation/schema.d.ts.map +0 -1
  394. package/dist/server/src/services/schema.d.ts +0 -2756
  395. package/dist/server/src/services/schema.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ListView.js","sources":["../../../../admin/src/pages/ListView/ListView.tsx"],"sourcesContent":["/* eslint-disable import/no-default-export */\nimport { useTracking, Layouts } from '@strapi/admin/strapi-admin';\nimport { Box, Button, Flex, Typography } from '@strapi/design-system';\nimport { Information, Pencil, Plus } from '@strapi/icons';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { Navigate, useParams } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { useDataManager } from '../../components/DataManager/useDataManager';\nimport { useFormModalNavigation } from '../../components/FormModalNavigation/useFormModalNavigation';\nimport { List } from '../../components/List';\nimport { getTrad } from '../../utils/getTrad';\n\nimport { LinkToCMSettingsView } from './LinkToCMSettingsView';\n\nimport type { Internal } from '@strapi/types';\n\nconst LayoutsHeaderCustom = styled(Layouts.Header)`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\nconst ListView = () => {\n const { isInDevelopmentMode, contentTypes, components, isLoading } = useDataManager();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const { contentTypeUid, componentUid } = useParams<{\n contentTypeUid: Internal.UID.ContentType;\n componentUid: Internal.UID.Component;\n }>();\n\n const { onOpenModalAddComponentsToDZ, onOpenModalAddField, onOpenModalEditSchema } =\n useFormModalNavigation();\n\n const type = contentTypeUid\n ? contentTypes[contentTypeUid]\n : componentUid\n ? components[componentUid]\n : null;\n\n if (isLoading) {\n return null;\n }\n\n if (!type) {\n const allowedEndpoints = Object.values(contentTypes)\n .filter((ct) => ct.visible === true && !ct.plugin)\n .map((ct) => ct.uid)\n .sort();\n\n if (allowedEndpoints.length > 0) {\n return <Navigate to={`/plugins/content-type-builder/content-types/${allowedEndpoints[0]}`} />;\n }\n\n return <Navigate to=\"/plugins/content-type-builder/content-types/create-content-type\" />;\n }\n\n const isFromPlugin = 'plugin' in type && type?.plugin !== undefined;\n\n const forTarget = contentTypeUid ? 'contentType' : 'component';\n\n const label = type?.info?.displayName ?? '';\n\n const canEdit = isInDevelopmentMode && !isFromPlugin;\n\n const handleClickAddComponentToDZ = (dynamicZoneTarget?: string) => {\n onOpenModalAddComponentsToDZ({ dynamicZoneTarget, targetUid: type.uid });\n };\n\n const onEdit = () => {\n if ('kind' in type) {\n if (type?.kind === 'collectionType') {\n trackUsage('willEditNameOfContentType');\n }\n\n if (type?.kind === 'singleType') {\n trackUsage('willEditNameOfSingleType');\n }\n\n onOpenModalEditSchema({\n modalType: forTarget,\n forTarget: forTarget,\n targetUid: type.uid,\n kind: type?.kind,\n });\n\n return;\n }\n\n onOpenModalEditSchema({\n modalType: forTarget,\n forTarget: forTarget,\n targetUid: type.uid,\n });\n };\n\n const addNewFieldLabel = formatMessage({\n id: getTrad('table.button.no-fields'),\n defaultMessage: 'Add new field',\n });\n\n const addAnotherFieldLabel = formatMessage({\n id: getTrad('button.attributes.add.another'),\n defaultMessage: 'Add another field',\n });\n\n const isDeleted = type.status === 'REMOVED';\n\n const primaryAction = isInDevelopmentMode && (\n <Flex gap={2}>\n <LinkToCMSettingsView\n key=\"link-to-cm-settings-view\"\n type={type}\n disabled={type.status === 'NEW' || isDeleted}\n />\n <Button\n startIcon={<Pencil />}\n variant=\"tertiary\"\n onClick={onEdit}\n disabled={!canEdit || isDeleted}\n >\n {formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })}\n </Button>\n <Button\n startIcon={<Plus />}\n variant=\"secondary\"\n minWidth=\"max-content\"\n onClick={() => {\n onOpenModalAddField({ forTarget, targetUid: type.uid });\n }}\n disabled={isDeleted}\n >\n {type.attributes.length === 0 ? addNewFieldLabel : addAnotherFieldLabel}\n </Button>\n </Flex>\n );\n\n return (\n <>\n {isDeleted && (\n <Flex background=\"danger100\" justifyContent={'center'} padding={4}>\n <Flex gap={2}>\n <Information fill=\"danger600\" height=\"2rem\" width=\"2rem\" />\n <Typography>\n {formatMessage(\n {\n id: getTrad('table.warning.deleted'),\n defaultMessage: `This {kind} has been deleted`,\n },\n {\n kind: type.modelType === 'contentType' ? 'Content Type' : 'Component',\n }\n )}\n </Typography>\n </Flex>\n </Flex>\n )}\n <LayoutsHeaderCustom id=\"title\" primaryAction={primaryAction} title={upperFirst(label)} />\n <Layouts.Content>\n <Box\n background=\"neutral0\"\n shadow=\"filterShadow\"\n hasRadius\n overflow=\"auto\"\n borderColor=\"neutral150\"\n >\n <List type={type} addComponentToDZ={handleClickAddComponentToDZ} isMain />\n </Box>\n </Layouts.Content>\n </>\n );\n};\n\nexport default ListView;\n"],"names":["LayoutsHeaderCustom","styled","Layouts","Header","ListView","isInDevelopmentMode","contentTypes","components","isLoading","useDataManager","formatMessage","useIntl","trackUsage","useTracking","contentTypeUid","componentUid","useParams","onOpenModalAddComponentsToDZ","onOpenModalAddField","onOpenModalEditSchema","useFormModalNavigation","type","allowedEndpoints","Object","values","filter","ct","visible","plugin","map","uid","sort","length","_jsx","Navigate","to","isFromPlugin","undefined","forTarget","label","info","displayName","canEdit","handleClickAddComponentToDZ","dynamicZoneTarget","targetUid","onEdit","kind","modalType","addNewFieldLabel","id","getTrad","defaultMessage","addAnotherFieldLabel","isDeleted","status","primaryAction","_jsxs","Flex","gap","LinkToCMSettingsView","disabled","Button","startIcon","Pencil","variant","onClick","Plus","minWidth","attributes","_Fragment","background","justifyContent","padding","Information","fill","height","width","Typography","modelType","title","upperFirst","Content","Box","shadow","hasRadius","overflow","borderColor","List","addComponentToDZ","isMain"],"mappings":"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"}
1
+ {"version":3,"file":"ListView.js","sources":["../../../../admin/src/pages/ListView/ListView.tsx"],"sourcesContent":["import { BackButton, useTracking, Layouts } from '@strapi/admin/strapi-admin';\nimport { Box, Button, Flex } from '@strapi/design-system';\nimport { Check, Pencil, Plus } from '@strapi/icons';\nimport get from 'lodash/get';\nimport has from 'lodash/has';\nimport isEqual from 'lodash/isEqual';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { unstable_usePrompt as usePrompt, useMatch } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { List } from '../../components/List';\nimport { ListRow } from '../../components/ListRow';\nimport { useDataManager } from '../../hooks/useDataManager';\nimport { useFormModalNavigation } from '../../hooks/useFormModalNavigation';\nimport { getAttributeDisplayedType } from '../../utils/getAttributeDisplayedType';\nimport { getTrad } from '../../utils/getTrad';\n\nimport { LinkToCMSettingsView } from './LinkToCMSettingsView';\n\nconst LayoutsHeaderCustom = styled(Layouts.Header)`\n overflow-wrap: anywhere;\n`;\n\nconst ListView = () => {\n const { initialData, modifiedData, isInDevelopmentMode, isInContentTypeView, submitData } =\n useDataManager();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const match = useMatch('/plugins/content-type-builder/:kind/:currentUID');\n\n const {\n onOpenModalAddComponentsToDZ,\n onOpenModalAddField,\n onOpenModalEditField,\n onOpenModalEditSchema,\n onOpenModalEditCustomField,\n } = useFormModalNavigation();\n\n const firstMainDataPath = isInContentTypeView ? 'contentType' : 'component';\n const mainDataTypeAttributesPath = [firstMainDataPath, 'schema', 'attributes'];\n const targetUid = get(modifiedData, [firstMainDataPath, 'uid']);\n const isTemporary = get(modifiedData, [firstMainDataPath, 'isTemporary'], false);\n const contentTypeKind = get(modifiedData, [firstMainDataPath, 'schema', 'kind'], null);\n\n const attributes = get(modifiedData, mainDataTypeAttributesPath, []);\n const isFromPlugin = has(initialData, [firstMainDataPath, 'plugin']);\n const hasModelBeenModified = !isEqual(modifiedData, initialData);\n\n const forTarget = isInContentTypeView ? 'contentType' : 'component';\n\n const handleClickAddComponentToDZ = (dynamicZoneTarget?: string) => {\n onOpenModalAddComponentsToDZ({ dynamicZoneTarget, targetUid });\n };\n\n const handleClickEditField = async (\n forTarget: string,\n targetUid: string,\n attributeName: string,\n type: string,\n customField: any\n ) => {\n const attributeType = getAttributeDisplayedType(type);\n const step = type === 'component' ? '2' : null;\n\n if (customField) {\n onOpenModalEditCustomField({\n forTarget,\n targetUid,\n attributeName,\n attributeType,\n customFieldUid: customField,\n });\n } else {\n onOpenModalEditField({\n forTarget,\n targetUid,\n attributeName,\n attributeType,\n step,\n });\n }\n };\n\n let label = get(modifiedData, [firstMainDataPath, 'schema', 'displayName'], '');\n const kind = get(modifiedData, [firstMainDataPath, 'schema', 'kind'], '');\n\n const isCreatingFirstContentType = match?.params.currentUID === 'create-content-type';\n\n if (!label && isCreatingFirstContentType) {\n label = formatMessage({\n id: getTrad('button.model.create'),\n defaultMessage: 'Create new collection type',\n });\n }\n\n const onEdit = () => {\n const contentType = kind || firstMainDataPath;\n\n if (contentType === 'collectionType') {\n trackUsage('willEditNameOfContentType');\n }\n if (contentType === 'singleType') {\n trackUsage('willEditNameOfSingleType');\n }\n\n onOpenModalEditSchema({\n modalType: firstMainDataPath,\n forTarget: firstMainDataPath,\n targetUid,\n kind: contentType,\n });\n };\n\n usePrompt({\n when: hasModelBeenModified,\n message: formatMessage({ id: getTrad('prompt.unsaved'), defaultMessage: 'Are you sure?' }),\n });\n\n const primaryAction = isInDevelopmentMode && (\n <Flex gap={2} marginLeft={2}>\n {/* DON'T display the add field button when the content type has not been created */}\n {!isCreatingFirstContentType && (\n <Button\n startIcon={<Plus />}\n variant=\"secondary\"\n minWidth=\"max-content\"\n onClick={() => {\n onOpenModalAddField({ forTarget, targetUid });\n }}\n >\n {formatMessage({\n id: getTrad('button.attributes.add.another'),\n defaultMessage: 'Add another field',\n })}\n </Button>\n )}\n <Button\n startIcon={<Check />}\n onClick={async () => await submitData()}\n type=\"submit\"\n disabled={isEqual(modifiedData, initialData)}\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n );\n\n const secondaryAction = isInDevelopmentMode && !isFromPlugin && !isCreatingFirstContentType && (\n <Button startIcon={<Pencil />} variant=\"tertiary\" onClick={onEdit}>\n {formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })}\n </Button>\n );\n\n return (\n <>\n <LayoutsHeaderCustom\n id=\"title\"\n primaryAction={primaryAction}\n secondaryAction={secondaryAction}\n title={upperFirst(label)}\n subtitle={formatMessage({\n id: getTrad('listView.headerLayout.description'),\n defaultMessage: 'Build the data architecture of your content',\n })}\n navigationAction={<BackButton />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"flex-end\">\n <Flex gap={2}>\n <LinkToCMSettingsView\n key=\"link-to-cm-settings-view\"\n targetUid={targetUid}\n isInContentTypeView={isInContentTypeView}\n contentTypeKind={contentTypeKind}\n disabled={isCreatingFirstContentType || isTemporary}\n />\n </Flex>\n </Flex>\n <Box background=\"neutral0\" shadow=\"filterShadow\" hasRadius>\n <List\n items={attributes}\n customRowComponent={(props) => <ListRow {...props} onClick={handleClickEditField} />}\n addComponentToDZ={handleClickAddComponentToDZ}\n targetUid={targetUid}\n editTarget={forTarget}\n isMain\n />\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default ListView;\n"],"names":["LayoutsHeaderCustom","styled","Layouts","Header","ListView","initialData","modifiedData","isInDevelopmentMode","isInContentTypeView","submitData","useDataManager","formatMessage","useIntl","trackUsage","useTracking","match","useMatch","onOpenModalAddComponentsToDZ","onOpenModalAddField","onOpenModalEditField","onOpenModalEditSchema","onOpenModalEditCustomField","useFormModalNavigation","firstMainDataPath","mainDataTypeAttributesPath","targetUid","get","isTemporary","contentTypeKind","attributes","isFromPlugin","has","hasModelBeenModified","isEqual","forTarget","handleClickAddComponentToDZ","dynamicZoneTarget","handleClickEditField","attributeName","type","customField","attributeType","getAttributeDisplayedType","step","customFieldUid","label","kind","isCreatingFirstContentType","params","currentUID","id","getTrad","defaultMessage","onEdit","contentType","modalType","usePrompt","when","message","primaryAction","_jsxs","Flex","gap","marginLeft","_jsx","Button","startIcon","Plus","variant","minWidth","onClick","Check","disabled","secondaryAction","Pencil","_Fragment","title","upperFirst","subtitle","navigationAction","BackButton","Content","direction","alignItems","justifyContent","LinkToCMSettingsView","Box","background","shadow","hasRadius","List","items","customRowComponent","props","ListRow","addComponentToDZ","editTarget","isMain"],"mappings":"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"}
@@ -1,159 +1,212 @@
1
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
- import { Layouts, useTracking } from '@strapi/admin/strapi-admin';
3
- import { Flex, Button, Typography, Box } from '@strapi/design-system';
4
- import { Pencil, Plus, Information } from '@strapi/icons';
1
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
+ import { Layouts, useTracking, BackButton } from '@strapi/admin/strapi-admin';
3
+ import { Flex, Button, Box } from '@strapi/design-system';
4
+ import { Plus, Check, Pencil } from '@strapi/icons';
5
+ import get from 'lodash/get';
6
+ import has from 'lodash/has';
7
+ import isEqual from 'lodash/isEqual';
5
8
  import upperFirst from 'lodash/upperFirst';
6
9
  import { useIntl } from 'react-intl';
7
- import { useParams, Navigate } from 'react-router-dom';
10
+ import { useMatch, unstable_usePrompt } from 'react-router-dom';
8
11
  import { styled } from 'styled-components';
9
- import { useDataManager } from '../../components/DataManager/useDataManager.mjs';
10
- import { useFormModalNavigation } from '../../components/FormModalNavigation/useFormModalNavigation.mjs';
11
12
  import { List } from '../../components/List.mjs';
13
+ import { ListRow } from '../../components/ListRow.mjs';
14
+ import { useDataManager } from '../../hooks/useDataManager.mjs';
15
+ import { useFormModalNavigation } from '../../hooks/useFormModalNavigation.mjs';
16
+ import { getAttributeDisplayedType } from '../../utils/getAttributeDisplayedType.mjs';
12
17
  import { getTrad } from '../../utils/getTrad.mjs';
13
18
  import { LinkToCMSettingsView } from './LinkToCMSettingsView.mjs';
14
19
 
15
20
  const LayoutsHeaderCustom = styled(Layouts.Header)`
16
- overflow: hidden;
17
- text-overflow: ellipsis;
18
- white-space: nowrap;
21
+ overflow-wrap: anywhere;
19
22
  `;
20
23
  const ListView = ()=>{
21
- const { isInDevelopmentMode, contentTypes, components, isLoading } = useDataManager();
24
+ const { initialData, modifiedData, isInDevelopmentMode, isInContentTypeView, submitData } = useDataManager();
22
25
  const { formatMessage } = useIntl();
23
26
  const { trackUsage } = useTracking();
24
- const { contentTypeUid, componentUid } = useParams();
25
- const { onOpenModalAddComponentsToDZ, onOpenModalAddField, onOpenModalEditSchema } = useFormModalNavigation();
26
- const type = contentTypeUid ? contentTypes[contentTypeUid] : componentUid ? components[componentUid] : null;
27
- if (isLoading) {
28
- return null;
29
- }
30
- if (!type) {
31
- const allowedEndpoints = Object.values(contentTypes).filter((ct)=>ct.visible === true && !ct.plugin).map((ct)=>ct.uid).sort();
32
- if (allowedEndpoints.length > 0) {
33
- return /*#__PURE__*/ jsx(Navigate, {
34
- to: `/plugins/content-type-builder/content-types/${allowedEndpoints[0]}`
35
- });
36
- }
37
- return /*#__PURE__*/ jsx(Navigate, {
38
- to: "/plugins/content-type-builder/content-types/create-content-type"
39
- });
40
- }
41
- const isFromPlugin = 'plugin' in type && type?.plugin !== undefined;
42
- const forTarget = contentTypeUid ? 'contentType' : 'component';
43
- const label = type?.info?.displayName ?? '';
44
- const canEdit = isInDevelopmentMode && !isFromPlugin;
27
+ const match = useMatch('/plugins/content-type-builder/:kind/:currentUID');
28
+ const { onOpenModalAddComponentsToDZ, onOpenModalAddField, onOpenModalEditField, onOpenModalEditSchema, onOpenModalEditCustomField } = useFormModalNavigation();
29
+ const firstMainDataPath = isInContentTypeView ? 'contentType' : 'component';
30
+ const mainDataTypeAttributesPath = [
31
+ firstMainDataPath,
32
+ 'schema',
33
+ 'attributes'
34
+ ];
35
+ const targetUid = get(modifiedData, [
36
+ firstMainDataPath,
37
+ 'uid'
38
+ ]);
39
+ const isTemporary = get(modifiedData, [
40
+ firstMainDataPath,
41
+ 'isTemporary'
42
+ ], false);
43
+ const contentTypeKind = get(modifiedData, [
44
+ firstMainDataPath,
45
+ 'schema',
46
+ 'kind'
47
+ ], null);
48
+ const attributes = get(modifiedData, mainDataTypeAttributesPath, []);
49
+ const isFromPlugin = has(initialData, [
50
+ firstMainDataPath,
51
+ 'plugin'
52
+ ]);
53
+ const hasModelBeenModified = !isEqual(modifiedData, initialData);
54
+ const forTarget = isInContentTypeView ? 'contentType' : 'component';
45
55
  const handleClickAddComponentToDZ = (dynamicZoneTarget)=>{
46
56
  onOpenModalAddComponentsToDZ({
47
57
  dynamicZoneTarget,
48
- targetUid: type.uid
58
+ targetUid
49
59
  });
50
60
  };
51
- const onEdit = ()=>{
52
- if ('kind' in type) {
53
- if (type?.kind === 'collectionType') {
54
- trackUsage('willEditNameOfContentType');
55
- }
56
- if (type?.kind === 'singleType') {
57
- trackUsage('willEditNameOfSingleType');
58
- }
59
- onOpenModalEditSchema({
60
- modalType: forTarget,
61
- forTarget: forTarget,
62
- targetUid: type.uid,
63
- kind: type?.kind
61
+ const handleClickEditField = async (forTarget, targetUid, attributeName, type, customField)=>{
62
+ const attributeType = getAttributeDisplayedType(type);
63
+ const step = type === 'component' ? '2' : null;
64
+ if (customField) {
65
+ onOpenModalEditCustomField({
66
+ forTarget,
67
+ targetUid,
68
+ attributeName,
69
+ attributeType,
70
+ customFieldUid: customField
71
+ });
72
+ } else {
73
+ onOpenModalEditField({
74
+ forTarget,
75
+ targetUid,
76
+ attributeName,
77
+ attributeType,
78
+ step
64
79
  });
65
- return;
80
+ }
81
+ };
82
+ let label = get(modifiedData, [
83
+ firstMainDataPath,
84
+ 'schema',
85
+ 'displayName'
86
+ ], '');
87
+ const kind = get(modifiedData, [
88
+ firstMainDataPath,
89
+ 'schema',
90
+ 'kind'
91
+ ], '');
92
+ const isCreatingFirstContentType = match?.params.currentUID === 'create-content-type';
93
+ if (!label && isCreatingFirstContentType) {
94
+ label = formatMessage({
95
+ id: getTrad('button.model.create'),
96
+ defaultMessage: 'Create new collection type'
97
+ });
98
+ }
99
+ const onEdit = ()=>{
100
+ const contentType = kind || firstMainDataPath;
101
+ if (contentType === 'collectionType') {
102
+ trackUsage('willEditNameOfContentType');
103
+ }
104
+ if (contentType === 'singleType') {
105
+ trackUsage('willEditNameOfSingleType');
66
106
  }
67
107
  onOpenModalEditSchema({
68
- modalType: forTarget,
69
- forTarget: forTarget,
70
- targetUid: type.uid
108
+ modalType: firstMainDataPath,
109
+ forTarget: firstMainDataPath,
110
+ targetUid,
111
+ kind: contentType
71
112
  });
72
113
  };
73
- const addNewFieldLabel = formatMessage({
74
- id: getTrad('table.button.no-fields'),
75
- defaultMessage: 'Add new field'
114
+ unstable_usePrompt({
115
+ when: hasModelBeenModified,
116
+ message: formatMessage({
117
+ id: getTrad('prompt.unsaved'),
118
+ defaultMessage: 'Are you sure?'
119
+ })
76
120
  });
77
- const addAnotherFieldLabel = formatMessage({
78
- id: getTrad('button.attributes.add.another'),
79
- defaultMessage: 'Add another field'
80
- });
81
- const isDeleted = type.status === 'REMOVED';
82
121
  const primaryAction = isInDevelopmentMode && /*#__PURE__*/ jsxs(Flex, {
83
122
  gap: 2,
123
+ marginLeft: 2,
84
124
  children: [
85
- /*#__PURE__*/ jsx(LinkToCMSettingsView, {
86
- type: type,
87
- disabled: type.status === 'NEW' || isDeleted
88
- }, "link-to-cm-settings-view"),
89
- /*#__PURE__*/ jsx(Button, {
90
- startIcon: /*#__PURE__*/ jsx(Pencil, {}),
91
- variant: "tertiary",
92
- onClick: onEdit,
93
- disabled: !canEdit || isDeleted,
94
- children: formatMessage({
95
- id: 'app.utils.edit',
96
- defaultMessage: 'Edit'
97
- })
98
- }),
99
- /*#__PURE__*/ jsx(Button, {
125
+ !isCreatingFirstContentType && /*#__PURE__*/ jsx(Button, {
100
126
  startIcon: /*#__PURE__*/ jsx(Plus, {}),
101
127
  variant: "secondary",
102
128
  minWidth: "max-content",
103
129
  onClick: ()=>{
104
130
  onOpenModalAddField({
105
131
  forTarget,
106
- targetUid: type.uid
132
+ targetUid
107
133
  });
108
134
  },
109
- disabled: isDeleted,
110
- children: type.attributes.length === 0 ? addNewFieldLabel : addAnotherFieldLabel
135
+ children: formatMessage({
136
+ id: getTrad('button.attributes.add.another'),
137
+ defaultMessage: 'Add another field'
138
+ })
139
+ }),
140
+ /*#__PURE__*/ jsx(Button, {
141
+ startIcon: /*#__PURE__*/ jsx(Check, {}),
142
+ onClick: async ()=>await submitData(),
143
+ type: "submit",
144
+ disabled: isEqual(modifiedData, initialData),
145
+ children: formatMessage({
146
+ id: 'global.save',
147
+ defaultMessage: 'Save'
148
+ })
111
149
  })
112
150
  ]
113
151
  });
152
+ const secondaryAction = isInDevelopmentMode && !isFromPlugin && !isCreatingFirstContentType && /*#__PURE__*/ jsx(Button, {
153
+ startIcon: /*#__PURE__*/ jsx(Pencil, {}),
154
+ variant: "tertiary",
155
+ onClick: onEdit,
156
+ children: formatMessage({
157
+ id: 'app.utils.edit',
158
+ defaultMessage: 'Edit'
159
+ })
160
+ });
114
161
  return /*#__PURE__*/ jsxs(Fragment, {
115
162
  children: [
116
- isDeleted && /*#__PURE__*/ jsx(Flex, {
117
- background: "danger100",
118
- justifyContent: 'center',
119
- padding: 4,
163
+ /*#__PURE__*/ jsx(LayoutsHeaderCustom, {
164
+ id: "title",
165
+ primaryAction: primaryAction,
166
+ secondaryAction: secondaryAction,
167
+ title: upperFirst(label),
168
+ subtitle: formatMessage({
169
+ id: getTrad('listView.headerLayout.description'),
170
+ defaultMessage: 'Build the data architecture of your content'
171
+ }),
172
+ navigationAction: /*#__PURE__*/ jsx(BackButton, {})
173
+ }),
174
+ /*#__PURE__*/ jsx(Layouts.Content, {
120
175
  children: /*#__PURE__*/ jsxs(Flex, {
121
- gap: 2,
176
+ direction: "column",
177
+ alignItems: "stretch",
178
+ gap: 4,
122
179
  children: [
123
- /*#__PURE__*/ jsx(Information, {
124
- fill: "danger600",
125
- height: "2rem",
126
- width: "2rem"
180
+ /*#__PURE__*/ jsx(Flex, {
181
+ justifyContent: "flex-end",
182
+ children: /*#__PURE__*/ jsx(Flex, {
183
+ gap: 2,
184
+ children: /*#__PURE__*/ jsx(LinkToCMSettingsView, {
185
+ targetUid: targetUid,
186
+ isInContentTypeView: isInContentTypeView,
187
+ contentTypeKind: contentTypeKind,
188
+ disabled: isCreatingFirstContentType || isTemporary
189
+ }, "link-to-cm-settings-view")
190
+ })
127
191
  }),
128
- /*#__PURE__*/ jsx(Typography, {
129
- children: formatMessage({
130
- id: getTrad('table.warning.deleted'),
131
- defaultMessage: `This {kind} has been deleted`
132
- }, {
133
- kind: type.modelType === 'contentType' ? 'Content Type' : 'Component'
192
+ /*#__PURE__*/ jsx(Box, {
193
+ background: "neutral0",
194
+ shadow: "filterShadow",
195
+ hasRadius: true,
196
+ children: /*#__PURE__*/ jsx(List, {
197
+ items: attributes,
198
+ customRowComponent: (props)=>/*#__PURE__*/ jsx(ListRow, {
199
+ ...props,
200
+ onClick: handleClickEditField
201
+ }),
202
+ addComponentToDZ: handleClickAddComponentToDZ,
203
+ targetUid: targetUid,
204
+ editTarget: forTarget,
205
+ isMain: true
134
206
  })
135
207
  })
136
208
  ]
137
209
  })
138
- }),
139
- /*#__PURE__*/ jsx(LayoutsHeaderCustom, {
140
- id: "title",
141
- primaryAction: primaryAction,
142
- title: upperFirst(label)
143
- }),
144
- /*#__PURE__*/ jsx(Layouts.Content, {
145
- children: /*#__PURE__*/ jsx(Box, {
146
- background: "neutral0",
147
- shadow: "filterShadow",
148
- hasRadius: true,
149
- overflow: "auto",
150
- borderColor: "neutral150",
151
- children: /*#__PURE__*/ jsx(List, {
152
- type: type,
153
- addComponentToDZ: handleClickAddComponentToDZ,
154
- isMain: true
155
- })
156
- })
157
210
  })
158
211
  ]
159
212
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ListView.mjs","sources":["../../../../admin/src/pages/ListView/ListView.tsx"],"sourcesContent":["/* eslint-disable import/no-default-export */\nimport { useTracking, Layouts } from '@strapi/admin/strapi-admin';\nimport { Box, Button, Flex, Typography } from '@strapi/design-system';\nimport { Information, Pencil, Plus } from '@strapi/icons';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { Navigate, useParams } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { useDataManager } from '../../components/DataManager/useDataManager';\nimport { useFormModalNavigation } from '../../components/FormModalNavigation/useFormModalNavigation';\nimport { List } from '../../components/List';\nimport { getTrad } from '../../utils/getTrad';\n\nimport { LinkToCMSettingsView } from './LinkToCMSettingsView';\n\nimport type { Internal } from '@strapi/types';\n\nconst LayoutsHeaderCustom = styled(Layouts.Header)`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\nconst ListView = () => {\n const { isInDevelopmentMode, contentTypes, components, isLoading } = useDataManager();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const { contentTypeUid, componentUid } = useParams<{\n contentTypeUid: Internal.UID.ContentType;\n componentUid: Internal.UID.Component;\n }>();\n\n const { onOpenModalAddComponentsToDZ, onOpenModalAddField, onOpenModalEditSchema } =\n useFormModalNavigation();\n\n const type = contentTypeUid\n ? contentTypes[contentTypeUid]\n : componentUid\n ? components[componentUid]\n : null;\n\n if (isLoading) {\n return null;\n }\n\n if (!type) {\n const allowedEndpoints = Object.values(contentTypes)\n .filter((ct) => ct.visible === true && !ct.plugin)\n .map((ct) => ct.uid)\n .sort();\n\n if (allowedEndpoints.length > 0) {\n return <Navigate to={`/plugins/content-type-builder/content-types/${allowedEndpoints[0]}`} />;\n }\n\n return <Navigate to=\"/plugins/content-type-builder/content-types/create-content-type\" />;\n }\n\n const isFromPlugin = 'plugin' in type && type?.plugin !== undefined;\n\n const forTarget = contentTypeUid ? 'contentType' : 'component';\n\n const label = type?.info?.displayName ?? '';\n\n const canEdit = isInDevelopmentMode && !isFromPlugin;\n\n const handleClickAddComponentToDZ = (dynamicZoneTarget?: string) => {\n onOpenModalAddComponentsToDZ({ dynamicZoneTarget, targetUid: type.uid });\n };\n\n const onEdit = () => {\n if ('kind' in type) {\n if (type?.kind === 'collectionType') {\n trackUsage('willEditNameOfContentType');\n }\n\n if (type?.kind === 'singleType') {\n trackUsage('willEditNameOfSingleType');\n }\n\n onOpenModalEditSchema({\n modalType: forTarget,\n forTarget: forTarget,\n targetUid: type.uid,\n kind: type?.kind,\n });\n\n return;\n }\n\n onOpenModalEditSchema({\n modalType: forTarget,\n forTarget: forTarget,\n targetUid: type.uid,\n });\n };\n\n const addNewFieldLabel = formatMessage({\n id: getTrad('table.button.no-fields'),\n defaultMessage: 'Add new field',\n });\n\n const addAnotherFieldLabel = formatMessage({\n id: getTrad('button.attributes.add.another'),\n defaultMessage: 'Add another field',\n });\n\n const isDeleted = type.status === 'REMOVED';\n\n const primaryAction = isInDevelopmentMode && (\n <Flex gap={2}>\n <LinkToCMSettingsView\n key=\"link-to-cm-settings-view\"\n type={type}\n disabled={type.status === 'NEW' || isDeleted}\n />\n <Button\n startIcon={<Pencil />}\n variant=\"tertiary\"\n onClick={onEdit}\n disabled={!canEdit || isDeleted}\n >\n {formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })}\n </Button>\n <Button\n startIcon={<Plus />}\n variant=\"secondary\"\n minWidth=\"max-content\"\n onClick={() => {\n onOpenModalAddField({ forTarget, targetUid: type.uid });\n }}\n disabled={isDeleted}\n >\n {type.attributes.length === 0 ? addNewFieldLabel : addAnotherFieldLabel}\n </Button>\n </Flex>\n );\n\n return (\n <>\n {isDeleted && (\n <Flex background=\"danger100\" justifyContent={'center'} padding={4}>\n <Flex gap={2}>\n <Information fill=\"danger600\" height=\"2rem\" width=\"2rem\" />\n <Typography>\n {formatMessage(\n {\n id: getTrad('table.warning.deleted'),\n defaultMessage: `This {kind} has been deleted`,\n },\n {\n kind: type.modelType === 'contentType' ? 'Content Type' : 'Component',\n }\n )}\n </Typography>\n </Flex>\n </Flex>\n )}\n <LayoutsHeaderCustom id=\"title\" primaryAction={primaryAction} title={upperFirst(label)} />\n <Layouts.Content>\n <Box\n background=\"neutral0\"\n shadow=\"filterShadow\"\n hasRadius\n overflow=\"auto\"\n borderColor=\"neutral150\"\n >\n <List type={type} addComponentToDZ={handleClickAddComponentToDZ} isMain />\n </Box>\n </Layouts.Content>\n </>\n );\n};\n\nexport default ListView;\n"],"names":["LayoutsHeaderCustom","styled","Layouts","Header","ListView","isInDevelopmentMode","contentTypes","components","isLoading","useDataManager","formatMessage","useIntl","trackUsage","useTracking","contentTypeUid","componentUid","useParams","onOpenModalAddComponentsToDZ","onOpenModalAddField","onOpenModalEditSchema","useFormModalNavigation","type","allowedEndpoints","Object","values","filter","ct","visible","plugin","map","uid","sort","length","_jsx","Navigate","to","isFromPlugin","undefined","forTarget","label","info","displayName","canEdit","handleClickAddComponentToDZ","dynamicZoneTarget","targetUid","onEdit","kind","modalType","addNewFieldLabel","id","getTrad","defaultMessage","addAnotherFieldLabel","isDeleted","status","primaryAction","_jsxs","Flex","gap","LinkToCMSettingsView","disabled","Button","startIcon","Pencil","variant","onClick","Plus","minWidth","attributes","_Fragment","background","justifyContent","padding","Information","fill","height","width","Typography","modelType","title","upperFirst","Content","Box","shadow","hasRadius","overflow","borderColor","List","addComponentToDZ","isMain"],"mappings":"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"}
1
+ {"version":3,"file":"ListView.mjs","sources":["../../../../admin/src/pages/ListView/ListView.tsx"],"sourcesContent":["import { BackButton, useTracking, Layouts } from '@strapi/admin/strapi-admin';\nimport { Box, Button, Flex } from '@strapi/design-system';\nimport { Check, Pencil, Plus } from '@strapi/icons';\nimport get from 'lodash/get';\nimport has from 'lodash/has';\nimport isEqual from 'lodash/isEqual';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { unstable_usePrompt as usePrompt, useMatch } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { List } from '../../components/List';\nimport { ListRow } from '../../components/ListRow';\nimport { useDataManager } from '../../hooks/useDataManager';\nimport { useFormModalNavigation } from '../../hooks/useFormModalNavigation';\nimport { getAttributeDisplayedType } from '../../utils/getAttributeDisplayedType';\nimport { getTrad } from '../../utils/getTrad';\n\nimport { LinkToCMSettingsView } from './LinkToCMSettingsView';\n\nconst LayoutsHeaderCustom = styled(Layouts.Header)`\n overflow-wrap: anywhere;\n`;\n\nconst ListView = () => {\n const { initialData, modifiedData, isInDevelopmentMode, isInContentTypeView, submitData } =\n useDataManager();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const match = useMatch('/plugins/content-type-builder/:kind/:currentUID');\n\n const {\n onOpenModalAddComponentsToDZ,\n onOpenModalAddField,\n onOpenModalEditField,\n onOpenModalEditSchema,\n onOpenModalEditCustomField,\n } = useFormModalNavigation();\n\n const firstMainDataPath = isInContentTypeView ? 'contentType' : 'component';\n const mainDataTypeAttributesPath = [firstMainDataPath, 'schema', 'attributes'];\n const targetUid = get(modifiedData, [firstMainDataPath, 'uid']);\n const isTemporary = get(modifiedData, [firstMainDataPath, 'isTemporary'], false);\n const contentTypeKind = get(modifiedData, [firstMainDataPath, 'schema', 'kind'], null);\n\n const attributes = get(modifiedData, mainDataTypeAttributesPath, []);\n const isFromPlugin = has(initialData, [firstMainDataPath, 'plugin']);\n const hasModelBeenModified = !isEqual(modifiedData, initialData);\n\n const forTarget = isInContentTypeView ? 'contentType' : 'component';\n\n const handleClickAddComponentToDZ = (dynamicZoneTarget?: string) => {\n onOpenModalAddComponentsToDZ({ dynamicZoneTarget, targetUid });\n };\n\n const handleClickEditField = async (\n forTarget: string,\n targetUid: string,\n attributeName: string,\n type: string,\n customField: any\n ) => {\n const attributeType = getAttributeDisplayedType(type);\n const step = type === 'component' ? '2' : null;\n\n if (customField) {\n onOpenModalEditCustomField({\n forTarget,\n targetUid,\n attributeName,\n attributeType,\n customFieldUid: customField,\n });\n } else {\n onOpenModalEditField({\n forTarget,\n targetUid,\n attributeName,\n attributeType,\n step,\n });\n }\n };\n\n let label = get(modifiedData, [firstMainDataPath, 'schema', 'displayName'], '');\n const kind = get(modifiedData, [firstMainDataPath, 'schema', 'kind'], '');\n\n const isCreatingFirstContentType = match?.params.currentUID === 'create-content-type';\n\n if (!label && isCreatingFirstContentType) {\n label = formatMessage({\n id: getTrad('button.model.create'),\n defaultMessage: 'Create new collection type',\n });\n }\n\n const onEdit = () => {\n const contentType = kind || firstMainDataPath;\n\n if (contentType === 'collectionType') {\n trackUsage('willEditNameOfContentType');\n }\n if (contentType === 'singleType') {\n trackUsage('willEditNameOfSingleType');\n }\n\n onOpenModalEditSchema({\n modalType: firstMainDataPath,\n forTarget: firstMainDataPath,\n targetUid,\n kind: contentType,\n });\n };\n\n usePrompt({\n when: hasModelBeenModified,\n message: formatMessage({ id: getTrad('prompt.unsaved'), defaultMessage: 'Are you sure?' }),\n });\n\n const primaryAction = isInDevelopmentMode && (\n <Flex gap={2} marginLeft={2}>\n {/* DON'T display the add field button when the content type has not been created */}\n {!isCreatingFirstContentType && (\n <Button\n startIcon={<Plus />}\n variant=\"secondary\"\n minWidth=\"max-content\"\n onClick={() => {\n onOpenModalAddField({ forTarget, targetUid });\n }}\n >\n {formatMessage({\n id: getTrad('button.attributes.add.another'),\n defaultMessage: 'Add another field',\n })}\n </Button>\n )}\n <Button\n startIcon={<Check />}\n onClick={async () => await submitData()}\n type=\"submit\"\n disabled={isEqual(modifiedData, initialData)}\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n );\n\n const secondaryAction = isInDevelopmentMode && !isFromPlugin && !isCreatingFirstContentType && (\n <Button startIcon={<Pencil />} variant=\"tertiary\" onClick={onEdit}>\n {formatMessage({\n id: 'app.utils.edit',\n defaultMessage: 'Edit',\n })}\n </Button>\n );\n\n return (\n <>\n <LayoutsHeaderCustom\n id=\"title\"\n primaryAction={primaryAction}\n secondaryAction={secondaryAction}\n title={upperFirst(label)}\n subtitle={formatMessage({\n id: getTrad('listView.headerLayout.description'),\n defaultMessage: 'Build the data architecture of your content',\n })}\n navigationAction={<BackButton />}\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"flex-end\">\n <Flex gap={2}>\n <LinkToCMSettingsView\n key=\"link-to-cm-settings-view\"\n targetUid={targetUid}\n isInContentTypeView={isInContentTypeView}\n contentTypeKind={contentTypeKind}\n disabled={isCreatingFirstContentType || isTemporary}\n />\n </Flex>\n </Flex>\n <Box background=\"neutral0\" shadow=\"filterShadow\" hasRadius>\n <List\n items={attributes}\n customRowComponent={(props) => <ListRow {...props} onClick={handleClickEditField} />}\n addComponentToDZ={handleClickAddComponentToDZ}\n targetUid={targetUid}\n editTarget={forTarget}\n isMain\n />\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default ListView;\n"],"names":["LayoutsHeaderCustom","styled","Layouts","Header","ListView","initialData","modifiedData","isInDevelopmentMode","isInContentTypeView","submitData","useDataManager","formatMessage","useIntl","trackUsage","useTracking","match","useMatch","onOpenModalAddComponentsToDZ","onOpenModalAddField","onOpenModalEditField","onOpenModalEditSchema","onOpenModalEditCustomField","useFormModalNavigation","firstMainDataPath","mainDataTypeAttributesPath","targetUid","get","isTemporary","contentTypeKind","attributes","isFromPlugin","has","hasModelBeenModified","isEqual","forTarget","handleClickAddComponentToDZ","dynamicZoneTarget","handleClickEditField","attributeName","type","customField","attributeType","getAttributeDisplayedType","step","customFieldUid","label","kind","isCreatingFirstContentType","params","currentUID","id","getTrad","defaultMessage","onEdit","contentType","modalType","usePrompt","when","message","primaryAction","_jsxs","Flex","gap","marginLeft","_jsx","Button","startIcon","Plus","variant","minWidth","onClick","Check","disabled","secondaryAction","Pencil","_Fragment","title","upperFirst","subtitle","navigationAction","BackButton","Content","direction","alignItems","justifyContent","LinkToCMSettingsView","Box","background","shadow","hasRadius","List","items","customRowComponent","props","ListRow","addComponentToDZ","editTarget","isMain"],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var reducer$1 = require('./components/DataManager/reducer.js');
3
+ var reducer$1 = require('./components/DataManagerProvider/reducer.js');
4
4
  var reducer = require('./components/FormModal/reducer.js');
5
+ var pluginId = require('./pluginId.js');
5
6
 
6
7
  const reducers = {
7
- [`content-type-builder_formModal`]: reducer.reducer,
8
- [`content-type-builder_dataManagerProvider`]: reducer$1.reducer
8
+ [`${pluginId.pluginId}_formModal`]: reducer.reducer,
9
+ [`${pluginId.pluginId}_dataManagerProvider`]: reducer$1.reducer
9
10
  };
10
11
 
11
12
  exports.reducers = reducers;
@@ -1 +1 @@
1
- {"version":3,"file":"reducers.js","sources":["../../admin/src/reducers.ts"],"sourcesContent":["import { reducer as dataManagerProviderReducer } from './components/DataManager/reducer';\nimport { reducer as formModalReducer } from './components/FormModal/reducer';\n\nexport const reducers = {\n [`content-type-builder_formModal`]: formModalReducer,\n [`content-type-builder_dataManagerProvider`]: dataManagerProviderReducer,\n};\n"],"names":["reducers","formModalReducer","dataManagerProviderReducer"],"mappings":";;;;;MAGaA,QAAW,GAAA;AACtB,IAAA,CAAC,CAAC,8BAA8B,CAAC,GAAGC,eAAAA;AACpC,IAAA,CAAC,CAAC,wCAAwC,CAAC,GAAGC;AAChD;;;;"}
1
+ {"version":3,"file":"reducers.js","sources":["../../admin/src/reducers.ts"],"sourcesContent":["import { reducer as dataManagerProviderReducer } from './components/DataManagerProvider/reducer';\nimport { reducer as formModalReducer } from './components/FormModal/reducer';\nimport { pluginId } from './pluginId';\n\nexport const reducers = {\n [`${pluginId}_formModal`]: formModalReducer,\n [`${pluginId}_dataManagerProvider`]: dataManagerProviderReducer,\n};\n"],"names":["reducers","pluginId","formModalReducer","dataManagerProviderReducer"],"mappings":";;;;;;MAIaA,QAAW,GAAA;AACtB,IAAA,CAAC,CAAC,EAAEC,iBAAAA,CAAS,UAAU,CAAC,GAAGC,eAAAA;AAC3B,IAAA,CAAC,CAAC,EAAED,iBAAAA,CAAS,oBAAoB,CAAC,GAAGE;AACvC;;;;"}
@@ -1,9 +1,10 @@
1
- import { reducer as reducer$1 } from './components/DataManager/reducer.mjs';
1
+ import { reducer as reducer$1 } from './components/DataManagerProvider/reducer.mjs';
2
2
  import { reducer } from './components/FormModal/reducer.mjs';
3
+ import { pluginId } from './pluginId.mjs';
3
4
 
4
5
  const reducers = {
5
- [`content-type-builder_formModal`]: reducer,
6
- [`content-type-builder_dataManagerProvider`]: reducer$1
6
+ [`${pluginId}_formModal`]: reducer,
7
+ [`${pluginId}_dataManagerProvider`]: reducer$1
7
8
  };
8
9
 
9
10
  export { reducers };
@@ -1 +1 @@
1
- {"version":3,"file":"reducers.mjs","sources":["../../admin/src/reducers.ts"],"sourcesContent":["import { reducer as dataManagerProviderReducer } from './components/DataManager/reducer';\nimport { reducer as formModalReducer } from './components/FormModal/reducer';\n\nexport const reducers = {\n [`content-type-builder_formModal`]: formModalReducer,\n [`content-type-builder_dataManagerProvider`]: dataManagerProviderReducer,\n};\n"],"names":["reducers","formModalReducer","dataManagerProviderReducer"],"mappings":";;;MAGaA,QAAW,GAAA;AACtB,IAAA,CAAC,CAAC,8BAA8B,CAAC,GAAGC,OAAAA;AACpC,IAAA,CAAC,CAAC,wCAAwC,CAAC,GAAGC;AAChD;;;;"}
1
+ {"version":3,"file":"reducers.mjs","sources":["../../admin/src/reducers.ts"],"sourcesContent":["import { reducer as dataManagerProviderReducer } from './components/DataManagerProvider/reducer';\nimport { reducer as formModalReducer } from './components/FormModal/reducer';\nimport { pluginId } from './pluginId';\n\nexport const reducers = {\n [`${pluginId}_formModal`]: formModalReducer,\n [`${pluginId}_dataManagerProvider`]: dataManagerProviderReducer,\n};\n"],"names":["reducers","pluginId","formModalReducer","dataManagerProviderReducer"],"mappings":";;;;MAIaA,QAAW,GAAA;AACtB,IAAA,CAAC,CAAC,EAAEC,QAAAA,CAAS,UAAU,CAAC,GAAGC,OAAAA;AAC3B,IAAA,CAAC,CAAC,EAAED,QAAAA,CAAS,oBAAoB,CAAC,GAAGE;AACvC;;;;"}
@@ -14,8 +14,8 @@ export interface AutoReloadOverlayBlockerConfig {
14
14
  icon?: 'reload' | 'time';
15
15
  }
16
16
  export interface AutoReloadOverlayBlockerContextValue {
17
- lockAppWithAutoreload: (config?: AutoReloadOverlayBlockerConfig) => void;
18
- unlockAppWithAutoreload: () => void;
17
+ lockAppWithAutoreload?: (config?: AutoReloadOverlayBlockerConfig) => void;
18
+ unlockAppWithAutoreload?: () => void;
19
19
  }
20
20
  export interface AutoReloadOverlayBlockerProviderProps {
21
21
  children: React.ReactNode;
@@ -1,4 +1,3 @@
1
- import type { Internal, Struct } from '@strapi/types';
2
1
  interface ComponentCardProps {
3
2
  component: string;
4
3
  dzName: string;
@@ -6,9 +5,6 @@ interface ComponentCardProps {
6
5
  isActive?: boolean;
7
6
  isInDevelopmentMode?: boolean;
8
7
  onClick?: () => void;
9
- forTarget: Struct.ModelType;
10
- targetUid: Internal.UID.Schema;
11
- disabled?: boolean;
12
8
  }
13
- export declare const ComponentCard: ({ component, dzName, index, isActive, isInDevelopmentMode, onClick, forTarget, targetUid, disabled, }: ComponentCardProps) => import("react/jsx-runtime").JSX.Element;
9
+ export declare const ComponentCard: ({ component, dzName, index, isActive, isInDevelopmentMode, onClick, }: ComponentCardProps) => import("react/jsx-runtime").JSX.Element;
14
10
  export {};
@@ -1,8 +1,10 @@
1
- import type { UID } from '@strapi/types';
1
+ import type { Internal } from '@strapi/types';
2
2
  interface ComponentListProps {
3
- component: UID.Component;
4
- firstLoopComponentUid?: UID.Component | null;
3
+ component: Internal.UID.Component;
4
+ customRowComponent: any;
5
+ firstLoopComponentUid?: string;
5
6
  isFromDynamicZone?: boolean;
7
+ isNestedInDZComponent?: boolean;
6
8
  }
7
- export declare const ComponentList: ({ component, isFromDynamicZone, firstLoopComponentUid, }: ComponentListProps) => import("react/jsx-runtime").JSX.Element;
9
+ export declare const ComponentList: ({ customRowComponent, component, isFromDynamicZone, isNestedInDZComponent, firstLoopComponentUid, }: ComponentListProps) => import("react/jsx-runtime").JSX.Element;
8
10
  export {};
@@ -1,37 +1,22 @@
1
1
  /// <reference types="react" />
2
- import type { Status } from '../../types';
3
- type Link = {
4
- name: string;
5
- to: string;
6
- status: Status;
7
- title: string;
8
- };
9
- type SubSection = {
10
- name: string;
11
- title: string;
12
- links: Link[];
13
- };
14
- type MenuSection = {
15
- name: string;
16
- title: {
17
- id: string;
18
- defaultMessage: string;
19
- };
20
- customLink?: {
21
- id: string;
22
- defaultMessage: string;
23
- onClick: () => void;
24
- };
25
- links: Array<SubSection | Link>;
26
- linksCount?: number;
27
- };
28
- type Menu = MenuSection[];
29
2
  export declare const useContentTypeBuilderMenu: () => {
30
- menu: Menu;
3
+ menu: {
4
+ links: any[];
5
+ linksCount: number;
6
+ name: string;
7
+ title: {
8
+ id: string;
9
+ defaultMessage: string;
10
+ };
11
+ customLink: false | {
12
+ id: string;
13
+ defaultMessage: string;
14
+ onClick: () => void;
15
+ } | undefined;
16
+ }[];
31
17
  search: {
32
18
  value: string;
33
19
  onChange: import("react").Dispatch<import("react").SetStateAction<string>>;
34
20
  clear: () => void;
35
21
  };
36
22
  };
37
- export {};
@@ -2,7 +2,6 @@ type DisplayedTypeProps = {
2
2
  type: string;
3
3
  customField?: string | null;
4
4
  repeatable?: boolean;
5
- multiple?: boolean;
6
5
  };
7
- export declare const DisplayedType: ({ type, customField, repeatable, multiple, }: DisplayedTypeProps) => string | import("react/jsx-runtime").JSX.Element;
6
+ export declare const DisplayedType: ({ type, customField, repeatable, }: DisplayedTypeProps) => import("react/jsx-runtime").JSX.Element;
8
7
  export {};
@@ -1,13 +1,10 @@
1
- import { ComponentType } from 'react';
2
- import type { Internal, Struct } from '@strapi/types';
1
+ import type { Internal } from '@strapi/types';
3
2
  interface DynamicZoneListProps {
4
3
  addComponent: (name?: string) => void;
5
- components: Array<Internal.UID.Component>;
6
- customRowComponent?: ComponentType<any>;
4
+ components: Array<string>;
5
+ customRowComponent?: () => void;
7
6
  name?: string;
8
- forTarget: Struct.ModelType;
9
- targetUid: Internal.UID.Schema;
10
- disabled?: boolean;
7
+ targetUid: Internal.UID.Component;
11
8
  }
12
- export declare const DynamicZoneList: ({ components, addComponent, name, forTarget, targetUid, disabled, }: DynamicZoneListProps) => import("react/jsx-runtime").JSX.Element;
9
+ export declare const DynamicZoneList: ({ customRowComponent, components, addComponent, name, targetUid, }: DynamicZoneListProps) => import("react/jsx-runtime").JSX.Element;
13
10
  export {};