@webiny/app-headless-cms 5.33.5-beta.0 → 5.34.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (461) hide show
  1. package/HeadlessCMS.js +4 -0
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntryForm/ContentEntryForm.js +35 -32
  4. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  5. package/admin/components/ContentEntryForm/Fields.d.ts +2 -2
  6. package/admin/components/ContentEntryForm/Fields.js.map +1 -1
  7. package/admin/components/ContentEntryForm/Label.js +1 -1
  8. package/admin/components/ContentEntryForm/Label.js.map +1 -1
  9. package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +2 -2
  10. package/admin/components/ContentEntryForm/RenderFieldElement.js +6 -2
  11. package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
  12. package/admin/components/ContentEntryForm/functions/getValue.d.ts +2 -2
  13. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
  14. package/admin/components/ContentEntryForm/functions/setValue.d.ts +2 -2
  15. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
  16. package/admin/components/ContentEntryForm/useBind.d.ts +2 -2
  17. package/admin/components/ContentEntryForm/useBind.js +11 -8
  18. package/admin/components/ContentEntryForm/useBind.js.map +1 -1
  19. package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +1 -2
  20. package/admin/components/ContentEntryForm/useContentEntryForm.js +187 -147
  21. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
  22. package/admin/components/ContentModelEditor/{Context.d.ts → ContentModelEditorProvider.d.ts} +10 -4
  23. package/admin/components/ContentModelEditor/{Context.js → ContentModelEditorProvider.js} +60 -116
  24. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -0
  25. package/admin/components/ContentModelEditor/Editor.js +5 -5
  26. package/admin/components/ContentModelEditor/Editor.js.map +1 -1
  27. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
  28. package/admin/components/ContentModelEditor/PreviewTab.js +3 -3
  29. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
  30. package/admin/components/ContentModelEditor/index.d.ts +2 -0
  31. package/admin/components/ContentModelEditor/index.js +31 -0
  32. package/admin/components/ContentModelEditor/index.js.map +1 -0
  33. package/admin/components/ContentModelEditor/useModelEditor.d.ts +1 -0
  34. package/admin/components/ContentModelEditor/{useContentModelEditor.js → useModelEditor.js} +4 -4
  35. package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -0
  36. package/admin/{views/contentModelGroups → components}/DelayedOnChange.d.ts +0 -0
  37. package/admin/{views/contentModelGroups → components}/DelayedOnChange.js +0 -0
  38. package/admin/{views/contentModelGroups → components}/DelayedOnChange.js.map +0 -0
  39. package/admin/components/Dialog.d.ts +4 -0
  40. package/admin/components/Dialog.js +32 -0
  41. package/admin/components/Dialog.js.map +1 -0
  42. package/admin/components/DropZone/Center.d.ts +2 -1
  43. package/admin/components/DropZone/Center.js +38 -44
  44. package/admin/components/DropZone/Center.js.map +1 -1
  45. package/admin/components/Droppable.d.ts +1 -0
  46. package/admin/components/Droppable.js +12 -1
  47. package/admin/components/Droppable.js.map +1 -1
  48. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.d.ts +2 -8
  49. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +20 -9
  50. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
  51. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.d.ts +2 -9
  52. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +35 -21
  53. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
  54. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.d.ts +2 -9
  55. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +14 -12
  56. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
  57. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.d.ts +10 -0
  58. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js +42 -0
  59. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -0
  60. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.d.ts +8 -0
  61. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +227 -0
  62. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -0
  63. package/admin/components/FieldEditor/EditFieldDialog/getValidators.d.ts +13 -0
  64. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js +115 -0
  65. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -0
  66. package/admin/components/FieldEditor/EditFieldDialog.d.ts +3 -3
  67. package/admin/components/FieldEditor/EditFieldDialog.js +117 -260
  68. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
  69. package/admin/components/FieldEditor/Field.d.ts +5 -5
  70. package/admin/components/FieldEditor/Field.js +17 -14
  71. package/admin/components/FieldEditor/Field.js.map +1 -1
  72. package/admin/components/FieldEditor/FieldEditor.d.ts +4 -4
  73. package/admin/components/FieldEditor/FieldEditor.js +85 -31
  74. package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
  75. package/admin/components/FieldEditor/FieldEditorContext.d.ts +16 -16
  76. package/admin/components/FieldEditor/FieldEditorContext.js +18 -18
  77. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
  78. package/admin/components/FieldEditor/Styled.js +4 -13
  79. package/admin/components/FieldEditor/Styled.js.map +1 -1
  80. package/admin/components/FieldEditor/index.d.ts +1 -1
  81. package/admin/components/FieldEditor/index.js +3 -3
  82. package/admin/components/FieldEditor/index.js.map +1 -1
  83. package/admin/components/FieldEditor/useModelFieldEditor.d.ts +2 -0
  84. package/admin/components/FieldEditor/useModelFieldEditor.js +20 -0
  85. package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -0
  86. package/admin/components/FieldEditor/utils/deleteField.d.ts +2 -2
  87. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
  88. package/admin/components/FieldEditor/utils/getFieldPosition.d.ts +2 -2
  89. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
  90. package/admin/components/FieldEditor/utils/moveField.d.ts +3 -3
  91. package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
  92. package/admin/components/IconPicker.d.ts +7 -0
  93. package/admin/{views/contentModelGroups → components}/IconPicker.js +34 -31
  94. package/admin/components/IconPicker.js.map +1 -0
  95. package/admin/components/ModelFieldProvider/ModelFieldContext.d.ts +36 -0
  96. package/admin/components/ModelFieldProvider/ModelFieldContext.js +24 -0
  97. package/admin/components/ModelFieldProvider/ModelFieldContext.js.map +1 -0
  98. package/admin/components/ModelFieldProvider/index.d.ts +2 -0
  99. package/admin/components/ModelFieldProvider/index.js +31 -0
  100. package/admin/components/ModelFieldProvider/index.js.map +1 -0
  101. package/admin/components/ModelFieldProvider/useModelField.d.ts +35 -0
  102. package/admin/components/ModelFieldProvider/useModelField.js +42 -0
  103. package/admin/components/ModelFieldProvider/useModelField.js.map +1 -0
  104. package/admin/components/ModelProvider/ModelContext.d.ts +9 -0
  105. package/admin/components/ModelProvider/ModelContext.js +24 -0
  106. package/admin/components/ModelProvider/ModelContext.js.map +1 -0
  107. package/admin/components/ModelProvider/index.d.ts +2 -0
  108. package/admin/components/ModelProvider/index.js +31 -0
  109. package/admin/components/ModelProvider/index.js.map +1 -0
  110. package/admin/components/ModelProvider/useModel.d.ts +9 -0
  111. package/admin/components/ModelProvider/useModel.js +25 -0
  112. package/admin/components/ModelProvider/useModel.js.map +1 -0
  113. package/admin/constants/statusLabels.js +2 -4
  114. package/admin/constants/statusLabels.js.map +1 -1
  115. package/admin/graphql/contentEntries.d.ts +2 -29
  116. package/admin/graphql/contentEntries.js +28 -42
  117. package/admin/graphql/contentEntries.js.map +1 -1
  118. package/admin/graphql/contentModels.d.ts +1 -1
  119. package/admin/graphql/contentModels.js +2 -2
  120. package/admin/graphql/contentModels.js.map +1 -1
  121. package/admin/graphql/createFieldsList.d.ts +7 -2
  122. package/admin/graphql/createFieldsList.js +5 -1
  123. package/admin/graphql/createFieldsList.js.map +1 -1
  124. package/admin/hooks/index.d.ts +5 -0
  125. package/admin/hooks/index.js +47 -2
  126. package/admin/hooks/index.js.map +1 -1
  127. package/admin/hooks/usePermission.d.ts +0 -2
  128. package/admin/hooks/usePermission.js +5 -37
  129. package/admin/hooks/usePermission.js.map +1 -1
  130. package/admin/menus/NothingToShowElement.js +4 -1
  131. package/admin/menus/NothingToShowElement.js.map +1 -1
  132. package/admin/plugins/arrayUtils.d.ts +12 -0
  133. package/admin/plugins/arrayUtils.js +53 -0
  134. package/admin/plugins/arrayUtils.js.map +1 -0
  135. package/admin/plugins/editor/defaultBar/CreateContentButton.js +4 -4
  136. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
  137. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +5 -5
  138. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  139. package/admin/plugins/editor/defaultBar/Name/Name.js +4 -4
  140. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
  141. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +3 -3
  142. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
  143. package/admin/plugins/editor/formSettings/components/GeneralSettings.js +9 -1
  144. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
  145. package/admin/plugins/fieldRenderers/DynamicSection.d.ts +3 -3
  146. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
  147. package/admin/plugins/fieldRenderers/dateTime/DateOnly.d.ts +2 -2
  148. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
  149. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.d.ts +2 -2
  150. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
  151. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.d.ts +2 -2
  152. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
  153. package/admin/plugins/fieldRenderers/dateTime/Input.d.ts +2 -2
  154. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
  155. package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +2 -2
  156. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
  157. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.d.ts +12 -0
  158. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js +107 -0
  159. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -0
  160. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.d.ts +11 -0
  161. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +139 -0
  162. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -0
  163. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.d.ts +11 -0
  164. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js +68 -0
  165. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -0
  166. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.d.ts +8 -0
  167. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js +63 -0
  168. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js.map +1 -0
  169. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.d.ts +8 -0
  170. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js +53 -0
  171. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -0
  172. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.d.ts +6 -0
  173. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js +22 -0
  174. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -0
  175. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.d.ts +2 -0
  176. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +66 -0
  177. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -0
  178. package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
  179. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.d.ts +2 -2
  180. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
  181. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.d.ts +2 -2
  182. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
  183. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +10 -9
  184. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
  185. package/admin/plugins/fieldRenderers/ref/components/useReference.d.ts +2 -2
  186. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
  187. package/admin/plugins/fieldRenderers/ref/components/useReferences.d.ts +2 -2
  188. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
  189. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.d.ts +2 -2
  190. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +15 -14
  191. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
  192. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
  193. package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
  194. package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
  195. package/admin/plugins/fieldValidators/date/createDateInputField.d.ts +2 -2
  196. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
  197. package/admin/plugins/fieldValidators/dateGte.d.ts +2 -2
  198. package/admin/plugins/fieldValidators/dateGte.js +79 -23
  199. package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
  200. package/admin/plugins/fieldValidators/dateLte.d.ts +2 -2
  201. package/admin/plugins/fieldValidators/dateLte.js +79 -23
  202. package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
  203. package/admin/plugins/fieldValidators/dynamicZone.d.ts +2 -0
  204. package/admin/plugins/fieldValidators/dynamicZone.js +215 -0
  205. package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -0
  206. package/admin/plugins/fieldValidators/gte.d.ts +2 -2
  207. package/admin/plugins/fieldValidators/gte.js +44 -5
  208. package/admin/plugins/fieldValidators/gte.js.map +1 -1
  209. package/admin/plugins/fieldValidators/in.d.ts +2 -2
  210. package/admin/plugins/fieldValidators/in.js +44 -5
  211. package/admin/plugins/fieldValidators/in.js.map +1 -1
  212. package/admin/plugins/fieldValidators/lte.d.ts +2 -2
  213. package/admin/plugins/fieldValidators/lte.js +44 -5
  214. package/admin/plugins/fieldValidators/lte.js.map +1 -1
  215. package/admin/plugins/fieldValidators/maxLength.d.ts +2 -2
  216. package/admin/plugins/fieldValidators/maxLength.js +55 -6
  217. package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
  218. package/admin/plugins/fieldValidators/minLength.d.ts +2 -2
  219. package/admin/plugins/fieldValidators/minLength.js +55 -6
  220. package/admin/plugins/fieldValidators/minLength.js.map +1 -1
  221. package/admin/plugins/fieldValidators/pattern.d.ts +2 -2
  222. package/admin/plugins/fieldValidators/pattern.js +129 -60
  223. package/admin/plugins/fieldValidators/pattern.js.map +1 -1
  224. package/admin/plugins/fieldValidators/patternPlugins/email.d.ts +2 -2
  225. package/admin/plugins/fieldValidators/patternPlugins/email.js +6 -4
  226. package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
  227. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.d.ts +2 -2
  228. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js +5 -3
  229. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
  230. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.d.ts +2 -2
  231. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js +5 -3
  232. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
  233. package/admin/plugins/fieldValidators/patternPlugins/upperCase.d.ts +2 -2
  234. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js +5 -3
  235. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
  236. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.d.ts +2 -2
  237. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js +5 -3
  238. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
  239. package/admin/plugins/fieldValidators/patternPlugins/url.d.ts +2 -2
  240. package/admin/plugins/fieldValidators/patternPlugins/url.js +5 -3
  241. package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
  242. package/admin/plugins/fieldValidators/required.d.ts +2 -2
  243. package/admin/plugins/fieldValidators/required.js +8 -2
  244. package/admin/plugins/fieldValidators/required.js.map +1 -1
  245. package/admin/plugins/fieldValidators/unique.d.ts +2 -2
  246. package/admin/plugins/fieldValidators/unique.js +30 -2
  247. package/admin/plugins/fieldValidators/unique.js.map +1 -1
  248. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.d.ts +1 -2
  249. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +25 -26
  250. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
  251. package/admin/plugins/fields/boolean.d.ts +2 -2
  252. package/admin/plugins/fields/boolean.js +6 -5
  253. package/admin/plugins/fields/boolean.js.map +1 -1
  254. package/admin/plugins/fields/dateTime.d.ts +2 -2
  255. package/admin/plugins/fields/dateTime.js +58 -48
  256. package/admin/plugins/fields/dateTime.js.map +1 -1
  257. package/admin/plugins/fields/dynamicZone/AddTemplate.d.ts +11 -0
  258. package/admin/plugins/fields/dynamicZone/AddTemplate.js +114 -0
  259. package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -0
  260. package/admin/plugins/fields/dynamicZone/DynamicZone.d.ts +2 -0
  261. package/admin/plugins/fields/dynamicZone/DynamicZone.js +82 -0
  262. package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -0
  263. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.d.ts +11 -0
  264. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js +127 -0
  265. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -0
  266. package/admin/plugins/fields/dynamicZone/TemplateDialog.d.ts +9 -0
  267. package/admin/plugins/fields/dynamicZone/TemplateDialog.js +174 -0
  268. package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -0
  269. package/admin/plugins/fields/dynamicZone/commonValidators.d.ts +2 -0
  270. package/admin/plugins/fields/dynamicZone/commonValidators.js +26 -0
  271. package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -0
  272. package/admin/plugins/fields/dynamicZone.d.ts +2 -0
  273. package/admin/plugins/fields/dynamicZone.js +97 -0
  274. package/admin/plugins/fields/dynamicZone.js.map +1 -0
  275. package/admin/plugins/fields/file.d.ts +2 -2
  276. package/admin/plugins/fields/file.js +6 -5
  277. package/admin/plugins/fields/file.js.map +1 -1
  278. package/admin/plugins/fields/longText.d.ts +2 -2
  279. package/admin/plugins/fields/longText.js +4 -3
  280. package/admin/plugins/fields/longText.js.map +1 -1
  281. package/admin/plugins/fields/number.d.ts +2 -2
  282. package/admin/plugins/fields/number.js +6 -5
  283. package/admin/plugins/fields/number.js.map +1 -1
  284. package/admin/plugins/fields/object/ObjectFields.d.ts +2 -2
  285. package/admin/plugins/fields/object/ObjectFields.js +3 -3
  286. package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
  287. package/admin/plugins/fields/object.d.ts +2 -2
  288. package/admin/plugins/fields/object.js +9 -4
  289. package/admin/plugins/fields/object.js.map +1 -1
  290. package/admin/plugins/fields/ref.d.ts +2 -2
  291. package/admin/plugins/fields/ref.js +108 -100
  292. package/admin/plugins/fields/ref.js.map +1 -1
  293. package/admin/plugins/fields/richText.d.ts +2 -2
  294. package/admin/plugins/fields/richText.js +6 -5
  295. package/admin/plugins/fields/richText.js.map +1 -1
  296. package/admin/plugins/fields/text.d.ts +2 -2
  297. package/admin/plugins/fields/text.js +4 -3
  298. package/admin/plugins/fields/text.js.map +1 -1
  299. package/admin/plugins/index.d.ts +28 -1
  300. package/admin/plugins/permissionRenderer/CmsPermissions.js +2 -7
  301. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
  302. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +11 -17
  303. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  304. package/admin/plugins/transformers/dateTransformer.d.ts +1 -2
  305. package/admin/plugins/transformers/dateTransformer.js +3 -3
  306. package/admin/plugins/transformers/dateTransformer.js.map +1 -1
  307. package/admin/plugins/transformers/dynamicZoneTransformer.d.ts +2 -0
  308. package/admin/plugins/transformers/dynamicZoneTransformer.js +45 -0
  309. package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -0
  310. package/admin/plugins/transformers/index.js +5 -5
  311. package/admin/plugins/transformers/index.js.map +1 -1
  312. package/admin/plugins/transformers/numberTransformer.d.ts +1 -2
  313. package/admin/plugins/transformers/numberTransformer.js +3 -3
  314. package/admin/plugins/transformers/numberTransformer.js.map +1 -1
  315. package/admin/views/contentEntries/ContentEntries.js +6 -2
  316. package/admin/views/contentEntries/ContentEntries.js.map +1 -1
  317. package/admin/views/contentEntries/ContentEntriesContext.d.ts +4 -4
  318. package/admin/views/contentEntries/ContentEntriesContext.js +1 -9
  319. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  320. package/admin/views/contentEntries/ContentEntriesList.js +23 -8
  321. package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
  322. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +19 -4
  323. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  324. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +60 -60
  325. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
  326. package/admin/views/contentEntries/ContentEntry/cache.js +5 -1
  327. package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -1
  328. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.d.ts +1 -1
  329. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js +3 -80
  330. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -1
  331. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.d.ts +1 -1
  332. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js +3 -84
  333. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -1
  334. package/admin/views/contentEntries/ContentEntry/prepareFormData.d.ts +2 -2
  335. package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
  336. package/admin/views/contentEntries/ContentEntry/useRevision.d.ts +0 -8
  337. package/admin/views/contentEntries/ContentEntry/useRevision.js +10 -122
  338. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
  339. package/admin/views/contentEntries/ContentEntry.js +0 -2
  340. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  341. package/admin/views/contentEntries/experiment/ContentEntriesModule.d.ts +2 -2
  342. package/admin/views/contentEntries/experiment/ContentEntriesModule.js +27 -14
  343. package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
  344. package/admin/views/contentEntries/hooks/useContentEntries.js +7 -1
  345. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
  346. package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -1
  347. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
  348. package/admin/views/contentModelGroups/ContentModelGroupsForm.js +2 -2
  349. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
  350. package/admin/views/contentModels/CloneContentModelDialog.js +4 -17
  351. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
  352. package/admin/views/contentModels/ContentModelEditor.js +2 -2
  353. package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
  354. package/admin/views/contentModels/NewContentModelDialog.js +5 -17
  355. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  356. package/admin/viewsGraphql.js +1 -1
  357. package/admin/viewsGraphql.js.map +1 -1
  358. package/allPlugins.d.ts +34 -0
  359. package/allPlugins.js +95 -0
  360. package/allPlugins.js.map +1 -0
  361. package/index.d.ts +1 -0
  362. package/index.js +15 -1
  363. package/index.js.map +1 -1
  364. package/package.json +29 -29
  365. package/{types.d.ts → types/index.d.ts} +59 -176
  366. package/types/index.js +44 -0
  367. package/types/index.js.map +1 -0
  368. package/types/model.d.ts +83 -0
  369. package/{types.js → types/model.js} +0 -0
  370. package/types/model.js.map +1 -0
  371. package/types/shared.d.ts +5 -0
  372. package/types/shared.js +5 -0
  373. package/types/shared.js.map +1 -0
  374. package/types/validation.d.ts +70 -0
  375. package/types/validation.js +5 -0
  376. package/types/validation.js.map +1 -0
  377. package/utils/CmsModelFieldValidatorConfigAdapter.d.ts +15 -0
  378. package/utils/CmsModelFieldValidatorConfigAdapter.js +91 -0
  379. package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -0
  380. package/utils/createTypeName.d.ts +1 -0
  381. package/utils/createTypeName.js +18 -0
  382. package/utils/createTypeName.js.map +1 -0
  383. package/utils/createValidators.d.ts +3 -0
  384. package/{admin/components/ContentEntryForm/functions → utils}/createValidators.js +37 -16
  385. package/utils/createValidators.js.map +1 -0
  386. package/utils/getFetchPolicy.d.ts +6 -0
  387. package/utils/getFetchPolicy.js +19 -0
  388. package/utils/getFetchPolicy.js.map +1 -0
  389. package/utils/getModelTitleFieldId.d.ts +2 -0
  390. package/utils/getModelTitleFieldId.js +16 -0
  391. package/utils/getModelTitleFieldId.js.map +1 -0
  392. package/admin/components/ContentEntryForm/functions/createValidators.d.ts +0 -3
  393. package/admin/components/ContentEntryForm/functions/createValidators.js.map +0 -1
  394. package/admin/components/ContentModelEditor/Context.js.map +0 -1
  395. package/admin/components/ContentModelEditor/useContentModelEditor.d.ts +0 -1
  396. package/admin/components/ContentModelEditor/useContentModelEditor.js.map +0 -1
  397. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.d.ts +0 -15
  398. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +0 -148
  399. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +0 -1
  400. package/admin/components/FieldEditor/useFieldEditor.d.ts +0 -1
  401. package/admin/components/FieldEditor/useFieldEditor.js +0 -14
  402. package/admin/components/FieldEditor/useFieldEditor.js.map +0 -1
  403. package/admin/plugins/validators/dateGte.d.ts +0 -3
  404. package/admin/plugins/validators/dateGte.js +0 -68
  405. package/admin/plugins/validators/dateGte.js.map +0 -1
  406. package/admin/plugins/validators/dateLte.d.ts +0 -3
  407. package/admin/plugins/validators/dateLte.js +0 -68
  408. package/admin/plugins/validators/dateLte.js.map +0 -1
  409. package/admin/plugins/validators/gte.d.ts +0 -3
  410. package/admin/plugins/validators/gte.js +0 -57
  411. package/admin/plugins/validators/gte.js.map +0 -1
  412. package/admin/plugins/validators/in.d.ts +0 -3
  413. package/admin/plugins/validators/in.js +0 -57
  414. package/admin/plugins/validators/in.js.map +0 -1
  415. package/admin/plugins/validators/lte.d.ts +0 -3
  416. package/admin/plugins/validators/lte.js +0 -57
  417. package/admin/plugins/validators/lte.js.map +0 -1
  418. package/admin/plugins/validators/maxLength.d.ts +0 -3
  419. package/admin/plugins/validators/maxLength.js +0 -57
  420. package/admin/plugins/validators/maxLength.js.map +0 -1
  421. package/admin/plugins/validators/minLength.d.ts +0 -3
  422. package/admin/plugins/validators/minLength.js +0 -57
  423. package/admin/plugins/validators/minLength.js.map +0 -1
  424. package/admin/plugins/validators/pattern.d.ts +0 -3
  425. package/admin/plugins/validators/pattern.js +0 -77
  426. package/admin/plugins/validators/pattern.js.map +0 -1
  427. package/admin/plugins/validators/patternPlugins/email.d.ts +0 -3
  428. package/admin/plugins/validators/patternPlugins/email.js +0 -17
  429. package/admin/plugins/validators/patternPlugins/email.js.map +0 -1
  430. package/admin/plugins/validators/patternPlugins/lowerCase.d.ts +0 -3
  431. package/admin/plugins/validators/patternPlugins/lowerCase.js +0 -17
  432. package/admin/plugins/validators/patternPlugins/lowerCase.js.map +0 -1
  433. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.d.ts +0 -3
  434. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js +0 -17
  435. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
  436. package/admin/plugins/validators/patternPlugins/upperCase.d.ts +0 -3
  437. package/admin/plugins/validators/patternPlugins/upperCase.js +0 -17
  438. package/admin/plugins/validators/patternPlugins/upperCase.js.map +0 -1
  439. package/admin/plugins/validators/patternPlugins/upperCaseSpace.d.ts +0 -3
  440. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js +0 -17
  441. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +0 -1
  442. package/admin/plugins/validators/patternPlugins/url.d.ts +0 -3
  443. package/admin/plugins/validators/patternPlugins/url.js +0 -17
  444. package/admin/plugins/validators/patternPlugins/url.js.map +0 -1
  445. package/admin/plugins/validators/required.d.ts +0 -3
  446. package/admin/plugins/validators/required.js +0 -21
  447. package/admin/plugins/validators/required.js.map +0 -1
  448. package/admin/plugins/validators/timeGte.d.ts +0 -3
  449. package/admin/plugins/validators/timeGte.js +0 -59
  450. package/admin/plugins/validators/timeGte.js.map +0 -1
  451. package/admin/plugins/validators/timeLte.d.ts +0 -3
  452. package/admin/plugins/validators/timeLte.js +0 -59
  453. package/admin/plugins/validators/timeLte.js.map +0 -1
  454. package/admin/plugins/validators/unique.d.ts +0 -7
  455. package/admin/plugins/validators/unique.js +0 -50
  456. package/admin/plugins/validators/unique.js.map +0 -1
  457. package/admin/views/contentEntries/ContentEntry/header/requestChanges/rule-24px.svg +0 -1
  458. package/admin/views/contentEntries/ContentEntry/header/requestReview/emoji_people-24px.svg +0 -1
  459. package/admin/views/contentModelGroups/IconPicker.d.ts +0 -8
  460. package/admin/views/contentModelGroups/IconPicker.js.map +0 -1
  461. package/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","RequestChangesComponent","useContentEntry","entry","useRevision","revision","requestChanges","usePermission","canRequestChange","useConfirmationDialog","title","message","showConfirmation","buttonEnabled","id","meta","status","RequestChanges","makeComposable"],"sources":["RequestChanges.tsx"],"sourcesContent":["import React from \"react\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { useConfirmationDialog } from \"@webiny/app-admin/hooks/useConfirmationDialog\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ReactComponent as RequestChangesIcon } from \"./rule-24px.svg\";\nimport usePermission from \"~/admin/hooks/usePermission\";\nimport { useRevision } from \"~/admin/views/contentEntries/ContentEntry/useRevision\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { makeComposable } from \"@webiny/react-composition\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/content-details/header/request-review\");\n\nconst RequestChangesComponent: React.FC = () => {\n const { entry } = useContentEntry();\n const { requestChanges } = useRevision({ revision: entry });\n const { canRequestChange } = usePermission();\n\n const { showConfirmation } = useConfirmationDialog({\n title: t`Request Changes`,\n message: (\n <p>{t`You are about to request changes on this content entry. Are you sure you want to continue?`}</p>\n )\n });\n\n if (!canRequestChange(\"cms.contentEntry\")) {\n return null;\n }\n\n const buttonEnabled =\n entry.id && (entry.meta.status === \"draft\" || entry.meta.status === \"reviewRequested\");\n\n return (\n <React.Fragment>\n <Tooltip content={t`Request Changes`} placement={\"top\"}>\n <IconButton\n disabled={!buttonEnabled}\n icon={<RequestChangesIcon />}\n onClick={() =>\n showConfirmation(async () => {\n await requestChanges(entry.id);\n })\n }\n />\n </Tooltip>\n </React.Fragment>\n );\n};\n\nexport const RequestChanges = makeComposable(\"RequestChanges\", RequestChangesComponent);\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,8DAAR,CAAV;;AAEA,IAAMC,uBAAiC,GAAG,SAApCA,uBAAoC,GAAM;EAC5C,uBAAkB,IAAAC,iCAAA,GAAlB;EAAA,IAAQC,KAAR,oBAAQA,KAAR;;EACA,mBAA2B,IAAAC,yBAAA,EAAY;IAAEC,QAAQ,EAAEF;EAAZ,CAAZ,CAA3B;EAAA,IAAQG,cAAR,gBAAQA,cAAR;;EACA,qBAA6B,IAAAC,uBAAA,GAA7B;EAAA,IAAQC,gBAAR,kBAAQA,gBAAR;;EAEA,4BAA6B,IAAAC,4CAAA,EAAsB;IAC/CC,KAAK,EAAEZ,CAAF,kGAD0C;IAE/Ca,OAAO,eACH,wCAAIb,CAAJ;EAH2C,CAAtB,CAA7B;EAAA,IAAQc,gBAAR,yBAAQA,gBAAR;;EAOA,IAAI,CAACJ,gBAAgB,CAAC,kBAAD,CAArB,EAA2C;IACvC,OAAO,IAAP;EACH;;EAED,IAAMK,aAAa,GACfV,KAAK,CAACW,EAAN,KAAaX,KAAK,CAACY,IAAN,CAAWC,MAAX,KAAsB,OAAtB,IAAiCb,KAAK,CAACY,IAAN,CAAWC,MAAX,KAAsB,iBAApE,CADJ;EAGA,oBACI,6BAAC,cAAD,CAAO,QAAP,qBACI,6BAAC,gBAAD;IAAS,OAAO,EAAElB,CAAF,oGAAhB;IAAsC,SAAS,EAAE;EAAjD,gBACI,6BAAC,kBAAD;IACI,QAAQ,EAAE,CAACe,aADf;IAEI,IAAI,eAAE,6BAAC,wBAAD,OAFV;IAGI,OAAO,EAAE;MAAA,OACLD,gBAAgB,sGAAC;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OACPN,cAAc,CAACH,KAAK,CAACW,EAAP,CADP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAAD,GADX;IAAA;EAHb,EADJ,CADJ,CADJ;AAeH,CAlCD;;AAoCO,IAAMG,cAAc,GAAG,IAAAC,gCAAA,EAAe,gBAAf,EAAiCjB,uBAAjC,CAAvB"}
