@webiny/app-headless-cms 5.24.0 → 5.25.0-beta.2

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 (427) hide show
  1. package/HeadlessCMS.d.ts +4 -3
  2. package/HeadlessCMS.js.map +1 -0
  3. package/admin/components/ContentEntryForm/ContentEntryForm.js +27 -6
  4. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -0
  5. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +18 -2
  6. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -0
  7. package/admin/components/ContentEntryForm/Fields.d.ts +1 -2
  8. package/admin/components/ContentEntryForm/Fields.js +1 -1
  9. package/admin/components/ContentEntryForm/Fields.js.map +1 -0
  10. package/admin/components/ContentEntryForm/Label.js.map +1 -0
  11. package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +1 -2
  12. package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -0
  13. package/admin/components/ContentEntryForm/functions/createValidators.d.ts +2 -1
  14. package/admin/components/ContentEntryForm/functions/createValidators.js +8 -5
  15. package/admin/components/ContentEntryForm/functions/createValidators.js.map +1 -0
  16. package/admin/components/ContentEntryForm/functions/getValue.d.ts +4 -3
  17. package/admin/components/ContentEntryForm/functions/getValue.js +0 -1
  18. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -0
  19. package/admin/components/ContentEntryForm/functions/setValue.d.ts +4 -3
  20. package/admin/components/ContentEntryForm/functions/setValue.js +0 -1
  21. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -0
  22. package/admin/components/ContentEntryForm/useBind.d.ts +3 -7
  23. package/admin/components/ContentEntryForm/useBind.js +6 -0
  24. package/admin/components/ContentEntryForm/useBind.js.map +1 -0
  25. package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +2 -4
  26. package/admin/components/ContentEntryForm/useContentEntryForm.js +75 -26
  27. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -0
  28. package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -0
  29. package/admin/components/ContentModelEditor/Context.d.ts +9 -7
  30. package/admin/components/ContentModelEditor/Context.js +158 -36
  31. package/admin/components/ContentModelEditor/Context.js.map +1 -0
  32. package/admin/components/ContentModelEditor/Editor.d.ts +1 -1
  33. package/admin/components/ContentModelEditor/Editor.js +5 -3
  34. package/admin/components/ContentModelEditor/Editor.js.map +1 -0
  35. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -0
  36. package/admin/components/ContentModelEditor/Header.js.map +1 -0
  37. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -0
  38. package/admin/components/ContentModelEditor/useContentModelEditor.d.ts +1 -1
  39. package/admin/components/ContentModelEditor/useContentModelEditor.js.map +1 -0
  40. package/admin/components/DragPreview.js +6 -1
  41. package/admin/components/DragPreview.js.map +1 -0
  42. package/admin/components/Draggable.js.map +1 -0
  43. package/admin/components/DropZone/Center.js.map +1 -0
  44. package/admin/components/DropZone/Horizontal.js +1 -1
  45. package/admin/components/DropZone/Horizontal.js.map +1 -0
  46. package/admin/components/DropZone/Vertical.js +1 -1
  47. package/admin/components/DropZone/Vertical.js.map +1 -0
  48. package/admin/components/DropZone/index.js.map +1 -0
  49. package/admin/components/Droppable.js.map +1 -0
  50. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -0
  51. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +14 -4
  52. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -0
  53. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +5 -1
  54. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -0
  55. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.d.ts +9 -4
  56. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +13 -6
  57. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +1 -0
  58. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.d.ts +2 -1
  59. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -0
  60. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.d.ts +2 -1
  61. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js +0 -1
  62. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -0
  63. package/admin/components/FieldEditor/EditFieldDialog.d.ts +1 -1
  64. package/admin/components/FieldEditor/EditFieldDialog.js +35 -18
  65. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -0
  66. package/admin/components/FieldEditor/Field.js +2 -2
  67. package/admin/components/FieldEditor/Field.js.map +1 -0
  68. package/admin/components/FieldEditor/FieldEditor.js.map +1 -0
  69. package/admin/components/FieldEditor/FieldEditorContext.d.ts +9 -9
  70. package/admin/components/FieldEditor/FieldEditorContext.js +43 -15
  71. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -0
  72. package/admin/components/FieldEditor/Styled.d.ts +2 -3
  73. package/admin/components/FieldEditor/Styled.js.map +1 -0
  74. package/admin/components/FieldEditor/index.js.map +1 -0
  75. package/admin/components/FieldEditor/useFieldEditor.js.map +1 -0
  76. package/admin/components/FieldEditor/utils/deleteField.d.ts +5 -5
  77. package/admin/components/FieldEditor/utils/deleteField.js +4 -0
  78. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -0
  79. package/admin/components/FieldEditor/utils/getFieldPosition.d.ts +2 -2
  80. package/admin/components/FieldEditor/utils/getFieldPosition.js +3 -2
  81. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -0
  82. package/admin/components/FieldEditor/utils/index.js.map +1 -0
  83. package/admin/components/FieldEditor/utils/moveField.d.ts +2 -2
  84. package/admin/components/FieldEditor/utils/moveField.js +3 -1
  85. package/admin/components/FieldEditor/utils/moveField.js.map +1 -0
  86. package/admin/components/FieldEditor/utils/moveRow.js.map +1 -0
  87. package/admin/constants/statusLabels.js.map +1 -0
  88. package/admin/contexts/Cms/NetworkError.js.map +1 -0
  89. package/admin/contexts/Cms/index.js +22 -7
  90. package/admin/contexts/Cms/index.js.map +1 -0
  91. package/admin/elements/ContentGroupMenuElement.js.map +1 -0
  92. package/admin/elements/ContentModelMenuElement.js.map +1 -0
  93. package/admin/elements/NothingToShowElement.js.map +1 -0
  94. package/admin/graphql/contentEntries.d.ts +8 -8
  95. package/admin/graphql/contentEntries.js.map +1 -0
  96. package/admin/graphql/contentModels.d.ts +2 -2
  97. package/admin/graphql/contentModels.js.map +1 -0
  98. package/admin/graphql/createFieldsList.js.map +1 -0
  99. package/admin/hooks/index.js.map +1 -0
  100. package/admin/hooks/useApolloClient.js.map +1 -0
  101. package/admin/hooks/useCms.js.map +1 -0
  102. package/admin/hooks/useLazyQuery.d.ts +2 -1
  103. package/admin/hooks/useLazyQuery.js.map +1 -0
  104. package/admin/hooks/useMutation.d.ts +2 -1
  105. package/admin/hooks/useMutation.js.map +1 -0
  106. package/admin/hooks/usePermission.js +20 -19
  107. package/admin/hooks/usePermission.js.map +1 -0
  108. package/admin/hooks/useQuery.d.ts +2 -2
  109. package/admin/hooks/useQuery.js.map +1 -0
  110. package/admin/hooks/useQueryLocale.d.ts +2 -2
  111. package/admin/hooks/useQueryLocale.js.map +1 -0
  112. package/admin/menus/CmsMenuLoader.js.map +1 -0
  113. package/admin/menus/ContentGroupsMenuItems.js +1 -1
  114. package/admin/menus/ContentGroupsMenuItems.js.map +1 -0
  115. package/admin/menus/GlobalSearchPlugins.d.ts +0 -1
  116. package/admin/menus/GlobalSearchPlugins.js +1 -1
  117. package/admin/menus/GlobalSearchPlugins.js.map +1 -0
  118. package/admin/menus/NothingToShowElement.js.map +1 -0
  119. package/admin/plugins/apiInformation/index.js +3 -3
  120. package/admin/plugins/apiInformation/index.js.map +1 -0
  121. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -0
  122. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -0
  123. package/admin/plugins/editor/defaultBar/BackButton.js +4 -2
  124. package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -0
  125. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -0
  126. package/admin/plugins/editor/defaultBar/Divider.d.ts +1 -2
  127. package/admin/plugins/editor/defaultBar/Divider.js.map +1 -0
  128. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +11 -1
  129. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -0
  130. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -0
  131. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.d.ts +2 -2
  132. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -0
  133. package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -0
  134. package/admin/plugins/editor/defaultBar/Name/Name.js +1 -1
  135. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -0
  136. package/admin/plugins/editor/defaultBar/Name/NameStyled.d.ts +3 -4
  137. package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -0
  138. package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -0
  139. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +37 -32
  140. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -0
  141. package/admin/plugins/editor/defaultBar/index.d.ts +0 -1
  142. package/admin/plugins/editor/defaultBar/index.js.map +1 -0
  143. package/admin/plugins/editor/formSettings/components/GeneralSettings.d.ts +0 -1
  144. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -0
  145. package/admin/plugins/editor/formSettings/components/GroupSelect.d.ts +0 -1
  146. package/admin/plugins/editor/formSettings/components/GroupSelect.js +1 -1
  147. package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -0
  148. package/admin/plugins/editor/formSettings/index.js.map +1 -0
  149. package/admin/plugins/fieldRenderers/Accordion.d.ts +1 -1
  150. package/admin/plugins/fieldRenderers/Accordion.js +1 -1
  151. package/admin/plugins/fieldRenderers/Accordion.js.map +1 -0
  152. package/admin/plugins/fieldRenderers/DynamicSection.d.ts +7 -1
  153. package/admin/plugins/fieldRenderers/DynamicSection.js +7 -4
  154. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -0
  155. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +0 -1
  156. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -0
  157. package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -0
  158. package/admin/plugins/fieldRenderers/checkboxes.js +11 -6
  159. package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -0
  160. package/admin/plugins/fieldRenderers/dateTime/DateOnly.d.ts +2 -1
  161. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js +40 -9
  162. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -0
  163. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.d.ts +2 -2
  164. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +74 -18
  165. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -0
  166. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.d.ts +2 -2
  167. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js +72 -16
  168. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -0
  169. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -0
  170. package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -0
  171. package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -0
  172. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +4 -4
  173. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -0
  174. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +15 -10
  175. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -0
  176. package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -0
  177. package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +3 -3
  178. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -0
  179. package/admin/plugins/fieldRenderers/file/File.d.ts +4 -4
  180. package/admin/plugins/fieldRenderers/file/File.js +9 -3
  181. package/admin/plugins/fieldRenderers/file/File.js.map +1 -0
  182. package/admin/plugins/fieldRenderers/file/fileField.js +4 -4
  183. package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -0
  184. package/admin/plugins/fieldRenderers/file/fileFields.js +10 -5
  185. package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -0
  186. package/admin/plugins/fieldRenderers/file/index.js.map +1 -0
  187. package/admin/plugins/fieldRenderers/file/utils.d.ts +0 -1
  188. package/admin/plugins/fieldRenderers/file/utils.js +2 -2
  189. package/admin/plugins/fieldRenderers/file/utils.js.map +1 -0
  190. package/admin/plugins/fieldRenderers/longText/index.js.map +1 -0
  191. package/admin/plugins/fieldRenderers/longText/longText.js +0 -1
  192. package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -0
  193. package/admin/plugins/fieldRenderers/longText/longTexts.js +1 -1
  194. package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -0
  195. package/admin/plugins/fieldRenderers/number/index.js.map +1 -0
  196. package/admin/plugins/fieldRenderers/number/numberInput.js +0 -1
  197. package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -0
  198. package/admin/plugins/fieldRenderers/number/numberInputs.js +1 -1
  199. package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -0
  200. package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -0
  201. package/admin/plugins/fieldRenderers/object/index.js.map +1 -0
  202. package/admin/plugins/fieldRenderers/object/multipleObjects.js +5 -5
  203. package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -0
  204. package/admin/plugins/fieldRenderers/object/singleObject.js +3 -2
  205. package/admin/plugins/fieldRenderers/object/singleObject.js.map +1 -0
  206. package/admin/plugins/fieldRenderers/radioButtons.js +11 -5
  207. package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -0
  208. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.d.ts +2 -1
  209. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +2 -4
  210. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -0
  211. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.d.ts +2 -1
  212. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -0
  213. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.d.ts +3 -2
  214. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -0
  215. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +14 -8
  216. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -0
  217. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -0
  218. package/admin/plugins/fieldRenderers/ref/components/getOptions.d.ts +4 -3
  219. package/admin/plugins/fieldRenderers/ref/components/getOptions.js +1 -1
  220. package/admin/plugins/fieldRenderers/ref/components/getOptions.js.map +1 -0
  221. package/admin/plugins/fieldRenderers/ref/components/graphql.d.ts +4 -14
  222. package/admin/plugins/fieldRenderers/ref/components/graphql.js +1 -1
  223. package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -0
  224. package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -0
  225. package/admin/plugins/fieldRenderers/ref/components/useReference.d.ts +6 -11
  226. package/admin/plugins/fieldRenderers/ref/components/useReference.js +4 -3
  227. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -0
  228. package/admin/plugins/fieldRenderers/ref/components/useReferences.d.ts +3 -9
  229. package/admin/plugins/fieldRenderers/ref/components/useReferences.js +1 -2
  230. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -0
  231. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +4 -3
  232. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -0
  233. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js +6 -1
  234. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -0
  235. package/admin/plugins/fieldRenderers/ref/index.js.map +1 -0
  236. package/admin/plugins/fieldRenderers/ref/refInput.js +0 -1
  237. package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -0
  238. package/admin/plugins/fieldRenderers/ref/refInputs.js +1 -2
  239. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -0
  240. package/admin/plugins/fieldRenderers/richText/index.js.map +1 -0
  241. package/admin/plugins/fieldRenderers/richText/richTextInput.js +5 -1
  242. package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -0
  243. package/admin/plugins/fieldRenderers/richText/richTextInputs.js +9 -3
  244. package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -0
  245. package/admin/plugins/fieldRenderers/select.js +28 -7
  246. package/admin/plugins/fieldRenderers/select.js.map +1 -0
  247. package/admin/plugins/fieldRenderers/text/index.js.map +1 -0
  248. package/admin/plugins/fieldRenderers/text/textInput.js +0 -1
  249. package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -0
  250. package/admin/plugins/fieldRenderers/text/textInputs.js +1 -1
  251. package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -0
  252. package/admin/plugins/fieldValidators/date/availableValidators.d.ts +1 -1
  253. package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -0
  254. package/admin/plugins/fieldValidators/date/createDateInputField.d.ts +0 -1
  255. package/admin/plugins/fieldValidators/date/createDateInputField.js +5 -3
  256. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -0
  257. package/admin/plugins/fieldValidators/dateGte.js +1 -1
  258. package/admin/plugins/fieldValidators/dateGte.js.map +1 -0
  259. package/admin/plugins/fieldValidators/dateLte.js +1 -1
  260. package/admin/plugins/fieldValidators/dateLte.js.map +1 -0
  261. package/admin/plugins/fieldValidators/gte.js.map +1 -0
  262. package/admin/plugins/fieldValidators/in.js.map +1 -0
  263. package/admin/plugins/fieldValidators/lte.js.map +1 -0
  264. package/admin/plugins/fieldValidators/maxLength.js.map +1 -0
  265. package/admin/plugins/fieldValidators/minLength.js.map +1 -0
  266. package/admin/plugins/fieldValidators/pattern.js +6 -0
  267. package/admin/plugins/fieldValidators/pattern.js.map +1 -0
  268. package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -0
  269. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -0
  270. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -0
  271. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -0
  272. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -0
  273. package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -0
  274. package/admin/plugins/fieldValidators/required.js.map +1 -0
  275. package/admin/plugins/fieldValidators/unique.js.map +1 -0
  276. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -0
  277. package/admin/plugins/fields/boolean.js.map +1 -0
  278. package/admin/plugins/fields/dateTime.js.map +1 -0
  279. package/admin/plugins/fields/file.js +2 -2
  280. package/admin/plugins/fields/file.js.map +1 -0
  281. package/admin/plugins/fields/longText.js.map +1 -0
  282. package/admin/plugins/fields/number.js.map +1 -0
  283. package/admin/plugins/fields/object/ObjectFields.js +2 -2
  284. package/admin/plugins/fields/object/ObjectFields.js.map +1 -0
  285. package/admin/plugins/fields/object.js +1 -1
  286. package/admin/plugins/fields/object.js.map +1 -0
  287. package/admin/plugins/fields/ref.js +5 -5
  288. package/admin/plugins/fields/ref.js.map +1 -0
  289. package/admin/plugins/fields/richText.js.map +1 -0
  290. package/admin/plugins/fields/text.js.map +1 -0
  291. package/admin/plugins/getObjectId.js.map +1 -0
  292. package/admin/plugins/icons.js +10 -3
  293. package/admin/plugins/icons.js.map +1 -0
  294. package/admin/plugins/index.d.ts +0 -1
  295. package/admin/plugins/index.js.map +1 -0
  296. package/admin/plugins/install.js +11 -7
  297. package/admin/plugins/install.js.map +1 -0
  298. package/admin/plugins/permissionRenderer/CmsPermissions.js +14 -9
  299. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -0
  300. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.d.ts +2 -2
  301. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +7 -6
  302. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -0
  303. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.d.ts +2 -2
  304. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +7 -6
  305. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -0
  306. package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -0
  307. package/admin/plugins/permissionRenderer/components/ContentModelPermission.d.ts +2 -2
  308. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +7 -6
  309. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -0
  310. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -0
  311. package/admin/plugins/permissionRenderer/components/PermissionSelector.d.ts +1 -1
  312. package/admin/plugins/permissionRenderer/components/PermissionSelector.js +13 -1
  313. package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -0
  314. package/admin/plugins/permissionRenderer/components/StyledComponents.d.ts +1 -2
  315. package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -0
  316. package/admin/plugins/permissionRenderer/components/types.js.map +1 -0
  317. package/admin/plugins/permissionRenderer/components/useCmsData.js +4 -6
  318. package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -0
  319. package/admin/plugins/permissionRenderer/index.js.map +1 -0
  320. package/admin/plugins/routes.js.map +1 -0
  321. package/admin/plugins/transformers/dateTransformer.js +20 -24
  322. package/admin/plugins/transformers/dateTransformer.js.map +1 -0
  323. package/admin/plugins/transformers/index.js.map +1 -0
  324. package/admin/plugins/transformers/numberTransformer.js.map +1 -0
  325. package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.d.ts +1 -1
  326. package/admin/plugins/upgrades/5.19.0/UpgradeItemsInfo.js.map +1 -0
  327. package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.d.ts +2 -2
  328. package/admin/plugins/upgrades/5.19.0/createCmsApolloClient.js.map +1 -0
  329. package/admin/plugins/upgrades/5.19.0/createListEntriesQuery.js.map +1 -0
  330. package/admin/plugins/upgrades/5.19.0/createListModelsQuery.js.map +1 -0
  331. package/admin/plugins/upgrades/5.19.0/createRepublishMutation.js.map +1 -0
  332. package/admin/plugins/upgrades/5.19.0/createUpgradeMutation.js.map +1 -0
  333. package/admin/plugins/upgrades/5.19.0/fetchModelEntries.d.ts +2 -2
  334. package/admin/plugins/upgrades/5.19.0/fetchModelEntries.js.map +1 -0
  335. package/admin/plugins/upgrades/5.19.0/types.js.map +1 -0
  336. package/admin/plugins/upgrades/v5.0.0.d.ts +0 -1
  337. package/admin/plugins/upgrades/v5.0.0.js.map +1 -0
  338. package/admin/plugins/upgrades/v5.19.0.d.ts +0 -1
  339. package/admin/plugins/upgrades/v5.19.0.js.map +1 -0
  340. package/admin/plugins/upgrades/v5.5.0.d.ts +0 -1
  341. package/admin/plugins/upgrades/v5.5.0.js.map +1 -0
  342. package/admin/plugins/upgrades/v5.8.0.d.ts +0 -1
  343. package/admin/plugins/upgrades/v5.8.0.js.map +1 -0
  344. package/admin/plugins/validators/dateGte.js.map +1 -0
  345. package/admin/plugins/validators/dateLte.js.map +1 -0
  346. package/admin/plugins/validators/gte.js.map +1 -0
  347. package/admin/plugins/validators/in.js.map +1 -0
  348. package/admin/plugins/validators/lte.js.map +1 -0
  349. package/admin/plugins/validators/maxLength.js.map +1 -0
  350. package/admin/plugins/validators/minLength.js.map +1 -0
  351. package/admin/plugins/validators/pattern.js.map +1 -0
  352. package/admin/plugins/validators/patternPlugins/email.js.map +1 -0
  353. package/admin/plugins/validators/patternPlugins/lowerCase.js.map +1 -0
  354. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +1 -0
  355. package/admin/plugins/validators/patternPlugins/upperCase.js.map +1 -0
  356. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +1 -0
  357. package/admin/plugins/validators/patternPlugins/url.js.map +1 -0
  358. package/admin/plugins/validators/required.js.map +1 -0
  359. package/admin/plugins/validators/timeGte.js.map +1 -0
  360. package/admin/plugins/validators/timeLte.js.map +1 -0
  361. package/admin/plugins/validators/unique.js.map +1 -0
  362. package/admin/plugins/welcomeScreenWidget.js.map +1 -0
  363. package/admin/views/contentEntries/ContentEntries.js +2 -2
  364. package/admin/views/contentEntries/ContentEntries.js.map +1 -0
  365. package/admin/views/contentEntries/ContentEntriesContext.js +13 -4
  366. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -0
  367. package/admin/views/contentEntries/ContentEntriesList.js.map +1 -0
  368. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +10 -7
  369. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +85 -4
  370. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -0
  371. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +4 -2
  372. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -0
  373. package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -0
  374. package/admin/views/contentEntries/ContentEntry/cache.js +19 -23
  375. package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -0
  376. package/admin/views/contentEntries/ContentEntry/header/Header.js.map +1 -0
  377. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js +15 -8
  378. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -0
  379. package/admin/views/contentEntries/ContentEntry/header/index.js.map +1 -0
  380. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.d.ts +1 -2
  381. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -0
  382. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -0
  383. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js +8 -7
  384. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +1 -0
  385. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +2 -2
  386. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +1 -0
  387. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js +2 -2
  388. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +1 -0
  389. package/admin/views/contentEntries/ContentEntry/prepareFormData.js +2 -1
  390. package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -0
  391. package/admin/views/contentEntries/ContentEntry/useRevision.js +105 -47
  392. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -0
  393. package/admin/views/contentEntries/ContentEntry.js.map +1 -0
  394. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -0
  395. package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -2
  396. package/admin/views/contentEntries/hooks/useContentEntriesList.js +4 -4
  397. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -0
  398. package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -0
  399. package/admin/views/contentModelGroups/ContentModelGroups.js +4 -3
  400. package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -0
  401. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +6 -3
  402. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -0
  403. package/admin/views/contentModelGroups/ContentModelGroupsForm.js +23 -8
  404. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -0
  405. package/admin/views/contentModelGroups/DelayedOnChange.js.map +1 -0
  406. package/admin/views/contentModelGroups/IconPicker.js +11 -3
  407. package/admin/views/contentModelGroups/IconPicker.js.map +1 -0
  408. package/admin/views/contentModelGroups/graphql.js.map +1 -0
  409. package/admin/views/contentModels/CloneContentModelDialog.js +25 -34
  410. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -0
  411. package/admin/views/contentModels/ContentModelEditor.js +2 -2
  412. package/admin/views/contentModels/ContentModelEditor.js.map +1 -0
  413. package/admin/views/contentModels/ContentModels.js +5 -4
  414. package/admin/views/contentModels/ContentModels.js.map +1 -0
  415. package/admin/views/contentModels/ContentModelsDataList.js +9 -2
  416. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -0
  417. package/admin/views/contentModels/NewContentModelDialog.js +17 -3
  418. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -0
  419. package/admin/views/contentModels/cache.js +38 -12
  420. package/admin/views/contentModels/cache.js.map +1 -0
  421. package/admin/views/contentModels/types.js.map +1 -0
  422. package/admin/views/utils.js.map +1 -0
  423. package/admin/viewsGraphql.js.map +1 -0
  424. package/index.js.map +1 -0
  425. package/package.json +26 -25
  426. package/types.d.ts +41 -7
  427. package/types.js.map +1 -0
