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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (461) hide show
  1. package/HeadlessCMS.js +4 -0
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntryForm/ContentEntryForm.js +35 -32
  4. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  5. package/admin/components/ContentEntryForm/Fields.d.ts +2 -2
  6. package/admin/components/ContentEntryForm/Fields.js.map +1 -1
  7. package/admin/components/ContentEntryForm/Label.js +1 -1
  8. package/admin/components/ContentEntryForm/Label.js.map +1 -1
  9. package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +2 -2
  10. package/admin/components/ContentEntryForm/RenderFieldElement.js +6 -2
  11. package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
  12. package/admin/components/ContentEntryForm/functions/getValue.d.ts +2 -2
  13. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
  14. package/admin/components/ContentEntryForm/functions/setValue.d.ts +2 -2
  15. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
  16. package/admin/components/ContentEntryForm/useBind.d.ts +2 -2
  17. package/admin/components/ContentEntryForm/useBind.js +11 -8
  18. package/admin/components/ContentEntryForm/useBind.js.map +1 -1
  19. package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +1 -2
  20. package/admin/components/ContentEntryForm/useContentEntryForm.js +187 -147
  21. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
  22. package/admin/components/ContentModelEditor/{Context.d.ts → ContentModelEditorProvider.d.ts} +10 -4
  23. package/admin/components/ContentModelEditor/{Context.js → ContentModelEditorProvider.js} +60 -116
  24. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -0
  25. package/admin/components/ContentModelEditor/Editor.js +5 -5
  26. package/admin/components/ContentModelEditor/Editor.js.map +1 -1
  27. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
  28. package/admin/components/ContentModelEditor/PreviewTab.js +3 -3
  29. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
  30. package/admin/components/ContentModelEditor/index.d.ts +2 -0
  31. package/admin/components/ContentModelEditor/index.js +31 -0
  32. package/admin/components/ContentModelEditor/index.js.map +1 -0
  33. package/admin/components/ContentModelEditor/useModelEditor.d.ts +1 -0
  34. package/admin/components/ContentModelEditor/{useContentModelEditor.js → useModelEditor.js} +4 -4
  35. package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -0
  36. package/admin/{views/contentModelGroups → components}/DelayedOnChange.d.ts +0 -0
  37. package/admin/{views/contentModelGroups → components}/DelayedOnChange.js +0 -0
  38. package/admin/{views/contentModelGroups → components}/DelayedOnChange.js.map +0 -0
  39. package/admin/components/Dialog.d.ts +4 -0
  40. package/admin/components/Dialog.js +32 -0
  41. package/admin/components/Dialog.js.map +1 -0
  42. package/admin/components/DropZone/Center.d.ts +2 -1
  43. package/admin/components/DropZone/Center.js +38 -44
  44. package/admin/components/DropZone/Center.js.map +1 -1
  45. package/admin/components/Droppable.d.ts +1 -0
  46. package/admin/components/Droppable.js +12 -1
  47. package/admin/components/Droppable.js.map +1 -1
  48. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.d.ts +2 -8
  49. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +20 -9
  50. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
  51. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.d.ts +2 -9
  52. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +35 -21
  53. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
  54. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.d.ts +2 -9
  55. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +14 -12
  56. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
  57. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.d.ts +10 -0
  58. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js +42 -0
  59. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -0
  60. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.d.ts +8 -0
  61. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +227 -0
  62. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -0
  63. package/admin/components/FieldEditor/EditFieldDialog/getValidators.d.ts +13 -0
  64. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js +115 -0
  65. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -0
  66. package/admin/components/FieldEditor/EditFieldDialog.d.ts +3 -3
  67. package/admin/components/FieldEditor/EditFieldDialog.js +117 -260
  68. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
  69. package/admin/components/FieldEditor/Field.d.ts +5 -5
  70. package/admin/components/FieldEditor/Field.js +17 -14
  71. package/admin/components/FieldEditor/Field.js.map +1 -1
  72. package/admin/components/FieldEditor/FieldEditor.d.ts +4 -4
  73. package/admin/components/FieldEditor/FieldEditor.js +85 -31
  74. package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
  75. package/admin/components/FieldEditor/FieldEditorContext.d.ts +16 -16
  76. package/admin/components/FieldEditor/FieldEditorContext.js +18 -18
  77. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
  78. package/admin/components/FieldEditor/Styled.js +4 -13
  79. package/admin/components/FieldEditor/Styled.js.map +1 -1
  80. package/admin/components/FieldEditor/index.d.ts +1 -1
  81. package/admin/components/FieldEditor/index.js +3 -3
  82. package/admin/components/FieldEditor/index.js.map +1 -1
  83. package/admin/components/FieldEditor/useModelFieldEditor.d.ts +2 -0
  84. package/admin/components/FieldEditor/useModelFieldEditor.js +20 -0
  85. package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -0
  86. package/admin/components/FieldEditor/utils/deleteField.d.ts +2 -2
  87. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
  88. package/admin/components/FieldEditor/utils/getFieldPosition.d.ts +2 -2
  89. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
  90. package/admin/components/FieldEditor/utils/moveField.d.ts +3 -3
  91. package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
  92. package/admin/components/IconPicker.d.ts +7 -0
  93. package/admin/{views/contentModelGroups → components}/IconPicker.js +34 -31
  94. package/admin/components/IconPicker.js.map +1 -0
  95. package/admin/components/ModelFieldProvider/ModelFieldContext.d.ts +36 -0
  96. package/admin/components/ModelFieldProvider/ModelFieldContext.js +24 -0
  97. package/admin/components/ModelFieldProvider/ModelFieldContext.js.map +1 -0
  98. package/admin/components/ModelFieldProvider/index.d.ts +2 -0
  99. package/admin/components/ModelFieldProvider/index.js +31 -0
  100. package/admin/components/ModelFieldProvider/index.js.map +1 -0
  101. package/admin/components/ModelFieldProvider/useModelField.d.ts +35 -0
  102. package/admin/components/ModelFieldProvider/useModelField.js +42 -0
  103. package/admin/components/ModelFieldProvider/useModelField.js.map +1 -0
  104. package/admin/components/ModelProvider/ModelContext.d.ts +9 -0
  105. package/admin/components/ModelProvider/ModelContext.js +24 -0
  106. package/admin/components/ModelProvider/ModelContext.js.map +1 -0
  107. package/admin/components/ModelProvider/index.d.ts +2 -0
  108. package/admin/components/ModelProvider/index.js +31 -0
  109. package/admin/components/ModelProvider/index.js.map +1 -0
  110. package/admin/components/ModelProvider/useModel.d.ts +9 -0
  111. package/admin/components/ModelProvider/useModel.js +25 -0
  112. package/admin/components/ModelProvider/useModel.js.map +1 -0
  113. package/admin/constants/statusLabels.js +2 -4
  114. package/admin/constants/statusLabels.js.map +1 -1
  115. package/admin/graphql/contentEntries.d.ts +2 -29
  116. package/admin/graphql/contentEntries.js +28 -42
  117. package/admin/graphql/contentEntries.js.map +1 -1
  118. package/admin/graphql/contentModels.d.ts +1 -1
  119. package/admin/graphql/contentModels.js +2 -2
  120. package/admin/graphql/contentModels.js.map +1 -1
  121. package/admin/graphql/createFieldsList.d.ts +7 -2
  122. package/admin/graphql/createFieldsList.js +5 -1
  123. package/admin/graphql/createFieldsList.js.map +1 -1
  124. package/admin/hooks/index.d.ts +5 -0
  125. package/admin/hooks/index.js +47 -2
  126. package/admin/hooks/index.js.map +1 -1
  127. package/admin/hooks/usePermission.d.ts +0 -2
  128. package/admin/hooks/usePermission.js +5 -37
  129. package/admin/hooks/usePermission.js.map +1 -1
  130. package/admin/menus/NothingToShowElement.js +4 -1
  131. package/admin/menus/NothingToShowElement.js.map +1 -1
  132. package/admin/plugins/arrayUtils.d.ts +12 -0
  133. package/admin/plugins/arrayUtils.js +53 -0
  134. package/admin/plugins/arrayUtils.js.map +1 -0
  135. package/admin/plugins/editor/defaultBar/CreateContentButton.js +4 -4
  136. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
  137. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +5 -5
  138. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  139. package/admin/plugins/editor/defaultBar/Name/Name.js +4 -4
  140. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
  141. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +3 -3
  142. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
  143. package/admin/plugins/editor/formSettings/components/GeneralSettings.js +9 -1
  144. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
  145. package/admin/plugins/fieldRenderers/DynamicSection.d.ts +3 -3
  146. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
  147. package/admin/plugins/fieldRenderers/dateTime/DateOnly.d.ts +2 -2
  148. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
  149. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.d.ts +2 -2
  150. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
  151. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.d.ts +2 -2
  152. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
  153. package/admin/plugins/fieldRenderers/dateTime/Input.d.ts +2 -2
  154. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
  155. package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +2 -2
  156. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
  157. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.d.ts +12 -0
  158. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js +107 -0
  159. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -0
  160. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.d.ts +11 -0
  161. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +139 -0
  162. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -0
  163. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.d.ts +11 -0
  164. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js +68 -0
  165. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -0
  166. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.d.ts +8 -0
  167. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js +63 -0
  168. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js.map +1 -0
  169. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.d.ts +8 -0
  170. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js +53 -0
  171. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -0
  172. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.d.ts +6 -0
  173. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js +22 -0
  174. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -0
  175. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.d.ts +2 -0
  176. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +66 -0
  177. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -0
  178. package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
  179. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.d.ts +2 -2
  180. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
  181. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.d.ts +2 -2
  182. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
  183. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +10 -9
  184. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
  185. package/admin/plugins/fieldRenderers/ref/components/useReference.d.ts +2 -2
  186. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
  187. package/admin/plugins/fieldRenderers/ref/components/useReferences.d.ts +2 -2
  188. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
  189. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.d.ts +2 -2
  190. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +15 -14
  191. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
  192. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
  193. package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
  194. package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
  195. package/admin/plugins/fieldValidators/date/createDateInputField.d.ts +2 -2
  196. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
  197. package/admin/plugins/fieldValidators/dateGte.d.ts +2 -2
  198. package/admin/plugins/fieldValidators/dateGte.js +79 -23
  199. package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
  200. package/admin/plugins/fieldValidators/dateLte.d.ts +2 -2
  201. package/admin/plugins/fieldValidators/dateLte.js +79 -23
  202. package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
  203. package/admin/plugins/fieldValidators/dynamicZone.d.ts +2 -0
  204. package/admin/plugins/fieldValidators/dynamicZone.js +215 -0
  205. package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -0
  206. package/admin/plugins/fieldValidators/gte.d.ts +2 -2
  207. package/admin/plugins/fieldValidators/gte.js +44 -5
  208. package/admin/plugins/fieldValidators/gte.js.map +1 -1
  209. package/admin/plugins/fieldValidators/in.d.ts +2 -2
  210. package/admin/plugins/fieldValidators/in.js +44 -5
  211. package/admin/plugins/fieldValidators/in.js.map +1 -1
  212. package/admin/plugins/fieldValidators/lte.d.ts +2 -2
  213. package/admin/plugins/fieldValidators/lte.js +44 -5
  214. package/admin/plugins/fieldValidators/lte.js.map +1 -1
  215. package/admin/plugins/fieldValidators/maxLength.d.ts +2 -2
  216. package/admin/plugins/fieldValidators/maxLength.js +55 -6
  217. package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
  218. package/admin/plugins/fieldValidators/minLength.d.ts +2 -2
  219. package/admin/plugins/fieldValidators/minLength.js +55 -6
  220. package/admin/plugins/fieldValidators/minLength.js.map +1 -1
  221. package/admin/plugins/fieldValidators/pattern.d.ts +2 -2
  222. package/admin/plugins/fieldValidators/pattern.js +129 -60
  223. package/admin/plugins/fieldValidators/pattern.js.map +1 -1
  224. package/admin/plugins/fieldValidators/patternPlugins/email.d.ts +2 -2
  225. package/admin/plugins/fieldValidators/patternPlugins/email.js +6 -4
  226. package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
  227. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.d.ts +2 -2
  228. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js +5 -3
  229. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
  230. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.d.ts +2 -2
  231. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js +5 -3
  232. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
  233. package/admin/plugins/fieldValidators/patternPlugins/upperCase.d.ts +2 -2
  234. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js +5 -3
  235. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
  236. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.d.ts +2 -2
  237. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js +5 -3
  238. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
  239. package/admin/plugins/fieldValidators/patternPlugins/url.d.ts +2 -2
  240. package/admin/plugins/fieldValidators/patternPlugins/url.js +5 -3
  241. package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
  242. package/admin/plugins/fieldValidators/required.d.ts +2 -2
  243. package/admin/plugins/fieldValidators/required.js +8 -2
  244. package/admin/plugins/fieldValidators/required.js.map +1 -1
  245. package/admin/plugins/fieldValidators/unique.d.ts +2 -2
  246. package/admin/plugins/fieldValidators/unique.js +30 -2
  247. package/admin/plugins/fieldValidators/unique.js.map +1 -1
  248. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.d.ts +1 -2
  249. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +25 -26
  250. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
  251. package/admin/plugins/fields/boolean.d.ts +2 -2
  252. package/admin/plugins/fields/boolean.js +6 -5
  253. package/admin/plugins/fields/boolean.js.map +1 -1
  254. package/admin/plugins/fields/dateTime.d.ts +2 -2
  255. package/admin/plugins/fields/dateTime.js +58 -48
  256. package/admin/plugins/fields/dateTime.js.map +1 -1
  257. package/admin/plugins/fields/dynamicZone/AddTemplate.d.ts +11 -0
  258. package/admin/plugins/fields/dynamicZone/AddTemplate.js +114 -0
  259. package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -0
  260. package/admin/plugins/fields/dynamicZone/DynamicZone.d.ts +2 -0
  261. package/admin/plugins/fields/dynamicZone/DynamicZone.js +82 -0
  262. package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -0
  263. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.d.ts +11 -0
  264. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js +127 -0
  265. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -0
  266. package/admin/plugins/fields/dynamicZone/TemplateDialog.d.ts +9 -0
  267. package/admin/plugins/fields/dynamicZone/TemplateDialog.js +174 -0
  268. package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -0
  269. package/admin/plugins/fields/dynamicZone/commonValidators.d.ts +2 -0
  270. package/admin/plugins/fields/dynamicZone/commonValidators.js +26 -0
  271. package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -0
  272. package/admin/plugins/fields/dynamicZone.d.ts +2 -0
  273. package/admin/plugins/fields/dynamicZone.js +97 -0
  274. package/admin/plugins/fields/dynamicZone.js.map +1 -0
  275. package/admin/plugins/fields/file.d.ts +2 -2
  276. package/admin/plugins/fields/file.js +6 -5
  277. package/admin/plugins/fields/file.js.map +1 -1
  278. package/admin/plugins/fields/longText.d.ts +2 -2
  279. package/admin/plugins/fields/longText.js +4 -3
  280. package/admin/plugins/fields/longText.js.map +1 -1
  281. package/admin/plugins/fields/number.d.ts +2 -2
  282. package/admin/plugins/fields/number.js +6 -5
  283. package/admin/plugins/fields/number.js.map +1 -1
  284. package/admin/plugins/fields/object/ObjectFields.d.ts +2 -2
  285. package/admin/plugins/fields/object/ObjectFields.js +3 -3
  286. package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
  287. package/admin/plugins/fields/object.d.ts +2 -2
  288. package/admin/plugins/fields/object.js +9 -4
  289. package/admin/plugins/fields/object.js.map +1 -1
  290. package/admin/plugins/fields/ref.d.ts +2 -2
  291. package/admin/plugins/fields/ref.js +108 -100
  292. package/admin/plugins/fields/ref.js.map +1 -1
  293. package/admin/plugins/fields/richText.d.ts +2 -2
  294. package/admin/plugins/fields/richText.js +6 -5
  295. package/admin/plugins/fields/richText.js.map +1 -1
  296. package/admin/plugins/fields/text.d.ts +2 -2
  297. package/admin/plugins/fields/text.js +4 -3
  298. package/admin/plugins/fields/text.js.map +1 -1
  299. package/admin/plugins/index.d.ts +28 -1
  300. package/admin/plugins/permissionRenderer/CmsPermissions.js +2 -7
  301. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
  302. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +11 -17
  303. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  304. package/admin/plugins/transformers/dateTransformer.d.ts +1 -2
  305. package/admin/plugins/transformers/dateTransformer.js +3 -3
  306. package/admin/plugins/transformers/dateTransformer.js.map +1 -1
  307. package/admin/plugins/transformers/dynamicZoneTransformer.d.ts +2 -0
  308. package/admin/plugins/transformers/dynamicZoneTransformer.js +45 -0
  309. package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -0
  310. package/admin/plugins/transformers/index.js +5 -5
  311. package/admin/plugins/transformers/index.js.map +1 -1
  312. package/admin/plugins/transformers/numberTransformer.d.ts +1 -2
  313. package/admin/plugins/transformers/numberTransformer.js +3 -3
  314. package/admin/plugins/transformers/numberTransformer.js.map +1 -1
  315. package/admin/views/contentEntries/ContentEntries.js +6 -2
  316. package/admin/views/contentEntries/ContentEntries.js.map +1 -1
  317. package/admin/views/contentEntries/ContentEntriesContext.d.ts +4 -4
  318. package/admin/views/contentEntries/ContentEntriesContext.js +1 -9
  319. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  320. package/admin/views/contentEntries/ContentEntriesList.js +23 -8
  321. package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
  322. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +19 -4
  323. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  324. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +60 -60
  325. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
  326. package/admin/views/contentEntries/ContentEntry/cache.js +5 -1
  327. package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -1
  328. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.d.ts +1 -1
  329. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js +3 -80
  330. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -1
  331. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.d.ts +1 -1
  332. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js +3 -84
  333. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -1
  334. package/admin/views/contentEntries/ContentEntry/prepareFormData.d.ts +2 -2
  335. package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
  336. package/admin/views/contentEntries/ContentEntry/useRevision.d.ts +0 -8
  337. package/admin/views/contentEntries/ContentEntry/useRevision.js +10 -122
  338. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
  339. package/admin/views/contentEntries/ContentEntry.js +0 -2
  340. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  341. package/admin/views/contentEntries/experiment/ContentEntriesModule.d.ts +2 -2
  342. package/admin/views/contentEntries/experiment/ContentEntriesModule.js +27 -14
  343. package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
  344. package/admin/views/contentEntries/hooks/useContentEntries.js +7 -1
  345. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
  346. package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -1
  347. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
  348. package/admin/views/contentModelGroups/ContentModelGroupsForm.js +2 -2
  349. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
  350. package/admin/views/contentModels/CloneContentModelDialog.js +4 -17
  351. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
  352. package/admin/views/contentModels/ContentModelEditor.js +2 -2
  353. package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
  354. package/admin/views/contentModels/NewContentModelDialog.js +5 -17
  355. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  356. package/admin/viewsGraphql.js +1 -1
  357. package/admin/viewsGraphql.js.map +1 -1
  358. package/allPlugins.d.ts +34 -0
  359. package/allPlugins.js +95 -0
  360. package/allPlugins.js.map +1 -0
  361. package/index.d.ts +1 -0
  362. package/index.js +15 -1
  363. package/index.js.map +1 -1
  364. package/package.json +29 -29
  365. package/{types.d.ts → types/index.d.ts} +59 -176
  366. package/types/index.js +44 -0
  367. package/types/index.js.map +1 -0
  368. package/types/model.d.ts +83 -0
  369. package/{types.js → types/model.js} +0 -0
  370. package/types/model.js.map +1 -0
  371. package/types/shared.d.ts +5 -0
  372. package/types/shared.js +5 -0
  373. package/types/shared.js.map +1 -0
  374. package/types/validation.d.ts +70 -0
  375. package/types/validation.js +5 -0
  376. package/types/validation.js.map +1 -0
  377. package/utils/CmsModelFieldValidatorConfigAdapter.d.ts +15 -0
  378. package/utils/CmsModelFieldValidatorConfigAdapter.js +91 -0
  379. package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -0
  380. package/utils/createTypeName.d.ts +1 -0
  381. package/utils/createTypeName.js +18 -0
  382. package/utils/createTypeName.js.map +1 -0
  383. package/utils/createValidators.d.ts +3 -0
  384. package/{admin/components/ContentEntryForm/functions → utils}/createValidators.js +37 -16
  385. package/utils/createValidators.js.map +1 -0
  386. package/utils/getFetchPolicy.d.ts +6 -0
  387. package/utils/getFetchPolicy.js +19 -0
  388. package/utils/getFetchPolicy.js.map +1 -0
  389. package/utils/getModelTitleFieldId.d.ts +2 -0
  390. package/utils/getModelTitleFieldId.js +16 -0
  391. package/utils/getModelTitleFieldId.js.map +1 -0
  392. package/admin/components/ContentEntryForm/functions/createValidators.d.ts +0 -3
  393. package/admin/components/ContentEntryForm/functions/createValidators.js.map +0 -1
  394. package/admin/components/ContentModelEditor/Context.js.map +0 -1
  395. package/admin/components/ContentModelEditor/useContentModelEditor.d.ts +0 -1
  396. package/admin/components/ContentModelEditor/useContentModelEditor.js.map +0 -1
  397. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.d.ts +0 -15
  398. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js +0 -148
  399. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsTab.js.map +0 -1
  400. package/admin/components/FieldEditor/useFieldEditor.d.ts +0 -1
  401. package/admin/components/FieldEditor/useFieldEditor.js +0 -14
  402. package/admin/components/FieldEditor/useFieldEditor.js.map +0 -1
  403. package/admin/plugins/validators/dateGte.d.ts +0 -3
  404. package/admin/plugins/validators/dateGte.js +0 -68
  405. package/admin/plugins/validators/dateGte.js.map +0 -1
  406. package/admin/plugins/validators/dateLte.d.ts +0 -3
  407. package/admin/plugins/validators/dateLte.js +0 -68
  408. package/admin/plugins/validators/dateLte.js.map +0 -1
  409. package/admin/plugins/validators/gte.d.ts +0 -3
  410. package/admin/plugins/validators/gte.js +0 -57
  411. package/admin/plugins/validators/gte.js.map +0 -1
  412. package/admin/plugins/validators/in.d.ts +0 -3
  413. package/admin/plugins/validators/in.js +0 -57
  414. package/admin/plugins/validators/in.js.map +0 -1
  415. package/admin/plugins/validators/lte.d.ts +0 -3
  416. package/admin/plugins/validators/lte.js +0 -57
  417. package/admin/plugins/validators/lte.js.map +0 -1
  418. package/admin/plugins/validators/maxLength.d.ts +0 -3
  419. package/admin/plugins/validators/maxLength.js +0 -57
  420. package/admin/plugins/validators/maxLength.js.map +0 -1
  421. package/admin/plugins/validators/minLength.d.ts +0 -3
  422. package/admin/plugins/validators/minLength.js +0 -57
  423. package/admin/plugins/validators/minLength.js.map +0 -1
  424. package/admin/plugins/validators/pattern.d.ts +0 -3
  425. package/admin/plugins/validators/pattern.js +0 -77
  426. package/admin/plugins/validators/pattern.js.map +0 -1
  427. package/admin/plugins/validators/patternPlugins/email.d.ts +0 -3
  428. package/admin/plugins/validators/patternPlugins/email.js +0 -17
  429. package/admin/plugins/validators/patternPlugins/email.js.map +0 -1
  430. package/admin/plugins/validators/patternPlugins/lowerCase.d.ts +0 -3
  431. package/admin/plugins/validators/patternPlugins/lowerCase.js +0 -17
  432. package/admin/plugins/validators/patternPlugins/lowerCase.js.map +0 -1
  433. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.d.ts +0 -3
  434. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js +0 -17
  435. package/admin/plugins/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
  436. package/admin/plugins/validators/patternPlugins/upperCase.d.ts +0 -3
  437. package/admin/plugins/validators/patternPlugins/upperCase.js +0 -17
  438. package/admin/plugins/validators/patternPlugins/upperCase.js.map +0 -1
  439. package/admin/plugins/validators/patternPlugins/upperCaseSpace.d.ts +0 -3
  440. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js +0 -17
  441. package/admin/plugins/validators/patternPlugins/upperCaseSpace.js.map +0 -1
  442. package/admin/plugins/validators/patternPlugins/url.d.ts +0 -3
  443. package/admin/plugins/validators/patternPlugins/url.js +0 -17
  444. package/admin/plugins/validators/patternPlugins/url.js.map +0 -1
  445. package/admin/plugins/validators/required.d.ts +0 -3
  446. package/admin/plugins/validators/required.js +0 -21
  447. package/admin/plugins/validators/required.js.map +0 -1
  448. package/admin/plugins/validators/timeGte.d.ts +0 -3
  449. package/admin/plugins/validators/timeGte.js +0 -59
  450. package/admin/plugins/validators/timeGte.js.map +0 -1
  451. package/admin/plugins/validators/timeLte.d.ts +0 -3
  452. package/admin/plugins/validators/timeLte.js +0 -59
  453. package/admin/plugins/validators/timeLte.js.map +0 -1
  454. package/admin/plugins/validators/unique.d.ts +0 -7
  455. package/admin/plugins/validators/unique.js +0 -50
  456. package/admin/plugins/validators/unique.js.map +0 -1
  457. package/admin/views/contentEntries/ContentEntry/header/requestChanges/rule-24px.svg +0 -1
  458. package/admin/views/contentEntries/ContentEntry/header/requestReview/emoji_people-24px.svg +0 -1
  459. package/admin/views/contentModelGroups/IconPicker.d.ts +0 -8
  460. package/admin/views/contentModelGroups/IconPicker.js.map +0 -1
  461. package/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","formPreviewWrapper","css","padding","margin","boxSizing","style","noFieldsMessage","textAlign","PreviewTab","activeTab","useContentModelEditor","data","fields","length"],"sources":["PreviewTab.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { CmsEditorContentTab } from \"~/types\";\nimport { useContentModelEditor } from \"~/admin/components/ContentModelEditor/useContentModelEditor\";\nimport { ContentEntryFormPreview } from \"../ContentEntryForm/ContentEntryFormPreview\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/components/editor/tabs/preview\");\n\nconst formPreviewWrapper = css({\n padding: 40,\n margin: 40,\n boxSizing: \"border-box\"\n});\n\nconst style = {\n noFieldsMessage: css({\n textAlign: \"center\"\n })\n};\n\nexport const PreviewTab: CmsEditorContentTab = ({ activeTab }) => {\n const { data } = useContentModelEditor();\n\n return (\n <Elevation z={1} className={formPreviewWrapper}>\n {data.fields && data.fields.length && activeTab ? (\n <ContentEntryFormPreview contentModel={data} />\n ) : (\n <div className={style.noFieldsMessage}>\n {t`Before previewing the form, please add at least one field to the content model.`}\n </div>\n )}\n </Elevation>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,uDAAR,CAAV;;AAEA,IAAMC,kBAAkB,gBAAG,IAAAC,YAAA,EAAI;EAC3BC,OAAO,EAAE,EADkB;EAE3BC,MAAM,EAAE,EAFmB;EAG3BC,SAAS,EAAE;AAHgB,CAAJ,8BAA3B;AAMA,IAAMC,KAAK,GAAG;EACVC,eAAe,eAAE,IAAAL,YAAA,EAAI;IACjBM,SAAS,EAAE;EADM,CAAJ;AADP,CAAd;;AAMO,IAAMC,UAA+B,GAAG,SAAlCA,UAAkC,OAAmB;EAAA,IAAhBC,SAAgB,QAAhBA,SAAgB;;EAC9D,4BAAiB,IAAAC,4CAAA,GAAjB;EAAA,IAAQC,IAAR,yBAAQA,IAAR;;EAEA,oBACI,6BAAC,oBAAD;IAAW,CAAC,EAAE,CAAd;IAAiB,SAAS,EAAEX;EAA5B,GACKW,IAAI,CAACC,MAAL,IAAeD,IAAI,CAACC,MAAL,CAAYC,MAA3B,IAAqCJ,SAArC,gBACG,6BAAC,gDAAD;IAAyB,YAAY,EAAEE;EAAvC,EADH,gBAGG;IAAK,SAAS,EAAEN,KAAK,CAACC;EAAtB,GACKT,CADL,mKAJR,CADJ;AAWH,CAdM"}
