@webiny/app-headless-cms 5.27.0-beta.0 → 5.28.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 (520) hide show
  1. package/HeadlessCMS.js +33 -13
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntryForm/ContentEntryForm.js +61 -34
  4. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  5. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +41 -18
  6. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
  7. package/admin/components/ContentEntryForm/Fields.js +22 -9
  8. package/admin/components/ContentEntryForm/Fields.js.map +1 -1
  9. package/admin/components/ContentEntryForm/Label.js +23 -9
  10. package/admin/components/ContentEntryForm/Label.js.map +1 -1
  11. package/admin/components/ContentEntryForm/RenderFieldElement.js +31 -15
  12. package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
  13. package/admin/components/ContentEntryForm/functions/createValidators.js +23 -8
  14. package/admin/components/ContentEntryForm/functions/createValidators.js.map +1 -1
  15. package/admin/components/ContentEntryForm/functions/getValue.js +11 -2
  16. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
  17. package/admin/components/ContentEntryForm/functions/setValue.js +16 -4
  18. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
  19. package/admin/components/ContentEntryForm/useBind.js +31 -27
  20. package/admin/components/ContentEntryForm/useBind.js.map +1 -1
  21. package/admin/components/ContentEntryForm/useContentEntryForm.js +77 -52
  22. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
  23. package/admin/components/ContentEntryForm/useRenderPlugins.js +14 -5
  24. package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -1
  25. package/admin/components/ContentModelEditor/Context.js +73 -43
  26. package/admin/components/ContentModelEditor/Context.js.map +1 -1
  27. package/admin/components/ContentModelEditor/Editor.js +85 -50
  28. package/admin/components/ContentModelEditor/Editor.js.map +1 -1
  29. package/admin/components/ContentModelEditor/FieldsSidebar.js +37 -19
  30. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
  31. package/admin/components/ContentModelEditor/Header.js +24 -10
  32. package/admin/components/ContentModelEditor/Header.js.map +1 -1
  33. package/admin/components/ContentModelEditor/PreviewTab.js +36 -17
  34. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
  35. package/admin/components/ContentModelEditor/useContentModelEditor.js +15 -4
  36. package/admin/components/ContentModelEditor/useContentModelEditor.js.map +1 -1
  37. package/admin/components/DragPreview.js +27 -12
  38. package/admin/components/DragPreview.js.map +1 -1
  39. package/admin/components/Draggable.js +22 -8
  40. package/admin/components/Draggable.js.map +1 -1
  41. package/admin/components/DropZone/Center.js +26 -12
  42. package/admin/components/DropZone/Center.js.map +1 -1
  43. package/admin/components/DropZone/Horizontal.js +31 -17
  44. package/admin/components/DropZone/Horizontal.js.map +1 -1
  45. package/admin/components/DropZone/Vertical.js +29 -15
  46. package/admin/components/DropZone/Vertical.js.map +1 -1
  47. package/admin/components/DropZone/index.js +31 -4
  48. package/admin/components/DropZone/index.js.map +1 -1
  49. package/admin/components/Droppable.js +20 -6
  50. package/admin/components/Droppable.js.map +1 -1
  51. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +50 -27
  52. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
  53. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +55 -36
  54. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
  55. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +60 -21
  56. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
  57. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +50 -32
  58. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +1 -1
  59. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js +13 -3
  60. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -1
  61. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js +16 -6
  62. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -1
  63. package/admin/components/FieldEditor/EditFieldDialog.js +105 -69
  64. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
  65. package/admin/components/FieldEditor/Field.js +86 -51
  66. package/admin/components/FieldEditor/Field.js.map +1 -1
  67. package/admin/components/FieldEditor/FieldEditor.js +66 -40
  68. package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
  69. package/admin/components/FieldEditor/FieldEditorContext.js +51 -27
  70. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
  71. package/admin/components/FieldEditor/Styled.js +24 -8
  72. package/admin/components/FieldEditor/Styled.js.map +1 -1
  73. package/admin/components/FieldEditor/index.js +21 -2
  74. package/admin/components/FieldEditor/index.js.map +1 -1
  75. package/admin/components/FieldEditor/useFieldEditor.js +13 -4
  76. package/admin/components/FieldEditor/useFieldEditor.js.map +1 -1
  77. package/admin/components/FieldEditor/utils/deleteField.js +19 -5
  78. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
  79. package/admin/components/FieldEditor/utils/getFieldPosition.js +11 -2
  80. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
  81. package/admin/components/FieldEditor/utils/index.js +39 -4
  82. package/admin/components/FieldEditor/utils/index.js.map +1 -1
  83. package/admin/components/FieldEditor/utils/moveField.js +30 -20
  84. package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
  85. package/admin/components/FieldEditor/utils/moveRow.js +19 -6
  86. package/admin/components/FieldEditor/utils/moveRow.js.map +1 -1
  87. package/admin/constants/statusLabels.js +21 -9
  88. package/admin/constants/statusLabels.js.map +1 -1
  89. package/admin/contexts/Cms/NetworkError.js +14 -4
  90. package/admin/contexts/Cms/NetworkError.js.map +1 -1
  91. package/admin/contexts/Cms/index.js +29 -11
  92. package/admin/contexts/Cms/index.js.map +1 -1
  93. package/admin/elements/ContentGroupMenuElement.js +27 -12
  94. package/admin/elements/ContentGroupMenuElement.js.map +1 -1
  95. package/admin/elements/ContentModelMenuElement.js +27 -12
  96. package/admin/elements/ContentModelMenuElement.js.map +1 -1
  97. package/admin/elements/NothingToShowElement.js +51 -30
  98. package/admin/elements/NothingToShowElement.js.map +1 -1
  99. package/admin/graphql/contentEntries.js +84 -40
  100. package/admin/graphql/contentEntries.js.map +1 -1
  101. package/admin/graphql/contentModels.js +20 -6
  102. package/admin/graphql/contentModels.js.map +1 -1
  103. package/admin/graphql/createFieldsList.js +19 -6
  104. package/admin/graphql/createFieldsList.js.map +1 -1
  105. package/admin/hooks/index.js +68 -6
  106. package/admin/hooks/index.js.map +1 -1
  107. package/admin/hooks/useApolloClient.js +13 -3
  108. package/admin/hooks/useApolloClient.js.map +1 -1
  109. package/admin/hooks/useCms.js +13 -4
  110. package/admin/hooks/useCms.js.map +1 -1
  111. package/admin/hooks/useLazyQuery.js +18 -6
  112. package/admin/hooks/useLazyQuery.js.map +1 -1
  113. package/admin/hooks/useMutation.js +18 -6
  114. package/admin/hooks/useMutation.js.map +1 -1
  115. package/admin/hooks/usePermission.js +39 -23
  116. package/admin/hooks/usePermission.js.map +1 -1
  117. package/admin/hooks/useQuery.js +18 -6
  118. package/admin/hooks/useQuery.js.map +1 -1
  119. package/admin/hooks/useQueryLocale.js +21 -7
  120. package/admin/hooks/useQueryLocale.js.map +1 -1
  121. package/admin/menus/CmsMenuLoader.js +32 -14
  122. package/admin/menus/CmsMenuLoader.js.map +1 -1
  123. package/admin/menus/ContentGroupsMenuItems.js +43 -24
  124. package/admin/menus/ContentGroupsMenuItems.js.map +1 -1
  125. package/admin/menus/GlobalSearchPlugins.js +31 -15
  126. package/admin/menus/GlobalSearchPlugins.js.map +1 -1
  127. package/admin/menus/NothingToShowElement.js +26 -11
  128. package/admin/menus/NothingToShowElement.js.map +1 -1
  129. package/admin/plugins/apiInformation/index.js +17 -5
  130. package/admin/plugins/apiInformation/index.js.map +1 -1
  131. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js +33 -21
  132. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -1
  133. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js +33 -20
  134. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -1
  135. package/admin/plugins/editor/defaultBar/BackButton.js +28 -11
  136. package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -1
  137. package/admin/plugins/editor/defaultBar/CreateContentButton.js +39 -20
  138. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
  139. package/admin/plugins/editor/defaultBar/Divider.js +14 -3
  140. package/admin/plugins/editor/defaultBar/Divider.js.map +1 -1
  141. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +67 -39
  142. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  143. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js +29 -13
  144. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -1
  145. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js +30 -10
  146. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -1
  147. package/admin/plugins/editor/defaultBar/FormSettings/index.js +15 -1
  148. package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -1
  149. package/admin/plugins/editor/defaultBar/Name/Name.js +47 -30
  150. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
  151. package/admin/plugins/editor/defaultBar/Name/NameStyled.js +22 -7
  152. package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -1
  153. package/admin/plugins/editor/defaultBar/Name/index.js +13 -1
  154. package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -1
  155. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +40 -20
  156. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
  157. package/admin/plugins/editor/defaultBar/index.js +32 -15
  158. package/admin/plugins/editor/defaultBar/index.js.map +1 -1
  159. package/admin/plugins/editor/formSettings/components/GeneralSettings.js +33 -19
  160. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
  161. package/admin/plugins/editor/formSettings/components/GroupSelect.js +27 -10
  162. package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -1
  163. package/admin/plugins/editor/formSettings/index.js +21 -6
  164. package/admin/plugins/editor/formSettings/index.js.map +1 -1
  165. package/admin/plugins/fieldRenderers/Accordion.js +43 -25
  166. package/admin/plugins/fieldRenderers/Accordion.js.map +1 -1
  167. package/admin/plugins/fieldRenderers/DynamicSection.js +42 -24
  168. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
  169. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +27 -12
  170. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
  171. package/admin/plugins/fieldRenderers/boolean/index.js +13 -2
  172. package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -1
  173. package/admin/plugins/fieldRenderers/checkboxes.js +30 -15
  174. package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
  175. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js +34 -15
  176. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
  177. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +59 -36
  178. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
  179. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js +50 -30
  180. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
  181. package/admin/plugins/fieldRenderers/dateTime/Input.js +24 -8
  182. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
  183. package/admin/plugins/fieldRenderers/dateTime/Select.js +18 -5
  184. package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
  185. package/admin/plugins/fieldRenderers/dateTime/Time.js +34 -15
  186. package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -1
  187. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +36 -18
  188. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
  189. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +47 -26
  190. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
  191. package/admin/plugins/fieldRenderers/dateTime/index.js +15 -3
  192. package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -1
  193. package/admin/plugins/fieldRenderers/dateTime/utils.js +48 -17
  194. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
  195. package/admin/plugins/fieldRenderers/file/File.js +34 -16
  196. package/admin/plugins/fieldRenderers/file/File.js.map +1 -1
  197. package/admin/plugins/fieldRenderers/file/fileField.js +30 -14
  198. package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -1
  199. package/admin/plugins/fieldRenderers/file/fileFields.js +54 -33
  200. package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
  201. package/admin/plugins/fieldRenderers/file/index.js +15 -3
  202. package/admin/plugins/fieldRenderers/file/index.js.map +1 -1
  203. package/admin/plugins/fieldRenderers/file/utils.js +27 -10
  204. package/admin/plugins/fieldRenderers/file/utils.js.map +1 -1
  205. package/admin/plugins/fieldRenderers/longText/index.js +15 -3
  206. package/admin/plugins/fieldRenderers/longText/index.js.map +1 -1
  207. package/admin/plugins/fieldRenderers/longText/longText.js +27 -12
  208. package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
  209. package/admin/plugins/fieldRenderers/longText/longTexts.js +33 -16
  210. package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
  211. package/admin/plugins/fieldRenderers/number/index.js +15 -3
  212. package/admin/plugins/fieldRenderers/number/index.js.map +1 -1
  213. package/admin/plugins/fieldRenderers/number/numberInput.js +27 -12
  214. package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
  215. package/admin/plugins/fieldRenderers/number/numberInputs.js +33 -16
  216. package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
  217. package/admin/plugins/fieldRenderers/object/StyledComponents.js +17 -5
  218. package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -1
  219. package/admin/plugins/fieldRenderers/object/index.js +15 -3
  220. package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
  221. package/admin/plugins/fieldRenderers/object/multipleObjects.js +51 -29
  222. package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -1
  223. package/admin/plugins/fieldRenderers/object/singleObject.js +35 -17
  224. package/admin/plugins/fieldRenderers/object/singleObject.js.map +1 -1
  225. package/admin/plugins/fieldRenderers/radioButtons.js +29 -14
  226. package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
  227. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +61 -36
  228. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
  229. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js +58 -35
  230. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
  231. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js +37 -18
  232. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js.map +1 -1
  233. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js +38 -18
  234. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -1
  235. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +87 -53
  236. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
  237. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js +15 -3
  238. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -1
  239. package/admin/plugins/fieldRenderers/ref/components/graphql.js +18 -5
  240. package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -1
  241. package/admin/plugins/fieldRenderers/ref/components/helpers.js +23 -5
  242. package/admin/plugins/fieldRenderers/ref/components/helpers.js.map +1 -1
  243. package/admin/plugins/fieldRenderers/ref/components/renderItem.js +42 -19
  244. package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -1
  245. package/admin/plugins/fieldRenderers/ref/components/types.js +5 -1
  246. package/admin/plugins/fieldRenderers/ref/components/types.js.map +1 -1
  247. package/admin/plugins/fieldRenderers/ref/components/useReference.js +59 -41
  248. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
  249. package/admin/plugins/fieldRenderers/ref/components/useReferences.js +60 -41
  250. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
  251. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +27 -10
  252. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
  253. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js +30 -10
  254. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -1
  255. package/admin/plugins/fieldRenderers/ref/index.js +15 -3
  256. package/admin/plugins/fieldRenderers/ref/index.js.map +1 -1
  257. package/admin/plugins/fieldRenderers/ref/refInput.js +26 -11
  258. package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
  259. package/admin/plugins/fieldRenderers/ref/refInputs.js +25 -11
  260. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
  261. package/admin/plugins/fieldRenderers/richText/index.js +15 -3
  262. package/admin/plugins/fieldRenderers/richText/index.js.map +1 -1
  263. package/admin/plugins/fieldRenderers/richText/richTextInput.js +32 -15
  264. package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
  265. package/admin/plugins/fieldRenderers/richText/richTextInputs.js +43 -22
  266. package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
  267. package/admin/plugins/fieldRenderers/select.js +26 -12
  268. package/admin/plugins/fieldRenderers/select.js.map +1 -1
  269. package/admin/plugins/fieldRenderers/text/index.js +15 -3
  270. package/admin/plugins/fieldRenderers/text/index.js.map +1 -1
  271. package/admin/plugins/fieldRenderers/text/textInput.js +27 -12
  272. package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
  273. package/admin/plugins/fieldRenderers/text/textInputs.js +33 -16
  274. package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
  275. package/admin/plugins/fieldValidators/date/availableValidators.js +11 -2
  276. package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -1
  277. package/admin/plugins/fieldValidators/date/createDateInputField.js +27 -11
  278. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
  279. package/admin/plugins/fieldValidators/dateGte.js +32 -15
  280. package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
  281. package/admin/plugins/fieldValidators/dateLte.js +32 -15
  282. package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
  283. package/admin/plugins/fieldValidators/gte.js +23 -9
  284. package/admin/plugins/fieldValidators/gte.js.map +1 -1
  285. package/admin/plugins/fieldValidators/in.js +23 -9
  286. package/admin/plugins/fieldValidators/in.js.map +1 -1
  287. package/admin/plugins/fieldValidators/lte.js +23 -9
  288. package/admin/plugins/fieldValidators/lte.js.map +1 -1
  289. package/admin/plugins/fieldValidators/maxLength.js +23 -9
  290. package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
  291. package/admin/plugins/fieldValidators/minLength.js +23 -9
  292. package/admin/plugins/fieldValidators/minLength.js.map +1 -1
  293. package/admin/plugins/fieldValidators/pattern.js +40 -22
  294. package/admin/plugins/fieldValidators/pattern.js.map +1 -1
  295. package/admin/plugins/fieldValidators/patternPlugins/email.js +8 -1
  296. package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
  297. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js +8 -1
  298. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
  299. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js +8 -1
  300. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
  301. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js +8 -1
  302. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
  303. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js +8 -1
  304. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
  305. package/admin/plugins/fieldValidators/patternPlugins/url.js +8 -1
  306. package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
  307. package/admin/plugins/fieldValidators/required.js +8 -1
  308. package/admin/plugins/fieldValidators/required.js.map +1 -1
  309. package/admin/plugins/fieldValidators/unique.js +11 -2
  310. package/admin/plugins/fieldValidators/unique.js.map +1 -1
  311. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.d.ts +1 -2
  312. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +72 -46
  313. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
  314. package/admin/plugins/fields/boolean.js +34 -18
  315. package/admin/plugins/fields/boolean.js.map +1 -1
  316. package/admin/plugins/fields/dateTime.js +60 -44
  317. package/admin/plugins/fields/dateTime.js.map +1 -1
  318. package/admin/plugins/fields/file.js +33 -17
  319. package/admin/plugins/fields/file.js.map +1 -1
  320. package/admin/plugins/fields/longText.js +33 -17
  321. package/admin/plugins/fields/longText.js.map +1 -1
  322. package/admin/plugins/fields/number.js +39 -22
  323. package/admin/plugins/fields/number.js.map +1 -1
  324. package/admin/plugins/fields/object/ObjectFields.js +28 -11
  325. package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
  326. package/admin/plugins/fields/object.js +30 -14
  327. package/admin/plugins/fields/object.js.map +1 -1
  328. package/admin/plugins/fields/ref.js +60 -34
  329. package/admin/plugins/fields/ref.js.map +1 -1
  330. package/admin/plugins/fields/richText.js +33 -17
  331. package/admin/plugins/fields/richText.js.map +1 -1
  332. package/admin/plugins/fields/text.js +37 -20
  333. package/admin/plugins/fields/text.js.map +1 -1
  334. package/admin/plugins/getObjectId.js +8 -1
  335. package/admin/plugins/getObjectId.js.map +1 -1
  336. package/admin/plugins/icons.js +25 -10
  337. package/admin/plugins/icons.js.map +1 -1
  338. package/admin/plugins/index.d.ts +1 -1
  339. package/admin/plugins/index.js +32 -12
  340. package/admin/plugins/index.js.map +1 -1
  341. package/admin/plugins/install.js +55 -30
  342. package/admin/plugins/install.js.map +1 -1
  343. package/admin/plugins/permissionRenderer/CmsPermissions.js +74 -50
  344. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
  345. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +70 -46
  346. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  347. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +54 -34
  348. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -1
  349. package/admin/plugins/permissionRenderer/components/ContentModelList.js +38 -20
  350. package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -1
  351. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +71 -46
  352. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -1
  353. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js +27 -12
  354. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -1
  355. package/admin/plugins/permissionRenderer/components/PermissionSelector.js +44 -23
  356. package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -1
  357. package/admin/plugins/permissionRenderer/components/StyledComponents.js +14 -3
  358. package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -1
  359. package/admin/plugins/permissionRenderer/components/types.js +5 -1
  360. package/admin/plugins/permissionRenderer/components/types.js.map +1 -1
  361. package/admin/plugins/permissionRenderer/components/useCmsData.js +43 -22
  362. package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -1
  363. package/admin/plugins/permissionRenderer/index.js +22 -8
  364. package/admin/plugins/permissionRenderer/index.js.map +1 -1
  365. package/admin/plugins/routes.js +66 -37
  366. package/admin/plugins/routes.js.map +1 -1
  367. package/admin/plugins/transformers/dateTransformer.js +24 -11
  368. package/admin/plugins/transformers/dateTransformer.js.map +1 -1
  369. package/admin/plugins/transformers/index.js +18 -5
  370. package/admin/plugins/transformers/index.js.map +1 -1
  371. package/admin/plugins/transformers/numberTransformer.js +11 -2
  372. package/admin/plugins/transformers/numberTransformer.js.map +1 -1
  373. package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.js +19 -7
  374. package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.js.map +1 -1
  375. package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.js +33 -15
  376. package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.js.map +1 -1
  377. package/admin/plugins/upgrades/5.19.0/createListEntriesQuery.js +23 -9
  378. package/admin/plugins/upgrades/5.19.0/createListEntriesQuery.js.map +1 -1
  379. package/admin/plugins/upgrades/5.19.0/createListModelsQuery.js +17 -5
  380. package/admin/plugins/upgrades/5.19.0/createListModelsQuery.js.map +1 -1
  381. package/admin/plugins/upgrades/5.19.0/createRepublishMutation.js +20 -7
  382. package/admin/plugins/upgrades/5.19.0/createRepublishMutation.js.map +1 -1
  383. package/admin/plugins/upgrades/5.19.0/createUpgradeMutation.js +17 -5
  384. package/admin/plugins/upgrades/5.19.0/createUpgradeMutation.js.map +1 -1
  385. package/admin/plugins/upgrades/5.19.0/fetchModelEntries.js +27 -13
  386. package/admin/plugins/upgrades/5.19.0/fetchModelEntries.js.map +1 -1
  387. package/admin/plugins/upgrades/5.19.0/types.js +5 -1
  388. package/admin/plugins/upgrades/5.19.0/types.js.map +1 -1
  389. package/admin/plugins/upgrades/v5.0.0.js +58 -33
  390. package/admin/plugins/upgrades/v5.0.0.js.map +1 -1
  391. package/admin/plugins/upgrades/v5.19.0.js +118 -82
  392. package/admin/plugins/upgrades/v5.19.0.js.map +1 -1
  393. package/admin/plugins/upgrades/v5.5.0.js +58 -33
  394. package/admin/plugins/upgrades/v5.5.0.js.map +1 -1
  395. package/admin/plugins/upgrades/v5.8.0.js +58 -33
  396. package/admin/plugins/upgrades/v5.8.0.js.map +1 -1
  397. package/admin/plugins/validators/dateGte.js +23 -9
  398. package/admin/plugins/validators/dateGte.js.map +1 -1
  399. package/admin/plugins/validators/dateLte.js +23 -9
  400. package/admin/plugins/validators/dateLte.js.map +1 -1
  401. package/admin/plugins/validators/gte.js +20 -7
  402. package/admin/plugins/validators/gte.js.map +1 -1
  403. package/admin/plugins/validators/in.js +20 -7
  404. package/admin/plugins/validators/in.js.map +1 -1
  405. package/admin/plugins/validators/lte.js +20 -7
  406. package/admin/plugins/validators/lte.js.map +1 -1
  407. package/admin/plugins/validators/maxLength.js +20 -7
  408. package/admin/plugins/validators/maxLength.js.map +1 -1
  409. package/admin/plugins/validators/minLength.js +20 -7
  410. package/admin/plugins/validators/minLength.js.map +1 -1
  411. package/admin/plugins/validators/pattern.js +20 -7
  412. package/admin/plugins/validators/pattern.js.map +1 -1
  413. package/admin/plugins/validators/patternPlugins/email.js +8 -1
  414. package/admin/plugins/validators/patternPlugins/email.js.map +1 -1
  415. package/admin/plugins/validators/patternPlugins/lowerCase.js +8 -1
  416. package/admin/plugins/validators/patternPlugins/lowerCase.js.map +1 -1
  417. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js +8 -1
  418. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
  419. package/admin/plugins/validators/patternPlugins/upperCase.js +8 -1
  420. package/admin/plugins/validators/patternPlugins/upperCase.js.map +1 -1
  421. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js +8 -1
  422. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +1 -1
  423. package/admin/plugins/validators/patternPlugins/url.js +8 -1
  424. package/admin/plugins/validators/patternPlugins/url.js.map +1 -1
  425. package/admin/plugins/validators/required.js +12 -3
  426. package/admin/plugins/validators/required.js.map +1 -1
  427. package/admin/plugins/validators/timeGte.js +22 -8
  428. package/admin/plugins/validators/timeGte.js.map +1 -1
  429. package/admin/plugins/validators/timeLte.js +22 -8
  430. package/admin/plugins/validators/timeLte.js.map +1 -1
  431. package/admin/plugins/validators/unique.js +18 -6
  432. package/admin/plugins/validators/unique.js.map +1 -1
  433. package/admin/plugins/welcomeScreenWidget.js +23 -9
  434. package/admin/plugins/welcomeScreenWidget.js.map +1 -1
  435. package/admin/views/contentEntries/ContentEntries.js +57 -31
  436. package/admin/views/contentEntries/ContentEntries.js.map +1 -1
  437. package/admin/views/contentEntries/ContentEntriesContext.js +43 -21
  438. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  439. package/admin/views/contentEntries/ContentEntriesList.js +102 -75
  440. package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
  441. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +72 -41
  442. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  443. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +95 -67
  444. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
  445. package/admin/views/contentEntries/ContentEntry/RevisionsList.js +38 -19
  446. package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -1
  447. package/admin/views/contentEntries/ContentEntry/cache.js +65 -31
  448. package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -1
  449. package/admin/views/contentEntries/ContentEntry/header/Header.js +31 -16
  450. package/admin/views/contentEntries/ContentEntry/header/Header.js.map +1 -1
  451. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js +90 -55
  452. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -1
  453. package/admin/views/contentEntries/ContentEntry/header/index.js +33 -14
  454. package/admin/views/contentEntries/ContentEntry/header/index.js.map +1 -1
  455. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js +47 -26
  456. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -1
  457. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js +50 -27
  458. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -1
  459. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js +47 -26
  460. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +1 -1
  461. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +45 -24
  462. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +1 -1
  463. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js +27 -12
  464. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +1 -1
  465. package/admin/views/contentEntries/ContentEntry/prepareFormData.js +19 -7
  466. package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
  467. package/admin/views/contentEntries/ContentEntry/useRevision.js +57 -36
  468. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
  469. package/admin/views/contentEntries/ContentEntry.js +62 -35
  470. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  471. package/admin/views/contentEntries/experiment/ContentEntriesModule.js +42 -25
  472. package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
  473. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js +29 -9
  474. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js.map +1 -1
  475. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js +51 -29
  476. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js.map +1 -1
  477. package/admin/views/contentEntries/experiment/Property.js +74 -58
  478. package/admin/views/contentEntries/experiment/Property.js.map +1 -1
  479. package/admin/views/contentEntries/hooks/useContentEntries.js +13 -4
  480. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
  481. package/admin/views/contentEntries/hooks/useContentEntriesList.js +59 -39
  482. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
  483. package/admin/views/contentEntries/hooks/useContentEntry.js +13 -4
  484. package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -1
  485. package/admin/views/contentModelGroups/ContentModelGroups.js +28 -12
  486. package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -1
  487. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +114 -77
  488. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -1
  489. package/admin/views/contentModelGroups/ContentModelGroupsForm.js +117 -78
  490. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
  491. package/admin/views/contentModelGroups/DelayedOnChange.js +49 -48
  492. package/admin/views/contentModelGroups/DelayedOnChange.js.map +1 -1
  493. package/admin/views/contentModelGroups/IconPicker.js +56 -33
  494. package/admin/views/contentModelGroups/IconPicker.js.map +1 -1
  495. package/admin/views/contentModelGroups/graphql.js +22 -7
  496. package/admin/views/contentModelGroups/graphql.js.map +1 -1
  497. package/admin/views/contentModels/CloneContentModelDialog.js +104 -71
  498. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
  499. package/admin/views/contentModels/ContentModelEditor.js +30 -14
  500. package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
  501. package/admin/views/contentModels/ContentModels.js +49 -30
  502. package/admin/views/contentModels/ContentModels.js.map +1 -1
  503. package/admin/views/contentModels/ContentModelsDataList.js +144 -108
  504. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
  505. package/admin/views/contentModels/NewContentModelDialog.js +107 -70
  506. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  507. package/admin/views/contentModels/cache.js +41 -19
  508. package/admin/views/contentModels/cache.js.map +1 -1
  509. package/admin/views/contentModels/types.js +5 -1
  510. package/admin/views/contentModels/types.js.map +1 -1
  511. package/admin/views/utils.js +16 -4
  512. package/admin/views/utils.js.map +1 -1
  513. package/admin/viewsGraphql.js +22 -7
  514. package/admin/viewsGraphql.js.map +1 -1
  515. package/index.js +30 -11
  516. package/index.js.map +1 -1
  517. package/package.json +22 -22
  518. package/types.d.ts +3 -3
  519. package/types.js +5 -1
  520. package/types.js.map +1 -1