@@ -7,7 +7,13 @@ import useDeepCompareEffect from "use-deep-compare-effect";
7
7
  import { plugins } from "@webiny/plugins";
8
8
  import * as utils from "./utils";
9
9
  import { useFieldEditor } from "./useFieldEditor";
10
- export var FieldEditorContext = /*#__PURE__*/React.createContext(null);
10
+ export var FieldEditorContext = /*#__PURE__*/React.createContext(
11
+ /**
12
+ * Safe to cast.
13
+ */
14
+ {
15
+ field: null
16
+ });
11
17
  export var FieldEditorProvider = function FieldEditorProvider(_ref) {
12
18
  var parent = _ref.parent,
13
19
  fields = _ref.fields,
@@ -27,7 +33,10 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
27
33
  layout: layout,
28
34
  fields: fields,
29
35
  field: null,
30
- dropTarget: null
36
+ dropTarget: {
37
+ row: -1,
38
+ index: null
39
+ }
31
40
  }),
32
41
  _useState2 = _slicedToArray(_useState, 2),
33
42
  state = _useState2[0],
@@ -54,7 +63,8 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
54
63
  type = source.type,
55
64
  fieldType = source.fieldType,
56
65
  field = source.field,
57
- fields = source.fields;
66
+ _source$fields = source.fields,
67
+ fields = _source$fields === void 0 ? [] : _source$fields;
58
68
  var parentId = parent ? parent.fieldId : null;