1
+ {"version":3,"names":["t","i18n","ns","formPreviewWrapper","css","padding","margin","boxSizing","style","noFieldsMessage","textAlign","PreviewTab","activeTab","useModelEditor","data","fields","length"],"sources":["PreviewTab.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { CmsEditorContentTab } from \"~/types\";\nimport { useModelEditor } from \"~/admin/hooks\";\nimport { ContentEntryFormPreview } from \"../ContentEntryForm/ContentEntryFormPreview\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/components/editor/tabs/preview\");\n\nconst formPreviewWrapper = css({\n padding: 40,\n margin: 40,\n boxSizing: \"border-box\"\n});\n\nconst style = {\n noFieldsMessage: css({\n textAlign: \"center\"\n })\n};\n\nexport const PreviewTab: CmsEditorContentTab = ({ activeTab }) => {\n const { data } = useModelEditor();\n\n return (\n <Elevation z={1} className={formPreviewWrapper}>\n {data.fields && data.fields.length && activeTab ? (\n <ContentEntryFormPreview contentModel={data} />\n ) : (\n <div className={style.noFieldsMessage}>\n {t`Before previewing the form, please add at least one field to the content model.`}\n </div>\n )}\n </Elevation>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,uDAAR,CAAV;;AAEA,IAAMC,kBAAkB,gBAAG,IAAAC,YAAA,EAAI;EAC3BC,OAAO,EAAE,EADkB;EAE3BC,MAAM,EAAE,EAFmB;EAG3BC,SAAS,EAAE;AAHgB,CAAJ,8BAA3B;AAMA,IAAMC,KAAK,GAAG;EACVC,eAAe,eAAE,IAAAL,YAAA,EAAI;IACjBM,SAAS,EAAE;EADM,CAAJ;AADP,CAAd;;AAMO,IAAMC,UAA+B,GAAG,SAAlCA,UAAkC,OAAmB;EAAA,IAAhBC,SAAgB,QAAhBA,SAAgB;;EAC9D,sBAAiB,IAAAC,qBAAA,GAAjB;EAAA,IAAQC,IAAR,mBAAQA,IAAR;;EAEA,oBACI,6BAAC,oBAAD;IAAW,CAAC,EAAE,CAAd;IAAiB,SAAS,EAAEX;EAA5B,GACKW,IAAI,CAACC,MAAL,IAAeD,IAAI,CAACC,MAAL,CAAYC,MAA3B,IAAqCJ,SAArC,gBACG,6BAAC,gDAAD;IAAyB,YAAY,EAAEE;EAAvC,EADH,gBAGG;IAAK,SAAS,EAAEN,KAAK,CAACC;EAAtB,GACKT,CADL,mKAJR,CADJ;AAWH,CAdM"}
@@ -0,0 +1,2 @@
1
+ export * from "./ContentModelEditorProvider";
2
+ export * from "./useModelEditor";
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _ContentModelEditorProvider = require("./ContentModelEditorProvider");
8
+
9
+ Object.keys(_ContentModelEditorProvider).forEach(function (key) {
10
+ if (key === "default" || key === "__esModule") return;
11
+ if (key in exports && exports[key] === _ContentModelEditorProvider[key]) return;
12
+ Object.defineProperty(exports, key, {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _ContentModelEditorProvider[key];
16
+ }
17
+ });
18
+ });
19
+
20
+ var _useModelEditor = require("./useModelEditor");
21
+
22
+ Object.keys(_useModelEditor).forEach(function (key) {
23
+ if (key === "default" || key === "__esModule") return;
24
+ if (key in exports && exports[key] === _useModelEditor[key]) return;
25
+ Object.defineProperty(exports, key, {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _useModelEditor[key];
29
+ }
30
+ });
31
+ });
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./ContentModelEditorProvider\";\nexport * from \"./useModelEditor\";\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1 @@
1
+ export declare function useModelEditor(): import("./ContentModelEditorProvider").ContentModelEditorProviderContext;
@@ -5,14 +5,14 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.useContentModelEditor = useContentModelEditor;
8
+ exports.useModelEditor = useModelEditor;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
- var _Context = require("./Context");
12
+ var _ContentModelEditorProvider = require("./ContentModelEditorProvider");
13
13
 
