@webiny/app-headless-cms 6.3.0-beta.4 → 6.4.0-beta.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 (1324) hide show
  1. package/ContentEntryEditorConfig.js +42 -41
  2. package/ContentEntryEditorConfig.js.map +1 -1
  3. package/ContentEntryListConfig.js +6 -5
  4. package/ContentEntryListConfig.js.map +1 -1
  5. package/HeadlessCMS.js +24 -35
  6. package/HeadlessCMS.js.map +1 -1
  7. package/admin/RoutesConfig.js +44 -51
  8. package/admin/RoutesConfig.js.map +1 -1
  9. package/admin/components/ContentEntries/BottomInfoBar/BottomInfoBar.js +13 -14
  10. package/admin/components/ContentEntries/BottomInfoBar/BottomInfoBar.js.map +1 -1
  11. package/admin/components/ContentEntries/BottomInfoBar/ListMeta.js +10 -13
  12. package/admin/components/ContentEntries/BottomInfoBar/ListMeta.js.map +1 -1
  13. package/admin/components/ContentEntries/BottomInfoBar/ListStatus.js +13 -16
  14. package/admin/components/ContentEntries/BottomInfoBar/ListStatus.js.map +1 -1
  15. package/admin/components/ContentEntries/BottomInfoBar/index.js +0 -2
  16. package/admin/components/ContentEntries/BulkActions/ActionDelete.js +65 -92
  17. package/admin/components/ContentEntries/BulkActions/ActionDelete.js.map +1 -1
  18. package/admin/components/ContentEntries/BulkActions/ActionMove.js +85 -103
  19. package/admin/components/ContentEntries/BulkActions/ActionMove.js.map +1 -1
  20. package/admin/components/ContentEntries/BulkActions/ActionPublish.js +70 -95
  21. package/admin/components/ContentEntries/BulkActions/ActionPublish.js.map +1 -1
  22. package/admin/components/ContentEntries/BulkActions/ActionUnpublish.js +69 -94
  23. package/admin/components/ContentEntries/BulkActions/ActionUnpublish.js.map +1 -1
  24. package/admin/components/ContentEntries/BulkActions/BulkActions.js +56 -69
  25. package/admin/components/ContentEntries/BulkActions/BulkActions.js.map +1 -1
  26. package/admin/components/ContentEntries/BulkActions/index.js +1 -3
  27. package/admin/components/ContentEntries/Empty/index.js +40 -53
  28. package/admin/components/ContentEntries/Empty/index.js.map +1 -1
  29. package/admin/components/ContentEntries/Empty/styled.js +9 -22
  30. package/admin/components/ContentEntries/Empty/styled.js.map +1 -1
  31. package/admin/components/ContentEntries/Filters/FieldsMapper.js +66 -45
  32. package/admin/components/ContentEntries/Filters/FieldsMapper.js.map +1 -1
  33. package/admin/components/ContentEntries/Filters/FilterByStatus.js +45 -40
  34. package/admin/components/ContentEntries/Filters/FilterByStatus.js.map +1 -1
  35. package/admin/components/ContentEntries/Filters/Filters.js +35 -44
  36. package/admin/components/ContentEntries/Filters/Filters.js.map +1 -1
  37. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/EntriesGatewayInterface.js +0 -3
  38. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/EntriesGraphQLGateway.js +33 -50
  39. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/EntriesGraphQLGateway.js.map +1 -1
  40. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/entries.gql.js +6 -5
  41. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/entries.gql.js.map +1 -1
  42. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/entries.types.js +0 -3
  43. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/index.js +0 -2
  44. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/AutoComplete.js +36 -32
  45. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/AutoComplete.js.map +1 -1
  46. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/Ref.js +35 -38
  47. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/Ref.js.map +1 -1
  48. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/RefPresenter.js +40 -51
  49. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/RefPresenter.js.map +1 -1
  50. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/RefPresenter.test.js +134 -146
  51. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/RefPresenter.test.js.map +1 -1
  52. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/index.js +0 -2
  53. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/Entry.js +11 -10
  54. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/Entry.js.map +1 -1
  55. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/EntryMapper.js +18 -17
  56. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/EntryMapper.js.map +1 -1
  57. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/EntryRepository.js +38 -40
  58. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/EntryRepository.js.map +1 -1
  59. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/EntryRepositoryFactory.js +16 -14
  60. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/EntryRepositoryFactory.js.map +1 -1
  61. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/Loading.js +47 -46
  62. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/Loading.js.map +1 -1
  63. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/index.js +0 -2
  64. package/admin/components/ContentEntries/Filters/RefFieldRenderer/index.js +0 -2
  65. package/admin/components/ContentEntries/Filters/index.js +0 -2
  66. package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.js +15 -15
  67. package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.js.map +1 -1
  68. package/admin/components/ContentEntries/Header/ButtonFilters/index.js +0 -2
  69. package/admin/components/ContentEntries/Header/ButtonRefresh/ButtonRefresh.js +14 -13
  70. package/admin/components/ContentEntries/Header/ButtonRefresh/ButtonRefresh.js.map +1 -1
  71. package/admin/components/ContentEntries/Header/ButtonRefresh/index.js +0 -2
  72. package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.js +27 -37
  73. package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.js.map +1 -1
  74. package/admin/components/ContentEntries/Header/ButtonsCreate/index.js +0 -2
  75. package/admin/components/ContentEntries/Header/Header.js +27 -35
  76. package/admin/components/ContentEntries/Header/Header.js.map +1 -1
  77. package/admin/components/ContentEntries/Header/Title/Title.js +24 -26
  78. package/admin/components/ContentEntries/Header/Title/Title.js.map +1 -1
  79. package/admin/components/ContentEntries/Header/Title/index.js +0 -2
  80. package/admin/components/ContentEntries/Header/index.js +0 -2
  81. package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.js +11 -18
  82. package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.js.map +1 -1
  83. package/admin/components/ContentEntries/LoadMoreButton/index.js +0 -2
  84. package/admin/components/ContentEntries/LoadingContentModel/LoadingContentModel.js +7 -8
  85. package/admin/components/ContentEntries/LoadingContentModel/LoadingContentModel.js.map +1 -1
  86. package/admin/components/ContentEntries/LoadingContentModel/index.js +0 -2
  87. package/admin/components/ContentEntries/SidebarContent/SidebarContent.js +14 -18
  88. package/admin/components/ContentEntries/SidebarContent/SidebarContent.js.map +1 -1
  89. package/admin/components/ContentEntries/SidebarContent/index.js +0 -2
  90. package/admin/components/ContentEntries/SidebarFooter/SidebarFooter.js +5 -8
  91. package/admin/components/ContentEntries/SidebarFooter/SidebarFooter.js.map +1 -1
  92. package/admin/components/ContentEntries/SidebarFooter/index.js +0 -2
  93. package/admin/components/ContentEntries/SidebarHeader/SidebarHeader.js +24 -25
  94. package/admin/components/ContentEntries/SidebarHeader/SidebarHeader.js.map +1 -1
  95. package/admin/components/ContentEntries/SidebarHeader/index.js +0 -2
  96. package/admin/components/ContentEntries/Table/Actions/ChangeEntryStatus.js +25 -38
  97. package/admin/components/ContentEntries/Table/Actions/ChangeEntryStatus.js.map +1 -1
  98. package/admin/components/ContentEntries/Table/Actions/DeleteEntry.js +20 -27
  99. package/admin/components/ContentEntries/Table/Actions/DeleteEntry.js.map +1 -1
  100. package/admin/components/ContentEntries/Table/Actions/EditEntry.js +15 -24
  101. package/admin/components/ContentEntries/Table/Actions/EditEntry.js.map +1 -1
  102. package/admin/components/ContentEntries/Table/Actions/MoveEntry.js +15 -18
  103. package/admin/components/ContentEntries/Table/Actions/MoveEntry.js.map +1 -1
  104. package/admin/components/ContentEntries/Table/Actions/index.js +0 -2
  105. package/admin/components/ContentEntries/Table/Cells/CellActions.js +21 -30
  106. package/admin/components/ContentEntries/Table/Cells/CellActions.js.map +1 -1
  107. package/admin/components/ContentEntries/Table/Cells/CellAuthor.js +7 -12
  108. package/admin/components/ContentEntries/Table/Cells/CellAuthor.js.map +1 -1
  109. package/admin/components/ContentEntries/Table/Cells/CellCreated.js +10 -15
  110. package/admin/components/ContentEntries/Table/Cells/CellCreated.js.map +1 -1
  111. package/admin/components/ContentEntries/Table/Cells/CellLive.js +13 -21
  112. package/admin/components/ContentEntries/Table/Cells/CellLive.js.map +1 -1
  113. package/admin/components/ContentEntries/Table/Cells/CellModified.js +10 -15
  114. package/admin/components/ContentEntries/Table/Cells/CellModified.js.map +1 -1
  115. package/admin/components/ContentEntries/Table/Cells/CellName.js +51 -75
  116. package/admin/components/ContentEntries/Table/Cells/CellName.js.map +1 -1
  117. package/admin/components/ContentEntries/Table/Cells/CellStatus.js +23 -27
  118. package/admin/components/ContentEntries/Table/Cells/CellStatus.js.map +1 -1
  119. package/admin/components/ContentEntries/Table/Cells/index.js +0 -2
  120. package/admin/components/ContentEntries/Table/index.js +33 -32
  121. package/admin/components/ContentEntries/Table/index.js.map +1 -1
  122. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinBulkActionsGraphQLGateway.js +16 -24
  123. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinBulkActionsGraphQLGateway.js.map +1 -1
  124. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinDeleteItemGraphQLGateway.js +17 -25
  125. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinDeleteItemGraphQLGateway.js.map +1 -1
  126. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinItemMapper.js +16 -15
  127. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinItemMapper.js.map +1 -1
  128. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinListGraphQLGateway.js +31 -31
  129. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinListGraphQLGateway.js.map +1 -1
  130. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinRestoreItemGraphQLGateway.js +16 -24
  131. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinRestoreItemGraphQLGateway.js.map +1 -1
  132. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinRestoreItemGraphQLGatewayWithCallback.js +14 -13
  133. package/admin/components/ContentEntries/TrashBin/adapters/TrashBinRestoreItemGraphQLGatewayWithCallback.js.map +1 -1
  134. package/admin/components/ContentEntries/TrashBin/adapters/index.js +0 -2
  135. package/admin/components/ContentEntries/TrashBin/components/TrashBin.js +50 -57
  136. package/admin/components/ContentEntries/TrashBin/components/TrashBin.js.map +1 -1
  137. package/admin/components/ContentEntries/TrashBin/components/TrashBin.styled.js +32 -42
  138. package/admin/components/ContentEntries/TrashBin/components/TrashBin.styled.js.map +1 -1
  139. package/admin/components/ContentEntries/TrashBin/components/TrashBinButton.js +13 -14
  140. package/admin/components/ContentEntries/TrashBin/components/TrashBinButton.js.map +1 -1
  141. package/admin/components/ContentEntries/TrashBin/components/index.js +0 -2
  142. package/admin/components/ContentEntries/TrashBin/index.js +0 -2
  143. package/admin/components/ContentEntryForm/ContentEntryForm.js +43 -57
  144. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  145. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +25 -30
  146. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
  147. package/admin/components/ContentEntryForm/ContentEntryFormProvider.js +107 -125
  148. package/admin/components/ContentEntryForm/ContentEntryFormProvider.js.map +1 -1
  149. package/admin/components/ContentEntryForm/CustomLayout.js +18 -22
  150. package/admin/components/ContentEntryForm/CustomLayout.js.map +1 -1
  151. package/admin/components/ContentEntryForm/DefaultLayout.js +8 -18
  152. package/admin/components/ContentEntryForm/DefaultLayout.js.map +1 -1
  153. package/admin/components/ContentEntryForm/FieldElement.js +0 -2
  154. package/admin/components/ContentEntryForm/Fields.js +0 -2
  155. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.js +8 -9
  156. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -1
  157. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.js +0 -2
  158. package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js +21 -34
  159. package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js.map +1 -1
  160. package/admin/components/ContentEntryForm/Header/DeleteEntry/index.js +0 -2
  161. package/admin/components/ContentEntryForm/Header/Header.js +15 -18
  162. package/admin/components/ContentEntryForm/Header/Header.js.map +1 -1
  163. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.d.ts +1 -1
  164. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.js +45 -50
  165. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.js.map +1 -1
  166. package/admin/components/ContentEntryForm/Header/RevisionSelector/index.js +0 -2
  167. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/SaveAndPublishContent.js +20 -34
  168. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/SaveAndPublishContent.js.map +1 -1
  169. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.js +0 -2
  170. package/admin/components/ContentEntryForm/Header/SaveContent/SaveContent.js +18 -26
  171. package/admin/components/ContentEntryForm/Header/SaveContent/SaveContent.js.map +1 -1
  172. package/admin/components/ContentEntryForm/Header/SaveContent/index.js +0 -2
  173. package/admin/components/ContentEntryForm/Header/ShowRevisionsList/ShowRevisionList.js +16 -18
  174. package/admin/components/ContentEntryForm/Header/ShowRevisionsList/ShowRevisionList.js.map +1 -1
  175. package/admin/components/ContentEntryForm/Header/ShowRevisionsList/index.js +0 -2
  176. package/admin/components/ContentEntryForm/Header/index.js +0 -2
  177. package/admin/components/ContentEntryForm/Label.js +0 -2
  178. package/admin/components/ContentEntryForm/ParentValue.js +41 -48
  179. package/admin/components/ContentEntryForm/ParentValue.js.map +1 -1
  180. package/admin/components/ContentEntryForm/SingletonHeader/SaveAction.js +11 -18
  181. package/admin/components/ContentEntryForm/SingletonHeader/SaveAction.js.map +1 -1
  182. package/admin/components/ContentEntryForm/SingletonHeader/SingletonHeader.js +21 -22
  183. package/admin/components/ContentEntryForm/SingletonHeader/SingletonHeader.js.map +1 -1
  184. package/admin/components/ContentEntryForm/SingletonHeader/index.js +0 -2
  185. package/admin/components/ContentEntryForm/createValidationContainer.js +0 -2
  186. package/admin/components/ContentEntryForm/functions/getValue.js +7 -15
  187. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
  188. package/admin/components/ContentEntryForm/functions/setValue.js +10 -18
  189. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
  190. package/admin/components/ContentEntryForm/useBind.js +0 -2
  191. package/admin/components/ContentEntryForm/useContentEntryForm.js +6 -7
  192. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
  193. package/admin/components/ContentEntryForm/useDefaultValues.js +33 -74
  194. package/admin/components/ContentEntryForm/useDefaultValues.js.map +1 -1
  195. package/admin/components/ContentEntryForm/useFormRenderer.js +2 -3
  196. package/admin/components/ContentEntryForm/useFormRenderer.js.map +1 -1
  197. package/admin/components/ContentEntryForm/useGoToRevision.js +16 -17
  198. package/admin/components/ContentEntryForm/useGoToRevision.js.map +1 -1
  199. package/admin/components/ContentEntryForm/useRenderPlugins.js +0 -2
  200. package/admin/components/ContentModelEditor/ContentModelEditor.js +106 -117
  201. package/admin/components/ContentModelEditor/ContentModelEditor.js.map +1 -1
  202. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js +164 -197
  203. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -1
  204. package/admin/components/ContentModelEditor/FieldsSidebar.js +76 -97
  205. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
  206. package/admin/components/ContentModelEditor/Header.js +12 -13
  207. package/admin/components/ContentModelEditor/Header.js.map +1 -1
  208. package/admin/components/ContentModelEditor/ModelIsBeingDeletedError/ModelIsBeingDeletedError.js +48 -68
  209. package/admin/components/ContentModelEditor/ModelIsBeingDeletedError/ModelIsBeingDeletedError.js.map +1 -1
  210. package/admin/components/ContentModelEditor/ModelIsBeingDeletedError/SecureRouteError.js +297 -0
  211. package/admin/components/ContentModelEditor/ModelIsBeingDeletedError/SecureRouteError.js.map +1 -0
  212. package/admin/components/ContentModelEditor/ModelIsBeingDeletedError/index.js +0 -2
  213. package/admin/components/ContentModelEditor/PreviewTab.js +9 -12
  214. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
  215. package/admin/components/ContentModelEditor/icons/round-assignment-24px.js +19 -0
  216. package/admin/components/ContentModelEditor/icons/round-assignment-24px.js.map +1 -0
  217. package/admin/components/ContentModelEditor/icons/round-drag_indicator-24px.js +19 -0
  218. package/admin/components/ContentModelEditor/icons/round-drag_indicator-24px.js.map +1 -0
  219. package/admin/components/ContentModelEditor/index.js +0 -2
  220. package/admin/components/ContentModelEditor/useModelEditor.js +6 -7
  221. package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -1
  222. package/admin/components/ContentModelsWidget.js +19 -20
  223. package/admin/components/ContentModelsWidget.js.map +1 -1
  224. package/admin/components/Decorators/ShowConfirmationOnDelete.js +57 -83
  225. package/admin/components/Decorators/ShowConfirmationOnDelete.js.map +1 -1
  226. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision/EntryRevisionDeletedSnackbarMessage.js +5 -9
  227. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision/EntryRevisionDeletedSnackbarMessage.js.map +1 -1
  228. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision.js +60 -86
  229. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision.js.map +1 -1
  230. package/admin/components/Decorators/ShowConfirmationOnPublish.js +90 -90
  231. package/admin/components/Decorators/ShowConfirmationOnPublish.js.map +1 -1
  232. package/admin/components/Decorators/ShowConfirmationOnUnpublish.js +61 -90
  233. package/admin/components/Decorators/ShowConfirmationOnUnpublish.js.map +1 -1
  234. package/admin/components/Dialog.d.ts +4 -2
  235. package/admin/components/Dialog.js +4 -17
  236. package/admin/components/Dialog.js.map +1 -1
  237. package/admin/components/DragPreview.js +52 -73
  238. package/admin/components/DragPreview.js.map +1 -1
  239. package/admin/components/Draggable.js +28 -37
  240. package/admin/components/Draggable.js.map +1 -1
  241. package/admin/components/DropZone/Center.js +40 -51
  242. package/admin/components/DropZone/Center.js.map +1 -1
  243. package/admin/components/DropZone/Horizontal.js +31 -46
  244. package/admin/components/DropZone/Horizontal.js.map +1 -1
  245. package/admin/components/DropZone/Vertical.js +31 -46
  246. package/admin/components/DropZone/Vertical.js.map +1 -1
  247. package/admin/components/DropZone/index.js +3 -6
  248. package/admin/components/Droppable.js +28 -42
  249. package/admin/components/Droppable.js.map +1 -1
  250. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab/LegacyRichTextInput.js +11 -12
  251. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab/LegacyRichTextInput.js.map +1 -1
  252. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab/RendererOptions.js +16 -23
  253. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab/RendererOptions.js.map +1 -1
  254. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +60 -72
  255. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
  256. package/admin/components/FieldEditor/EditFieldDialog/FieldSettingsTabs.js +55 -54
  257. package/admin/components/FieldEditor/EditFieldDialog/FieldSettingsTabs.js.map +1 -1
  258. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +137 -164
  259. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
  260. package/admin/components/FieldEditor/EditFieldDialog/PermissionsEditor/CannotUsePermissions.js +10 -11
  261. package/admin/components/FieldEditor/EditFieldDialog/PermissionsEditor/CannotUsePermissions.js.map +1 -1
  262. package/admin/components/FieldEditor/EditFieldDialog/PermissionsEditor/FieldPermissionsSelection.js +105 -120
  263. package/admin/components/FieldEditor/EditFieldDialog/PermissionsEditor/FieldPermissionsSelection.js.map +1 -1
  264. package/admin/components/FieldEditor/EditFieldDialog/PermissionsEditor/PermissionsEditor.js +60 -57
  265. package/admin/components/FieldEditor/EditFieldDialog/PermissionsEditor/PermissionsEditor.js.map +1 -1
  266. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +38 -51
  267. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
  268. package/admin/components/FieldEditor/EditFieldDialog/RulesEditor/RulesEditor.js +218 -193
  269. package/admin/components/FieldEditor/EditFieldDialog/RulesEditor/RulesEditor.js.map +1 -1
  270. package/admin/components/FieldEditor/EditFieldDialog/RulesEditor/index.js +0 -2
  271. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/ValidationTab.js +21 -24
  272. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/ValidationTab.js.map +1 -1
  273. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/ValidationsSection.js +18 -24
  274. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/ValidationsSection.js.map +1 -1
  275. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/ValidatorsList.js +143 -196
  276. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/ValidatorsList.js.map +1 -1
  277. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/index.js +0 -2
  278. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js +6 -11
  279. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -1
  280. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js +8 -13
  281. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -1
  282. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js +46 -65
  283. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -1
  284. package/admin/components/FieldEditor/EditFieldDialog/useRendererPlugins.js +13 -27
  285. package/admin/components/FieldEditor/EditFieldDialog/useRendererPlugins.js.map +1 -1
  286. package/admin/components/FieldEditor/EditFieldDialog.js +51 -81
  287. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
  288. package/admin/components/FieldEditor/EditFieldDialogContainer.js +25 -34
  289. package/admin/components/FieldEditor/EditFieldDialogContainer.js.map +1 -1
  290. package/admin/components/FieldEditor/EditFieldDrawerContainer.js +25 -34
  291. package/admin/components/FieldEditor/EditFieldDrawerContainer.js.map +1 -1
  292. package/admin/components/FieldEditor/Field.js +187 -211
  293. package/admin/components/FieldEditor/Field.js.map +1 -1
  294. package/admin/components/FieldEditor/FieldEditor.js +193 -227
  295. package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
  296. package/admin/components/FieldEditor/FieldEditorContext.js +323 -532
  297. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
  298. package/admin/components/FieldEditor/LayoutCell.js +21 -28
  299. package/admin/components/FieldEditor/LayoutCell.js.map +1 -1
  300. package/admin/components/FieldEditor/index.js +0 -2
  301. package/admin/components/FieldEditor/useModelFieldEditor.js +5 -6
  302. package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -1
  303. package/admin/components/FieldEditor/utils/deleteField.js +25 -39
  304. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
  305. package/admin/components/FieldEditor/utils/getFieldPosition.js +17 -23
  306. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
  307. package/admin/components/FieldEditor/utils/index.js +0 -2
  308. package/admin/components/FieldEditor/utils/moveField.js +36 -47
  309. package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
  310. package/admin/components/FieldEditor/utils/moveRow.js +13 -10
  311. package/admin/components/FieldEditor/utils/moveRow.js.map +1 -1
  312. package/admin/components/IconPicker.js +25 -35
  313. package/admin/components/IconPicker.js.map +1 -1
  314. package/admin/components/IsModelPublishable.js +5 -4
  315. package/admin/components/IsModelPublishable.js.map +1 -1
  316. package/admin/components/LexicalCmsEditor/LexicalCmsEditor.js +24 -24
  317. package/admin/components/LexicalCmsEditor/LexicalCmsEditor.js.map +1 -1
  318. package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.js +81 -85
  319. package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.js.map +1 -1
  320. package/admin/components/LexicalCmsEditor/TypographyDropDown.js +55 -73
  321. package/admin/components/LexicalCmsEditor/TypographyDropDown.js.map +1 -1
  322. package/admin/components/ModelFieldProvider/index.js +0 -2
  323. package/admin/components/ModelProvider/index.js +0 -2
  324. package/admin/config/IsApplicableToCurrentModel.js +6 -12
  325. package/admin/config/IsApplicableToCurrentModel.js.map +1 -1
  326. package/admin/config/contentEntries/editor/Actions/BaseAction.js +28 -35
  327. package/admin/config/contentEntries/editor/Actions/BaseAction.js.map +1 -1
  328. package/admin/config/contentEntries/editor/Actions/ButtonAction.js +8 -8
  329. package/admin/config/contentEntries/editor/Actions/ButtonAction.js.map +1 -1
  330. package/admin/config/contentEntries/editor/Actions/MenuItemAction.js +8 -8
  331. package/admin/config/contentEntries/editor/Actions/MenuItemAction.js.map +1 -1
  332. package/admin/config/contentEntries/editor/Actions/index.js +4 -3
  333. package/admin/config/contentEntries/editor/Actions/index.js.map +1 -1
  334. package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js +21 -14
  335. package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js.map +1 -1
  336. package/admin/config/contentEntries/editor/FieldElement.js +8 -11
  337. package/admin/config/contentEntries/editor/FieldElement.js.map +1 -1
  338. package/admin/config/contentEntries/editor/ValidationIndicators.js +11 -13
  339. package/admin/config/contentEntries/editor/ValidationIndicators.js.map +1 -1
  340. package/admin/config/contentEntries/editor/Width.js +9 -13
  341. package/admin/config/contentEntries/editor/Width.js.map +1 -1
  342. package/admin/config/contentEntries/editor/index.js +0 -2
  343. package/admin/config/contentEntries/index.js +0 -2
  344. package/admin/config/contentEntries/list/Browser/AdvancedSearch/FieldRenderer.js +10 -18
  345. package/admin/config/contentEntries/list/Browser/AdvancedSearch/FieldRenderer.js.map +1 -1
  346. package/admin/config/contentEntries/list/Browser/AdvancedSearch/index.js +3 -2
  347. package/admin/config/contentEntries/list/Browser/AdvancedSearch/index.js.map +1 -1
  348. package/admin/config/contentEntries/list/Browser/BulkAction.js +64 -90
  349. package/admin/config/contentEntries/list/Browser/BulkAction.js.map +1 -1
  350. package/admin/config/contentEntries/list/Browser/EntryAction.js +9 -15
  351. package/admin/config/contentEntries/list/Browser/EntryAction.js.map +1 -1
  352. package/admin/config/contentEntries/list/Browser/Filter.js +34 -50
  353. package/admin/config/contentEntries/list/Browser/Filter.js.map +1 -1
  354. package/admin/config/contentEntries/list/Browser/FiltersToWhere.js +13 -19
  355. package/admin/config/contentEntries/list/Browser/FiltersToWhere.js.map +1 -1
  356. package/admin/config/contentEntries/list/Browser/FolderAction.js +9 -17
  357. package/admin/config/contentEntries/list/Browser/FolderAction.js.map +1 -1
  358. package/admin/config/contentEntries/list/Browser/FolderDropConfirmation.js +7 -15
  359. package/admin/config/contentEntries/list/Browser/FolderDropConfirmation.js.map +1 -1
  360. package/admin/config/contentEntries/list/Browser/FolderFieldDecorator.js +7 -22
  361. package/admin/config/contentEntries/list/Browser/FolderFieldDecorator.js.map +1 -1
  362. package/admin/config/contentEntries/list/Browser/Table/Column.js +10 -18
  363. package/admin/config/contentEntries/list/Browser/Table/Column.js.map +1 -1
  364. package/admin/config/contentEntries/list/Browser/Table/index.js +3 -2
  365. package/admin/config/contentEntries/list/Browser/Table/index.js.map +1 -1
  366. package/admin/config/contentEntries/list/Browser/index.js +19 -18
  367. package/admin/config/contentEntries/list/Browser/index.js.map +1 -1
  368. package/admin/config/contentEntries/list/ContentEntryListConfig.js +40 -43
  369. package/admin/config/contentEntries/list/ContentEntryListConfig.js.map +1 -1
  370. package/admin/config/contentEntries/list/index.js +0 -2
  371. package/admin/constants.js +7 -6
  372. package/admin/constants.js.map +1 -1
  373. package/admin/contexts/Cms/NetworkError.js +2 -2
  374. package/admin/contexts/Cms/NetworkError.js.map +1 -1
  375. package/admin/contexts/Cms/index.d.ts +7 -0
  376. package/admin/contexts/Cms/index.js +374 -489
  377. package/admin/contexts/Cms/index.js.map +1 -1
  378. package/admin/graphql/contentModels.js +6 -16
  379. package/admin/graphql/contentModels.js.map +1 -1
  380. package/admin/hooks/index.js +4 -6
  381. package/admin/hooks/useApolloClient.js +5 -6
  382. package/admin/hooks/useApolloClient.js.map +1 -1
  383. package/admin/hooks/useCms.js +7 -7
  384. package/admin/hooks/useCms.js.map +1 -1
  385. package/admin/hooks/useContentModels.js +25 -34
  386. package/admin/hooks/useContentModels.js.map +1 -1
  387. package/admin/hooks/useEntry.js +14 -18
  388. package/admin/hooks/useEntry.js.map +1 -1
  389. package/admin/hooks/useIsModelPublishable.js +6 -5
  390. package/admin/hooks/useIsModelPublishable.js.map +1 -1
  391. package/admin/hooks/useLazyQuery.js +10 -10
  392. package/admin/hooks/useLazyQuery.js.map +1 -1
  393. package/admin/hooks/useModelFieldGraphqlContext.js +10 -13
  394. package/admin/hooks/useModelFieldGraphqlContext.js.map +1 -1
  395. package/admin/hooks/useMutation.js +10 -10
  396. package/admin/hooks/useMutation.js.map +1 -1
  397. package/admin/hooks/usePermission.js +145 -210
  398. package/admin/hooks/usePermission.js.map +1 -1
  399. package/admin/hooks/usePersistEntry.js +32 -37
  400. package/admin/hooks/usePersistEntry.js.map +1 -1
  401. package/admin/hooks/useQuery.js +11 -11
  402. package/admin/hooks/useQuery.js.map +1 -1
  403. package/admin/icons/add.js +20 -0
  404. package/admin/icons/add.js.map +1 -0
  405. package/admin/icons/arrow_forward-24px.js +19 -0
  406. package/admin/icons/arrow_forward-24px.js.map +1 -0
  407. package/admin/icons/baseline-autorenew-24px.js +19 -0
  408. package/admin/icons/baseline-autorenew-24px.js.map +1 -0
  409. package/admin/icons/beenhere.js +19 -0
  410. package/admin/icons/beenhere.js.map +1 -0
  411. package/admin/icons/call_split-24px.js +20 -0
  412. package/admin/icons/call_split-24px.js.map +1 -0
  413. package/admin/icons/clone.js +17 -0
  414. package/admin/icons/clone.js.map +1 -0
  415. package/admin/icons/close.js +21 -0
  416. package/admin/icons/close.js.map +1 -0
  417. package/admin/icons/delete.js +18 -0
  418. package/admin/icons/delete.js.map +1 -0
  419. package/admin/icons/devices_other-black-24px.js +16 -0
  420. package/admin/icons/devices_other-black-24px.js.map +1 -0
  421. package/admin/icons/done-24px.js +19 -0
  422. package/admin/icons/done-24px.js.map +1 -0
  423. package/admin/icons/draft.js +18 -0
  424. package/admin/icons/draft.js.map +1 -0
  425. package/admin/icons/edit.js +20 -0
  426. package/admin/icons/edit.js.map +1 -0
  427. package/admin/icons/emoji_people-24px.js +26 -0
  428. package/admin/icons/emoji_people-24px.js.map +1 -0
  429. package/admin/icons/gesture.js +19 -0
  430. package/admin/icons/gesture.js.map +1 -0
  431. package/admin/icons/help_outline.js +19 -0
  432. package/admin/icons/help_outline.js.map +1 -0
  433. package/admin/icons/how_to_vote-24px.js +19 -0
  434. package/admin/icons/how_to_vote-24px.js.map +1 -0
  435. package/admin/icons/info.js +19 -0
  436. package/admin/icons/info.js.map +1 -0
  437. package/admin/icons/lock.js +23 -0
  438. package/admin/icons/lock.js.map +1 -0
  439. package/admin/icons/more_vert.js +20 -0
  440. package/admin/icons/more_vert.js.map +1 -0
  441. package/admin/icons/publish.js +19 -0
  442. package/admin/icons/publish.js.map +1 -0
  443. package/admin/icons/published.js +18 -0
  444. package/admin/icons/published.js.map +1 -0
  445. package/admin/icons/round-arrow_drop_down-24px.js +20 -0
  446. package/admin/icons/round-arrow_drop_down-24px.js.map +1 -0
  447. package/admin/icons/round-drag_indicator-24px.js +19 -0
  448. package/admin/icons/round-drag_indicator-24px.js.map +1 -0
  449. package/admin/icons/round-translate-24px.js +19 -0
  450. package/admin/icons/round-translate-24px.js.map +1 -0
  451. package/admin/icons/rule-24px.js +19 -0
  452. package/admin/icons/rule-24px.js.map +1 -0
  453. package/admin/icons/title-24px.js +19 -0
  454. package/admin/icons/title-24px.js.map +1 -0
  455. package/admin/icons/unpublish.js +19 -0
  456. package/admin/icons/unpublish.js.map +1 -0
  457. package/admin/icons/unpublished.js +18 -0
  458. package/admin/icons/unpublished.js.map +1 -0
  459. package/admin/icons/view_list.js +20 -0
  460. package/admin/icons/view_list.js.map +1 -0
  461. package/admin/icons/visibility.js +20 -0
  462. package/admin/icons/visibility.js.map +1 -0
  463. package/admin/lexicalConfig/LexicalEditorConfig.js +14 -27
  464. package/admin/lexicalConfig/LexicalEditorConfig.js.map +1 -1
  465. package/admin/menus/CmsMenuLoader.js +57 -80
  466. package/admin/menus/CmsMenuLoader.js.map +1 -1
  467. package/admin/menus/ContentGroupsMenuItems.js +14 -15
  468. package/admin/menus/ContentGroupsMenuItems.js.map +1 -1
  469. package/admin/menus/GroupContentModels.js +34 -44
  470. package/admin/menus/GroupContentModels.js.map +1 -1
  471. package/admin/menus/GroupMenu.js +17 -24
  472. package/admin/menus/GroupMenu.js.map +1 -1
  473. package/admin/menus/HasContentEntryPermissions.js +13 -22
  474. package/admin/menus/HasContentEntryPermissions.js.map +1 -1
  475. package/admin/plugins/apiInformation/index.js +46 -53
  476. package/admin/plugins/apiInformation/index.js.map +1 -1
  477. package/admin/plugins/apiInformation/placeholder.manage.graphql.js +2 -1
  478. package/admin/plugins/apiInformation/placeholder.manage.graphql.js.map +1 -1
  479. package/admin/plugins/apiInformation/placeholder.preview.graphql.js +2 -1
  480. package/admin/plugins/apiInformation/placeholder.preview.graphql.js.map +1 -1
  481. package/admin/plugins/apiInformation/placeholder.read.graphql.js +2 -1
  482. package/admin/plugins/apiInformation/placeholder.read.graphql.js.map +1 -1
  483. package/admin/plugins/arrayUtils.js +23 -32
  484. package/admin/plugins/arrayUtils.js.map +1 -1
  485. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js +27 -24
  486. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -1
  487. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js +12 -9
  488. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -1
  489. package/admin/plugins/editor/defaultBar/BackButton.js +12 -13
  490. package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -1
  491. package/admin/plugins/editor/defaultBar/CreateContentButton.js +30 -34
  492. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
  493. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +55 -68
  494. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  495. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js +19 -18
  496. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -1
  497. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js +31 -48
  498. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -1
  499. package/admin/plugins/editor/defaultBar/FormSettings/index.js +0 -2
  500. package/admin/plugins/editor/defaultBar/Name/Name.js +57 -60
  501. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
  502. package/admin/plugins/editor/defaultBar/Name/index.js +0 -2
  503. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +24 -29
  504. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
  505. package/admin/plugins/editor/defaultBar/index.js +39 -32
  506. package/admin/plugins/editor/defaultBar/index.js.map +1 -1
  507. package/admin/plugins/editor/formSettings/components/GeneralSettings.js +60 -61
  508. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
  509. package/admin/plugins/editor/formSettings/components/GroupSelect.d.ts +1 -1
  510. package/admin/plugins/editor/formSettings/components/GroupSelect.js +19 -23
  511. package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -1
  512. package/admin/plugins/editor/formSettings/icons/round-settings-24px.js +19 -0
  513. package/admin/plugins/editor/formSettings/icons/round-settings-24px.js.map +1 -0
  514. package/admin/plugins/editor/formSettings/index.js +13 -12
  515. package/admin/plugins/editor/formSettings/index.js.map +1 -1
  516. package/admin/plugins/fieldRenderers/AccordionRenderSettings.js +15 -20
  517. package/admin/plugins/fieldRenderers/AccordionRenderSettings.js.map +1 -1
  518. package/admin/plugins/fieldRenderers/DynamicSection.js +69 -93
  519. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
  520. package/admin/plugins/fieldRenderers/MultiValueRendererSettings.js +14 -19
  521. package/admin/plugins/fieldRenderers/MultiValueRendererSettings.js.map +1 -1
  522. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +27 -31
  523. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
  524. package/admin/plugins/fieldRenderers/boolean/index.js +4 -1
  525. package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -1
  526. package/admin/plugins/fieldRenderers/checkboxes.js +45 -55
  527. package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
  528. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js +28 -35
  529. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
  530. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +84 -107
  531. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
  532. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js +67 -80
  533. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
  534. package/admin/plugins/fieldRenderers/dateTime/Input.js +33 -38
  535. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
  536. package/admin/plugins/fieldRenderers/dateTime/Select.js +16 -16
  537. package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
  538. package/admin/plugins/fieldRenderers/dateTime/Time.js +28 -33
  539. package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -1
  540. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +40 -46
  541. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
  542. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +56 -68
  543. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
  544. package/admin/plugins/fieldRenderers/dateTime/index.js +5 -1
  545. package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -1
  546. package/admin/plugins/fieldRenderers/dateTime/utils.js +49 -65
  547. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
  548. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js +28 -29
  549. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -1
  550. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +128 -158
  551. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -1
  552. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js +74 -86
  553. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -1
  554. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js +23 -37
  555. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -1
  556. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js +10 -13
  557. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -1
  558. package/admin/plugins/fieldRenderers/dynamicZone/TemplateItem.js +37 -40
  559. package/admin/plugins/fieldRenderers/dynamicZone/TemplateItem.js.map +1 -1
  560. package/admin/plugins/fieldRenderers/dynamicZone/TemplateProvider.js +14 -14
  561. package/admin/plugins/fieldRenderers/dynamicZone/TemplateProvider.js.map +1 -1
  562. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +66 -93
  563. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -1
  564. package/admin/plugins/fieldRenderers/dynamicZone/index.js +2 -4
  565. package/admin/plugins/fieldRenderers/dynamicZone/useTemplateTypename.js +23 -23
  566. package/admin/plugins/fieldRenderers/dynamicZone/useTemplateTypename.js.map +1 -1
  567. package/admin/plugins/fieldRenderers/hidden.js +14 -13
  568. package/admin/plugins/fieldRenderers/hidden.js.map +1 -1
  569. package/admin/plugins/fieldRenderers/lexicalText/index.js +5 -3
  570. package/admin/plugins/fieldRenderers/lexicalText/index.js.map +1 -1
  571. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js +46 -51
  572. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js.map +1 -1
  573. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js +49 -50
  574. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js.map +1 -1
  575. package/admin/plugins/fieldRenderers/lexicalText/utils.js +2 -3
  576. package/admin/plugins/fieldRenderers/lexicalText/utils.js.map +1 -1
  577. package/admin/plugins/fieldRenderers/lexicalText/withHtml.js +7 -8
  578. package/admin/plugins/fieldRenderers/lexicalText/withHtml.js.map +1 -1
  579. package/admin/plugins/fieldRenderers/longText/index.js +5 -1
  580. package/admin/plugins/fieldRenderers/longText/index.js.map +1 -1
  581. package/admin/plugins/fieldRenderers/longText/longText.js +34 -39
  582. package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
  583. package/admin/plugins/fieldRenderers/longText/longTexts.js +48 -53
  584. package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
  585. package/admin/plugins/fieldRenderers/number/index.js +5 -1
  586. package/admin/plugins/fieldRenderers/number/index.js.map +1 -1
  587. package/admin/plugins/fieldRenderers/number/numberInput.js +34 -39
  588. package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
  589. package/admin/plugins/fieldRenderers/number/numberInputs.js +45 -50
  590. package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
  591. package/admin/plugins/fieldRenderers/object/FieldSettings.js +24 -37
  592. package/admin/plugins/fieldRenderers/object/FieldSettings.js.map +1 -1
  593. package/admin/plugins/fieldRenderers/object/MultiValueContainer.js +93 -105
  594. package/admin/plugins/fieldRenderers/object/MultiValueContainer.js.map +1 -1
  595. package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.js +40 -49
  596. package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.js.map +1 -1
  597. package/admin/plugins/fieldRenderers/object/StyledComponents.js +39 -65
  598. package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -1
  599. package/admin/plugins/fieldRenderers/object/index.js +8 -3
  600. package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
  601. package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js +44 -50
  602. package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js.map +1 -1
  603. package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js +52 -61
  604. package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js.map +1 -1
  605. package/admin/plugins/fieldRenderers/passthrough.js +21 -24
  606. package/admin/plugins/fieldRenderers/passthrough.js.map +1 -1
  607. package/admin/plugins/fieldRenderers/radioButtons.js +41 -55
  608. package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
  609. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js +177 -194
  610. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js.map +1 -1
  611. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceSettings.js +21 -19
  612. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceSettings.js.map +1 -1
  613. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js +150 -166
  614. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js.map +1 -1
  615. package/admin/plugins/fieldRenderers/ref/advanced/components/Container.js +5 -10
  616. package/admin/plugins/fieldRenderers/ref/advanced/components/Container.js.map +1 -1
  617. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js +20 -24
  618. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js.map +1 -1
  619. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js +112 -125
  620. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js.map +1 -1
  621. package/admin/plugins/fieldRenderers/ref/advanced/components/NoEntries.js +6 -10
  622. package/admin/plugins/fieldRenderers/ref/advanced/components/NoEntries.js.map +1 -1
  623. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js +53 -60
  624. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js.map +1 -1
  625. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js +103 -141
  626. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js.map +1 -1
  627. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js +17 -24
  628. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js.map +1 -1
  629. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/add-circle.js +15 -0
  630. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/add-circle.js.map +1 -0
  631. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/down-arrow.js +15 -0
  632. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/down-arrow.js.map +1 -0
  633. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/link.js +15 -0
  634. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/link.js.map +1 -0
  635. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/search.js +16 -0
  636. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/search.js.map +1 -0
  637. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js +31 -72
  638. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js.map +1 -1
  639. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js +9 -13
  640. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js.map +1 -1
  641. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js +11 -14
  642. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js.map +1 -1
  643. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js +16 -21
  644. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js.map +1 -1
  645. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js +8 -11
  646. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js.map +1 -1
  647. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js +12 -16
  648. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js.map +1 -1
  649. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js +24 -24
  650. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js.map +1 -1
  651. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js +35 -38
  652. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js.map +1 -1
  653. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-down.js +18 -0
  654. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-down.js.map +1 -0
  655. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-up.js +18 -0
  656. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-up.js.map +1 -0
  657. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/remove.js +18 -0
  658. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/remove.js.map +1 -0
  659. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/selected.js +18 -0
  660. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/selected.js.map +1 -0
  661. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-draft.js +18 -0
  662. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-draft.js.map +1 -0
  663. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-published.js +18 -0
  664. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-published.js.map +1 -0
  665. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-unpublished.js +18 -0
  666. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-unpublished.js.map +1 -0
  667. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/view.js +18 -0
  668. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/view.js.map +1 -0
  669. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js +58 -66
  670. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js.map +1 -1
  671. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js +9 -15
  672. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js.map +1 -1
  673. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js +32 -36
  674. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js.map +1 -1
  675. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js +25 -35
  676. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js.map +1 -1
  677. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js +26 -38
  678. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js.map +1 -1
  679. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js +4 -5
  680. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js.map +1 -1
  681. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js +128 -134
  682. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js.map +1 -1
  683. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js +123 -155
  684. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js.map +1 -1
  685. package/admin/plugins/fieldRenderers/ref/advanced/index.js +5 -3
  686. package/admin/plugins/fieldRenderers/ref/advanced/index.js.map +1 -1
  687. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +84 -88
  688. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
  689. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js +96 -106
  690. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
  691. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.d.ts +2 -2
  692. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js +30 -63
  693. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js.map +1 -1
  694. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js +19 -35
  695. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -1
  696. package/admin/plugins/fieldRenderers/ref/components/NewEntryButton.js +13 -28
  697. package/admin/plugins/fieldRenderers/ref/components/NewEntryButton.js.map +1 -1
  698. package/admin/plugins/fieldRenderers/ref/components/NewReferencedEntryDialog.js +131 -170
  699. package/admin/plugins/fieldRenderers/ref/components/NewReferencedEntryDialog.js.map +1 -1
  700. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js +8 -10
  701. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -1
  702. package/admin/plugins/fieldRenderers/ref/components/dialog/Dialog.d.ts +2 -2
  703. package/admin/plugins/fieldRenderers/ref/components/dialog/Dialog.js +20 -27
  704. package/admin/plugins/fieldRenderers/ref/components/dialog/Dialog.js.map +1 -1
  705. package/admin/plugins/fieldRenderers/ref/components/graphql.js +5 -26
  706. package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -1
  707. package/admin/plugins/fieldRenderers/ref/components/helpers.js +30 -36
  708. package/admin/plugins/fieldRenderers/ref/components/helpers.js.map +1 -1
  709. package/admin/plugins/fieldRenderers/ref/components/renderItem.js +20 -40
  710. package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -1
  711. package/admin/plugins/fieldRenderers/ref/components/types.js +0 -3
  712. package/admin/plugins/fieldRenderers/ref/components/useReference.js +132 -180
  713. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
  714. package/admin/plugins/fieldRenderers/ref/components/useReferences.js +120 -152
  715. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
  716. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +23 -47
  717. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
  718. package/admin/plugins/fieldRenderers/ref/index.js +7 -1
  719. package/admin/plugins/fieldRenderers/ref/index.js.map +1 -1
  720. package/admin/plugins/fieldRenderers/ref/refInput.js +20 -20
  721. package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
  722. package/admin/plugins/fieldRenderers/ref/refInputs.js +24 -27
  723. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
  724. package/admin/plugins/fieldRenderers/ref/simple/components/Loader.js +11 -12
  725. package/admin/plugins/fieldRenderers/ref/simple/components/Loader.js.map +1 -1
  726. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js +44 -53
  727. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js.map +1 -1
  728. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleSingleRenderer.js +44 -52
  729. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleSingleRenderer.js.map +1 -1
  730. package/admin/plugins/fieldRenderers/ref/simple/components/useContentModels.js +16 -23
  731. package/admin/plugins/fieldRenderers/ref/simple/components/useContentModels.js.map +1 -1
  732. package/admin/plugins/fieldRenderers/ref/simple/components/useReferences.js +45 -56
  733. package/admin/plugins/fieldRenderers/ref/simple/components/useReferences.js.map +1 -1
  734. package/admin/plugins/fieldRenderers/ref/simple/index.js +5 -3
  735. package/admin/plugins/fieldRenderers/ref/simple/index.js.map +1 -1
  736. package/admin/plugins/fieldRenderers/ref/simple/simpleMultipleRenderer.js +22 -28
  737. package/admin/plugins/fieldRenderers/ref/simple/simpleMultipleRenderer.js.map +1 -1
  738. package/admin/plugins/fieldRenderers/ref/simple/simpleSingleRenderer.js +22 -28
  739. package/admin/plugins/fieldRenderers/ref/simple/simpleSingleRenderer.js.map +1 -1
  740. package/admin/plugins/fieldRenderers/select.js +37 -51
  741. package/admin/plugins/fieldRenderers/select.js.map +1 -1
  742. package/admin/plugins/fieldRenderers/text/index.js +6 -1
  743. package/admin/plugins/fieldRenderers/text/index.js.map +1 -1
  744. package/admin/plugins/fieldRenderers/text/tags.js +29 -35
  745. package/admin/plugins/fieldRenderers/text/tags.js.map +1 -1
  746. package/admin/plugins/fieldRenderers/text/textInput.js +34 -40
  747. package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
  748. package/admin/plugins/fieldRenderers/text/textInputs.js +45 -50
  749. package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
  750. package/admin/plugins/fieldValidators/date/availableValidators.js +14 -8
  751. package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -1
  752. package/admin/plugins/fieldValidators/date/createDateInputField.js +17 -20
  753. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
  754. package/admin/plugins/fieldValidators/dateGte.js +38 -50
  755. package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
  756. package/admin/plugins/fieldValidators/dateLte.js +38 -50
  757. package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
  758. package/admin/plugins/fieldValidators/dynamicZone.js +53 -62
  759. package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -1
  760. package/admin/plugins/fieldValidators/gte.js +29 -33
  761. package/admin/plugins/fieldValidators/gte.js.map +1 -1
  762. package/admin/plugins/fieldValidators/in.js +28 -32
  763. package/admin/plugins/fieldValidators/in.js.map +1 -1
  764. package/admin/plugins/fieldValidators/lte.js +29 -33
  765. package/admin/plugins/fieldValidators/lte.js.map +1 -1
  766. package/admin/plugins/fieldValidators/maxLength.js +38 -44
  767. package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
  768. package/admin/plugins/fieldValidators/minLength.js +38 -44
  769. package/admin/plugins/fieldValidators/minLength.js.map +1 -1
  770. package/admin/plugins/fieldValidators/pattern.js +83 -99
  771. package/admin/plugins/fieldValidators/pattern.js.map +1 -1
  772. package/admin/plugins/fieldValidators/patternPlugins/email.js +12 -11
  773. package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
  774. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js +12 -11
  775. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
  776. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js +12 -11
  777. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
  778. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js +12 -11
  779. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
  780. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js +12 -11
  781. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
  782. package/admin/plugins/fieldValidators/patternPlugins/url.js +12 -11
  783. package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
  784. package/admin/plugins/fieldValidators/required.js +11 -12
  785. package/admin/plugins/fieldValidators/required.js.map +1 -1
  786. package/admin/plugins/fieldValidators/unique.js +12 -18
  787. package/admin/plugins/fieldValidators/unique.js.map +1 -1
  788. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +91 -115
  789. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
  790. package/admin/plugins/fields/boolean.js +54 -55
  791. package/admin/plugins/fields/boolean.js.map +1 -1
  792. package/admin/plugins/fields/dateTime.js +82 -72
  793. package/admin/plugins/fields/dateTime.js.map +1 -1
  794. package/admin/plugins/fields/dynamicZone/AddTemplate.js +65 -74
  795. package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -1
  796. package/admin/plugins/fields/dynamicZone/DynamicZone.js +44 -43
  797. package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -1
  798. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js +88 -88
  799. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -1
  800. package/admin/plugins/fields/dynamicZone/TemplateDialog.js +112 -122
  801. package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -1
  802. package/admin/plugins/fields/dynamicZone/commonValidators.js +27 -19
  803. package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -1
  804. package/admin/plugins/fields/dynamicZone.js +64 -65
  805. package/admin/plugins/fields/dynamicZone.js.map +1 -1
  806. package/admin/plugins/fields/icons/ballot_black_24dp.js +19 -0
  807. package/admin/plugins/fields/icons/ballot_black_24dp.js.map +1 -0
  808. package/admin/plugins/fields/icons/dropdown-icon.js +36 -0
  809. package/admin/plugins/fields/icons/dropdown-icon.js.map +1 -0
  810. package/admin/plugins/fields/icons/notes-black-24px.js +19 -0
  811. package/admin/plugins/fields/icons/notes-black-24px.js.map +1 -0
  812. package/admin/plugins/fields/icons/round-check_box-24px.js +19 -0
  813. package/admin/plugins/fields/icons/round-check_box-24px.js.map +1 -0
  814. package/admin/plugins/fields/icons/round-link-24px.js +19 -0
  815. package/admin/plugins/fields/icons/round-link-24px.js.map +1 -0
  816. package/admin/plugins/fields/icons/round-looks_3-24px.js +19 -0
  817. package/admin/plugins/fields/icons/round-looks_3-24px.js.map +1 -0
  818. package/admin/plugins/fields/icons/round-notes.js +19 -0
  819. package/admin/plugins/fields/icons/round-notes.js.map +1 -0
  820. package/admin/plugins/fields/icons/round-radio_button_checked-24px.js +24 -0
  821. package/admin/plugins/fields/icons/round-radio_button_checked-24px.js.map +1 -0
  822. package/admin/plugins/fields/icons/round-short_text.js +19 -0
  823. package/admin/plugins/fields/icons/round-short_text.js.map +1 -0
  824. package/admin/plugins/fields/icons/round-subject.js +19 -0
  825. package/admin/plugins/fields/icons/round-subject.js.map +1 -0
  826. package/admin/plugins/fields/icons/round-text_fields-24px.js +19 -0
  827. package/admin/plugins/fields/icons/round-text_fields-24px.js.map +1 -0
  828. package/admin/plugins/fields/icons/round-visibility_off-24px.js +19 -0
  829. package/admin/plugins/fields/icons/round-visibility_off-24px.js.map +1 -0
  830. package/admin/plugins/fields/icons/round_insert_drive_file-24px.js +19 -0
  831. package/admin/plugins/fields/icons/round_insert_drive_file-24px.js.map +1 -0
  832. package/admin/plugins/fields/icons/schedule-black-24px.js +19 -0
  833. package/admin/plugins/fields/icons/schedule-black-24px.js.map +1 -0
  834. package/admin/plugins/fields/icons/title-black-24px.js +19 -0
  835. package/admin/plugins/fields/icons/title-black-24px.js.map +1 -0
  836. package/admin/plugins/fields/icons/toggle_on-black-24px.js +19 -0
  837. package/admin/plugins/fields/icons/toggle_on-black-24px.js.map +1 -0
  838. package/admin/plugins/fields/json.js +27 -26
  839. package/admin/plugins/fields/json.js.map +1 -1
  840. package/admin/plugins/fields/longText.js +40 -35
  841. package/admin/plugins/fields/longText.js.map +1 -1
  842. package/admin/plugins/fields/number.js +54 -47
  843. package/admin/plugins/fields/number.js.map +1 -1
  844. package/admin/plugins/fields/object/ObjectFields.js +22 -29
  845. package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
  846. package/admin/plugins/fields/object.js +40 -43
  847. package/admin/plugins/fields/object.js.map +1 -1
  848. package/admin/plugins/fields/ref/graphql.js +3 -2
  849. package/admin/plugins/fields/ref/graphql.js.map +1 -1
  850. package/admin/plugins/fields/ref/renderInfo.js +42 -65
  851. package/admin/plugins/fields/ref/renderInfo.js.map +1 -1
  852. package/admin/plugins/fields/ref.js +89 -102
  853. package/admin/plugins/fields/ref.js.map +1 -1
  854. package/admin/plugins/fields/richText.js +34 -33
  855. package/admin/plugins/fields/richText.js.map +1 -1
  856. package/admin/plugins/fields/searchableJson.js +27 -26
  857. package/admin/plugins/fields/searchableJson.js.map +1 -1
  858. package/admin/plugins/fields/text.js +46 -39
  859. package/admin/plugins/fields/text.js.map +1 -1
  860. package/admin/plugins/fields/ui/TabsLayoutEditor.js +414 -447
  861. package/admin/plugins/fields/ui/TabsLayoutEditor.js.map +1 -1
  862. package/admin/plugins/fields/ui/alert.js +142 -148
  863. package/admin/plugins/fields/ui/alert.js.map +1 -1
  864. package/admin/plugins/fields/ui/index.js +0 -2
  865. package/admin/plugins/fields/ui/separator.js +123 -134
  866. package/admin/plugins/fields/ui/separator.js.map +1 -1
  867. package/admin/plugins/fields/ui/tabs.js +53 -77
  868. package/admin/plugins/fields/ui/tabs.js.map +1 -1
  869. package/admin/plugins/getObjectId.js +8 -7
  870. package/admin/plugins/getObjectId.js.map +1 -1
  871. package/admin/plugins/icons.js +21 -24
  872. package/admin/plugins/icons.js.map +1 -1
  873. package/admin/plugins/index.js +9 -2
  874. package/admin/plugins/index.js.map +1 -1
  875. package/admin/plugins/permissionRenderer/CmsPermissions.js +205 -256
  876. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
  877. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +89 -80
  878. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  879. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +78 -69
  880. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -1
  881. package/admin/plugins/permissionRenderer/components/ContentModelList.js +21 -31
  882. package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -1
  883. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +89 -82
  884. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -1
  885. package/admin/plugins/permissionRenderer/components/types.js +0 -3
  886. package/admin/plugins/permissionRenderer/components/useCmsData.js +13 -23
  887. package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -1
  888. package/admin/plugins/permissionRenderer/index.js +11 -12
  889. package/admin/plugins/permissionRenderer/index.js.map +1 -1
  890. package/admin/plugins/transformers/dateTransformer.js +81 -105
  891. package/admin/plugins/transformers/dateTransformer.js.map +1 -1
  892. package/admin/plugins/transformers/dynamicZoneTransformer.js +16 -20
  893. package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -1
  894. package/admin/plugins/transformers/index.js +7 -1
  895. package/admin/plugins/transformers/index.js.map +1 -1
  896. package/admin/plugins/transformers/numberTransformer.js +13 -17
  897. package/admin/plugins/transformers/numberTransformer.js.map +1 -1
  898. package/admin/plugins/transformers/objectTransformer.js +11 -12
  899. package/admin/plugins/transformers/objectTransformer.js.map +1 -1
  900. package/admin/views/contentEntries/ContentEntries.js +11 -14
  901. package/admin/views/contentEntries/ContentEntries.js.map +1 -1
  902. package/admin/views/contentEntries/ContentEntriesContainer.js +29 -44
  903. package/admin/views/contentEntries/ContentEntriesContainer.js.map +1 -1
  904. package/admin/views/contentEntries/ContentEntriesContext.js +14 -19
  905. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  906. package/admin/views/contentEntries/ContentEntriesModule.js +106 -112
  907. package/admin/views/contentEntries/ContentEntriesModule.js.map +1 -1
  908. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +2 -0
  909. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +229 -272
  910. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  911. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.js +31 -45
  912. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.js.map +1 -1
  913. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.styled.js +32 -52
  914. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntry.styled.js.map +1 -1
  915. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntryHeaderLeft.js +36 -44
  916. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/FullScreenContentEntryHeaderLeft.js.map +1 -1
  917. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/RevisionListDrawer/RevisionListDrawer.js +25 -22
  918. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/RevisionListDrawer/RevisionListDrawer.js.map +1 -1
  919. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/RevisionListDrawer/index.js +0 -2
  920. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/index.js +0 -2
  921. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/useFullScreenContentEntry.js +4 -6
  922. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/useFullScreenContentEntry.js.map +1 -1
  923. package/admin/views/contentEntries/ContentEntry/RevisionsList/PublishEntryRevisionListItem.js +4 -5
  924. package/admin/views/contentEntries/ContentEntry/RevisionsList/PublishEntryRevisionListItem.js.map +1 -1
  925. package/admin/views/contentEntries/ContentEntry/RevisionsList/RevisionListItem.js +122 -120
  926. package/admin/views/contentEntries/ContentEntry/RevisionsList/RevisionListItem.js.map +1 -1
  927. package/admin/views/contentEntries/ContentEntry/RevisionsList/RevisionsList.d.ts +7 -1
  928. package/admin/views/contentEntries/ContentEntry/RevisionsList/RevisionsList.js +14 -18
  929. package/admin/views/contentEntries/ContentEntry/RevisionsList/RevisionsList.js.map +1 -1
  930. package/admin/views/contentEntries/ContentEntry/RevisionsList/useRevision.js +79 -123
  931. package/admin/views/contentEntries/ContentEntry/RevisionsList/useRevision.js.map +1 -1
  932. package/admin/views/contentEntries/ContentEntry/SingletonContentEntry.js +27 -39
  933. package/admin/views/contentEntries/ContentEntry/SingletonContentEntry.js.map +1 -1
  934. package/admin/views/contentEntries/ContentEntry/SingletonContentEntryContext.js +42 -59
  935. package/admin/views/contentEntries/ContentEntry/SingletonContentEntryContext.js.map +1 -1
  936. package/admin/views/contentEntries/ContentEntry/useMockRecords.js +2 -3
  937. package/admin/views/contentEntries/ContentEntry/useMockRecords.js.map +1 -1
  938. package/admin/views/contentEntries/ContentEntry.js +50 -50
  939. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  940. package/admin/views/contentEntries/SingletonContentEntryModule.js +12 -19
  941. package/admin/views/contentEntries/SingletonContentEntryModule.js.map +1 -1
  942. package/admin/views/contentEntries/Table/Main.js +90 -108
  943. package/admin/views/contentEntries/Table/Main.js.map +1 -1
  944. package/admin/views/contentEntries/Table/Sidebar.js +5 -6
  945. package/admin/views/contentEntries/Table/Sidebar.js.map +1 -1
  946. package/admin/views/contentEntries/Table/index.js +44 -52
  947. package/admin/views/contentEntries/Table/index.js.map +1 -1
  948. package/admin/views/contentEntries/ValidationIndicators.js +137 -56
  949. package/admin/views/contentEntries/ValidationIndicators.js.map +1 -1
  950. package/admin/views/contentEntries/hooks/index.js +0 -2
  951. package/admin/views/contentEntries/hooks/useContentEntries.js +5 -6
  952. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
  953. package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +3 -3
  954. package/admin/views/contentEntries/hooks/useContentEntriesList.js +122 -165
  955. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
  956. package/admin/views/contentEntries/hooks/useContentEntry.js +5 -6
  957. package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -1
  958. package/admin/views/contentEntries/hooks/useMoveContentEntryToFolder.js +24 -31
  959. package/admin/views/contentEntries/hooks/useMoveContentEntryToFolder.js.map +1 -1
  960. package/admin/views/contentEntries/hooks/useSingletonContentEntry.js +5 -6
  961. package/admin/views/contentEntries/hooks/useSingletonContentEntry.js.map +1 -1
  962. package/admin/views/contentModelGroups/ContentModelGroups.js +25 -30
  963. package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -1
  964. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +155 -175
  965. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -1
  966. package/admin/views/contentModelGroups/ContentModelGroupsForm.js +190 -226
  967. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
  968. package/admin/views/contentModelGroups/graphql.js +7 -33
  969. package/admin/views/contentModelGroups/graphql.js.map +1 -1
  970. package/admin/views/contentModels/CloneContentModelDialog.d.ts +1 -2
  971. package/admin/views/contentModels/CloneContentModelDialog.js +168 -174
  972. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
  973. package/admin/views/contentModels/ContentModelEditor.js +14 -17
  974. package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
  975. package/admin/views/contentModels/ContentModels.js +53 -57
  976. package/admin/views/contentModels/ContentModels.js.map +1 -1
  977. package/admin/views/contentModels/ContentModelsDataList.js +227 -253
  978. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
  979. package/admin/views/contentModels/NewContentModelDialog.js +189 -211
  980. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  981. package/admin/views/contentModels/OptionsMenu.js +21 -39
  982. package/admin/views/contentModels/OptionsMenu.js.map +1 -1
  983. package/admin/views/contentModels/cache.js +94 -147
  984. package/admin/views/contentModels/cache.js.map +1 -1
  985. package/admin/views/contentModels/exporting/download.js +19 -20
  986. package/admin/views/contentModels/exporting/download.js.map +1 -1
  987. package/admin/views/contentModels/exporting/graphql.js +3 -2
  988. package/admin/views/contentModels/exporting/graphql.js.map +1 -1
  989. package/admin/views/contentModels/exporting/runExport.js +48 -53
  990. package/admin/views/contentModels/exporting/runExport.js.map +1 -1
  991. package/admin/views/contentModels/exporting/useModelExport.js +25 -27
  992. package/admin/views/contentModels/exporting/useModelExport.js.map +1 -1
  993. package/admin/views/contentModels/fullDelete/FullyDeleteModelDialog.js +77 -91
  994. package/admin/views/contentModels/fullDelete/FullyDeleteModelDialog.js.map +1 -1
  995. package/admin/views/contentModels/fullDelete/ModelIsBeingDeleted.js +52 -55
  996. package/admin/views/contentModels/fullDelete/ModelIsBeingDeleted.js.map +1 -1
  997. package/admin/views/contentModels/fullDelete/dialog/Confirmation.js +24 -27
  998. package/admin/views/contentModels/fullDelete/dialog/Confirmation.js.map +1 -1
  999. package/admin/views/contentModels/fullDelete/dialog/Content.js +17 -26
  1000. package/admin/views/contentModels/fullDelete/dialog/Content.js.map +1 -1
  1001. package/admin/views/contentModels/fullDelete/dialog/Information.js +9 -10
  1002. package/admin/views/contentModels/fullDelete/dialog/Information.js.map +1 -1
  1003. package/admin/views/contentModels/fullDelete/dialog/Processed.js +11 -12
  1004. package/admin/views/contentModels/fullDelete/dialog/Processed.js.map +1 -1
  1005. package/admin/views/contentModels/fullDelete/dialog/process.js +44 -57
  1006. package/admin/views/contentModels/fullDelete/dialog/process.js.map +1 -1
  1007. package/admin/views/contentModels/fullDelete/dialog/state.js +94 -96
  1008. package/admin/views/contentModels/fullDelete/dialog/state.js.map +1 -1
  1009. package/admin/views/contentModels/fullDelete/dialog/validationValue.js +2 -3
  1010. package/admin/views/contentModels/fullDelete/dialog/validationValue.js.map +1 -1
  1011. package/admin/views/contentModels/fullDelete/types.js +8 -7
  1012. package/admin/views/contentModels/fullDelete/types.js.map +1 -1
  1013. package/admin/views/contentModels/fullDelete/useCancelDelete.js +33 -46
  1014. package/admin/views/contentModels/fullDelete/useCancelDelete.js.map +1 -1
  1015. package/admin/views/contentModels/helpers/apiNameValidator.js +36 -60
  1016. package/admin/views/contentModels/helpers/apiNameValidator.js.map +1 -1
  1017. package/admin/views/contentModels/helpers/nameValidator.js +17 -25
  1018. package/admin/views/contentModels/helpers/nameValidator.js.map +1 -1
  1019. package/admin/views/contentModels/importing/ImportContentModelsDialog.js +31 -38
  1020. package/admin/views/contentModels/importing/ImportContentModelsDialog.js.map +1 -1
  1021. package/admin/views/contentModels/importing/ImportContext.js +343 -390
  1022. package/admin/views/contentModels/importing/ImportContext.js.map +1 -1
  1023. package/admin/views/contentModels/importing/components/DataList.js +13 -21
  1024. package/admin/views/contentModels/importing/components/DataList.js.map +1 -1
  1025. package/admin/views/contentModels/importing/components/DataListGroup.js +17 -42
  1026. package/admin/views/contentModels/importing/components/DataListGroup.js.map +1 -1
  1027. package/admin/views/contentModels/importing/components/Errors.js +28 -41
  1028. package/admin/views/contentModels/importing/components/Errors.js.map +1 -1
  1029. package/admin/views/contentModels/importing/components/FileUpload.js +28 -40
  1030. package/admin/views/contentModels/importing/components/FileUpload.js.map +1 -1
  1031. package/admin/views/contentModels/importing/components/ImportButton.js +9 -12
  1032. package/admin/views/contentModels/importing/components/ImportButton.js.map +1 -1
  1033. package/admin/views/contentModels/importing/components/Model/DataListInstructions.js +9 -20
  1034. package/admin/views/contentModels/importing/components/Model/DataListInstructions.js.map +1 -1
  1035. package/admin/views/contentModels/importing/components/Model/DataListModelItem.js +81 -161
  1036. package/admin/views/contentModels/importing/components/Model/DataListModelItem.js.map +1 -1
  1037. package/admin/views/contentModels/importing/components/Model/DataListModelItemError.js +40 -71
  1038. package/admin/views/contentModels/importing/components/Model/DataListModelItemError.js.map +1 -1
  1039. package/admin/views/contentModels/importing/components/Model/DataListModelItemInfo.js +17 -31
  1040. package/admin/views/contentModels/importing/components/Model/DataListModelItemInfo.js.map +1 -1
  1041. package/admin/views/contentModels/importing/components/Model/DataListModels.js +16 -30
  1042. package/admin/views/contentModels/importing/components/Model/DataListModels.js.map +1 -1
  1043. package/admin/views/contentModels/importing/components/Model/index.js +0 -2
  1044. package/admin/views/contentModels/importing/graphql.js +5 -4
  1045. package/admin/views/contentModels/importing/graphql.js.map +1 -1
  1046. package/admin/views/contentModels/importing/types.js +7 -6
  1047. package/admin/views/contentModels/importing/types.js.map +1 -1
  1048. package/admin/views/contentModels/importing/useImport.js +6 -7
  1049. package/admin/views/contentModels/importing/useImport.js.map +1 -1
  1050. package/admin/views/contentModels/types.js +0 -3
  1051. package/admin/views/utils.js +9 -7
  1052. package/admin/views/utils.js.map +1 -1
  1053. package/admin/viewsGraphql.js +12 -46
  1054. package/admin/viewsGraphql.js.map +1 -1
  1055. package/allPlugins.js +86 -38
  1056. package/allPlugins.js.map +1 -1
  1057. package/domain/permissionsSchema.js +51 -30
  1058. package/domain/permissionsSchema.js.map +1 -1
  1059. package/exports/admin/cms/entry/editor.js +0 -3
  1060. package/exports/admin/cms/entry/list.js +0 -2
  1061. package/exports/admin/cms/field-renderers/common.js +1 -4
  1062. package/exports/admin/cms/field-renderers/dynamic-zone.js +1 -9
  1063. package/exports/admin/cms/field-renderers/object.js +0 -2
  1064. package/exports/admin/cms/lexical.js +1 -18
  1065. package/exports/admin/cms/model.js +0 -2
  1066. package/exports/admin/cms.js +1 -5
  1067. package/features/ListCache.d.ts +2 -29
  1068. package/features/ListCache.js +1 -43
  1069. package/features/contentEntry/events/EntryAfterCreateEvent.js +8 -5
  1070. package/features/contentEntry/events/EntryAfterCreateEvent.js.map +1 -1
  1071. package/features/contentEntry/events/EntryAfterDeleteEvent.js +8 -5
  1072. package/features/contentEntry/events/EntryAfterDeleteEvent.js.map +1 -1
  1073. package/features/contentEntry/events/EntryAfterUpdateEvent.js +8 -5
  1074. package/features/contentEntry/events/EntryAfterUpdateEvent.js.map +1 -1
  1075. package/features/contentEntry/events/abstractions.js +4 -3
  1076. package/features/contentEntry/events/abstractions.js.map +1 -1
  1077. package/features/contentEntry/events/index.js +1 -3
  1078. package/features/graphQLClient/CmsGraphQLClient.js +17 -13
  1079. package/features/graphQLClient/CmsGraphQLClient.js.map +1 -1
  1080. package/features/graphQLClient/abstractions.js +2 -1
  1081. package/features/graphQLClient/abstractions.js.map +1 -1
  1082. package/features/graphQLClient/feature.js +11 -10
  1083. package/features/graphQLClient/feature.js.map +1 -1
  1084. package/features/graphQLClient/index.js +0 -2
  1085. package/features/modelGroup/abstractions.d.ts +1 -1
  1086. package/features/modelGroup/abstractions.js +2 -1
  1087. package/features/modelGroup/abstractions.js.map +1 -1
  1088. package/features/modelGroup/createModelGroup/CreateModelGroupGateway.js +22 -24
  1089. package/features/modelGroup/createModelGroup/CreateModelGroupGateway.js.map +1 -1
  1090. package/features/modelGroup/createModelGroup/CreateModelGroupRepository.js +19 -13
  1091. package/features/modelGroup/createModelGroup/CreateModelGroupRepository.js.map +1 -1
  1092. package/features/modelGroup/createModelGroup/CreateModelGroupUseCase.js +13 -10
  1093. package/features/modelGroup/createModelGroup/CreateModelGroupUseCase.js.map +1 -1
  1094. package/features/modelGroup/createModelGroup/abstractions.js +4 -12
  1095. package/features/modelGroup/createModelGroup/abstractions.js.map +1 -1
  1096. package/features/modelGroup/createModelGroup/feature.js +15 -14
  1097. package/features/modelGroup/createModelGroup/feature.js.map +1 -1
  1098. package/features/modelGroup/deleteModelGroup/DeleteModelGroupGateway.js +21 -23
  1099. package/features/modelGroup/deleteModelGroup/DeleteModelGroupGateway.js.map +1 -1
  1100. package/features/modelGroup/deleteModelGroup/DeleteModelGroupRepository.js +16 -12
  1101. package/features/modelGroup/deleteModelGroup/DeleteModelGroupRepository.js.map +1 -1
  1102. package/features/modelGroup/deleteModelGroup/DeleteModelGroupUseCase.js +13 -10
  1103. package/features/modelGroup/deleteModelGroup/DeleteModelGroupUseCase.js.map +1 -1
  1104. package/features/modelGroup/deleteModelGroup/abstractions.js +4 -12
  1105. package/features/modelGroup/deleteModelGroup/abstractions.js.map +1 -1
  1106. package/features/modelGroup/deleteModelGroup/feature.js +15 -14
  1107. package/features/modelGroup/deleteModelGroup/feature.js.map +1 -1
  1108. package/features/modelGroup/feature.js +11 -10
  1109. package/features/modelGroup/feature.js.map +1 -1
  1110. package/features/modelGroup/getModelGroup/GetModelGroupGateway.js +22 -24
  1111. package/features/modelGroup/getModelGroup/GetModelGroupGateway.js.map +1 -1
  1112. package/features/modelGroup/getModelGroup/GetModelGroupRepository.js +19 -13
  1113. package/features/modelGroup/getModelGroup/GetModelGroupRepository.js.map +1 -1
  1114. package/features/modelGroup/getModelGroup/GetModelGroupUseCase.js +13 -10
  1115. package/features/modelGroup/getModelGroup/GetModelGroupUseCase.js.map +1 -1
  1116. package/features/modelGroup/getModelGroup/abstractions.js +4 -12
  1117. package/features/modelGroup/getModelGroup/abstractions.js.map +1 -1
  1118. package/features/modelGroup/getModelGroup/feature.js +15 -14
  1119. package/features/modelGroup/getModelGroup/feature.js.map +1 -1
  1120. package/features/modelGroup/listModelGroups/ListModelGroupsGateway.js +19 -21
  1121. package/features/modelGroup/listModelGroups/ListModelGroupsGateway.js.map +1 -1
  1122. package/features/modelGroup/listModelGroups/ListModelGroupsRepository.js +18 -16
  1123. package/features/modelGroup/listModelGroups/ListModelGroupsRepository.js.map +1 -1
  1124. package/features/modelGroup/listModelGroups/ListModelGroupsUseCase.js +13 -10
  1125. package/features/modelGroup/listModelGroups/ListModelGroupsUseCase.js.map +1 -1
  1126. package/features/modelGroup/listModelGroups/abstractions.js +4 -12
  1127. package/features/modelGroup/listModelGroups/abstractions.js.map +1 -1
  1128. package/features/modelGroup/listModelGroups/feature.js +15 -14
  1129. package/features/modelGroup/listModelGroups/feature.js.map +1 -1
  1130. package/features/modelGroup/updateModelGroup/UpdateModelGroupGateway.js +23 -25
  1131. package/features/modelGroup/updateModelGroup/UpdateModelGroupGateway.js.map +1 -1
  1132. package/features/modelGroup/updateModelGroup/UpdateModelGroupRepository.js +24 -25
  1133. package/features/modelGroup/updateModelGroup/UpdateModelGroupRepository.js.map +1 -1
  1134. package/features/modelGroup/updateModelGroup/UpdateModelGroupUseCase.js +13 -10
  1135. package/features/modelGroup/updateModelGroup/UpdateModelGroupUseCase.js.map +1 -1
  1136. package/features/modelGroup/updateModelGroup/abstractions.js +4 -12
  1137. package/features/modelGroup/updateModelGroup/abstractions.js.map +1 -1
  1138. package/features/modelGroup/updateModelGroup/feature.js +15 -14
  1139. package/features/modelGroup/updateModelGroup/feature.js.map +1 -1
  1140. package/features/permissions/abstractions.js +2 -1
  1141. package/features/permissions/abstractions.js.map +1 -1
  1142. package/features/permissions/feature.js +2 -1
  1143. package/features/permissions/feature.js.map +1 -1
  1144. package/index.js +9 -9
  1145. package/index.js.map +1 -1
  1146. package/legacyPluginAdapters/CmsContentFormRenderer.js +11 -10
  1147. package/legacyPluginAdapters/CmsContentFormRenderer.js.map +1 -1
  1148. package/legacyPluginAdapters/CmsModelFieldRenderer.js +10 -9
  1149. package/legacyPluginAdapters/CmsModelFieldRenderer.js.map +1 -1
  1150. package/legacyPluginAdapters/CmsModelFieldType.js +10 -9
  1151. package/legacyPluginAdapters/CmsModelFieldType.js.map +1 -1
  1152. package/legacyPluginAdapters/CmsModelFieldValidator.js +10 -9
  1153. package/legacyPluginAdapters/CmsModelFieldValidator.js.map +1 -1
  1154. package/legacyPluginAdapters/CmsModelLayoutFieldRenderer.js +11 -10
  1155. package/legacyPluginAdapters/CmsModelLayoutFieldRenderer.js.map +1 -1
  1156. package/legacyPluginAdapters/CmsModelLayoutFieldType.js +10 -9
  1157. package/legacyPluginAdapters/CmsModelLayoutFieldType.js.map +1 -1
  1158. package/package.json +26 -29
  1159. package/plugins/CmsContentFormRendererPlugin.js +4 -3
  1160. package/plugins/CmsContentFormRendererPlugin.js.map +1 -1
  1161. package/plugins/index.js +0 -2
  1162. package/presentation/modelGroup/hooks/index.js +0 -2
  1163. package/presentation/modelGroup/hooks/useCreateModelGroup.js +6 -7
  1164. package/presentation/modelGroup/hooks/useCreateModelGroup.js.map +1 -1
  1165. package/presentation/modelGroup/hooks/useDeleteModelGroup.js +6 -7
  1166. package/presentation/modelGroup/hooks/useDeleteModelGroup.js.map +1 -1
  1167. package/presentation/modelGroup/hooks/useGetModelGroup.js +6 -7
  1168. package/presentation/modelGroup/hooks/useGetModelGroup.js.map +1 -1
  1169. package/presentation/modelGroup/hooks/useListModelGroups.js +9 -10
  1170. package/presentation/modelGroup/hooks/useListModelGroups.js.map +1 -1
  1171. package/presentation/modelGroup/hooks/useUpdateModelGroup.js +6 -7
  1172. package/presentation/modelGroup/hooks/useUpdateModelGroup.js.map +1 -1
  1173. package/routes.js +38 -43
  1174. package/routes.js.map +1 -1
  1175. package/static/svg/SecureRouteError.e8b15981.svg +1 -0
  1176. package/static/svg/add-circle.e3d74594.svg +1 -0
  1177. package/static/svg/add.23223716.svg +5 -0
  1178. package/static/svg/arrow_forward-24px.9bc970d4.svg +1 -0
  1179. package/static/svg/ballot_black_24dp.f73e2e82.svg +1 -0
  1180. package/static/svg/baseline-autorenew-24px.b851349f.svg +4 -0
  1181. package/static/svg/beenhere.f0a9cdbb.svg +1 -0
  1182. package/static/svg/call_split-24px.4485022a.svg +4 -0
  1183. package/static/svg/clone.0afc9a4a.svg +14 -0
  1184. package/static/svg/close.187f2c20.svg +13 -0
  1185. package/static/svg/delete.b574109c.svg +12 -0
  1186. package/static/svg/devices_other-black-24px.1c6732ba.svg +1 -0
  1187. package/static/svg/done-24px.35a02c84.svg +1 -0
  1188. package/static/svg/down-arrow.145c8d7d.svg +1 -0
  1189. package/static/svg/draft.2e3c269f.svg +3 -0
  1190. package/static/svg/dropdown-icon.b7d965fb.svg +16 -0
  1191. package/static/svg/edit.1b515b45.svg +17 -0
  1192. package/static/svg/emoji_people-24px.68344715.svg +1 -0
  1193. package/static/svg/gesture.8eca6347.svg +1 -0
  1194. package/static/svg/help_outline.84de19a8.svg +1 -0
  1195. package/static/svg/how_to_vote-24px.3d42fbcf.svg +4 -0
  1196. package/static/svg/info.8d4b78f2.svg +1 -0
  1197. package/static/svg/link.3a8c598d.svg +1 -0
  1198. package/static/svg/lock.e3e5d6b4.svg +1 -0
  1199. package/static/svg/more_vert.68d41b07.svg +12 -0
  1200. package/static/svg/move-down.6844e6c6.svg +3 -0
  1201. package/static/svg/move-up.0c20aff0.svg +3 -0
  1202. package/static/svg/notes-black-24px.6bf6c4e4.svg +1 -0
  1203. package/static/svg/publish.94bff016.svg +1 -0
  1204. package/static/svg/published.3c28c3d9.svg +3 -0
  1205. package/static/svg/remove.51bf2460.svg +3 -0
  1206. package/static/svg/round-arrow_drop_down-24px.53e4d276.svg +12 -0
  1207. package/static/svg/round-assignment-24px.2a87eab8.svg +4 -0
  1208. package/static/svg/round-check_box-24px.83bd31d3.svg +4 -0
  1209. package/static/svg/round-drag_indicator-24px.cab1e300.svg +4 -0
  1210. package/static/svg/round-link-24px.d5303917.svg +1 -0
  1211. package/static/svg/round-looks_3-24px.3758bbb1.svg +4 -0
  1212. package/static/svg/round-notes.6bf6c4e4.svg +1 -0
  1213. package/static/svg/round-radio_button_checked-24px.0711de0a.svg +5 -0
  1214. package/static/svg/round-settings-24px.77b44bea.svg +1 -0
  1215. package/static/svg/round-short_text.26e207b7.svg +1 -0
  1216. package/static/svg/round-subject.ea39f0d9.svg +1 -0
  1217. package/static/svg/round-text_fields-24px.00a40bc7.svg +4 -0
  1218. package/static/svg/round-translate-24px.a2341ad7.svg +4 -0
  1219. package/static/svg/round-visibility_off-24px.954aa025.svg +4 -0
  1220. package/static/svg/round_insert_drive_file-24px.3faa1e29.svg +1 -0
  1221. package/static/svg/rule-24px.490519b3.svg +1 -0
  1222. package/static/svg/schedule-black-24px.f87fab07.svg +1 -0
  1223. package/static/svg/search.e8c000e9.svg +1 -0
  1224. package/static/svg/selected.388fbbbb.svg +3 -0
  1225. package/static/svg/status-draft.067687bc.svg +3 -0
  1226. package/static/svg/status-published.207fdc94.svg +3 -0
  1227. package/static/svg/status-unpublished.9cf24b8c.svg +3 -0
  1228. package/static/svg/title-24px.dc61882c.svg +1 -0
  1229. package/static/svg/title-black-24px.17f27b45.svg +1 -0
  1230. package/static/svg/toggle_on-black-24px.1d1e8da4.svg +1 -0
  1231. package/static/svg/unpublish.67520c5f.svg +4 -0
  1232. package/static/svg/unpublished.54fc3f65.svg +3 -0
  1233. package/static/svg/view.4b2c6624.svg +3 -0
  1234. package/static/svg/view_list.c4c9d31d.svg +1 -0
  1235. package/static/svg/visibility.2b9cb52f.svg +16 -0
  1236. package/types.js +1 -7
  1237. package/utils/CmsModelFieldValidatorConfigAdapter.js +37 -38
  1238. package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -1
  1239. package/utils/createTypeName.js +2 -3
  1240. package/utils/createTypeName.js.map +1 -1
  1241. package/utils/createValidators.js +0 -2
  1242. package/utils/getFetchPolicy.js +4 -7
  1243. package/utils/getFetchPolicy.js.map +1 -1
  1244. package/utils/getModelTitleFieldId.js +4 -5
  1245. package/utils/getModelTitleFieldId.js.map +1 -1
  1246. package/utils/normalizeIcon.js +8 -7
  1247. package/utils/normalizeIcon.js.map +1 -1
  1248. package/admin/components/ContentEntries/BottomInfoBar/index.js.map +0 -1
  1249. package/admin/components/ContentEntries/BulkActions/index.js.map +0 -1
  1250. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/EntriesGatewayInterface.js.map +0 -1
  1251. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/entries.types.js.map +0 -1
  1252. package/admin/components/ContentEntries/Filters/RefFieldRenderer/adapters/index.js.map +0 -1
  1253. package/admin/components/ContentEntries/Filters/RefFieldRenderer/components/index.js.map +0 -1
  1254. package/admin/components/ContentEntries/Filters/RefFieldRenderer/domain/index.js.map +0 -1
  1255. package/admin/components/ContentEntries/Filters/RefFieldRenderer/index.js.map +0 -1
  1256. package/admin/components/ContentEntries/Filters/index.js.map +0 -1
  1257. package/admin/components/ContentEntries/Header/ButtonFilters/index.js.map +0 -1
  1258. package/admin/components/ContentEntries/Header/ButtonRefresh/index.js.map +0 -1
  1259. package/admin/components/ContentEntries/Header/ButtonsCreate/index.js.map +0 -1
  1260. package/admin/components/ContentEntries/Header/Title/index.js.map +0 -1
  1261. package/admin/components/ContentEntries/Header/index.js.map +0 -1
  1262. package/admin/components/ContentEntries/LoadMoreButton/index.js.map +0 -1
  1263. package/admin/components/ContentEntries/LoadingContentModel/index.js.map +0 -1
  1264. package/admin/components/ContentEntries/SidebarContent/index.js.map +0 -1
  1265. package/admin/components/ContentEntries/SidebarFooter/index.js.map +0 -1
  1266. package/admin/components/ContentEntries/SidebarHeader/index.js.map +0 -1
  1267. package/admin/components/ContentEntries/Table/Actions/index.js.map +0 -1
  1268. package/admin/components/ContentEntries/Table/Cells/index.js.map +0 -1
  1269. package/admin/components/ContentEntries/TrashBin/adapters/index.js.map +0 -1
  1270. package/admin/components/ContentEntries/TrashBin/components/index.js.map +0 -1
  1271. package/admin/components/ContentEntries/TrashBin/index.js.map +0 -1
  1272. package/admin/components/ContentEntryForm/FieldElement.js.map +0 -1
  1273. package/admin/components/ContentEntryForm/Fields.js.map +0 -1
  1274. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.js.map +0 -1
  1275. package/admin/components/ContentEntryForm/Header/DeleteEntry/index.js.map +0 -1
  1276. package/admin/components/ContentEntryForm/Header/RevisionSelector/index.js.map +0 -1
  1277. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.js.map +0 -1
  1278. package/admin/components/ContentEntryForm/Header/SaveContent/index.js.map +0 -1
  1279. package/admin/components/ContentEntryForm/Header/ShowRevisionsList/index.js.map +0 -1
  1280. package/admin/components/ContentEntryForm/Header/index.js.map +0 -1
  1281. package/admin/components/ContentEntryForm/Label.js.map +0 -1
  1282. package/admin/components/ContentEntryForm/SingletonHeader/index.js.map +0 -1
  1283. package/admin/components/ContentEntryForm/createValidationContainer.js.map +0 -1
  1284. package/admin/components/ContentEntryForm/useBind.js.map +0 -1
  1285. package/admin/components/ContentEntryForm/useRenderPlugins.js.map +0 -1
  1286. package/admin/components/ContentModelEditor/ModelIsBeingDeletedError/index.js.map +0 -1
  1287. package/admin/components/ContentModelEditor/index.js.map +0 -1
  1288. package/admin/components/DropZone/index.js.map +0 -1
  1289. package/admin/components/FieldEditor/EditFieldDialog/RulesEditor/index.js.map +0 -1
  1290. package/admin/components/FieldEditor/EditFieldDialog/ValidationTab/index.js.map +0 -1
  1291. package/admin/components/FieldEditor/index.js.map +0 -1
  1292. package/admin/components/FieldEditor/utils/index.js.map +0 -1
  1293. package/admin/components/ModelFieldProvider/index.js.map +0 -1
  1294. package/admin/components/ModelProvider/index.js.map +0 -1
  1295. package/admin/config/contentEntries/editor/index.js.map +0 -1
  1296. package/admin/config/contentEntries/index.js.map +0 -1
  1297. package/admin/config/contentEntries/list/index.js.map +0 -1
  1298. package/admin/hooks/index.js.map +0 -1
  1299. package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +0 -1
  1300. package/admin/plugins/editor/defaultBar/Name/index.js.map +0 -1
  1301. package/admin/plugins/fieldRenderers/dynamicZone/index.js.map +0 -1
  1302. package/admin/plugins/fieldRenderers/ref/components/types.js.map +0 -1
  1303. package/admin/plugins/fields/ui/index.js.map +0 -1
  1304. package/admin/plugins/permissionRenderer/components/types.js.map +0 -1
  1305. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/RevisionListDrawer/index.js.map +0 -1
  1306. package/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/index.js.map +0 -1
  1307. package/admin/views/contentEntries/hooks/index.js.map +0 -1
  1308. package/admin/views/contentModels/importing/components/Model/index.js.map +0 -1
  1309. package/admin/views/contentModels/types.js.map +0 -1
  1310. package/exports/admin/cms/entry/editor.js.map +0 -1
  1311. package/exports/admin/cms/entry/list.js.map +0 -1
  1312. package/exports/admin/cms/field-renderers/common.js.map +0 -1
  1313. package/exports/admin/cms/field-renderers/dynamic-zone.js.map +0 -1
  1314. package/exports/admin/cms/field-renderers/object.js.map +0 -1
  1315. package/exports/admin/cms/lexical.js.map +0 -1
  1316. package/exports/admin/cms/model.js.map +0 -1
  1317. package/exports/admin/cms.js.map +0 -1
  1318. package/features/ListCache.js.map +0 -1
  1319. package/features/contentEntry/events/index.js.map +0 -1
  1320. package/features/graphQLClient/index.js.map +0 -1
  1321. package/plugins/index.js.map +0 -1
  1322. package/presentation/modelGroup/hooks/index.js.map +0 -1
  1323. package/types.js.map +0 -1
  1324. package/utils/createValidators.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useState","dot","useDeepCompareEffect","isLayoutField","plugins","utils","useModelFieldEditor","generateAlphaNumericLowerCaseId","FieldEditorContext","createContext","undefined","maxGenerateIdIterations","generateFieldId","layout","id","iteration","includes","Error","FieldEditorProvider","parent","fields","onChange","children","depth","parentEditorContext","editor","state","setState","field","dropTarget","row","index","editField","onDropTarget","fieldId","onFieldDrop","source","pos","type","fieldType","parentId","forEach","insertField","position","moveRow","plugin","getLayoutFieldPlugin","layoutFieldType","layoutField","createField","insertLayoutCell","length","f","addField","moveLayoutCell","moveField","getFieldPlugin","fieldData","canEditSettings","onEndDrag","monitor","didDrop","monitorResult","getDropResult","deleteLayoutCell","removeFields","deleteField","getFieldsInLayout","filter","arr","map","cell","getField","Boolean","byType","find","getFieldRendererPlugin","name","renderer","rendererName","query","key","flat","c","fieldPlugin","prev","next","concat","data","destination","updateField","i","set","some","removeField","newLayout","splice","r","updateLayoutCell","tabsField","fieldIdsInTabs","Set","tabs","tab","add","size","has","sourceRow","ri","withoutSource","sourceRowEmptied","targetRow","cleaned","Math","max","min","noConflict","isVisible","item","sameParent","draggedFields","push","join","value","createElement","Provider"],"sources":["FieldEditorContext.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport dot from \"dot-prop-immutable\";\nimport useDeepCompareEffect from \"use-deep-compare-effect\";\nimport type {\n CmsEditorFieldId,\n CmsModelFieldRendererPlugin,\n CmsEditorFieldsLayout,\n CmsModelFieldTypePlugin,\n CmsModelLayoutFieldTypePlugin,\n CmsModelField,\n DragSource,\n FieldLayoutPosition\n} from \"~/types.js\";\nimport type {\n CmsLayoutField,\n CmsEditorLayoutCell\n} from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { isLayoutField } from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { plugins } from \"@webiny/plugins\";\nimport * as utils from \"./utils/index.js\";\nimport type { FieldEditorProps } from \"./FieldEditor.js\";\nimport type { DragSourceMonitor } from \"react-dnd\";\nimport { useModelFieldEditor } from \"~/admin/components/FieldEditor/useModelFieldEditor.js\";\nimport { generateAlphaNumericLowerCaseId } from \"@webiny/utils\";\nimport type { DragObject } from \"../Droppable.js\";\n\ninterface DropTarget {\n row: number;\n index: number | null;\n}\n\n/**\n * Property in GetFieldParams can be any key from CmsEditorField, but TS does not allow union types\n */\ninterface GetFieldParams {\n id?: string;\n fieldId?: string;\n}\ninterface InsertFieldParams {\n field: CmsModelField;\n position: FieldLayoutPosition;\n}\ninterface AddFieldCallable {\n (field: CmsModelField): void;\n}\ninterface RemoveFieldCallable {\n (fieldId: string): void;\n}\ninterface MoveFieldParams {\n field: CmsEditorFieldId | CmsModelField;\n position: FieldLayoutPosition;\n}\ninterface GetFieldsInLayoutCallable {\n (): (CmsModelField | CmsLayoutField)[][];\n}\ninterface InsertLayoutCellCallable {\n (field: Omit<CmsLayoutField, \"id\"> | CmsLayoutField, position: FieldLayoutPosition): void;\n}\ninterface UpdateLayoutCellCallable {\n (fieldId: string, field: CmsLayoutField): void;\n}\ninterface DeleteLayoutCellCallable {\n (fieldId: string): void;\n}\ninterface MoveLayoutCellCallable {\n (fieldId: string, position: FieldLayoutPosition): void;\n}\ninterface GetLayoutFieldPluginCallable {\n (type: string): CmsModelLayoutFieldTypePlugin | undefined;\n}\ninterface GetFieldPluginCallable {\n (type: string): CmsModelFieldTypePlugin | undefined;\n}\ninterface GetFieldCallable {\n (query: GetFieldParams): CmsModelField | undefined;\n}\ninterface GetFieldRendererCallable {\n (rendererName: string): CmsModelFieldRendererPlugin | undefined;\n}\ninterface OnFieldDropCallable {\n (source: Partial<DragSource>, target: DropTarget): void;\n}\ninterface InsertFieldCallable {\n (params: InsertFieldParams): void;\n}\ninterface MoveFieldCallable {\n (params: MoveFieldParams): void;\n}\ninterface OnEndDragCallable<DragObject = unknown, DropResult = unknown> {\n (item: DragSource, monitor: DragSourceMonitor<DragObject, DropResult>): void;\n}\ninterface MoveRowCallable {\n (source: number, destination: number): void;\n}\ninterface UpdateFieldCallable {\n (field: CmsModelField): void;\n}\ninterface DeleteFieldCallable {\n (field: Pick<CmsModelField, \"id\">): void;\n}\nexport interface IsVisibleCallable {\n (item: DragSource): boolean;\n}\ninterface NoConflictCallable {\n (cb?: IsVisibleCallable): (item: DragSource) => boolean;\n}\nexport interface FieldEditorContext {\n fields: (CmsModelField | CmsLayoutField)[][];\n noConflict: NoConflictCallable;\n layout: CmsEditorFieldsLayout;\n onChange?: (data: any) => void;\n getFieldsInLayout: GetFieldsInLayoutCallable;\n getFieldPlugin: GetFieldPluginCallable;\n getField: GetFieldCallable;\n getFieldRendererPlugin: GetFieldRendererCallable;\n editField: (field: CmsModelField | null) => void;\n field: CmsModelField | null;\n parent?: CmsModelField;\n parentEditorContext?: FieldEditorContext;\n depth: number;\n dropTarget: DropTarget;\n onFieldDrop: OnFieldDropCallable;\n onEndDrag: OnEndDragCallable;\n insertField: InsertFieldCallable;\n moveField: MoveFieldCallable;\n moveRow: MoveRowCallable;\n updateField: UpdateFieldCallable;\n deleteField: DeleteFieldCallable;\n insertLayoutCell: InsertLayoutCellCallable;\n updateLayoutCell: UpdateLayoutCellCallable;\n deleteLayoutCell: DeleteLayoutCellCallable;\n moveLayoutCell: MoveLayoutCellCallable;\n getLayoutFieldPlugin: GetLayoutFieldPluginCallable;\n addField: AddFieldCallable;\n removeField: RemoveFieldCallable;\n}\n\ninterface FieldEditorProviderProps extends FieldEditorProps {\n children: React.ReactElement;\n}\n\ntype DropResult = {\n dropTarget: string | null;\n};\n\nexport const FieldEditorContext = React.createContext<FieldEditorContext | undefined>(undefined);\n/**\n * We try to generate the random id string but with the check that it does not exist already.\n * Chances that the same string exists are quite small, but let's check it anyway.\n *\n * In most cases, there will be no iterations anyway...\n */\nconst maxGenerateIdIterations = 100;\nconst generateFieldId = (layout: string[]): string => {\n let id = generateAlphaNumericLowerCaseId(8);\n\n let iteration = 0;\n while (layout.includes(id) && iteration < maxGenerateIdIterations) {\n id = generateAlphaNumericLowerCaseId(8);\n iteration++;\n }\n if (iteration >= maxGenerateIdIterations) {\n throw new Error(`Could not generate field ID in ${maxGenerateIdIterations} iterations.`);\n }\n return id;\n};\n\ninterface State {\n layout: CmsEditorFieldsLayout;\n fields: CmsModelField[];\n field: CmsModelField | null;\n dropTarget: DropTarget;\n}\nexport const FieldEditorProvider = ({\n parent,\n fields,\n layout,\n onChange,\n children\n}: FieldEditorProviderProps) => {\n // We need to determine depth of this provider so we can render drop zones with correct z-indexes.\n let depth = 0;\n let parentEditorContext: FieldEditorContext | undefined;\n try {\n const editor = useModelFieldEditor();\n depth = editor.depth + 1;\n parentEditorContext = editor;\n } catch {\n // There's no parent provider, so this is the top-level one.\n }\n\n const [state, setState] = useState<State>({\n layout,\n fields,\n field: null,\n dropTarget: {\n row: -1,\n index: null\n }\n });\n\n useDeepCompareEffect(() => {\n onChange({ fields: state.fields, layout: state.layout });\n }, [state.fields, state.layout]);\n\n const editField = useCallback((field: CmsModelField | null) => {\n setState(state => ({ ...state, field }));\n }, []);\n\n const onDropTarget = {\n dropTarget: parent ? parent.fieldId : null\n };\n\n const onFieldDrop = useCallback<OnFieldDropCallable>((source, dropTarget) => {\n const { pos, type, fieldType, field, fields = [] } = source;\n\n const parentId = parent ? parent.fieldId : null;\n\n if (type === \"row\") {\n if (parentId !== source.parent) {\n // We're dragging an existing row from another fieldset\n fields.forEach((field, index) => {\n insertField({\n field,\n position: {\n row: dropTarget.row,\n index: index === 0 ? null : index\n }\n });\n });\n } else if (pos && pos.row !== undefined) {\n // We're dragging a row within the same fieldset\n moveRow(pos.row, dropTarget.row);\n }\n\n return onDropTarget;\n }\n\n // Handle new layout field drops (separator, alert, tabs, etc.)\n if (type === \"newLayoutField\") {\n const plugin = getLayoutFieldPlugin(source.layoutFieldType || \"\");\n if (!plugin) {\n return null;\n }\n const layoutField = plugin.field.createField();\n insertLayoutCell(layoutField, dropTarget);\n return null;\n }\n\n // Handle moving an existing layout field to a new position\n if (type === \"layoutField\") {\n if (source.layoutField) {\n if (parentId !== source.parent) {\n // Cross-parent: insert a copy of the layout field into this context\n insertLayoutCell(source.layoutField, dropTarget);\n // Also add any fields carried by this layout field (e.g. fields inside tabs)\n if (fields.length > 0) {\n for (const f of fields) {\n addField(f);\n }\n }\n } else {\n // Same parent: move within this context\n moveLayoutCell(source.layoutField.id, dropTarget);\n }\n }\n return onDropTarget;\n }\n\n // If source pos is set, we are moving an existing field.\n if (pos) {\n if (!field) {\n return onDropTarget;\n }\n if (parentId !== source.parent) {\n // We're dragging an existing field from another fieldset\n insertField({ field, position: dropTarget });\n } else {\n // We're dragging a field within the same fieldset\n moveField({ field, position: dropTarget });\n }\n return onDropTarget;\n }\n\n if (!fieldType) {\n return null;\n }\n const plugin = getFieldPlugin(fieldType);\n if (!plugin) {\n return null;\n }\n\n const fieldData = plugin.field.createField() as CmsModelField;\n\n if (plugin.field.canEditSettings !== false) {\n editField(fieldData);\n setState(state => ({\n ...state,\n dropTarget\n }));\n } else {\n insertField({ field: fieldData, position: dropTarget });\n }\n return null;\n }, []);\n\n const onEndDrag: OnEndDragCallable<DragObject, DropResult> = (\n { type, field, fields, layoutField },\n monitor\n ) => {\n if (!monitor.didDrop()) {\n return;\n }\n\n // Check if we dropped outside of the source fieldset, and if yes, remove the item from the original parent.\n const monitorResult = monitor.getDropResult();\n const parentId = parent ? parent.fieldId : null;\n if (monitorResult?.dropTarget === parentId) {\n return;\n }\n\n if (type === \"layoutField\" && layoutField?.id) {\n deleteLayoutCell(layoutField.id);\n return;\n }\n\n const removeFields = type === \"row\" ? fields || [] : field ? [field] : [];\n removeFields.forEach(field => deleteField(field));\n };\n\n const getFieldsInLayout: GetFieldsInLayoutCallable = () => {\n // Replace every field ID with actual field object, pass through layout fields.\n return state.layout\n .filter(arr => arr.length)\n .map(row => {\n return row\n .map((cell: CmsEditorLayoutCell) => {\n if (isLayoutField(cell)) {\n return cell;\n }\n return getField({ id: cell });\n })\n .filter(Boolean);\n })\n .filter(row => {\n return row.length > 0;\n }) as (CmsModelField | CmsLayoutField)[][];\n };\n\n /**\n * Return field plugin.\n */\n const getFieldPlugin: GetFieldPluginCallable = type => {\n return plugins\n .byType<CmsModelFieldTypePlugin>(\"cms-editor-field-type\")\n .find(plugin => plugin.field.type === type);\n };\n\n const getFieldRendererPlugin: GetFieldRendererCallable = name => {\n return plugins\n .byType<CmsModelFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .find(plugin => plugin.renderer.rendererName === name);\n };\n\n /**\n * Checks if field of given type already exists in the list of fields.\n */\n const getField: GetFieldCallable = query => {\n return state.fields.find(field => {\n for (const key in query) {\n if (!(key in field)) {\n return false;\n }\n\n if (field[key as keyof typeof field] !== query[key as keyof typeof query]) {\n return false;\n }\n }\n\n return true;\n });\n };\n\n /**\n * Inserts a new field into the target position.\n */\n const insertField: InsertFieldCallable = ({ field, position }) => {\n if (!field.id) {\n field.id = generateFieldId(\n layout.flat().filter((c): c is string => typeof c === \"string\")\n );\n }\n\n if (!field.type) {\n throw new Error(`Field \"type\" missing.`);\n }\n\n const fieldPlugin = getFieldPlugin(field.type);\n if (!fieldPlugin) {\n throw new Error(`No plugin found for field type \"${field.type}\".`);\n }\n\n setState(prev => {\n const next: State = {\n ...prev,\n fields: (prev.fields || []).concat(field)\n };\n\n // Move field to position where it was dropped.\n return utils.moveField({ field, position, data: next });\n });\n };\n\n /**\n * Moves field to the given target position.\n */\n const moveField: MoveFieldCallable = ({ field, position }) => {\n setState(data => {\n return utils.moveField<State>({ field, position, data });\n });\n };\n\n /**\n * Moves row to a destination row.\n */\n const moveRow: MoveRowCallable = (source, destination) => {\n setState(data => {\n return utils.moveRow({ data, source, destination });\n });\n };\n\n /**\n * Updates field.\n */\n const updateField: UpdateFieldCallable = field => {\n setState(data => {\n for (let i = 0; i < data.fields.length; i++) {\n if (data.fields[i].id === field.id) {\n return dot.set(data, `fields.${i}`, field);\n }\n }\n return data;\n });\n };\n\n /**\n * Deletes a field (both from the list of field and the layout).\n */\n const deleteField: DeleteFieldCallable = field => {\n setState(data => {\n return utils.deleteField({ field, data });\n });\n };\n\n /**\n * Add a field to the fields array without placing it in the layout.\n * Used by tabs to hoist fields to the parent context.\n */\n const addField: AddFieldCallable = field => {\n setState(prev => {\n // Don't add if already exists\n if (prev.fields.some(f => f.id === field.id)) {\n return prev;\n }\n return { ...prev, fields: [...prev.fields, field] };\n });\n };\n\n /**\n * Remove a field from the fields array by ID.\n * Used by tabs to un-hoist fields from the parent context.\n */\n const removeField: RemoveFieldCallable = fieldId => {\n setState(prev => ({\n ...prev,\n fields: prev.fields.filter(f => f.id !== fieldId)\n }));\n };\n\n /**\n * Return layout field plugin by type.\n */\n const getLayoutFieldPlugin: GetLayoutFieldPluginCallable = type => {\n return plugins\n .byType<CmsModelLayoutFieldTypePlugin>(\"cms-editor-layout-field-type\")\n .find(plugin => plugin.field.type === type);\n };\n\n /**\n * Insert a layout field into the layout at the given position.\n */\n const insertLayoutCell: InsertLayoutCellCallable = (layoutField, position) => {\n // Auto-assign a unique ID to the layout field.\n const cell = {\n ...layoutField,\n id: generateAlphaNumericLowerCaseId(8)\n } as CmsLayoutField;\n\n setState(prev => {\n const newLayout = [...prev.layout.map(row => [...row])];\n const { row } = position;\n\n // Layout fields always occupy a full row.\n newLayout.splice(row, 0, [cell]);\n\n return { ...prev, layout: newLayout.filter(r => r.length > 0) };\n });\n };\n\n /**\n * Update a layout field found by its ID.\n */\n const updateLayoutCell: UpdateLayoutCellCallable = (fieldId, layoutField) => {\n setState(prev => {\n const newLayout = prev.layout.map(row =>\n row.map(cell => {\n if (isLayoutField(cell) && cell.id === fieldId) {\n return { ...layoutField, id: fieldId };\n }\n return cell;\n })\n );\n return { ...prev, layout: newLayout };\n });\n };\n\n /**\n * Delete a layout field found by its ID.\n * If it's a tabs layout field, also remove all hoisted fields from the fields array.\n */\n const deleteLayoutCell: DeleteLayoutCellCallable = fieldId => {\n setState(prev => {\n let fields = prev.fields;\n\n // Find the descriptor to check if it's tabs (need to clean up hoisted fields)\n for (const row of prev.layout) {\n for (const cell of row) {\n if (isLayoutField(cell) && cell.id === fieldId && cell.type === \"tabs\") {\n const tabsField =\n cell as import(\"@webiny/app-headless-cms-common/types/model.js\").CmsTabLayoutField;\n const fieldIdsInTabs = new Set<string>();\n tabsField.tabs.forEach(tab => {\n tab.layout.forEach(r => {\n r.forEach(c => {\n if (typeof c === \"string\") {\n fieldIdsInTabs.add(c);\n }\n });\n });\n });\n if (fieldIdsInTabs.size > 0) {\n fields = fields.filter(f => !fieldIdsInTabs.has(f.id));\n }\n }\n }\n }\n\n const newLayout = prev.layout.map(row =>\n row.filter(cell => !(isLayoutField(cell) && cell.id === fieldId))\n );\n\n return {\n ...prev,\n fields,\n layout: newLayout.filter(r => r.length > 0)\n };\n });\n };\n\n /**\n * Move a layout field (found by its ID) to a new position.\n */\n const moveLayoutCell: MoveLayoutCellCallable = (fieldId, position) => {\n setState(prev => {\n // Find the layout field by ID.\n let layoutField: CmsLayoutField | undefined;\n let sourceRow = -1;\n\n for (let ri = 0; ri < prev.layout.length; ri++) {\n for (const cell of prev.layout[ri]) {\n if (isLayoutField(cell) && cell.id === fieldId) {\n layoutField = cell;\n sourceRow = ri;\n break;\n }\n }\n if (layoutField) {\n break;\n }\n }\n\n if (!layoutField || sourceRow === -1) {\n return prev;\n }\n\n // 1. Remove the layout field from its source position.\n const withoutSource = prev.layout.map(row =>\n row.filter(cell => !(isLayoutField(cell) && cell.id === fieldId))\n );\n\n // 2. Was the source row emptied?\n const sourceRowEmptied = withoutSource[sourceRow].length === 0;\n\n // 3. Calculate the effective target row index.\n // The drop target row was computed against the original layout.\n // If we emptied a source row that was BEFORE the target, shift down by 1.\n let targetRow = position.row;\n if (sourceRowEmptied && sourceRow < targetRow) {\n targetRow--;\n }\n\n // 4. Remove empty rows.\n const cleaned = withoutSource.filter(r => r.length > 0);\n\n // 5. Clamp target row and insert the layout field as its own row.\n targetRow = Math.max(0, Math.min(targetRow, cleaned.length));\n cleaned.splice(targetRow, 0, [layoutField]);\n\n return { ...prev, layout: cleaned };\n });\n };\n\n const noConflict: NoConflictCallable = useCallback(\n (isVisible?: IsVisibleCallable) => item => {\n const sameParent = item.parent === onDropTarget.dropTarget;\n const draggedFields: string[] = [];\n switch (item.type) {\n case \"row\":\n (item.fields || []).forEach(field => draggedFields.push(field.fieldId));\n break;\n case \"field\":\n if (!item.field) {\n break;\n }\n draggedFields.push(item.field.fieldId);\n break;\n default:\n break;\n }\n\n if (\n draggedFields.length &&\n !sameParent &&\n fields.some(field => draggedFields.includes(field.fieldId))\n ) {\n return false;\n }\n\n return typeof isVisible === \"function\" ? isVisible(item) : true;\n },\n [fields.map(f => f.fieldId).join(\".\")]\n );\n\n const value: FieldEditorContext = {\n parent,\n parentEditorContext,\n depth,\n getFieldsInLayout,\n getFieldPlugin,\n getFieldRendererPlugin,\n getField,\n editField,\n field: state.field,\n dropTarget: state.dropTarget,\n onFieldDrop,\n onEndDrag,\n insertField,\n moveField,\n moveRow,\n updateField,\n deleteField,\n insertLayoutCell,\n updateLayoutCell,\n deleteLayoutCell,\n moveLayoutCell,\n getLayoutFieldPlugin,\n addField,\n removeField,\n fields: getFieldsInLayout(),\n noConflict,\n layout: state.layout\n };\n\n return <FieldEditorContext.Provider value={value}>{children}</FieldEditorContext.Provider>;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"admin/components/FieldEditor/FieldEditorContext.js","sources":["../../../../src/admin/components/FieldEditor/FieldEditorContext.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport dot from \"dot-prop-immutable\";\nimport useDeepCompareEffect from \"use-deep-compare-effect\";\nimport type {\n CmsEditorFieldId,\n CmsModelFieldRendererPlugin,\n CmsEditorFieldsLayout,\n CmsModelFieldTypePlugin,\n CmsModelLayoutFieldTypePlugin,\n CmsModelField,\n DragSource,\n FieldLayoutPosition\n} from \"~/types.js\";\nimport type {\n CmsLayoutField,\n CmsEditorLayoutCell\n} from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { isLayoutField } from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { plugins } from \"@webiny/plugins\";\nimport * as utils from \"./utils/index.js\";\nimport type { FieldEditorProps } from \"./FieldEditor.js\";\nimport type { DragSourceMonitor } from \"react-dnd\";\nimport { useModelFieldEditor } from \"~/admin/components/FieldEditor/useModelFieldEditor.js\";\nimport { generateAlphaNumericLowerCaseId } from \"@webiny/utils\";\nimport type { DragObject } from \"../Droppable.js\";\n\ninterface DropTarget {\n row: number;\n index: number | null;\n}\n\n/**\n * Property in GetFieldParams can be any key from CmsEditorField, but TS does not allow union types\n */\ninterface GetFieldParams {\n id?: string;\n fieldId?: string;\n}\ninterface InsertFieldParams {\n field: CmsModelField;\n position: FieldLayoutPosition;\n}\ninterface AddFieldCallable {\n (field: CmsModelField): void;\n}\ninterface RemoveFieldCallable {\n (fieldId: string): void;\n}\ninterface MoveFieldParams {\n field: CmsEditorFieldId | CmsModelField;\n position: FieldLayoutPosition;\n}\ninterface GetFieldsInLayoutCallable {\n (): (CmsModelField | CmsLayoutField)[][];\n}\ninterface InsertLayoutCellCallable {\n (field: Omit<CmsLayoutField, \"id\"> | CmsLayoutField, position: FieldLayoutPosition): void;\n}\ninterface UpdateLayoutCellCallable {\n (fieldId: string, field: CmsLayoutField): void;\n}\ninterface DeleteLayoutCellCallable {\n (fieldId: string): void;\n}\ninterface MoveLayoutCellCallable {\n (fieldId: string, position: FieldLayoutPosition): void;\n}\ninterface GetLayoutFieldPluginCallable {\n (type: string): CmsModelLayoutFieldTypePlugin | undefined;\n}\ninterface GetFieldPluginCallable {\n (type: string): CmsModelFieldTypePlugin | undefined;\n}\ninterface GetFieldCallable {\n (query: GetFieldParams): CmsModelField | undefined;\n}\ninterface GetFieldRendererCallable {\n (rendererName: string): CmsModelFieldRendererPlugin | undefined;\n}\ninterface OnFieldDropCallable {\n (source: Partial<DragSource>, target: DropTarget): void;\n}\ninterface InsertFieldCallable {\n (params: InsertFieldParams): void;\n}\ninterface MoveFieldCallable {\n (params: MoveFieldParams): void;\n}\ninterface OnEndDragCallable<DragObject = unknown, DropResult = unknown> {\n (item: DragSource, monitor: DragSourceMonitor<DragObject, DropResult>): void;\n}\ninterface MoveRowCallable {\n (source: number, destination: number): void;\n}\ninterface UpdateFieldCallable {\n (field: CmsModelField): void;\n}\ninterface DeleteFieldCallable {\n (field: Pick<CmsModelField, \"id\">): void;\n}\nexport interface IsVisibleCallable {\n (item: DragSource): boolean;\n}\ninterface NoConflictCallable {\n (cb?: IsVisibleCallable): (item: DragSource) => boolean;\n}\nexport interface FieldEditorContext {\n fields: (CmsModelField | CmsLayoutField)[][];\n noConflict: NoConflictCallable;\n layout: CmsEditorFieldsLayout;\n onChange?: (data: any) => void;\n getFieldsInLayout: GetFieldsInLayoutCallable;\n getFieldPlugin: GetFieldPluginCallable;\n getField: GetFieldCallable;\n getFieldRendererPlugin: GetFieldRendererCallable;\n editField: (field: CmsModelField | null) => void;\n field: CmsModelField | null;\n parent?: CmsModelField;\n parentEditorContext?: FieldEditorContext;\n depth: number;\n dropTarget: DropTarget;\n onFieldDrop: OnFieldDropCallable;\n onEndDrag: OnEndDragCallable;\n insertField: InsertFieldCallable;\n moveField: MoveFieldCallable;\n moveRow: MoveRowCallable;\n updateField: UpdateFieldCallable;\n deleteField: DeleteFieldCallable;\n insertLayoutCell: InsertLayoutCellCallable;\n updateLayoutCell: UpdateLayoutCellCallable;\n deleteLayoutCell: DeleteLayoutCellCallable;\n moveLayoutCell: MoveLayoutCellCallable;\n getLayoutFieldPlugin: GetLayoutFieldPluginCallable;\n addField: AddFieldCallable;\n removeField: RemoveFieldCallable;\n}\n\ninterface FieldEditorProviderProps extends FieldEditorProps {\n children: React.ReactElement;\n}\n\ntype DropResult = {\n dropTarget: string | null;\n};\n\nexport const FieldEditorContext = React.createContext<FieldEditorContext | undefined>(undefined);\n/**\n * We try to generate the random id string but with the check that it does not exist already.\n * Chances that the same string exists are quite small, but let's check it anyway.\n *\n * In most cases, there will be no iterations anyway...\n */\nconst maxGenerateIdIterations = 100;\nconst generateFieldId = (layout: string[]): string => {\n let id = generateAlphaNumericLowerCaseId(8);\n\n let iteration = 0;\n while (layout.includes(id) && iteration < maxGenerateIdIterations) {\n id = generateAlphaNumericLowerCaseId(8);\n iteration++;\n }\n if (iteration >= maxGenerateIdIterations) {\n throw new Error(`Could not generate field ID in ${maxGenerateIdIterations} iterations.`);\n }\n return id;\n};\n\ninterface State {\n layout: CmsEditorFieldsLayout;\n fields: CmsModelField[];\n field: CmsModelField | null;\n dropTarget: DropTarget;\n}\nexport const FieldEditorProvider = ({\n parent,\n fields,\n layout,\n onChange,\n children\n}: FieldEditorProviderProps) => {\n // We need to determine depth of this provider so we can render drop zones with correct z-indexes.\n let depth = 0;\n let parentEditorContext: FieldEditorContext | undefined;\n try {\n const editor = useModelFieldEditor();\n depth = editor.depth + 1;\n parentEditorContext = editor;\n } catch {\n // There's no parent provider, so this is the top-level one.\n }\n\n const [state, setState] = useState<State>({\n layout,\n fields,\n field: null,\n dropTarget: {\n row: -1,\n index: null\n }\n });\n\n useDeepCompareEffect(() => {\n onChange({ fields: state.fields, layout: state.layout });\n }, [state.fields, state.layout]);\n\n const editField = useCallback((field: CmsModelField | null) => {\n setState(state => ({ ...state, field }));\n }, []);\n\n const onDropTarget = {\n dropTarget: parent ? parent.fieldId : null\n };\n\n const onFieldDrop = useCallback<OnFieldDropCallable>((source, dropTarget) => {\n const { pos, type, fieldType, field, fields = [] } = source;\n\n const parentId = parent ? parent.fieldId : null;\n\n if (type === \"row\") {\n if (parentId !== source.parent) {\n // We're dragging an existing row from another fieldset\n fields.forEach((field, index) => {\n insertField({\n field,\n position: {\n row: dropTarget.row,\n index: index === 0 ? null : index\n }\n });\n });\n } else if (pos && pos.row !== undefined) {\n // We're dragging a row within the same fieldset\n moveRow(pos.row, dropTarget.row);\n }\n\n return onDropTarget;\n }\n\n // Handle new layout field drops (separator, alert, tabs, etc.)\n if (type === \"newLayoutField\") {\n const plugin = getLayoutFieldPlugin(source.layoutFieldType || \"\");\n if (!plugin) {\n return null;\n }\n const layoutField = plugin.field.createField();\n insertLayoutCell(layoutField, dropTarget);\n return null;\n }\n\n // Handle moving an existing layout field to a new position\n if (type === \"layoutField\") {\n if (source.layoutField) {\n if (parentId !== source.parent) {\n // Cross-parent: insert a copy of the layout field into this context\n insertLayoutCell(source.layoutField, dropTarget);\n // Also add any fields carried by this layout field (e.g. fields inside tabs)\n if (fields.length > 0) {\n for (const f of fields) {\n addField(f);\n }\n }\n } else {\n // Same parent: move within this context\n moveLayoutCell(source.layoutField.id, dropTarget);\n }\n }\n return onDropTarget;\n }\n\n // If source pos is set, we are moving an existing field.\n if (pos) {\n if (!field) {\n return onDropTarget;\n }\n if (parentId !== source.parent) {\n // We're dragging an existing field from another fieldset\n insertField({ field, position: dropTarget });\n } else {\n // We're dragging a field within the same fieldset\n moveField({ field, position: dropTarget });\n }\n return onDropTarget;\n }\n\n if (!fieldType) {\n return null;\n }\n const plugin = getFieldPlugin(fieldType);\n if (!plugin) {\n return null;\n }\n\n const fieldData = plugin.field.createField() as CmsModelField;\n\n if (plugin.field.canEditSettings !== false) {\n editField(fieldData);\n setState(state => ({\n ...state,\n dropTarget\n }));\n } else {\n insertField({ field: fieldData, position: dropTarget });\n }\n return null;\n }, []);\n\n const onEndDrag: OnEndDragCallable<DragObject, DropResult> = (\n { type, field, fields, layoutField },\n monitor\n ) => {\n if (!monitor.didDrop()) {\n return;\n }\n\n // Check if we dropped outside of the source fieldset, and if yes, remove the item from the original parent.\n const monitorResult = monitor.getDropResult();\n const parentId = parent ? parent.fieldId : null;\n if (monitorResult?.dropTarget === parentId) {\n return;\n }\n\n if (type === \"layoutField\" && layoutField?.id) {\n deleteLayoutCell(layoutField.id);\n return;\n }\n\n const removeFields = type === \"row\" ? fields || [] : field ? [field] : [];\n removeFields.forEach(field => deleteField(field));\n };\n\n const getFieldsInLayout: GetFieldsInLayoutCallable = () => {\n // Replace every field ID with actual field object, pass through layout fields.\n return state.layout\n .filter(arr => arr.length)\n .map(row => {\n return row\n .map((cell: CmsEditorLayoutCell) => {\n if (isLayoutField(cell)) {\n return cell;\n }\n return getField({ id: cell });\n })\n .filter(Boolean);\n })\n .filter(row => {\n return row.length > 0;\n }) as (CmsModelField | CmsLayoutField)[][];\n };\n\n /**\n * Return field plugin.\n */\n const getFieldPlugin: GetFieldPluginCallable = type => {\n return plugins\n .byType<CmsModelFieldTypePlugin>(\"cms-editor-field-type\")\n .find(plugin => plugin.field.type === type);\n };\n\n const getFieldRendererPlugin: GetFieldRendererCallable = name => {\n return plugins\n .byType<CmsModelFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .find(plugin => plugin.renderer.rendererName === name);\n };\n\n /**\n * Checks if field of given type already exists in the list of fields.\n */\n const getField: GetFieldCallable = query => {\n return state.fields.find(field => {\n for (const key in query) {\n if (!(key in field)) {\n return false;\n }\n\n if (field[key as keyof typeof field] !== query[key as keyof typeof query]) {\n return false;\n }\n }\n\n return true;\n });\n };\n\n /**\n * Inserts a new field into the target position.\n */\n const insertField: InsertFieldCallable = ({ field, position }) => {\n if (!field.id) {\n field.id = generateFieldId(\n layout.flat().filter((c): c is string => typeof c === \"string\")\n );\n }\n\n if (!field.type) {\n throw new Error(`Field \"type\" missing.`);\n }\n\n const fieldPlugin = getFieldPlugin(field.type);\n if (!fieldPlugin) {\n throw new Error(`No plugin found for field type \"${field.type}\".`);\n }\n\n setState(prev => {\n const next: State = {\n ...prev,\n fields: (prev.fields || []).concat(field)\n };\n\n // Move field to position where it was dropped.\n return utils.moveField({ field, position, data: next });\n });\n };\n\n /**\n * Moves field to the given target position.\n */\n const moveField: MoveFieldCallable = ({ field, position }) => {\n setState(data => {\n return utils.moveField<State>({ field, position, data });\n });\n };\n\n /**\n * Moves row to a destination row.\n */\n const moveRow: MoveRowCallable = (source, destination) => {\n setState(data => {\n return utils.moveRow({ data, source, destination });\n });\n };\n\n /**\n * Updates field.\n */\n const updateField: UpdateFieldCallable = field => {\n setState(data => {\n for (let i = 0; i < data.fields.length; i++) {\n if (data.fields[i].id === field.id) {\n return dot.set(data, `fields.${i}`, field);\n }\n }\n return data;\n });\n };\n\n /**\n * Deletes a field (both from the list of field and the layout).\n */\n const deleteField: DeleteFieldCallable = field => {\n setState(data => {\n return utils.deleteField({ field, data });\n });\n };\n\n /**\n * Add a field to the fields array without placing it in the layout.\n * Used by tabs to hoist fields to the parent context.\n */\n const addField: AddFieldCallable = field => {\n setState(prev => {\n // Don't add if already exists\n if (prev.fields.some(f => f.id === field.id)) {\n return prev;\n }\n return { ...prev, fields: [...prev.fields, field] };\n });\n };\n\n /**\n * Remove a field from the fields array by ID.\n * Used by tabs to un-hoist fields from the parent context.\n */\n const removeField: RemoveFieldCallable = fieldId => {\n setState(prev => ({\n ...prev,\n fields: prev.fields.filter(f => f.id !== fieldId)\n }));\n };\n\n /**\n * Return layout field plugin by type.\n */\n const getLayoutFieldPlugin: GetLayoutFieldPluginCallable = type => {\n return plugins\n .byType<CmsModelLayoutFieldTypePlugin>(\"cms-editor-layout-field-type\")\n .find(plugin => plugin.field.type === type);\n };\n\n /**\n * Insert a layout field into the layout at the given position.\n */\n const insertLayoutCell: InsertLayoutCellCallable = (layoutField, position) => {\n // Auto-assign a unique ID to the layout field.\n const cell = {\n ...layoutField,\n id: generateAlphaNumericLowerCaseId(8)\n } as CmsLayoutField;\n\n setState(prev => {\n const newLayout = [...prev.layout.map(row => [...row])];\n const { row } = position;\n\n // Layout fields always occupy a full row.\n newLayout.splice(row, 0, [cell]);\n\n return { ...prev, layout: newLayout.filter(r => r.length > 0) };\n });\n };\n\n /**\n * Update a layout field found by its ID.\n */\n const updateLayoutCell: UpdateLayoutCellCallable = (fieldId, layoutField) => {\n setState(prev => {\n const newLayout = prev.layout.map(row =>\n row.map(cell => {\n if (isLayoutField(cell) && cell.id === fieldId) {\n return { ...layoutField, id: fieldId };\n }\n return cell;\n })\n );\n return { ...prev, layout: newLayout };\n });\n };\n\n /**\n * Delete a layout field found by its ID.\n * If it's a tabs layout field, also remove all hoisted fields from the fields array.\n */\n const deleteLayoutCell: DeleteLayoutCellCallable = fieldId => {\n setState(prev => {\n let fields = prev.fields;\n\n // Find the descriptor to check if it's tabs (need to clean up hoisted fields)\n for (const row of prev.layout) {\n for (const cell of row) {\n if (isLayoutField(cell) && cell.id === fieldId && cell.type === \"tabs\") {\n const tabsField =\n cell as import(\"@webiny/app-headless-cms-common/types/model.js\").CmsTabLayoutField;\n const fieldIdsInTabs = new Set<string>();\n tabsField.tabs.forEach(tab => {\n tab.layout.forEach(r => {\n r.forEach(c => {\n if (typeof c === \"string\") {\n fieldIdsInTabs.add(c);\n }\n });\n });\n });\n if (fieldIdsInTabs.size > 0) {\n fields = fields.filter(f => !fieldIdsInTabs.has(f.id));\n }\n }\n }\n }\n\n const newLayout = prev.layout.map(row =>\n row.filter(cell => !(isLayoutField(cell) && cell.id === fieldId))\n );\n\n return {\n ...prev,\n fields,\n layout: newLayout.filter(r => r.length > 0)\n };\n });\n };\n\n /**\n * Move a layout field (found by its ID) to a new position.\n */\n const moveLayoutCell: MoveLayoutCellCallable = (fieldId, position) => {\n setState(prev => {\n // Find the layout field by ID.\n let layoutField: CmsLayoutField | undefined;\n let sourceRow = -1;\n\n for (let ri = 0; ri < prev.layout.length; ri++) {\n for (const cell of prev.layout[ri]) {\n if (isLayoutField(cell) && cell.id === fieldId) {\n layoutField = cell;\n sourceRow = ri;\n break;\n }\n }\n if (layoutField) {\n break;\n }\n }\n\n if (!layoutField || sourceRow === -1) {\n return prev;\n }\n\n // 1. Remove the layout field from its source position.\n const withoutSource = prev.layout.map(row =>\n row.filter(cell => !(isLayoutField(cell) && cell.id === fieldId))\n );\n\n // 2. Was the source row emptied?\n const sourceRowEmptied = withoutSource[sourceRow].length === 0;\n\n // 3. Calculate the effective target row index.\n // The drop target row was computed against the original layout.\n // If we emptied a source row that was BEFORE the target, shift down by 1.\n let targetRow = position.row;\n if (sourceRowEmptied && sourceRow < targetRow) {\n targetRow--;\n }\n\n // 4. Remove empty rows.\n const cleaned = withoutSource.filter(r => r.length > 0);\n\n // 5. Clamp target row and insert the layout field as its own row.\n targetRow = Math.max(0, Math.min(targetRow, cleaned.length));\n cleaned.splice(targetRow, 0, [layoutField]);\n\n return { ...prev, layout: cleaned };\n });\n };\n\n const noConflict: NoConflictCallable = useCallback(\n (isVisible?: IsVisibleCallable) => item => {\n const sameParent = item.parent === onDropTarget.dropTarget;\n const draggedFields: string[] = [];\n switch (item.type) {\n case \"row\":\n (item.fields || []).forEach(field => draggedFields.push(field.fieldId));\n break;\n case \"field\":\n if (!item.field) {\n break;\n }\n draggedFields.push(item.field.fieldId);\n break;\n default:\n break;\n }\n\n if (\n draggedFields.length &&\n !sameParent &&\n fields.some(field => draggedFields.includes(field.fieldId))\n ) {\n return false;\n }\n\n return typeof isVisible === \"function\" ? isVisible(item) : true;\n },\n [fields.map(f => f.fieldId).join(\".\")]\n );\n\n const value: FieldEditorContext = {\n parent,\n parentEditorContext,\n depth,\n getFieldsInLayout,\n getFieldPlugin,\n getFieldRendererPlugin,\n getField,\n editField,\n field: state.field,\n dropTarget: state.dropTarget,\n onFieldDrop,\n onEndDrag,\n insertField,\n moveField,\n moveRow,\n updateField,\n deleteField,\n insertLayoutCell,\n updateLayoutCell,\n deleteLayoutCell,\n moveLayoutCell,\n getLayoutFieldPlugin,\n addField,\n removeField,\n fields: getFieldsInLayout(),\n noConflict,\n layout: state.layout\n };\n\n return <FieldEditorContext.Provider value={value}>{children}</FieldEditorContext.Provider>;\n};\n"],"names":["FieldEditorContext","React","undefined","maxGenerateIdIterations","generateFieldId","layout","id","generateAlphaNumericLowerCaseId","iteration","Error","FieldEditorProvider","parent","fields","onChange","children","depth","parentEditorContext","editor","useModelFieldEditor","state","setState","useState","useDeepCompareEffect","editField","useCallback","field","onDropTarget","onFieldDrop","source","dropTarget","pos","type","fieldType","parentId","index","insertField","moveRow","plugin","getLayoutFieldPlugin","layoutField","insertLayoutCell","f","addField","moveLayoutCell","moveField","getFieldPlugin","fieldData","onEndDrag","monitor","monitorResult","deleteLayoutCell","removeFields","deleteField","getFieldsInLayout","arr","row","cell","isLayoutField","getField","Boolean","plugins","getFieldRendererPlugin","name","query","key","position","c","fieldPlugin","prev","next","utils","data","destination","updateField","i","dot","removeField","fieldId","newLayout","r","updateLayoutCell","tabsField","fieldIdsInTabs","Set","tab","sourceRow","ri","withoutSource","sourceRowEmptied","targetRow","cleaned","Math","noConflict","isVisible","item","sameParent","draggedFields","value"],"mappings":"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"}
