@webiny/app-headless-cms 0.0.0-unstable.40876133bb → 0.0.0-unstable.496cf268ac

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 (862) hide show
  1. package/HeadlessCMS.js +10 -19
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntryForm/ContentEntryForm.js +34 -59
  4. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  5. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +0 -16
  6. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
  7. package/admin/components/ContentEntryForm/Fields.d.ts +2 -2
  8. package/admin/components/ContentEntryForm/Fields.js +4 -11
  9. package/admin/components/ContentEntryForm/Fields.js.map +1 -1
  10. package/admin/components/ContentEntryForm/Label.js +0 -8
  11. package/admin/components/ContentEntryForm/Label.js.map +1 -1
  12. package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +2 -2
  13. package/admin/components/ContentEntryForm/RenderFieldElement.js +7 -18
  14. package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
  15. package/admin/components/ContentEntryForm/functions/getValue.d.ts +2 -2
  16. package/admin/components/ContentEntryForm/functions/getValue.js +2 -8
  17. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
  18. package/admin/components/ContentEntryForm/functions/setValue.d.ts +2 -2
  19. package/admin/components/ContentEntryForm/functions/setValue.js +3 -9
  20. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
  21. package/admin/components/ContentEntryForm/useBind.d.ts +2 -2
  22. package/admin/components/ContentEntryForm/useBind.js +20 -37
  23. package/admin/components/ContentEntryForm/useBind.js.map +1 -1
  24. package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +1 -2
  25. package/admin/components/ContentEntryForm/useContentEntryForm.js +269 -350
  26. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
  27. package/admin/components/ContentEntryForm/useRenderPlugins.js +0 -3
  28. package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -1
  29. package/admin/components/ContentModelEditor/{Context.d.ts → ContentModelEditorProvider.d.ts} +10 -4
  30. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js +260 -0
  31. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -0
  32. package/admin/components/ContentModelEditor/Editor.d.ts +4 -1
  33. package/admin/components/ContentModelEditor/Editor.js +9 -42
  34. package/admin/components/ContentModelEditor/Editor.js.map +1 -1
  35. package/admin/components/ContentModelEditor/FieldsSidebar.js +5 -17
  36. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
  37. package/admin/components/ContentModelEditor/Header.js +0 -8
  38. package/admin/components/ContentModelEditor/Header.js.map +1 -1
  39. package/admin/components/ContentModelEditor/PreviewTab.js +3 -18
  40. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
  41. package/admin/components/ContentModelEditor/index.d.ts +2 -0
  42. package/admin/components/ContentModelEditor/index.js +27 -0
  43. package/admin/components/ContentModelEditor/index.js.map +1 -0
  44. package/admin/components/ContentModelEditor/useModelEditor.d.ts +1 -0
  45. package/admin/components/ContentModelEditor/{useContentModelEditor.js → useModelEditor.js} +4 -10
  46. package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -0
  47. package/admin/{views/contentModelGroups → components}/DelayedOnChange.js +6 -31
  48. package/admin/{views/contentModelGroups → components}/DelayedOnChange.js.map +1 -1
  49. package/admin/components/Dialog.d.ts +8 -0
  50. package/admin/components/Dialog.js +28 -0
  51. package/admin/components/Dialog.js.map +1 -0
  52. package/admin/components/DragPreview.js +21 -39
  53. package/admin/components/DragPreview.js.map +1 -1
  54. package/admin/components/Draggable.js +28 -40
  55. package/admin/components/Draggable.js.map +1 -1
  56. package/admin/components/DropZone/Center.d.ts +2 -1
  57. package/admin/components/DropZone/Center.js +34 -53
  58. package/admin/components/DropZone/Center.js.map +1 -1
  59. package/admin/components/DropZone/Horizontal.js +5 -16
  60. package/admin/components/DropZone/Horizontal.js.map +1 -1
  61. package/admin/components/DropZone/Vertical.js +5 -15
  62. package/admin/components/DropZone/Vertical.js.map +1 -1
  63. package/admin/components/DropZone/index.js +0 -4
  64. package/admin/components/DropZone/index.js.map +1 -1
  65. package/admin/components/Droppable.d.ts +1 -0
  66. package/admin/components/Droppable.js +32 -34
  67. package/admin/components/Droppable.js.map +1 -1
  68. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.d.ts +2 -8
  69. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +16 -32
  70. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
  71. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.d.ts +2 -9
  72. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +30 -44
  73. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
  74. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.d.ts +2 -9
  75. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +23 -46
  76. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
  77. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.d.ts +10 -0
  78. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js +34 -0
  79. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -0
  80. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.d.ts +8 -0
  81. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +189 -0
  82. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -0
  83. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js +2 -8
  84. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -1
  85. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js +3 -10
  86. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -1
  87. package/admin/components/FieldEditor/EditFieldDialog/getValidators.d.ts +13 -0
  88. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js +91 -0
  89. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -0
  90. package/admin/components/FieldEditor/EditFieldDialog.d.ts +3 -3
  91. package/admin/components/FieldEditor/EditFieldDialog.js +108 -289
  92. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
  93. package/admin/components/FieldEditor/Field.d.ts +5 -5
  94. package/admin/components/FieldEditor/Field.js +267 -111
  95. package/admin/components/FieldEditor/Field.js.map +1 -1
  96. package/admin/components/FieldEditor/FieldEditor.d.ts +4 -4
  97. package/admin/components/FieldEditor/FieldEditor.js +74 -58
  98. package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
  99. package/admin/components/FieldEditor/FieldEditorContext.d.ts +20 -16
  100. package/admin/components/FieldEditor/FieldEditorContext.js +65 -118
  101. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
  102. package/admin/components/FieldEditor/Styled.d.ts +9 -3
  103. package/admin/components/FieldEditor/Styled.js +4 -17
  104. package/admin/components/FieldEditor/Styled.js.map +1 -1
  105. package/admin/components/FieldEditor/index.d.ts +1 -1
  106. package/admin/components/FieldEditor/index.js +3 -5
  107. package/admin/components/FieldEditor/index.js.map +1 -1
  108. package/admin/components/FieldEditor/useModelFieldEditor.d.ts +2 -0
  109. package/admin/components/FieldEditor/useModelFieldEditor.js +15 -0
  110. package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -0
  111. package/admin/components/FieldEditor/utils/deleteField.d.ts +2 -2
  112. package/admin/components/FieldEditor/utils/deleteField.js +4 -13
  113. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
  114. package/admin/components/FieldEditor/utils/getFieldPosition.d.ts +2 -2
  115. package/admin/components/FieldEditor/utils/getFieldPosition.js +1 -6
  116. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
  117. package/admin/components/FieldEditor/utils/index.js +0 -5
  118. package/admin/components/FieldEditor/utils/index.js.map +1 -1
  119. package/admin/components/FieldEditor/utils/moveField.d.ts +3 -3
  120. package/admin/components/FieldEditor/utils/moveField.js +7 -17
  121. package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
  122. package/admin/components/FieldEditor/utils/moveRow.js +2 -7
  123. package/admin/components/FieldEditor/utils/moveRow.js.map +1 -1
  124. package/admin/components/IconPicker.d.ts +7 -0
  125. package/admin/{views/contentModelGroups → components}/IconPicker.js +50 -72
  126. package/admin/components/IconPicker.js.map +1 -0
  127. package/admin/components/ModelFieldProvider/ModelFieldContext.d.ts +36 -0
  128. package/admin/components/ModelFieldProvider/ModelFieldContext.js +18 -0
  129. package/admin/components/ModelFieldProvider/ModelFieldContext.js.map +1 -0
  130. package/admin/components/ModelFieldProvider/index.d.ts +2 -0
  131. package/admin/components/ModelFieldProvider/index.js +27 -0
  132. package/admin/components/ModelFieldProvider/index.js.map +1 -0
  133. package/admin/components/ModelFieldProvider/useModelField.d.ts +35 -0
  134. package/admin/components/ModelFieldProvider/useModelField.js +33 -0
  135. package/admin/components/ModelFieldProvider/useModelField.js.map +1 -0
  136. package/admin/components/ModelProvider/ModelContext.d.ts +9 -0
  137. package/admin/components/ModelProvider/ModelContext.js +18 -0
  138. package/admin/components/ModelProvider/ModelContext.js.map +1 -0
  139. package/admin/components/ModelProvider/index.d.ts +2 -0
  140. package/admin/components/ModelProvider/index.js +27 -0
  141. package/admin/components/ModelProvider/index.js.map +1 -0
  142. package/admin/components/ModelProvider/useModel.d.ts +9 -0
  143. package/admin/components/ModelProvider/useModel.js +20 -0
  144. package/admin/components/ModelProvider/useModel.js.map +1 -0
  145. package/admin/constants/statusLabels.js +0 -6
  146. package/admin/constants/statusLabels.js.map +1 -1
  147. package/admin/contexts/Cms/NetworkError.js +0 -5
  148. package/admin/contexts/Cms/NetworkError.js.map +1 -1
  149. package/admin/contexts/Cms/index.js +29 -70
  150. package/admin/contexts/Cms/index.js.map +1 -1
  151. package/admin/elements/ContentGroupMenuElement.js +0 -11
  152. package/admin/elements/ContentGroupMenuElement.js.map +1 -1
  153. package/admin/elements/ContentModelMenuElement.js +0 -11
  154. package/admin/elements/ContentModelMenuElement.js.map +1 -1
  155. package/admin/elements/NothingToShowElement.js +0 -24
  156. package/admin/elements/NothingToShowElement.js.map +1 -1
  157. package/admin/graphql/contentEntries.js +33 -68
  158. package/admin/graphql/contentEntries.js.map +1 -1
  159. package/admin/graphql/contentModels.d.ts +1 -1
  160. package/admin/graphql/contentModels.js +3 -9
  161. package/admin/graphql/contentModels.js.map +1 -1
  162. package/admin/graphql/createFieldsList.d.ts +7 -2
  163. package/admin/graphql/createFieldsList.js +10 -9
  164. package/admin/graphql/createFieldsList.js.map +1 -1
  165. package/admin/hooks/index.d.ts +6 -0
  166. package/admin/hooks/index.js +54 -10
  167. package/admin/hooks/index.js.map +1 -1
  168. package/admin/hooks/useApolloClient.js +1 -6
  169. package/admin/hooks/useApolloClient.js.map +1 -1
  170. package/admin/hooks/useCms.js +0 -6
  171. package/admin/hooks/useCms.js.map +1 -1
  172. package/admin/hooks/useContentModels.d.ts +6 -0
  173. package/admin/hooks/useContentModels.js +33 -0
  174. package/admin/hooks/useContentModels.js.map +1 -0
  175. package/admin/hooks/useLazyQuery.js +1 -9
  176. package/admin/hooks/useLazyQuery.js.map +1 -1
  177. package/admin/hooks/useMutation.js +1 -9
  178. package/admin/hooks/useMutation.js.map +1 -1
  179. package/admin/hooks/usePermission.d.ts +2 -2
  180. package/admin/hooks/usePermission.js +13 -51
  181. package/admin/hooks/usePermission.js.map +1 -1
  182. package/admin/hooks/useQuery.js +1 -9
  183. package/admin/hooks/useQuery.js.map +1 -1
  184. package/admin/hooks/useQueryLocale.js +1 -9
  185. package/admin/hooks/useQueryLocale.js.map +1 -1
  186. package/admin/menus/CmsMenuLoader.js +5 -19
  187. package/admin/menus/CmsMenuLoader.js.map +1 -1
  188. package/admin/menus/ContentGroupsMenuItems.js +3 -23
  189. package/admin/menus/ContentGroupsMenuItems.js.map +1 -1
  190. package/admin/menus/GlobalSearchPlugins.js +5 -15
  191. package/admin/menus/GlobalSearchPlugins.js.map +1 -1
  192. package/admin/menus/NothingToShowElement.js +1 -8
  193. package/admin/menus/NothingToShowElement.js.map +1 -1
  194. package/admin/plugins/apiInformation/index.js +3 -14
  195. package/admin/plugins/apiInformation/index.js.map +1 -1
  196. package/admin/plugins/arrayUtils.d.ts +12 -0
  197. package/admin/plugins/arrayUtils.js +45 -0
  198. package/admin/plugins/arrayUtils.js.map +1 -0
  199. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js +0 -14
  200. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -1
  201. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js +0 -14
  202. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -1
  203. package/admin/plugins/editor/defaultBar/BackButton.js +1 -11
  204. package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -1
  205. package/admin/plugins/editor/defaultBar/CreateContentButton.js +4 -21
  206. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
  207. package/admin/plugins/editor/defaultBar/Divider.d.ts +5 -2
  208. package/admin/plugins/editor/defaultBar/Divider.js +0 -3
  209. package/admin/plugins/editor/defaultBar/Divider.js.map +1 -1
  210. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +11 -38
  211. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  212. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js +3 -13
  213. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -1
  214. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.d.ts +8 -2
  215. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js +0 -7
  216. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -1
  217. package/admin/plugins/editor/defaultBar/FormSettings/index.js +0 -2
  218. package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -1
  219. package/admin/plugins/editor/defaultBar/Name/Name.js +13 -32
  220. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
  221. package/admin/plugins/editor/defaultBar/Name/NameStyled.d.ts +13 -4
  222. package/admin/plugins/editor/defaultBar/Name/NameStyled.js +0 -4
  223. package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -1
  224. package/admin/plugins/editor/defaultBar/Name/index.js +0 -1
  225. package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -1
  226. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +26 -52
  227. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
  228. package/admin/plugins/editor/defaultBar/index.js +0 -9
  229. package/admin/plugins/editor/defaultBar/index.js.map +1 -1
  230. package/admin/plugins/editor/formSettings/components/GeneralSettings.d.ts +2 -2
  231. package/admin/plugins/editor/formSettings/components/GeneralSettings.js +30 -9
  232. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
  233. package/admin/plugins/editor/formSettings/components/GroupSelect.js +3 -14
  234. package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -1
  235. package/admin/plugins/editor/formSettings/index.js +0 -6
  236. package/admin/plugins/editor/formSettings/index.js.map +1 -1
  237. package/admin/plugins/entry/DefaultOnEntryDelete.js +93 -140
  238. package/admin/plugins/entry/DefaultOnEntryDelete.js.map +1 -1
  239. package/admin/plugins/entry/DefaultOnEntryPublish.js +70 -112
  240. package/admin/plugins/entry/DefaultOnEntryPublish.js.map +1 -1
  241. package/admin/plugins/fieldRenderers/Accordion.js +8 -21
  242. package/admin/plugins/fieldRenderers/Accordion.js.map +1 -1
  243. package/admin/plugins/fieldRenderers/DynamicSection.d.ts +3 -3
  244. package/admin/plugins/fieldRenderers/DynamicSection.js +11 -28
  245. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
  246. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +1 -10
  247. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
  248. package/admin/plugins/fieldRenderers/boolean/index.js +0 -3
  249. package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -1
  250. package/admin/plugins/fieldRenderers/checkboxes.js +6 -17
  251. package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
  252. package/admin/plugins/fieldRenderers/dateTime/DateOnly.d.ts +2 -2
  253. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js +20 -41
  254. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
  255. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.d.ts +2 -2
  256. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +51 -97
  257. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
  258. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.d.ts +2 -2
  259. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js +46 -85
  260. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
  261. package/admin/plugins/fieldRenderers/dateTime/Input.d.ts +2 -2
  262. package/admin/plugins/fieldRenderers/dateTime/Input.js +1 -10
  263. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
  264. package/admin/plugins/fieldRenderers/dateTime/Select.js +0 -5
  265. package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
  266. package/admin/plugins/fieldRenderers/dateTime/Time.js +19 -39
  267. package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -1
  268. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +1 -14
  269. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
  270. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +1 -21
  271. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
  272. package/admin/plugins/fieldRenderers/dateTime/index.js +0 -4
  273. package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -1
  274. package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +2 -2
  275. package/admin/plugins/fieldRenderers/dateTime/utils.js +2 -31
  276. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
  277. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.d.ts +12 -0
  278. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js +85 -0
  279. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -0
  280. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.d.ts +11 -0
  281. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +114 -0
  282. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -0
  283. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.d.ts +11 -0
  284. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js +54 -0
  285. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -0
  286. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.d.ts +8 -0
  287. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js +54 -0
  288. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js.map +1 -0
  289. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.d.ts +8 -0
  290. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js +40 -0
  291. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -0
  292. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.d.ts +6 -0
  293. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js +17 -0
  294. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -0
  295. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.d.ts +2 -0
  296. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +56 -0
  297. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -0
  298. package/admin/plugins/fieldRenderers/file/File.js +6 -21
  299. package/admin/plugins/fieldRenderers/file/File.js.map +1 -1
  300. package/admin/plugins/fieldRenderers/file/fileField.js +3 -15
  301. package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -1
  302. package/admin/plugins/fieldRenderers/file/fileFields.js +6 -25
  303. package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
  304. package/admin/plugins/fieldRenderers/file/index.js +0 -4
  305. package/admin/plugins/fieldRenderers/file/index.js.map +1 -1
  306. package/admin/plugins/fieldRenderers/file/utils.js +1 -12
  307. package/admin/plugins/fieldRenderers/file/utils.js.map +1 -1
  308. package/admin/plugins/fieldRenderers/longText/index.js +0 -4
  309. package/admin/plugins/fieldRenderers/longText/index.js.map +1 -1
  310. package/admin/plugins/fieldRenderers/longText/longText.js +1 -10
  311. package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
  312. package/admin/plugins/fieldRenderers/longText/longTexts.js +1 -12
  313. package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
  314. package/admin/plugins/fieldRenderers/number/index.js +0 -4
  315. package/admin/plugins/fieldRenderers/number/index.js.map +1 -1
  316. package/admin/plugins/fieldRenderers/number/numberInput.js +1 -10
  317. package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
  318. package/admin/plugins/fieldRenderers/number/numberInputs.js +1 -13
  319. package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
  320. package/admin/plugins/fieldRenderers/object/StyledComponents.d.ts +9 -3
  321. package/admin/plugins/fieldRenderers/object/StyledComponents.js +0 -4
  322. package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -1
  323. package/admin/plugins/fieldRenderers/object/index.js +4 -6
  324. package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
  325. package/admin/plugins/fieldRenderers/object/multipleObjects.js +31 -51
  326. package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -1
  327. package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js +12 -36
  328. package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js.map +1 -1
  329. package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js +2 -11
  330. package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js.map +1 -1
  331. package/admin/plugins/fieldRenderers/object/singleObjectInline.js +2 -14
  332. package/admin/plugins/fieldRenderers/object/singleObjectInline.js.map +1 -1
  333. package/admin/plugins/fieldRenderers/radioButtons.js +6 -17
  334. package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
  335. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.d.ts +8 -0
  336. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js +275 -0
  337. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js.map +1 -0
  338. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.d.ts +8 -0
  339. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js +185 -0
  340. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js.map +1 -0
  341. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.d.ts +9 -0
  342. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js +61 -0
  343. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js.map +1 -0
  344. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.d.ts +27 -0
  345. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js +153 -0
  346. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js.map +1 -0
  347. package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.d.ts +3 -0
  348. package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.js +37 -0
  349. package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.js.map +1 -0
  350. package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.d.ts +9 -0
  351. package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.js +142 -0
  352. package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.js.map +1 -0
  353. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.d.ts +9 -0
  354. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js +118 -0
  355. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js.map +1 -0
  356. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.d.ts +11 -0
  357. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js +183 -0
  358. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js.map +1 -0
  359. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.d.ts +7 -0
  360. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js +60 -0
  361. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js.map +1 -0
  362. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/add-circle.svg +1 -0
  363. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/down-arrow.svg +1 -0
  364. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/link.svg +1 -0
  365. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/search.svg +1 -0
  366. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.d.ts +19 -0
  367. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.js +35 -0
  368. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.js.map +1 -0
  369. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.d.ts +8 -0
  370. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.js +90 -0
  371. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.js.map +1 -0
  372. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/assets/close.svg +3 -0
  373. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.d.ts +8 -0
  374. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js +64 -0
  375. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js.map +1 -0
  376. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.d.ts +8 -0
  377. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js +26 -0
  378. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js.map +1 -0
  379. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.d.ts +6 -0
  380. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js +31 -0
  381. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js.map +1 -0
  382. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.d.ts +9 -0
  383. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js +65 -0
  384. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js.map +1 -0
  385. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.d.ts +6 -0
  386. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js +25 -0
  387. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js.map +1 -0
  388. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.d.ts +8 -0
  389. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js +30 -0
  390. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js.map +1 -0
  391. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.d.ts +7 -0
  392. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.js +24 -0
  393. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.js.map +1 -0
  394. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.d.ts +7 -0
  395. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.js +24 -0
  396. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.js.map +1 -0
  397. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.d.ts +8 -0
  398. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js +44 -0
  399. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js.map +1 -0
  400. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.d.ts +9 -0
  401. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js +82 -0
  402. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js.map +1 -0
  403. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.d.ts +7 -0
  404. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js +32 -0
  405. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js.map +1 -0
  406. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.d.ts +6 -0
  407. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.js +24 -0
  408. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.js.map +1 -0
  409. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.d.ts +7 -0
  410. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js +22 -0
  411. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js.map +1 -0
  412. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-down.svg +3 -0
  413. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-up.svg +3 -0
  414. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/remove.svg +3 -0
  415. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/selected.svg +3 -0
  416. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-draft.svg +3 -0
  417. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-published.svg +3 -0
  418. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-unpublished.svg +3 -0
  419. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/view.svg +3 -0
  420. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.d.ts +18 -0
  421. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js +84 -0
  422. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js.map +1 -0
  423. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.d.ts +8 -0
  424. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js +55 -0
  425. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js.map +1 -0
  426. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.d.ts +8 -0
  427. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js +98 -0
  428. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js.map +1 -0
  429. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.d.ts +2 -0
  430. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js +46 -0
  431. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js.map +1 -0
  432. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.d.ts +2 -0
  433. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js +45 -0
  434. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js.map +1 -0
  435. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.d.ts +44 -0
  436. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js +21 -0
  437. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js.map +1 -0
  438. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.d.ts +15 -0
  439. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js +187 -0
  440. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js.map +1 -0
  441. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.d.ts +12 -0
  442. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js +214 -0
  443. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js.map +1 -0
  444. package/admin/plugins/fieldRenderers/ref/advanced/index.d.ts +1 -0
  445. package/admin/plugins/fieldRenderers/ref/advanced/index.js +12 -0
  446. package/admin/plugins/fieldRenderers/ref/advanced/index.js.map +1 -0
  447. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.d.ts +2 -2
  448. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +15 -46
  449. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
  450. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.d.ts +2 -2
  451. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js +19 -46
  452. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
  453. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js +4 -17
  454. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js.map +1 -1
  455. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js +0 -15
  456. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -1
  457. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +20 -65
  458. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
  459. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js +1 -5
  460. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -1
  461. package/admin/plugins/fieldRenderers/ref/components/graphql.js +2 -7
  462. package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -1
  463. package/admin/plugins/fieldRenderers/ref/components/helpers.js +0 -12
  464. package/admin/plugins/fieldRenderers/ref/components/helpers.js.map +1 -1
  465. package/admin/plugins/fieldRenderers/ref/components/renderItem.js +0 -14
  466. package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -1
  467. package/admin/plugins/fieldRenderers/ref/components/types.d.ts +11 -1
  468. package/admin/plugins/fieldRenderers/ref/components/types.js.map +1 -1
  469. package/admin/plugins/fieldRenderers/ref/components/useReference.d.ts +2 -2
  470. package/admin/plugins/fieldRenderers/ref/components/useReference.js +51 -99
  471. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
  472. package/admin/plugins/fieldRenderers/ref/components/useReferences.d.ts +2 -2
  473. package/admin/plugins/fieldRenderers/ref/components/useReferences.js +53 -83
  474. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
  475. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.d.ts +2 -2
  476. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +16 -31
  477. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
  478. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js +5 -17
  479. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -1
  480. package/admin/plugins/fieldRenderers/ref/index.js +3 -5
  481. package/admin/plugins/fieldRenderers/ref/index.js.map +1 -1
  482. package/admin/plugins/fieldRenderers/ref/refInput.js +0 -9
  483. package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
  484. package/admin/plugins/fieldRenderers/ref/refInputs.js +0 -10
  485. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
  486. package/admin/plugins/fieldRenderers/richText/index.js +0 -4
  487. package/admin/plugins/fieldRenderers/richText/index.js.map +1 -1
  488. package/admin/plugins/fieldRenderers/richText/richTextInput.js +1 -13
  489. package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
  490. package/admin/plugins/fieldRenderers/richText/richTextInputs.js +1 -18
  491. package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
  492. package/admin/plugins/fieldRenderers/select.js +2 -15
  493. package/admin/plugins/fieldRenderers/select.js.map +1 -1
  494. package/admin/plugins/fieldRenderers/text/index.js +0 -4
  495. package/admin/plugins/fieldRenderers/text/index.js.map +1 -1
  496. package/admin/plugins/fieldRenderers/text/textInput.js +1 -10
  497. package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
  498. package/admin/plugins/fieldRenderers/text/textInputs.js +1 -13
  499. package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
  500. package/admin/plugins/fieldValidators/date/availableValidators.js +0 -4
  501. package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -1
  502. package/admin/plugins/fieldValidators/date/createDateInputField.d.ts +2 -2
  503. package/admin/plugins/fieldValidators/date/createDateInputField.js +0 -10
  504. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
  505. package/admin/plugins/fieldValidators/dateGte.d.ts +2 -2
  506. package/admin/plugins/fieldValidators/dateGte.js +61 -32
  507. package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
  508. package/admin/plugins/fieldValidators/dateLte.d.ts +2 -2
  509. package/admin/plugins/fieldValidators/dateLte.js +61 -32
  510. package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
  511. package/admin/plugins/fieldValidators/dynamicZone.d.ts +2 -0
  512. package/admin/plugins/fieldValidators/dynamicZone.js +163 -0
  513. package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -0
  514. package/admin/plugins/fieldValidators/gte.d.ts +2 -2
  515. package/admin/plugins/fieldValidators/gte.js +33 -11
  516. package/admin/plugins/fieldValidators/gte.js.map +1 -1
  517. package/admin/plugins/fieldValidators/in.d.ts +2 -2
  518. package/admin/plugins/fieldValidators/in.js +33 -11
  519. package/admin/plugins/fieldValidators/in.js.map +1 -1
  520. package/admin/plugins/fieldValidators/lte.d.ts +2 -2
  521. package/admin/plugins/fieldValidators/lte.js +33 -11
  522. package/admin/plugins/fieldValidators/lte.js.map +1 -1
  523. package/admin/plugins/fieldValidators/maxLength.d.ts +2 -2
  524. package/admin/plugins/fieldValidators/maxLength.js +44 -12
  525. package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
  526. package/admin/plugins/fieldValidators/minLength.d.ts +2 -2
  527. package/admin/plugins/fieldValidators/minLength.js +44 -12
  528. package/admin/plugins/fieldValidators/minLength.js.map +1 -1
  529. package/admin/plugins/fieldValidators/pattern.d.ts +2 -2
  530. package/admin/plugins/fieldValidators/pattern.js +108 -71
  531. package/admin/plugins/fieldValidators/pattern.js.map +1 -1
  532. package/admin/plugins/fieldValidators/patternPlugins/email.d.ts +2 -2
  533. package/admin/plugins/fieldValidators/patternPlugins/email.js +6 -4
  534. package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
  535. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.d.ts +2 -2
  536. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js +5 -3
  537. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
  538. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.d.ts +2 -2
  539. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js +5 -3
  540. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
  541. package/admin/plugins/fieldValidators/patternPlugins/upperCase.d.ts +2 -2
  542. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js +5 -3
  543. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
  544. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.d.ts +2 -2
  545. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js +5 -3
  546. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
  547. package/admin/plugins/fieldValidators/patternPlugins/url.d.ts +2 -2
  548. package/admin/plugins/fieldValidators/patternPlugins/url.js +5 -3
  549. package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
  550. package/admin/plugins/fieldValidators/required.d.ts +2 -2
  551. package/admin/plugins/fieldValidators/required.js +6 -2
  552. package/admin/plugins/fieldValidators/required.js.map +1 -1
  553. package/admin/plugins/fieldValidators/unique.d.ts +2 -2
  554. package/admin/plugins/fieldValidators/unique.js +22 -4
  555. package/admin/plugins/fieldValidators/unique.js.map +1 -1
  556. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.d.ts +1 -2
  557. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +29 -52
  558. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
  559. package/admin/plugins/fields/boolean.d.ts +2 -2
  560. package/admin/plugins/fields/boolean.js +5 -15
  561. package/admin/plugins/fields/boolean.js.map +1 -1
  562. package/admin/plugins/fields/dateTime.d.ts +2 -2
  563. package/admin/plugins/fields/dateTime.js +53 -60
  564. package/admin/plugins/fields/dateTime.js.map +1 -1
  565. package/admin/plugins/fields/dynamicZone/AddTemplate.d.ts +11 -0
  566. package/admin/plugins/fields/dynamicZone/AddTemplate.js +91 -0
  567. package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -0
  568. package/admin/plugins/fields/dynamicZone/DynamicZone.d.ts +2 -0
  569. package/admin/plugins/fields/dynamicZone/DynamicZone.js +62 -0
  570. package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -0
  571. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.d.ts +11 -0
  572. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js +104 -0
  573. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -0
  574. package/admin/plugins/fields/dynamicZone/TemplateDialog.d.ts +9 -0
  575. package/admin/plugins/fields/dynamicZone/TemplateDialog.js +141 -0
  576. package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -0
  577. package/admin/plugins/fields/dynamicZone/commonValidators.d.ts +2 -0
  578. package/admin/plugins/fields/dynamicZone/commonValidators.js +26 -0
  579. package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -0
  580. package/admin/plugins/fields/dynamicZone.d.ts +2 -0
  581. package/admin/plugins/fields/dynamicZone.js +83 -0
  582. package/admin/plugins/fields/dynamicZone.js.map +1 -0
  583. package/admin/plugins/fields/file.d.ts +2 -2
  584. package/admin/plugins/fields/file.js +5 -15
  585. package/admin/plugins/fields/file.js.map +1 -1
  586. package/admin/plugins/fields/longText.d.ts +2 -2
  587. package/admin/plugins/fields/longText.js +3 -13
  588. package/admin/plugins/fields/longText.js.map +1 -1
  589. package/admin/plugins/fields/number.d.ts +2 -2
  590. package/admin/plugins/fields/number.js +5 -16
  591. package/admin/plugins/fields/number.js.map +1 -1
  592. package/admin/plugins/fields/object/ObjectFields.d.ts +2 -2
  593. package/admin/plugins/fields/object/ObjectFields.js +4 -14
  594. package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
  595. package/admin/plugins/fields/object.d.ts +2 -2
  596. package/admin/plugins/fields/object.js +9 -14
  597. package/admin/plugins/fields/object.js.map +1 -1
  598. package/admin/plugins/fields/ref/graphql.d.ts +8 -0
  599. package/admin/plugins/fields/ref/graphql.js +12 -0
  600. package/admin/plugins/fields/ref/graphql.js.map +1 -0
  601. package/admin/plugins/fields/ref/renderInfo.d.ts +9 -0
  602. package/admin/plugins/fields/ref/renderInfo.js +116 -0
  603. package/admin/plugins/fields/ref/renderInfo.js.map +1 -0
  604. package/admin/plugins/fields/ref.d.ts +2 -2
  605. package/admin/plugins/fields/ref.js +96 -120
  606. package/admin/plugins/fields/ref.js.map +1 -1
  607. package/admin/plugins/fields/richText.d.ts +2 -2
  608. package/admin/plugins/fields/richText.js +5 -15
  609. package/admin/plugins/fields/richText.js.map +1 -1
  610. package/admin/plugins/fields/text.d.ts +2 -2
  611. package/admin/plugins/fields/text.js +3 -14
  612. package/admin/plugins/fields/text.js.map +1 -1
  613. package/admin/plugins/getObjectId.js +0 -4
  614. package/admin/plugins/getObjectId.js.map +1 -1
  615. package/admin/plugins/icons.js +2 -12
  616. package/admin/plugins/icons.js.map +1 -1
  617. package/admin/plugins/index.d.ts +28 -1
  618. package/admin/plugins/index.js +0 -12
  619. package/admin/plugins/index.js.map +1 -1
  620. package/admin/plugins/install.js +22 -87
  621. package/admin/plugins/install.js.map +1 -1
  622. package/admin/plugins/permissionRenderer/CmsPermissions.js +20 -79
  623. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
  624. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +6 -24
  625. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  626. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +4 -19
  627. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -1
  628. package/admin/plugins/permissionRenderer/components/ContentModelList.js +5 -18
  629. package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -1
  630. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +9 -29
  631. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -1
  632. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js +2 -8
  633. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -1
  634. package/admin/plugins/permissionRenderer/components/PermissionSelector.js +11 -27
  635. package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -1
  636. package/admin/plugins/permissionRenderer/components/StyledComponents.d.ts +5 -2
  637. package/admin/plugins/permissionRenderer/components/StyledComponents.js +0 -3
  638. package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -1
  639. package/admin/plugins/permissionRenderer/components/useCmsData.d.ts +1 -0
  640. package/admin/plugins/permissionRenderer/components/useCmsData.js +60 -65
  641. package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -1
  642. package/admin/plugins/permissionRenderer/index.js +0 -6
  643. package/admin/plugins/permissionRenderer/index.js.map +1 -1
  644. package/admin/plugins/routes.js +1 -19
  645. package/admin/plugins/routes.js.map +1 -1
  646. package/admin/plugins/transformers/dateTransformer.d.ts +1 -2
  647. package/admin/plugins/transformers/dateTransformer.js +8 -39
  648. package/admin/plugins/transformers/dateTransformer.js.map +1 -1
  649. package/admin/plugins/transformers/dynamicZoneTransformer.d.ts +2 -0
  650. package/admin/plugins/transformers/dynamicZoneTransformer.js +36 -0
  651. package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -0
  652. package/admin/plugins/transformers/index.js +4 -9
  653. package/admin/plugins/transformers/index.js.map +1 -1
  654. package/admin/plugins/transformers/numberTransformer.d.ts +1 -2
  655. package/admin/plugins/transformers/numberTransformer.js +3 -6
  656. package/admin/plugins/transformers/numberTransformer.js.map +1 -1
  657. package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.js.map +1 -1
  658. package/admin/plugins/upgrades/v5.0.0.js.map +1 -1
  659. package/admin/plugins/upgrades/v5.19.0.js.map +1 -1
  660. package/admin/plugins/upgrades/v5.33.0.js.map +1 -1
  661. package/admin/plugins/upgrades/v5.5.0.js.map +1 -1
  662. package/admin/plugins/upgrades/v5.8.0.js.map +1 -1
  663. package/admin/plugins/welcomeScreenWidget.js +0 -6
  664. package/admin/plugins/welcomeScreenWidget.js.map +1 -1
  665. package/admin/views/contentEntries/ContentEntries.js +27 -54
  666. package/admin/views/contentEntries/ContentEntries.js.map +1 -1
  667. package/admin/views/contentEntries/ContentEntriesContext.d.ts +4 -4
  668. package/admin/views/contentEntries/ContentEntriesContext.js +11 -44
  669. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  670. package/admin/views/contentEntries/ContentEntriesList.js +38 -57
  671. package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
  672. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +32 -75
  673. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  674. package/admin/views/contentEntries/ContentEntry/PublishEntryRevisionListItem.js +0 -12
  675. package/admin/views/contentEntries/ContentEntry/PublishEntryRevisionListItem.js.map +1 -1
  676. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +71 -111
  677. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
  678. package/admin/views/contentEntries/ContentEntry/RevisionsList.js +3 -19
  679. package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -1
  680. package/admin/views/contentEntries/ContentEntry/cache.js +12 -62
  681. package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -1
  682. package/admin/views/contentEntries/ContentEntry/header/Header.js +0 -9
  683. package/admin/views/contentEntries/ContentEntry/header/Header.js.map +1 -1
  684. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js +48 -94
  685. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -1
  686. package/admin/views/contentEntries/ContentEntry/header/index.js +0 -24
  687. package/admin/views/contentEntries/ContentEntry/header/index.js.map +1 -1
  688. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js +5 -22
  689. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +1 -1
  690. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +30 -62
  691. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +1 -1
  692. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js +3 -17
  693. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +1 -1
  694. package/admin/views/contentEntries/ContentEntry/prepareFormData.d.ts +2 -2
  695. package/admin/views/contentEntries/ContentEntry/prepareFormData.js +2 -35
  696. package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
  697. package/admin/views/contentEntries/ContentEntry/useRevision.js +86 -162
  698. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
  699. package/admin/views/contentEntries/ContentEntry.js +9 -34
  700. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  701. package/admin/views/contentEntries/experiment/ContentEntriesModule.js +19 -24
  702. package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
  703. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js +0 -8
  704. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js.map +1 -1
  705. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js +14 -35
  706. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js.map +1 -1
  707. package/admin/views/contentEntries/experiment/Property.js +9 -57
  708. package/admin/views/contentEntries/experiment/Property.js.map +1 -1
  709. package/admin/views/contentEntries/hooks/useContentEntries.js +5 -4
  710. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
  711. package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -1
  712. package/admin/views/contentEntries/hooks/useContentEntriesList.js +31 -54
  713. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
  714. package/admin/views/contentEntries/hooks/useContentEntry.js +0 -5
  715. package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -1
  716. package/admin/views/contentModelGroups/ContentModelGroups.js +2 -15
  717. package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -1
  718. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +66 -120
  719. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -1
  720. package/admin/views/contentModelGroups/ContentModelGroupsForm.js +74 -131
  721. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
  722. package/admin/views/contentModelGroups/graphql.js +1 -9
  723. package/admin/views/contentModelGroups/graphql.js.map +1 -1
  724. package/admin/views/contentModels/CloneContentModelDialog.d.ts +5 -6
  725. package/admin/views/contentModels/CloneContentModelDialog.js +123 -180
  726. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
  727. package/admin/views/contentModels/ContentModelEditor.js +5 -19
  728. package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
  729. package/admin/views/contentModels/ContentModels.js +10 -30
  730. package/admin/views/contentModels/ContentModels.js.map +1 -1
  731. package/admin/views/contentModels/ContentModelsDataList.js +107 -141
  732. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
  733. package/admin/views/contentModels/NewContentModelDialog.js +120 -235
  734. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  735. package/admin/views/contentModels/cache.js +5 -28
  736. package/admin/views/contentModels/cache.js.map +1 -1
  737. package/admin/views/contentModels/helpers/apiNameValidator.d.ts +8 -0
  738. package/admin/views/contentModels/helpers/apiNameValidator.js +116 -0
  739. package/admin/views/contentModels/helpers/apiNameValidator.js.map +1 -0
  740. package/admin/views/contentModels/helpers/nameValidator.d.ts +6 -0
  741. package/admin/views/contentModels/helpers/nameValidator.js +63 -0
  742. package/admin/views/contentModels/helpers/nameValidator.js.map +1 -0
  743. package/admin/views/utils.js +3 -9
  744. package/admin/views/utils.js.map +1 -1
  745. package/admin/viewsGraphql.js +7 -11
  746. package/admin/viewsGraphql.js.map +1 -1
  747. package/allPlugins.d.ts +34 -0
  748. package/allPlugins.js +51 -0
  749. package/allPlugins.js.map +1 -0
  750. package/index.d.ts +1 -0
  751. package/index.js +13 -4
  752. package/index.js.map +1 -1
  753. package/package.json +27 -28
  754. package/{types.d.ts → types/index.d.ts} +60 -178
  755. package/types/index.js +38 -0
  756. package/types/index.js.map +1 -0
  757. package/types/model.d.ts +88 -0
  758. package/types/model.js.map +1 -0
  759. package/types/shared.d.ts +5 -0
  760. package/types/shared.js +5 -0
  761. package/types/shared.js.map +1 -0
  762. package/types/validation.d.ts +70 -0
  763. package/types/validation.js +5 -0
  764. package/types/validation.js.map +1 -0
  765. package/utils/CmsModelFieldValidatorConfigAdapter.d.ts +15 -0
  766. package/utils/CmsModelFieldValidatorConfigAdapter.js +79 -0
  767. package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -0
  768. package/utils/createTypeName.d.ts +1 -0
  769. package/utils/createTypeName.js +13 -0
  770. package/utils/createTypeName.js.map +1 -0
  771. package/utils/createValidators.d.ts +3 -0
  772. package/utils/createValidators.js +76 -0
  773. package/utils/createValidators.js.map +1 -0
  774. package/utils/getFetchPolicy.d.ts +6 -0
  775. package/utils/getFetchPolicy.js +17 -0
  776. package/utils/getFetchPolicy.js.map +1 -0
  777. package/utils/getModelTitleFieldId.d.ts +2 -0
  778. package/utils/getModelTitleFieldId.js +13 -0
  779. package/utils/getModelTitleFieldId.js.map +1 -0
  780. package/admin/components/ContentEntryForm/functions/createValidators.d.ts +0 -3
  781. package/admin/components/ContentEntryForm/functions/createValidators.js +0 -76
  782. package/admin/components/ContentEntryForm/functions/createValidators.js.map +0 -1
  783. package/admin/components/ContentModelEditor/Context.js +0 -379
  784. package/admin/components/ContentModelEditor/Context.js.map +0 -1
  785. package/admin/components/ContentModelEditor/useContentModelEditor.d.ts +0 -1
  786. package/admin/components/ContentModelEditor/useContentModelEditor.js.map +0 -1
  787. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.d.ts +0 -15
  788. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +0 -148
  789. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +0 -1
  790. package/admin/components/FieldEditor/useFieldEditor.d.ts +0 -1
  791. package/admin/components/FieldEditor/useFieldEditor.js +0 -14
  792. package/admin/components/FieldEditor/useFieldEditor.js.map +0 -1
  793. package/admin/plugins/fieldRenderers/object/singleObject.d.ts +0 -3
  794. package/admin/plugins/fieldRenderers/object/singleObject.js +0 -64
  795. package/admin/plugins/fieldRenderers/object/singleObject.js.map +0 -1
  796. package/admin/plugins/validators/dateGte.d.ts +0 -3
  797. package/admin/plugins/validators/dateGte.js +0 -68
  798. package/admin/plugins/validators/dateGte.js.map +0 -1
  799. package/admin/plugins/validators/dateLte.d.ts +0 -3
  800. package/admin/plugins/validators/dateLte.js +0 -68
  801. package/admin/plugins/validators/dateLte.js.map +0 -1
  802. package/admin/plugins/validators/gte.d.ts +0 -3
  803. package/admin/plugins/validators/gte.js +0 -57
  804. package/admin/plugins/validators/gte.js.map +0 -1
  805. package/admin/plugins/validators/in.d.ts +0 -3
  806. package/admin/plugins/validators/in.js +0 -57
  807. package/admin/plugins/validators/in.js.map +0 -1
  808. package/admin/plugins/validators/lte.d.ts +0 -3
  809. package/admin/plugins/validators/lte.js +0 -57
  810. package/admin/plugins/validators/lte.js.map +0 -1
  811. package/admin/plugins/validators/maxLength.d.ts +0 -3
  812. package/admin/plugins/validators/maxLength.js +0 -57
  813. package/admin/plugins/validators/maxLength.js.map +0 -1
  814. package/admin/plugins/validators/minLength.d.ts +0 -3
  815. package/admin/plugins/validators/minLength.js +0 -57
  816. package/admin/plugins/validators/minLength.js.map +0 -1
  817. package/admin/plugins/validators/pattern.d.ts +0 -3
  818. package/admin/plugins/validators/pattern.js +0 -77
  819. package/admin/plugins/validators/pattern.js.map +0 -1
  820. package/admin/plugins/validators/patternPlugins/email.d.ts +0 -3
  821. package/admin/plugins/validators/patternPlugins/email.js +0 -17
  822. package/admin/plugins/validators/patternPlugins/email.js.map +0 -1
  823. package/admin/plugins/validators/patternPlugins/lowerCase.d.ts +0 -3
  824. package/admin/plugins/validators/patternPlugins/lowerCase.js +0 -17
  825. package/admin/plugins/validators/patternPlugins/lowerCase.js.map +0 -1
  826. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.d.ts +0 -3
  827. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js +0 -17
  828. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
  829. package/admin/plugins/validators/patternPlugins/upperCase.d.ts +0 -3
  830. package/admin/plugins/validators/patternPlugins/upperCase.js +0 -17
  831. package/admin/plugins/validators/patternPlugins/upperCase.js.map +0 -1
  832. package/admin/plugins/validators/patternPlugins/upperCaseSpace.d.ts +0 -3
  833. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js +0 -17
  834. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +0 -1
  835. package/admin/plugins/validators/patternPlugins/url.d.ts +0 -3
  836. package/admin/plugins/validators/patternPlugins/url.js +0 -17
  837. package/admin/plugins/validators/patternPlugins/url.js.map +0 -1
  838. package/admin/plugins/validators/required.d.ts +0 -3
  839. package/admin/plugins/validators/required.js +0 -21
  840. package/admin/plugins/validators/required.js.map +0 -1
  841. package/admin/plugins/validators/timeGte.d.ts +0 -3
  842. package/admin/plugins/validators/timeGte.js +0 -59
  843. package/admin/plugins/validators/timeGte.js.map +0 -1
  844. package/admin/plugins/validators/timeLte.d.ts +0 -3
  845. package/admin/plugins/validators/timeLte.js +0 -59
  846. package/admin/plugins/validators/timeLte.js.map +0 -1
  847. package/admin/plugins/validators/unique.d.ts +0 -7
  848. package/admin/plugins/validators/unique.js +0 -50
  849. package/admin/plugins/validators/unique.js.map +0 -1
  850. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.d.ts +0 -1
  851. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js +0 -13
  852. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +0 -1
  853. package/admin/views/contentEntries/ContentEntry/header/requestChanges/rule-24px.svg +0 -1
  854. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.d.ts +0 -1
  855. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js +0 -13
  856. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +0 -1
  857. package/admin/views/contentEntries/ContentEntry/header/requestReview/emoji_people-24px.svg +0 -1
  858. package/admin/views/contentModelGroups/IconPicker.d.ts +0 -8
  859. package/admin/views/contentModelGroups/IconPicker.js.map +0 -1
  860. package/types.js.map +0 -1
  861. /package/admin/{views/contentModelGroups → components}/DelayedOnChange.d.ts +0 -0
  862. /package/{types.js → types/model.js} +0 -0
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.AddTemplateIcon = exports.AddTemplateButton = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _styled = _interopRequireDefault(require("@emotion/styled"));
12
+ var _Button = require("@webiny/ui/Button");
13
+ var _TemplateDialog = require("./TemplateDialog");
14
+ var _Typography = require("@webiny/ui/Typography");
15
+ var _info = require("@material-design-icons/svg/outlined/info.svg");
16
+ var _add_circle_outline = require("@material-design-icons/svg/round/add_circle_outline.svg");
17
+ var _Elevation = require("@webiny/ui/Elevation");
18
+ var AddTemplateButtonContainer = /*#__PURE__*/(0, _styled.default)(_Elevation.Elevation, {
19
+ label: "AddTemplateButtonContainer",
20
+ target: "e34m0te0"
21
+ })("padding:25px 0 20px;text-align:center;");
22
+
23
+ /**
24
+ * This hacking is needed to position the button exactly in the middle of available area and not stretch the parent element.
25
+ */
26
+ var AddTemplateIconContainer = /*#__PURE__*/(0, _styled.default)("div", {
27
+ label: "AddTemplateIconContainer",
28
+ target: "e34m0te1"
29
+ })("text-align:center;height:36px;> button{margin-left:-24px;position:absolute;}");
30
+ var Info = /*#__PURE__*/(0, _styled.default)("div", {
31
+ label: "Info",
32
+ target: "e34m0te2"
33
+ })("margin-top:8px;display:flex;justify-content:center;align-items:center;> svg{width:20px;margin-right:5px;}");
34
+ function useAddTemplate(params) {
35
+ var _useState = (0, _react.useState)(false),
36
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
37
+ showTemplateDialog = _useState2[0],
38
+ setShowTemplateDialog = _useState2[1];
39
+ var addTemplate = function addTemplate() {
40
+ setShowTemplateDialog(true);
41
+ };
42
+ var onTemplate = function onTemplate(template) {
43
+ params.onTemplate(template);
44
+ };
45
+ var onDialogClose = function onDialogClose() {
46
+ setShowTemplateDialog(false);
47
+ };
48
+ return {
49
+ addTemplate: addTemplate,
50
+ onTemplate: onTemplate,
51
+ onDialogClose: onDialogClose,
52
+ showTemplateDialog: showTemplateDialog
53
+ };
54
+ }
55
+ var AddTemplateButton = function AddTemplateButton(props) {
56
+ var _useAddTemplate = useAddTemplate({
57
+ onTemplate: props.onTemplate
58
+ }),
59
+ addTemplate = _useAddTemplate.addTemplate,
60
+ onTemplate = _useAddTemplate.onTemplate,
61
+ showTemplateDialog = _useAddTemplate.showTemplateDialog,
62
+ onDialogClose = _useAddTemplate.onDialogClose;
63
+ return /*#__PURE__*/_react.default.createElement(AddTemplateButtonContainer, {
64
+ z: 2
65
+ }, showTemplateDialog ? /*#__PURE__*/_react.default.createElement(_TemplateDialog.TemplateDialog, {
66
+ onTemplate: onTemplate,
67
+ onClose: onDialogClose
68
+ }) : null, /*#__PURE__*/_react.default.createElement(_Button.ButtonSecondary, {
69
+ onClick: addTemplate
70
+ }, "+ Add a template"), /*#__PURE__*/_react.default.createElement(Info, null, /*#__PURE__*/_react.default.createElement(_info.ReactComponent, null), /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
71
+ use: "caption"
72
+ }, "Click here to learn how templates and dynamic zones work")));
73
+ };
74
+ exports.AddTemplateButton = AddTemplateButton;
75
+ var AddTemplateIcon = function AddTemplateIcon(props) {
76
+ var _useAddTemplate2 = useAddTemplate({
77
+ onTemplate: props.onTemplate
78
+ }),
79
+ addTemplate = _useAddTemplate2.addTemplate,
80
+ onTemplate = _useAddTemplate2.onTemplate,
81
+ showTemplateDialog = _useAddTemplate2.showTemplateDialog,
82
+ onDialogClose = _useAddTemplate2.onDialogClose;
83
+ return /*#__PURE__*/_react.default.createElement(AddTemplateIconContainer, null, showTemplateDialog ? /*#__PURE__*/_react.default.createElement(_TemplateDialog.TemplateDialog, {
84
+ onTemplate: onTemplate,
85
+ onClose: onDialogClose
86
+ }) : null, /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
87
+ onClick: addTemplate,
88
+ icon: /*#__PURE__*/_react.default.createElement(_add_circle_outline.ReactComponent, null)
89
+ }));
90
+ };
91
+ exports.AddTemplateIcon = AddTemplateIcon;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AddTemplateButtonContainer","styled","Elevation","AddTemplateIconContainer","Info","useAddTemplate","params","useState","showTemplateDialog","setShowTemplateDialog","addTemplate","onTemplate","template","onDialogClose","AddTemplateButton","props","AddTemplateIcon"],"sources":["AddTemplate.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { CmsDynamicZoneTemplate } from \"~/types\";\nimport { ButtonSecondary, IconButton } from \"@webiny/ui/Button\";\nimport { TemplateDialog } from \"./TemplateDialog\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ReactComponent as InfoIcon } from \"@material-design-icons/svg/outlined/info.svg\";\nimport { ReactComponent as AddIcon } from \"@material-design-icons/svg/round/add_circle_outline.svg\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\n\nconst AddTemplateButtonContainer = styled(Elevation)`\n padding: 25px 0 20px;\n text-align: center;\n`;\n\n/**\n * This hacking is needed to position the button exactly in the middle of available area and not stretch the parent element.\n */\nconst AddTemplateIconContainer = styled.div`\n text-align: center;\n height: 36px;\n > button {\n margin-left: -24px;\n position: absolute;\n }\n`;\n\nconst Info = styled.div`\n margin-top: 8px;\n display: flex;\n justify-content: center;\n align-items: center;\n > svg {\n width: 20px;\n margin-right: 5px;\n }\n`;\n\ninterface AddTemplateProps {\n onTemplate: UseAddTemplateParams[\"onTemplate\"];\n}\n\ninterface UseAddTemplateParams {\n onTemplate: (template: CmsDynamicZoneTemplate) => void;\n}\n\nfunction useAddTemplate(params: UseAddTemplateParams) {\n const [showTemplateDialog, setShowTemplateDialog] = useState(false);\n\n const addTemplate = () => {\n setShowTemplateDialog(true);\n };\n\n const onTemplate = (template: CmsDynamicZoneTemplate) => {\n params.onTemplate(template);\n };\n\n const onDialogClose = () => {\n setShowTemplateDialog(false);\n };\n\n return {\n addTemplate,\n onTemplate,\n onDialogClose,\n showTemplateDialog\n };\n}\n\nexport const AddTemplateButton = (props: AddTemplateProps) => {\n const { addTemplate, onTemplate, showTemplateDialog, onDialogClose } = useAddTemplate({\n onTemplate: props.onTemplate\n });\n\n return (\n <AddTemplateButtonContainer z={2}>\n {showTemplateDialog ? (\n <TemplateDialog onTemplate={onTemplate} onClose={onDialogClose} />\n ) : null}\n <ButtonSecondary onClick={addTemplate}>+ Add a template</ButtonSecondary>\n <Info>\n <InfoIcon />\n <Typography use={\"caption\"}>\n Click here to learn how templates and dynamic zones work\n </Typography>\n </Info>\n </AddTemplateButtonContainer>\n );\n};\n\nexport const AddTemplateIcon = (props: AddTemplateProps) => {\n const { addTemplate, onTemplate, showTemplateDialog, onDialogClose } = useAddTemplate({\n onTemplate: props.onTemplate\n });\n\n return (\n <AddTemplateIconContainer>\n {showTemplateDialog ? (\n <TemplateDialog onTemplate={onTemplate} onClose={onDialogClose} />\n ) : null}\n <IconButton onClick={addTemplate} icon={<AddIcon />} />\n </AddTemplateIconContainer>\n );\n};\n"],"mappings":";;;;;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA,IAAMA,0BAA0B,oBAAGC,eAAM,EAACC,oBAAS;EAAA;EAAA;AAAA,4CAGlD;;AAED;AACA;AACA;AACA,IAAMC,wBAAwB,oBAAGF,eAAM;EAAA;EAAA;AAAA,kFAOtC;AAED,IAAMG,IAAI,oBAAGH,eAAM;EAAA;EAAA;AAAA,+GASlB;AAUD,SAASI,cAAc,CAACC,MAA4B,EAAE;EAClD,gBAAoD,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAA;IAA5DC,kBAAkB;IAAEC,qBAAqB;EAEhD,IAAMC,WAAW,GAAG,SAAdA,WAAW,GAAS;IACtBD,qBAAqB,CAAC,IAAI,CAAC;EAC/B,CAAC;EAED,IAAME,UAAU,GAAG,SAAbA,UAAU,CAAIC,QAAgC,EAAK;IACrDN,MAAM,CAACK,UAAU,CAACC,QAAQ,CAAC;EAC/B,CAAC;EAED,IAAMC,aAAa,GAAG,SAAhBA,aAAa,GAAS;IACxBJ,qBAAqB,CAAC,KAAK,CAAC;EAChC,CAAC;EAED,OAAO;IACHC,WAAW,EAAXA,WAAW;IACXC,UAAU,EAAVA,UAAU;IACVE,aAAa,EAAbA,aAAa;IACbL,kBAAkB,EAAlBA;EACJ,CAAC;AACL;AAEO,IAAMM,iBAAiB,GAAG,SAApBA,iBAAiB,CAAIC,KAAuB,EAAK;EAC1D,sBAAuEV,cAAc,CAAC;MAClFM,UAAU,EAAEI,KAAK,CAACJ;IACtB,CAAC,CAAC;IAFMD,WAAW,mBAAXA,WAAW;IAAEC,UAAU,mBAAVA,UAAU;IAAEH,kBAAkB,mBAAlBA,kBAAkB;IAAEK,aAAa,mBAAbA,aAAa;EAIlE,oBACI,6BAAC,0BAA0B;IAAC,CAAC,EAAE;EAAE,GAC5BL,kBAAkB,gBACf,6BAAC,8BAAc;IAAC,UAAU,EAAEG,UAAW;IAAC,OAAO,EAAEE;EAAc,EAAG,GAClE,IAAI,eACR,6BAAC,uBAAe;IAAC,OAAO,EAAEH;EAAY,GAAC,kBAAgB,CAAkB,eACzE,6BAAC,IAAI,qBACD,6BAAC,oBAAQ,OAAG,eACZ,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAU,GAAC,0DAE5B,CAAa,CACV,CACkB;AAErC,CAAC;AAAC;AAEK,IAAMM,eAAe,GAAG,SAAlBA,eAAe,CAAID,KAAuB,EAAK;EACxD,uBAAuEV,cAAc,CAAC;MAClFM,UAAU,EAAEI,KAAK,CAACJ;IACtB,CAAC,CAAC;IAFMD,WAAW,oBAAXA,WAAW;IAAEC,UAAU,oBAAVA,UAAU;IAAEH,kBAAkB,oBAAlBA,kBAAkB;IAAEK,aAAa,oBAAbA,aAAa;EAIlE,oBACI,6BAAC,wBAAwB,QACpBL,kBAAkB,gBACf,6BAAC,8BAAc;IAAC,UAAU,EAAEG,UAAW;IAAC,OAAO,EAAEE;EAAc,EAAG,GAClE,IAAI,eACR,6BAAC,kBAAU;IAAC,OAAO,EAAEH,WAAY;IAAC,IAAI,eAAE,6BAAC,kCAAO;EAAI,EAAG,CAChC;AAEnC,CAAC;AAAC"}
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const DynamicZone: () => JSX.Element;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.DynamicZone = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _Accordion = require("@webiny/ui/Accordion");
13
+ var _AddTemplate = require("./AddTemplate");
14
+ var _DynamicZoneTemplate = require("./DynamicZoneTemplate");
15
+ var _hooks = require("../../../hooks");
16
+ function updateOrCreateTemplate(templates, template) {
17
+ var templateIndex = templates.findIndex(function (tpl) {
18
+ return tpl.id === template.id;
19
+ });
20
+ if (templateIndex > -1) {
21
+ return [].concat((0, _toConsumableArray2.default)(templates.slice(0, templateIndex)), [template], (0, _toConsumableArray2.default)(templates.slice(templateIndex + 1)));
22
+ }
23
+ return [].concat((0, _toConsumableArray2.default)(templates), [template]);
24
+ }
25
+ var DynamicZone = function DynamicZone() {
26
+ var _field$settings;
27
+ var _useModelField = (0, _hooks.useModelField)(),
28
+ field = _useModelField.field;
29
+ var _useModelFieldEditor = (0, _hooks.useModelFieldEditor)(),
30
+ updateField = _useModelFieldEditor.updateField;
31
+ var newTemplateId = (0, _react.useRef)(undefined);
32
+ var templates = ((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.templates) || [];
33
+ var onTemplate = function onTemplate(template) {
34
+ var _field$settings2;
35
+ var templates = ((_field$settings2 = field.settings) === null || _field$settings2 === void 0 ? void 0 : _field$settings2.templates) || [];
36
+ newTemplateId.current = template.id;
37
+ updateField((0, _objectSpread2.default)((0, _objectSpread2.default)({}, field), {}, {
38
+ settings: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, field.settings || {}), {}, {
39
+ templates: updateOrCreateTemplate(templates, template)
40
+ })
41
+ }));
42
+ };
43
+ (0, _react.useEffect)(function () {
44
+ // We only want to open the accordion item on first mount of a new template.
45
+ newTemplateId.current = undefined;
46
+ }, []);
47
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, templates.length ? /*#__PURE__*/_react.default.createElement(_Accordion.Accordion, null, templates.map(function (template, index) {
48
+ return /*#__PURE__*/_react.default.createElement(_DynamicZoneTemplate.DynamicZoneTemplate, {
49
+ key: template.id,
50
+ open: template.id === newTemplateId.current,
51
+ index: index,
52
+ field: field,
53
+ template: template,
54
+ onChange: updateField
55
+ });
56
+ })) : null, templates.length ? /*#__PURE__*/_react.default.createElement(_AddTemplate.AddTemplateIcon, {
57
+ onTemplate: onTemplate
58
+ }) : /*#__PURE__*/_react.default.createElement(_AddTemplate.AddTemplateButton, {
59
+ onTemplate: onTemplate
60
+ }));
61
+ };
62
+ exports.DynamicZone = DynamicZone;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["updateOrCreateTemplate","templates","template","templateIndex","findIndex","tpl","id","slice","DynamicZone","useModelField","field","useModelFieldEditor","updateField","newTemplateId","useRef","undefined","settings","onTemplate","current","useEffect","length","map","index"],"sources":["DynamicZone.tsx"],"sourcesContent":["import React, { useRef, useEffect } from \"react\";\nimport { Accordion } from \"@webiny/ui/Accordion\";\nimport { CmsDynamicZoneTemplate } from \"~/types\";\nimport { AddTemplateIcon, AddTemplateButton } from \"./AddTemplate\";\nimport { DynamicZoneTemplate } from \"./DynamicZoneTemplate\";\nimport { useModelField, useModelFieldEditor } from \"~/admin/hooks\";\n\nfunction updateOrCreateTemplate(\n templates: CmsDynamicZoneTemplate[],\n template: CmsDynamicZoneTemplate\n) {\n const templateIndex = templates.findIndex(tpl => tpl.id === template.id);\n\n if (templateIndex > -1) {\n return [\n ...templates.slice(0, templateIndex),\n template,\n ...templates.slice(templateIndex + 1)\n ];\n }\n\n return [...templates, template];\n}\n\nexport const DynamicZone = () => {\n const { field } = useModelField();\n const { updateField } = useModelFieldEditor();\n const newTemplateId = useRef<string | undefined>(undefined);\n\n const templates: CmsDynamicZoneTemplate[] = field.settings?.templates || [];\n\n const onTemplate = (template: CmsDynamicZoneTemplate) => {\n const templates = field.settings?.templates || [];\n\n newTemplateId.current = template.id;\n\n updateField({\n ...field,\n settings: {\n ...(field.settings || {}),\n templates: updateOrCreateTemplate(templates, template)\n }\n });\n };\n\n useEffect(() => {\n // We only want to open the accordion item on first mount of a new template.\n newTemplateId.current = undefined;\n }, []);\n\n return (\n <>\n {templates.length ? (\n <Accordion>\n {templates.map((template, index) => (\n <DynamicZoneTemplate\n key={template.id}\n open={template.id === newTemplateId.current}\n index={index}\n field={field}\n template={template}\n onChange={updateField}\n />\n ))}\n </Accordion>\n ) : null}\n {templates.length ? (\n <AddTemplateIcon onTemplate={onTemplate} />\n ) : (\n <AddTemplateButton onTemplate={onTemplate} />\n )}\n </>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AAEA;AACA;AACA;AAEA,SAASA,sBAAsB,CAC3BC,SAAmC,EACnCC,QAAgC,EAClC;EACE,IAAMC,aAAa,GAAGF,SAAS,CAACG,SAAS,CAAC,UAAAC,GAAG;IAAA,OAAIA,GAAG,CAACC,EAAE,KAAKJ,QAAQ,CAACI,EAAE;EAAA,EAAC;EAExE,IAAIH,aAAa,GAAG,CAAC,CAAC,EAAE;IACpB,kDACOF,SAAS,CAACM,KAAK,CAAC,CAAC,EAAEJ,aAAa,CAAC,IACpCD,QAAQ,oCACLD,SAAS,CAACM,KAAK,CAACJ,aAAa,GAAG,CAAC,CAAC;EAE7C;EAEA,kDAAWF,SAAS,IAAEC,QAAQ;AAClC;AAEO,IAAMM,WAAW,GAAG,SAAdA,WAAW,GAAS;EAAA;EAC7B,qBAAkB,IAAAC,oBAAa,GAAE;IAAzBC,KAAK,kBAALA,KAAK;EACb,2BAAwB,IAAAC,0BAAmB,GAAE;IAArCC,WAAW,wBAAXA,WAAW;EACnB,IAAMC,aAAa,GAAG,IAAAC,aAAM,EAAqBC,SAAS,CAAC;EAE3D,IAAMd,SAAmC,GAAG,oBAAAS,KAAK,CAACM,QAAQ,oDAAd,gBAAgBf,SAAS,KAAI,EAAE;EAE3E,IAAMgB,UAAU,GAAG,SAAbA,UAAU,CAAIf,QAAgC,EAAK;IAAA;IACrD,IAAMD,SAAS,GAAG,qBAAAS,KAAK,CAACM,QAAQ,qDAAd,iBAAgBf,SAAS,KAAI,EAAE;IAEjDY,aAAa,CAACK,OAAO,GAAGhB,QAAQ,CAACI,EAAE;IAEnCM,WAAW,6DACJF,KAAK;MACRM,QAAQ,8DACAN,KAAK,CAACM,QAAQ,IAAI,CAAC,CAAC;QACxBf,SAAS,EAAED,sBAAsB,CAACC,SAAS,EAAEC,QAAQ;MAAC;IACzD,GACH;EACN,CAAC;EAED,IAAAiB,gBAAS,EAAC,YAAM;IACZ;IACAN,aAAa,CAACK,OAAO,GAAGH,SAAS;EACrC,CAAC,EAAE,EAAE,CAAC;EAEN,oBACI,4DACKd,SAAS,CAACmB,MAAM,gBACb,6BAAC,oBAAS,QACLnB,SAAS,CAACoB,GAAG,CAAC,UAACnB,QAAQ,EAAEoB,KAAK;IAAA,oBAC3B,6BAAC,wCAAmB;MAChB,GAAG,EAAEpB,QAAQ,CAACI,EAAG;MACjB,IAAI,EAAEJ,QAAQ,CAACI,EAAE,KAAKO,aAAa,CAACK,OAAQ;MAC5C,KAAK,EAAEI,KAAM;MACb,KAAK,EAAEZ,KAAM;MACb,QAAQ,EAAER,QAAS;MACnB,QAAQ,EAAEU;IAAY,EACxB;EAAA,CACL,CAAC,CACM,GACZ,IAAI,EACPX,SAAS,CAACmB,MAAM,gBACb,6BAAC,4BAAe;IAAC,UAAU,EAAEH;EAAW,EAAG,gBAE3C,6BAAC,8BAAiB;IAAC,UAAU,EAAEA;EAAW,EAC7C,CACF;AAEX,CAAC;AAAC"}
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { CmsDynamicZoneTemplate, CmsModelField } from "../../../../types";
3
+ interface DynamicZoneTemplateProps {
4
+ index: number;
5
+ field: CmsModelField;
6
+ template: CmsDynamicZoneTemplate;
7
+ onChange: (field: CmsModelField) => void;
8
+ open: boolean;
9
+ }
10
+ export declare const DynamicZoneTemplate: ({ index, field, template, onChange, open }: DynamicZoneTemplateProps) => JSX.Element;
11
+ export {};
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.DynamicZoneTemplate = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _dotPropImmutable = require("dot-prop-immutable");
13
+ var _reactFontawesome = require("@fortawesome/react-fontawesome");
14
+ var _edit = require("@material-design-icons/svg/outlined/edit.svg");
15
+ var _delete_outline = require("@material-design-icons/svg/outlined/delete_outline.svg");
16
+ var _expand_less = require("@material-design-icons/svg/round/expand_less.svg");
17
+ var _expand_more = require("@material-design-icons/svg/round/expand_more.svg");
18
+ var _Accordion = require("@webiny/ui/Accordion");
19
+ var _appAdmin = require("@webiny/app-admin");
20
+ var _arrayUtils = require("../../arrayUtils");
21
+ var _TemplateDialog = require("./TemplateDialog");
22
+ var _FieldEditor = require("../../../components/FieldEditor");
23
+ var TEMPLATES_PATH = "settings.templates";
24
+ var DynamicZoneTemplate = function DynamicZoneTemplate(_ref) {
25
+ var _field$settings;
26
+ var index = _ref.index,
27
+ field = _ref.field,
28
+ template = _ref.template,
29
+ onChange = _ref.onChange,
30
+ open = _ref.open;
31
+ var _useConfirmationDialo = (0, _appAdmin.useConfirmationDialog)({
32
+ title: "Delete content template",
33
+ message: "Are you sure you want to delete this content template?",
34
+ acceptLabel: "Yes, I'm sure!"
35
+ }),
36
+ showConfirmation = _useConfirmationDialo.showConfirmation;
37
+ var _useState = (0, _react.useState)(undefined),
38
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
39
+ templateToEdit = _useState2[0],
40
+ setTemplateToEdit = _useState2[1];
41
+ var templates = ((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.templates) || [];
42
+ var isFirst = index === 0;
43
+ var isLast = index === templates.length - 1;
44
+ var callbackDeps = [onChange, field, index, template.id];
45
+ var onDialogClose = (0, _react.useCallback)(function () {
46
+ setTemplateToEdit(undefined);
47
+ }, []);
48
+ var editTemplate = (0, _react.useCallback)(function () {
49
+ setTemplateToEdit(template);
50
+ }, [template]);
51
+ var updateTemplate = (0, _react.useCallback)(function (params) {
52
+ onChange((0, _dotPropImmutable.set)(field, "".concat(TEMPLATES_PATH, ".").concat(index), function (tpl) {
53
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, tpl), params);
54
+ }));
55
+ }, callbackDeps);
56
+ var updateFieldsAndLayout = (0, _react.useCallback)(function (params) {
57
+ updateTemplate((0, _objectSpread2.default)((0, _objectSpread2.default)({}, template), params));
58
+ }, [updateTemplate]);
59
+ var moveTemplateUp = (0, _react.useCallback)(function () {
60
+ onChange((0, _dotPropImmutable.set)(field, TEMPLATES_PATH, (0, _arrayUtils.pullValueAtIndex)(templates, index)));
61
+ }, callbackDeps);
62
+ var moveTemplateDown = (0, _react.useCallback)(function () {
63
+ onChange((0, _dotPropImmutable.set)(field, TEMPLATES_PATH, (0, _arrayUtils.pushValueAtIndex)(templates, index)));
64
+ }, callbackDeps);
65
+ var deleteTemplate = (0, _react.useCallback)(function () {
66
+ showConfirmation(function () {
67
+ onChange((0, _dotPropImmutable.set)(field, TEMPLATES_PATH, (0, _arrayUtils.removeValueAtIndex)(templates, index)));
68
+ });
69
+ }, callbackDeps);
70
+ var icon = template.icon ? template.icon.split("/") : undefined;
71
+ return /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem, {
72
+ title: template.name,
73
+ description: template.description,
74
+ icon: icon ? /*#__PURE__*/_react.default.createElement(_reactFontawesome.FontAwesomeIcon, {
75
+ icon: icon
76
+ }) : undefined,
77
+ open: open,
78
+ actions: /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Actions, null, /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Action, {
79
+ icon: /*#__PURE__*/_react.default.createElement(_expand_less.ReactComponent, null),
80
+ onClick: moveTemplateUp,
81
+ disabled: isFirst
82
+ }), /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Action, {
83
+ icon: /*#__PURE__*/_react.default.createElement(_expand_more.ReactComponent, null),
84
+ onClick: moveTemplateDown,
85
+ disabled: isLast
86
+ }), /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Divider, null), /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Action, {
87
+ icon: /*#__PURE__*/_react.default.createElement(_edit.ReactComponent, null),
88
+ onClick: editTemplate
89
+ }), /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem.Action, {
90
+ icon: /*#__PURE__*/_react.default.createElement(_delete_outline.ReactComponent, null),
91
+ onClick: deleteTemplate
92
+ }))
93
+ }, templateToEdit ? /*#__PURE__*/_react.default.createElement(_TemplateDialog.TemplateDialog, {
94
+ template: templateToEdit,
95
+ onTemplate: updateTemplate,
96
+ onClose: onDialogClose
97
+ }) : null, /*#__PURE__*/_react.default.createElement(_FieldEditor.FieldEditor, {
98
+ parent: field,
99
+ fields: template.fields,
100
+ layout: template.layout,
101
+ onChange: updateFieldsAndLayout
102
+ }));
103
+ };
104
+ exports.DynamicZoneTemplate = DynamicZoneTemplate;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TEMPLATES_PATH","DynamicZoneTemplate","index","field","template","onChange","open","useConfirmationDialog","title","message","acceptLabel","showConfirmation","useState","undefined","templateToEdit","setTemplateToEdit","templates","settings","isFirst","isLast","length","callbackDeps","id","onDialogClose","useCallback","editTemplate","updateTemplate","params","set","tpl","updateFieldsAndLayout","moveTemplateUp","pullValueAtIndex","moveTemplateDown","pushValueAtIndex","deleteTemplate","removeValueAtIndex","icon","split","name","description","fields","layout"],"sources":["DynamicZoneTemplate.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { set } from \"dot-prop-immutable\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { IconProp } from \"@fortawesome/fontawesome-svg-core\";\nimport { ReactComponent as EditIcon } from \"@material-design-icons/svg/outlined/edit.svg\";\nimport { ReactComponent as DeleteIcon } from \"@material-design-icons/svg/outlined/delete_outline.svg\";\nimport { ReactComponent as ArrowUpIcon } from \"@material-design-icons/svg/round/expand_less.svg\";\nimport { ReactComponent as ArrowDownIcon } from \"@material-design-icons/svg/round/expand_more.svg\";\nimport { AccordionItem } from \"@webiny/ui/Accordion\";\nimport { useConfirmationDialog } from \"@webiny/app-admin\";\nimport { pullValueAtIndex, pushValueAtIndex, removeValueAtIndex } from \"~/admin/plugins/arrayUtils\";\nimport { CmsDynamicZoneTemplate, CmsEditorFieldsLayout, CmsModelField } from \"~/types\";\nimport { TemplateDialog } from \"./TemplateDialog\";\nimport { FieldEditor } from \"~/admin/components/FieldEditor\";\n\ninterface DynamicZoneTemplateProps {\n index: number;\n field: CmsModelField;\n template: CmsDynamicZoneTemplate;\n onChange: (field: CmsModelField) => void;\n open: boolean;\n}\n\ninterface UpdateTemplate {\n (template: CmsDynamicZoneTemplate): void;\n}\n\ninterface UpdateFieldsAndLayout {\n (params: { fields: CmsModelField[]; layout: CmsEditorFieldsLayout }): void;\n}\n\nconst TEMPLATES_PATH = \"settings.templates\";\n\nexport const DynamicZoneTemplate = ({\n index,\n field,\n template,\n onChange,\n open\n}: DynamicZoneTemplateProps) => {\n const { showConfirmation } = useConfirmationDialog({\n title: \"Delete content template\",\n message: \"Are you sure you want to delete this content template?\",\n acceptLabel: \"Yes, I'm sure!\"\n });\n\n const [templateToEdit, setTemplateToEdit] = useState<CmsDynamicZoneTemplate | undefined>(\n undefined\n );\n\n const templates = field.settings?.templates || [];\n const isFirst = index === 0;\n const isLast = index === templates.length - 1;\n\n const callbackDeps = [onChange, field, index, template.id];\n\n const onDialogClose = useCallback(() => {\n setTemplateToEdit(undefined);\n }, []);\n\n const editTemplate = useCallback(() => {\n setTemplateToEdit(template);\n }, [template]);\n\n const updateTemplate = useCallback<UpdateTemplate>(params => {\n onChange(\n set(field, `${TEMPLATES_PATH}.${index}`, (tpl: CmsDynamicZoneTemplate) => {\n return { ...tpl, ...params };\n })\n );\n }, callbackDeps);\n\n const updateFieldsAndLayout = useCallback<UpdateFieldsAndLayout>(\n params => {\n updateTemplate({ ...template, ...params });\n },\n [updateTemplate]\n );\n\n const moveTemplateUp = useCallback(() => {\n onChange(set(field, TEMPLATES_PATH, pullValueAtIndex(templates, index)));\n }, callbackDeps);\n\n const moveTemplateDown = useCallback(() => {\n onChange(set(field, TEMPLATES_PATH, pushValueAtIndex(templates, index)));\n }, callbackDeps);\n\n const deleteTemplate = useCallback(() => {\n showConfirmation(() => {\n onChange(set(field, TEMPLATES_PATH, removeValueAtIndex(templates, index)));\n });\n }, callbackDeps);\n\n const icon = template.icon ? (template.icon.split(\"/\") as IconProp) : undefined;\n\n return (\n <AccordionItem\n title={template.name}\n description={template.description}\n icon={icon ? <FontAwesomeIcon icon={icon} /> : undefined}\n open={open}\n actions={\n <AccordionItem.Actions>\n <AccordionItem.Action\n icon={<ArrowUpIcon />}\n onClick={moveTemplateUp}\n disabled={isFirst}\n />\n <AccordionItem.Action\n icon={<ArrowDownIcon />}\n onClick={moveTemplateDown}\n disabled={isLast}\n />\n <AccordionItem.Divider />\n <AccordionItem.Action icon={<EditIcon />} onClick={editTemplate} />\n <AccordionItem.Action icon={<DeleteIcon />} onClick={deleteTemplate} />\n </AccordionItem.Actions>\n }\n >\n {templateToEdit ? (\n <TemplateDialog\n template={templateToEdit}\n onTemplate={updateTemplate}\n onClose={onDialogClose}\n />\n ) : null}\n\n <FieldEditor\n parent={field}\n fields={template.fields}\n layout={template.layout}\n onChange={updateFieldsAndLayout}\n />\n </AccordionItem>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { CmsDynamicZoneTemplate } from "../../../../types";
3
+ interface TemplateDialogProps {
4
+ onClose: () => void;
5
+ template?: CmsDynamicZoneTemplate;
6
+ onTemplate: (template: CmsDynamicZoneTemplate) => void;
7
+ }
8
+ export declare const TemplateDialog: (props: TemplateDialogProps) => JSX.Element;
9
+ export {};
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.TemplateDialog = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _Button = require("@webiny/ui/Button");
13
+ var _Grid = require("@webiny/ui/Grid");
14
+ var _Input = require("@webiny/ui/Input");
15
+ var _form = require("@webiny/form");
16
+ var _validation = require("@webiny/validation");
17
+ var _utils = require("@webiny/utils");
18
+ var _IconPicker = require("../../../components/IconPicker");
19
+ var _Dialog = require("../../../components/Dialog");
20
+ var _Alert = require("@webiny/ui/Alert");
21
+ var typeNameValidator = function typeNameValidator(value) {
22
+ var regex = new RegExp("^[A-Z]+[_0-9A-Za-z]+$");
23
+ if (regex.test(value)) {
24
+ return true;
25
+ }
26
+ throw Error("Must start with a capital letter, may contain numbers, and must not contain spaces.");
27
+ };
28
+ var getGraphQLTypeName = function getGraphQLTypeName(value) {
29
+ var titleCase = value.charAt(0).toUpperCase() + value.slice(1);
30
+ return titleCase.replace(/[^a-zA-Z0-9]/g, "");
31
+ };
32
+ var TemplateDialog = function TemplateDialog(props) {
33
+ var _useState = (0, _react.useState)(false),
34
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
35
+ showWarning = _useState2[0],
36
+ setWarning = _useState2[1];
37
+ var newTemplate = !Boolean(props.template);
38
+ var dialogTitle = newTemplate ? "Add Template" : "Edit Template";
39
+ var submitLabel = newTemplate ? "Add Template" : "Update Template";
40
+ var onSubmit = function onSubmit(template) {
41
+ if (template.id) {
42
+ props.onTemplate(template);
43
+ } else {
44
+ props.onTemplate((0, _objectSpread2.default)((0, _objectSpread2.default)({}, template), {}, {
45
+ id: (0, _utils.generateAlphaNumericLowerCaseId)(),
46
+ fields: [],
47
+ layout: []
48
+ }));
49
+ }
50
+ props.onClose();
51
+ };
52
+ var showGqlTypeNameWarning = function showGqlTypeNameWarning() {
53
+ setWarning(true);
54
+ };
55
+ var hideGqlTypeNameWarning = function hideGqlTypeNameWarning() {
56
+ setWarning(false);
57
+ };
58
+ var checkGqlType = function checkGqlType(data) {
59
+ var _props$template;
60
+ if (newTemplate) {
61
+ return;
62
+ }
63
+ if (data.gqlTypeName !== ((_props$template = props.template) === null || _props$template === void 0 ? void 0 : _props$template.gqlTypeName)) {
64
+ showGqlTypeNameWarning();
65
+ } else {
66
+ hideGqlTypeNameWarning();
67
+ }
68
+ };
69
+ var nameOnBlur = function nameOnBlur(form) {
70
+ return function () {
71
+ if (!form.data.gqlTypeName) {
72
+ /**
73
+ * There is a possibility that name is undefined, so let's check for it.
74
+ */
75
+ var name = form.data.name;
76
+ if (!name) {
77
+ return;
78
+ }
79
+ form.setValue("gqlTypeName", getGraphQLTypeName(name));
80
+ }
81
+ };
82
+ };
83
+ var onFormChange = function onFormChange(data, form) {
84
+ checkGqlType(data, form);
85
+ };
86
+ return /*#__PURE__*/_react.default.createElement(_Dialog.Dialog, {
87
+ open: true,
88
+ onClose: props.onClose
89
+ }, /*#__PURE__*/_react.default.createElement(_form.Form, {
90
+ onSubmit: onSubmit,
91
+ data: props.template,
92
+ onChange: onFormChange
93
+ }, function (_ref) {
94
+ var Bind = _ref.Bind,
95
+ submit = _ref.submit,
96
+ form = _ref.form;
97
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Dialog.DialogTitle, null, dialogTitle), /*#__PURE__*/_react.default.createElement(_Dialog.DialogContent, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, showWarning ? /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
98
+ span: 12
99
+ }, /*#__PURE__*/_react.default.createElement(_Alert.Alert, {
100
+ title: "GraphQL Schema Change",
101
+ type: "danger"
102
+ }, "You've changed the GraphQL schema type name! If your API is being queried by a 3rd party application, this will affect the GraphQL queries in those applications. Make sure your consumers are informed about this change!")) : null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
103
+ span: 12
104
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
105
+ name: "name",
106
+ validators: [_validation.validation.create("required")]
107
+ }, /*#__PURE__*/_react.default.createElement(_Input.Input, {
108
+ label: "Name",
109
+ onBlur: nameOnBlur(form)
110
+ }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
111
+ span: 12
112
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
113
+ name: "gqlTypeName",
114
+ validators: [_validation.validation.create("required"), typeNameValidator]
115
+ }, /*#__PURE__*/_react.default.createElement(_Input.Input, {
116
+ autoFocus: false,
117
+ label: "GraphQL Type Name",
118
+ description: "This string will be used to generate the GraphQL schema. "
119
+ }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
120
+ span: 12
121
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
122
+ name: "icon",
123
+ validators: [_validation.validation.create("required")]
124
+ }, /*#__PURE__*/_react.default.createElement(_IconPicker.IconPicker, {
125
+ label: "Icon"
126
+ }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
127
+ span: 12
128
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
129
+ name: "description",
130
+ validators: [_validation.validation.create("required")]
131
+ }, /*#__PURE__*/_react.default.createElement(_Input.Input, {
132
+ rows: 3,
133
+ label: "Description"
134
+ }))))), /*#__PURE__*/_react.default.createElement(_Dialog.DialogActions, null, /*#__PURE__*/_react.default.createElement(_Button.ButtonDefault, {
135
+ onClick: props.onClose
136
+ }, "Cancel"), /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
137
+ onClick: submit
138
+ }, submitLabel)));
139
+ }));
140
+ };
141
+ exports.TemplateDialog = TemplateDialog;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["typeNameValidator","value","regex","RegExp","test","Error","getGraphQLTypeName","titleCase","charAt","toUpperCase","slice","replace","TemplateDialog","props","useState","showWarning","setWarning","newTemplate","Boolean","template","dialogTitle","submitLabel","onSubmit","id","onTemplate","generateAlphaNumericLowerCaseId","fields","layout","onClose","showGqlTypeNameWarning","hideGqlTypeNameWarning","checkGqlType","data","gqlTypeName","nameOnBlur","form","name","setValue","onFormChange","Bind","submit","validation","create"],"sources":["TemplateDialog.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { ButtonPrimary, ButtonDefault } from \"@webiny/ui/Button\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Form, FormAPI, FormOnSubmit } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { CmsDynamicZoneTemplate } from \"~/types\";\nimport { generateAlphaNumericLowerCaseId } from \"@webiny/utils\";\nimport { IconPicker } from \"~/admin/components/IconPicker\";\nimport { Dialog, DialogTitle, DialogContent, DialogActions } from \"~/admin/components/Dialog\";\nimport { Alert } from \"@webiny/ui/Alert\";\n\nconst typeNameValidator = (value: string) => {\n const regex = new RegExp(\"^[A-Z]+[_0-9A-Za-z]+$\");\n if (regex.test(value)) {\n return true;\n }\n\n throw Error(\n `Must start with a capital letter, may contain numbers, and must not contain spaces.`\n );\n};\n\nconst getGraphQLTypeName = (value: string) => {\n const titleCase = value.charAt(0).toUpperCase() + value.slice(1);\n return titleCase.replace(/[^a-zA-Z0-9]/g, \"\");\n};\n\ninterface TemplateDialogProps {\n onClose: () => void;\n template?: CmsDynamicZoneTemplate;\n onTemplate: (template: CmsDynamicZoneTemplate) => void;\n}\n\nexport const TemplateDialog = (props: TemplateDialogProps) => {\n const [showWarning, setWarning] = useState(false);\n const newTemplate = !Boolean(props.template);\n const dialogTitle = newTemplate ? \"Add Template\" : \"Edit Template\";\n const submitLabel = newTemplate ? \"Add Template\" : \"Update Template\";\n\n const onSubmit: FormOnSubmit<CmsDynamicZoneTemplate> = template => {\n if (template.id) {\n props.onTemplate(template);\n } else {\n props.onTemplate({\n ...template,\n id: generateAlphaNumericLowerCaseId(),\n fields: [],\n layout: []\n });\n }\n props.onClose();\n };\n\n const showGqlTypeNameWarning = () => {\n setWarning(true);\n };\n\n const hideGqlTypeNameWarning = () => {\n setWarning(false);\n };\n\n const checkGqlType: FormOnSubmit<CmsDynamicZoneTemplate> = data => {\n if (newTemplate) {\n return;\n }\n\n if (data.gqlTypeName !== props.template?.gqlTypeName) {\n showGqlTypeNameWarning();\n } else {\n hideGqlTypeNameWarning();\n }\n };\n\n const nameOnBlur = (form: FormAPI<CmsDynamicZoneTemplate>) => () => {\n if (!form.data.gqlTypeName) {\n /**\n * There is a possibility that name is undefined, so let's check for it.\n */\n const name = form.data.name;\n if (!name) {\n return;\n }\n form.setValue(\"gqlTypeName\", getGraphQLTypeName(name));\n }\n };\n\n const onFormChange: FormOnSubmit<CmsDynamicZoneTemplate> = (data, form) => {\n checkGqlType(data, form);\n };\n\n return (\n <Dialog open={true} onClose={props.onClose}>\n <Form<CmsDynamicZoneTemplate>\n onSubmit={onSubmit}\n data={props.template}\n onChange={onFormChange}\n >\n {({ Bind, submit, form }) => (\n <>\n <DialogTitle>{dialogTitle}</DialogTitle>\n <DialogContent>\n <Grid>\n {showWarning ? (\n <Cell span={12}>\n <Alert title={\"GraphQL Schema Change\"} type={\"danger\"}>\n You&apos;ve changed the GraphQL schema type name! If\n your API is being queried by a 3rd party application,\n this will affect the GraphQL queries in those\n applications. Make sure your consumers are informed\n about this change!\n </Alert>\n </Cell>\n ) : null}\n <Cell span={12}>\n <Bind\n name={\"name\"}\n validators={[validation.create(\"required\")]}\n >\n <Input label={\"Name\"} onBlur={nameOnBlur(form)} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind\n name={\"gqlTypeName\"}\n validators={[\n validation.create(\"required\"),\n typeNameValidator\n ]}\n >\n <Input\n autoFocus={false}\n label={\"GraphQL Type Name\"}\n description={\n \"This string will be used to generate the GraphQL schema. \"\n }\n />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind\n name={\"icon\"}\n validators={[validation.create(\"required\")]}\n >\n <IconPicker label={\"Icon\"} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind\n name={\"description\"}\n validators={[validation.create(\"required\")]}\n >\n <Input rows={3} label={\"Description\"} />\n </Bind>\n </Cell>\n </Grid>\n </DialogContent>\n <DialogActions>\n <ButtonDefault onClick={props.onClose}>Cancel</ButtonDefault>\n <ButtonPrimary onClick={submit}>{submitLabel}</ButtonPrimary>\n </DialogActions>\n </>\n )}\n </Form>\n </Dialog>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { CmsModelFieldValidatorConfig } from "../../../../types";
2
+ export declare const commonValidators: CmsModelFieldValidatorConfig[];
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.commonValidators = void 0;
7
+ var commonValidators = [{
8
+ name: "minLength",
9
+ label: "Minimum number of entries",
10
+ description: "Define the minimum number of entries a user must create.",
11
+ defaultMessage: "You must create at least {value} entries.",
12
+ variables: [{
13
+ name: "value",
14
+ description: "This defines the minimum number of entries a user must create."
15
+ }]
16
+ }, {
17
+ name: "maxLength",
18
+ label: "Maximum number of entries",
19
+ description: "Define the maximum number of entries a user can create.",
20
+ defaultMessage: "You have too many entries (max: {value}).",
21
+ variables: [{
22
+ name: "value",
23
+ description: "This defines the maximum number of entries a user can create."
24
+ }]
25
+ }];
26
+ exports.commonValidators = commonValidators;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["commonValidators","name","label","description","defaultMessage","variables"],"sources":["commonValidators.ts"],"sourcesContent":["import { CmsModelFieldValidatorConfig } from \"~/types\";\n\nexport const commonValidators: CmsModelFieldValidatorConfig[] = [\n {\n name: \"minLength\",\n label: \"Minimum number of entries\",\n description: \"Define the minimum number of entries a user must create.\",\n defaultMessage: \"You must create at least {value} entries.\",\n variables: [\n {\n name: \"value\",\n description: \"This defines the minimum number of entries a user must create.\"\n }\n ]\n },\n {\n name: \"maxLength\",\n label: \"Maximum number of entries\",\n description: \"Define the maximum number of entries a user can create.\",\n defaultMessage: \"You have too many entries (max: {value}).\",\n variables: [\n {\n name: \"value\",\n description: \"This defines the maximum number of entries a user can create.\"\n }\n ]\n }\n];\n"],"mappings":";;;;;;AAEO,IAAMA,gBAAgD,GAAG,CAC5D;EACIC,IAAI,EAAE,WAAW;EACjBC,KAAK,EAAE,2BAA2B;EAClCC,WAAW,EAAE,0DAA0D;EACvEC,cAAc,EAAE,2CAA2C;EAC3DC,SAAS,EAAE,CACP;IACIJ,IAAI,EAAE,OAAO;IACbE,WAAW,EAAE;EACjB,CAAC;AAET,CAAC,EACD;EACIF,IAAI,EAAE,WAAW;EACjBC,KAAK,EAAE,2BAA2B;EAClCC,WAAW,EAAE,yDAAyD;EACtEC,cAAc,EAAE,2CAA2C;EAC3DC,SAAS,EAAE,CACP;IACIJ,IAAI,EAAE,OAAO;IACbE,WAAW,EAAE;EACjB,CAAC;AAET,CAAC,CACJ;AAAC"}
@@ -0,0 +1,2 @@
1
+ import { CmsEditorFieldTypePlugin } from "../../../types";
2
+ export declare const dynamicZoneField: CmsEditorFieldTypePlugin;
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.dynamicZoneField = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _dynamic_form = require("@material-design-icons/svg/outlined/dynamic_form.svg");
11
+ var _i18n = require("@webiny/app/i18n");
12
+ var _DynamicZone = require("./dynamicZone/DynamicZone");
13
+ var _createFieldsList = require("../../graphql/createFieldsList");
14
+ var _createTypeName = require("../../../utils/createTypeName");
15
+ var _commonValidators = require("./dynamicZone/commonValidators");
16
+ var _templateObject, _templateObject2, _templateObject3;
17
+ var t = _i18n.i18n.ns("app-headless-cms/admin/fields");
18
+ var listValidators = {
19
+ validators: _commonValidators.commonValidators,
20
+ title: "List validators",
21
+ description: "These validators are applied to the entire dynamic zone."
22
+ };
23
+ var dynamicZoneField = {
24
+ type: "cms-editor-field-type",
25
+ name: "cms-editor-field-type-dynamic-zone",
26
+ field: {
27
+ type: "dynamicZone",
28
+ label: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Dynamic Zone"]))),
29
+ description: t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Define content templates to be used during content creation."]))),
30
+ icon: /*#__PURE__*/_react.default.createElement(_dynamic_form.ReactComponent, null),
31
+ allowMultipleValues: true,
32
+ allowPredefinedValues: false,
33
+ validators: function validators(field) {
34
+ if (field.multipleValues) {
35
+ return {
36
+ validators: ["dynamicZone"],
37
+ title: "Template Validators",
38
+ description: "Validators for each of the templates in this dynamic zone."
39
+ };
40
+ }
41
+ return ["required"];
42
+ },
43
+ listValidators: listValidators,
44
+ canAccept: function canAccept(_, draggable) {
45
+ return draggable.fieldType !== "dynamicZone";
46
+ },
47
+ multipleValuesLabel: t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Use as a list of values"]))),
48
+ createField: function createField() {
49
+ return {
50
+ type: this.type,
51
+ listValidation: [{
52
+ name: "dynamicZone"
53
+ }],
54
+ settings: {
55
+ templates: []
56
+ },
57
+ renderer: {
58
+ name: "dynamicZone"
59
+ }
60
+ };
61
+ },
62
+ render: function render() {
63
+ return /*#__PURE__*/_react.default.createElement(_DynamicZone.DynamicZone, null);
64
+ },
65
+ graphql: {
66
+ queryField: function queryField(_ref) {
67
+ var _field$settings;
68
+ var model = _ref.model,
69
+ field = _ref.field;
70
+ var prefix = "".concat(model.singularApiName, "_").concat((0, _createTypeName.createTypeName)(field.fieldId));
71
+ var templates = ((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.templates) || [];
72
+ var fragments = templates.map(function (template) {
73
+ return "...on ".concat(prefix, "_").concat(template.gqlTypeName, " {\n ").concat((0, _createFieldsList.createFieldsList)({
74
+ model: model,
75
+ fields: template.fields || []
76
+ }), "\n _templateId\n __typename\n }");
77
+ });
78
+ return "{ ".concat(fragments.join("\n"), " }");
79
+ }
80
+ }
81
+ }
82
+ };
83
+ exports.dynamicZoneField = dynamicZoneField;