14
- function useContentModelEditor() {
15
- var context = _react.default.useContext(_Context.contentModelEditorContext);
14
+ function useModelEditor() {
15
+ var context = _react.default.useContext(_ContentModelEditorProvider.contentModelEditorContext);
16
16
 
17
17
  if (!context) {
18
18
  throw new Error("useContentModelEditor must be used within a ContentModelEditorProvider");
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useModelEditor","context","React","useContext","contentModelEditorContext","Error"],"sources":["useModelEditor.ts"],"sourcesContent":["import React from \"react\";\nimport { contentModelEditorContext } from \"./ContentModelEditorProvider\";\n\nexport function useModelEditor() {\n const context = React.useContext(contentModelEditorContext);\n if (!context) {\n throw new Error(\"useContentModelEditor must be used within a ContentModelEditorProvider\");\n }\n\n return context;\n}\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEO,SAASA,cAAT,GAA0B;EAC7B,IAAMC,OAAO,GAAGC,cAAA,CAAMC,UAAN,CAAiBC,qDAAjB,CAAhB;;EACA,IAAI,CAACH,OAAL,EAAc;IACV,MAAM,IAAII,KAAJ,CAAU,wEAAV,CAAN;EACH;;EAED,OAAOJ,OAAP;AACH"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { Dialog as BaseDialog } from "@webiny/ui/Dialog";
3
+ export * from "@webiny/ui/Dialog";
4
+ export declare const Dialog: import("@emotion/styled-base").StyledComponent<import("@webiny/ui/Dialog").DialogProps & import("react").RefAttributes<BaseDialog>, Pick<import("@webiny/ui/Dialog").DialogProps & import("react").RefAttributes<BaseDialog>, keyof import("@webiny/ui/Dialog").DialogProps>, object>;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ var _exportNames = {
9
+ Dialog: true
10
+ };
11
+ exports.Dialog = void 0;
12
+
13
+ var _styled = _interopRequireDefault(require("@emotion/styled"));
14
+
15
+ var _Dialog = require("@webiny/ui/Dialog");
16
+
17
+ Object.keys(_Dialog).forEach(function (key) {
18
+ if (key === "default" || key === "__esModule") return;
19
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
20
+ if (key in exports && exports[key] === _Dialog[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _Dialog[key];
25
+ }
26
+ });
27
+ });
28
+ var Dialog = /*#__PURE__*/(0, _styled.default)(_Dialog.Dialog, {
29
+ label: "Dialog",
30
+ target: "e1q5k1p00"
31
+ })(".mdc-dialog__surface{width:600px;min-width:600px;overflow:initial;}.mdc-dialog__content{overflow:initial !important;.mdc-list:first-of-type{padding:0;}}");
32
+ exports.Dialog = Dialog;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Dialog","styled","BaseDialog"],"sources":["Dialog.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { Dialog as BaseDialog } from \"@webiny/ui/Dialog\";\nexport * from \"@webiny/ui/Dialog\";\n\nexport const Dialog = styled(BaseDialog)`\n .mdc-dialog__surface {\n width: 600px;\n min-width: 600px;\n overflow: initial;\n }\n\n .mdc-dialog__content {\n overflow: initial !important;\n .mdc-list:first-of-type {\n padding: 0;\n }\n }\n`;\n"],"mappings":";;;;;;;;;;;;AAAA;;AACA;;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAEO,IAAMA,MAAM,oBAAGC,eAAH,EAAUC,cAAV;EAAA;EAAA;AAAA,8JAAZ"}
@@ -1,5 +1,5 @@
1
1
  import React, { CSSProperties } from "react";