1
+ {"version":3,"names":["RequestChanges","makeComposable"],"sources":["RequestChanges.tsx"],"sourcesContent":["import { makeComposable } from \"@webiny/react-composition\";\n\nexport const RequestChanges = makeComposable(\"RequestChanges\", () => {\n return null;\n});\n"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,cAAc,GAAG,IAAAC,gCAAA,EAAe,gBAAf,EAAiC,YAAM;EACjE,OAAO,IAAP;AACH,CAF6B,CAAvB"}
@@ -1 +1 @@
1
- export declare const RequestReview: import("@webiny/react-composition").ComposableFC<{}>;
1
+ export declare const RequestReview: import("@webiny/react-composition").ComposableFC<unknown>;
@@ -1,94 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
-
7
3
  Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
6
  exports.RequestReview = void 0;
11
7
 
12
- var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
13
-
14
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
- var _react = _interopRequireWildcard(require("react"));
19
-
20
- var _Button = require("@webiny/ui/Button");
21
-
22
- var _Tooltip = require("@webiny/ui/Tooltip");
23
-
24
- var _useConfirmationDialog = require("@webiny/app-admin/hooks/useConfirmationDialog");
25
-
26
- var _i18n = require("@webiny/app/i18n");
27
-
28
- var _emoji_people24px = require("./emoji_people-24px.svg");
29
-
30
- var _useRevision2 = require("../../useRevision");
31
-
32
- var _usePermission2 = _interopRequireDefault(require("../../../../../hooks/usePermission"));
33
-
34
- var _useContentEntry2 = require("../../../hooks/useContentEntry");
35
-
36
8
  var _reactComposition = require("@webiny/react-composition");
37
9
 
38
- var _templateObject, _templateObject2, _templateObject3;
39
-
40
- var t = _i18n.i18n.ns("app-headless-cms/admin/content-details/header/request-review");
41
-
42
- var RequestReviewComponent = function RequestReviewComponent() {
43
- var _useContentEntry = (0, _useContentEntry2.useContentEntry)(),
44
- entry = _useContentEntry.entry;
45
-
46
- var _useRevision = (0, _useRevision2.useRevision)({
47
- revision: entry
48
- }),
49
- requestReview = _useRevision.requestReview;
50
-
51
- var _usePermission = (0, _usePermission2.default)(),
52
- canRequestReview = _usePermission.canRequestReview;
53
-
54
- var _useConfirmationDialo = (0, _useConfirmationDialog.useConfirmationDialog)({
55
- title: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Request Review"]))),
56
- message: /*#__PURE__*/_react.default.createElement("p", null, t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["You are about to request a review of this content entry. Are you sure you want to continue?"]))))
57
- }),
58
- showConfirmation = _useConfirmationDialo.showConfirmation;
59
-
60
- var onClick = (0, _react.useCallback)(function () {
61
- showConfirmation( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
62
- return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
63
- while (1) {
64
- switch (_context.prev = _context.next) {
65
- case 0:
66
- _context.next = 2;
67
- return requestReview(entry.id);
68
-
69
- case 2:
70
- case "end":
71
- return _context.stop();
72
- }
73
- }
74
- }, _callee);
75
- })));
76
- }, [entry.id]);
77
-
78
- if (!canRequestReview("cms.contentEntry")) {
79
- return null;
80
- }
81
-
82
- var buttonEnabled = entry.id && (entry.meta.status === "draft" || entry.meta.status === "changesRequested");
83
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Tooltip.Tooltip, {
84
- content: t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Request Review"]))),
85
- placement: "top"
86
- }, /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
87
- disabled: !buttonEnabled,
88
- icon: /*#__PURE__*/_react.default.createElement(_emoji_people24px.ReactComponent, null),
89
- onClick: onClick
90
- })));
91
- };
92
-
93
- var RequestReview = (0, _reactComposition.makeComposable)("RequestReview", RequestReviewComponent);
10
+ var RequestReview = (0, _reactComposition.makeComposable)("RequestReview", function () {
11
+ return null;
12
+ });
94
13
  exports.RequestReview = RequestReview;
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","RequestReviewComponent","useContentEntry","entry","useRevision","revision","requestReview","usePermission","canRequestReview","useConfirmationDialog","title","message","showConfirmation","onClick","useCallback","id","buttonEnabled","meta","status","RequestReview","makeComposable"],"sources":["RequestReview.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { useConfirmationDialog } from \"@webiny/app-admin/hooks/useConfirmationDialog\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ReactComponent as RequestReviewIcon } from \"./emoji_people-24px.svg\";\nimport { useRevision } from \"~/admin/views/contentEntries/ContentEntry/useRevision\";\nimport usePermission from \"~/admin/hooks/usePermission\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { makeComposable } from \"@webiny/react-composition\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/content-details/header/request-review\");\n\nconst RequestReviewComponent: React.FC = () => {\n const { entry } = useContentEntry();\n const { requestReview } = useRevision({ revision: entry });\n const { canRequestReview } = usePermission();\n\n const { showConfirmation } = useConfirmationDialog({\n title: t`Request Review`,\n message: (\n <p>{t`You are about to request a review of this content entry. Are you sure you want to continue?`}</p>\n )\n });\n\n const onClick = useCallback((): void => {\n showConfirmation(async (): Promise<void> => {\n await requestReview(entry.id);\n });\n }, [entry.id]);\n\n if (!canRequestReview(\"cms.contentEntry\")) {\n return null;\n }\n\n const buttonEnabled =\n entry.id && (entry.meta.status === \"draft\" || entry.meta.status === \"changesRequested\");\n\n return (\n <React.Fragment>\n <Tooltip content={t`Request Review`} placement={\"top\"}>\n <IconButton\n disabled={!buttonEnabled}\n icon={<RequestReviewIcon />}\n onClick={onClick}\n />\n </Tooltip>\n </React.Fragment>\n );\n};\n\nexport const RequestReview = makeComposable(\"RequestReview\", RequestReviewComponent);\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,8DAAR,CAAV;;AAEA,IAAMC,sBAAgC,GAAG,SAAnCA,sBAAmC,GAAM;EAC3C,uBAAkB,IAAAC,iCAAA,GAAlB;EAAA,IAAQC,KAAR,oBAAQA,KAAR;;EACA,mBAA0B,IAAAC,yBAAA,EAAY;IAAEC,QAAQ,EAAEF;EAAZ,CAAZ,CAA1B;EAAA,IAAQG,aAAR,gBAAQA,aAAR;;EACA,qBAA6B,IAAAC,uBAAA,GAA7B;EAAA,IAAQC,gBAAR,kBAAQA,gBAAR;;EAEA,4BAA6B,IAAAC,4CAAA,EAAsB;IAC/CC,KAAK,EAAEZ,CAAF,iGAD0C;IAE/Ca,OAAO,eACH,wCAAIb,CAAJ;EAH2C,CAAtB,CAA7B;EAAA,IAAQc,gBAAR,yBAAQA,gBAAR;;EAOA,IAAMC,OAAO,GAAG,IAAAC,kBAAA,EAAY,YAAY;IACpCF,gBAAgB,sGAAC;MAAA;QAAA;UAAA;YAAA;cAAA;cAAA,OACPN,aAAa,CAACH,KAAK,CAACY,EAAP,CADN;;YAAA;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA,CAAD,GAAhB;EAGH,CAJe,EAIb,CAACZ,KAAK,CAACY,EAAP,CAJa,CAAhB;;EAMA,IAAI,CAACP,gBAAgB,CAAC,kBAAD,CAArB,EAA2C;IACvC,OAAO,IAAP;EACH;;EAED,IAAMQ,aAAa,GACfb,KAAK,CAACY,EAAN,KAAaZ,KAAK,CAACc,IAAN,CAAWC,MAAX,KAAsB,OAAtB,IAAiCf,KAAK,CAACc,IAAN,CAAWC,MAAX,KAAsB,kBAApE,CADJ;EAGA,oBACI,6BAAC,cAAD,CAAO,QAAP,qBACI,6BAAC,gBAAD;IAAS,OAAO,EAAEpB,CAAF,mGAAhB;IAAqC,SAAS,EAAE;EAAhD,gBACI,6BAAC,kBAAD;IACI,QAAQ,EAAE,CAACkB,aADf;IAEI,IAAI,eAAE,6BAAC,gCAAD,OAFV;IAGI,OAAO,EAAEH;EAHb,EADJ,CADJ,CADJ;AAWH,CApCD;;AAsCO,IAAMM,aAAa,GAAG,IAAAC,gCAAA,EAAe,eAAf,EAAgCnB,sBAAhC,CAAtB"}
1
+ {"version":3,"names":["RequestReview","makeComposable"],"sources":["RequestReview.tsx"],"sourcesContent":["import { makeComposable } from \"@webiny/react-composition\";\n\nexport const RequestReview = makeComposable(\"RequestReview\", () => {\n return null;\n});\n"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,aAAa,GAAG,IAAAC,gCAAA,EAAe,eAAf,EAAgC,YAAM;EAC/D,OAAO,IAAP;AACH,CAF4B,CAAtB"}
@@ -1,2 +1,2 @@
1
- import { CmsEditorField } from "../../../../types";
2
- export declare const prepareFormData: (input: Record<string, any>, fields: CmsEditorField[]) => Record<string, any>;
1
+ import { CmsModelField } from "../../../../types";
2
+ export declare const prepareFormData: (input: Record<string, any>, fields: CmsModelField[]) => Record<string, any>;
@@ -1 +1 @@
1
- {"version":3,"names":["availableTransformerPlugins","undefined","getAvailableTransformerPlugins","plugins","byType","reduce","transformers","pl","fieldTypes","Array","isArray","fieldType","console","warn","transformationRunner","createTransformationRunner","availablePlugins","field","value","transformer","type","transform","prepareFormData","input","fields","runTransformation","output","inputValue","fieldId","childFields","settings","multipleValues","values","map"],"sources":["prepareFormData.ts"],"sourcesContent":["import { CmsEditorField, CmsFieldValueTransformer } from \"~/types\";\nimport { plugins } from \"@webiny/plugins\";\n\ninterface AvailableFieldTransformers {\n [fieldType: string]: CmsFieldValueTransformer;\n}\n\n/**\n * This method builds transformer plugins only once.\n * Really no need in building more than once because at this point all plugins are registered.\n */\nlet availableTransformerPlugins: AvailableFieldTransformers | undefined = undefined;\nconst getAvailableTransformerPlugins = (): AvailableFieldTransformers => {\n if (availableTransformerPlugins) {\n return availableTransformerPlugins;\n }\n availableTransformerPlugins = plugins\n .byType<CmsFieldValueTransformer>(\"cms-field-value-transformer\")\n .reduce<AvailableFieldTransformers>((transformers, pl) => {\n const fieldTypes = Array.isArray(pl.fieldType) ? pl.fieldType : [pl.fieldType];\n for (const fieldType of fieldTypes) {\n if (transformers[fieldType]) {\n console.warn(\n `Transformer for field type \"${fieldType}\" is already defined. There cannot be more than one transformer.`\n );\n continue;\n }\n transformers[fieldType] = pl;\n }\n return transformers;\n }, {});\n\n return availableTransformerPlugins;\n};\n\ninterface TransformationRunnerCallable {\n (field: CmsEditorField, value: any): any;\n}\n\nlet transformationRunner: TransformationRunnerCallable;\nconst createTransformationRunner = (): TransformationRunnerCallable => {\n if (transformationRunner) {\n return transformationRunner;\n }\n const availablePlugins = getAvailableTransformerPlugins();\n\n transformationRunner = (field, value) => {\n const transformer = availablePlugins[field.type];\n if (!transformer) {\n return value;\n }\n return transformer.transform(value, field);\n };\n return transformationRunner;\n};\n\nexport const prepareFormData = (\n input: Record<string, any>,\n fields: CmsEditorField[]\n): Record<string, any> => {\n const runTransformation = createTransformationRunner();\n\n return fields.reduce<Record<string, any>>((output, field) => {\n const inputValue = input[field.fieldId];\n const childFields = field.type === \"object\" ? field.settings?.fields : undefined;\n /**\n * There is a possibility that we have an object field - it has child fields.\n */\n if (childFields) {\n /**\n * Field can be repeatable, and in that case, we must go through all values and transform them.\n */\n if (field.multipleValues) {\n if (!inputValue) {\n return output;\n }\n const values = Array.isArray(inputValue) ? inputValue : undefined;\n if (!values) {\n return output;\n }\n output[field.fieldId] = values.map(value => {\n return prepareFormData(value, childFields);\n });\n return output;\n }\n if (!inputValue) {\n return output;\n }\n /**\n * Or if is not repeatable, just go through the fields without the need to go through an array.\n */\n output[field.fieldId] = prepareFormData(inputValue, childFields);\n\n return output;\n }\n /**\n * Regular fields, multiple values enabled.\n */\n //\n else if (field.multipleValues) {\n const values = Array.isArray(inputValue) ? inputValue : undefined;\n if (!values) {\n return output;\n }\n output[field.fieldId] = values\n /**\n * Transformations need to run on all the available fields.\n */\n .map(value => {\n return runTransformation(field, value);\n });\n return output;\n }\n /**\n * Regular values, single values.\n */\n output[field.fieldId] = runTransformation(field, inputValue);\n\n return output;\n }, {});\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["availableTransformerPlugins","undefined","getAvailableTransformerPlugins","plugins","byType","reduce","transformers","pl","fieldTypes","Array","isArray","fieldType","console","warn","transformationRunner","createTransformationRunner","availablePlugins","field","value","transformer","type","transform","prepareFormData","input","fields","runTransformation","output","inputValue","fieldId","childFields","settings","multipleValues","values","map"],"sources":["prepareFormData.ts"],"sourcesContent":["import { CmsModelField, CmsFieldValueTransformer } from \"~/types\";\nimport { plugins } from \"@webiny/plugins\";\n\ninterface AvailableFieldTransformers {\n [fieldType: string]: CmsFieldValueTransformer;\n}\n\n/**\n * This method builds transformer plugins only once.\n * Really no need in building more than once because at this point all plugins are registered.\n */\nlet availableTransformerPlugins: AvailableFieldTransformers | undefined = undefined;\nconst getAvailableTransformerPlugins = (): AvailableFieldTransformers => {\n if (availableTransformerPlugins) {\n return availableTransformerPlugins;\n }\n availableTransformerPlugins = plugins\n .byType<CmsFieldValueTransformer>(\"cms-field-value-transformer\")\n .reduce<AvailableFieldTransformers>((transformers, pl) => {\n const fieldTypes = Array.isArray(pl.fieldType) ? pl.fieldType : [pl.fieldType];\n for (const fieldType of fieldTypes) {\n if (transformers[fieldType]) {\n console.warn(\n `Transformer for field type \"${fieldType}\" is already defined. There cannot be more than one transformer.`\n );\n continue;\n }\n transformers[fieldType] = pl;\n }\n return transformers;\n }, {});\n\n return availableTransformerPlugins;\n};\n\ninterface TransformationRunnerCallable {\n (field: CmsModelField, value: any): any;\n}\n\nlet transformationRunner: TransformationRunnerCallable;\nconst createTransformationRunner = (): TransformationRunnerCallable => {\n if (transformationRunner) {\n return transformationRunner;\n }\n const availablePlugins = getAvailableTransformerPlugins();\n\n transformationRunner = (field, value) => {\n const transformer = availablePlugins[field.type];\n if (!transformer) {\n return value;\n }\n return transformer.transform(value, field);\n };\n return transformationRunner;\n};\n\nexport const prepareFormData = (\n input: Record<string, any>,\n fields: CmsModelField[]\n): Record<string, any> => {\n const runTransformation = createTransformationRunner();\n\n return fields.reduce<Record<string, any>>((output, field) => {\n const inputValue = input[field.fieldId];\n const childFields = field.type === \"object\" ? field.settings?.fields : undefined;\n /**\n * There is a possibility that we have an object field - it has child fields.\n */\n if (childFields) {\n /**\n * Field can be repeatable, and in that case, we must go through all values and transform them.\n */\n if (field.multipleValues) {\n if (!inputValue) {\n return output;\n }\n const values = Array.isArray(inputValue) ? inputValue : undefined;\n if (!values) {\n return output;\n }\n output[field.fieldId] = values.map(value => {\n return prepareFormData(value, childFields);\n });\n return output;\n }\n if (!inputValue) {\n return output;\n }\n /**\n * Or if is not repeatable, just go through the fields without the need to go through an array.\n */\n output[field.fieldId] = prepareFormData(inputValue, childFields);\n\n return output;\n }\n /**\n * Regular fields, multiple values enabled.\n */\n //\n else if (field.multipleValues) {\n const values = Array.isArray(inputValue) ? inputValue : undefined;\n if (!values) {\n return output;\n }\n output[field.fieldId] = values\n /**\n * Transformations need to run on all the available fields.\n */\n .map(value => {\n return runTransformation(field, value);\n });\n return output;\n }\n /**\n * Regular values, single values.\n */\n output[field.fieldId] = runTransformation(field, inputValue);\n\n return output;\n }, {});\n};\n"],"mappings":"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"}
@@ -14,12 +14,6 @@ interface PublishRevisionHandler {
14
14
  interface UnpublishRevisionHandler {
15
15
  (id?: string): Promise<void>;
16
16
  }
17
- interface RequestReviewHandler {
18
- (id?: string): Promise<void>;
19
- }
20
- interface RequestChangesHandler {
21
- (id?: string): Promise<void>;
22
- }
23
17
  export interface UseRevisionProps {
24
18
  revision: CmsEditorContentEntry;
25
19
  }
@@ -29,7 +23,5 @@ export declare const useRevision: ({ revision }: UseRevisionProps) => {
29
23
  deleteRevision: DeleteRevisionHandler;
30
24
  publishRevision: PublishRevisionHandler;
31
25
  unpublishRevision: UnpublishRevisionHandler;
32
- requestReview: RequestReviewHandler;
33
- requestChanges: RequestChangesHandler;
34
26
  };
35
27
  export {};
@@ -29,6 +29,8 @@ var _hooks = require("../../../hooks");
29
29
 
30
30
  var _useContentEntry2 = require("../hooks/useContentEntry");
31
31
 
32
+ var _getFetchPolicy = require("../../../../utils/getFetchPolicy");
33
+
32
34
  var useRevision = function useRevision(_ref) {
33
35
  var revision = _ref.revision;
34
36
 
@@ -54,15 +56,11 @@ var useRevision = function useRevision(_ref) {
54
56
  var _useMemo = (0, _react.useMemo)(function () {
55
57
  return {
56
58
  CREATE_REVISION: GQL.createCreateFromMutation(contentModel),
57
- UNPUBLISH_REVISION: GQL.createUnpublishMutation(contentModel),
58
- REQUEST_REVIEW: GQL.createRequestReviewMutation(contentModel),
59
- REQUEST_CHANGES: GQL.createRequestChangesMutation(contentModel)
59
+ UNPUBLISH_REVISION: GQL.createUnpublishMutation(contentModel)
60
60
  };
61
61
  }, [modelId]),
62
62
  CREATE_REVISION = _useMemo.CREATE_REVISION,
63
- UNPUBLISH_REVISION = _useMemo.UNPUBLISH_REVISION,
64
- REQUEST_REVIEW = _useMemo.REQUEST_REVIEW,
65
- REQUEST_CHANGES = _useMemo.REQUEST_CHANGES;
63
+ UNPUBLISH_REVISION = _useMemo.UNPUBLISH_REVISION;
66
64
 
67
65
  var _useHandlers = (0, _useHandlers2.useHandlers)({
68
66
  entry: entry
@@ -83,22 +81,7 @@ var useRevision = function useRevision(_ref) {
83
81
  variables: {
84
82
  revision: id || revision.id
85
83
  },
86
- update: function update(cache, result) {
87
- if (!result || !result.data) {
88
- showSnackbar("Missing result in update callback on Create Revision Mutation.");
89
- return;
90
- }
91
-
92
- var newRevision = result.data.content.data;
93
-
94
- if (!newRevision) {
95
- showSnackbar("Missing revision data in update callback on Create Revision Mutation.");
96
- return;
97
- }
98
-
99
- GQLCache.updateLatestRevisionInListCache(contentModel, cache, newRevision, listQueryVariables);
100
- GQLCache.addRevisionToRevisionsCache(contentModel, cache, newRevision);
101
- }
84
+ fetchPolicy: (0, _getFetchPolicy.getFetchPolicy)(contentModel)
102
85
  });
103
86
 
104
87
  case 3:
@@ -134,9 +117,11 @@ var useRevision = function useRevision(_ref) {
134
117
  return _context.abrupt("return");
135
118
 
136
119
  case 17:
120
+ GQLCache.updateLatestRevisionInListCache(contentModel, client.cache, data, listQueryVariables);
121
+ GQLCache.addRevisionToRevisionsCache(contentModel, client.cache, data);
137
122
  history.push("/cms/content-entries/".concat(modelId, "?id=").concat(encodeURIComponent(data.id)));
138
123
 
139
- case 18:
124
+ case 20:
140
125
  case "end":
141
126
  return _context.stop();
142
127
  }
@@ -306,117 +291,20 @@ var useRevision = function useRevision(_ref) {
306
291
  return _ref7.apply(this, arguments);
307
292
  };
308
293
  }();
309
- },
310
- requestReview: function requestReview() {
311
- return /*#__PURE__*/function () {
312
- var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee5(id) {
313
- return (0, _regeneratorRuntime2.default)().wrap(function _callee5$(_context5) {
314
- while (1) {
315
- switch (_context5.prev = _context5.next) {
316
- case 0:
317
- setLoading(true);
318
- _context5.next = 3;
319
- return client.mutate({
320
- mutation: REQUEST_REVIEW,
321
- variables: {
322
- revision: id || revision.id
323
- },
324
- update: function update(_, result) {
325
- if (!result || !result.data) {
326
- showSnackbar("Missing result in update callback on Request Review Mutation.");
327
- return;
328
- }
329
-
330
- var error = result.data.content.error;
331
-
332
- if (error) {
333
- return showSnackbar(error.message);
334
- }
335
-
336
- showSnackbar( /*#__PURE__*/_react.default.createElement("span", null, "Review requested successfully!"));
337
- }
338
- });
339
-
340
- case 3:
341
- setLoading(false);
342
-
343
- case 4:
344
- case "end":
345
- return _context5.stop();
346
- }
347
- }
348
- }, _callee5);
349
- }));
350
-
351
- return function (_x5) {
352
- return _ref8.apply(this, arguments);
353
- };
354
- }();
355
- },
356
- requestChanges: function requestChanges() {
357
- return /*#__PURE__*/function () {
358
- var _ref9 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee6(id) {
359
- return (0, _regeneratorRuntime2.default)().wrap(function _callee6$(_context6) {
360
- while (1) {
361
- switch (_context6.prev = _context6.next) {
362
- case 0:
363
- setLoading(true);
364
- _context6.next = 3;
365
- return client.mutate({
366
- mutation: REQUEST_CHANGES,
367
- variables: {
368
- revision: id || revision.id
369
- },
370
- update: function update(_, result) {
371
- if (!result || !result.data) {
372
- showSnackbar("Missing result in update callback on Request Changes Mutation.");
373
- return;
374
- }
375
-
376
- var error = result.data.content.error;
377
-
378
- if (error) {
379
- showSnackbar(error.message);
380
- return;
381
- }
382
-
383
- showSnackbar( /*#__PURE__*/_react.default.createElement("span", null, "Changes requested successfully!"));
384
- }
385
- });
386
-
387
- case 3:
388
- setLoading(false);
389
-
390
- case 4:
391
- case "end":
392
- return _context6.stop();
393
- }
394
- }
395
- }, _callee6);
396
- }));
397
-
398
- return function (_x6) {
399
- return _ref9.apply(this, arguments);
400
- };
401
- }();
402
294
  }