59
69
 
60
70
  if (type === "row") {
@@ -69,7 +79,7 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
69
79
  }
70
80
  });
71
81
  });
72
- } else {
82
+ } else if (pos && pos.row !== undefined) {
73
83
  // We're dragging a row within the same fieldset
74
84
  moveRow(pos.row, dropTarget.row);
75
85
  }
@@ -79,6 +89,10 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
79
89
 
80
90
 
81
91
  if (pos) {
92
+ if (!field) {
93
+ return onDropTarget;
94
+ }
95
+
82
96
  if (parentId !== source.parent) {
83
97
  // We're dragging an existing field from another fieldset
84
98
  insertField({
@@ -96,7 +110,20 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
96
110
  return onDropTarget;
97
111
  }
98
112
 
113
+ if (!fieldType) {
114
+ return null;
115
+ }
116
+
99
117
  var plugin = getFieldPlugin(fieldType);
118
+
119
+ if (!plugin) {
120
+ return null;
121
+ }
122
+ /**
123
+ * TODO @ts-refactor figure out better type for this.
124
+ */
125
+
126
+
100
127
  editField(plugin.field.createField());
101
128
  setState(function (state) {
102
129
  return _objectSpread(_objectSpread({}, state), {}, {
@@ -125,7 +152,7 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
125
152
  return;
126
153
  }
127
154
 
128
- var removeFields = type === "row" ? fields : [field];
155
+ var removeFields = type === "row" ? fields || [] : field ? [field] : [];
129
156
  removeFields.forEach(function (field) {
130
157
  return deleteField(field);
131
158
  });
@@ -140,13 +167,10 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
140
167
  return getField({
141
168
  id: id
142
169
  });
143
- });
144
- }); // fields.forEach((row, rowIndex) => {
145
- // row.forEach((fieldId, fieldIndex) => {
146
- // fields[rowIndex][fieldIndex] = getField({ id: fieldId });
147
- // });
148
- // });
149
- // return fields;
170
+ }).filter(Boolean);
171
+ }).filter(function (row) {
172
+ return row.length > 0;
173
+ });
150
174
  };
151
175
  /**
152
176
  * Return field plugin.
@@ -167,13 +191,13 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
167
191
  return state.fields.find(function (field) {
168
192
  for (var key in query) {
169
193
  if (!(key in field)) {
170
- return null;
194
+ return false;
171
195
  } // TODO @ts-refactor figure if there is a way to fix this.
172
196
  // @ts-ignore
173
197
 
174
198
 
175
199
  if (field[key] !== query[key]) {
176
- return null;
200
+ return false;
177
201
  }
178
202
  }
179
203
 
@@ -283,12 +307,16 @@ export var FieldEditorProvider = function FieldEditorProvider(_ref) {
283
307
 
284
308
  switch (item.type) {
285
309
  case "row":
286
- item.fields.forEach(function (field) {
310
+ (item.fields || []).forEach(function (field) {
287
311
  return draggedFields.push(field.fieldId);
288
312
  });
289
313
  break;
290
314
 
291
315
  case "field":
316
+ if (!item.field) {
317
+ break;
318
+ }
319
+
292
320
  draggedFields.push(item.field.fieldId);
293
321
  break;
294
322
 
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["FieldEditorContext.tsx"],"names":["React","useCallback","useState","dot","shortid","useDeepCompareEffect","plugins","utils","useFieldEditor","FieldEditorContext","createContext","field","FieldEditorProvider","parent","fields","layout","onChange","children","depth","editor","dropTarget","row","index","state","setState","editField","onDropTarget","fieldId","onFieldDrop","source","pos","type","fieldType","parentId","forEach","insertField","position","undefined","moveRow","moveField","plugin","getFieldPlugin","createField","onEndDrag","monitor","didDrop","getDropResult","removeFields","deleteField","getFieldsInLayout","filter","arr","length","map","id","getField","Boolean","byType","find","query","key","generate","Error","fieldPlugin","prev","next","concat","data","destination","updateField","i","set","noConflict","isVisible","item","sameParent","draggedFields","push","some","includes","f","join","value"],"mappings":"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","sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport dot from \"dot-prop-immutable\";\nimport shortid from \"shortid\";\nimport useDeepCompareEffect from \"use-deep-compare-effect\";\nimport {\n CmsEditorField,\n CmsEditorFieldId,\n CmsEditorFieldsLayout,\n CmsEditorFieldTypePlugin,\n FieldLayoutPosition\n} from \"~/types\";\nimport { plugins } from \"@webiny/plugins\";\nimport * as utils from \"./utils\";\nimport { FieldEditorProps } from \"./FieldEditor\";\nimport { DragObjectWithType, DragSourceMonitor } from \"react-dnd\";\nimport { useFieldEditor } from \"~/admin/components/FieldEditor/useFieldEditor\";\n\ninterface DropTarget {\n row: number;\n index: number | null;\n}\n\ninterface Position {\n row: number;\n index: number;\n}\n\nexport interface DragSource extends DragObjectWithType {\n parent?: string;\n pos?: Partial<Position>;\n type: \"row\" | \"field\" | \"newField\";\n fieldType?: string;\n field?: CmsEditorField | null;\n fields?: CmsEditorField[];\n}\n\n/**\n * Property in GetFieldParams can be any key from CmsEditorField, but TS does not allow union types\n */\ninterface GetFieldParams {\n id?: string;\n fieldId?: string;\n}\ninterface InsertFieldParams {\n field: CmsEditorField;\n position: FieldLayoutPosition;\n}\ninterface MoveFieldParams {\n field: CmsEditorFieldId | CmsEditorField;\n position: FieldLayoutPosition;\n}\ninterface GetFieldsInLayoutCallable {\n (): CmsEditorField[][];\n}\ninterface GetFieldPluginCallable {\n (type: string): CmsEditorFieldTypePlugin | undefined;\n}\ninterface GetFieldCallable {\n (query: GetFieldParams): CmsEditorField | undefined;\n}\ninterface OnFieldDropCallable {\n (source: Partial<DragSource>, target: DropTarget): void;\n}\ninterface InsertFieldCallable {\n (params: InsertFieldParams): void;\n}\ninterface MoveFieldCallable {\n (params: MoveFieldParams): void;\n}\ninterface OnEndDragCallable {\n (item: DragSource, monitor: DragSourceMonitor): void;\n}\ninterface MoveRowCallable {\n (source: number, destination: number): void;\n}\ninterface UpdateFieldCallable {\n (field: Pick<CmsEditorField, \"id\">): void;\n}\ninterface DeleteFieldCallable {\n (field: Pick<CmsEditorField, \"id\">): void;\n}\ninterface IsVisibleCallable {\n (item: DragSource): boolean;\n}\ninterface NoConflictCallable {\n (cb?: IsVisibleCallable): (item: DragSource) => boolean;\n}\nexport interface FieldEditorContextValue {\n fields: CmsEditorField[][];\n noConflict: NoConflictCallable;\n layout: CmsEditorFieldsLayout;\n onChange?: (data: any) => void;\n getFieldsInLayout: GetFieldsInLayoutCallable;\n getFieldPlugin: GetFieldPluginCallable;\n getField: GetFieldCallable;\n editField: (field: CmsEditorField | null) => void;\n field: CmsEditorField | null;\n parent?: CmsEditorField;\n depth: number;\n dropTarget: DropTarget;\n onFieldDrop: OnFieldDropCallable;\n onEndDrag: OnEndDragCallable;\n insertField: InsertFieldCallable;\n moveField: MoveFieldCallable;\n moveRow: MoveRowCallable;\n updateField: UpdateFieldCallable;\n deleteField: DeleteFieldCallable;\n}\n\ninterface FieldEditorProviderProps extends FieldEditorProps {\n children: React.ReactElement;\n}\n\nexport const FieldEditorContext = React.createContext<FieldEditorContextValue>(\n /**\n * Safe to cast.\n */\n {\n field: null\n } as unknown as FieldEditorContextValue\n);\n\ninterface State {\n layout: CmsEditorFieldsLayout;\n fields: CmsEditorField[];\n field: CmsEditorField | null;\n dropTarget: DropTarget;\n}\nexport const FieldEditorProvider: React.FC<FieldEditorProviderProps> = ({\n parent,\n fields,\n layout,\n onChange,\n children\n}) => {\n // We need to determine depth of this provider so we can render drop zones with correct z-indexes.\n let depth = 0;\n try {\n const editor = useFieldEditor();\n depth = editor.depth + 1;\n } catch {\n // There's no parent provider, so this is the top-level one.\n }\n\n const [state, setState] = useState<State>({\n layout,\n fields,\n field: null,\n dropTarget: {\n row: -1,\n index: null\n }\n });\n\n useDeepCompareEffect(() => {\n onChange({ fields: state.fields, layout: state.layout });\n }, [state.fields, state.layout]);\n\n const editField = useCallback((field: CmsEditorField | null) => {\n setState(state => ({ ...state, field }));\n }, []);\n\n const onDropTarget = {\n dropTarget: parent ? parent.fieldId : null\n };\n\n const onFieldDrop = useCallback<OnFieldDropCallable>((source, dropTarget) => {\n const { pos, type, fieldType, field, fields = [] } = source;\n\n const parentId = parent ? parent.fieldId : null;\n\n if (type === \"row\") {\n if (parentId !== source.parent) {\n // We're dragging an existing row from another fieldset\n fields.forEach((field, index) => {\n insertField({\n field,\n position: {\n row: dropTarget.row,\n index: index === 0 ? null : index\n }\n });\n });\n } else if (pos && pos.row !== undefined) {\n // We're dragging a row within the same fieldset\n moveRow(pos.row, dropTarget.row);\n }\n\n return onDropTarget;\n }\n\n // If source pos is set, we are moving an existing field.\n if (pos) {\n if (!field) {\n return onDropTarget;\n }\n if (parentId !== source.parent) {\n // We're dragging an existing field from another fieldset\n insertField({ field, position: dropTarget });\n } else {\n // We're dragging a field within the same fieldset\n moveField({ field, position: dropTarget });\n }\n return onDropTarget;\n }\n\n if (!fieldType) {\n return null;\n }\n const plugin = getFieldPlugin(fieldType);\n if (!plugin) {\n return null;\n }\n /**\n * TODO @ts-refactor figure out better type for this.\n */\n editField(plugin.field.createField() as CmsEditorField);\n setState(state => ({\n ...state,\n dropTarget\n }));\n return null;\n }, []);\n\n const onEndDrag: OnEndDragCallable = ({ type, field, fields }, monitor) => {\n if (!monitor.didDrop()) {\n return;\n }\n\n // Check if we dropped outside of the source fieldset, and if yes, remove the field from the original parent.\n const { dropTarget } = monitor.getDropResult();\n const parentId = parent ? parent.fieldId : null;\n if (dropTarget === parentId) {\n return;\n }\n\n const removeFields = type === \"row\" ? fields || [] : field ? [field] : [];\n removeFields.forEach(field => deleteField(field));\n };\n\n const getFieldsInLayout: GetFieldsInLayoutCallable = () => {\n // Replace every field ID with actual field object.\n return state.layout\n .filter(arr => arr.length)\n .map(row => {\n return row\n .map(id => {\n return getField({ id });\n })\n .filter(Boolean);\n })\n .filter(row => {\n return row.length > 0;\n }) as CmsEditorField[][];\n };\n\n /**\n * Return field plugin.\n */\n const getFieldPlugin: GetFieldPluginCallable = type => {\n return plugins\n .byType<CmsEditorFieldTypePlugin>(\"cms-editor-field-type\")\n .find(plugin => plugin.field.type === type);\n };\n\n /**\n * Checks if field of given type already exists in the list of fields.\n */\n const getField: GetFieldCallable = query => {\n return state.fields.find(field => {\n for (const key in query) {\n if (!(key in field)) {\n return false;\n }\n // TODO @ts-refactor figure if there is a way to fix this.\n // @ts-ignore\n if (field[key] !== query[key]) {\n return false;\n }\n }\n\n return true;\n });\n };\n\n /**\n * Inserts a new field into the target position.\n */\n const insertField: InsertFieldCallable = ({ field, position }) => {\n if (!field.id) {\n field.id = shortid.generate();\n }\n\n if (!field.type) {\n throw new Error(`Field \"type\" missing.`);\n }\n\n const fieldPlugin = getFieldPlugin(field.type);\n if (!fieldPlugin) {\n throw new Error(`Invalid field \"type\".`);\n }\n\n setState(prev => {\n const next: State = {\n ...prev,\n fields: (prev.fields || []).concat(field)\n };\n\n // Move field to position where it was dropped.\n return utils.moveField({ field, position, data: next });\n });\n };\n\n /**\n * Moves field to the given target position.\n */\n const moveField: MoveFieldCallable = ({ field, position }) => {\n setState(data => {\n return utils.moveField<State>({ field, position, data });\n });\n };\n\n /**\n * Moves row to a destination row.\n */\n const moveRow: MoveRowCallable = (source, destination) => {\n setState(data => {\n return utils.moveRow({ data, source, destination });\n });\n };\n\n /**\n * Updates field.\n */\n const updateField: UpdateFieldCallable = field => {\n setState(data => {\n for (let i = 0; i < data.fields.length; i++) {\n if (data.fields[i].id === field.id) {\n return dot.set(data, `fields.${i}`, field);\n }\n }\n return data;\n });\n };\n\n /**\n * Deletes a field (both from the list of field and the layout).\n */\n const deleteField: DeleteFieldCallable = field => {\n setState(data => {\n return utils.deleteField({ field, data });\n });\n };\n\n const noConflict: NoConflictCallable = useCallback(\n (isVisible?: IsVisibleCallable) => item => {\n const sameParent = item.parent === onDropTarget.dropTarget;\n const draggedFields: string[] = [];\n switch (item.type) {\n case \"row\":\n (item.fields || []).forEach(field => draggedFields.push(field.fieldId));\n break;\n case \"field\":\n if (!item.field) {\n break;\n }\n draggedFields.push(item.field.fieldId);\n break;\n default:\n break;\n }\n\n if (\n draggedFields.length &&\n !sameParent &&\n fields.some(field => draggedFields.includes(field.fieldId))\n ) {\n return false;\n }\n\n return typeof isVisible === \"function\" ? isVisible(item) : true;\n },\n [fields.map(f => f.fieldId).join(\".\")]\n );\n\n const value = {\n parent,\n depth,\n getFieldsInLayout,\n getFieldPlugin,\n getField,\n editField,\n field: state.field,\n dropTarget: state.dropTarget,\n onFieldDrop,\n onEndDrag,\n insertField,\n moveField,\n moveRow,\n updateField,\n deleteField,\n fields: getFieldsInLayout(),\n noConflict,\n layout: state.layout\n };\n\n return <FieldEditorContext.Provider value={value}>{children}</FieldEditorContext.Provider>;\n};\n"]}
@@ -1,6 +1,5 @@
1
- /// <reference types="react" />
2
- export declare const RowContainer: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "hidden" | "dir" | "slot" | "style" | "title" | "color" | "translate" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, object>;
3
- export declare const Row: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "hidden" | "dir" | "slot" | "style" | "title" | "color" | "translate" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, object>;
1
+ export declare const RowContainer: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
2
+ export declare const Row: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
4
3
  export declare const fieldContainer: string;