2
- import { OnDropCallable } from "../Droppable";
2
+ import { DroppableProps, OnDropCallable } from "../Droppable";
3
3
  interface CenterProps {
4
4
  type?: string;
5
5
  onDrop: OnDropCallable;
@@ -7,6 +7,7 @@ interface CenterProps {
7
7
  active?: boolean;
8
8
  highlight?: boolean;
9
9
  style?: CSSProperties;
10
+ isDroppable?: DroppableProps["isDroppable"];
10
11
  }
11
12
  declare const Center: React.FC<CenterProps>;
12
13
  export default Center;
@@ -15,61 +15,55 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
15
15
 
16
16
  var _Droppable = require("./../Droppable");
17
17
 
18
- // @ts-ignore
18
+ var getColor = function getColor(_ref) {
19
+ var isOver = _ref.isOver,
20
+ isDroppable = _ref.isDroppable;
21
+
22
+ if (isOver) {
23
+ return "var(--mdc-theme-primary)";
24
+ }
25
+
26
+ if (!isDroppable) {
27
+ return "var(--mdc-theme-background)";
28
+ }
29
+
30
+ return "var(--mdc-theme-secondary)";
31
+ };
32
+
19
33
  var Container = /*#__PURE__*/(0, _styled.default)("div", {
20
- target: "e14zhyp10",
21
- label: "Container"
22
- })(function (_ref) {
23
- var isOver = _ref.isOver;
24
- return {
25
- backgroundColor: "transparent",
26
- boxSizing: "border-box",
27
- height: "100%",
28
- minHeight: 100,
29
- position: "relative",
30
- userSelect: "none",
31
- width: "100%",
32
- border: isOver ? "2px dashed var(--mdc-theme-primary)" : "2px dashed var(--mdc-theme-secondary)",
33
- opacity: 1
34
- };
35
- }); // @ts-ignore
34
+ label: "Container",
35
+ target: "e14zhyp10"
36
+ })("background-color:transparent;box-sizing:border-box;height:100%;min-height:100px;position:relative;user-select:none;width:100%;border:2px dashed ", getColor, ";opacity:1;> div{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;color:", getColor, ";}");
36
37
 