@@ -1,33 +1,26 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { useModelFieldEditor } from "./useModelFieldEditor.js";
3
3
  import { Text } from "@webiny/admin-ui";
4
- export const LayoutCell = ({
5
- field
6
- }) => {
7
- const {
8
- getLayoutFieldPlugin,
9
- updateLayoutCell,
10
- deleteLayoutCell
11
- } = useModelFieldEditor();
12
- const plugin = getLayoutFieldPlugin(field.type);
13
- if (!plugin) {
14
- return /*#__PURE__*/React.createElement("div", {
15
- className: "p-md bg-destructive-dimmed rounded-xs"
16
- }, /*#__PURE__*/React.createElement(Text, {
17
- size: "sm"
18
- }, "Unknown layout field type: \"", field.type, "\""));
19
- }
20
- const onUpdate = d => {
21
- updateLayoutCell(field.id, d);
22
- };
23
- const onDelete = () => {
24
- deleteLayoutCell(field.id);
25
- };
26
- return plugin.field.render({
27
- field,
28
- onUpdate,
29
- onDelete
30
- });
4
+ const LayoutCell = ({ field })=>{
5
+ const { getLayoutFieldPlugin, updateLayoutCell, deleteLayoutCell } = useModelFieldEditor();
6
+ const plugin = getLayoutFieldPlugin(field.type);
7
+ if (!plugin) return /*#__PURE__*/ react.createElement("div", {
8
+ className: "p-md bg-destructive-dimmed rounded-xs"
9
+ }, /*#__PURE__*/ react.createElement(Text, {
10
+ size: "sm"
11
+ }, 'Unknown layout field type: "', field.type, '"'));
12
+ const onUpdate = (d)=>{
13
+ updateLayoutCell(field.id, d);
14
+ };
15
+ const onDelete = ()=>{
16
+ deleteLayoutCell(field.id);
17
+ };
18
+ return plugin.field.render({
19
+ field,
20
+ onUpdate,
21
+ onDelete
22
+ });
31
23
  };
24
+ export { LayoutCell };
32
25
 
33
26
  //# sourceMappingURL=LayoutCell.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useModelFieldEditor","Text","LayoutCell","field","getLayoutFieldPlugin","updateLayoutCell","deleteLayoutCell","plugin","type","createElement","className","size","onUpdate","d","id","onDelete","render"],"sources":["LayoutCell.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CmsLayoutField } from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { useModelFieldEditor } from \"./useModelFieldEditor.js\";\nimport { Text } from \"@webiny/admin-ui\";\n\ninterface LayoutCellProps {\n field: CmsLayoutField;\n rowIndex: number;\n cellIndex: number;\n}\n\nexport const LayoutCell = ({ field }: LayoutCellProps) => {\n const { getLayoutFieldPlugin, updateLayoutCell, deleteLayoutCell } = useModelFieldEditor();\n\n const plugin = getLayoutFieldPlugin(field.type);\n\n if (!plugin) {\n return (\n <div className={\"p-md bg-destructive-dimmed rounded-xs\"}>\n <Text size={\"sm\"}>Unknown layout field type: &quot;{field.type}&quot;</Text>\n </div>\n );\n }\n\n const onUpdate = (d: CmsLayoutField) => {\n updateLayoutCell(field.id, d);\n };\n\n const onDelete = () => {\n deleteLayoutCell(field.id);\n };\n\n return plugin.field.render({ field, onUpdate, onDelete });\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,mBAAmB;AAC5B,SAASC,IAAI,QAAQ,kBAAkB;AAQvC,OAAO,MAAMC,UAAU,GAAGA,CAAC;EAAEC;AAAuB,CAAC,KAAK;EACtD,MAAM;IAAEC,oBAAoB;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAAGN,mBAAmB,CAAC,CAAC;EAE1F,MAAMO,MAAM,GAAGH,oBAAoB,CAACD,KAAK,CAACK,IAAI,CAAC;EAE/C,IAAI,CAACD,MAAM,EAAE;IACT,oBACIR,KAAA,CAAAU,aAAA;MAAKC,SAAS,EAAE;IAAwC,gBACpDX,KAAA,CAAAU,aAAA,CAACR,IAAI;MAACU,IAAI,EAAE;IAAK,GAAC,+BAAiC,EAACR,KAAK,CAACK,IAAI,EAAC,IAAY,CAC1E,CAAC;EAEd;EAEA,MAAMI,QAAQ,GAAIC,CAAiB,IAAK;IACpCR,gBAAgB,CAACF,KAAK,CAACW,EAAE,EAAED,CAAC,CAAC;EACjC,CAAC;EAED,MAAME,QAAQ,GAAGA,CAAA,KAAM;IACnBT,gBAAgB,CAACH,KAAK,CAACW,EAAE,CAAC;EAC9B,CAAC;EAED,OAAOP,MAAM,CAACJ,KAAK,CAACa,MAAM,CAAC;IAAEb,KAAK;IAAES,QAAQ;IAAEG;EAAS,CAAC,CAAC;AAC7D,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/components/FieldEditor/LayoutCell.js","sources":["../../../../src/admin/components/FieldEditor/LayoutCell.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CmsLayoutField } from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { useModelFieldEditor } from \"./useModelFieldEditor.js\";\nimport { Text } from \"@webiny/admin-ui\";\n\ninterface LayoutCellProps {\n field: CmsLayoutField;\n rowIndex: number;\n cellIndex: number;\n}\n\nexport const LayoutCell = ({ field }: LayoutCellProps) => {\n const { getLayoutFieldPlugin, updateLayoutCell, deleteLayoutCell } = useModelFieldEditor();\n\n const plugin = getLayoutFieldPlugin(field.type);\n\n if (!plugin) {\n return (\n <div className={\"p-md bg-destructive-dimmed rounded-xs\"}>\n <Text size={\"sm\"}>Unknown layout field type: &quot;{field.type}&quot;</Text>\n </div>\n );\n }\n\n const onUpdate = (d: CmsLayoutField) => {\n updateLayoutCell(field.id, d);\n };\n\n const onDelete = () => {\n deleteLayoutCell(field.id);\n };\n\n return plugin.field.render({ field, onUpdate, onDelete });\n};\n"],"names":["LayoutCell","field","getLayoutFieldPlugin","updateLayoutCell","deleteLayoutCell","useModelFieldEditor","plugin","Text","onUpdate","d","onDelete"],"mappings":";;;AAWO,MAAMA,aAAa,CAAC,EAAEC,KAAK,EAAmB;IACjD,MAAM,EAAEC,oBAAoB,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAE,GAAGC;IAErE,MAAMC,SAASJ,qBAAqBD,MAAM,IAAI;IAE9C,IAAI,CAACK,QACD,OAAO,WAAP,GACI,oBAAC;QAAI,WAAW;qBACZ,oBAACC,MAAIA;QAAC,MAAM;OAAM,gCAAkCN,MAAM,IAAI,EAAC;IAK3E,MAAMO,WAAW,CAACC;QACdN,iBAAiBF,MAAM,EAAE,EAAEQ;IAC/B;IAEA,MAAMC,WAAW;QACbN,iBAAiBH,MAAM,EAAE;IAC7B;IAEA,OAAOK,OAAO,KAAK,CAAC,MAAM,CAAC;QAAEL;QAAOO;QAAUE;IAAS;AAC3D"}
@@ -1,4 +1,2 @@
1
1
  export { FieldEditor } from "./FieldEditor.js";
2
2
  export { useModelFieldEditor } from "./useModelFieldEditor.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,11 +1,10 @@
1
1
  import { useContext } from "react";
2
2
  import { FieldEditorContext } from "./FieldEditorContext.js";
3
- export function useModelFieldEditor() {
4
- const context = useContext(FieldEditorContext);
5
- if (!context) {
6
- throw Error(`FieldEditorContext is missing in the component tree. Are you useing the "useFieldEditor()" hook in the right place?`);
7
- }
8
- return context;
3
+ function useModelFieldEditor() {
4
+ const context = useContext(FieldEditorContext);
5
+ if (!context) throw Error('FieldEditorContext is missing in the component tree. Are you useing the "useFieldEditor()" hook in the right place?');
6
+ return context;
9
7
  }
8
+ export { useModelFieldEditor };
10
9
 
11
10
  //# sourceMappingURL=useModelFieldEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useContext","FieldEditorContext","useModelFieldEditor","context","Error"],"sources":["useModelFieldEditor.ts"],"sourcesContent":["import { useContext } from \"react\";\nimport { FieldEditorContext } from \"./FieldEditorContext.js\";\n\nexport function useModelFieldEditor() {\n const context = useContext(FieldEditorContext);\n if (!context) {\n throw Error(\n `FieldEditorContext is missing in the component tree. Are you useing the \"useFieldEditor()\" hook in the right place?`\n );\n }\n\n return context;\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,kBAAkB;AAE3B,OAAO,SAASC,mBAAmBA,CAAA,EAAG;EAClC,MAAMC,OAAO,GAAGH,UAAU,CAACC,kBAAkB,CAAC;EAC9C,IAAI,CAACE,OAAO,EAAE;IACV,MAAMC,KAAK,CACP,qHACJ,CAAC;EACL;EAEA,OAAOD,OAAO;AAClB","ignoreList":[]}
1
+ {"version":3,"file":"admin/components/FieldEditor/useModelFieldEditor.js","sources":["../../../../src/admin/components/FieldEditor/useModelFieldEditor.ts"],"sourcesContent":["import { useContext } from \"react\";\nimport { FieldEditorContext } from \"./FieldEditorContext.js\";\n\nexport function useModelFieldEditor() {\n const context = useContext(FieldEditorContext);\n if (!context) {\n throw Error(\n `FieldEditorContext is missing in the component tree. Are you useing the \"useFieldEditor()\" hook in the right place?`\n );\n }\n\n return context;\n}\n"],"names":["useModelFieldEditor","context","useContext","FieldEditorContext","Error"],"mappings":";;AAGO,SAASA;IACZ,MAAMC,UAAUC,WAAWC;IAC3B,IAAI,CAACF,SACD,MAAMG,MACF;IAIR,OAAOH;AACX"}
@@ -1,43 +1,29 @@
1
- import dot from "dot-prop-immutable";
2
- export default params => {
3
- const {
4
- field,
5
- data: prev
6
- } = params;
7
- // Remove the field from fields list...
8
- const fieldIndex = prev.fields.findIndex(item => item.id === field.id);
9
- const data = dot.delete(prev, `fields.${fieldIndex}`);
10
-
11
- // ...and rebuild the layout object, preserving layout descriptors.
12
- return dot.set(data, "layout", layout => {
13
- if (!layout) {
14
- return [];
15
- }
16
- const newLayout = [];
17
- let currentRowIndex = 0;
18
- layout.forEach(row => {
19
- row.forEach(cell => {
20
- // Preserve layout descriptors (objects) as-is
21
- if (typeof cell !== "string") {
22
- if (!Array.isArray(newLayout[currentRowIndex])) {
23
- newLayout[currentRowIndex] = [];
24
- }
25
- newLayout[currentRowIndex].push(cell);
26
- return;
27
- }
28
- const field = data.fields.find(item => item.id === cell);
29
- if (!field) {
30
- return;
31
- }
32
- if (!Array.isArray(newLayout[currentRowIndex])) {
33
- newLayout[currentRowIndex] = [];
34
- }
35
- newLayout[currentRowIndex].push(cell);
36
- });
37
- newLayout[currentRowIndex] && newLayout[currentRowIndex].length && currentRowIndex++;
1
+ import dot_prop_immutable from "dot-prop-immutable";
2
+ const deleteField = (params)=>{
3
+ const { field, data: prev } = params;
4
+ const fieldIndex = prev.fields.findIndex((item)=>item.id === field.id);
5
+ const data = dot_prop_immutable["delete"](prev, `fields.${fieldIndex}`);
6
+ return dot_prop_immutable.set(data, "layout", (layout)=>{
7
+ if (!layout) return [];
8
+ const newLayout = [];
9
+ let currentRowIndex = 0;
10
+ layout.forEach((row)=>{
11
+ row.forEach((cell)=>{
12
+ if ("string" != typeof cell) {
13
+ if (!Array.isArray(newLayout[currentRowIndex])) newLayout[currentRowIndex] = [];
14
+ newLayout[currentRowIndex].push(cell);
15
+ return;
16
+ }
17
+ const field = data.fields.find((item)=>item.id === cell);
18
+ if (!field) return;
19
+ if (!Array.isArray(newLayout[currentRowIndex])) newLayout[currentRowIndex] = [];
20
+ newLayout[currentRowIndex].push(cell);
21
+ });
22
+ newLayout[currentRowIndex] && newLayout[currentRowIndex].length && currentRowIndex++;
23
+ });
24
+ return newLayout;
38
25
  });
39
- return newLayout;
40
- });
41
26
  };
27
+ export default deleteField;
42
28
 
43
29
  //# sourceMappingURL=deleteField.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["dot","params","field","data","prev","fieldIndex","fields","findIndex","item","id","delete","set","layout","newLayout","currentRowIndex","forEach","row","cell","Array","isArray","push","find","length"],"sources":["deleteField.ts"],"sourcesContent":["import dot from \"dot-prop-immutable\";\nimport type { CmsModelField, CmsModel } from \"~/types.js\";\nimport type { CmsEditorLayoutCell } from \"@webiny/app-headless-cms-common/types/model.js\";\n\ntype DeleteFieldParamsData = Pick<CmsModel, \"fields\" | \"layout\">;\ninterface DeleteFieldParams {\n field: Pick<CmsModelField, \"id\">;\n data: DeleteFieldParamsData;\n}\nexport default (params: DeleteFieldParams) => {\n const { field, data: prev } = params;\n // Remove the field from fields list...\n const fieldIndex = prev.fields.findIndex(item => item.id === field.id);\n const data = dot.delete(prev, `fields.${fieldIndex}`) as DeleteFieldParamsData;\n\n // ...and rebuild the layout object, preserving layout descriptors.\n return dot.set(data, \"layout\", (layout: DeleteFieldParamsData[\"layout\"]) => {\n if (!layout) {\n return [];\n }\n const newLayout: CmsEditorLayoutCell[][] = [];\n let currentRowIndex = 0;\n layout.forEach(row => {\n row.forEach(cell => {\n // Preserve layout descriptors (objects) as-is\n if (typeof cell !== \"string\") {\n if (!Array.isArray(newLayout[currentRowIndex])) {\n newLayout[currentRowIndex] = [];\n }\n newLayout[currentRowIndex].push(cell);\n return;\n }\n const field = data.fields.find(item => item.id === cell);\n if (!field) {\n return;\n }\n if (!Array.isArray(newLayout[currentRowIndex])) {\n newLayout[currentRowIndex] = [];\n }\n\n newLayout[currentRowIndex].push(cell);\n });\n newLayout[currentRowIndex] && newLayout[currentRowIndex].length && currentRowIndex++;\n });\n\n return newLayout;\n });\n};\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,oBAAoB;AASpC,eAAgBC,MAAyB,IAAK;EAC1C,MAAM;IAAEC,KAAK;IAAEC,IAAI,EAAEC;EAAK,CAAC,GAAGH,MAAM;EACpC;EACA,MAAMI,UAAU,GAAGD,IAAI,CAACE,MAAM,CAACC,SAAS,CAACC,IAAI,IAAIA,IAAI,CAACC,EAAE,KAAKP,KAAK,CAACO,EAAE,CAAC;EACtE,MAAMN,IAAI,GAAGH,GAAG,CAACU,MAAM,CAACN,IAAI,EAAE,UAAUC,UAAU,EAAE,CAA0B;;EAE9E;EACA,OAAOL,GAAG,CAACW,GAAG,CAACR,IAAI,EAAE,QAAQ,EAAGS,MAAuC,IAAK;IACxE,IAAI,CAACA,MAAM,EAAE;MACT,OAAO,EAAE;IACb;IACA,MAAMC,SAAkC,GAAG,EAAE;IAC7C,IAAIC,eAAe,GAAG,CAAC;IACvBF,MAAM,CAACG,OAAO,CAACC,GAAG,IAAI;MAClBA,GAAG,CAACD,OAAO,CAACE,IAAI,IAAI;QAChB;QACA,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;UAC1B,IAAI,CAACC,KAAK,CAACC,OAAO,CAACN,SAAS,CAACC,eAAe,CAAC,CAAC,EAAE;YAC5CD,SAAS,CAACC,eAAe,CAAC,GAAG,EAAE;UACnC;UACAD,SAAS,CAACC,eAAe,CAAC,CAACM,IAAI,CAACH,IAAI,CAAC;UACrC;QACJ;QACA,MAAMf,KAAK,GAAGC,IAAI,CAACG,MAAM,CAACe,IAAI,CAACb,IAAI,IAAIA,IAAI,CAACC,EAAE,KAAKQ,IAAI,CAAC;QACxD,IAAI,CAACf,KAAK,EAAE;UACR;QACJ;QACA,IAAI,CAACgB,KAAK,CAACC,OAAO,CAACN,SAAS,CAACC,eAAe,CAAC,CAAC,EAAE;UAC5CD,SAAS,CAACC,eAAe,CAAC,GAAG,EAAE;QACnC;QAEAD,SAAS,CAACC,eAAe,CAAC,CAACM,IAAI,CAACH,IAAI,CAAC;MACzC,CAAC,CAAC;MACFJ,SAAS,CAACC,eAAe,CAAC,IAAID,SAAS,CAACC,eAAe,CAAC,CAACQ,MAAM,IAAIR,eAAe,EAAE;IACxF,CAAC,CAAC;IAEF,OAAOD,SAAS;EACpB,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/components/FieldEditor/utils/deleteField.js","sources":["../../../../../src/admin/components/FieldEditor/utils/deleteField.ts"],"sourcesContent":["import dot from \"dot-prop-immutable\";\nimport type { CmsModelField, CmsModel } from \"~/types.js\";\nimport type { CmsEditorLayoutCell } from \"@webiny/app-headless-cms-common/types/model.js\";\n\ntype DeleteFieldParamsData = Pick<CmsModel, \"fields\" | \"layout\">;\ninterface DeleteFieldParams {\n field: Pick<CmsModelField, \"id\">;\n data: DeleteFieldParamsData;\n}\nexport default (params: DeleteFieldParams) => {\n const { field, data: prev } = params;\n // Remove the field from fields list...\n const fieldIndex = prev.fields.findIndex(item => item.id === field.id);\n const data = dot.delete(prev, `fields.${fieldIndex}`) as DeleteFieldParamsData;\n\n // ...and rebuild the layout object, preserving layout descriptors.\n return dot.set(data, \"layout\", (layout: DeleteFieldParamsData[\"layout\"]) => {\n if (!layout) {\n return [];\n }\n const newLayout: CmsEditorLayoutCell[][] = [];\n let currentRowIndex = 0;\n layout.forEach(row => {\n row.forEach(cell => {\n // Preserve layout descriptors (objects) as-is\n if (typeof cell !== \"string\") {\n if (!Array.isArray(newLayout[currentRowIndex])) {\n newLayout[currentRowIndex] = [];\n }\n newLayout[currentRowIndex].push(cell);\n return;\n }\n const field = data.fields.find(item => item.id === cell);\n if (!field) {\n return;\n }\n if (!Array.isArray(newLayout[currentRowIndex])) {\n newLayout[currentRowIndex] = [];\n }\n\n newLayout[currentRowIndex].push(cell);\n });\n newLayout[currentRowIndex] && newLayout[currentRowIndex].length && currentRowIndex++;\n });\n\n return newLayout;\n });\n};\n"],"names":["params","field","prev","fieldIndex","item","data","dot","layout","newLayout","currentRowIndex","row","cell","Array"],"mappings":";AASA,oBAAgB,CAAAA;IACZ,MAAM,EAAEC,KAAK,EAAE,MAAMC,IAAI,EAAE,GAAGF;IAE9B,MAAMG,aAAaD,KAAK,MAAM,CAAC,SAAS,CAACE,CAAAA,OAAQA,KAAK,EAAE,KAAKH,MAAM,EAAE;IACrE,MAAMI,OAAOC,kBAAAA,CAAAA,SAAU,CAACJ,MAAM,CAAC,OAAO,EAAEC,YAAY;IAGpD,OAAOG,mBAAAA,GAAO,CAACD,MAAM,UAAU,CAACE;QAC5B,IAAI,CAACA,QACD,OAAO,EAAE;QAEb,MAAMC,YAAqC,EAAE;QAC7C,IAAIC,kBAAkB;QACtBF,OAAO,OAAO,CAACG,CAAAA;YACXA,IAAI,OAAO,CAACC,CAAAA;gBAER,IAAI,AAAgB,YAAhB,OAAOA,MAAmB;oBAC1B,IAAI,CAACC,MAAM,OAAO,CAACJ,SAAS,CAACC,gBAAgB,GACzCD,SAAS,CAACC,gBAAgB,GAAG,EAAE;oBAEnCD,SAAS,CAACC,gBAAgB,CAAC,IAAI,CAACE;oBAChC;gBACJ;gBACA,MAAMV,QAAQI,KAAK,MAAM,CAAC,IAAI,CAACD,CAAAA,OAAQA,KAAK,EAAE,KAAKO;gBACnD,IAAI,CAACV,OACD;gBAEJ,IAAI,CAACW,MAAM,OAAO,CAACJ,SAAS,CAACC,gBAAgB,GACzCD,SAAS,CAACC,gBAAgB,GAAG,EAAE;gBAGnCD,SAAS,CAACC,gBAAgB,CAAC,IAAI,CAACE;YACpC;YACAH,SAAS,CAACC,gBAAgB,IAAID,SAAS,CAACC,gBAAgB,CAAC,MAAM,IAAIA;QACvE;QAEA,OAAOD;IACX;AACJ"}
@@ -1,27 +1,21 @@
1
- export default params => {
2
- const {
3
- field,
4
- data
5
- } = params;
6
- const id = typeof field === "string" ? field : field.id;
7
- const layout = data.layout ? data.layout : [];
8
- for (let i = 0; i < layout.length; i++) {
9
- const row = layout[i];
10
- for (let j = 0; j < row.length; j++) {
11
- const cell = row[j];
12
- // Skip layout descriptors (objects) — only match string field IDs
13
- if (typeof cell !== "string") {
14
- continue;
15
- }
16
- if (cell === id) {
17
- return {
18
- row: i,
19
- index: j
20
- };
21
- }
1
+ const getFieldPosition = (params)=>{
2
+ const { field, data } = params;
3
+ const id = "string" == typeof field ? field : field.id;
4
+ const layout = data.layout ? data.layout : [];
5
+ for(let i = 0; i < layout.length; i++){
6
+ const row = layout[i];
7
+ for(let j = 0; j < row.length; j++){
8
+ const cell = row[j];
9
+ if ("string" == typeof cell) {
10
+ if (cell === id) return {
11
+ row: i,
12
+ index: j
13
+ };
14
+ }
15
+ }
22
16
  }
23
- }
24
- return null;
17
+ return null;
25
18
  };
19
+ export default getFieldPosition;
26
20
 
27
21
  //# sourceMappingURL=getFieldPosition.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["params","field","data","id","layout","i","length","row","j","cell","index"],"sources":["getFieldPosition.ts"],"sourcesContent":["import type { CmsModelField, CmsModel, FieldLayoutPosition } from \"~/types.js\";\n\ninterface GetFieldPositionParams {\n field: string | CmsModelField;\n data: Pick<CmsModel, \"layout\">;\n}\nexport default (params: GetFieldPositionParams): FieldLayoutPosition | null => {\n const { field, data } = params;\n const id = typeof field === \"string\" ? field : field.id;\n const layout = data.layout ? data.layout : [];\n for (let i = 0; i < layout.length; i++) {\n const row = layout[i];\n for (let j = 0; j < row.length; j++) {\n const cell = row[j];\n // Skip layout descriptors (objects) — only match string field IDs\n if (typeof cell !== \"string\") {\n continue;\n }\n if (cell === id) {\n return { row: i, index: j };\n }\n }\n }\n\n return null;\n};\n"],"mappings":"AAMA,eAAgBA,MAA8B,IAAiC;EAC3E,MAAM;IAAEC,KAAK;IAAEC;EAAK,CAAC,GAAGF,MAAM;EAC9B,MAAMG,EAAE,GAAG,OAAOF,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGA,KAAK,CAACE,EAAE;EACvD,MAAMC,MAAM,GAAGF,IAAI,CAACE,MAAM,GAAGF,IAAI,CAACE,MAAM,GAAG,EAAE;EAC7C,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,MAAM,CAACE,MAAM,EAAED,CAAC,EAAE,EAAE;IACpC,MAAME,GAAG,GAAGH,MAAM,CAACC,CAAC,CAAC;IACrB,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,GAAG,CAACD,MAAM,EAAEE,CAAC,EAAE,EAAE;MACjC,MAAMC,IAAI,GAAGF,GAAG,CAACC,CAAC,CAAC;MACnB;MACA,IAAI,OAAOC,IAAI,KAAK,QAAQ,EAAE;QAC1B;MACJ;MACA,IAAIA,IAAI,KAAKN,EAAE,EAAE;QACb,OAAO;UAAEI,GAAG,EAAEF,CAAC;UAAEK,KAAK,EAAEF;QAAE,CAAC;MAC/B;IACJ;EACJ;EAEA,OAAO,IAAI;AACf,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/components/FieldEditor/utils/getFieldPosition.js","sources":["../../../../../src/admin/components/FieldEditor/utils/getFieldPosition.ts"],"sourcesContent":["import type { CmsModelField, CmsModel, FieldLayoutPosition } from \"~/types.js\";\n\ninterface GetFieldPositionParams {\n field: string | CmsModelField;\n data: Pick<CmsModel, \"layout\">;\n}\nexport default (params: GetFieldPositionParams): FieldLayoutPosition | null => {\n const { field, data } = params;\n const id = typeof field === \"string\" ? field : field.id;\n const layout = data.layout ? data.layout : [];\n for (let i = 0; i < layout.length; i++) {\n const row = layout[i];\n for (let j = 0; j < row.length; j++) {\n const cell = row[j];\n // Skip layout descriptors (objects) — only match string field IDs\n if (typeof cell !== \"string\") {\n continue;\n }\n if (cell === id) {\n return { row: i, index: j };\n }\n }\n }\n\n return null;\n};\n"],"names":["params","field","data","id","layout","i","row","j","cell"],"mappings":"AAMA,yBAAgB,CAAAA;IACZ,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAE,GAAGF;IACxB,MAAMG,KAAK,AAAiB,YAAjB,OAAOF,QAAqBA,QAAQA,MAAM,EAAE;IACvD,MAAMG,SAASF,KAAK,MAAM,GAAGA,KAAK,MAAM,GAAG,EAAE;IAC7C,IAAK,IAAIG,IAAI,GAAGA,IAAID,OAAO,MAAM,EAAEC,IAAK;QACpC,MAAMC,MAAMF,MAAM,CAACC,EAAE;QACrB,IAAK,IAAIE,IAAI,GAAGA,IAAID,IAAI,MAAM,EAAEC,IAAK;YACjC,MAAMC,OAAOF,GAAG,CAACC,EAAE;YAEnB,IAAI,AAAgB,YAAhB,OAAOC,MAGX;gBAAA,IAAIA,SAASL,IACT,OAAO;oBAAE,KAAKE;oBAAG,OAAOE;gBAAE;YAC9B;QACJ;IACJ;IAEA,OAAO;AACX"}
@@ -2,5 +2,3 @@ export { default as getFieldPosition } from "./getFieldPosition.js";
2
2
  export { default as moveField } from "./moveField.js";
3
3
  export { default as deleteField } from "./deleteField.js";
4
4
  export { default as moveRow } from "./moveRow.js";
5
-
6
- //# sourceMappingURL=index.js.map
@@ -1,52 +1,41 @@
1
- import dot from "dot-prop-immutable";
1
+ import dot_prop_immutable from "dot-prop-immutable";
2
2
  import getFieldPosition from "./getFieldPosition.js";
3
- const moveField = params => {
4
- const {
5
- field,
6
- position,
7
- data: prev
8
- } = params;
9
- const {
10
- row,
11
- index
12
- } = position;
13
- const fieldId = typeof field === "string" ? field : field.id;
14
- let next = {
15
- ...prev,
16
- layout: prev.layout ? prev.layout || [] : []
17
- };
18
- const existingPosition = getFieldPosition({
19
- field: fieldId,
20
- data: prev
21
- });
22
- if (existingPosition) {
23
- next = dot.delete(prev, `layout.${existingPosition.row}.${existingPosition.index}`);
24
- }
25
-
26
- // Setting a form field into a new non-existing row.
27
- if (!next.layout[row]) {
28
- return dot.set(next, `layout.${row}`, [fieldId]);
29
- }
30
-
31
- // Drop the field at the specified index.
32
- if (index === null) {
33
- // Create a new row with the new field at the given row index,
34
- return dot.set(next, "layout", layout => {
35
- const newLayout = [...layout];
36
- newLayout.splice(row, 0, [fieldId]);
37
- return newLayout;
3
+ const moveField = (params)=>{
4
+ const { field, position, data: prev } = params;
5
+ const { row, index } = position;
6
+ const fieldId = "string" == typeof field ? field : field.id;
7
+ let next = {
8
+ ...prev,
9
+ layout: prev.layout ? prev.layout || [] : []
10
+ };
11
+ const existingPosition = getFieldPosition({
12
+ field: fieldId,
13
+ data: prev
14
+ });
15
+ if (existingPosition) next = dot_prop_immutable["delete"](prev, `layout.${existingPosition.row}.${existingPosition.index}`);
16
+ if (!next.layout[row]) return dot_prop_immutable.set(next, `layout.${row}`, [
17
+ fieldId
18
+ ]);
19
+ if (null === index) return dot_prop_immutable.set(next, "layout", (layout)=>{
20
+ const newLayout = [
21
+ ...layout
22
+ ];
23
+ newLayout.splice(row, 0, [
24
+ fieldId
25
+ ]);
26
+ return newLayout;
27
+ });
28
+ return dot_prop_immutable.set(next, `layout.${row}`, (layout)=>{
29
+ const newLayout = [
30
+ ...layout
31
+ ];
32
+ newLayout.splice(index, 0, fieldId);
33
+ return newLayout;
38
34
  });
39
- }
40
- return dot.set(next, `layout.${row}`, layout => {
41
- const newLayout = [...layout];
42
- newLayout.splice(index, 0, fieldId);
43
- return newLayout;
44
- });
45
- };
46
- export default params => {
47
- return dot.set(moveField(params), "layout", layout => {
48
- return [...layout].filter(row => row.length > 0);
49
- });
50
35
  };
36
+ const utils_moveField = (params)=>dot_prop_immutable.set(moveField(params), "layout", (layout)=>[
37
+ ...layout
38
+ ].filter((row)=>row.length > 0));
39
+ export default utils_moveField;
51
40
 
52
41
  //# sourceMappingURL=moveField.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["dot","getFieldPosition","moveField","params","field","position","data","prev","row","index","fieldId","id","next","layout","existingPosition","delete","set","newLayout","splice","filter","length"],"sources":["moveField.ts"],"sourcesContent":["import dot from \"dot-prop-immutable\";\nimport type {\n CmsModelField,\n CmsEditorFieldId,\n CmsModel as BaseCmsModel,\n FieldLayoutPosition\n} from \"~/types.js\";\nimport getFieldPosition from \"./getFieldPosition.js\";\n\ntype CmsModel = Required<Pick<BaseCmsModel, \"fields\" | \"layout\">>;\n\ninterface MoveFieldParams<T> {\n field: CmsEditorFieldId | Pick<CmsModelField, \"id\">;\n position: FieldLayoutPosition;\n data: T;\n}\n\nconst moveField = <T extends CmsModel>(params: MoveFieldParams<T>) => {\n const { field, position, data: prev } = params;\n const { row, index } = position;\n const fieldId = typeof field === \"string\" ? field : field.id;\n\n let next: T = {\n ...prev,\n layout: prev.layout ? prev.layout || [] : []\n };\n\n const existingPosition = getFieldPosition({ field: fieldId, data: prev });\n\n if (existingPosition) {\n next = dot.delete(prev, `layout.${existingPosition.row}.${existingPosition.index}`) as T;\n }\n\n // Setting a form field into a new non-existing row.\n if (!next.layout[row]) {\n return dot.set(next, `layout.${row}`, [fieldId]);\n }\n\n // Drop the field at the specified index.\n if (index === null) {\n // Create a new row with the new field at the given row index,\n return dot.set(next, \"layout\", (layout: string[][]) => {\n const newLayout = [...layout];\n newLayout.splice(row, 0, [fieldId]);\n return newLayout;\n });\n }\n\n return dot.set(next, `layout.${row}`, (layout: string[]) => {\n const newLayout = [...layout];\n newLayout.splice(index, 0, fieldId);\n return newLayout;\n });\n};\n\nexport default <T extends CmsModel>(params: MoveFieldParams<T>): T => {\n return dot.set(moveField<T>(params), \"layout\", (layout: string[][]) => {\n return [...layout].filter(row => row.length > 0);\n });\n};\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,oBAAoB;AAOpC,OAAOC,gBAAgB;AAUvB,MAAMC,SAAS,GAAwBC,MAA0B,IAAK;EAClE,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,IAAI,EAAEC;EAAK,CAAC,GAAGJ,MAAM;EAC9C,MAAM;IAAEK,GAAG;IAAEC;EAAM,CAAC,GAAGJ,QAAQ;EAC/B,MAAMK,OAAO,GAAG,OAAON,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGA,KAAK,CAACO,EAAE;EAE5D,IAAIC,IAAO,GAAG;IACV,GAAGL,IAAI;IACPM,MAAM,EAAEN,IAAI,CAACM,MAAM,GAAGN,IAAI,CAACM,MAAM,IAAI,EAAE,GAAG;EAC9C,CAAC;EAED,MAAMC,gBAAgB,GAAGb,gBAAgB,CAAC;IAAEG,KAAK,EAAEM,OAAO;IAAEJ,IAAI,EAAEC;EAAK,CAAC,CAAC;EAEzE,IAAIO,gBAAgB,EAAE;IAClBF,IAAI,GAAGZ,GAAG,CAACe,MAAM,CAACR,IAAI,EAAE,UAAUO,gBAAgB,CAACN,GAAG,IAAIM,gBAAgB,CAACL,KAAK,EAAE,CAAM;EAC5F;;EAEA;EACA,IAAI,CAACG,IAAI,CAACC,MAAM,CAACL,GAAG,CAAC,EAAE;IACnB,OAAOR,GAAG,CAACgB,GAAG,CAACJ,IAAI,EAAE,UAAUJ,GAAG,EAAE,EAAE,CAACE,OAAO,CAAC,CAAC;EACpD;;EAEA;EACA,IAAID,KAAK,KAAK,IAAI,EAAE;IAChB;IACA,OAAOT,GAAG,CAACgB,GAAG,CAACJ,IAAI,EAAE,QAAQ,EAAGC,MAAkB,IAAK;MACnD,MAAMI,SAAS,GAAG,CAAC,GAAGJ,MAAM,CAAC;MAC7BI,SAAS,CAACC,MAAM,CAACV,GAAG,EAAE,CAAC,EAAE,CAACE,OAAO,CAAC,CAAC;MACnC,OAAOO,SAAS;IACpB,CAAC,CAAC;EACN;EAEA,OAAOjB,GAAG,CAACgB,GAAG,CAACJ,IAAI,EAAE,UAAUJ,GAAG,EAAE,EAAGK,MAAgB,IAAK;IACxD,MAAMI,SAAS,GAAG,CAAC,GAAGJ,MAAM,CAAC;IAC7BI,SAAS,CAACC,MAAM,CAACT,KAAK,EAAE,CAAC,EAAEC,OAAO,CAAC;IACnC,OAAOO,SAAS;EACpB,CAAC,CAAC;AACN,CAAC;AAED,eAAoCd,MAA0B,IAAQ;EAClE,OAAOH,GAAG,CAACgB,GAAG,CAACd,SAAS,CAAIC,MAAM,CAAC,EAAE,QAAQ,EAAGU,MAAkB,IAAK;IACnE,OAAO,CAAC,GAAGA,MAAM,CAAC,CAACM,MAAM,CAACX,GAAG,IAAIA,GAAG,CAACY,MAAM,GAAG,CAAC,CAAC;EACpD,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/components/FieldEditor/utils/moveField.js","sources":["../../../../../src/admin/components/FieldEditor/utils/moveField.ts"],"sourcesContent":["import dot from \"dot-prop-immutable\";\nimport type {\n CmsModelField,\n CmsEditorFieldId,\n CmsModel as BaseCmsModel,\n FieldLayoutPosition\n} from \"~/types.js\";\nimport getFieldPosition from \"./getFieldPosition.js\";\n\ntype CmsModel = Required<Pick<BaseCmsModel, \"fields\" | \"layout\">>;\n\ninterface MoveFieldParams<T> {\n field: CmsEditorFieldId | Pick<CmsModelField, \"id\">;\n position: FieldLayoutPosition;\n data: T;\n}\n\nconst moveField = <T extends CmsModel>(params: MoveFieldParams<T>) => {\n const { field, position, data: prev } = params;\n const { row, index } = position;\n const fieldId = typeof field === \"string\" ? field : field.id;\n\n let next: T = {\n ...prev,\n layout: prev.layout ? prev.layout || [] : []\n };\n\n const existingPosition = getFieldPosition({ field: fieldId, data: prev });\n\n if (existingPosition) {\n next = dot.delete(prev, `layout.${existingPosition.row}.${existingPosition.index}`) as T;\n }\n\n // Setting a form field into a new non-existing row.\n if (!next.layout[row]) {\n return dot.set(next, `layout.${row}`, [fieldId]);\n }\n\n // Drop the field at the specified index.\n if (index === null) {\n // Create a new row with the new field at the given row index,\n return dot.set(next, \"layout\", (layout: string[][]) => {\n const newLayout = [...layout];\n newLayout.splice(row, 0, [fieldId]);\n return newLayout;\n });\n }\n\n return dot.set(next, `layout.${row}`, (layout: string[]) => {\n const newLayout = [...layout];\n newLayout.splice(index, 0, fieldId);\n return newLayout;\n });\n};\n\nexport default <T extends CmsModel>(params: MoveFieldParams<T>): T => {\n return dot.set(moveField<T>(params), \"layout\", (layout: string[][]) => {\n return [...layout].filter(row => row.length > 0);\n });\n};\n"],"names":["moveField","params","field","position","prev","row","index","fieldId","next","existingPosition","getFieldPosition","dot","layout","newLayout"],"mappings":";;AAiBA,MAAMA,YAAY,CAAqBC;IACnC,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,MAAMC,IAAI,EAAE,GAAGH;IACxC,MAAM,EAAEI,GAAG,EAAEC,KAAK,EAAE,GAAGH;IACvB,MAAMI,UAAU,AAAiB,YAAjB,OAAOL,QAAqBA,QAAQA,MAAM,EAAE;IAE5D,IAAIM,OAAU;QACV,GAAGJ,IAAI;QACP,QAAQA,KAAK,MAAM,GAAGA,KAAK,MAAM,IAAI,EAAE,GAAG,EAAE;IAChD;IAEA,MAAMK,mBAAmBC,iBAAiB;QAAE,OAAOH;QAAS,MAAMH;IAAK;IAEvE,IAAIK,kBACAD,OAAOG,kBAAAA,CAAAA,SAAU,CAACP,MAAM,CAAC,OAAO,EAAEK,iBAAiB,GAAG,CAAC,CAAC,EAAEA,iBAAiB,KAAK,EAAE;IAItF,IAAI,CAACD,KAAK,MAAM,CAACH,IAAI,EACjB,OAAOM,mBAAAA,GAAO,CAACH,MAAM,CAAC,OAAO,EAAEH,KAAK,EAAE;QAACE;KAAQ;IAInD,IAAID,AAAU,SAAVA,OAEA,OAAOK,mBAAAA,GAAO,CAACH,MAAM,UAAU,CAACI;QAC5B,MAAMC,YAAY;eAAID;SAAO;QAC7BC,UAAU,MAAM,CAACR,KAAK,GAAG;YAACE;SAAQ;QAClC,OAAOM;IACX;IAGJ,OAAOF,mBAAAA,GAAO,CAACH,MAAM,CAAC,OAAO,EAAEH,KAAK,EAAE,CAACO;QACnC,MAAMC,YAAY;eAAID;SAAO;QAC7BC,UAAU,MAAM,CAACP,OAAO,GAAGC;QAC3B,OAAOM;IACX;AACJ;AAEA,wBAAe,CAAqBZ,SACzBU,mBAAAA,GAAO,CAACX,UAAaC,SAAS,UAAU,CAACW,SACrC;eAAIA;SAAO,CAAC,MAAM,CAACP,CAAAA,MAAOA,IAAI,MAAM,GAAG"}
@@ -1,12 +1,15 @@
1
- import dot from "dot-prop-immutable";
2
- export default ({
3
- data,
4
- source,
5
- destination
6
- }) => {
7
- return dot.set(data, "layout", layout => {
8
- return source < destination ? [...layout.slice(0, source), ...layout.slice(source + 1, destination), layout[source], ...layout.slice(destination)] : [...layout.slice(0, destination), layout[source], ...layout.slice(destination, source), ...layout.slice(source + 1)];
9
- });
10
- };
1
+ import dot_prop_immutable from "dot-prop-immutable";
2
+ const moveRow = ({ data, source, destination })=>dot_prop_immutable.set(data, "layout", (layout)=>source < destination ? [
3
+ ...layout.slice(0, source),
4
+ ...layout.slice(source + 1, destination),
5
+ layout[source],
6
+ ...layout.slice(destination)
7
+ ] : [
8
+ ...layout.slice(0, destination),
9
+ layout[source],
10
+ ...layout.slice(destination, source),
11
+ ...layout.slice(source + 1)
12
+ ]);
13
+ export default moveRow;
11
14
 
12
15
  //# sourceMappingURL=moveRow.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["dot","data","source","destination","set","layout","slice"],"sources":["moveRow.ts"],"sourcesContent":["import dot from \"dot-prop-immutable\";\nimport type { CmsModel } from \"~/types.js\";\n\ninterface Params {\n source: number;\n destination: number;\n data: Pick<CmsModel, \"layout\">;\n}\nexport default ({ data, source, destination }: Params) => {\n return dot.set(data, \"layout\", (layout: string[][]) => {\n return source < destination\n ? [\n ...layout.slice(0, source),\n ...layout.slice(source + 1, destination),\n layout[source],\n ...layout.slice(destination)\n ]\n : [\n ...layout.slice(0, destination),\n layout[source],\n ...layout.slice(destination, source),\n ...layout.slice(source + 1)\n ];\n });\n};\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,oBAAoB;AAQpC,eAAe,CAAC;EAAEC,IAAI;EAAEC,MAAM;EAAEC;AAAoB,CAAC,KAAK;EACtD,OAAOH,GAAG,CAACI,GAAG,CAACH,IAAI,EAAE,QAAQ,EAAGI,MAAkB,IAAK;IACnD,OAAOH,MAAM,GAAGC,WAAW,GACrB,CACI,GAAGE,MAAM,CAACC,KAAK,CAAC,CAAC,EAAEJ,MAAM,CAAC,EAC1B,GAAGG,MAAM,CAACC,KAAK,CAACJ,MAAM,GAAG,CAAC,EAAEC,WAAW,CAAC,EACxCE,MAAM,CAACH,MAAM,CAAC,EACd,GAAGG,MAAM,CAACC,KAAK,CAACH,WAAW,CAAC,CAC/B,GACD,CACI,GAAGE,MAAM,CAACC,KAAK,CAAC,CAAC,EAAEH,WAAW,CAAC,EAC/BE,MAAM,CAACH,MAAM,CAAC,EACd,GAAGG,MAAM,CAACC,KAAK,CAACH,WAAW,EAAED,MAAM,CAAC,EACpC,GAAGG,MAAM,CAACC,KAAK,CAACJ,MAAM,GAAG,CAAC,CAAC,CAC9B;EACX,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/components/FieldEditor/utils/moveRow.js","sources":["../../../../../src/admin/components/FieldEditor/utils/moveRow.ts"],"sourcesContent":["import dot from \"dot-prop-immutable\";\nimport type { CmsModel } from \"~/types.js\";\n\ninterface Params {\n source: number;\n destination: number;\n data: Pick<CmsModel, \"layout\">;\n}\nexport default ({ data, source, destination }: Params) => {\n return dot.set(data, \"layout\", (layout: string[][]) => {\n return source < destination\n ? [\n ...layout.slice(0, source),\n ...layout.slice(source + 1, destination),\n layout[source],\n ...layout.slice(destination)\n ]\n : [\n ...layout.slice(0, destination),\n layout[source],\n ...layout.slice(destination, source),\n ...layout.slice(source + 1)\n ];\n });\n};\n"],"names":["data","source","destination","dot","layout"],"mappings":";AAQA,gBAAgB,GAAEA,IAAI,EAAEC,MAAM,EAAEC,WAAW,EAAU,GAC1CC,mBAAAA,GAAO,CAACH,MAAM,UAAU,CAACI,SACrBH,SAASC,cACV;eACOE,OAAO,KAAK,CAAC,GAAGH;eAChBG,OAAO,KAAK,CAACH,SAAS,GAAGC;YAC5BE,MAAM,CAACH,OAAO;eACXG,OAAO,KAAK,CAACF;SACnB,GACD;eACOE,OAAO,KAAK,CAAC,GAAGF;YACnBE,MAAM,CAACH,OAAO;eACXG,OAAO,KAAK,CAACF,aAAaD;eAC1BG,OAAO,KAAK,CAACH,SAAS;SAC5B"}