5
4
  export declare const rowHandle: string;
6
5
  export declare const fieldHandle: string;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Styled.ts"],"names":["css","styled","RowContainer","position","display","flexDirection","marginBottom","borderRadius","backgroundColor","border","boxShadow","Row","paddingLeft","paddingRight","fieldContainer","flex","padding","margin","transition","color","cursor","rowHandle","width","left","top","transform","zIndex","fieldHandle"],"mappings":"AAAA,SAASA,GAAT,QAAoB,SAApB;AACA,OAAOC,MAAP,MAAmB,iBAAnB;AAEA,OAAO,IAAMC,YAAY,gBAAGD,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACtCE,EAAAA,QAAQ,EAAE,UAD4B;AAEtCC,EAAAA,OAAO,EAAE,MAF6B;AAGtCC,EAAAA,aAAa,EAAE,QAHuB;AAItCC,EAAAA,YAAY,EAAE,EAJwB;AAKtCC,EAAAA,YAAY,EAAE,CALwB;AAMtCC,EAAAA,eAAe,EAAE,0BANqB;AAOtCC,EAAAA,MAAM,EAAE,0CAP8B;AAQtCC,EAAAA,SAAS,EACL;AATkC,CAAjB,CAAlB;AAYP,OAAO,IAAMC,GAAG,gBAAGV,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AAC7BG,EAAAA,OAAO,EAAE,MADoB;AAE7BC,EAAAA,aAAa,EAAE,KAFc;AAG7BG,EAAAA,eAAe,EAAE,0BAHY;AAI7BI,EAAAA,WAAW,EAAE,EAJgB;AAK7BC,EAAAA,YAAY,EAAE,EALe;AAM7BV,EAAAA,QAAQ,EAAE;AANmB,CAAjB,CAAT;AASP,OAAO,IAAMW,cAAc,gBAAGd,GAAG,CAAC;AAC9BG,EAAAA,QAAQ,EAAE,UADoB;AAE9BY,EAAAA,IAAI,EAAE,QAFwB;AAG9BP,EAAAA,eAAe,EAAE,6BAHa;AAI9BQ,EAAAA,OAAO,EAAE,QAJqB;AAK9BC,EAAAA,MAAM,EAAE,EALsB;AAM9BV,EAAAA,YAAY,EAAE,CANgB;AAO9BE,EAAAA,MAAM,EAAE,0CAPsB;AAQ9BS,EAAAA,UAAU,EAAE,kBARkB;AAS9BC,EAAAA,KAAK,EAAE,6BATuB;AAU9BC,EAAAA,MAAM,EAAE,MAVsB;AAW9B,aAAW;AACPV,IAAAA,SAAS,EACL;AAFG;AAXmB,CAAD,0BAA1B;AAiBP,OAAO,IAAMW,SAAS,gBAAGrB,GAAG,CAAC;AACzBsB,EAAAA,KAAK,EAAE,EADkB;AAEzBF,EAAAA,MAAM,EAAE,MAFiB;AAGzBjB,EAAAA,QAAQ,EAAE,UAHe;AAIzBoB,EAAAA,IAAI,EAAE,EAJmB;AAKzBC,EAAAA,GAAG,EAAE,KALoB;AAMzBC,EAAAA,SAAS,EAAE,kBANc;AAOzBC,EAAAA,MAAM,EAAE,CAPiB;AAQzBP,EAAAA,KAAK,EAAE;AARkB,CAAD,qBAArB;AAWP,OAAO,IAAMQ,WAAW,gBAAG3B,GAAG,CAAC;AAC3BoB,EAAAA,MAAM,EAAE;AADmB,CAAD,uBAAvB","sourcesContent":["import { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\n\nexport const RowContainer = styled(\"div\")({\n position: \"relative\",\n display: \"flex\",\n flexDirection: \"column\",\n marginBottom: 20,\n borderRadius: 2,\n backgroundColor: \"var(--mdc-theme-surface)\",\n border: \"1px solid var(--mdc-theme-on-background)\",\n boxShadow:\n \"var(--mdc-theme-on-background) 1px 1px 1px, var(--mdc-theme-on-background) 1px 1px 2px\"\n});\n\nexport const Row = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"row\",\n backgroundColor: \"var(--mdc-theme-surface)\",\n paddingLeft: 40,\n paddingRight: 10,\n position: \"relative\"\n});\n\nexport const fieldContainer = css({\n position: \"relative\",\n flex: \"1 100%\",\n backgroundColor: \"var(--mdc-theme-background)\",\n padding: \"0 15px\",\n margin: 10,\n borderRadius: 2,\n border: \"1px solid var(--mdc-theme-on-background)\",\n transition: \"box-shadow 225ms\",\n color: \"var(--mdc-theme-on-surface)\",\n cursor: \"grab\",\n \"&:hover\": {\n boxShadow:\n \"var(--mdc-theme-on-background) 1px 1px 1px, var(--mdc-theme-on-background) 1px 1px 2px\"\n }\n});\n\nexport const rowHandle = css({\n width: 30,\n cursor: \"grab\",\n position: \"absolute\",\n left: 10,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n zIndex: 1,\n color: \"var(--mdc-theme-on-surface)\"\n});\n\nexport const fieldHandle = css({\n cursor: \"grab\"\n});\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":["FieldEditor","useFieldEditor"],"mappings":"AAAA,SAASA,WAAT;AACA,SAASC,cAAT","sourcesContent":["export { FieldEditor } from \"./FieldEditor\";\nexport { useFieldEditor } from \"./useFieldEditor\";\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useFieldEditor.ts"],"names":["useContext","FieldEditorContext","useFieldEditor"],"mappings":"AAAA,SAASA,UAAT,QAA2B,OAA3B;AACA,SAASC,kBAAT;AAEA,OAAO,SAASC,cAAT,GAA0B;AAC7B,SAAOF,UAAU,CAACC,kBAAD,CAAjB;AACH","sourcesContent":["import { useContext } from \"react\";\nimport { FieldEditorContext } from \"./FieldEditorContext\";\n\nexport function useFieldEditor() {\n return useContext(FieldEditorContext);\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  import { CmsEditorField, CmsModel } from "../../../../types";
2
- declare type Data = Pick<CmsModel, "fields" | "layout">;
3
- interface Params {
4
- field: CmsEditorField;
5
- data: Data;
2
+ declare type DeleteFieldParamsData = Pick<CmsModel, "fields" | "layout">;
3
+ interface DeleteFieldParams {
4
+ field: Pick<CmsEditorField, "id">;
5
+ data: DeleteFieldParamsData;
6
6
  }
7
- declare const _default: (params: Params) => any;
7
+ declare const _default: (params: DeleteFieldParams) => any;
8
8
  export default _default;
@@ -9,6 +9,10 @@ export default (function (params) {
9
9
  var data = dot.delete(prev, "fields.".concat(fieldIndex)); // ...and rebuild the layout object.
10
10
 
11
11
  return dot.set(data, "layout", function (layout) {
12
+ if (!layout) {
13
+ return [];
14
+ }
15
+
12
16
  var newLayout = [];
13
17
  var currentRowIndex = 0;
14
18
  layout.forEach(function (row) {
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["deleteField.ts"],"names":["dot","params","field","prev","data","fieldIndex","fields","findIndex","item","id","delete","set","layout","newLayout","currentRowIndex","forEach","row","fieldId","find","Array","isArray","push","length"],"mappings":"AAAA,OAAOA,GAAP,MAAgB,oBAAhB;AAQA,gBAAe,UAACC,MAAD,EAA+B;AAC1C,MAAQC,KAAR,GAA8BD,MAA9B,CAAQC,KAAR;AAAA,MAAqBC,IAArB,GAA8BF,MAA9B,CAAeG,IAAf,CAD0C,CAE1C;;AACA,MAAMC,UAAU,GAAGF,IAAI,CAACG,MAAL,CAAYC,SAAZ,CAAsB,UAAAC,IAAI;AAAA,WAAIA,IAAI,CAACC,EAAL,KAAYP,KAAK,CAACO,EAAtB;AAAA,GAA1B,CAAnB;AACA,MAAML,IAAI,GAAGJ,GAAG,CAACU,MAAJ,CAAWP,IAAX,mBAA2BE,UAA3B,EAAb,CAJ0C,CAM1C;;AACA,SAAOL,GAAG,CAACW,GAAJ,CAAQP,IAAR,EAAc,QAAd,EAAwB,UAACQ,MAAD,EAA6C;AACxE,QAAI,CAACA,MAAL,EAAa;AACT,aAAO,EAAP;AACH;;AACD,QAAMC,SAA0C,GAAG,EAAnD;AACA,QAAIC,eAAe,GAAG,CAAtB;AACAF,IAAAA,MAAM,CAACG,OAAP,CAAe,UAAAC,GAAG,EAAI;AAClBA,MAAAA,GAAG,CAACD,OAAJ,CAAY,UAAAE,OAAO,EAAI;AACnB,YAAMf,KAAK,GAAGE,IAAI,CAACE,MAAL,CAAYY,IAAZ,CAAiB,UAAAV,IAAI;AAAA,iBAAIA,IAAI,CAACC,EAAL,KAAYQ,OAAhB;AAAA,SAArB,CAAd;;AACA,YAAI,CAACf,KAAL,EAAY;AACR;AACH;;AACD,YAAI,CAACiB,KAAK,CAACC,OAAN,CAAcP,SAAS,CAACC,eAAD,CAAvB,CAAL,EAAgD;AAC5CD,UAAAA,SAAS,CAACC,eAAD,CAAT,GAA6B,EAA7B;AACH;;AAEDD,QAAAA,SAAS,CAACC,eAAD,CAAT,CAA2BO,IAA3B,CAAgCJ,OAAhC;AACH,OAVD;AAWAJ,MAAAA,SAAS,CAACC,eAAD,CAAT,IAA8BD,SAAS,CAACC,eAAD,CAAT,CAA2BQ,MAAzD,IAAmER,eAAe,EAAlF;AACH,KAbD;AAeA,WAAOD,SAAP;AACH,GAtBM,CAAP;AAuBH,CA9BD","sourcesContent":["import dot from \"dot-prop-immutable\";\nimport { CmsEditorField, CmsModel } from \"~/types\";\n\ntype DeleteFieldParamsData = Pick<CmsModel, \"fields\" | \"layout\">;\ninterface DeleteFieldParams {\n field: Pick<CmsEditorField, \"id\">;\n data: DeleteFieldParamsData;\n}\nexport default (params: DeleteFieldParams) => {\n const { field, data: prev } = params;\n // Remove the field from fields list...\n const fieldIndex = prev.fields.findIndex(item => item.id === field.id);\n const data = dot.delete(prev, `fields.${fieldIndex}`) as DeleteFieldParamsData;\n\n // ...and rebuild the layout object.\n return dot.set(data, \"layout\", (layout: DeleteFieldParamsData[\"layout\"]) => {\n if (!layout) {\n return [];\n }\n const newLayout: DeleteFieldParamsData[\"layout\"] = [];\n let currentRowIndex = 0;\n layout.forEach(row => {\n row.forEach(fieldId => {\n const field = data.fields.find(item => item.id === fieldId);\n if (!field) {\n return;\n }\n if (!Array.isArray(newLayout[currentRowIndex])) {\n newLayout[currentRowIndex] = [];\n }\n\n newLayout[currentRowIndex].push(fieldId);\n });\n newLayout[currentRowIndex] && newLayout[currentRowIndex].length && currentRowIndex++;\n });\n\n return newLayout;\n });\n};\n"]}
@@ -1,7 +1,7 @@
1
1
  import { CmsEditorField, CmsModel, FieldLayoutPosition } from "../../../../types";
2
- interface Params {
2
+ interface GetFieldPositionParams {
3
3
  field: string | CmsEditorField;
4
4
  data: Pick<CmsModel, "layout">;
5
5
  }
6
- declare const _default: (params: Params) => FieldLayoutPosition;
6
+ declare const _default: (params: GetFieldPositionParams) => FieldLayoutPosition | null;
7
7
  export default _default;
@@ -2,9 +2,10 @@ export default (function (params) {
2
2
  var field = params.field,
3
3
  data = params.data;
4
4
  var id = typeof field === "string" ? field : field.id;
5
+ var layout = data.layout ? data.layout : [];
5
6
 
6
- for (var i = 0; i < data.layout.length; i++) {
7
- var row = data.layout[i];
7
+ for (var i = 0; i < layout.length; i++) {
8
+ var row = layout[i];
8
9
 
9
10
  for (var j = 0; j < row.length; j++) {
10
11
  if (row[j] === id) {
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["getFieldPosition.ts"],"names":["params","field","data","id","layout","i","length","row","j","index"],"mappings":"AAMA,gBAAe,UAACA,MAAD,EAAgE;AAC3E,MAAQC,KAAR,GAAwBD,MAAxB,CAAQC,KAAR;AAAA,MAAeC,IAAf,GAAwBF,MAAxB,CAAeE,IAAf;AACA,MAAMC,EAAE,GAAG,OAAOF,KAAP,KAAiB,QAAjB,GAA4BA,KAA5B,GAAoCA,KAAK,CAACE,EAArD;AACA,MAAMC,MAAM,GAAGF,IAAI,CAACE,MAAL,GAAcF,IAAI,CAACE,MAAnB,GAA4B,EAA3C;;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,MAAM,CAACE,MAA3B,EAAmCD,CAAC,EAApC,EAAwC;AACpC,QAAME,GAAG,GAAGH,MAAM,CAACC,CAAD,CAAlB;;AACA,SAAK,IAAIG,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,GAAG,CAACD,MAAxB,EAAgCE,CAAC,EAAjC,EAAqC;AACjC,UAAID,GAAG,CAACC,CAAD,CAAH,KAAWL,EAAf,EAAmB;AACf,eAAO;AAAEI,UAAAA,GAAG,EAAEF,CAAP;AAAUI,UAAAA,KAAK,EAAED;AAAjB,SAAP;AACH;AACJ;AACJ;;AAED,SAAO,IAAP;AACH,CAdD","sourcesContent":["import { CmsEditorField, CmsModel, FieldLayoutPosition } from \"~/types\";\n\ninterface GetFieldPositionParams {\n field: string | CmsEditorField;\n data: Pick<CmsModel, \"layout\">;\n}\nexport default (params: GetFieldPositionParams): FieldLayoutPosition | null => {\n const { field, data } = params;\n const id = typeof field === \"string\" ? field : field.id;\n const layout = data.layout ? data.layout : [];\n for (let i = 0; i < layout.length; i++) {\n const row = layout[i];\n for (let j = 0; j < row.length; j++) {\n if (row[j] === id) {\n return { row: i, index: j };\n }\n }\n }\n\n return null;\n};\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":["default","getFieldPosition","moveField","deleteField","moveRow"],"mappings":"AAAA,SAASA,OAAO,IAAIC,gBAApB;AACA,SAASD,OAAO,IAAIE,SAApB;AACA,SAASF,OAAO,IAAIG,WAApB;AACA,SAASH,OAAO,IAAII,OAApB","sourcesContent":["export { default as getFieldPosition } from \"./getFieldPosition\";\nexport { default as moveField } from \"./moveField\";\nexport { default as deleteField } from \"./deleteField\";\nexport { default as moveRow } from \"./moveRow\";\n"]}
@@ -1,8 +1,8 @@
1
1
  import { CmsEditorField, CmsEditorFieldId, FieldLayoutPosition } from "../../../../types";
2
2
  interface MoveFieldParams<T> {
3
- field: CmsEditorFieldId | CmsEditorField;
3
+ field: CmsEditorFieldId | Pick<CmsEditorField, "id">;
4
4
  position: FieldLayoutPosition;
5
5
  data: T;
6
6
  }
7
- declare const _default: <T extends Pick<import("../../../../types").CmsEditorContentModel, "layout" | "fields">>(params: MoveFieldParams<T>) => T;
7
+ declare const _default: <T extends Required<Pick<import("../../../../types").CmsEditorContentModel, "layout" | "fields">>>(params: MoveFieldParams<T>) => T;
8
8
  export default _default;
@@ -11,7 +11,9 @@ var moveField = function moveField(params) {
11
11
  index = position.index;
12
12
  var fieldId = typeof field === "string" ? field : field.id;
13
13
 
14
- var next = _objectSpread({}, prev);
14
+ var next = _objectSpread(_objectSpread({}, prev), {}, {
15
+ layout: prev.layout ? prev.layout || [] : []
16
+ });
15
17
 
16
18
  var existingPosition = getFieldPosition({
17
19
  field: fieldId,
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["moveField.ts"],"names":["dot","getFieldPosition","moveField","params","field","position","prev","data","row","index","fieldId","id","next","layout","existingPosition","delete","set","newLayout","splice","filter","length"],"mappings":";;AAAA,OAAOA,GAAP,MAAgB,oBAAhB;AAOA,OAAOC,gBAAP;;AAUA,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAAqBC,MAArB,EAAoD;AAClE,MAAQC,KAAR,GAAwCD,MAAxC,CAAQC,KAAR;AAAA,MAAeC,QAAf,GAAwCF,MAAxC,CAAeE,QAAf;AAAA,MAA+BC,IAA/B,GAAwCH,MAAxC,CAAyBI,IAAzB;AACA,MAAQC,GAAR,GAAuBH,QAAvB,CAAQG,GAAR;AAAA,MAAaC,KAAb,GAAuBJ,QAAvB,CAAaI,KAAb;AACA,MAAMC,OAAO,GAAG,OAAON,KAAP,KAAiB,QAAjB,GAA4BA,KAA5B,GAAoCA,KAAK,CAACO,EAA1D;;AAEA,MAAIC,IAAO,mCACJN,IADI;AAEPO,IAAAA,MAAM,EAAEP,IAAI,CAACO,MAAL,GAAcP,IAAI,CAACO,MAAL,IAAe,EAA7B,GAAkC;AAFnC,IAAX;;AAKA,MAAMC,gBAAgB,GAAGb,gBAAgB,CAAC;AAAEG,IAAAA,KAAK,EAAEM,OAAT;AAAkBH,IAAAA,IAAI,EAAED;AAAxB,GAAD,CAAzC;;AAEA,MAAIQ,gBAAJ,EAAsB;AAClBF,IAAAA,IAAI,GAAGZ,GAAG,CAACe,MAAJ,CAAWT,IAAX,mBAA2BQ,gBAAgB,CAACN,GAA5C,cAAmDM,gBAAgB,CAACL,KAApE,EAAP;AACH,GAdiE,CAgBlE;;;AACA,MAAI,CAACG,IAAI,CAACC,MAAL,CAAYL,GAAZ,CAAL,EAAuB;AACnB,WAAOR,GAAG,CAACgB,GAAJ,CAAQJ,IAAR,mBAAwBJ,GAAxB,GAA+B,CAACE,OAAD,CAA/B,CAAP;AACH,GAnBiE,CAqBlE;;;AACA,MAAID,KAAK,KAAK,IAAd,EAAoB;AAChB;AACA,WAAOT,GAAG,CAACgB,GAAJ,CAAQJ,IAAR,EAAc,QAAd,EAAwB,UAACC,MAAD,EAAwB;AACnD,UAAMI,SAAS,sBAAOJ,MAAP,CAAf;;AACAI,MAAAA,SAAS,CAACC,MAAV,CAAiBV,GAAjB,EAAsB,CAAtB,EAAyB,CAACE,OAAD,CAAzB;AACA,aAAOO,SAAP;AACH,KAJM,CAAP;AAKH;;AAED,SAAOjB,GAAG,CAACgB,GAAJ,CAAQJ,IAAR,mBAAwBJ,GAAxB,GAA+B,UAACK,MAAD,EAAsB;AACxD,QAAMI,SAAS,sBAAOJ,MAAP,CAAf;;AACAI,IAAAA,SAAS,CAACC,MAAV,CAAiBT,KAAjB,EAAwB,CAAxB,EAA2BC,OAA3B;AACA,WAAOO,SAAP;AACH,GAJM,CAAP;AAKH,CApCD;;AAsCA,gBAAe,UAAqBd,MAArB,EAAuD;AAClE,SAAOH,GAAG,CAACgB,GAAJ,CAAQd,SAAS,CAAIC,MAAJ,CAAjB,EAA8B,QAA9B,EAAwC,UAACU,MAAD,EAAwB;AACnE,WAAO,mBAAIA,MAAJ,EAAYM,MAAZ,CAAmB,UAAAX,GAAG;AAAA,aAAIA,GAAG,CAACY,MAAJ,GAAa,CAAjB;AAAA,KAAtB,CAAP;AACH,GAFM,CAAP;AAGH,CAJD","sourcesContent":["import dot from \"dot-prop-immutable\";\nimport {\n CmsEditorField,\n CmsEditorFieldId,\n CmsModel as BaseCmsModel,\n FieldLayoutPosition\n} from \"~/types\";\nimport getFieldPosition from \"./getFieldPosition\";\n\ntype CmsModel = Required<Pick<BaseCmsModel, \"fields\" | \"layout\">>;\n\ninterface MoveFieldParams<T> {\n field: CmsEditorFieldId | Pick<CmsEditorField, \"id\">;\n position: FieldLayoutPosition;\n data: T;\n}\n\nconst moveField = <T extends CmsModel>(params: MoveFieldParams<T>) => {\n const { field, position, data: prev } = params;\n const { row, index } = position;\n const fieldId = typeof field === \"string\" ? field : field.id;\n\n let next: T = {\n ...prev,\n layout: prev.layout ? prev.layout || [] : []\n };\n\n const existingPosition = getFieldPosition({ field: fieldId, data: prev });\n\n if (existingPosition) {\n next = dot.delete(prev, `layout.${existingPosition.row}.${existingPosition.index}`) as T;\n }\n\n // Setting a form field into a new non-existing row.\n if (!next.layout[row]) {\n return dot.set(next, `layout.${row}`, [fieldId]);\n }\n\n // Drop the field at the specified index.\n if (index === null) {\n // Create a new row with the new field at the given row index,\n return dot.set(next, \"layout\", (layout: string[][]) => {\n const newLayout = [...layout];\n newLayout.splice(row, 0, [fieldId]);\n return newLayout;\n });\n }\n\n return dot.set(next, `layout.${row}`, (layout: string[]) => {\n const newLayout = [...layout];\n newLayout.splice(index, 0, fieldId);\n return newLayout;\n });\n};\n\nexport default <T extends CmsModel>(params: MoveFieldParams<T>): T => {\n return dot.set(moveField<T>(params), \"layout\", (layout: string[][]) => {\n return [...layout].filter(row => row.length > 0);\n });\n};\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["moveRow.ts"],"names":["dot","data","source","destination","set","layout","slice"],"mappings":";AAAA,OAAOA,GAAP,MAAgB,oBAAhB;AAQA,gBAAe,gBAA2C;AAAA,MAAxCC,IAAwC,QAAxCA,IAAwC;AAAA,MAAlCC,MAAkC,QAAlCA,MAAkC;AAAA,MAA1BC,WAA0B,QAA1BA,WAA0B;AACtD,SAAOH,GAAG,CAACI,GAAJ,CAAQH,IAAR,EAAc,QAAd,EAAwB,UAACI,MAAD,EAAwB;AACnD,WAAOH,MAAM,GAAGC,WAAT,gCAEME,MAAM,CAACC,KAAP,CAAa,CAAb,EAAgBJ,MAAhB,CAFN,sBAGMG,MAAM,CAACC,KAAP,CAAaJ,MAAM,GAAG,CAAtB,EAAyBC,WAAzB,CAHN,IAIGE,MAAM,CAACH,MAAD,CAJT,sBAKMG,MAAM,CAACC,KAAP,CAAaH,WAAb,CALN,kCAQME,MAAM,CAACC,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CARN,IASGE,MAAM,CAACH,MAAD,CATT,sBAUMG,MAAM,CAACC,KAAP,CAAaH,WAAb,EAA0BD,MAA1B,CAVN,sBAWMG,MAAM,CAACC,KAAP,CAAaJ,MAAM,GAAG,CAAtB,CAXN,EAAP;AAaH,GAdM,CAAP;AAeH,CAhBD","sourcesContent":["import dot from \"dot-prop-immutable\";\nimport { CmsModel } from \"~/types\";\n\ninterface Params {\n source: number;\n destination: number;\n data: Pick<CmsModel, \"layout\">;\n}\nexport default ({ data, source, destination }: Params) => {\n return dot.set(data, \"layout\", (layout: string[][]) => {\n return source < destination\n ? [\n ...layout.slice(0, source),\n ...layout.slice(source + 1, destination),\n layout[source],\n ...layout.slice(destination)\n ]\n : [\n ...layout.slice(0, destination),\n layout[source],\n ...layout.slice(destination, source),\n ...layout.slice(source + 1)\n ];\n });\n};\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["statusLabels.ts"],"names":["i18n","t","ns","statuses","draft","published","unpublished","changesRequested","reviewRequested"],"mappings":";;;;AAAA,SAASA,IAAT,QAAqB,kBAArB;AACA,IAAMC,CAAC,GAAGD,IAAI,CAACE,EAAL,CAAQ,+CAAR,CAAV;AAEA,IAAMC,QAAgC,GAAG;AACrCC,EAAAA,KAAK,EAAEH,CAAF,0EADgC;AAErCI,EAAAA,SAAS,EAAEJ,CAAF,gFAF4B;AAGrCK,EAAAA,WAAW,EAAEL,CAAF,kFAH0B;AAIrCM,EAAAA,gBAAgB,EAAEN,CAAF,wFAJqB;AAKrCO,EAAAA,eAAe,EAAEP,CAAF;AALsB,CAAzC;AAOA,eAAeE,QAAf","sourcesContent":["import { i18n } from \"@webiny/app/i18n\";\nconst t = i18n.ns(\"app-headless-cms/admin/content-entries/status\");\n\nconst statuses: Record<string, string> = {\n draft: t`Draft`,\n published: t`Published`,\n unpublished: t`Unpublished`,\n changesRequested: t`Changes Requested`,\n reviewRequested: t`Review Requested`\n};\nexport default statuses;\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["NetworkError.tsx"],"names":["gql","GET_ERROR"],"mappings":";;;;AAAA,OAAOA,GAAP,MAAgB,aAAhB;AAEA,IAAMC,SAAS,GAAGD,GAAH,2GAAf;AAMA,SAASC,SAAT","sourcesContent":["import gql from \"graphql-tag\";\n\nconst GET_ERROR = gql`\n {\n networkError\n }\n`;\n\nexport { GET_ERROR };\n"]}
@@ -2,7 +2,19 @@ import React from "react";
2
2
  import { useI18N } from "@webiny/app-i18n/hooks/useI18N";
3
3
  import { CircularProgress } from "@webiny/ui/Progress";
4
4
  import { config as appConfig } from "@webiny/app/config";
5
- export var CmsContext = /*#__PURE__*/React.createContext(null);
5
+ export var CmsContext = /*#__PURE__*/React.createContext({
6
+ getApolloClient: function getApolloClient() {
7
+ return null;
8
+ },
9
+ createApolloClient: function createApolloClient() {
10
+ return null;
11
+ },
12
+ apolloClient: null
13
+ /**
14
+ * Safe to cast.
15
+ */
16
+
17
+ });
6
18
  var apolloClientsCache = {};
7
19
  export var CmsProvider = function CmsProvider(props) {
8
20
  var apiUrl = appConfig.getKey("API_URL", process.env.REACT_APP_API_URL);
@@ -10,7 +22,11 @@ export var CmsProvider = function CmsProvider(props) {
10
22
  var _useI18N = useI18N(),
11
23
  getCurrentLocale = _useI18N.getCurrentLocale;
12
24
 
13
- var currentLocale = getCurrentLocale("content"); // TODO: not sure why this was necessary :thinking:
25
+ var currentLocale = getCurrentLocale("content");
26
+ /**
27
+ * TODO @ts-refactor @pavel did you think about this?
28
+ */
29
+ // TODO: not sure why this was necessary :thinking:
14
30
  // const hasPermission = identity.getPermission("cms.endpoint.manage");
15
31
  // if (!hasPermission) {
16
32
  // return <CmsContext.Provider value={{}} {...props} />;
@@ -22,6 +38,10 @@ export var CmsProvider = function CmsProvider(props) {
22
38
  });
23
39
  }
24
40
 
41
+ if (!currentLocale) {
42
+ return /*#__PURE__*/React.createElement(CircularProgress, null);
43
+ }
44
+
25
45
  var value = {
26
46
  getApolloClient: function getApolloClient(locale) {
27
47
  if (!apolloClientsCache[locale]) {
@@ -35,11 +55,6 @@ export var CmsProvider = function CmsProvider(props) {
35
55
  createApolloClient: props.createApolloClient,
36
56
  apolloClient: apolloClientsCache[currentLocale]
37
57
  };
38
-
39
- if (!currentLocale) {
40
- return /*#__PURE__*/React.createElement(CircularProgress, null);
41
- }
42
-
43
58
  return /*#__PURE__*/React.createElement(CmsContext.Provider, Object.assign({
44
59
  value: value
45
60
  }, props));
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","useI18N","CircularProgress","config","appConfig","CmsContext","createContext","getApolloClient","createApolloClient","apolloClient","apolloClientsCache","CmsProvider","props","apiUrl","getKey","process","env","REACT_APP_API_URL","getCurrentLocale","currentLocale","uri","value","locale"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SAASC,OAAT,QAAwB,gCAAxB;AACA,SAASC,gBAAT,QAAiC,qBAAjC;AACA,SAASC,MAAM,IAAIC,SAAnB,QAAoC,oBAApC;AAQA,OAAO,IAAMC,UAAU,gBAAGL,KAAK,CAACM,aAAN,CAAqC;AAC3DC,EAAAA,eAAe,EAAE,2BAAM;AACnB,WAAO,IAAP;AACH,GAH0D;AAI3DC,EAAAA,kBAAkB,EAAE,8BAAM;AACtB,WAAO,IAAP;AACH,GAN0D;AAO3DC,EAAAA,YAAY,EAAE;AACd;AACJ;AACA;;AAV+D,CAArC,CAAnB;AAiBP,IAAMC,kBAAsC,GAAG,EAA/C;AAOA,OAAO,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,CAAAC,KAAK,EAAI;AAC5D,MAAMC,MAAM,GAAGT,SAAS,CAACU,MAAV,CAAiB,SAAjB,EAA4BC,OAAO,CAACC,GAAR,CAAYC,iBAAxC,CAAf;;AACA,iBAA6BhB,OAAO,EAApC;AAAA,MAAQiB,gBAAR,YAAQA,gBAAR;;AAEA,MAAMC,aAAa,GAAGD,gBAAgB,CAAC,SAAD,CAAtC;AACA;AACJ;AACA;AACI;AACA;AACA;AACA;AACA;;AAEA,MAAIC,aAAa,IAAI,CAACT,kBAAkB,CAACS,aAAD,CAAxC,EAAyD;AACrDT,IAAAA,kBAAkB,CAACS,aAAD,CAAlB,GAAoCP,KAAK,CAACJ,kBAAN,CAAyB;AACzDY,MAAAA,GAAG,YAAKP,MAAL,yBAA0BM,aAA1B;AADsD,KAAzB,CAApC;AAGH;;AAED,MAAI,CAACA,aAAL,EAAoB;AAChB,wBAAO,oBAAC,gBAAD,OAAP;AACH;;AAED,MAAME,KAAK,GAAG;AACVd,IAAAA,eADU,2BACMe,MADN,EACsB;AAC5B,UAAI,CAACZ,kBAAkB,CAACY,MAAD,CAAvB,EAAiC;AAC7BZ,QAAAA,kBAAkB,CAACY,MAAD,CAAlB,GAA6BV,KAAK,CAACJ,kBAAN,CAAyB;AAClDY,UAAAA,GAAG,YAAKP,MAAL,yBAA0BS,MAA1B;AAD+C,SAAzB,CAA7B;AAGH;;AACD,aAAOZ,kBAAkB,CAACY,MAAD,CAAzB;AACH,KARS;AASVd,IAAAA,kBAAkB,EAAEI,KAAK,CAACJ,kBAThB;AAUVC,IAAAA,YAAY,EAAEC,kBAAkB,CAACS,aAAD;AAVtB,GAAd;AAaA,sBAAO,oBAAC,UAAD,CAAY,QAAZ;AAAqB,IAAA,KAAK,EAAEE;AAA5B,KAAuCT,KAAvC,EAAP;AACH,CAtCM","sourcesContent":["import React from \"react\";\nimport ApolloClient from \"apollo-client\";\nimport { useI18N } from \"@webiny/app-i18n/hooks/useI18N\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { config as appConfig } from \"@webiny/app/config\";\n\nexport interface CmsContextValue {\n getApolloClient(locale: string): ApolloClient<any>;\n createApolloClient: CmsProviderProps[\"createApolloClient\"];\n apolloClient: ApolloClient<any>;\n}\n\nexport const CmsContext = React.createContext<CmsContextValue>({\n getApolloClient: () => {\n return null;\n },\n createApolloClient: () => {\n return null;\n },\n apolloClient: null\n /**\n * Safe to cast.\n */\n} as unknown as CmsContextValue);\n\ninterface ApolloClientsCache {\n [locale: string]: ApolloClient<any>;\n}\n\nconst apolloClientsCache: ApolloClientsCache = {};\n\nexport interface CmsProviderProps {\n createApolloClient: (params: { uri: string }) => ApolloClient<any>;\n children: React.ReactNode;\n}\n\nexport const CmsProvider: React.FC<CmsProviderProps> = props => {\n const apiUrl = appConfig.getKey(\"API_URL\", process.env.REACT_APP_API_URL);\n const { getCurrentLocale } = useI18N();\n\n const currentLocale = getCurrentLocale(\"content\");\n /**\n * TODO @ts-refactor @pavel did you think about this?\n */\n // TODO: not sure why this was necessary :thinking:\n // const hasPermission = identity.getPermission(\"cms.endpoint.manage\");\n // if (!hasPermission) {\n // return <CmsContext.Provider value={{}} {...props} />;\n // }\n\n if (currentLocale && !apolloClientsCache[currentLocale]) {\n apolloClientsCache[currentLocale] = props.createApolloClient({\n uri: `${apiUrl}/cms/manage/${currentLocale}`\n });\n }\n\n if (!currentLocale) {\n return <CircularProgress />;\n }\n\n const value = {\n getApolloClient(locale: string) {\n if (!apolloClientsCache[locale]) {\n apolloClientsCache[locale] = props.createApolloClient({\n uri: `${apiUrl}/cms/manage/${locale}`\n });\n }\n return apolloClientsCache[locale];\n },\n createApolloClient: props.createApolloClient,\n apolloClient: apolloClientsCache[currentLocale]\n };\n\n return <CmsContext.Provider value={value} {...props} />;\n};\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["ContentGroupMenuElement.ts"],"names":["NavigationMenuElement","ContentGroupMenuElement"],"mappings":";;;;AAAA;AACA,SAASA,qBAAT,QAAsC,qDAAtC;AAEA,WAAaC,uBAAb;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA,EAA6CD,qBAA7C","sourcesContent":["// TODO @ts-refactor verify that this is not used\nimport { NavigationMenuElement } from \"@webiny/app-admin/ui/elements/NavigationMenuElement\";\n\nexport class ContentGroupMenuElement extends NavigationMenuElement {}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["ContentModelMenuElement.ts"],"names":["NavigationMenuElement","ContentModelMenuElement"],"mappings":";;;;AAAA;AACA,SAASA,qBAAT,QAAsC,qDAAtC;AAEA,WAAaC,uBAAb;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA,EAA6CD,qBAA7C","sourcesContent":["// @ts-refactor verify that this file is not used anywhere\nimport { NavigationMenuElement } from \"@webiny/app-admin/ui/elements/NavigationMenuElement\";\n\nexport class ContentModelMenuElement extends NavigationMenuElement {}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["NothingToShowElement.tsx"],"names":["React","css","NavigationMenuElement","List","ListItem","UIRenderer","linkStyle","color","textDecoration","display","alignItems","width","height","outline","paddingLeft","submenuItems","submenuList","padding","NothingToShowElement","id","config","addRenderer","NothingToShowRenderer","element","opacity","label"],"mappings":";;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,SAASC,qBAAT,QAAsC,qDAAtC;AAEA,SAASC,IAAT,EAAeC,QAAf,QAA+B,iBAA/B;AACA,SAASC,UAAT,QAA2C,iCAA3C;AAEA,IAAMC,SAAS,gBAAGL,GAAG,CAAC;AAClBM,EAAAA,KAAK,EAAE,6CADW;AAElBC,EAAAA,cAAc,EAAE,MAFE;AAGlBC,EAAAA,OAAO,EAAE,MAHS;AAIlBC,EAAAA,UAAU,EAAE,QAJM;AAKlBC,EAAAA,KAAK,EAAE,MALW;AAMlBC,EAAAA,MAAM,EAAE,MANU;AAOlBC,EAAAA,OAAO,EAAE,MAPS;AAQlBC,EAAAA,WAAW,EAAE,EARK;AASlB,aAAW;AACPN,IAAAA,cAAc,EAAE;AADT;AATO,CAAD,qBAArB;AAcA,IAAMO,YAAY,gBAAGd,GAAG,CAAC;AACrB,iCAA+B;AAC3Ba,IAAAA,WAAW,EAAE;AADc;AADV,CAAD,wBAAxB;AAMA,IAAME,WAAW,gBAAGf,GAAG,CAAC;AACpB,gBAAc;AACVgB,IAAAA,OAAO,EAAE;AADC;AADM,CAAD,uBAAvB;AAUA,WAAaC,oBAAb;AAAA;;AAAA;;AACI,gCAAYC,EAAZ,EAAwBC,MAAxB,EAA4D;AAAA;;AAAA;;AACxD,8BAAMD,EAAN,EAAUC,MAAV;;AAEA,UAAKC,WAAL,CAAiB,IAAIC,qBAAJ,EAAjB;;AAHwD;AAI3D;;AALL;AAAA,EAA0CpB,qBAA1C;AAQA,WAAaoB,qBAAb;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA,WACI,mBAA0BC,OAA1B,EAAmE;AAC/D,aAAOA,OAAO,YAAYL,oBAA1B;AACH;AAHL;AAAA;AAAA,WAKI,sBAAmF;AAAA,UAAnEK,OAAmE,QAAnEA,OAAmE;AAC/E,0BACI,oBAAC,IAAD;AAAM,QAAA,SAAS,EAAEP,WAAjB;AAA8B,QAAA,KAAK,EAAE;AAAEQ,UAAAA,OAAO,EAAE;AAAX;AAArC,sBACI,oBAAC,QAAD;AAAU,QAAA,SAAS,EAAET,YAArB;AAAmC,QAAA,MAAM,EAAE,KAA3C;AAAkD,QAAA,QAAQ;AAA1D,sBACI;AAAM,QAAA,SAAS,EAAET;AAAjB,SAA6BiB,OAAO,CAACH,MAAR,CAAeK,KAA5C,CADJ,CADJ,CADJ;AAOH;AAbL;;AAAA;AAAA,EAA2CpB,UAA3C","sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { NavigationMenuElement } from \"@webiny/app-admin/ui/elements/NavigationMenuElement\";\nimport { UIElementConfig } from \"@webiny/app-admin/ui/UIElement\";\nimport { List, ListItem } from \"@webiny/ui/List\";\nimport { UIRenderer, UIRenderParams } from \"@webiny/app-admin/ui/UIRenderer\";\n\nconst linkStyle = css({\n color: \"var(--mdc-theme-text-primary-on-background)\",\n textDecoration: \"none\",\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n height: \"100%\",\n outline: \"none\",\n paddingLeft: 65,\n \"&:hover\": {\n textDecoration: \"none\"\n }\n});\n\nconst submenuItems = css({\n \".mdc-drawer &.mdc-list-item\": {\n paddingLeft: 0\n }\n});\n\nconst submenuList = css({\n \"&.mdc-list\": {\n padding: 0\n }\n});\n\ninterface NothingToShowElementConfig extends UIElementConfig {\n label: string;\n}\n\nexport class NothingToShowElement extends NavigationMenuElement {\n constructor(id: string, config: NothingToShowElementConfig) {\n super(id, config);\n\n this.addRenderer(new NothingToShowRenderer());\n }\n}\n\nexport class NothingToShowRenderer extends UIRenderer<NavigationMenuElement> {\n public override canRender(element: NavigationMenuElement): boolean {\n return element instanceof NothingToShowElement;\n }\n\n public render({ element }: UIRenderParams<NavigationMenuElement>): React.ReactNode {\n return (\n <List className={submenuList} style={{ opacity: 0.4 }}>\n <ListItem className={submenuItems} ripple={false} disabled>\n <span className={linkStyle}>{element.config.label}</span>\n </ListItem>\n </List>\n );\n }\n}\n"]}
@@ -6,7 +6,7 @@ import { CmsContentEntryRevision, CmsEditorContentEntry, CmsEditorContentModel,
6
6
  export interface CmsEntryGetQueryResponse {
7
7
  content: {
8
8
  data: CmsEditorContentEntry;
9
- error?: CmsErrorResponse;
9
+ error: CmsErrorResponse | null;
10
10
  };
11
11
  }
12
12
  export interface CmsEntryGetQueryVariables {
@@ -20,7 +20,7 @@ export declare const createReadQuery: (model: CmsEditorContentModel) => import("
20
20
  export interface CmsEntriesListRevisionsQueryResponse {
21
21
  revisions: {
22
22
  data: CmsContentEntryRevision[];
23
- error?: CmsErrorResponse;
23
+ error: CmsErrorResponse | null;
24
24
  meta: CmsMetaResponse;
25
25
  };
26
26
  }
@@ -35,7 +35,7 @@ export declare const createRevisionsQuery: (model: CmsEditorContentModel) => imp
35
35
  export interface CmsEntriesListQueryResponse {
36
36
  content: {
37
37
  data: CmsEditorContentEntry[];
38
- error?: CmsErrorResponse;
38
+ error: CmsErrorResponse | null;
39
39
  meta: CmsMetaResponse;
40
40
  };
41
41
  }
@@ -54,8 +54,8 @@ export declare const createListQuery: (model: CmsEditorContentModel) => import("
54
54
  */
55
55
  export interface CmsEntryDeleteMutationResponse {
56
56
  content: {
57
- data?: CmsEditorContentEntry;
58
- error?: CmsErrorResponse;
57
+ data: CmsEditorContentEntry | null;
58
+ error: CmsErrorResponse | null;
59
59
  };
60
60
  }
61
61
  export interface CmsEntryDeleteMutationVariables {
@@ -68,8 +68,8 @@ export declare const createDeleteMutation: (model: CmsEditorContentModel) => imp
68
68
  */
69
69
  export interface CmsEntryCreateMutationResponse {
70
70
  content: {
71
- data?: CmsEditorContentEntry;
72
- error?: CmsErrorResponse;
71
+ data: CmsEditorContentEntry | null;
72
+ error: CmsErrorResponse | null;
73
73
  };
74
74
  }
75
75
  export interface CmsEntryCreateMutationVariables {
@@ -94,7 +94,7 @@ export interface CmsEntryCreateFromMutationVariables {
94
94
  /**
95
95
  * We have any here because we do not know which fields does entry have
96
96
  */
97
- data: Record<string, any>;
97
+ data?: Record<string, any>;
98
98
  }
99
99
  export declare const createCreateFromMutation: (model: CmsEditorContentModel) => import("graphql").DocumentNode;
100
100
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["contentEntries.ts"],"names":["upperFirst","gql","pluralize","createFieldsList","ERROR_FIELD","CONTENT_META_FIELDS","createReadQuery","model","ucFirstModelId","modelId","fields","createRevisionsQuery","getModelTitleFieldId","titleFieldId","createListQuery","ucFirstPluralizedModelId","createDeleteMutation","createCreateMutation","createCreateFromMutation","createUpdateMutation","createPublishMutation","createUnpublishMutation","createRequestReviewMutation","createRequestChangesMutation"],"mappings":"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","sourcesContent":["import upperFirst from \"lodash/upperFirst\";\nimport gql from \"graphql-tag\";\nimport pluralize from \"pluralize\";\nimport {\n CmsContentEntryRevision,\n CmsEditorContentEntry,\n CmsEditorContentModel,\n CmsErrorResponse,\n CmsMetaResponse\n} from \"~/types\";\nimport { createFieldsList } from \"./createFieldsList\";\n\nconst ERROR_FIELD = /* GraphQL */ `\n {\n message\n code\n data\n }\n`;\n\nconst CONTENT_META_FIELDS = /* GraphQL */ `\n title\n publishedOn\n version\n locked\n status\n`;\n/**\n * ############################################\n * Get CMS Entry Query\n */\nexport interface CmsEntryGetQueryResponse {\n content: {\n data: CmsEditorContentEntry;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryGetQueryVariables {\n revision: string;\n}\n\nexport const createReadQuery = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesGet${ucFirstModelId}($revision: ID!) {\n content: get${ucFirstModelId}(revision: $revision) {\n data {\n id\n createdBy {\n id\n }\n ${createFieldsList(model.fields)}\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * List CMS Entry Revisions Query\n */\nexport interface CmsEntriesListRevisionsQueryResponse {\n revisions: {\n data: CmsContentEntryRevision[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\nexport interface CmsEntriesListRevisionsQueryVariables {\n id: string;\n}\nexport const createRevisionsQuery = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesGet${ucFirstModelId}Revisions($id: ID!) {\n revisions: get${ucFirstModelId}Revisions(id: $id) {\n data {\n id\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n\nconst getModelTitleFieldId = (model: CmsEditorContentModel): string => {\n if (!model.titleFieldId || model.titleFieldId === \"id\") {\n return \"\";\n }\n return model.titleFieldId;\n};\n\n/**\n * ############################################\n * List CMS Entries Query\n */\nexport interface CmsEntriesListQueryResponse {\n content: {\n data: CmsEditorContentEntry[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\nexport interface CmsEntriesListQueryVariables {\n // TODO @ts-refactor better list types\n where?: {\n [key: string]: any;\n };\n sort?: string[];\n limit?: number;\n after?: string;\n}\nexport const createListQuery = (model: CmsEditorContentModel) => {\n const ucFirstPluralizedModelId = upperFirst(pluralize(model.modelId));\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesList${ucFirstPluralizedModelId}($where: ${ucFirstModelId}ListWhereInput, $sort: [${ucFirstModelId}ListSorter], $limit: Int, $after: String) {\n content: list${ucFirstPluralizedModelId}(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n ${getModelTitleFieldId(model)}\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n } \n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Delete Mutation\n */\nexport interface CmsEntryDeleteMutationResponse {\n content: {\n data: CmsEditorContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryDeleteMutationVariables {\n revision: string;\n}\nexport const createDeleteMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsEntriesDelete${ucFirstModelId}($revision: ID!) {\n content: delete${ucFirstModelId}(revision: $revision) {\n data\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Create Mutation\n */\nexport interface CmsEntryCreateMutationResponse {\n content: {\n data: CmsEditorContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryCreateMutationVariables {\n /**\n * We have any here because we do not know which fields does entry have\n */\n data: Record<string, any>;\n}\nexport const createCreateMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsEntriesCreate${ucFirstModelId}($data: ${ucFirstModelId}Input!) {\n content: create${ucFirstModelId}(data: $data) {\n data {\n id\n savedOn\n ${createFieldsList(model.fields)}\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Create From Mutation\n */\nexport interface CmsEntryCreateFromMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryCreateFromMutationVariables {\n revision: string;\n /**\n * We have any here because we do not know which fields does entry have\n */\n data?: Record<string, any>;\n}\nexport const createCreateFromMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsCreate${ucFirstModelId}From($revision: ID!, $data: ${ucFirstModelId}Input) {\n content: create${ucFirstModelId}From(revision: $revision, data: $data) {\n data {\n id\n savedOn\n ${createFieldsList(model.fields)}\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Update Mutation\n */\nexport interface CmsEntryUpdateMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryUpdateMutationVariables {\n revision: string;\n /**\n * We have any here because we do not know which fields does entry have\n */\n data: Record<string, any>;\n}\nexport const createUpdateMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsUpdate${ucFirstModelId}($revision: ID!, $data: ${ucFirstModelId}Input!) {\n content: update${ucFirstModelId}(revision: $revision, data: $data) {\n data {\n id\n ${createFieldsList(model.fields)}\n savedOn\n meta { \n ${CONTENT_META_FIELDS} \n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Publish Mutation\n */\nexport interface CmsEntryPublishMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryPublishMutationVariables {\n revision: string;\n}\nexport const createPublishMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsPublish${ucFirstModelId}($revision: ID!) {\n content: publish${ucFirstModelId}(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Unpublish Mutation\n */\nexport interface CmsEntryUnpublishMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryUnpublishMutationVariables {\n revision: string;\n}\nexport const createUnpublishMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsUnpublish${ucFirstModelId}($revision: ID!) {\n content: unpublish${ucFirstModelId}(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Request Review Mutation\n */\nexport interface CmsEntryRequestReviewMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryRequestReviewMutationVariables {\n revision: string;\n}\nexport const createRequestReviewMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsRequest${ucFirstModelId}Review($revision: ID!) {\n content: request${ucFirstModelId}Review(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n\n/**\n * ############################################\n * Request Changes Mutation\n */\nexport interface CmsEntryRequestChangesMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryRequestChangesMutationVariables {\n revision: string;\n}\nexport const createRequestChangesMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsRequest${ucFirstModelId}Changes($revision: ID!) {\n content: request${ucFirstModelId}Changes(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n"]}
@@ -21,8 +21,8 @@ export declare const GET_CONTENT_MODEL: import("graphql").DocumentNode;
21
21
  */
22
22
  export interface UpdateCmsModelMutationResponse {
23
23
  updateContentModel: {
24
- data?: CmsModel;
25
- error?: CmsErrorResponse;
24
+ data: CmsModel | null;
25
+ error: CmsErrorResponse | null;
26
26
  };
27
27
  }
28
28
  export interface UpdateCmsModelMutationVariables {
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["contentModels.ts"],"names":["gql","ERROR_FIELDS","FIELDS_FIELDS","MODEL_FIELDS","GET_CONTENT_MODEL","UPDATE_CONTENT_MODEL"],"mappings":";;;;AAAA,OAAOA,GAAP,MAAgB,aAAhB;AAGA,IAAMC,YAAY,wCAAlB;AAKA,OAAO,IAAMC,aAAa,+bAAnB;AAgCP,OAAO,IAAMC,YAAY,wLAafD,aAbe,cAAlB;AAgBP;AACA;AACA;AACA;;AAUA,OAAO,IAAME,iBAAiB,GAAGJ,GAAH,0SAIZG,YAJY,EAOZF,YAPY,CAAvB;AAaP;AACA;AACA;AACA;;AAYA,OAAO,IAAMI,oBAAoB,GAAGL,GAAH,sWAIfG,YAJe,EAOfF,YAPe,CAA1B","sourcesContent":["import gql from \"graphql-tag\";\nimport { CmsErrorResponse, CmsModel } from \"~/types\";\n\nconst ERROR_FIELDS = `\n message\n code\n data\n`;\nexport const FIELDS_FIELDS = `\n id\n fieldId\n type\n label\n placeholderText\n helpText \n predefinedValues {\n enabled\n values {\n label\n value\n selected\n }\n }\n multipleValues \n renderer {\n name\n }\n validation {\n name\n settings\n message\n }\n listValidation {\n name\n settings\n message\n }\n settings\n`;\n\nexport const MODEL_FIELDS = `\n name\n group {\n id\n name\n }\n description\n modelId\n savedOn\n titleFieldId\n lockedFields\n layout\n fields {\n ${FIELDS_FIELDS}\n }\n`;\n/**\n * ############################\n * Get Query\n */\nexport interface GetCmsModelQueryResponse {\n getContentModel: {\n data?: CmsModel;\n error?: CmsErrorResponse;\n };\n}\nexport interface GetCmsModelQueryVariables {\n modelId: string;\n}\nexport const GET_CONTENT_MODEL = gql`\n query CmsGetContentModel($modelId: ID!) {\n getContentModel(modelId: $modelId) {\n data {\n ${MODEL_FIELDS}\n }\n error {\n ${ERROR_FIELDS}\n }\n }\n }\n`;\n\n/**\n * ############################\n * Update Mutation\n */\nexport interface UpdateCmsModelMutationResponse {\n updateContentModel: {\n data: CmsModel | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface UpdateCmsModelMutationVariables {\n modelId: string;\n // TODO @ts-refactor write the types.\n data: Partial<CmsModel>;\n}\nexport const UPDATE_CONTENT_MODEL = gql`\n mutation CmsUpdateContentModel($modelId: ID!, $data: CmsContentModelUpdateInput!) {\n updateContentModel(modelId: $modelId, data: $data) {\n data {\n ${MODEL_FIELDS}\n }\n error {\n ${ERROR_FIELDS}\n }\n }\n }\n`;\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["createFieldsList.ts"],"names":["plugins","createFieldsList","fields","fieldPlugins","byType","reduce","acc","item","field","type","map","graphql","queryField","selection","fieldId","join"],"mappings":";;AACA,SAASA,OAAT,QAAwB,iBAAxB;AAEA,OAAO,SAASC,gBAAT,CAA0BC,MAA1B,EAA4D;AAC/D,MAAMC,YAA+D,GAAGH,OAAO,CAC1EI,MADmE,CAClC,uBADkC,EAEnEC,MAFmE,CAE5D,UAACC,GAAD,EAAMC,IAAN;AAAA,2CAAqBD,GAArB,2BAA2BC,IAAI,CAACC,KAAL,CAAWC,IAAtC,EAA6CF,IAAI,CAACC,KAAlD;AAAA,GAF4D,EAEA,EAFA,CAAxE;AAIA,SAAON,MAAM,CACRQ,GADE,CACE,UAAAF,KAAK,EAAI;AACV,QAAQG,OAAR,GAAoBR,YAAY,CAACK,KAAK,CAACC,IAAP,CAAhC,CAAQE,OAAR;;AAEA,QAAIA,OAAO,IAAIA,OAAO,CAACC,UAAvB,EAAmC;AAC/B,UAAQA,UAAR,GAAuBD,OAAvB,CAAQC,UAAR;AACA,UAAMC,SAAS,GACX,OAAOD,UAAP,KAAsB,QAAtB,GAAiCA,UAAjC,GAA8CA,UAAU,CAAC;AAAEJ,QAAAA,KAAK,EAALA;AAAF,OAAD,CAD5D;AAGA,uBAAUA,KAAK,CAACM,OAAhB,cAA2BD,SAA3B;AACH;;AAED,WAAOL,KAAK,CAACM,OAAb;AACH,GAbE,EAcFC,IAdE,CAcG,IAdH,CAAP;AAeH","sourcesContent":["import { CmsEditorField, CmsEditorFieldTypePlugin } from \"~/types\";\nimport { plugins } from \"@webiny/plugins\";\n\nexport function createFieldsList(fields: CmsEditorField[]): string {\n const fieldPlugins: Record<string, CmsEditorFieldTypePlugin[\"field\"]> = plugins\n .byType<CmsEditorFieldTypePlugin>(\"cms-editor-field-type\")\n .reduce((acc, item) => ({ ...acc, [item.field.type]: item.field }), {});\n\n return fields\n .map(field => {\n const { graphql } = fieldPlugins[field.type];\n\n if (graphql && graphql.queryField) {\n const { queryField } = graphql;\n const selection =\n typeof queryField === \"string\" ? queryField : queryField({ field });\n\n return `${field.fieldId} ${selection}`;\n }\n\n return field.fieldId;\n })\n .join(\"\\n\");\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":["default","useCms","useQuery","useLazyQuery","useMutation","useApolloClient"],"mappings":"AAAA,SAASA,OAAO,IAAIC,MAApB;AACA,SAASD,OAAO,IAAIE,QAApB;AACA;AACA,SAASF,OAAO,IAAIG,YAApB;AACA,SAASH,OAAO,IAAII,WAApB;AACA,SAASJ,OAAO,IAAIK,eAApB","sourcesContent":["export { default as useCms } from \"./useCms\";\nexport { default as useQuery } from \"./useQuery\";\nexport * from \"./useQueryLocale\";\nexport { default as useLazyQuery } from \"./useLazyQuery\";\nexport { default as useMutation } from \"./useMutation\";\nexport { default as useApolloClient } from \"./useApolloClient\";\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useApolloClient.ts"],"names":["useCms","useApolloClient","apolloClient"],"mappings":"AAAA,OAAOA,MAAP;;AAGA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAA+B;AACnD,gBAAyBD,MAAM,EAA/B;AAAA,MAAQE,YAAR,WAAQA,YAAR;;AAEA,SAAOA,YAAP;AACH,CAJD;;AAMA,eAAeD,eAAf","sourcesContent":["import useCms from \"./useCms\";\nimport { ApolloClient } from \"apollo-client\";\n\nconst useApolloClient = function (): ApolloClient<any> {\n const { apolloClient } = useCms();\n\n return apolloClient;\n};\n\nexport default useApolloClient;\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useCms.ts"],"names":["useContext","CmsContext","useCms","context","Error"],"mappings":"AAAA,SAASA,UAAT,QAA2B,OAA3B;AACA,SAASC,UAAT;;AAEA,SAASC,MAAT,GAAkB;AACd,MAAMC,OAAO,GAAGH,UAAU,CAAkBC,UAAlB,CAA1B;;AACA,MAAI,CAACE,OAAL,EAAc;AACV,UAAM,IAAIC,KAAJ,CAAU,0CAAV,CAAN;AACH;;AAED,SAAOD,OAAP;AACH;;AAED,eAAeD,MAAf","sourcesContent":["import { useContext } from \"react\";\nimport { CmsContext, CmsContextValue } from \"../contexts/Cms\";\n\nfunction useCms() {\n const context = useContext<CmsContextValue>(CmsContext);\n if (!context) {\n throw new Error(\"useCms must be used within a CmsProvider\");\n }\n\n return context;\n}\n\nexport default useCms;\n"]}
@@ -1,4 +1,5 @@
1
1
  import { DocumentNode } from "graphql";
2
+ import { OperationVariables } from "@apollo/react-common";
2
3
  import { LazyQueryHookOptions, QueryTuple } from "@apollo/react-hooks/lib/types";
3
- declare const useLazyQuery: <TData = any, TVariables = Record<string, any>>(query: DocumentNode, options?: LazyQueryHookOptions<TData, TVariables>) => QueryTuple<TData, TVariables>;
4
+ declare const useLazyQuery: <TData = any, TVariables = OperationVariables>(query: DocumentNode, options?: LazyQueryHookOptions<TData, TVariables>) => QueryTuple<TData, TVariables>;
4
5
  export default useLazyQuery;