@@ -1,49 +1,73 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
- import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
13
+
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
19
+
20
+ var _react = _interopRequireWildcard(require("react"));
21
+
22
+ var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
23
+
24
+ var _reactHooks = require("@apollo/react-hooks");
25
+
26
+ var _i18n = require("@webiny/app/i18n");
27
+
28
+ var _Alert = require("@webiny/ui/Alert");
29
+
30
+ var _Progress = require("@webiny/ui/Progress");
31
+
32
+ var _SimpleForm = require("@webiny/app-admin/components/SimpleForm");
33
+
34
+ var _styled = _interopRequireDefault(require("@emotion/styled"));
4
35
 
5
36
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
6
37
 
7
- import _regeneratorRuntime from "@babel/runtime/regenerator";
8
- import React, { useState, useEffect } from "react";
9
- import gql from "graphql-tag";
10
- import { useApolloClient } from "@apollo/react-hooks";
11
- import { i18n } from "@webiny/app/i18n";
12
- import { Alert } from "@webiny/ui/Alert";
13
- import { CircularProgress } from "@webiny/ui/Progress";
14
- import { SimpleForm, SimpleFormContent } from "@webiny/app-admin/components/SimpleForm";
15
- import styled from "@emotion/styled";
16
- var SimpleFormPlaceholder = /*#__PURE__*/styled("div", {
38
+ var SimpleFormPlaceholder = /*#__PURE__*/(0, _styled.default)("div", {
17
39
  target: "e1pjb6uy0",
18
40
  label: "SimpleFormPlaceholder"
19
41
  })({
20
42
  minHeight: 300,
21
43
  minWidth: 400
22
44
  });
23
- var t = i18n.ns("app-headless-cms/admin/installation");
45
+
46
+ var t = _i18n.i18n.ns("app-headless-cms/admin/installation");
24
47
  /**
25
48
  * ########################
26
49
  * Is Installed Query
27
50
  */
28
51
 
29
- var IS_INSTALLED = gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n query IsCMSInstalled {\n cms {\n version\n }\n }\n"])));
52
+
53
+ var IS_INSTALLED = (0, _graphqlTag.default)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n query IsCMSInstalled {\n cms {\n version\n }\n }\n"])));
30
54
  /**
31
55
  * ########################
32
56
  * Install Mutation
33
57
  */
34
58
 
35
- var INSTALL = gql(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n mutation InstallCms {\n cms {\n install {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n"])));
59
+ var INSTALL = (0, _graphqlTag.default)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n mutation InstallCms {\n cms {\n install {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n"])));
36
60
 
37
61
  var CMSInstaller = function CMSInstaller(_ref) {
38
62
  var onInstalled = _ref.onInstalled;
39
- var client = useApolloClient();
63
+ var client = (0, _reactHooks.useApolloClient)();
40
64
 
41
- var _useState = useState(null),
42
- _useState2 = _slicedToArray(_useState, 2),
65
+ var _useState = (0, _react.useState)(null),
66
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
43
67
  error = _useState2[0],
44
68
  setError = _useState2[1];
45
69
 
46
- useEffect(function () {
70
+ (0, _react.useEffect)(function () {
47
71
  // Temporary fix for the ES index creation failure.
48
72
  // Let's try waiting a bit before running the installation.
49
73
  setTimeout(function () {
@@ -67,26 +91,26 @@ var CMSInstaller = function CMSInstaller(_ref) {
67
91
  });
68
92
  }, 10000);
69
93
  }, []);
70
- var label = error ? /*#__PURE__*/React.createElement(Alert, {
71
- title: t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["Something went wrong"]))),
94
+ var label = error ? /*#__PURE__*/_react.default.createElement(_Alert.Alert, {
95
+ title: t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Something went wrong"]))),
72
96
  type: "danger"
73
- }, error) : t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Installing Headless CMS..."])));
74
- return /*#__PURE__*/React.createElement(SimpleForm, null, /*#__PURE__*/React.createElement(CircularProgress, {
97
+ }, error) : t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Installing Headless CMS..."])));
98
+ return /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleForm, null, /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, {
75
99
  label: label
76
- }), /*#__PURE__*/React.createElement(SimpleFormContent, null, /*#__PURE__*/React.createElement(SimpleFormPlaceholder, null)));
100
+ }), /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleFormContent, null, /*#__PURE__*/_react.default.createElement(SimpleFormPlaceholder, null)));
77
101
  };
78
102
 
79
103
  var plugin = {
80
104
  name: "admin-installation-cms",
81
105
  type: "admin-installation",
82
- title: t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["Headless CMS"]))),
106
+ title: t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Headless CMS"]))),
83
107
  dependencies: ["admin-installation-security", "admin-installation-i18n", "admin-installation-fm"],
84
108
  secure: true,
85
109
  getInstalledVersion: function getInstalledVersion(_ref2) {
86
- return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
110
+ return (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
87
111
  var client, _yield$client$query, data;
88
112
 
89
- return _regeneratorRuntime.wrap(function _callee$(_context) {
113
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
90
114
  while (1) {
91
115
  switch (_context.prev = _context.next) {
92
116
  case 0:
@@ -111,7 +135,7 @@ var plugin = {
111
135
  },
112
136
  render: function render(_ref3) {
113
137
  var onInstalled = _ref3.onInstalled;
114
- return /*#__PURE__*/React.createElement(CMSInstaller, {
138
+ return /*#__PURE__*/_react.default.createElement(CMSInstaller, {
115
139
  onInstalled: onInstalled
116
140
  });
117
141
  },
@@ -141,4 +165,5 @@ var plugin = {
141
165
  // }
142
166
  ]
143
167
  };
144
- export default plugin;
168
+ var _default = plugin;
169
+ exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["install.tsx"],"names":["React","useState","useEffect","gql","useApolloClient","i18n","Alert","CircularProgress","SimpleForm","SimpleFormContent","styled","SimpleFormPlaceholder","minHeight","minWidth","t","ns","IS_INSTALLED","INSTALL","CMSInstaller","onInstalled","client","error","setError","setTimeout","mutate","mutation","then","result","data","cms","install","message","label","plugin","name","type","title","dependencies","secure","getInstalledVersion","query","version","render","upgrades"],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport gql from \"graphql-tag\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Alert } from \"@webiny/ui/Alert\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { SimpleForm, SimpleFormContent } from \"@webiny/app-admin/components/SimpleForm\";\nimport styled from \"@emotion/styled\";\nimport { AdminInstallationPlugin } from \"@webiny/app-admin/types\";\nimport { CmsErrorResponse } from \"~/types\";\n\nconst SimpleFormPlaceholder = styled.div({\n minHeight: 300,\n minWidth: 400\n});\n\nconst t = i18n.ns(\"app-headless-cms/admin/installation\");\n/**\n * ########################\n * Is Installed Query\n */\nexport interface CmsIsInstalledQueryResponse {\n cms: {\n version: string | null;\n };\n}\nconst IS_INSTALLED = gql`\n query IsCMSInstalled {\n cms {\n version\n }\n }\n`;\n/**\n * ########################\n * Install Mutation\n */\nexport interface CmsInstallMutationResponse {\n cms: {\n install: {\n data: boolean;\n error?: CmsErrorResponse;\n };\n };\n}\nconst INSTALL = gql`\n mutation InstallCms {\n cms {\n install {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\ninterface CMSInstallerProps {\n onInstalled: () => void;\n}\nconst CMSInstaller: React.FC<CMSInstallerProps> = ({ onInstalled }) => {\n const client = useApolloClient();\n const [error, setError] = useState<string | null>(null);\n\n useEffect(() => {\n // Temporary fix for the ES index creation failure.\n // Let's try waiting a bit before running the installation.\n setTimeout(() => {\n client\n .mutate<CmsInstallMutationResponse>({\n mutation: INSTALL\n })\n .then(result => {\n if (!result || !result.data) {\n setError(\"Missing Install Mutation response data.\");\n return;\n }\n const { error } = result.data.cms.install;\n if (error) {\n setError(error.message);\n return;\n }\n\n // Just so the user sees the actual message.\n setTimeout(onInstalled, 3000);\n });\n }, 10000);\n }, []);\n\n const label = error ? (\n <Alert title={t`Something went wrong`} type={\"danger\"}>\n {error}\n </Alert>\n ) : (\n t`Installing Headless CMS...`\n );\n\n return (\n <SimpleForm>\n <CircularProgress label={label} />\n <SimpleFormContent>\n <SimpleFormPlaceholder />\n </SimpleFormContent>\n </SimpleForm>\n );\n};\n\nconst plugin: AdminInstallationPlugin = {\n name: \"admin-installation-cms\",\n type: \"admin-installation\",\n title: t`Headless CMS`,\n dependencies: [\n \"admin-installation-security\",\n \"admin-installation-i18n\",\n \"admin-installation-fm\"\n ],\n secure: true,\n async getInstalledVersion({ client }) {\n const { data } = await client.query<CmsIsInstalledQueryResponse>({ query: IS_INSTALLED });\n return data.cms.version;\n },\n render({ onInstalled }) {\n return <CMSInstaller onInstalled={onInstalled} />;\n },\n upgrades: [\n // {\n // version: \"5.0.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.0.0\"));\n // }\n // },\n // {\n // version: \"5.5.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.5.0\"));\n // }\n // },\n // {\n // version: \"5.8.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.8.0\"));\n // }\n // },\n // {\n // version: \"5.19.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.19.0\"));\n // }\n // }\n ]\n};\n\nexport default plugin;\n"]}
1
+ {"version":3,"names":["SimpleFormPlaceholder","styled","minHeight","minWidth","t","i18n","ns","IS_INSTALLED","gql","INSTALL","CMSInstaller","onInstalled","client","useApolloClient","useState","error","setError","useEffect","setTimeout","mutate","mutation","then","result","data","cms","install","message","label","plugin","name","type","title","dependencies","secure","getInstalledVersion","query","version","render","upgrades"],"sources":["install.tsx"],"sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport gql from \"graphql-tag\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Alert } from \"@webiny/ui/Alert\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { SimpleForm, SimpleFormContent } from \"@webiny/app-admin/components/SimpleForm\";\nimport styled from \"@emotion/styled\";\nimport { AdminInstallationPlugin } from \"@webiny/app-admin/types\";\nimport { CmsErrorResponse } from \"~/types\";\n\nconst SimpleFormPlaceholder = styled.div({\n minHeight: 300,\n minWidth: 400\n});\n\nconst t = i18n.ns(\"app-headless-cms/admin/installation\");\n/**\n * ########################\n * Is Installed Query\n */\nexport interface CmsIsInstalledQueryResponse {\n cms: {\n version: string | null;\n };\n}\nconst IS_INSTALLED = gql`\n query IsCMSInstalled {\n cms {\n version\n }\n }\n`;\n/**\n * ########################\n * Install Mutation\n */\nexport interface CmsInstallMutationResponse {\n cms: {\n install: {\n data: boolean;\n error?: CmsErrorResponse;\n };\n };\n}\nconst INSTALL = gql`\n mutation InstallCms {\n cms {\n install {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\ninterface CMSInstallerProps {\n onInstalled: () => void;\n}\nconst CMSInstaller: React.FC<CMSInstallerProps> = ({ onInstalled }) => {\n const client = useApolloClient();\n const [error, setError] = useState<string | null>(null);\n\n useEffect(() => {\n // Temporary fix for the ES index creation failure.\n // Let's try waiting a bit before running the installation.\n setTimeout(() => {\n client\n .mutate<CmsInstallMutationResponse>({\n mutation: INSTALL\n })\n .then(result => {\n if (!result || !result.data) {\n setError(\"Missing Install Mutation response data.\");\n return;\n }\n const { error } = result.data.cms.install;\n if (error) {\n setError(error.message);\n return;\n }\n\n // Just so the user sees the actual message.\n setTimeout(onInstalled, 3000);\n });\n }, 10000);\n }, []);\n\n const label = error ? (\n <Alert title={t`Something went wrong`} type={\"danger\"}>\n {error}\n </Alert>\n ) : (\n t`Installing Headless CMS...`\n );\n\n return (\n <SimpleForm>\n <CircularProgress label={label} />\n <SimpleFormContent>\n <SimpleFormPlaceholder />\n </SimpleFormContent>\n </SimpleForm>\n );\n};\n\nconst plugin: AdminInstallationPlugin = {\n name: \"admin-installation-cms\",\n type: \"admin-installation\",\n title: t`Headless CMS`,\n dependencies: [\n \"admin-installation-security\",\n \"admin-installation-i18n\",\n \"admin-installation-fm\"\n ],\n secure: true,\n async getInstalledVersion({ client }) {\n const { data } = await client.query<CmsIsInstalledQueryResponse>({ query: IS_INSTALLED });\n return data.cms.version;\n },\n render({ onInstalled }) {\n return <CMSInstaller onInstalled={onInstalled} />;\n },\n upgrades: [\n // {\n // version: \"5.0.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.0.0\"));\n // }\n // },\n // {\n // version: \"5.5.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.5.0\"));\n // }\n // },\n // {\n // version: \"5.8.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.8.0\"));\n // }\n // },\n // {\n // version: \"5.19.0\",\n // getComponent() {\n // return lazy(() => import(\"./upgrades/v5.19.0\"));\n // }\n // }\n ]\n};\n\nexport default plugin;\n"],"mappings":"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"}
@@ -1,25 +1,46 @@
1
- import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.CMSPermissions = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _ContentModelGroupPermission = _interopRequireDefault(require("./components/ContentModelGroupPermission"));
19
+
20
+ var _Grid = require("@webiny/ui/Grid");
21
+
22
+ var _Select = require("@webiny/ui/Select");
23
+
24
+ var _i18n = require("@webiny/app/i18n");
25
+
26
+ var _Permissions = require("@webiny/app-admin/components/Permissions");
27
+
28
+ var _form = require("@webiny/form");
29
+
30
+ var _ContentModelPermission = require("./components/ContentModelPermission");
31
+
32
+ var _ContentEntryPermission = require("./components/ContentEntryPermission");
33
+
34
+ var _Checkbox = require("@webiny/ui/Checkbox");
35
+
36
+ var _useI18N2 = require("@webiny/app-i18n/hooks/useI18N");
37
+
38
+ var _reactRouter = require("@webiny/react-router");
3
39
 
4
40
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
5
41
 
6
- /**
7
- * @pavel Please review types for security permissions
8
- * TODO @ts-refactor
9
- */
10
- import React, { Fragment, useCallback, useMemo } from "react";
11
- import ContentModelGroupPermission from "./components/ContentModelGroupPermission";
12
- import { Grid, Cell } from "@webiny/ui/Grid";
13
- import { Select } from "@webiny/ui/Select";
14
- import { i18n } from "@webiny/app/i18n";
15
- import { PermissionInfo, gridNoPaddingClass } from "@webiny/app-admin/components/Permissions";
16
- import { Form } from "@webiny/form";
17
- import { ContentModelPermission } from "./components/ContentModelPermission";
18
- import { ContentEntryPermission } from "./components/ContentEntryPermission";
19
- import { Checkbox, CheckboxGroup } from "@webiny/ui/Checkbox";
20
- import { useI18N } from "@webiny/app-i18n/hooks/useI18N";
21
- import { Link } from "@webiny/react-router";
22
- var t = i18n.ns("app-headless-cms/admin/plugins/permissionRenderer");
42
+ var t = _i18n.i18n.ns("app-headless-cms/admin/plugins/permissionRenderer");
43
+
23
44
  var CMS_PERMISSION = "cms";
24
45
  var CMS_PERMISSION_FULL_ACCESS = "cms.*";
25
46
  var FULL_ACCESS = "full";
@@ -37,14 +58,15 @@ var API_ENDPOINTS = [{
37
58
  name: "Preview"
38
59
  }];
39
60
  var GRAPHQL_API_TYPES_LINK = "https://www.webiny.com/docs/key-topics/webiny-applications/headless-cms/graphql-api/#graphql-api-types";
40
- export var CMSPermissions = function CMSPermissions(_ref) {
61
+
62
+ var CMSPermissions = function CMSPermissions(_ref) {
41
63
  var value = _ref.value,
42
64
  onChange = _ref.onChange;
43
65
 
44
- var _useI18N = useI18N(),
66
+ var _useI18N = (0, _useI18N2.useI18N)(),
45
67
  getLocales = _useI18N.getLocales;
46
68
 
47
- var canRead = useCallback(function (value, permissionName) {
69
+ var canRead = (0, _react.useCallback)(function (value, permissionName) {
48
70
  var permission = value.find(function (item) {
49
71
  return item.name === permissionName;
50
72
  });
@@ -76,7 +98,7 @@ export var CMSPermissions = function CMSPermissions(_ref) {
76
98
  });
77
99
  };
78
100
 
79
- var onFormChange = useCallback(function (data) {
101
+ var onFormChange = (0, _react.useCallback)(function (data) {
80
102
  var newValue = [];
81
103
 
82
104
  if (Array.isArray(value)) {
@@ -180,7 +202,7 @@ export var CMSPermissions = function CMSPermissions(_ref) {
180
202
 
181
203
  onChange(newValue);
182
204
  }, [value]);
183
- var formData = useMemo(function () {
205
+ var formData = (0, _react.useMemo)(function () {
184
206
  // This function only runs once on Form mount
185
207
  if (!Array.isArray(value)) {
186
208
  return {
@@ -223,7 +245,7 @@ export var CMSPermissions = function CMSPermissions(_ref) {
223
245
  ENTITIES.forEach(function (entity) {
224
246
  var _data;
225
247
 
226
- var data = (_data = {}, _defineProperty(_data, "".concat(entity, "AccessScope"), FULL_ACCESS), _defineProperty(_data, "".concat(entity, "RWD"), "r"), _defineProperty(_data, "".concat(entity, "Props"), {}), _data);
248
+ var data = (_data = {}, (0, _defineProperty2.default)(_data, "".concat(entity, "AccessScope"), FULL_ACCESS), (0, _defineProperty2.default)(_data, "".concat(entity, "RWD"), "r"), (0, _defineProperty2.default)(_data, "".concat(entity, "Props"), {}), _data);
227
249
  var entityPermission = permissions.find(function (item) {
228
250
  return item.name === "".concat(CMS_PERMISSION, ".").concat(entity);
229
251
  });
@@ -262,12 +284,12 @@ export var CMSPermissions = function CMSPermissions(_ref) {
262
284
  return returnData;
263
285
  }, []);
264
286
  var locales = getFormLocales();
265
- var getSelectedContentModelGroups = useCallback(function (data) {
287
+ var getSelectedContentModelGroups = (0, _react.useCallback)(function (data) {
266
288
  if (data && data.contentModelGroupAccessScope === "groups" && data.contentModelGroupProps) {
267
289
  return data.contentModelGroupProps.groups;
268
290
  }
269
291
  }, []);
270
- return /*#__PURE__*/React.createElement(Form, {
292
+ return /*#__PURE__*/_react.default.createElement(_form.Form, {
271
293
  data: formData,
272
294
  onChange: function onChange(data) {
273
295
  /**
@@ -281,32 +303,32 @@ export var CMSPermissions = function CMSPermissions(_ref) {
281
303
  setValue = _ref2.setValue;
282
304
  var endpoints = data.endpoints || [];
283
305
  var graphQLEndpointAccess = endpoints.includes("read") || endpoints.includes("manage") || endpoints.includes("preview");
284
- return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Grid, {
285
- className: gridNoPaddingClass
286
- }, /*#__PURE__*/React.createElement(Cell, {
306
+ return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, {
307
+ className: _Permissions.gridNoPaddingClass
308
+ }, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
287
309
  span: 6
288
- }, /*#__PURE__*/React.createElement(PermissionInfo, {
289
- title: t(_templateObject || (_templateObject = _taggedTemplateLiteral(["Access Level"])))
290
- })), /*#__PURE__*/React.createElement(Cell, {
310
+ }, /*#__PURE__*/_react.default.createElement(_Permissions.PermissionInfo, {
311
+ title: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Access Level"])))
312
+ })), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
291
313
  span: 6
292
- }, /*#__PURE__*/React.createElement(Bind, {
314
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
293
315
  name: "accessLevel"
294
- }, /*#__PURE__*/React.createElement(Select, {
295
- label: t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["Access Level"])))
296
- }, /*#__PURE__*/React.createElement("option", {
316
+ }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
317
+ label: t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Access Level"])))
318
+ }, /*#__PURE__*/_react.default.createElement("option", {
297
319
  value: NO_ACCESS
298
- }, t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["No access"])))), /*#__PURE__*/React.createElement("option", {
320
+ }, t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["No access"])))), /*#__PURE__*/_react.default.createElement("option", {
299
321
  value: FULL_ACCESS
300
- }, t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Full access"])))), /*#__PURE__*/React.createElement("option", {
322
+ }, t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Full access"])))), /*#__PURE__*/_react.default.createElement("option", {
301
323
  value: CUSTOM_ACCESS
302
- }, t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["Custom access"])))))))), data.accessLevel === CUSTOM_ACCESS && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Grid, null, /*#__PURE__*/React.createElement(Cell, {
324
+ }, t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Custom access"])))))))), data.accessLevel === CUSTOM_ACCESS && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
303
325
  span: 12
304
- }, /*#__PURE__*/React.createElement(Bind, {
326
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
305
327
  name: "endpoints"
306
- }, /*#__PURE__*/React.createElement(CheckboxGroup, {
307
- label: t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["GraphQL API types"]))),
308
- description: t(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["Each type has a separate URL and a specific purpose.\n Check out the {link} key topic to learn more."])))({
309
- link: /*#__PURE__*/React.createElement(Link, {
328
+ }, /*#__PURE__*/_react.default.createElement(_Checkbox.CheckboxGroup, {
329
+ label: t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["GraphQL API types"]))),
330
+ description: t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Each type has a separate URL and a specific purpose.\n Check out the {link} key topic to learn more."])))({
331
+ link: /*#__PURE__*/_react.default.createElement(_reactRouter.Link, {
310
332
  to: GRAPHQL_API_TYPES_LINK,
311
333
  target: "_blank"
312
334
  }, "Headless CMS GraphQL API")
@@ -317,20 +339,20 @@ export var CMSPermissions = function CMSPermissions(_ref) {
317
339
  return API_ENDPOINTS.map(function (_ref4) {
318
340
  var id = _ref4.id,
319
341
  name = _ref4.name;
320
- return /*#__PURE__*/React.createElement(Checkbox, {
342
+ return /*#__PURE__*/_react.default.createElement(_Checkbox.Checkbox, {
321
343
  key: id,
322
344
  label: name,
323
345
  value: getValue(id),
324
346
  onChange: onChange(id)
325
347
  });
326
348
  });
327
- })))), graphQLEndpointAccess && /*#__PURE__*/React.createElement(ContentModelGroupPermission, {
349
+ })))), graphQLEndpointAccess && /*#__PURE__*/_react.default.createElement(_ContentModelGroupPermission.default, {
328
350
  data: data,
329
351
  Bind: Bind,
330
352
  entity: "contentModelGroup",
331
353
  title: "Content Model Groups",
332
354
  locales: locales
333
- }), graphQLEndpointAccess && canRead(value, "cms.contentModelGroup") && /*#__PURE__*/React.createElement(ContentModelPermission, {
355
+ }), graphQLEndpointAccess && canRead(value, "cms.contentModelGroup") && /*#__PURE__*/_react.default.createElement(_ContentModelPermission.ContentModelPermission, {
334
356
  locales: locales,
335
357
  data: data,
336
358
  setValue: setValue,
@@ -338,7 +360,7 @@ export var CMSPermissions = function CMSPermissions(_ref) {
338
360
  entity: "contentModel",
339
361
  title: "Content Models",
340
362
  selectedContentModelGroups: getSelectedContentModelGroups(data)
341
- }), graphQLEndpointAccess && canRead(value, "cms.contentModel") && /*#__PURE__*/React.createElement(ContentEntryPermission, {
363
+ }), graphQLEndpointAccess && canRead(value, "cms.contentModel") && /*#__PURE__*/_react.default.createElement(_ContentEntryPermission.ContentEntryPermission, {
342
364
  data: data,
343
365
  Bind: Bind,
344
366
  setValue: setValue,
@@ -346,4 +368,6 @@ export var CMSPermissions = function CMSPermissions(_ref) {
346
368
  title: "Content Entries"
347
369
  })));
348
370
  });
349
- };
371
+ };
372
+
373
+ exports.CMSPermissions = CMSPermissions;
@@ -1 +1 @@
1
- {"version":3,"sources":["CmsPermissions.tsx"],"names":["React","Fragment","useCallback","useMemo","ContentModelGroupPermission","Grid","Cell","Select","i18n","PermissionInfo","gridNoPaddingClass","Form","ContentModelPermission","ContentEntryPermission","Checkbox","CheckboxGroup","useI18N","Link","t","ns","CMS_PERMISSION","CMS_PERMISSION_FULL_ACCESS","FULL_ACCESS","NO_ACCESS","CUSTOM_ACCESS","ENTITIES","API_ENDPOINTS","id","name","GRAPHQL_API_TYPES_LINK","CMSPermissions","value","onChange","getLocales","canRead","permissionName","permission","find","item","rwd","includes","getFormLocales","localePermission","startsWith","map","l","code","Array","isArray","locales","onFormChange","data","newValue","filter","accessLevel","push","endpoints","forEach","api","entity","accessScope","own","pw","groups","undefined","models","join","props","reduce","acc","locale","formData","hasFullAccess","permissions","length","returnData","p","replace","entityPermission","split","Object","assign","getSelectedContentModelGroups","contentModelGroupAccessScope","contentModelGroupProps","Bind","setValue","graphQLEndpointAccess","link","getValue"],"mappings":"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","sourcesContent":["/**\n * @pavel Please review types for security permissions\n * TODO @ts-refactor\n */\nimport React, { Fragment, useCallback, useMemo } from \"react\";\nimport ContentModelGroupPermission from \"./components/ContentModelGroupPermission\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { PermissionInfo, gridNoPaddingClass } from \"@webiny/app-admin/components/Permissions\";\nimport { Form } from \"@webiny/form\";\nimport { ContentModelPermission } from \"./components/ContentModelPermission\";\nimport { ContentEntryPermission } from \"./components/ContentEntryPermission\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\nimport { useI18N } from \"@webiny/app-i18n/hooks/useI18N\";\nimport { Link } from \"@webiny/react-router\";\nimport { CmsSecurityPermission } from \"~/types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\nconst CMS_PERMISSION = \"cms\";\nconst CMS_PERMISSION_FULL_ACCESS = \"cms.*\";\nconst FULL_ACCESS = \"full\";\nconst NO_ACCESS = \"no\";\nconst CUSTOM_ACCESS = \"custom\";\nconst ENTITIES = [\"contentModel\", \"contentModelGroup\", \"contentEntry\"];\nconst API_ENDPOINTS = [\n { id: \"read\", name: \"Read\" },\n { id: \"manage\", name: \"Manage\" },\n { id: \"preview\", name: \"Preview\" }\n];\n\nconst GRAPHQL_API_TYPES_LINK =\n \"https://www.webiny.com/docs/key-topics/webiny-applications/headless-cms/graphql-api/#graphql-api-types\";\n\nexport interface CMSPermissionsProps {\n value: CmsSecurityPermission[];\n onChange: (value: CmsSecurityPermission[]) => void;\n}\nexport const CMSPermissions: React.FC<CMSPermissionsProps> = ({ value, onChange }) => {\n const { getLocales } = useI18N();\n\n const canRead = useCallback((value: any[], permissionName: string) => {\n const permission = value.find(item => item.name === permissionName);\n\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"r\");\n }, []);\n\n const getFormLocales = () => {\n const localePermission = (value || []).find(item => item.name.startsWith(\"content.i18n\"));\n if (!localePermission) {\n return getLocales().map(l => l.code);\n }\n\n return Array.isArray(localePermission.locales)\n ? localePermission.locales\n : getLocales().map(l => l.code);\n };\n\n const onFormChange = useCallback(\n (data: CmsSecurityPermission) => {\n let newValue: CmsSecurityPermission[] = [];\n if (Array.isArray(value)) {\n // Let's just filter out the `cms*` permission objects.\n // Based on the `data` we rebuild new permission object from scratch.\n newValue = value.filter(item => !item.name.startsWith(CMS_PERMISSION));\n }\n\n if (data.accessLevel === NO_ACCESS) {\n onChange(newValue);\n return;\n }\n\n if (data.accessLevel === FULL_ACCESS) {\n newValue.push({\n name: CMS_PERMISSION_FULL_ACCESS\n });\n onChange(newValue);\n return;\n }\n\n const endpoints = data.endpoints;\n\n // Handling custom access level.\n if (endpoints && Array.isArray(data.endpoints)) {\n API_ENDPOINTS.forEach(api => {\n if (endpoints.includes(api.id)) {\n newValue.push({\n name: `${CMS_PERMISSION}.endpoint.${api.id}`\n });\n }\n });\n }\n\n const locales = getFormLocales();\n\n // Content models, content model groups, content entries\n ENTITIES.forEach(entity => {\n const accessScope = data[`${entity}AccessScope`];\n if (accessScope && accessScope !== NO_ACCESS) {\n const permission: CmsSecurityPermission = {\n name: `${CMS_PERMISSION}.${entity}`,\n own: false,\n rwd: \"r\",\n pw: \"\",\n groups: undefined,\n models: undefined\n };\n\n if (accessScope === \"own\") {\n permission.own = true;\n permission.rwd = \"rwd\";\n } else {\n permission.rwd = data[`${entity}RWD`] || \"r\";\n }\n\n permission.pw = (data[`${entity}PW`] || []).join(\"\");\n\n if (accessScope === \"models\") {\n permission.models = {};\n }\n\n if (accessScope === \"groups\") {\n permission.groups = {};\n }\n\n const props = data[`${entity}Props`];\n if (props) {\n [\"models\", \"groups\"].forEach(entity => {\n if (accessScope === entity && props[entity]) {\n permission[entity] = locales.reduce((acc, locale) => {\n if (props[entity][locale]) {\n acc[locale] = props[entity][locale];\n }\n return acc;\n }, {} as Record<string, string>);\n }\n });\n }\n\n newValue.push(permission);\n }\n });\n // Remove dependent permissions.\n // The \"cms.contentModel\" permission can only be assigned if the user has the \"read\" access for the \"cms.contentModelGroup\".\n if (!canRead(newValue, \"cms.contentModelGroup\")) {\n newValue = newValue.filter(item => item.name !== \"cms.contentModel\");\n }\n // The \"cms.contentEntry\" permission can only be assigned if the user has the \"read\" access for the \"cms.contentModel\".\n if (!canRead(newValue, \"cms.contentModel\")) {\n newValue = newValue.filter(item => item.name !== \"cms.contentEntry\");\n }\n\n onChange(newValue);\n },\n [value]\n );\n\n const formData = useMemo(() => {\n // This function only runs once on Form mount\n if (!Array.isArray(value)) {\n return {\n accessLevel: NO_ACCESS\n };\n }\n\n const hasFullAccess = value.find(\n item => item.name === CMS_PERMISSION_FULL_ACCESS || item.name === \"*\"\n );\n\n if (hasFullAccess) {\n return {\n accessLevel: FULL_ACCESS,\n endpoints: API_ENDPOINTS.map(item => item.id)\n };\n }\n\n const permissions = value.filter(item => item.name.startsWith(CMS_PERMISSION));\n\n if (!permissions.length) {\n return {\n accessLevel: NO_ACCESS\n };\n }\n\n // We're dealing with custom permissions. Let's first prepare data for \"content models\", \"content model groups\", \"content entries\" and \"environments\".\n const returnData = {\n accessLevel: CUSTOM_ACCESS,\n endpoints: permissions\n .filter(p => p.name.startsWith(\"cms.endpoint.\"))\n .map(p => p.name.replace(\"cms.endpoint.\", \"\"))\n };\n\n ENTITIES.forEach(entity => {\n const data: Record<string, any> = {\n [`${entity}AccessScope`]: FULL_ACCESS,\n [`${entity}RWD`]: \"r\",\n [`${entity}Props`]: {}\n };\n\n const entityPermission = permissions.find(\n item => item.name === `${CMS_PERMISSION}.${entity}`\n );\n\n if (entityPermission) {\n data[`${entity}AccessScope`] = entityPermission.own ? \"own\" : FULL_ACCESS;\n if (data[`${entity}AccessScope`] === \"own\") {\n data[`${entity}RWD`] = \"rwd\";\n } else {\n data[`${entity}RWD`] = entityPermission.rwd;\n }\n\n // If there are any non-empty props we'll set \"AccessScope\" to that prop.\n if (entityPermission.models) {\n data[`${entity}AccessScope`] = \"models\";\n data[`${entity}Props`] = { models: entityPermission.models };\n }\n\n if (entityPermission.groups) {\n data[`${entity}AccessScope`] = \"groups\";\n data[`${entity}Props`] = { groups: entityPermission.groups };\n }\n\n if (entity === \"contentEntry\") {\n data[`${entity}PW`] = entityPermission.pw ? entityPermission.pw.split(\"\") : [];\n }\n }\n\n Object.assign(returnData, data);\n });\n\n return returnData;\n }, []);\n\n const locales = getFormLocales();\n\n const getSelectedContentModelGroups = useCallback(data => {\n if (data && data.contentModelGroupAccessScope === \"groups\" && data.contentModelGroupProps) {\n return data.contentModelGroupProps.groups;\n }\n }, []);\n\n return (\n <Form\n data={formData}\n onChange={data => {\n /**\n * We know that data is CmsSecurityPermission.\n */\n return onFormChange(data as unknown as CmsSecurityPermission);\n }}\n >\n {({ data, Bind, setValue }) => {\n const endpoints = data.endpoints || [];\n const graphQLEndpointAccess =\n endpoints.includes(\"read\") ||\n endpoints.includes(\"manage\") ||\n endpoints.includes(\"preview\");\n\n return (\n <Fragment>\n <Grid className={gridNoPaddingClass}>\n <Cell span={6}>\n <PermissionInfo title={t`Access Level`} />\n </Cell>\n <Cell span={6}>\n <Bind name={\"accessLevel\"}>\n <Select label={t`Access Level`}>\n <option value={NO_ACCESS}>{t`No access`}</option>\n <option value={FULL_ACCESS}>{t`Full access`}</option>\n <option value={CUSTOM_ACCESS}>{t`Custom access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n {data.accessLevel === CUSTOM_ACCESS && (\n <>\n <Grid>\n <Cell span={12}>\n <Bind name={\"endpoints\"}>\n <CheckboxGroup\n label={t`GraphQL API types`}\n description={t`Each type has a separate URL and a specific purpose.\n Check out the {link} key topic to learn more.`({\n link: (\n <Link\n to={GRAPHQL_API_TYPES_LINK}\n target={\"_blank\"}\n >\n Headless CMS GraphQL API\n </Link>\n )\n })}\n >\n {({ getValue, onChange }) =>\n API_ENDPOINTS.map(({ id, name }) => (\n <Checkbox\n key={id}\n label={name}\n value={getValue(id)}\n onChange={onChange(id)}\n />\n ))\n }\n </CheckboxGroup>\n </Bind>\n </Cell>\n </Grid>\n {graphQLEndpointAccess && (\n <ContentModelGroupPermission\n data={data}\n Bind={Bind}\n entity={\"contentModelGroup\"}\n title={\"Content Model Groups\"}\n locales={locales}\n />\n )}\n\n {graphQLEndpointAccess &&\n canRead(value, \"cms.contentModelGroup\") && (\n <ContentModelPermission\n locales={locales}\n data={data}\n setValue={setValue}\n Bind={Bind}\n entity={\"contentModel\"}\n title={\"Content Models\"}\n selectedContentModelGroups={getSelectedContentModelGroups(\n data\n )}\n />\n )}\n\n {graphQLEndpointAccess && canRead(value, \"cms.contentModel\") && (\n <ContentEntryPermission\n data={data}\n Bind={Bind}\n setValue={setValue}\n entity={\"contentEntry\"}\n title={\"Content Entries\"}\n />\n )}\n </>\n )}\n </Fragment>\n );\n }}\n </Form>\n );\n};\n"]}
1
+ {"version":3,"names":["t","i18n","ns","CMS_PERMISSION","CMS_PERMISSION_FULL_ACCESS","FULL_ACCESS","NO_ACCESS","CUSTOM_ACCESS","ENTITIES","API_ENDPOINTS","id","name","GRAPHQL_API_TYPES_LINK","CMSPermissions","value","onChange","useI18N","getLocales","canRead","useCallback","permissionName","permission","find","item","rwd","includes","getFormLocales","localePermission","startsWith","map","l","code","Array","isArray","locales","onFormChange","data","newValue","filter","accessLevel","push","endpoints","forEach","api","entity","accessScope","own","pw","groups","undefined","models","join","props","reduce","acc","locale","formData","useMemo","hasFullAccess","permissions","length","returnData","p","replace","entityPermission","split","Object","assign","getSelectedContentModelGroups","contentModelGroupAccessScope","contentModelGroupProps","Bind","setValue","graphQLEndpointAccess","gridNoPaddingClass","link","getValue"],"sources":["CmsPermissions.tsx"],"sourcesContent":["/**\n * @pavel Please review types for security permissions\n * TODO @ts-refactor\n */\nimport React, { Fragment, useCallback, useMemo } from \"react\";\nimport ContentModelGroupPermission from \"./components/ContentModelGroupPermission\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { PermissionInfo, gridNoPaddingClass } from \"@webiny/app-admin/components/Permissions\";\nimport { Form } from \"@webiny/form\";\nimport { ContentModelPermission } from \"./components/ContentModelPermission\";\nimport { ContentEntryPermission } from \"./components/ContentEntryPermission\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\nimport { useI18N } from \"@webiny/app-i18n/hooks/useI18N\";\nimport { Link } from \"@webiny/react-router\";\nimport { CmsSecurityPermission } from \"~/types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\nconst CMS_PERMISSION = \"cms\";\nconst CMS_PERMISSION_FULL_ACCESS = \"cms.*\";\nconst FULL_ACCESS = \"full\";\nconst NO_ACCESS = \"no\";\nconst CUSTOM_ACCESS = \"custom\";\nconst ENTITIES = [\"contentModel\", \"contentModelGroup\", \"contentEntry\"];\nconst API_ENDPOINTS = [\n { id: \"read\", name: \"Read\" },\n { id: \"manage\", name: \"Manage\" },\n { id: \"preview\", name: \"Preview\" }\n];\n\nconst GRAPHQL_API_TYPES_LINK =\n \"https://www.webiny.com/docs/key-topics/webiny-applications/headless-cms/graphql-api/#graphql-api-types\";\n\nexport interface CMSPermissionsProps {\n value: CmsSecurityPermission[];\n onChange: (value: CmsSecurityPermission[]) => void;\n}\nexport const CMSPermissions: React.FC<CMSPermissionsProps> = ({ value, onChange }) => {\n const { getLocales } = useI18N();\n\n const canRead = useCallback((value: any[], permissionName: string) => {\n const permission = value.find(item => item.name === permissionName);\n\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"r\");\n }, []);\n\n const getFormLocales = () => {\n const localePermission = (value || []).find(item => item.name.startsWith(\"content.i18n\"));\n if (!localePermission) {\n return getLocales().map(l => l.code);\n }\n\n return Array.isArray(localePermission.locales)\n ? localePermission.locales\n : getLocales().map(l => l.code);\n };\n\n const onFormChange = useCallback(\n (data: CmsSecurityPermission) => {\n let newValue: CmsSecurityPermission[] = [];\n if (Array.isArray(value)) {\n // Let's just filter out the `cms*` permission objects.\n // Based on the `data` we rebuild new permission object from scratch.\n newValue = value.filter(item => !item.name.startsWith(CMS_PERMISSION));\n }\n\n if (data.accessLevel === NO_ACCESS) {\n onChange(newValue);\n return;\n }\n\n if (data.accessLevel === FULL_ACCESS) {\n newValue.push({\n name: CMS_PERMISSION_FULL_ACCESS\n });\n onChange(newValue);\n return;\n }\n\n const endpoints = data.endpoints;\n\n // Handling custom access level.\n if (endpoints && Array.isArray(data.endpoints)) {\n API_ENDPOINTS.forEach(api => {\n if (endpoints.includes(api.id)) {\n newValue.push({\n name: `${CMS_PERMISSION}.endpoint.${api.id}`\n });\n }\n });\n }\n\n const locales = getFormLocales();\n\n // Content models, content model groups, content entries\n ENTITIES.forEach(entity => {\n const accessScope = data[`${entity}AccessScope`];\n if (accessScope && accessScope !== NO_ACCESS) {\n const permission: CmsSecurityPermission = {\n name: `${CMS_PERMISSION}.${entity}`,\n own: false,\n rwd: \"r\",\n pw: \"\",\n groups: undefined,\n models: undefined\n };\n\n if (accessScope === \"own\") {\n permission.own = true;\n permission.rwd = \"rwd\";\n } else {\n permission.rwd = data[`${entity}RWD`] || \"r\";\n }\n\n permission.pw = (data[`${entity}PW`] || []).join(\"\");\n\n if (accessScope === \"models\") {\n permission.models = {};\n }\n\n if (accessScope === \"groups\") {\n permission.groups = {};\n }\n\n const props = data[`${entity}Props`];\n if (props) {\n [\"models\", \"groups\"].forEach(entity => {\n if (accessScope === entity && props[entity]) {\n permission[entity] = locales.reduce((acc, locale) => {\n if (props[entity][locale]) {\n acc[locale] = props[entity][locale];\n }\n return acc;\n }, {} as Record<string, string>);\n }\n });\n }\n\n newValue.push(permission);\n }\n });\n // Remove dependent permissions.\n // The \"cms.contentModel\" permission can only be assigned if the user has the \"read\" access for the \"cms.contentModelGroup\".\n if (!canRead(newValue, \"cms.contentModelGroup\")) {\n newValue = newValue.filter(item => item.name !== \"cms.contentModel\");\n }\n // The \"cms.contentEntry\" permission can only be assigned if the user has the \"read\" access for the \"cms.contentModel\".\n if (!canRead(newValue, \"cms.contentModel\")) {\n newValue = newValue.filter(item => item.name !== \"cms.contentEntry\");\n }\n\n onChange(newValue);\n },\n [value]\n );\n\n const formData = useMemo(() => {\n // This function only runs once on Form mount\n if (!Array.isArray(value)) {\n return {\n accessLevel: NO_ACCESS\n };\n }\n\n const hasFullAccess = value.find(\n item => item.name === CMS_PERMISSION_FULL_ACCESS || item.name === \"*\"\n );\n\n if (hasFullAccess) {\n return {\n accessLevel: FULL_ACCESS,\n endpoints: API_ENDPOINTS.map(item => item.id)\n };\n }\n\n const permissions = value.filter(item => item.name.startsWith(CMS_PERMISSION));\n\n if (!permissions.length) {\n return {\n accessLevel: NO_ACCESS\n };\n }\n\n // We're dealing with custom permissions. Let's first prepare data for \"content models\", \"content model groups\", \"content entries\" and \"environments\".\n const returnData = {\n accessLevel: CUSTOM_ACCESS,\n endpoints: permissions\n .filter(p => p.name.startsWith(\"cms.endpoint.\"))\n .map(p => p.name.replace(\"cms.endpoint.\", \"\"))\n };\n\n ENTITIES.forEach(entity => {\n const data: Record<string, any> = {\n [`${entity}AccessScope`]: FULL_ACCESS,\n [`${entity}RWD`]: \"r\",\n [`${entity}Props`]: {}\n };\n\n const entityPermission = permissions.find(\n item => item.name === `${CMS_PERMISSION}.${entity}`\n );\n\n if (entityPermission) {\n data[`${entity}AccessScope`] = entityPermission.own ? \"own\" : FULL_ACCESS;\n if (data[`${entity}AccessScope`] === \"own\") {\n data[`${entity}RWD`] = \"rwd\";\n } else {\n data[`${entity}RWD`] = entityPermission.rwd;\n }\n\n // If there are any non-empty props we'll set \"AccessScope\" to that prop.\n if (entityPermission.models) {\n data[`${entity}AccessScope`] = \"models\";\n data[`${entity}Props`] = { models: entityPermission.models };\n }\n\n if (entityPermission.groups) {\n data[`${entity}AccessScope`] = \"groups\";\n data[`${entity}Props`] = { groups: entityPermission.groups };\n }\n\n if (entity === \"contentEntry\") {\n data[`${entity}PW`] = entityPermission.pw ? entityPermission.pw.split(\"\") : [];\n }\n }\n\n Object.assign(returnData, data);\n });\n\n return returnData;\n }, []);\n\n const locales = getFormLocales();\n\n const getSelectedContentModelGroups = useCallback(data => {\n if (data && data.contentModelGroupAccessScope === \"groups\" && data.contentModelGroupProps) {\n return data.contentModelGroupProps.groups;\n }\n }, []);\n\n return (\n <Form\n data={formData}\n onChange={data => {\n /**\n * We know that data is CmsSecurityPermission.\n */\n return onFormChange(data as unknown as CmsSecurityPermission);\n }}\n >\n {({ data, Bind, setValue }) => {\n const endpoints = data.endpoints || [];\n const graphQLEndpointAccess =\n endpoints.includes(\"read\") ||\n endpoints.includes(\"manage\") ||\n endpoints.includes(\"preview\");\n\n return (\n <Fragment>\n <Grid className={gridNoPaddingClass}>\n <Cell span={6}>\n <PermissionInfo title={t`Access Level`} />\n </Cell>\n <Cell span={6}>\n <Bind name={\"accessLevel\"}>\n <Select label={t`Access Level`}>\n <option value={NO_ACCESS}>{t`No access`}</option>\n <option value={FULL_ACCESS}>{t`Full access`}</option>\n <option value={CUSTOM_ACCESS}>{t`Custom access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n {data.accessLevel === CUSTOM_ACCESS && (\n <>\n <Grid>\n <Cell span={12}>\n <Bind name={\"endpoints\"}>\n <CheckboxGroup\n label={t`GraphQL API types`}\n description={t`Each type has a separate URL and a specific purpose.\n Check out the {link} key topic to learn more.`({\n link: (\n <Link\n to={GRAPHQL_API_TYPES_LINK}\n target={\"_blank\"}\n >\n Headless CMS GraphQL API\n </Link>\n )\n })}\n >\n {({ getValue, onChange }) =>\n API_ENDPOINTS.map(({ id, name }) => (\n <Checkbox\n key={id}\n label={name}\n value={getValue(id)}\n onChange={onChange(id)}\n />\n ))\n }\n </CheckboxGroup>\n </Bind>\n </Cell>\n </Grid>\n {graphQLEndpointAccess && (\n <ContentModelGroupPermission\n data={data}\n Bind={Bind}\n entity={\"contentModelGroup\"}\n title={\"Content Model Groups\"}\n locales={locales}\n />\n )}\n\n {graphQLEndpointAccess &&\n canRead(value, \"cms.contentModelGroup\") && (\n <ContentModelPermission\n locales={locales}\n data={data}\n setValue={setValue}\n Bind={Bind}\n entity={\"contentModel\"}\n title={\"Content Models\"}\n selectedContentModelGroups={getSelectedContentModelGroups(\n data\n )}\n />\n )}\n\n {graphQLEndpointAccess && canRead(value, \"cms.contentModel\") && (\n <ContentEntryPermission\n data={data}\n Bind={Bind}\n setValue={setValue}\n entity={\"contentEntry\"}\n title={\"Content Entries\"}\n />\n )}\n </>\n )}\n </Fragment>\n );\n }}\n </Form>\n );\n};\n"],"mappings":"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"}