403
295
  }),
404
296
  createRevision = _useHandlers.createRevision,
405
297
  editRevision = _useHandlers.editRevision,
406
298
  deleteRevision = _useHandlers.deleteRevision,
407
299
  publishRevision = _useHandlers.publishRevision,
408
- unpublishRevision = _useHandlers.unpublishRevision,
409
- requestReview = _useHandlers.requestReview,
410
- requestChanges = _useHandlers.requestChanges;
300
+ unpublishRevision = _useHandlers.unpublishRevision;
411
301
 
412
302
  return {
413
303
  createRevision: createRevision,
414
304
  editRevision: editRevision,
415
305
  deleteRevision: deleteRevision,
416
306
  publishRevision: publishRevision,
417
- unpublishRevision: unpublishRevision,
418
- requestReview: requestReview,
419
- requestChanges: requestChanges
307
+ unpublishRevision: unpublishRevision
420
308
  };
421
309
  };
422
310
 
@@ -1 +1 @@
1
- {"version":3,"names":["useRevision","revision","useCms","publishEntryRevision","deleteEntry","useContentEntry","contentModel","entry","setLoading","listQueryVariables","useRouter","history","useSnackbar","showSnackbar","client","useApolloClient","modelId","useMemo","CREATE_REVISION","GQL","createCreateFromMutation","UNPUBLISH_REVISION","createUnpublishMutation","REQUEST_REVIEW","createRequestReviewMutation","REQUEST_CHANGES","createRequestChangesMutation","useHandlers","createRevision","id","mutate","mutation","variables","update","cache","result","data","newRevision","content","GQLCache","updateLatestRevisionInListCache","addRevisionToRevisionsCache","createResponse","error","message","push","encodeURIComponent","editRevision","deleteRevision","model","targetRevision","publishRevision","response","meta","version","unpublishRevision","requestReview","_","requestChanges"],"sources":["useRevision.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useHandlers } from \"@webiny/app/hooks/useHandlers\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { CmsEditorContentEntry } from \"~/types\";\nimport * as GQL from \"~/admin/graphql/contentEntries\";\nimport * as GQLCache from \"./cache\";\nimport { useApolloClient, useCms } from \"~/admin/hooks\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport {\n CmsEntryCreateFromMutationResponse,\n CmsEntryCreateFromMutationVariables,\n CmsEntryRequestChangesMutationResponse,\n CmsEntryRequestChangesMutationVariables,\n CmsEntryRequestReviewMutationResponse,\n CmsEntryRequestReviewMutationVariables,\n CmsEntryUnpublishMutationResponse,\n CmsEntryUnpublishMutationVariables\n} from \"~/admin/graphql/contentEntries\";\n\ninterface CreateRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface EditRevisionHandler {\n (id?: string): void;\n}\ninterface DeleteRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface PublishRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface UnpublishRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface RequestReviewHandler {\n (id?: string): Promise<void>;\n}\ninterface RequestChangesHandler {\n (id?: string): Promise<void>;\n}\ninterface UseRevisionHandlers {\n createRevision: CreateRevisionHandler;\n editRevision: EditRevisionHandler;\n deleteRevision: DeleteRevisionHandler;\n publishRevision: PublishRevisionHandler;\n unpublishRevision: UnpublishRevisionHandler;\n requestReview: RequestReviewHandler;\n requestChanges: RequestChangesHandler;\n}\n\nexport interface UseRevisionProps {\n revision: CmsEditorContentEntry;\n}\n\nexport const useRevision = ({ revision }: UseRevisionProps) => {\n const { publishEntryRevision, deleteEntry } = useCms();\n const { contentModel, entry, setLoading, listQueryVariables } = useContentEntry();\n\n const { history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const client = useApolloClient();\n const { modelId } = contentModel;\n\n const { CREATE_REVISION, UNPUBLISH_REVISION, REQUEST_REVIEW, REQUEST_CHANGES } = useMemo(() => {\n return {\n CREATE_REVISION: GQL.createCreateFromMutation(contentModel),\n UNPUBLISH_REVISION: GQL.createUnpublishMutation(contentModel),\n REQUEST_REVIEW: GQL.createRequestReviewMutation(contentModel),\n REQUEST_CHANGES: GQL.createRequestChangesMutation(contentModel)\n };\n }, [modelId]);\n\n const {\n createRevision,\n editRevision,\n deleteRevision,\n publishRevision,\n unpublishRevision,\n requestReview,\n requestChanges\n } = useHandlers<UseRevisionHandlers>(\n { entry },\n {\n createRevision:\n (): CreateRevisionHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n const createResponse = await client.mutate<\n CmsEntryCreateFromMutationResponse,\n CmsEntryCreateFromMutationVariables\n >({\n mutation: CREATE_REVISION,\n variables: {\n revision: id || revision.id\n },\n update(cache, result) {\n if (!result || !result.data) {\n showSnackbar(\n `Missing result in update callback on Create Revision Mutation.`\n );\n return;\n }\n const newRevision = result.data.content.data;\n if (!newRevision) {\n showSnackbar(\n \"Missing revision data in update callback on Create Revision Mutation.\"\n );\n return;\n }\n\n GQLCache.updateLatestRevisionInListCache(\n contentModel,\n cache,\n newRevision,\n listQueryVariables\n );\n GQLCache.addRevisionToRevisionsCache(contentModel, cache, newRevision);\n }\n });\n\n setLoading(false);\n if (!createResponse || !createResponse.data) {\n showSnackbar(`Missing response data in Create Revision Callable.`);\n return;\n }\n\n const { data, error } = createResponse.data.content;\n\n if (error) {\n showSnackbar(error.message);\n return;\n } else if (!data) {\n showSnackbar(`Missing data in Create Revision callable.`);\n return;\n }\n\n history.push(\n `/cms/content-entries/${modelId}?id=${encodeURIComponent(data.id)}`\n );\n },\n editRevision:\n (): EditRevisionHandler =>\n (id): void => {\n history.push(\n `/cms/content-entries/${modelId}/?id=${encodeURIComponent(\n id || revision.id\n )}`\n );\n },\n deleteRevision:\n ({ entry }): DeleteRevisionHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n\n const { error, entry: targetRevision } = await deleteEntry({\n model: contentModel,\n entry,\n id: id || entry.id,\n listQueryVariables\n });\n\n setLoading(false);\n\n if (error) {\n showSnackbar(error.message);\n return;\n }\n\n // Redirect to the first revision in the list of all entry revisions.\n history.push(\n `/cms/content-entries/${modelId}?id=` +\n encodeURIComponent(targetRevision!.id)\n );\n },\n publishRevision:\n ({ entry }): PublishRevisionHandler =>\n async id => {\n setLoading(true);\n\n const response = await publishEntryRevision({\n model: contentModel,\n entry: entry,\n id: id || entry.id,\n listQueryVariables\n });\n\n setLoading(false);\n\n const { error } = response;\n if (error) {\n showSnackbar(error.message);\n return;\n }\n\n showSnackbar(\n <span>\n Successfully published revision{\" \"}\n <strong>#{response.entry!.meta.version}</strong>!\n </span>\n );\n },\n unpublishRevision:\n (): UnpublishRevisionHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n const result = await client.mutate<\n CmsEntryUnpublishMutationResponse,\n CmsEntryUnpublishMutationVariables\n >({\n mutation: UNPUBLISH_REVISION,\n variables: {\n revision: id || revision.id\n }\n });\n setLoading(false);\n if (!result || !result.data) {\n showSnackbar(`Missing result in update callback on Unpublish Mutation.`);\n return;\n }\n\n const { error } = result.data.content;\n if (error) {\n showSnackbar(error.message);\n return;\n }\n\n showSnackbar(\n <span>\n Successfully unpublished revision{\" \"}\n <strong>#{revision.meta.version}</strong>!\n </span>\n );\n },\n requestReview:\n (): RequestReviewHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n await client.mutate<\n CmsEntryRequestReviewMutationResponse,\n CmsEntryRequestReviewMutationVariables\n >({\n mutation: REQUEST_REVIEW,\n variables: {\n revision: id || revision.id\n },\n update(_, result) {\n if (!result || !result.data) {\n showSnackbar(\n `Missing result in update callback on Request Review Mutation.`\n );\n return;\n }\n const { error } = result.data.content;\n if (error) {\n return showSnackbar(error.message);\n }\n\n showSnackbar(<span>Review requested successfully!</span>);\n }\n });\n\n setLoading(false);\n },\n requestChanges:\n (): RequestChangesHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n await client.mutate<\n CmsEntryRequestChangesMutationResponse,\n CmsEntryRequestChangesMutationVariables\n >({\n mutation: REQUEST_CHANGES,\n variables: {\n revision: id || revision.id\n },\n update(_, result) {\n if (!result || !result.data) {\n showSnackbar(\n `Missing result in update callback on Request Changes Mutation.`\n );\n return;\n }\n const { error } = result.data.content;\n if (error) {\n showSnackbar(error.message);\n return;\n }\n\n showSnackbar(<span>Changes requested successfully!</span>);\n }\n });\n\n setLoading(false);\n }\n }\n );\n\n return {\n createRevision,\n editRevision,\n deleteRevision,\n publishRevision,\n unpublishRevision,\n requestReview,\n requestChanges\n };\n};\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AA+CO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAAoC;EAAA,IAAjCC,QAAiC,QAAjCA,QAAiC;;EAC3D,cAA8C,IAAAC,aAAA,GAA9C;EAAA,IAAQC,oBAAR,WAAQA,oBAAR;EAAA,IAA8BC,WAA9B,WAA8BA,WAA9B;;EACA,uBAAgE,IAAAC,iCAAA,GAAhE;EAAA,IAAQC,YAAR,oBAAQA,YAAR;EAAA,IAAsBC,KAAtB,oBAAsBA,KAAtB;EAAA,IAA6BC,UAA7B,oBAA6BA,UAA7B;EAAA,IAAyCC,kBAAzC,oBAAyCA,kBAAzC;;EAEA,iBAAoB,IAAAC,sBAAA,GAApB;EAAA,IAAQC,OAAR,cAAQA,OAAR;;EACA,mBAAyB,IAAAC,yBAAA,GAAzB;EAAA,IAAQC,YAAR,gBAAQA,YAAR;;EACA,IAAMC,MAAM,GAAG,IAAAC,sBAAA,GAAf;EACA,IAAQC,OAAR,GAAoBV,YAApB,CAAQU,OAAR;;EAEA,eAAiF,IAAAC,cAAA,EAAQ,YAAM;IAC3F,OAAO;MACHC,eAAe,EAAEC,GAAG,CAACC,wBAAJ,CAA6Bd,YAA7B,CADd;MAEHe,kBAAkB,EAAEF,GAAG,CAACG,uBAAJ,CAA4BhB,YAA5B,CAFjB;MAGHiB,cAAc,EAAEJ,GAAG,CAACK,2BAAJ,CAAgClB,YAAhC,CAHb;MAIHmB,eAAe,EAAEN,GAAG,CAACO,4BAAJ,CAAiCpB,YAAjC;IAJd,CAAP;EAMH,CAPgF,EAO9E,CAACU,OAAD,CAP8E,CAAjF;EAAA,IAAQE,eAAR,YAAQA,eAAR;EAAA,IAAyBG,kBAAzB,YAAyBA,kBAAzB;EAAA,IAA6CE,cAA7C,YAA6CA,cAA7C;EAAA,IAA6DE,eAA7D,YAA6DA,eAA7D;;EASA,mBAQI,IAAAE,yBAAA,EACA;IAAEpB,KAAK,EAALA;EAAF,CADA,EAEA;IACIqB,cAAc,EACV;MAAA;QAAA,mGACA,iBAAOC,EAAP;UAAA;;UAAA;YAAA;cAAA;gBAAA;kBACIrB,UAAU,CAAC,IAAD,CAAV;kBADJ;kBAAA,OAEiCM,MAAM,CAACgB,MAAP,CAG3B;oBACEC,QAAQ,EAAEb,eADZ;oBAEEc,SAAS,EAAE;sBACP/B,QAAQ,EAAE4B,EAAE,IAAI5B,QAAQ,CAAC4B;oBADlB,CAFb;oBAKEI,MALF,kBAKSC,KALT,EAKgBC,MALhB,EAKwB;sBAClB,IAAI,CAACA,MAAD,IAAW,CAACA,MAAM,CAACC,IAAvB,EAA6B;wBACzBvB,YAAY,kEAAZ;wBAGA;sBACH;;sBACD,IAAMwB,WAAW,GAAGF,MAAM,CAACC,IAAP,CAAYE,OAAZ,CAAoBF,IAAxC;;sBACA,IAAI,CAACC,WAAL,EAAkB;wBACdxB,YAAY,CACR,uEADQ,CAAZ;wBAGA;sBACH;;sBAED0B,QAAQ,CAACC,+BAAT,CACIlC,YADJ,EAEI4B,KAFJ,EAGIG,WAHJ,EAII5B,kBAJJ;sBAMA8B,QAAQ,CAACE,2BAAT,CAAqCnC,YAArC,EAAmD4B,KAAnD,EAA0DG,WAA1D;oBACH;kBA3BH,CAH2B,CAFjC;;gBAAA;kBAEUK,cAFV;kBAmCIlC,UAAU,CAAC,KAAD,CAAV;;kBAnCJ,MAoCQ,CAACkC,cAAD,IAAmB,CAACA,cAAc,CAACN,IApC3C;oBAAA;oBAAA;kBAAA;;kBAqCQvB,YAAY,sDAAZ;kBArCR;;gBAAA;kBAAA,wBAyC4B6B,cAAc,CAACN,IAAf,CAAoBE,OAzChD,EAyCYF,IAzCZ,yBAyCYA,IAzCZ,EAyCkBO,KAzClB,yBAyCkBA,KAzClB;;kBAAA,KA2CQA,KA3CR;oBAAA;oBAAA;kBAAA;;kBA4CQ9B,YAAY,CAAC8B,KAAK,CAACC,OAAP,CAAZ;kBA5CR;;gBAAA;kBAAA,IA8CgBR,IA9ChB;oBAAA;oBAAA;kBAAA;;kBA+CQvB,YAAY,6CAAZ;kBA/CR;;gBAAA;kBAmDIF,OAAO,CAACkC,IAAR,gCAC4B7B,OAD5B,iBAC0C8B,kBAAkB,CAACV,IAAI,CAACP,EAAN,CAD5D;;gBAnDJ;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA;IAAA,CAFR;IA0DIkB,YAAY,EACR;MAAA,OACA,UAAClB,EAAD,EAAc;QACVlB,OAAO,CAACkC,IAAR,gCAC4B7B,OAD5B,kBAC2C8B,kBAAkB,CACrDjB,EAAE,IAAI5B,QAAQ,CAAC4B,EADsC,CAD7D;MAKH,CAPD;IAAA,CA3DR;IAmEImB,cAAc,EACV;MAAA,IAAGzC,KAAH,SAAGA,KAAH;MAAA;QAAA,mGACA,kBAAOsB,EAAP;UAAA;;UAAA;YAAA;cAAA;gBAAA;kBACIrB,UAAU,CAAC,IAAD,CAAV;kBADJ;kBAAA,OAGmDJ,WAAW,CAAC;oBACvD6C,KAAK,EAAE3C,YADgD;oBAEvDC,KAAK,EAALA,KAFuD;oBAGvDsB,EAAE,EAAEA,EAAE,IAAItB,KAAK,CAACsB,EAHuC;oBAIvDpB,kBAAkB,EAAlBA;kBAJuD,CAAD,CAH9D;;gBAAA;kBAAA;kBAGYkC,KAHZ,sBAGYA,KAHZ;kBAG0BO,cAH1B,sBAGmB3C,KAHnB;kBAUIC,UAAU,CAAC,KAAD,CAAV;;kBAVJ,KAYQmC,KAZR;oBAAA;oBAAA;kBAAA;;kBAaQ9B,YAAY,CAAC8B,KAAK,CAACC,OAAP,CAAZ;kBAbR;;gBAAA;kBAiBI;kBACAjC,OAAO,CAACkC,IAAR,CACI,+BAAwB7B,OAAxB,YACI8B,kBAAkB,CAACI,cAAc,CAAErB,EAAjB,CAF1B;;gBAlBJ;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA;IAAA,CApER;IA4FIsB,eAAe,EACX;MAAA,IAAG5C,KAAH,SAAGA,KAAH;MAAA;QAAA,mGACA,kBAAMsB,EAAN;UAAA;UAAA;YAAA;cAAA;gBAAA;kBACIrB,UAAU,CAAC,IAAD,CAAV;kBADJ;kBAAA,OAG2BL,oBAAoB,CAAC;oBACxC8C,KAAK,EAAE3C,YADiC;oBAExCC,KAAK,EAAEA,KAFiC;oBAGxCsB,EAAE,EAAEA,EAAE,IAAItB,KAAK,CAACsB,EAHwB;oBAIxCpB,kBAAkB,EAAlBA;kBAJwC,CAAD,CAH/C;;gBAAA;kBAGU2C,QAHV;kBAUI5C,UAAU,CAAC,KAAD,CAAV;kBAEQmC,KAZZ,GAYsBS,QAZtB,CAYYT,KAZZ;;kBAAA,KAaQA,KAbR;oBAAA;oBAAA;kBAAA;;kBAcQ9B,YAAY,CAAC8B,KAAK,CAACC,OAAP,CAAZ;kBAdR;;gBAAA;kBAkBI/B,YAAY,eACR,8EACoC,GADpC,eAEI,kDAAUuC,QAAQ,CAAC7C,KAAT,CAAgB8C,IAAhB,CAAqBC,OAA/B,CAFJ,MADQ,CAAZ;;gBAlBJ;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA;IAAA,CA7FR;IAuHIC,iBAAiB,EACb;MAAA;QAAA,mGACA,kBAAO1B,EAAP;UAAA;UAAA;YAAA;cAAA;gBAAA;kBACIrB,UAAU,CAAC,IAAD,CAAV;kBADJ;kBAAA,OAEyBM,MAAM,CAACgB,MAAP,CAGnB;oBACEC,QAAQ,EAAEV,kBADZ;oBAEEW,SAAS,EAAE;sBACP/B,QAAQ,EAAE4B,EAAE,IAAI5B,QAAQ,CAAC4B;oBADlB;kBAFb,CAHmB,CAFzB;;gBAAA;kBAEUM,MAFV;kBAWI3B,UAAU,CAAC,KAAD,CAAV;;kBAXJ,MAYQ,CAAC2B,MAAD,IAAW,CAACA,MAAM,CAACC,IAZ3B;oBAAA;oBAAA;kBAAA;;kBAaQvB,YAAY,4DAAZ;kBAbR;;gBAAA;kBAiBY8B,KAjBZ,GAiBsBR,MAAM,CAACC,IAAP,CAAYE,OAjBlC,CAiBYK,KAjBZ;;kBAAA,KAkBQA,KAlBR;oBAAA;oBAAA;kBAAA;;kBAmBQ9B,YAAY,CAAC8B,KAAK,CAACC,OAAP,CAAZ;kBAnBR;;gBAAA;kBAuBI/B,YAAY,eACR,gFACsC,GADtC,eAEI,kDAAUZ,QAAQ,CAACoD,IAAT,CAAcC,OAAxB,CAFJ,MADQ,CAAZ;;gBAvBJ;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA;IAAA,CAxHR;IAuJIE,aAAa,EACT;MAAA;QAAA,mGACA,kBAAO3B,EAAP;UAAA;YAAA;cAAA;gBAAA;kBACIrB,UAAU,CAAC,IAAD,CAAV;kBADJ;kBAAA,OAEUM,MAAM,CAACgB,MAAP,CAGJ;oBACEC,QAAQ,EAAER,cADZ;oBAEES,SAAS,EAAE;sBACP/B,QAAQ,EAAE4B,EAAE,IAAI5B,QAAQ,CAAC4B;oBADlB,CAFb;oBAKEI,MALF,kBAKSwB,CALT,EAKYtB,MALZ,EAKoB;sBACd,IAAI,CAACA,MAAD,IAAW,CAACA,MAAM,CAACC,IAAvB,EAA6B;wBACzBvB,YAAY,iEAAZ;wBAGA;sBACH;;sBACD,IAAQ8B,KAAR,GAAkBR,MAAM,CAACC,IAAP,CAAYE,OAA9B,CAAQK,KAAR;;sBACA,IAAIA,KAAJ,EAAW;wBACP,OAAO9B,YAAY,CAAC8B,KAAK,CAACC,OAAP,CAAnB;sBACH;;sBAED/B,YAAY,eAAC,4EAAD,CAAZ;oBACH;kBAlBH,CAHI,CAFV;;gBAAA;kBA0BIL,UAAU,CAAC,KAAD,CAAV;;gBA1BJ;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA;IAAA,CAxJR;IAqLIkD,cAAc,EACV;MAAA;QAAA,mGACA,kBAAO7B,EAAP;UAAA;YAAA;cAAA;gBAAA;kBACIrB,UAAU,CAAC,IAAD,CAAV;kBADJ;kBAAA,OAEUM,MAAM,CAACgB,MAAP,CAGJ;oBACEC,QAAQ,EAAEN,eADZ;oBAEEO,SAAS,EAAE;sBACP/B,QAAQ,EAAE4B,EAAE,IAAI5B,QAAQ,CAAC4B;oBADlB,CAFb;oBAKEI,MALF,kBAKSwB,CALT,EAKYtB,MALZ,EAKoB;sBACd,IAAI,CAACA,MAAD,IAAW,CAACA,MAAM,CAACC,IAAvB,EAA6B;wBACzBvB,YAAY,kEAAZ;wBAGA;sBACH;;sBACD,IAAQ8B,KAAR,GAAkBR,MAAM,CAACC,IAAP,CAAYE,OAA9B,CAAQK,KAAR;;sBACA,IAAIA,KAAJ,EAAW;wBACP9B,YAAY,CAAC8B,KAAK,CAACC,OAAP,CAAZ;wBACA;sBACH;;sBAED/B,YAAY,eAAC,6EAAD,CAAZ;oBACH;kBAnBH,CAHI,CAFV;;gBAAA;kBA2BIL,UAAU,CAAC,KAAD,CAAV;;gBA3BJ;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA;IAAA;EAtLR,CAFA,CARJ;EAAA,IACIoB,cADJ,gBACIA,cADJ;EAAA,IAEImB,YAFJ,gBAEIA,YAFJ;EAAA,IAGIC,cAHJ,gBAGIA,cAHJ;EAAA,IAIIG,eAJJ,gBAIIA,eAJJ;EAAA,IAKII,iBALJ,gBAKIA,iBALJ;EAAA,IAMIC,aANJ,gBAMIA,aANJ;EAAA,IAOIE,cAPJ,gBAOIA,cAPJ;;EAiOA,OAAO;IACH9B,cAAc,EAAdA,cADG;IAEHmB,YAAY,EAAZA,YAFG;IAGHC,cAAc,EAAdA,cAHG;IAIHG,eAAe,EAAfA,eAJG;IAKHI,iBAAiB,EAAjBA,iBALG;IAMHC,aAAa,EAAbA,aANG;IAOHE,cAAc,EAAdA;EAPG,CAAP;AASH,CA5PM"}
1
+ {"version":3,"names":["useRevision","revision","useCms","publishEntryRevision","deleteEntry","useContentEntry","contentModel","entry","setLoading","listQueryVariables","useRouter","history","useSnackbar","showSnackbar","client","useApolloClient","modelId","useMemo","CREATE_REVISION","GQL","createCreateFromMutation","UNPUBLISH_REVISION","createUnpublishMutation","useHandlers","createRevision","id","mutate","mutation","variables","fetchPolicy","getFetchPolicy","createResponse","data","content","error","message","GQLCache","updateLatestRevisionInListCache","cache","addRevisionToRevisionsCache","push","encodeURIComponent","editRevision","deleteRevision","model","targetRevision","publishRevision","response","meta","version","unpublishRevision","result"],"sources":["useRevision.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useHandlers } from \"@webiny/app/hooks/useHandlers\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { CmsEditorContentEntry } from \"~/types\";\nimport * as GQL from \"~/admin/graphql/contentEntries\";\nimport * as GQLCache from \"./cache\";\nimport { useApolloClient, useCms } from \"~/admin/hooks\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport {\n CmsEntryCreateFromMutationResponse,\n CmsEntryCreateFromMutationVariables,\n CmsEntryUnpublishMutationResponse,\n CmsEntryUnpublishMutationVariables\n} from \"~/admin/graphql/contentEntries\";\nimport { getFetchPolicy } from \"~/utils/getFetchPolicy\";\n\ninterface CreateRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface EditRevisionHandler {\n (id?: string): void;\n}\ninterface DeleteRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface PublishRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface UnpublishRevisionHandler {\n (id?: string): Promise<void>;\n}\ninterface UseRevisionHandlers {\n createRevision: CreateRevisionHandler;\n editRevision: EditRevisionHandler;\n deleteRevision: DeleteRevisionHandler;\n publishRevision: PublishRevisionHandler;\n unpublishRevision: UnpublishRevisionHandler;\n}\n\nexport interface UseRevisionProps {\n revision: CmsEditorContentEntry;\n}\n\nexport const useRevision = ({ revision }: UseRevisionProps) => {\n const { publishEntryRevision, deleteEntry } = useCms();\n const { contentModel, entry, setLoading, listQueryVariables } = useContentEntry();\n\n const { history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const client = useApolloClient();\n const { modelId } = contentModel;\n\n const { CREATE_REVISION, UNPUBLISH_REVISION } = useMemo(() => {\n return {\n CREATE_REVISION: GQL.createCreateFromMutation(contentModel),\n UNPUBLISH_REVISION: GQL.createUnpublishMutation(contentModel)\n };\n }, [modelId]);\n\n const { createRevision, editRevision, deleteRevision, publishRevision, unpublishRevision } =\n useHandlers<UseRevisionHandlers>(\n { entry },\n {\n createRevision:\n (): CreateRevisionHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n const createResponse = await client.mutate<\n CmsEntryCreateFromMutationResponse,\n CmsEntryCreateFromMutationVariables\n >({\n mutation: CREATE_REVISION,\n variables: {\n revision: id || revision.id\n },\n fetchPolicy: getFetchPolicy(contentModel)\n });\n\n setLoading(false);\n\n if (!createResponse || !createResponse.data) {\n showSnackbar(`Missing response data in Create Revision Callable.`);\n return;\n }\n\n const { data, error } = createResponse.data.content;\n\n if (error) {\n showSnackbar(error.message);\n return;\n } else if (!data) {\n showSnackbar(`Missing data in Create Revision callable.`);\n return;\n }\n\n GQLCache.updateLatestRevisionInListCache(\n contentModel,\n client.cache,\n data,\n listQueryVariables\n );\n GQLCache.addRevisionToRevisionsCache(contentModel, client.cache, data);\n\n history.push(\n `/cms/content-entries/${modelId}?id=${encodeURIComponent(data.id)}`\n );\n },\n editRevision:\n (): EditRevisionHandler =>\n (id): void => {\n history.push(\n `/cms/content-entries/${modelId}/?id=${encodeURIComponent(\n id || revision.id\n )}`\n );\n },\n deleteRevision:\n ({ entry }): DeleteRevisionHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n\n const { error, entry: targetRevision } = await deleteEntry({\n model: contentModel,\n entry,\n id: id || entry.id,\n listQueryVariables\n });\n\n setLoading(false);\n\n if (error) {\n showSnackbar(error.message);\n return;\n }\n\n // Redirect to the first revision in the list of all entry revisions.\n history.push(\n `/cms/content-entries/${modelId}?id=` +\n encodeURIComponent(targetRevision!.id)\n );\n },\n publishRevision:\n ({ entry }): PublishRevisionHandler =>\n async id => {\n setLoading(true);\n\n const response = await publishEntryRevision({\n model: contentModel,\n entry: entry,\n id: id || entry.id,\n listQueryVariables\n });\n\n setLoading(false);\n\n const { error } = response;\n if (error) {\n showSnackbar(error.message);\n return;\n }\n\n showSnackbar(\n <span>\n Successfully published revision{\" \"}\n <strong>#{response.entry!.meta.version}</strong>!\n </span>\n );\n },\n unpublishRevision:\n (): UnpublishRevisionHandler =>\n async (id): Promise<void> => {\n setLoading(true);\n const result = await client.mutate<\n CmsEntryUnpublishMutationResponse,\n CmsEntryUnpublishMutationVariables\n >({\n mutation: UNPUBLISH_REVISION,\n variables: {\n revision: id || revision.id\n }\n });\n setLoading(false);\n if (!result || !result.data) {\n showSnackbar(\n `Missing result in update callback on Unpublish Mutation.`\n );\n return;\n }\n\n const { error } = result.data.content;\n if (error) {\n showSnackbar(error.message);\n return;\n }\n\n showSnackbar(\n <span>\n Successfully unpublished revision{\" \"}\n <strong>#{revision.meta.version}</strong>!\n </span>\n );\n }\n }\n );\n\n return {\n createRevision,\n editRevision,\n deleteRevision,\n publishRevision,\n unpublishRevision\n };\n};\n"],"mappings":"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"}
@@ -70,7 +70,6 @@ var elevationStyles = /*#__PURE__*/(0, _emotion.css)({
70
70
 
71
71
  var ContentEntry = function ContentEntry() {
72
72
  var _useContentEntry = (0, _useContentEntry2.useContentEntry)(),
73
- contentModel = _useContentEntry.contentModel,
74
73
  loading = _useContentEntry.loading,
75
74
  entry = _useContentEntry.entry,
76
75
  showEmptyView = _useContentEntry.showEmptyView,
@@ -106,7 +105,6 @@ var ContentEntry = function ContentEntry() {
106
105
  z: 2,
107
106
  className: elevationStyles
108
107
  }, loading && /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, null), /*#__PURE__*/_react.default.createElement(_Header.default, null), /*#__PURE__*/_react.default.createElement(_ContentEntryForm.ContentEntryForm, {
109
- contentModel: contentModel,
110
108
  entry: entry,
111
109
  onForm: function onForm(form) {
112
110
  return setFormRef(form);
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","namespace","DetailsContainer","styled","height","overflow","position","nav","backgroundColor","RenderBlock","zIndex","padding","elevationStyles","css","ContentEntry","useContentEntry","contentModel","loading","entry","showEmptyView","canCreate","createEntry","tabsRef","setFormRef","message","form"],"sources":["ContentEntry.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport EmptyView from \"@webiny/app-admin/components/EmptyView\";\nimport { ButtonDefault, ButtonIcon } from \"@webiny/ui/Button\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Tab, Tabs } from \"@webiny/ui/Tabs\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport RevisionsList from \"./ContentEntry/RevisionsList\";\nimport Header from \"./ContentEntry/header/Header\";\nimport { useContentEntry } from \"./hooks/useContentEntry\";\nimport { ContentEntryForm } from \"~/admin/components/ContentEntryForm/ContentEntryForm\";\n\nconst t = i18n.namespace(\"app-headless-cms/admin/content-model-entries/details\");\n\nconst DetailsContainer = styled(\"div\")({\n height: \"calc(100% - 10px)\",\n overflow: \"hidden\",\n position: \"relative\",\n nav: {\n backgroundColor: \"var(--mdc-theme-surface)\"\n }\n});\n\nconst RenderBlock = styled(\"div\")({\n position: \"relative\",\n zIndex: 0,\n backgroundColor: \"var(--mdc-theme-background)\",\n height: \"100%\",\n /*overflow: \"scroll\",*/\n padding: 25\n});\n\nconst elevationStyles = css({\n position: \"relative\"\n});\n\ndeclare global {\n // eslint-disable-next-line\n namespace JSX {\n interface IntrinsicElements {\n \"test-id\": {\n children?: React.ReactNode;\n };\n }\n }\n}\n\nexport const ContentEntry: React.FC = () => {\n const {\n contentModel,\n loading,\n entry,\n showEmptyView,\n canCreate,\n createEntry,\n tabsRef,\n setFormRef\n } = useContentEntry();\n\n // Render \"No content selected\" view.\n if (showEmptyView) {\n return (\n <EmptyView\n title={t`Click on the left side list to display entry details {message}`({\n message: canCreate ? \"or create a...\" : \"\"\n })}\n action={\n canCreate ? (\n <ButtonDefault data-testid=\"new-record-button\" onClick={createEntry}>\n <ButtonIcon icon={<AddIcon />} /> {t`New Entry`}\n </ButtonDefault>\n ) : null\n }\n />\n );\n }\n\n return (\n <DetailsContainer>\n <test-id data-testid=\"cms-content-details\">\n <Tabs ref={tabsRef}>\n <Tab\n label={\"Content\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.content\"}\n >\n <RenderBlock>\n <Elevation z={2} className={elevationStyles}>\n {loading && <CircularProgress />}\n <Header />\n <ContentEntryForm\n contentModel={contentModel}\n entry={entry}\n onForm={form => setFormRef(form)}\n addEntryToListCache={true}\n />\n </Elevation>\n </RenderBlock>\n </Tab>\n <Tab\n label={\"Revisions\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.revisions\"}\n >\n <RevisionsList />\n </Tab>\n </Tabs>\n </test-id>\n </DetailsContainer>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,SAAL,CAAe,sDAAf,CAAV;;AAEA,IAAMC,gBAAgB,oBAAGC,eAAH,EAAU,KAAV;EAAA;EAAA;AAAA,GAAiB;EACnCC,MAAM,EAAE,mBAD2B;EAEnCC,QAAQ,EAAE,QAFyB;EAGnCC,QAAQ,EAAE,UAHyB;EAInCC,GAAG,EAAE;IACDC,eAAe,EAAE;EADhB;AAJ8B,CAAjB,CAAtB;AASA,IAAMC,WAAW,oBAAGN,eAAH,EAAU,KAAV;EAAA;EAAA;AAAA,GAAiB;EAC9BG,QAAQ,EAAE,UADoB;EAE9BI,MAAM,EAAE,CAFsB;EAG9BF,eAAe,EAAE,6BAHa;EAI9BJ,MAAM,EAAE,MAJsB;;EAK9B;EACAO,OAAO,EAAE;AANqB,CAAjB,CAAjB;AASA,IAAMC,eAAe,gBAAG,IAAAC,YAAA,EAAI;EACxBP,QAAQ,EAAE;AADc,CAAJ,2BAAxB;;AAeO,IAAMQ,YAAsB,GAAG,SAAzBA,YAAyB,GAAM;EACxC,uBASI,IAAAC,iCAAA,GATJ;EAAA,IACIC,YADJ,oBACIA,YADJ;EAAA,IAEIC,OAFJ,oBAEIA,OAFJ;EAAA,IAGIC,KAHJ,oBAGIA,KAHJ;EAAA,IAIIC,aAJJ,oBAIIA,aAJJ;EAAA,IAKIC,SALJ,oBAKIA,SALJ;EAAA,IAMIC,WANJ,oBAMIA,WANJ;EAAA,IAOIC,OAPJ,oBAOIA,OAPJ;EAAA,IAQIC,UARJ,oBAQIA,UARJ,CADwC,CAYxC;;;EACA,IAAIJ,aAAJ,EAAmB;IACf,oBACI,6BAAC,kBAAD;MACI,KAAK,EAAEpB,CAAC,iJAAD,CAAkE;QACrEyB,OAAO,EAAEJ,SAAS,GAAG,gBAAH,GAAsB;MAD6B,CAAlE,CADX;MAII,MAAM,EACFA,SAAS,gBACL,6BAAC,qBAAD;QAAe,eAAY,mBAA3B;QAA+C,OAAO,EAAEC;MAAxD,gBACI,6BAAC,kBAAD;QAAY,IAAI,eAAE,6BAAC,uBAAD;MAAlB,EADJ,OACuCtB,CADvC,+FADK,GAIL;IATZ,EADJ;EAcH;;EAED,oBACI,6BAAC,gBAAD,qBACI;IAAS,eAAY;EAArB,gBACI,6BAAC,UAAD;IAAM,GAAG,EAAEuB;EAAX,gBACI,6BAAC,SAAD;IACI,KAAK,EAAE,SADX;IAEI,QAAQ,EAAEL,OAFd;IAGI,eAAa;EAHjB,gBAKI,6BAAC,WAAD,qBACI,6BAAC,oBAAD;IAAW,CAAC,EAAE,CAAd;IAAiB,SAAS,EAAEL;EAA5B,GACKK,OAAO,iBAAI,6BAAC,0BAAD,OADhB,eAEI,6BAAC,eAAD,OAFJ,eAGI,6BAAC,kCAAD;IACI,YAAY,EAAED,YADlB;IAEI,KAAK,EAAEE,KAFX;IAGI,MAAM,EAAE,gBAAAO,IAAI;MAAA,OAAIF,UAAU,CAACE,IAAD,CAAd;IAAA,CAHhB;IAII,mBAAmB,EAAE;EAJzB,EAHJ,CADJ,CALJ,CADJ,eAmBI,6BAAC,SAAD;IACI,KAAK,EAAE,WADX;IAEI,QAAQ,EAAER,OAFd;IAGI,eAAa;EAHjB,gBAKI,6BAAC,sBAAD,OALJ,CAnBJ,CADJ,CADJ,CADJ;AAiCH,CA/DM"}
1
+ {"version":3,"names":["t","i18n","namespace","DetailsContainer","styled","height","overflow","position","nav","backgroundColor","RenderBlock","zIndex","padding","elevationStyles","css","ContentEntry","useContentEntry","loading","entry","showEmptyView","canCreate","createEntry","tabsRef","setFormRef","message","form"],"sources":["ContentEntry.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport EmptyView from \"@webiny/app-admin/components/EmptyView\";\nimport { ButtonDefault, ButtonIcon } from \"@webiny/ui/Button\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Tab, Tabs } from \"@webiny/ui/Tabs\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport RevisionsList from \"./ContentEntry/RevisionsList\";\nimport Header from \"./ContentEntry/header/Header\";\nimport { useContentEntry } from \"./hooks/useContentEntry\";\nimport { ContentEntryForm } from \"~/admin/components/ContentEntryForm/ContentEntryForm\";\n\nconst t = i18n.namespace(\"app-headless-cms/admin/content-model-entries/details\");\n\nconst DetailsContainer = styled(\"div\")({\n height: \"calc(100% - 10px)\",\n overflow: \"hidden\",\n position: \"relative\",\n nav: {\n backgroundColor: \"var(--mdc-theme-surface)\"\n }\n});\n\nconst RenderBlock = styled(\"div\")({\n position: \"relative\",\n zIndex: 0,\n backgroundColor: \"var(--mdc-theme-background)\",\n height: \"100%\",\n /*overflow: \"scroll\",*/\n padding: 25\n});\n\nconst elevationStyles = css({\n position: \"relative\"\n});\n\ndeclare global {\n // eslint-disable-next-line\n namespace JSX {\n interface IntrinsicElements {\n \"test-id\": {\n children?: React.ReactNode;\n };\n }\n }\n}\n\nexport const ContentEntry: React.FC = () => {\n const { loading, entry, showEmptyView, canCreate, createEntry, tabsRef, setFormRef } =\n useContentEntry();\n\n // Render \"No content selected\" view.\n if (showEmptyView) {\n return (\n <EmptyView\n title={t`Click on the left side list to display entry details {message}`({\n message: canCreate ? \"or create a...\" : \"\"\n })}\n action={\n canCreate ? (\n <ButtonDefault data-testid=\"new-record-button\" onClick={createEntry}>\n <ButtonIcon icon={<AddIcon />} /> {t`New Entry`}\n </ButtonDefault>\n ) : null\n }\n />\n );\n }\n\n return (\n <DetailsContainer>\n <test-id data-testid=\"cms-content-details\">\n <Tabs ref={tabsRef}>\n <Tab\n label={\"Content\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.content\"}\n >\n <RenderBlock>\n <Elevation z={2} className={elevationStyles}>\n {loading && <CircularProgress />}\n <Header />\n <ContentEntryForm\n entry={entry}\n onForm={form => setFormRef(form)}\n addEntryToListCache={true}\n />\n </Elevation>\n </RenderBlock>\n </Tab>\n <Tab\n label={\"Revisions\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.revisions\"}\n >\n <RevisionsList />\n </Tab>\n </Tabs>\n </test-id>\n </DetailsContainer>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,SAAL,CAAe,sDAAf,CAAV;;AAEA,IAAMC,gBAAgB,oBAAGC,eAAH,EAAU,KAAV;EAAA;EAAA;AAAA,GAAiB;EACnCC,MAAM,EAAE,mBAD2B;EAEnCC,QAAQ,EAAE,QAFyB;EAGnCC,QAAQ,EAAE,UAHyB;EAInCC,GAAG,EAAE;IACDC,eAAe,EAAE;EADhB;AAJ8B,CAAjB,CAAtB;AASA,IAAMC,WAAW,oBAAGN,eAAH,EAAU,KAAV;EAAA;EAAA;AAAA,GAAiB;EAC9BG,QAAQ,EAAE,UADoB;EAE9BI,MAAM,EAAE,CAFsB;EAG9BF,eAAe,EAAE,6BAHa;EAI9BJ,MAAM,EAAE,MAJsB;;EAK9B;EACAO,OAAO,EAAE;AANqB,CAAjB,CAAjB;AASA,IAAMC,eAAe,gBAAG,IAAAC,YAAA,EAAI;EACxBP,QAAQ,EAAE;AADc,CAAJ,2BAAxB;;AAeO,IAAMQ,YAAsB,GAAG,SAAzBA,YAAyB,GAAM;EACxC,uBACI,IAAAC,iCAAA,GADJ;EAAA,IAAQC,OAAR,oBAAQA,OAAR;EAAA,IAAiBC,KAAjB,oBAAiBA,KAAjB;EAAA,IAAwBC,aAAxB,oBAAwBA,aAAxB;EAAA,IAAuCC,SAAvC,oBAAuCA,SAAvC;EAAA,IAAkDC,WAAlD,oBAAkDA,WAAlD;EAAA,IAA+DC,OAA/D,oBAA+DA,OAA/D;EAAA,IAAwEC,UAAxE,oBAAwEA,UAAxE,CADwC,CAIxC;;;EACA,IAAIJ,aAAJ,EAAmB;IACf,oBACI,6BAAC,kBAAD;MACI,KAAK,EAAEnB,CAAC,iJAAD,CAAkE;QACrEwB,OAAO,EAAEJ,SAAS,GAAG,gBAAH,GAAsB;MAD6B,CAAlE,CADX;MAII,MAAM,EACFA,SAAS,gBACL,6BAAC,qBAAD;QAAe,eAAY,mBAA3B;QAA+C,OAAO,EAAEC;MAAxD,gBACI,6BAAC,kBAAD;QAAY,IAAI,eAAE,6BAAC,uBAAD;MAAlB,EADJ,OACuCrB,CADvC,+FADK,GAIL;IATZ,EADJ;EAcH;;EAED,oBACI,6BAAC,gBAAD,qBACI;IAAS,eAAY;EAArB,gBACI,6BAAC,UAAD;IAAM,GAAG,EAAEsB;EAAX,gBACI,6BAAC,SAAD;IACI,KAAK,EAAE,SADX;IAEI,QAAQ,EAAEL,OAFd;IAGI,eAAa;EAHjB,gBAKI,6BAAC,WAAD,qBACI,6BAAC,oBAAD;IAAW,CAAC,EAAE,CAAd;IAAiB,SAAS,EAAEJ;EAA5B,GACKI,OAAO,iBAAI,6BAAC,0BAAD,OADhB,eAEI,6BAAC,eAAD,OAFJ,eAGI,6BAAC,kCAAD;IACI,KAAK,EAAEC,KADX;IAEI,MAAM,EAAE,gBAAAO,IAAI;MAAA,OAAIF,UAAU,CAACE,IAAD,CAAd;IAAA,CAFhB;IAGI,mBAAmB,EAAE;EAHzB,EAHJ,CADJ,CALJ,CADJ,eAkBI,6BAAC,SAAD;IACI,KAAK,EAAE,WADX;IAEI,QAAQ,EAAER,OAFd;IAGI,eAAa;EAHjB,gBAKI,6BAAC,sBAAD,OALJ,CAlBJ,CADJ,CADJ,CADJ;AAgCH,CAtDM"}
@@ -1,2 +1,2 @@
1
- /// <reference types="react" />
2
- export declare const ContentEntriesModule: () => JSX.Element;
1
+ import React from "react";
2
+ export declare const ContentEntriesModule: React.FC;
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.ContentEntriesModule = void 0;
9
9
 
10
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _appAdmin = require("@webiny/app-admin");
13
13
 
@@ -19,6 +19,8 @@ var _ContentEntriesViewConfig = require("./ContentEntriesViewConfig");
19
19
 
20
20
  var _ContentEntriesRenderer = require("./ContentEntriesRenderer");
21
21
 
22
+ var _plugins = require("@webiny/plugins");
23
+
22
24
  var Filter = _ContentEntriesViewConfig.ContentEntriesViewConfig.Filter,
23
25
  Sorter = _ContentEntriesViewConfig.ContentEntriesViewConfig.Sorter;
24
26
 
@@ -30,22 +32,33 @@ var FilterByStatus = function FilterByStatus() {
30
32
  cb(value === "all" ? undefined : value);
31
33
  }
32
34
  });
33
- return /*#__PURE__*/_react.default.createElement(_Select.Select, Object.assign({}, bind, {
34
- label: "Filter by status",
35
- description: "Filter by a specific entry status."
36
- }), /*#__PURE__*/_react.default.createElement("option", {
35
+ var filterStatusPlugins = (0, _react.useMemo)(function () {
36
+ return _plugins.plugins.byType("cms.entry.filter.status");
37
+ }, []);
38
+ var options = [{
39
+ label: "All",
37
40
  value: "all"
38
- }, "All"), /*#__PURE__*/_react.default.createElement("option", {
41
+ }, {
42
+ label: "Draft",
39
43
  value: "draft"
40
- }, "Draft"), /*#__PURE__*/_react.default.createElement("option", {
44
+ }, {
45
+ label: "Published",
41
46
  value: "published"
42
- }, "Published"), /*#__PURE__*/_react.default.createElement("option", {
47
+ }, {
48
+ label: "Unpublished",
43
49
  value: "unpublished"
44
- }, "Unpublished"), /*#__PURE__*/_react.default.createElement("option", {
45
- value: "reviewRequested"
46
- }, "Review requested"), /*#__PURE__*/_react.default.createElement("option", {
47
- value: "changesRequested"
48
- }, "Changes requested"));
50
+ }];
51
+ filterStatusPlugins.forEach(function (pl) {
52
+ options.push({
53
+ label: pl.label,
54
+ value: pl.value
55
+ });
56
+ });
57
+ return /*#__PURE__*/_react.default.createElement(_Select.Select, Object.assign({}, bind, {
58
+ label: "Filter by status",
59
+ description: "Filter by a specific entry status.",
60
+ options: options
61
+ }));
49
62
  };
50
63
 
51
64
  var ContentEntriesModule = function ContentEntriesModule() {
@@ -1 +1 @@
1
- {"version":3,"names":["Filter","ContentEntriesViewConfig","Sorter","FilterByStatus","bind","useBind","name","defaultValue","beforeChange","value","cb","undefined","ContentEntriesModule","ContentEntriesViewRenderer","ContentEntriesRenderer"],"sources":["ContentEntriesModule.tsx"],"sourcesContent":["import React from \"react\";\nimport { Compose, Plugins } from \"@webiny/app-admin\";\nimport { useBind } from \"@webiny/form\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { ContentEntriesViewRenderer, ContentEntriesViewConfig } from \"./ContentEntriesViewConfig\";\nimport { ContentEntriesRenderer } from \"./ContentEntriesRenderer\";\n\nconst { Filter, Sorter } = ContentEntriesViewConfig;\n\nconst FilterByStatus = () => {\n const bind = useBind({\n name: \"status\",\n defaultValue: \"all\",\n beforeChange(value, cb) {\n cb(value === \"all\" ? undefined : value);\n }\n });\n\n return (\n <Select\n {...bind}\n label={\"Filter by status\"}\n description={\"Filter by a specific entry status.\"}\n >\n <option value={\"all\"}>All</option>\n <option value={\"draft\"}>Draft</option>\n <option value={\"published\"}>Published</option>\n <option value={\"unpublished\"}>Unpublished</option>\n <option value={\"reviewRequested\"}>Review requested</option>\n <option value={\"changesRequested\"}>Changes requested</option>\n </Select>\n );\n};\n\nexport const ContentEntriesModule = () => {\n return (\n <>\n <Compose component={ContentEntriesViewRenderer} with={ContentEntriesRenderer} />\n <Plugins>\n <ContentEntriesViewConfig>\n <Filter name={\"status\"} element={<FilterByStatus />} />\n <Sorter name={\"savedOn_DESC\"} label={\"Newest to oldest\"} />\n <Sorter name={\"savedOn_ASC\"} label={\"Oldest to newest\"} />\n </ContentEntriesViewConfig>\n </Plugins>\n </>\n );\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAQA,MAAR,GAA2BC,kDAA3B,CAAQD,MAAR;AAAA,IAAgBE,MAAhB,GAA2BD,kDAA3B,CAAgBC,MAAhB;;AAEA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,GAAM;EACzB,IAAMC,IAAI,GAAG,IAAAC,aAAA,EAAQ;IACjBC,IAAI,EAAE,QADW;IAEjBC,YAAY,EAAE,KAFG;IAGjBC,YAHiB,wBAGJC,KAHI,EAGGC,EAHH,EAGO;MACpBA,EAAE,CAACD,KAAK,KAAK,KAAV,GAAkBE,SAAlB,GAA8BF,KAA/B,CAAF;IACH;EALgB,CAAR,CAAb;EAQA,oBACI,6BAAC,cAAD,oBACQL,IADR;IAEI,KAAK,EAAE,kBAFX;IAGI,WAAW,EAAE;EAHjB,iBAKI;IAAQ,KAAK,EAAE;EAAf,SALJ,eAMI;IAAQ,KAAK,EAAE;EAAf,WANJ,eAOI;IAAQ,KAAK,EAAE;EAAf,eAPJ,eAQI;IAAQ,KAAK,EAAE;EAAf,iBARJ,eASI;IAAQ,KAAK,EAAE;EAAf,sBATJ,eAUI;IAAQ,KAAK,EAAE;EAAf,uBAVJ,CADJ;AAcH,CAvBD;;AAyBO,IAAMQ,oBAAoB,GAAG,SAAvBA,oBAAuB,GAAM;EACtC,oBACI,yEACI,6BAAC,iBAAD;IAAS,SAAS,EAAEC,oDAApB;IAAgD,IAAI,EAAEC;EAAtD,EADJ,eAEI,6BAAC,iBAAD,qBACI,6BAAC,kDAAD,qBACI,6BAAC,MAAD;IAAQ,IAAI,EAAE,QAAd;IAAwB,OAAO,eAAE,6BAAC,cAAD;EAAjC,EADJ,eAEI,6BAAC,MAAD;IAAQ,IAAI,EAAE,cAAd;IAA8B,KAAK,EAAE;EAArC,EAFJ,eAGI,6BAAC,MAAD;IAAQ,IAAI,EAAE,aAAd;IAA6B,KAAK,EAAE;EAApC,EAHJ,CADJ,CAFJ,CADJ;AAYH,CAbM"}
1
+ {"version":3,"names":["Filter","ContentEntriesViewConfig","Sorter","FilterByStatus","bind","useBind","name","defaultValue","beforeChange","value","cb","undefined","filterStatusPlugins","useMemo","plugins","byType","options","label","forEach","pl","push","ContentEntriesModule","ContentEntriesViewRenderer","ContentEntriesRenderer"],"sources":["ContentEntriesModule.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { Compose, Plugins } from \"@webiny/app-admin\";\nimport { useBind } from \"@webiny/form\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { ContentEntriesViewRenderer, ContentEntriesViewConfig } from \"./ContentEntriesViewConfig\";\nimport { ContentEntriesRenderer } from \"./ContentEntriesRenderer\";\nimport { plugins } from \"@webiny/plugins\";\nimport { CmsEntryFilterStatusPlugin } from \"~/types\";\n\nconst { Filter, Sorter } = ContentEntriesViewConfig;\n\nconst FilterByStatus: React.FC = () => {\n const bind = useBind({\n name: \"status\",\n defaultValue: \"all\",\n beforeChange(value, cb) {\n cb(value === \"all\" ? undefined : value);\n }\n });\n\n const filterStatusPlugins = useMemo(() => {\n return plugins.byType<CmsEntryFilterStatusPlugin>(\"cms.entry.filter.status\");\n }, []);\n\n const options = [\n { label: \"All\", value: \"all\" },\n { label: \"Draft\", value: \"draft\" },\n { label: \"Published\", value: \"published\" },\n { label: \"Unpublished\", value: \"unpublished\" }\n ];\n\n filterStatusPlugins.forEach(pl => {\n options.push({ label: pl.label, value: pl.value });\n });\n\n return (\n <Select\n {...bind}\n label={\"Filter by status\"}\n description={\"Filter by a specific entry status.\"}\n options={options}\n />\n );\n};\n\nexport const ContentEntriesModule: React.FC = () => {\n return (\n <>\n <Compose component={ContentEntriesViewRenderer} with={ContentEntriesRenderer} />\n <Plugins>\n <ContentEntriesViewConfig>\n <Filter name={\"status\"} element={<FilterByStatus />} />\n <Sorter name={\"savedOn_DESC\"} label={\"Newest to oldest\"} />\n <Sorter name={\"savedOn_ASC\"} label={\"Oldest to newest\"} />\n </ContentEntriesViewConfig>\n </Plugins>\n </>\n );\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA,IAAQA,MAAR,GAA2BC,kDAA3B,CAAQD,MAAR;AAAA,IAAgBE,MAAhB,GAA2BD,kDAA3B,CAAgBC,MAAhB;;AAEA,IAAMC,cAAwB,GAAG,SAA3BA,cAA2B,GAAM;EACnC,IAAMC,IAAI,GAAG,IAAAC,aAAA,EAAQ;IACjBC,IAAI,EAAE,QADW;IAEjBC,YAAY,EAAE,KAFG;IAGjBC,YAHiB,wBAGJC,KAHI,EAGGC,EAHH,EAGO;MACpBA,EAAE,CAACD,KAAK,KAAK,KAAV,GAAkBE,SAAlB,GAA8BF,KAA/B,CAAF;IACH;EALgB,CAAR,CAAb;EAQA,IAAMG,mBAAmB,GAAG,IAAAC,cAAA,EAAQ,YAAM;IACtC,OAAOC,gBAAA,CAAQC,MAAR,CAA2C,yBAA3C,CAAP;EACH,CAF2B,EAEzB,EAFyB,CAA5B;EAIA,IAAMC,OAAO,GAAG,CACZ;IAAEC,KAAK,EAAE,KAAT;IAAgBR,KAAK,EAAE;EAAvB,CADY,EAEZ;IAAEQ,KAAK,EAAE,OAAT;IAAkBR,KAAK,EAAE;EAAzB,CAFY,EAGZ;IAAEQ,KAAK,EAAE,WAAT;IAAsBR,KAAK,EAAE;EAA7B,CAHY,EAIZ;IAAEQ,KAAK,EAAE,aAAT;IAAwBR,KAAK,EAAE;EAA/B,CAJY,CAAhB;EAOAG,mBAAmB,CAACM,OAApB,CAA4B,UAAAC,EAAE,EAAI;IAC9BH,OAAO,CAACI,IAAR,CAAa;MAAEH,KAAK,EAAEE,EAAE,CAACF,KAAZ;MAAmBR,KAAK,EAAEU,EAAE,CAACV;IAA7B,CAAb;EACH,CAFD;EAIA,oBACI,6BAAC,cAAD,oBACQL,IADR;IAEI,KAAK,EAAE,kBAFX;IAGI,WAAW,EAAE,oCAHjB;IAII,OAAO,EAAEY;EAJb,GADJ;AAQH,CAhCD;;AAkCO,IAAMK,oBAA8B,GAAG,SAAjCA,oBAAiC,GAAM;EAChD,oBACI,yEACI,6BAAC,iBAAD;IAAS,SAAS,EAAEC,oDAApB;IAAgD,IAAI,EAAEC;EAAtD,EADJ,eAEI,6BAAC,iBAAD,qBACI,6BAAC,kDAAD,qBACI,6BAAC,MAAD;IAAQ,IAAI,EAAE,QAAd;IAAwB,OAAO,eAAE,6BAAC,cAAD;EAAjC,EADJ,eAEI,6BAAC,MAAD;IAAQ,IAAI,EAAE,cAAd;IAA8B,KAAK,EAAE;EAArC,EAFJ,eAGI,6BAAC,MAAD;IAAQ,IAAI,EAAE,aAAd;IAA6B,KAAK,EAAE;EAApC,EAHJ,CADJ,CAFJ,CADJ;AAYH,CAbM"}