37
- var Add = /*#__PURE__*/(0, _styled.default)("div", {
38
- target: "e14zhyp11",
39
- label: "Add"
40
- })(function (_ref2) {
41
- var isOver = _ref2.isOver;
42
- return {
43
- position: "absolute",
44
- top: "50%",
45
- left: "50%",
46
- transform: "translate(-50%,-50%)",
47
- margin: 0,
48
- color: isOver ? "var(--mdc-theme-primary)" : "var(--mdc-theme-secondary)"
38
+ var getInert = function getInert(isDroppable) {
39
+ return isDroppable ? {} : {
40
+ inert: ""
49
41
  };
50
- });
42
+ };
51
43
 
52
- var Center = function Center(_ref3) {
53
- var onDrop = _ref3.onDrop,
54
- children = _ref3.children,
55
- style = _ref3.style;
44
+ var Center = function Center(_ref2) {
45
+ var onDrop = _ref2.onDrop,
46
+ children = _ref2.children,
47
+ style = _ref2.style,
48
+ isDroppable = _ref2.isDroppable;
56
49
  return /*#__PURE__*/_react.default.createElement(_Droppable.Droppable, {
57
- onDrop: onDrop
58
- }, function (_ref4) {
59
- var isOver = _ref4.isOver,
60
- drop = _ref4.drop;
61
- return /*#__PURE__*/_react.default.createElement("div", {
50
+ onDrop: onDrop,
51
+ isDroppable: isDroppable
52
+ }, function (_ref3) {
53
+ var isOver = _ref3.isOver,
54
+ drop = _ref3.drop,
55
+ isDroppable = _ref3.isDroppable;
56
+ return /*#__PURE__*/_react.default.createElement("div", Object.assign({
62
57
  ref: drop,
63
58
  style: (0, _objectSpread2.default)({
64
59
  width: "100%",
65
60
  height: "100%"
66
61
  }, style),
67
62
  "data-testid": "cms-editor-first-field-area"
68
- }, /*#__PURE__*/_react.default.createElement(Container, {
69
- isOver: isOver
70
- }, /*#__PURE__*/_react.default.createElement(Add, {
71
- isOver: isOver
72
- }, children)));
63
+ }, getInert(isDroppable)), /*#__PURE__*/_react.default.createElement(Container, {
64
+ isOver: isOver,
65
+ isDroppable: isDroppable
66
+ }, /*#__PURE__*/_react.default.createElement("div", null, children)));
73
67
  });
74
68
  };
75
69
 
@@ -1 +1 @@
1
- {"version":3,"names":["Container","styled","isOver","backgroundColor","boxSizing","height","minHeight","position","userSelect","width","border","opacity","Add","top","left","transform","margin","color","Center","onDrop","children","style","drop"],"sources":["Center.tsx"],"sourcesContent":["import React, { CSSProperties } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Droppable, OnDropCallable } from \"./../Droppable\";\n\n// @ts-ignore\nconst Container = styled(\"div\")(({ isOver }: { isOver: boolean }) => ({\n backgroundColor: \"transparent\",\n boxSizing: \"border-box\",\n height: \"100%\",\n minHeight: 100,\n position: \"relative\",\n userSelect: \"none\",\n width: \"100%\",\n border: isOver\n ? \"2px dashed var(--mdc-theme-primary)\"\n : \"2px dashed var(--mdc-theme-secondary)\",\n opacity: 1\n}));\n\n// @ts-ignore\nconst Add = styled(\"div\")(({ isOver }: { isOver: boolean }) => ({\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%,-50%)\",\n margin: 0,\n color: isOver ? \"var(--mdc-theme-primary)\" : \"var(--mdc-theme-secondary)\"\n}));\n\ninterface CenterProps {\n type?: string;\n onDrop: OnDropCallable;\n children: React.ReactNode;\n active?: boolean;\n highlight?: boolean;\n style?: CSSProperties;\n}\n\nconst Center: React.FC<CenterProps> = ({ onDrop, children, style }) => {\n return (\n <Droppable onDrop={onDrop}>\n {({ isOver, drop }) => (\n <div\n ref={drop}\n style={{ width: \"100%\", height: \"100%\", ...style }}\n data-testid={\"cms-editor-first-field-area\"}\n >\n <Container isOver={isOver}>\n <Add isOver={isOver}>{children}</Add>\n </Container>\n </div>\n )}\n </Droppable>\n );\n};\n\nexport default Center;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;AACA,IAAMA,SAAS,oBAAGC,eAAH,EAAU,KAAV;EAAA;EAAA;AAAA,GAAiB;EAAA,IAAGC,MAAH,QAAGA,MAAH;EAAA,OAAsC;IAClEC,eAAe,EAAE,aADiD;IAElEC,SAAS,EAAE,YAFuD;IAGlEC,MAAM,EAAE,MAH0D;IAIlEC,SAAS,EAAE,GAJuD;IAKlEC,QAAQ,EAAE,UALwD;IAMlEC,UAAU,EAAE,MANsD;IAOlEC,KAAK,EAAE,MAP2D;IAQlEC,MAAM,EAAER,MAAM,GACR,qCADQ,GAER,uCAV4D;IAWlES,OAAO,EAAE;EAXyD,CAAtC;AAAA,CAAjB,CAAf,C,CAcA;;AACA,IAAMC,GAAG,oBAAGX,eAAH,EAAU,KAAV;EAAA;EAAA;AAAA,GAAiB;EAAA,IAAGC,MAAH,SAAGA,MAAH;EAAA,OAAsC;IAC5DK,QAAQ,EAAE,UADkD;IAE5DM,GAAG,EAAE,KAFuD;IAG5DC,IAAI,EAAE,KAHsD;IAI5DC,SAAS,EAAE,sBAJiD;IAK5DC,MAAM,EAAE,CALoD;IAM5DC,KAAK,EAAEf,MAAM,GAAG,0BAAH,GAAgC;EANe,CAAtC;AAAA,CAAjB,CAAT;;AAkBA,IAAMgB,MAA6B,GAAG,SAAhCA,MAAgC,QAAiC;EAAA,IAA9BC,MAA8B,SAA9BA,MAA8B;EAAA,IAAtBC,QAAsB,SAAtBA,QAAsB;EAAA,IAAZC,KAAY,SAAZA,KAAY;EACnE,oBACI,6BAAC,oBAAD;IAAW,MAAM,EAAEF;EAAnB,GACK;IAAA,IAAGjB,MAAH,SAAGA,MAAH;IAAA,IAAWoB,IAAX,SAAWA,IAAX;IAAA,oBACG;MACI,GAAG,EAAEA,IADT;MAEI,KAAK;QAAIb,KAAK,EAAE,MAAX;QAAmBJ,MAAM,EAAE;MAA3B,GAAsCgB,KAAtC,CAFT;MAGI,eAAa;IAHjB,gBAKI,6BAAC,SAAD;MAAW,MAAM,EAAEnB;IAAnB,gBACI,6BAAC,GAAD;MAAK,MAAM,EAAEA;IAAb,GAAsBkB,QAAtB,CADJ,CALJ,CADH;EAAA,CADL,CADJ;AAeH,CAhBD;;eAkBeF,M"}
1
+ {"version":3,"names":["getColor","isOver","isDroppable","Container","styled","getInert","inert","Center","onDrop","children","style","drop","width","height"],"sources":["Center.tsx"],"sourcesContent":["import React, { CSSProperties } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Droppable, DroppableProps, OnDropCallable } from \"./../Droppable\";\n\ninterface DroppableFlags {\n isOver: boolean;\n isDroppable: boolean;\n}\n\nconst getColor = ({ isOver, isDroppable }: DroppableFlags) => {\n if (isOver) {\n return \"var(--mdc-theme-primary)\";\n }\n\n if (!isDroppable) {\n return \"var(--mdc-theme-background)\";\n }\n\n return \"var(--mdc-theme-secondary)\";\n};\n\nconst Container = styled.div`\n background-color: transparent;\n box-sizing: border-box;\n height: 100%;\n min-height: 100px;\n position: relative;\n user-select: none;\n width: 100%;\n border: 2px dashed ${getColor};\n opacity: 1;\n > div {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n margin: 0;\n color: ${getColor};\n }\n`;\n\ninterface CenterProps {\n type?: string;\n onDrop: OnDropCallable;\n children: React.ReactNode;\n active?: boolean;\n highlight?: boolean;\n style?: CSSProperties;\n isDroppable?: DroppableProps[\"isDroppable\"];\n}\n\nconst getInert = (isDroppable: boolean) => {\n return isDroppable ? {} : { inert: \"\" };\n};\n\nconst Center: React.FC<CenterProps> = ({ onDrop, children, style, isDroppable }) => {\n return (\n <Droppable onDrop={onDrop} isDroppable={isDroppable}>\n {({ isOver, drop, isDroppable }) => (\n <div\n ref={drop}\n style={{ width: \"100%\", height: \"100%\", ...style }}\n data-testid={\"cms-editor-first-field-area\"}\n {...getInert(isDroppable)}\n >\n <Container isOver={isOver} isDroppable={isDroppable}>\n <div>{children}</div>\n </Container>\n </div>\n )}\n </Droppable>\n );\n};\n\nexport default Center;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AAOA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAA6C;EAAA,IAA1CC,MAA0C,QAA1CA,MAA0C;EAAA,IAAlCC,WAAkC,QAAlCA,WAAkC;;EAC1D,IAAID,MAAJ,EAAY;IACR,OAAO,0BAAP;EACH;;EAED,IAAI,CAACC,WAAL,EAAkB;IACd,OAAO,6BAAP;EACH;;EAED,OAAO,4BAAP;AACH,CAVD;;AAYA,IAAMC,SAAS,oBAAGC,eAAH;EAAA;EAAA;AAAA,uJAQUJ,QARV,wGAgBEA,QAhBF,OAAf;;AA8BA,IAAMK,QAAQ,GAAG,SAAXA,QAAW,CAACH,WAAD,EAA0B;EACvC,OAAOA,WAAW,GAAG,EAAH,GAAQ;IAAEI,KAAK,EAAE;EAAT,CAA1B;AACH,CAFD;;AAIA,IAAMC,MAA6B,GAAG,SAAhCA,MAAgC,QAA8C;EAAA,IAA3CC,MAA2C,SAA3CA,MAA2C;EAAA,IAAnCC,QAAmC,SAAnCA,QAAmC;EAAA,IAAzBC,KAAyB,SAAzBA,KAAyB;EAAA,IAAlBR,WAAkB,SAAlBA,WAAkB;EAChF,oBACI,6BAAC,oBAAD;IAAW,MAAM,EAAEM,MAAnB;IAA2B,WAAW,EAAEN;EAAxC,GACK;IAAA,IAAGD,MAAH,SAAGA,MAAH;IAAA,IAAWU,IAAX,SAAWA,IAAX;IAAA,IAAiBT,WAAjB,SAAiBA,WAAjB;IAAA,oBACG;MACI,GAAG,EAAES,IADT;MAEI,KAAK;QAAIC,KAAK,EAAE,MAAX;QAAmBC,MAAM,EAAE;MAA3B,GAAsCH,KAAtC,CAFT;MAGI,eAAa;IAHjB,GAIQL,QAAQ,CAACH,WAAD,CAJhB,gBAMI,6BAAC,SAAD;MAAW,MAAM,EAAED,MAAnB;MAA2B,WAAW,EAAEC;IAAxC,gBACI,0CAAMO,QAAN,CADJ,CANJ,CADH;EAAA,CADL,CADJ;AAgBH,CAjBD;;eAmBeF,M"}
@@ -3,6 +3,7 @@ import { ConnectDropTarget } from "react-dnd";
3
3
  import { DragSource } from "./FieldEditor/FieldEditorContext";
4
4
  export interface DroppableChildrenFunctionParams {
5
5
  isDragging: boolean;
6
+ isDroppable: boolean;
6
7
  isOver: boolean;
7
8
  item: any;
8
9
  drop: ConnectDropTarget;
@@ -33,7 +33,11 @@ var DroppableComponent = function DroppableComponent(props) {
33
33
  item: monitor.getItem()
34
34
  };
35
35
  },
36
- drop: function drop(_, monitor) {
36
+ drop: function drop(item, monitor) {
37
+ if (typeof props.isDroppable === "function" && !props.isDroppable(item)) {
38
+ return;
39
+ }
40
+
37
41
  if (typeof onDrop === "function") {
38
42
  return onDrop(monitor.getItem());
39
43
  }
@@ -49,9 +53,16 @@ var DroppableComponent = function DroppableComponent(props) {
49
53
  return null;
50
54
  }
51
55
 
56
+ var isDroppable = true;
57
+
58
+ if (item) {
59
+ isDroppable = props.isDroppable ? props.isDroppable(item) : isOver;
60
+ }
61
+
52
62
  return children({
53
63
  isDragging: Boolean(item),
54
64
  isOver: isOver,
65
+ isDroppable: isDroppable,
55
66
  item: item,
56
67
  drop: drop
57
68
  });
@@ -1 +1 @@
1
- {"version":3,"names":["DroppableComponent","props","children","onDrop","isVisible","useDrop","accept","collect","monitor","isOver","shallow","item","getItem","drop","_","isDragging","Boolean","Droppable","React","memo"],"sources":["Droppable.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ConnectDropTarget, useDrop } from \"react-dnd\";\nimport { DragSource } from \"~/admin/components/FieldEditor/FieldEditorContext\";\n\nexport interface DroppableChildrenFunctionParams {\n isDragging: boolean;\n isOver: boolean;\n item: any;\n drop: ConnectDropTarget;\n}\nexport interface DroppableChildrenFunction {\n (params: DroppableChildrenFunctionParams): React.ReactElement;\n}\n\ninterface IsVisibleParams {\n type: \"row\" | \"field\" | \"newField\";\n item: any;\n isDragging: boolean;\n}\nexport interface IsVisibleCallable {\n (params: IsVisibleParams): boolean;\n}\nexport interface OnDropCallable {\n (item: DragSource): void;\n}\nexport interface DroppableProps {\n type?: string;\n children: DroppableChildrenFunction;\n isDragging?: boolean;\n isDroppable?: (item: any) => boolean;\n isVisible?: IsVisibleCallable;\n onDrop?: OnDropCallable;\n}\n\nconst DroppableComponent: React.FC<DroppableProps> = props => {\n const { children, onDrop, isVisible = () => true } = props;\n\n const [{ item, isOver }, drop] = useDrop({\n accept: \"element\",\n collect: monitor => ({\n isOver: monitor.isOver() && monitor.isOver({ shallow: true }),\n item: monitor.getItem()\n }),\n drop(_, monitor) {\n if (typeof onDrop === \"function\") {\n return onDrop(monitor.getItem());\n }\n }\n });\n\n if (item && !isVisible(item)) {\n return null;\n }\n\n return children({ isDragging: Boolean(item), isOver, item, drop });\n};\n\nexport const Droppable: React.FC<DroppableProps> = React.memo(DroppableComponent);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAiCA,IAAMA,kBAA4C,GAAG,SAA/CA,kBAA+C,CAAAC,KAAK,EAAI;EAC1D,IAAQC,QAAR,GAAqDD,KAArD,CAAQC,QAAR;EAAA,IAAkBC,MAAlB,GAAqDF,KAArD,CAAkBE,MAAlB;EAAA,uBAAqDF,KAArD,CAA0BG,SAA1B;EAAA,IAA0BA,SAA1B,iCAAsC;IAAA,OAAM,IAAN;EAAA,CAAtC;;EAEA,eAAiC,IAAAC,iBAAA,EAAQ;IACrCC,MAAM,EAAE,SAD6B;IAErCC,OAAO,EAAE,iBAAAC,OAAO;MAAA,OAAK;QACjBC,MAAM,EAAED,OAAO,CAACC,MAAR,MAAoBD,OAAO,CAACC,MAAR,CAAe;UAAEC,OAAO,EAAE;QAAX,CAAf,CADX;QAEjBC,IAAI,EAAEH,OAAO,CAACI,OAAR;MAFW,CAAL;IAAA,CAFqB;IAMrCC,IANqC,gBAMhCC,CANgC,EAM7BN,OAN6B,EAMpB;MACb,IAAI,OAAOL,MAAP,KAAkB,UAAtB,EAAkC;QAC9B,OAAOA,MAAM,CAACK,OAAO,CAACI,OAAR,EAAD,CAAb;MACH;IACJ;EAVoC,CAAR,CAAjC;EAAA;EAAA;EAAA,IAASD,IAAT,cAASA,IAAT;EAAA,IAAeF,MAAf,cAAeA,MAAf;EAAA,IAAyBI,IAAzB;;EAaA,IAAIF,IAAI,IAAI,CAACP,SAAS,CAACO,IAAD,CAAtB,EAA8B;IAC1B,OAAO,IAAP;EACH;;EAED,OAAOT,QAAQ,CAAC;IAAEa,UAAU,EAAEC,OAAO,CAACL,IAAD,CAArB;IAA6BF,MAAM,EAANA,MAA7B;IAAqCE,IAAI,EAAJA,IAArC;IAA2CE,IAAI,EAAJA;EAA3C,CAAD,CAAf;AACH,CArBD;;AAuBO,IAAMI,SAAmC,gBAAGC,KAAK,CAACC,IAAN,CAAWnB,kBAAX,CAA5C"}
1
+ {"version":3,"names":["DroppableComponent","props","children","onDrop","isVisible","useDrop","accept","collect","monitor","isOver","shallow","item","getItem","drop","isDroppable","isDragging","Boolean","Droppable","React","memo"],"sources":["Droppable.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ConnectDropTarget, useDrop } from \"react-dnd\";\nimport { DragSource } from \"~/admin/components/FieldEditor/FieldEditorContext\";\n\nexport interface DroppableChildrenFunctionParams {\n isDragging: boolean;\n isDroppable: boolean;\n isOver: boolean;\n item: any;\n drop: ConnectDropTarget;\n}\nexport interface DroppableChildrenFunction {\n (params: DroppableChildrenFunctionParams): React.ReactElement;\n}\n\ninterface IsVisibleParams {\n type: \"row\" | \"field\" | \"newField\";\n item: any;\n isDragging: boolean;\n}\nexport interface IsVisibleCallable {\n (params: IsVisibleParams): boolean;\n}\nexport interface OnDropCallable {\n (item: DragSource): void;\n}\nexport interface DroppableProps {\n type?: string;\n children: DroppableChildrenFunction;\n isDragging?: boolean;\n isDroppable?: (item: any) => boolean;\n isVisible?: IsVisibleCallable;\n onDrop?: OnDropCallable;\n}\n\nconst DroppableComponent: React.FC<DroppableProps> = props => {\n const { children, onDrop, isVisible = () => true } = props;\n\n const [{ item, isOver }, drop] = useDrop({\n accept: \"element\",\n collect: monitor => ({\n isOver: monitor.isOver() && monitor.isOver({ shallow: true }),\n item: monitor.getItem()\n }),\n drop(item, monitor) {\n if (typeof props.isDroppable === \"function\" && !props.isDroppable(item)) {\n return;\n }\n\n if (typeof onDrop === \"function\") {\n return onDrop(monitor.getItem());\n }\n }\n });\n\n if (item && !isVisible(item)) {\n return null;\n }\n\n let isDroppable = true;\n if (item) {\n isDroppable = props.isDroppable ? props.isDroppable(item) : isOver;\n }\n\n return children({ isDragging: Boolean(item), isOver, isDroppable, item, drop });\n};\n\nexport const Droppable: React.FC<DroppableProps> = React.memo(DroppableComponent);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAkCA,IAAMA,kBAA4C,GAAG,SAA/CA,kBAA+C,CAAAC,KAAK,EAAI;EAC1D,IAAQC,QAAR,GAAqDD,KAArD,CAAQC,QAAR;EAAA,IAAkBC,MAAlB,GAAqDF,KAArD,CAAkBE,MAAlB;EAAA,uBAAqDF,KAArD,CAA0BG,SAA1B;EAAA,IAA0BA,SAA1B,iCAAsC;IAAA,OAAM,IAAN;EAAA,CAAtC;;EAEA,eAAiC,IAAAC,iBAAA,EAAQ;IACrCC,MAAM,EAAE,SAD6B;IAErCC,OAAO,EAAE,iBAAAC,OAAO;MAAA,OAAK;QACjBC,MAAM,EAAED,OAAO,CAACC,MAAR,MAAoBD,OAAO,CAACC,MAAR,CAAe;UAAEC,OAAO,EAAE;QAAX,CAAf,CADX;QAEjBC,IAAI,EAAEH,OAAO,CAACI,OAAR;MAFW,CAAL;IAAA,CAFqB;IAMrCC,IANqC,gBAMhCF,IANgC,EAM1BH,OAN0B,EAMjB;MAChB,IAAI,OAAOP,KAAK,CAACa,WAAb,KAA6B,UAA7B,IAA2C,CAACb,KAAK,CAACa,WAAN,CAAkBH,IAAlB,CAAhD,EAAyE;QACrE;MACH;;MAED,IAAI,OAAOR,MAAP,KAAkB,UAAtB,EAAkC;QAC9B,OAAOA,MAAM,CAACK,OAAO,CAACI,OAAR,EAAD,CAAb;MACH;IACJ;EAdoC,CAAR,CAAjC;EAAA;EAAA;EAAA,IAASD,IAAT,cAASA,IAAT;EAAA,IAAeF,MAAf,cAAeA,MAAf;EAAA,IAAyBI,IAAzB;;EAiBA,IAAIF,IAAI,IAAI,CAACP,SAAS,CAACO,IAAD,CAAtB,EAA8B;IAC1B,OAAO,IAAP;EACH;;EAED,IAAIG,WAAW,GAAG,IAAlB;;EACA,IAAIH,IAAJ,EAAU;IACNG,WAAW,GAAGb,KAAK,CAACa,WAAN,GAAoBb,KAAK,CAACa,WAAN,CAAkBH,IAAlB,CAApB,GAA8CF,MAA5D;EACH;;EAED,OAAOP,QAAQ,CAAC;IAAEa,UAAU,EAAEC,OAAO,CAACL,IAAD,CAArB;IAA6BF,MAAM,EAANA,MAA7B;IAAqCK,WAAW,EAAXA,WAArC;IAAkDH,IAAI,EAAJA,IAAlD;IAAwDE,IAAI,EAAJA;EAAxD,CAAD,CAAf;AACH,CA9BD;;AAgCO,IAAMI,SAAmC,gBAAGC,KAAK,CAACC,IAAN,CAAWnB,kBAAX,CAA5C"}
@@ -1,9 +1,3 @@
1
- import React from "react";
2
- import { CmsEditorField } from "../../../../types";
3
- import { FormRenderPropParams } from "@webiny/form";
4
- interface AppearanceTabProps {
5
- field: CmsEditorField;
6
- form: FormRenderPropParams;
7
- }
8
- declare const AppearanceTab: React.FC<AppearanceTabProps>;
1
+ /// <reference types="react" />
2
+ declare const AppearanceTab: () => JSX.Element;
9
3
  export default AppearanceTab;
@@ -27,9 +27,13 @@ var _emotion = require("emotion");
27
27
 
28
28
  var _validation = require("@webiny/validation");
29
29
 
30
+ var _hooks = require("../../../hooks");
31
+
32
+ var _form = require("@webiny/form");
33
+
30
34
  var _templateObject, _templateObject2;
31
35
 
32
- var t = _i18n.i18n.ns("app-headless-cms/admin/views/components/editor/tabs/edit-field-dialog/appearance-tab");
36
+ var t = _i18n.i18n.ns("app-headless-cms/admin/content-model-editor/tabs/appearance-tab");
33
37
 
34
38
  var style = {
35
39
  topLabel: /*#__PURE__*/(0, _emotion.css)({
@@ -44,13 +48,19 @@ var style = {
44
48
  }, "label:radioContainer;")
45
49
  };
46
50
 
47
- var AppearanceTab = function AppearanceTab(props) {
48
- var field = props.field,
49
- form = props.form;
51
+ var AppearanceTab = function AppearanceTab() {
52
+ var _field$predefinedValu;
53
+
54
+ var form = (0, _form.useForm)();
55
+
56
+ var _useModelField = (0, _hooks.useModelField)(),
57
+ field = _useModelField.field,
58
+ fieldPlugin = _useModelField.fieldPlugin;
50
59
 
51
60
  var renderPlugins = _plugins.plugins.byType("cms-editor-field-renderer").filter(function (item) {
52
61
  return item.renderer.canUse({
53
- field: field
62
+ field: field,
63
+ fieldPlugin: fieldPlugin
54
64
  });
55
65
  });
56
66
 
@@ -62,13 +72,15 @@ var AppearanceTab = function AppearanceTab(props) {
62
72
 
63
73
  if (currentlySelectedRenderAvailable) {
64
74
  return;
65
- } else if (renderPlugins[0]) {
75
+ }
76
+
77
+ if (renderPlugins[0]) {
66
78
  form.setValue("renderer.name", renderPlugins[0].renderer.rendererName);
67
79
  return;
68
80
  }
69
81
 
70
82
  console.info("No renderers for field ".concat(field.fieldId, " found."), field);
71
- });
83
+ }, [field.id, field.multipleValues, (_field$predefinedValu = field.predefinedValues) === null || _field$predefinedValu === void 0 ? void 0 : _field$predefinedValu.enabled]);
72
84
 
73
85
  if (renderPlugins.length === 0) {
74
86
  return /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
@@ -77,12 +89,11 @@ var AppearanceTab = function AppearanceTab(props) {
77
89
  }, t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["There are no components that can render this field."])))));
78
90
  }
79
91
 
80
- var Bind = form.Bind;
81
92
  return /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
82
93
  span: 12
83
94
  }, /*#__PURE__*/_react.default.createElement("div", {
84
95
  className: style.topLabel
85
- }, t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Choose a component that will render the field:"])))), /*#__PURE__*/_react.default.createElement(Bind, {
96
+ }, t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Choose a component that will render the field:"])))), /*#__PURE__*/_react.default.createElement(_form.Bind, {
86
97
  name: "renderer.name",
87
98
  validate: _validation.validation.create("required")
88
99
  }, /*#__PURE__*/_react.default.createElement(_Radio.RadioGroup, null, function (_ref) {
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","style","topLabel","css","marginBottom","noComponentsMessage","textAlign","padding","radioContainer","AppearanceTab","props","field","form","renderPlugins","plugins","byType","filter","item","renderer","canUse","useEffect","currentlySelectedRenderAvailable","find","rendererName","name","setValue","console","info","fieldId","length","Bind","validation","create","onChange","getValue","map","description"],"sources":["AppearanceTab.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { CmsEditorField, CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Radio, RadioGroup } from \"@webiny/ui/Radio\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { css } from \"emotion\";\nimport { validation } from \"@webiny/validation\";\nimport { FormRenderPropParams } from \"@webiny/form\";\n\nconst t = i18n.ns(\n \"app-headless-cms/admin/views/components/editor/tabs/edit-field-dialog/appearance-tab\"\n);\n\nconst style = {\n topLabel: css({\n marginBottom: 25\n }),\n noComponentsMessage: css({\n textAlign: \"center\",\n padding: 25\n }),\n radioContainer: css({\n marginBottom: 10\n })\n};\n\ninterface AppearanceTabProps {\n field: CmsEditorField;\n form: FormRenderPropParams;\n}\nconst AppearanceTab: React.FC<AppearanceTabProps> = props => {\n const { field, form } = props;\n\n const renderPlugins = plugins\n .byType<CmsEditorFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .filter(item => item.renderer.canUse({ field }));\n\n useEffect((): void => {\n // If the currently selected render plugin is no longer available, select the first available one.\n const currentlySelectedRenderAvailable = renderPlugins.find(\n item => item.renderer.rendererName === field.renderer.name\n );\n if (currentlySelectedRenderAvailable) {\n return;\n } else if (renderPlugins[0]) {\n form.setValue(\"renderer.name\", renderPlugins[0].renderer.rendererName);\n return;\n }\n console.info(`No renderers for field ${field.fieldId} found.`, field);\n });\n\n if (renderPlugins.length === 0) {\n return (\n <Grid>\n <Cell\n span={12}\n className={style.noComponentsMessage}\n >{t`There are no components that can render this field.`}</Cell>\n </Grid>\n );\n }\n\n const { Bind } = form;\n\n return (\n <Grid>\n <Cell span={12}>\n <div\n className={style.topLabel}\n >{t`Choose a component that will render the field:`}</div>\n <Bind name={\"renderer.name\"} validate={validation.create(\"required\")}>\n <RadioGroup>\n {({ onChange, getValue }) => (\n <React.Fragment>\n {renderPlugins.map(item => (\n <div key={item.name} className={style.radioContainer}>\n <Radio\n value={getValue(item.renderer.rendererName)}\n onChange={onChange(item.renderer.rendererName)}\n label={\n <>\n <div>{item.renderer.name}</div>\n <div>\n <Typography use={\"caption\"}>\n {item.renderer.description}\n </Typography>\n </div>\n </>\n }\n />\n </div>\n ))}\n </React.Fragment>\n )}\n </RadioGroup>\n </Bind>\n </Cell>\n </Grid>\n );\n};\n\nexport default AppearanceTab;\n"],"mappings":"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"}
1
+ {"version":3,"names":["t","i18n","ns","style","topLabel","css","marginBottom","noComponentsMessage","textAlign","padding","radioContainer","AppearanceTab","form","useForm","useModelField","field","fieldPlugin","renderPlugins","plugins","byType","filter","item","renderer","canUse","useEffect","currentlySelectedRenderAvailable","find","rendererName","name","setValue","console","info","fieldId","id","multipleValues","predefinedValues","enabled","length","validation","create","onChange","getValue","map","description"],"sources":["AppearanceTab.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { CmsModelField, CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Radio, RadioGroup } from \"@webiny/ui/Radio\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { css } from \"emotion\";\nimport { validation } from \"@webiny/validation\";\nimport { useModelField } from \"~/admin/hooks\";\nimport { useForm, Bind } from \"@webiny/form\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/content-model-editor/tabs/appearance-tab\");\n\nconst style = {\n topLabel: css({\n marginBottom: 25\n }),\n noComponentsMessage: css({\n textAlign: \"center\",\n padding: 25\n }),\n radioContainer: css({\n marginBottom: 10\n })\n};\n\nconst AppearanceTab = () => {\n const form = useForm<CmsModelField>();\n const { field, fieldPlugin } = useModelField();\n\n const renderPlugins = plugins\n .byType<CmsEditorFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .filter(item => item.renderer.canUse({ field, fieldPlugin }));\n\n useEffect((): void => {\n // If the currently selected render plugin is no longer available, select the first available one.\n const currentlySelectedRenderAvailable = renderPlugins.find(\n item => item.renderer.rendererName === field.renderer.name\n );\n\n if (currentlySelectedRenderAvailable) {\n return;\n }\n\n if (renderPlugins[0]) {\n form.setValue(\"renderer.name\", renderPlugins[0].renderer.rendererName);\n return;\n }\n\n console.info(`No renderers for field ${field.fieldId} found.`, field);\n }, [field.id, field.multipleValues, field.predefinedValues?.enabled]);\n\n if (renderPlugins.length === 0) {\n return (\n <Grid>\n <Cell\n span={12}\n className={style.noComponentsMessage}\n >{t`There are no components that can render this field.`}</Cell>\n </Grid>\n );\n }\n\n return (\n <Grid>\n <Cell span={12}>\n <div\n className={style.topLabel}\n >{t`Choose a component that will render the field:`}</div>\n <Bind name={\"renderer.name\"} validate={validation.create(\"required\")}>\n <RadioGroup>\n {({ onChange, getValue }) => (\n <React.Fragment>\n {renderPlugins.map(item => (\n <div key={item.name} className={style.radioContainer}>\n <Radio\n value={getValue(item.renderer.rendererName)}\n onChange={onChange(item.renderer.rendererName)}\n label={\n <>\n <div>{item.renderer.name}</div>\n <div>\n <Typography use={\"caption\"}>\n {item.renderer.description}\n </Typography>\n </div>\n </>\n }\n />\n </div>\n ))}\n </React.Fragment>\n )}\n </RadioGroup>\n </Bind>\n </Cell>\n </Grid>\n );\n};\n\nexport default AppearanceTab;\n"],"mappings":"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"}
@@ -1,10 +1,3 @@
1
- import React from "react";
2
- import { CmsEditorField, CmsEditorFieldTypePlugin } from "../../../../types";
3
- import { FormRenderPropParams } from "@webiny/form/types";
4
- interface GeneralTabProps {
5
- field: CmsEditorField;
6
- form: FormRenderPropParams;
7
- fieldPlugin: CmsEditorFieldTypePlugin;
8
- }
9
- declare const GeneralTab: React.FC<GeneralTabProps>;
1
+ /// <reference types="react" />
2
+ declare const GeneralTab: () => JSX.Element;
10
3
  export default GeneralTab;
@@ -21,23 +21,28 @@ var _Grid = require("@webiny/ui/Grid");
21
21
 
22
22
  var _validation = require("@webiny/validation");
23
23
 
24
+ var _Tags = require("@webiny/ui/Tags");
25
+
26
+ var _form = require("@webiny/form");
27
+
24
28
  var _ = require("./..");
25
29
 
26
- var _useContentModelEditor = require("../../ContentModelEditor/useContentModelEditor");
30
+ var _hooks = require("../../../hooks");
31
+
32
+ var GeneralTab = function GeneralTab() {
33
+ var form = (0, _form.useForm)();
34
+
35
+ var _useModelField = (0, _hooks.useModelField)(),
36
+ field = _useModelField.field,
37
+ fieldPlugin = _useModelField.fieldPlugin;
27
38
 
28
- var GeneralTab = function GeneralTab(_ref) {
29
- var field = _ref.field,
30
- form = _ref.form,
31
- fieldPlugin = _ref.fieldPlugin;
32
- var Bind = form.Bind,
33
- setValue = form.setValue;
34
39
  var inputRef = (0, _react.useRef)(null);
35
40
 
36
- var _useContentModelEdito = (0, _useContentModelEditor.useContentModelEditor)(),
37
- contentModel = _useContentModelEdito.data;
41
+ var _useModelEditor = (0, _hooks.useModelEditor)(),
42
+ contentModel = _useModelEditor.data;
38
43
 
39
- var _useFieldEditor = (0, _.useFieldEditor)(),
40
- getField = _useFieldEditor.getField; // Had problems with auto-focusing the "label" field. A couple of comments on this.
44
+ var _useModelFieldEditor = (0, _.useModelFieldEditor)(),
45
+ getField = _useModelFieldEditor.getField; // Had problems with auto-focusing the "label" field. A couple of comments on this.
41
46
  // 1. It's probably caused by the Tabs component which wraps this component.
42
47
  // 2. It seems that the "autoFocus" prop on the Input doesn't work. I can't see it attached in the actual DOM.
43
48
  // 3. This works, but it's not 100%. Visually, the cursor is frozen, and that's probably caused by a bug / design
@@ -52,14 +57,15 @@ var GeneralTab = function GeneralTab(_ref) {
52
57
  }
53
58
 
54
59
  inputRef.current.focus();
55
- }, 200);
60
+ },
61
+ /* The value of 400 was determined by manual testing. */
62
+ 400);
56
63
  }, []);
57
64
  var afterChangeLabel = (0, _react.useCallback)(function (value) {
58
- setValue("fieldId", (0, _camelCase2.default)(value));
65
+ form.setValue("fieldId", (0, _camelCase2.default)(value));
59
66
  }, []);
60
67
  var beforeChangeFieldId = (0, _react.useCallback)(function (value, baseOnChange) {
61
- var newValue = value.trim();
62
- baseOnChange(newValue);
68
+ baseOnChange(value.trim());
63
69
  }, []);
64
70
  var fieldIdValidator = (0, _react.useCallback)(function (fieldId) {
65
71
  if (fieldId.trim().toLowerCase() !== "id") {
@@ -87,7 +93,6 @@ var GeneralTab = function GeneralTab(_ref) {
87
93
 
88
94
  if (typeof fieldPlugin.field.renderSettings === "function") {
89
95
  additionalSettings = fieldPlugin.field.renderSettings({
90
- form: form,
91
96
  afterChangeLabel: afterChangeLabel,
92
97
  uniqueFieldIdValidator: uniqueFieldIdValidator,
93
98
  contentModel: contentModel
@@ -99,7 +104,7 @@ var GeneralTab = function GeneralTab(_ref) {
99
104
  }, [field.fieldId]);
100
105
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
101
106
  span: 6
102
- }, /*#__PURE__*/_react.default.createElement(Bind, {
107
+ }, /*#__PURE__*/_react.default.createElement(_form.Bind, {
103
108
  name: "label",
104
109
  validators: _validation.validation.create("required"),
105
110
  afterChange: function afterChange(value) {
@@ -115,7 +120,7 @@ var GeneralTab = function GeneralTab(_ref) {
115
120
  "data-testid": "cms.editor.field.settings.general.label"
116
121
  }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
117
122
  span: 6
118
- }, /*#__PURE__*/_react.default.createElement(Bind, {
123
+ }, /*#__PURE__*/_react.default.createElement(_form.Bind, {
119
124
  name: "fieldId",
120
125
  validators: [_validation.validation.create("required"), uniqueFieldIdValidator, fieldIdValidator],
121
126
  beforeChange: beforeChangeFieldId
@@ -124,7 +129,7 @@ var GeneralTab = function GeneralTab(_ref) {
124
129
  "data-testid": "cms.editor.field.settings.general.label-".concat(field.id)
125
130
  }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
126
131
  span: 6
127
- }, /*#__PURE__*/_react.default.createElement(Bind, {
132
+ }, /*#__PURE__*/_react.default.createElement(_form.Bind, {
128
133
  name: "multipleValues"
129
134
  }, /*#__PURE__*/_react.default.createElement(_Switch.Switch, {
130
135
  label: fieldPlugin.field.multipleValuesLabel,
@@ -132,7 +137,7 @@ var GeneralTab = function GeneralTab(_ref) {
132
137
  "data-testid": "cms.editor.field.settings.general.switch-multiplevalues"
133
138
  }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
134
139
  span: 6
135
- }, /*#__PURE__*/_react.default.createElement(Bind, {
140
+ }, /*#__PURE__*/_react.default.createElement(_form.Bind, {
136
141
  name: "predefinedValues.enabled"
137
142
  }, /*#__PURE__*/_react.default.createElement(_Switch.Switch, {
138
143
  label: "Use predefined values",
@@ -140,12 +145,21 @@ var GeneralTab = function GeneralTab(_ref) {
140
145
  "data-testid": "cms.editor.field.settings.general.switch-predefinedvalues"
141
146
  }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
142
147
  span: 12
143
- }, /*#__PURE__*/_react.default.createElement(Bind, {
148
+ }, /*#__PURE__*/_react.default.createElement(_form.Bind, {
144
149
  name: "helpText"
145
150
  }, /*#__PURE__*/_react.default.createElement(_Input.Input, {
146
151
  label: "Help text",
147
152
  description: "Help text (optional)",
148
153
  "data-testid": "cms.editor.field.settings.general.helptext"
154
+ }))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
155
+ span: 12
156
+ }, /*#__PURE__*/_react.default.createElement(_form.Bind, {
157
+ name: "tags"
158
+ }, /*#__PURE__*/_react.default.createElement(_Tags.Tags, {
159
+ label: "Tags",
160
+ protectedTags: fieldPlugin.field.tags,
161
+ description: "Field tags (optional)",
162
+ "data-testid": "cms.editor.field.settings.general.tags"
149
163
  })))), additionalSettings);
150
164
  };
151
165