@webiny/app-headless-cms 5.34.8 → 5.35.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (693) hide show
  1. package/HeadlessCMS.js +8 -21
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntryForm/ContentEntryForm.js +11 -51
  4. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  5. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +0 -16
  6. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
  7. package/admin/components/ContentEntryForm/Fields.js +4 -11
  8. package/admin/components/ContentEntryForm/Fields.js.map +1 -1
  9. package/admin/components/ContentEntryForm/Label.js +0 -8
  10. package/admin/components/ContentEntryForm/Label.js.map +1 -1
  11. package/admin/components/ContentEntryForm/RenderFieldElement.js +2 -17
  12. package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
  13. package/admin/components/ContentEntryForm/functions/getValue.js +2 -8
  14. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
  15. package/admin/components/ContentEntryForm/functions/setValue.js +3 -9
  16. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
  17. package/admin/components/ContentEntryForm/useBind.js +9 -29
  18. package/admin/components/ContentEntryForm/useBind.js.map +1 -1
  19. package/admin/components/ContentEntryForm/useContentEntryForm.js +209 -330
  20. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
  21. package/admin/components/ContentEntryForm/useRenderPlugins.d.ts +1 -2
  22. package/admin/components/ContentEntryForm/useRenderPlugins.js +0 -3
  23. package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -1
  24. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js +103 -166
  25. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -1
  26. package/admin/components/ContentModelEditor/Editor.d.ts +4 -1
  27. package/admin/components/ContentModelEditor/Editor.js +7 -40
  28. package/admin/components/ContentModelEditor/Editor.js.map +1 -1
  29. package/admin/components/ContentModelEditor/FieldsSidebar.js +5 -17
  30. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
  31. package/admin/components/ContentModelEditor/Header.js +0 -8
  32. package/admin/components/ContentModelEditor/Header.js.map +1 -1
  33. package/admin/components/ContentModelEditor/PreviewTab.js +1 -16
  34. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
  35. package/admin/components/ContentModelEditor/index.js +0 -4
  36. package/admin/components/ContentModelEditor/index.js.map +1 -1
  37. package/admin/components/ContentModelEditor/useModelEditor.js +0 -6
  38. package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -1
  39. package/admin/components/DelayedOnChange.js +6 -31
  40. package/admin/components/DelayedOnChange.js.map +1 -1
  41. package/admin/components/Dialog.d.ts +5 -1
  42. package/admin/components/Dialog.js +1 -5
  43. package/admin/components/Dialog.js.map +1 -1
  44. package/admin/components/DragPreview.js +21 -39
  45. package/admin/components/DragPreview.js.map +1 -1
  46. package/admin/components/Draggable.js +28 -40
  47. package/admin/components/Draggable.js.map +1 -1
  48. package/admin/components/DropZone/Center.js +6 -19
  49. package/admin/components/DropZone/Center.js.map +1 -1
  50. package/admin/components/DropZone/Horizontal.js +5 -16
  51. package/admin/components/DropZone/Horizontal.js.map +1 -1
  52. package/admin/components/DropZone/Vertical.js +5 -15
  53. package/admin/components/DropZone/Vertical.js.map +1 -1
  54. package/admin/components/DropZone/index.js +0 -4
  55. package/admin/components/DropZone/index.js.map +1 -1
  56. package/admin/components/Droppable.js +27 -40
  57. package/admin/components/Droppable.js.map +1 -1
  58. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +3 -30
  59. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
  60. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +8 -36
  61. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
  62. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js +15 -40
  63. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
  64. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js +3 -11
  65. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -1
  66. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +10 -48
  67. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -1
  68. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js +2 -8
  69. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -1
  70. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js +3 -10
  71. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -1
  72. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js +4 -28
  73. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -1
  74. package/admin/components/FieldEditor/EditFieldDialog.js +16 -54
  75. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
  76. package/admin/components/FieldEditor/Field.js +251 -105
  77. package/admin/components/FieldEditor/Field.js.map +1 -1
  78. package/admin/components/FieldEditor/FieldEditor.js +15 -53
  79. package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
  80. package/admin/components/FieldEditor/FieldEditorContext.js +42 -102
  81. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
  82. package/admin/components/FieldEditor/Styled.d.ts +9 -3
  83. package/admin/components/FieldEditor/Styled.js +1 -5
  84. package/admin/components/FieldEditor/Styled.js.map +1 -1
  85. package/admin/components/FieldEditor/index.js +0 -2
  86. package/admin/components/FieldEditor/index.js.map +1 -1
  87. package/admin/components/FieldEditor/useModelFieldEditor.js +0 -5
  88. package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -1
  89. package/admin/components/FieldEditor/utils/deleteField.js +4 -13
  90. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
  91. package/admin/components/FieldEditor/utils/getFieldPosition.js +1 -6
  92. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
  93. package/admin/components/FieldEditor/utils/index.js +0 -5
  94. package/admin/components/FieldEditor/utils/index.js.map +1 -1
  95. package/admin/components/FieldEditor/utils/moveField.js +7 -17
  96. package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
  97. package/admin/components/FieldEditor/utils/moveRow.js +2 -7
  98. package/admin/components/FieldEditor/utils/moveRow.js.map +1 -1
  99. package/admin/components/IconPicker.js +18 -43
  100. package/admin/components/IconPicker.js.map +1 -1
  101. package/admin/components/ModelFieldProvider/ModelFieldContext.d.ts +1 -1
  102. package/admin/components/ModelFieldProvider/ModelFieldContext.js +1 -7
  103. package/admin/components/ModelFieldProvider/ModelFieldContext.js.map +1 -1
  104. package/admin/components/ModelFieldProvider/index.js +0 -4
  105. package/admin/components/ModelFieldProvider/index.js.map +1 -1
  106. package/admin/components/ModelFieldProvider/useModelField.d.ts +1 -1
  107. package/admin/components/ModelFieldProvider/useModelField.js +1 -10
  108. package/admin/components/ModelFieldProvider/useModelField.js.map +1 -1
  109. package/admin/components/ModelProvider/ModelContext.js +1 -7
  110. package/admin/components/ModelProvider/ModelContext.js.map +1 -1
  111. package/admin/components/ModelProvider/index.js +0 -4
  112. package/admin/components/ModelProvider/index.js.map +1 -1
  113. package/admin/components/ModelProvider/useModel.js +0 -5
  114. package/admin/components/ModelProvider/useModel.js.map +1 -1
  115. package/admin/constants/statusLabels.js +0 -6
  116. package/admin/constants/statusLabels.js.map +1 -1
  117. package/admin/contexts/Cms/NetworkError.js +0 -5
  118. package/admin/contexts/Cms/NetworkError.js.map +1 -1
  119. package/admin/contexts/Cms/index.js +29 -70
  120. package/admin/contexts/Cms/index.js.map +1 -1
  121. package/admin/elements/ContentGroupMenuElement.js +0 -11
  122. package/admin/elements/ContentGroupMenuElement.js.map +1 -1
  123. package/admin/elements/ContentModelMenuElement.js +0 -11
  124. package/admin/elements/ContentModelMenuElement.js.map +1 -1
  125. package/admin/elements/NothingToShowElement.js +0 -24
  126. package/admin/elements/NothingToShowElement.js.map +1 -1
  127. package/admin/graphql/contentEntries.js +24 -65
  128. package/admin/graphql/contentEntries.js.map +1 -1
  129. package/admin/graphql/contentModels.js +2 -8
  130. package/admin/graphql/contentModels.js.map +1 -1
  131. package/admin/graphql/createFieldsList.js +7 -10
  132. package/admin/graphql/createFieldsList.js.map +1 -1
  133. package/admin/hooks/index.d.ts +2 -0
  134. package/admin/hooks/index.js +25 -14
  135. package/admin/hooks/index.js.map +1 -1
  136. package/admin/hooks/useApolloClient.js +1 -6
  137. package/admin/hooks/useApolloClient.js.map +1 -1
  138. package/admin/hooks/useCms.js +0 -6
  139. package/admin/hooks/useCms.js.map +1 -1
  140. package/admin/hooks/useContentModels.d.ts +14 -0
  141. package/admin/hooks/useContentModels.js +40 -0
  142. package/admin/hooks/useContentModels.js.map +1 -0
  143. package/admin/hooks/useLazyQuery.js +1 -9
  144. package/admin/hooks/useLazyQuery.js.map +1 -1
  145. package/admin/hooks/useMutation.js +1 -9
  146. package/admin/hooks/useMutation.js.map +1 -1
  147. package/admin/hooks/usePermission.d.ts +2 -2
  148. package/admin/hooks/usePermission.js +9 -51
  149. package/admin/hooks/usePermission.js.map +1 -1
  150. package/admin/hooks/useQuery.js +1 -9
  151. package/admin/hooks/useQuery.js.map +1 -1
  152. package/admin/hooks/useQueryLocale.js +1 -9
  153. package/admin/hooks/useQueryLocale.js.map +1 -1
  154. package/admin/menus/CmsMenuLoader.js +5 -19
  155. package/admin/menus/CmsMenuLoader.js.map +1 -1
  156. package/admin/menus/ContentGroupsMenuItems.js +4 -25
  157. package/admin/menus/ContentGroupsMenuItems.js.map +1 -1
  158. package/admin/menus/GlobalSearchPlugins.js +5 -15
  159. package/admin/menus/GlobalSearchPlugins.js.map +1 -1
  160. package/admin/menus/NothingToShowElement.js +1 -8
  161. package/admin/menus/NothingToShowElement.js.map +1 -1
  162. package/admin/plugins/apiInformation/index.js +3 -14
  163. package/admin/plugins/apiInformation/index.js.map +1 -1
  164. package/admin/plugins/arrayUtils.js +2 -10
  165. package/admin/plugins/arrayUtils.js.map +1 -1
  166. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js +0 -14
  167. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -1
  168. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js +0 -14
  169. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -1
  170. package/admin/plugins/editor/defaultBar/BackButton.js +1 -11
  171. package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -1
  172. package/admin/plugins/editor/defaultBar/CreateContentButton.js +2 -19
  173. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
  174. package/admin/plugins/editor/defaultBar/Divider.d.ts +5 -2
  175. package/admin/plugins/editor/defaultBar/Divider.js +0 -3
  176. package/admin/plugins/editor/defaultBar/Divider.js.map +1 -1
  177. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +9 -36
  178. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  179. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js +3 -13
  180. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -1
  181. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.d.ts +8 -2
  182. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js +0 -7
  183. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -1
  184. package/admin/plugins/editor/defaultBar/FormSettings/index.js +0 -2
  185. package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -1
  186. package/admin/plugins/editor/defaultBar/Name/Name.js +11 -30
  187. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
  188. package/admin/plugins/editor/defaultBar/Name/NameStyled.d.ts +13 -4
  189. package/admin/plugins/editor/defaultBar/Name/NameStyled.js +0 -4
  190. package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -1
  191. package/admin/plugins/editor/defaultBar/Name/index.js +0 -1
  192. package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -1
  193. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js +24 -50
  194. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
  195. package/admin/plugins/editor/defaultBar/index.js +0 -9
  196. package/admin/plugins/editor/defaultBar/index.js.map +1 -1
  197. package/admin/plugins/editor/formSettings/components/GeneralSettings.d.ts +2 -2
  198. package/admin/plugins/editor/formSettings/components/GeneralSettings.js +22 -9
  199. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
  200. package/admin/plugins/editor/formSettings/components/GroupSelect.js +3 -14
  201. package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -1
  202. package/admin/plugins/editor/formSettings/index.js +0 -6
  203. package/admin/plugins/editor/formSettings/index.js.map +1 -1
  204. package/admin/plugins/entry/DefaultOnEntryDelete.js +93 -140
  205. package/admin/plugins/entry/DefaultOnEntryDelete.js.map +1 -1
  206. package/admin/plugins/entry/DefaultOnEntryPublish.js +70 -112
  207. package/admin/plugins/entry/DefaultOnEntryPublish.js.map +1 -1
  208. package/admin/plugins/fieldRenderers/Accordion.js +8 -21
  209. package/admin/plugins/fieldRenderers/Accordion.js.map +1 -1
  210. package/admin/plugins/fieldRenderers/DynamicSection.js +11 -28
  211. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
  212. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +1 -10
  213. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
  214. package/admin/plugins/fieldRenderers/boolean/index.d.ts +1 -1
  215. package/admin/plugins/fieldRenderers/boolean/index.js +0 -3
  216. package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -1
  217. package/admin/plugins/fieldRenderers/checkboxes.js +6 -17
  218. package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
  219. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js +20 -41
  220. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
  221. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +51 -97
  222. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
  223. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js +46 -85
  224. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
  225. package/admin/plugins/fieldRenderers/dateTime/Input.js +1 -10
  226. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
  227. package/admin/plugins/fieldRenderers/dateTime/Select.js +0 -5
  228. package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
  229. package/admin/plugins/fieldRenderers/dateTime/Time.js +19 -39
  230. package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -1
  231. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js +1 -14
  232. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
  233. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js +1 -21
  234. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
  235. package/admin/plugins/fieldRenderers/dateTime/index.d.ts +1 -1
  236. package/admin/plugins/fieldRenderers/dateTime/index.js +0 -4
  237. package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -1
  238. package/admin/plugins/fieldRenderers/dateTime/utils.js +2 -31
  239. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
  240. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.d.ts +3 -3
  241. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js +15 -37
  242. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -1
  243. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.d.ts +4 -4
  244. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +11 -36
  245. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -1
  246. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.d.ts +4 -4
  247. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js +3 -17
  248. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -1
  249. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.d.ts +2 -2
  250. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js +1 -10
  251. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js.map +1 -1
  252. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.d.ts +2 -2
  253. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js +2 -15
  254. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -1
  255. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.d.ts +2 -2
  256. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js +0 -5
  257. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -1
  258. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +4 -14
  259. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -1
  260. package/admin/plugins/fieldRenderers/file/File.js +6 -21
  261. package/admin/plugins/fieldRenderers/file/File.js.map +1 -1
  262. package/admin/plugins/fieldRenderers/file/fileField.js +3 -15
  263. package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -1
  264. package/admin/plugins/fieldRenderers/file/fileFields.js +6 -25
  265. package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
  266. package/admin/plugins/fieldRenderers/file/index.d.ts +1 -1
  267. package/admin/plugins/fieldRenderers/file/index.js +0 -4
  268. package/admin/plugins/fieldRenderers/file/index.js.map +1 -1
  269. package/admin/plugins/fieldRenderers/file/utils.js +1 -12
  270. package/admin/plugins/fieldRenderers/file/utils.js.map +1 -1
  271. package/admin/plugins/fieldRenderers/longText/index.d.ts +1 -1
  272. package/admin/plugins/fieldRenderers/longText/index.js +0 -4
  273. package/admin/plugins/fieldRenderers/longText/index.js.map +1 -1
  274. package/admin/plugins/fieldRenderers/longText/longText.js +1 -10
  275. package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
  276. package/admin/plugins/fieldRenderers/longText/longTexts.js +1 -12
  277. package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
  278. package/admin/plugins/fieldRenderers/number/index.d.ts +1 -1
  279. package/admin/plugins/fieldRenderers/number/index.js +0 -4
  280. package/admin/plugins/fieldRenderers/number/index.js.map +1 -1
  281. package/admin/plugins/fieldRenderers/number/numberInput.js +1 -10
  282. package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
  283. package/admin/plugins/fieldRenderers/number/numberInputs.js +1 -12
  284. package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
  285. package/admin/plugins/fieldRenderers/object/StyledComponents.d.ts +9 -3
  286. package/admin/plugins/fieldRenderers/object/StyledComponents.js +0 -4
  287. package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -1
  288. package/admin/plugins/fieldRenderers/object/index.d.ts +1 -1
  289. package/admin/plugins/fieldRenderers/object/index.js +0 -6
  290. package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
  291. package/admin/plugins/fieldRenderers/object/multipleObjects.js +12 -37
  292. package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -1
  293. package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js +12 -36
  294. package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js.map +1 -1
  295. package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js +2 -11
  296. package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js.map +1 -1
  297. package/admin/plugins/fieldRenderers/object/singleObjectInline.js +2 -14
  298. package/admin/plugins/fieldRenderers/object/singleObjectInline.js.map +1 -1
  299. package/admin/plugins/fieldRenderers/radioButtons.js +6 -17
  300. package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
  301. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.d.ts +8 -0
  302. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js +277 -0
  303. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js.map +1 -0
  304. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.d.ts +8 -0
  305. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js +181 -0
  306. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js.map +1 -0
  307. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.d.ts +9 -0
  308. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js +62 -0
  309. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js.map +1 -0
  310. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.d.ts +27 -0
  311. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js +153 -0
  312. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js.map +1 -0
  313. package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.d.ts +3 -0
  314. package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.js +37 -0
  315. package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.js.map +1 -0
  316. package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.d.ts +9 -0
  317. package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.js +142 -0
  318. package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.js.map +1 -0
  319. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.d.ts +9 -0
  320. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js +118 -0
  321. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js.map +1 -0
  322. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.d.ts +11 -0
  323. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js +183 -0
  324. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js.map +1 -0
  325. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.d.ts +7 -0
  326. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js +60 -0
  327. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js.map +1 -0
  328. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/add-circle.svg +1 -0
  329. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/down-arrow.svg +1 -0
  330. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/link.svg +1 -0
  331. package/admin/plugins/fieldRenderers/ref/advanced/components/assets/search.svg +1 -0
  332. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.d.ts +19 -0
  333. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.js +35 -0
  334. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.js.map +1 -0
  335. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.d.ts +8 -0
  336. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.js +90 -0
  337. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.js.map +1 -0
  338. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/assets/close.svg +3 -0
  339. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.d.ts +8 -0
  340. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js +64 -0
  341. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js.map +1 -0
  342. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.d.ts +8 -0
  343. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js +26 -0
  344. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js.map +1 -0
  345. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.d.ts +6 -0
  346. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js +31 -0
  347. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js.map +1 -0
  348. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.d.ts +9 -0
  349. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js +65 -0
  350. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js.map +1 -0
  351. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.d.ts +6 -0
  352. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js +25 -0
  353. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js.map +1 -0
  354. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.d.ts +8 -0
  355. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js +30 -0
  356. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js.map +1 -0
  357. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.d.ts +7 -0
  358. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.js +24 -0
  359. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.js.map +1 -0
  360. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.d.ts +7 -0
  361. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.js +24 -0
  362. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.js.map +1 -0
  363. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.d.ts +8 -0
  364. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js +44 -0
  365. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js.map +1 -0
  366. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.d.ts +9 -0
  367. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js +82 -0
  368. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js.map +1 -0
  369. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.d.ts +7 -0
  370. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js +32 -0
  371. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js.map +1 -0
  372. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.d.ts +6 -0
  373. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.js +24 -0
  374. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.js.map +1 -0
  375. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.d.ts +7 -0
  376. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js +22 -0
  377. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js.map +1 -0
  378. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-down.svg +3 -0
  379. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/move-up.svg +3 -0
  380. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/remove.svg +3 -0
  381. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/selected.svg +3 -0
  382. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-draft.svg +3 -0
  383. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-published.svg +3 -0
  384. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/status-unpublished.svg +3 -0
  385. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/assets/view.svg +3 -0
  386. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.d.ts +18 -0
  387. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js +84 -0
  388. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js.map +1 -0
  389. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.d.ts +8 -0
  390. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js +55 -0
  391. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js.map +1 -0
  392. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.d.ts +8 -0
  393. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js +98 -0
  394. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js.map +1 -0
  395. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.d.ts +2 -0
  396. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js +46 -0
  397. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js.map +1 -0
  398. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.d.ts +2 -0
  399. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js +45 -0
  400. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js.map +1 -0
  401. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.d.ts +44 -0
  402. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js +17 -0
  403. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js.map +1 -0
  404. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.d.ts +15 -0
  405. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js +187 -0
  406. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js.map +1 -0
  407. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.d.ts +12 -0
  408. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js +214 -0
  409. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js.map +1 -0
  410. package/admin/plugins/fieldRenderers/ref/advanced/index.d.ts +1 -0
  411. package/admin/plugins/fieldRenderers/ref/advanced/index.js +12 -0
  412. package/admin/plugins/fieldRenderers/ref/advanced/index.js.map +1 -0
  413. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +15 -46
  414. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
  415. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js +19 -46
  416. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
  417. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js +4 -17
  418. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js.map +1 -1
  419. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js +0 -15
  420. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -1
  421. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.d.ts +2 -2
  422. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js +15 -61
  423. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
  424. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js +1 -5
  425. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -1
  426. package/admin/plugins/fieldRenderers/ref/components/graphql.js +2 -7
  427. package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -1
  428. package/admin/plugins/fieldRenderers/ref/components/helpers.js +0 -12
  429. package/admin/plugins/fieldRenderers/ref/components/helpers.js.map +1 -1
  430. package/admin/plugins/fieldRenderers/ref/components/renderItem.js +0 -14
  431. package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -1
  432. package/admin/plugins/fieldRenderers/ref/components/types.d.ts +11 -1
  433. package/admin/plugins/fieldRenderers/ref/components/types.js.map +1 -1
  434. package/admin/plugins/fieldRenderers/ref/components/useReference.js +51 -99
  435. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
  436. package/admin/plugins/fieldRenderers/ref/components/useReferences.js +53 -83
  437. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
  438. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js +4 -20
  439. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
  440. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js +5 -17
  441. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -1
  442. package/admin/plugins/fieldRenderers/ref/index.d.ts +1 -1
  443. package/admin/plugins/fieldRenderers/ref/index.js +3 -5
  444. package/admin/plugins/fieldRenderers/ref/index.js.map +1 -1
  445. package/admin/plugins/fieldRenderers/ref/refInput.js +0 -9
  446. package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
  447. package/admin/plugins/fieldRenderers/ref/refInputs.js +0 -10
  448. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
  449. package/admin/plugins/fieldRenderers/richText/index.d.ts +1 -1
  450. package/admin/plugins/fieldRenderers/richText/index.js +0 -4
  451. package/admin/plugins/fieldRenderers/richText/index.js.map +1 -1
  452. package/admin/plugins/fieldRenderers/richText/richTextInput.js +1 -13
  453. package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
  454. package/admin/plugins/fieldRenderers/richText/richTextInputs.js +1 -18
  455. package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
  456. package/admin/plugins/fieldRenderers/select.js +2 -15
  457. package/admin/plugins/fieldRenderers/select.js.map +1 -1
  458. package/admin/plugins/fieldRenderers/text/index.d.ts +1 -1
  459. package/admin/plugins/fieldRenderers/text/index.js +0 -4
  460. package/admin/plugins/fieldRenderers/text/index.js.map +1 -1
  461. package/admin/plugins/fieldRenderers/text/textInput.js +1 -10
  462. package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
  463. package/admin/plugins/fieldRenderers/text/textInputs.js +1 -12
  464. package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
  465. package/admin/plugins/fieldValidators/date/availableValidators.js +0 -4
  466. package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -1
  467. package/admin/plugins/fieldValidators/date/createDateInputField.js +0 -10
  468. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
  469. package/admin/plugins/fieldValidators/dateGte.js +21 -48
  470. package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
  471. package/admin/plugins/fieldValidators/dateLte.js +21 -48
  472. package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
  473. package/admin/plugins/fieldValidators/dynamicZone.js +81 -133
  474. package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -1
  475. package/admin/plugins/fieldValidators/gte.js +14 -31
  476. package/admin/plugins/fieldValidators/gte.js.map +1 -1
  477. package/admin/plugins/fieldValidators/in.js +14 -31
  478. package/admin/plugins/fieldValidators/in.js.map +1 -1
  479. package/admin/plugins/fieldValidators/lte.js +14 -31
  480. package/admin/plugins/fieldValidators/lte.js.map +1 -1
  481. package/admin/plugins/fieldValidators/maxLength.js +14 -31
  482. package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
  483. package/admin/plugins/fieldValidators/minLength.js +14 -31
  484. package/admin/plugins/fieldValidators/minLength.js.map +1 -1
  485. package/admin/plugins/fieldValidators/pattern.js +31 -63
  486. package/admin/plugins/fieldValidators/pattern.js.map +1 -1
  487. package/admin/plugins/fieldValidators/patternPlugins/email.js.map +1 -1
  488. package/admin/plugins/fieldValidators/patternPlugins/lowerCase.js.map +1 -1
  489. package/admin/plugins/fieldValidators/patternPlugins/lowerCaseSpace.js.map +1 -1
  490. package/admin/plugins/fieldValidators/patternPlugins/upperCase.js.map +1 -1
  491. package/admin/plugins/fieldValidators/patternPlugins/upperCaseSpace.js.map +1 -1
  492. package/admin/plugins/fieldValidators/patternPlugins/url.js.map +1 -1
  493. package/admin/plugins/fieldValidators/required.js +0 -2
  494. package/admin/plugins/fieldValidators/required.js.map +1 -1
  495. package/admin/plugins/fieldValidators/unique.js +6 -16
  496. package/admin/plugins/fieldValidators/unique.js.map +1 -1
  497. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js +9 -31
  498. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
  499. package/admin/plugins/fields/boolean.js +0 -11
  500. package/admin/plugins/fields/boolean.js.map +1 -1
  501. package/admin/plugins/fields/dateTime.js +2 -19
  502. package/admin/plugins/fields/dateTime.js.map +1 -1
  503. package/admin/plugins/fields/dynamicZone/AddTemplate.d.ts +3 -3
  504. package/admin/plugins/fields/dynamicZone/AddTemplate.js +16 -39
  505. package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -1
  506. package/admin/plugins/fields/dynamicZone/DynamicZone.d.ts +2 -2
  507. package/admin/plugins/fields/dynamicZone/DynamicZone.js +2 -22
  508. package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -1
  509. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.d.ts +2 -2
  510. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js +12 -35
  511. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -1
  512. package/admin/plugins/fields/dynamicZone/TemplateDialog.d.ts +2 -2
  513. package/admin/plugins/fields/dynamicZone/TemplateDialog.js +5 -38
  514. package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -1
  515. package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -1
  516. package/admin/plugins/fields/dynamicZone.d.ts +2 -2
  517. package/admin/plugins/fields/dynamicZone.js +4 -18
  518. package/admin/plugins/fields/dynamicZone.js.map +1 -1
  519. package/admin/plugins/fields/file.js +0 -11
  520. package/admin/plugins/fields/file.js.map +1 -1
  521. package/admin/plugins/fields/longText.js +0 -11
  522. package/admin/plugins/fields/longText.js.map +1 -1
  523. package/admin/plugins/fields/number.js +0 -12
  524. package/admin/plugins/fields/number.js.map +1 -1
  525. package/admin/plugins/fields/object/ObjectFields.js +3 -13
  526. package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
  527. package/admin/plugins/fields/object.js +4 -11
  528. package/admin/plugins/fields/object.js.map +1 -1
  529. package/admin/plugins/fields/ref/graphql.d.ts +8 -0
  530. package/admin/plugins/fields/ref/graphql.js +12 -0
  531. package/admin/plugins/fields/ref/graphql.js.map +1 -0
  532. package/admin/plugins/fields/ref/renderInfo.d.ts +9 -0
  533. package/admin/plugins/fields/ref/renderInfo.js +116 -0
  534. package/admin/plugins/fields/ref/renderInfo.js.map +1 -0
  535. package/admin/plugins/fields/ref.js +27 -59
  536. package/admin/plugins/fields/ref.js.map +1 -1
  537. package/admin/plugins/fields/richText.js +0 -11
  538. package/admin/plugins/fields/richText.js.map +1 -1
  539. package/admin/plugins/fields/text.js +0 -12
  540. package/admin/plugins/fields/text.js.map +1 -1
  541. package/admin/plugins/getObjectId.js +0 -4
  542. package/admin/plugins/getObjectId.js.map +1 -1
  543. package/admin/plugins/icons.js +2 -12
  544. package/admin/plugins/icons.js.map +1 -1
  545. package/admin/plugins/index.d.ts +3 -3
  546. package/admin/plugins/index.js +0 -12
  547. package/admin/plugins/index.js.map +1 -1
  548. package/admin/plugins/install.js +22 -87
  549. package/admin/plugins/install.js.map +1 -1
  550. package/admin/plugins/permissionRenderer/CmsPermissions.js +18 -72
  551. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
  552. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +6 -24
  553. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  554. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +4 -19
  555. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -1
  556. package/admin/plugins/permissionRenderer/components/ContentModelList.js +5 -18
  557. package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -1
  558. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +9 -29
  559. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -1
  560. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js +2 -8
  561. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -1
  562. package/admin/plugins/permissionRenderer/components/PermissionSelector.js +11 -27
  563. package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -1
  564. package/admin/plugins/permissionRenderer/components/StyledComponents.d.ts +5 -2
  565. package/admin/plugins/permissionRenderer/components/StyledComponents.js +0 -3
  566. package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -1
  567. package/admin/plugins/permissionRenderer/components/useCmsData.d.ts +1 -0
  568. package/admin/plugins/permissionRenderer/components/useCmsData.js +60 -65
  569. package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -1
  570. package/admin/plugins/permissionRenderer/index.js +0 -6
  571. package/admin/plugins/permissionRenderer/index.js.map +1 -1
  572. package/admin/plugins/routes.js +3 -20
  573. package/admin/plugins/routes.js.map +1 -1
  574. package/admin/plugins/transformers/dateTransformer.js +5 -36
  575. package/admin/plugins/transformers/dateTransformer.js.map +1 -1
  576. package/admin/plugins/transformers/dynamicZoneTransformer.js +3 -12
  577. package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -1
  578. package/admin/plugins/transformers/index.js +0 -5
  579. package/admin/plugins/transformers/index.js.map +1 -1
  580. package/admin/plugins/transformers/numberTransformer.js +0 -3
  581. package/admin/plugins/transformers/numberTransformer.js.map +1 -1
  582. package/admin/plugins/welcomeScreenWidget.js +0 -6
  583. package/admin/plugins/welcomeScreenWidget.js.map +1 -1
  584. package/admin/views/contentEntries/ContentEntries.js +8 -88
  585. package/admin/views/contentEntries/ContentEntries.js.map +1 -1
  586. package/admin/views/contentEntries/ContentEntriesContainer.d.ts +4 -0
  587. package/admin/views/contentEntries/ContentEntriesContainer.js +65 -0
  588. package/admin/views/contentEntries/ContentEntriesContainer.js.map +1 -0
  589. package/admin/views/contentEntries/ContentEntriesContext.d.ts +1 -1
  590. package/admin/views/contentEntries/ContentEntriesContext.js +14 -39
  591. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  592. package/admin/views/contentEntries/ContentEntriesList.js +19 -54
  593. package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
  594. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +1 -1
  595. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +33 -79
  596. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  597. package/admin/views/contentEntries/ContentEntry/PublishEntryRevisionListItem.js +0 -12
  598. package/admin/views/contentEntries/ContentEntry/PublishEntryRevisionListItem.js.map +1 -1
  599. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +21 -61
  600. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
  601. package/admin/views/contentEntries/ContentEntry/RevisionsList.js +3 -19
  602. package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -1
  603. package/admin/views/contentEntries/ContentEntry/cache.js +10 -64
  604. package/admin/views/contentEntries/ContentEntry/cache.js.map +1 -1
  605. package/admin/views/contentEntries/ContentEntry/header/Header.js +0 -9
  606. package/admin/views/contentEntries/ContentEntry/header/Header.js.map +1 -1
  607. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js +48 -94
  608. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -1
  609. package/admin/views/contentEntries/ContentEntry/header/index.js +0 -8
  610. package/admin/views/contentEntries/ContentEntry/header/index.js.map +1 -1
  611. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js +5 -22
  612. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +1 -1
  613. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +30 -62
  614. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +1 -1
  615. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js +3 -17
  616. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +1 -1
  617. package/admin/views/contentEntries/ContentEntry/prepareFormData.js +2 -35
  618. package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
  619. package/admin/views/contentEntries/ContentEntry/useRevision.js +81 -146
  620. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
  621. package/admin/views/contentEntries/ContentEntry.js +9 -32
  622. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  623. package/admin/views/contentEntries/experiment/ContentEntriesModule.js +1 -13
  624. package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
  625. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js +0 -8
  626. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js.map +1 -1
  627. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.d.ts +2 -0
  628. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js +50 -74
  629. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js.map +1 -1
  630. package/admin/views/contentEntries/hooks/index.d.ts +3 -0
  631. package/admin/views/contentEntries/hooks/index.js +38 -0
  632. package/admin/views/contentEntries/hooks/index.js.map +1 -0
  633. package/admin/views/contentEntries/hooks/useContentEntries.js +0 -5
  634. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
  635. package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -1
  636. package/admin/views/contentEntries/hooks/useContentEntriesList.js +31 -54
  637. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
  638. package/admin/views/contentEntries/hooks/useContentEntry.js +0 -5
  639. package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -1
  640. package/admin/views/contentModelGroups/ContentModelGroups.js +2 -15
  641. package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -1
  642. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +66 -120
  643. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -1
  644. package/admin/views/contentModelGroups/ContentModelGroupsForm.js +72 -129
  645. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
  646. package/admin/views/contentModelGroups/graphql.js +1 -9
  647. package/admin/views/contentModelGroups/graphql.js.map +1 -1
  648. package/admin/views/contentModels/CloneContentModelDialog.d.ts +5 -6
  649. package/admin/views/contentModels/CloneContentModelDialog.js +120 -164
  650. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
  651. package/admin/views/contentModels/ContentModelEditor.js +3 -17
  652. package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
  653. package/admin/views/contentModels/ContentModels.js +10 -30
  654. package/admin/views/contentModels/ContentModels.js.map +1 -1
  655. package/admin/views/contentModels/ContentModelsDataList.js +105 -139
  656. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
  657. package/admin/views/contentModels/NewContentModelDialog.js +118 -221
  658. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  659. package/admin/views/contentModels/cache.js +5 -28
  660. package/admin/views/contentModels/cache.js.map +1 -1
  661. package/admin/views/contentModels/helpers/apiNameValidator.d.ts +8 -0
  662. package/admin/views/contentModels/helpers/apiNameValidator.js +116 -0
  663. package/admin/views/contentModels/helpers/apiNameValidator.js.map +1 -0
  664. package/admin/views/contentModels/helpers/nameValidator.d.ts +6 -0
  665. package/admin/views/contentModels/helpers/nameValidator.js +63 -0
  666. package/admin/views/contentModels/helpers/nameValidator.js.map +1 -0
  667. package/admin/views/utils.js +3 -9
  668. package/admin/views/utils.js.map +1 -1
  669. package/admin/viewsGraphql.js +7 -11
  670. package/admin/viewsGraphql.js.map +1 -1
  671. package/allPlugins.d.ts +3 -3
  672. package/allPlugins.js +0 -44
  673. package/allPlugins.js.map +1 -1
  674. package/index.js +0 -5
  675. package/index.js.map +1 -1
  676. package/package.json +27 -28
  677. package/types/index.d.ts +40 -18
  678. package/types/index.js +0 -6
  679. package/types/index.js.map +1 -1
  680. package/types/model.d.ts +10 -5
  681. package/types/model.js.map +1 -1
  682. package/types/shared.d.ts +1 -1
  683. package/types/shared.js.map +1 -1
  684. package/utils/CmsModelFieldValidatorConfigAdapter.js +0 -12
  685. package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -1
  686. package/utils/createTypeName.js +0 -5
  687. package/utils/createTypeName.js.map +1 -1
  688. package/utils/createValidators.js +40 -61
  689. package/utils/createValidators.js.map +1 -1
  690. package/utils/getFetchPolicy.js +0 -2
  691. package/utils/getFetchPolicy.js.map +1 -1
  692. package/utils/getModelTitleFieldId.js +0 -3
  693. package/utils/getModelTitleFieldId.js.map +1 -1
@@ -1,62 +1,35 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
4
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.default = void 0;
11
-
12
9
  var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
13
-
14
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
-
16
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
-
18
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
19
-
20
13
  var _react = _interopRequireWildcard(require("react"));
21
-
22
14
  var _emotion = require("emotion");
23
-
24
15
  var _styled = _interopRequireDefault(require("@emotion/styled"));
25
-
26
16
  var _Button = require("@webiny/ui/Button");
27
-
28
17
  var _Typography = require("@webiny/ui/Typography");
29
-
30
18
  var _edit = require("@material-design-icons/svg/outlined/edit.svg");
31
-
32
19
  var _delete = require("../../icons/delete.svg");
33
-
34
20
  var _title24px = require("../../icons/title-24px.svg");
35
-
36
21
  var _more_vert = require("../../icons/more_vert.svg");
37
-
38
22
  var _Menu = require("@webiny/ui/Menu");
39
-
40
23
  var _plugins = require("@webiny/plugins");
41
-
42
24
  var _List = require("@webiny/ui/List");
43
-
44
25
  var _Icon = require("@webiny/ui/Icon");
45
-
46
26
  var _i18n = require("@webiny/app/i18n");
47
-
48
27
  var _useSnackbar2 = require("@webiny/app-admin/hooks/useSnackbar");
49
-
50
28
  var _hooks = require("../../hooks");
51
-
52
29
  var _useModelFieldEditor2 = require("./useModelFieldEditor");
53
-
54
30
  var _appAdmin = require("@webiny/app-admin");
55
-
56
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
57
-
31
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
58
32
  var t = _i18n.i18n.ns("app-headless-cms/admin/components/editor/field");
59
-
60
33
  var FieldContainer = /*#__PURE__*/(0, _styled.default)("div", {
61
34
  target: "erv8xml0",
62
35
  label: "FieldContainer"
@@ -88,14 +61,30 @@ var Actions = /*#__PURE__*/(0, _styled.default)("div", {
88
61
  display: "flex",
89
62
  flexDirection: "row",
90
63
  alignItems: "right",
64
+ position: "relative",
91
65
  "> *": {
92
66
  flex: "1 100%"
93
67
  }
94
68
  });
69
+
70
+ /**
71
+ * TODO @sven to give correct values
72
+ */
73
+ var FieldTypeName = /*#__PURE__*/(0, _styled.default)("div", {
74
+ target: "erv8xml4",
75
+ label: "FieldTypeName"
76
+ })({
77
+ display: "flex",
78
+ flexDirection: "column",
79
+ textTransform: "uppercase",
80
+ color: "#938F99",
81
+ flex: "1",
82
+ textAlign: "right",
83
+ fontSize: "14px",
84
+ paddingRight: "10px"
85
+ });
95
86
  var menuStyles = /*#__PURE__*/(0, _emotion.css)({
96
- width: 220,
97
- right: -105,
98
- left: "auto !important",
87
+ width: "220px",
99
88
  ".disabled": {
100
89
  opacity: 0.5,
101
90
  pointerEvents: "none"
@@ -103,106 +92,255 @@ var menuStyles = /*#__PURE__*/(0, _emotion.css)({
103
92
  }, "label:menuStyles;");
104
93
  var FieldExtra = /*#__PURE__*/(0, _styled.default)("div", {
105
94
  label: "FieldExtra",
106
- target: "erv8xml4"
95
+ target: "erv8xml5"
107
96
  })("padding:10px 0 10px;:empty{display:none;}");
108
97
  var allowedTitleFieldTypes = ["text", "number"];
109
-
110
- var isFieldAllowedToBeTitle = function isFieldAllowedToBeTitle(field, parent) {
98
+ var isFieldAllowedToBeTitle = function isFieldAllowedToBeTitle(model, field, parent) {
111
99
  if (field.multipleValues || parent) {
112
100
  return false;
113
101
  } else if (allowedTitleFieldTypes.includes(field.type) === false) {
114
102
  return false;
103
+ } else if (model.titleFieldId === field.fieldId) {
104
+ return false;
115
105
  }
116
-
117
106
  return true;
118
107
  };
119
-
108
+ var isFieldAllowedToBeDescription = function isFieldAllowedToBeDescription(model, field, parent) {
109
+ if (field.multipleValues || parent) {
110
+ return false;
111
+ } else if (model.descriptionFieldId === field.fieldId) {
112
+ return false;
113
+ }
114
+ return field.type === "long-text";
115
+ };
116
+ var isFieldAllowedToBeImage = function isFieldAllowedToBeImage(model, field, parent) {
117
+ var _field$settings;
118
+ if (field.multipleValues || parent) {
119
+ return false;
120
+ } else if (model.imageFieldId === field.fieldId) {
121
+ return false;
122
+ }
123
+ return field.type === "file" && ((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.imagesOnly);
124
+ };
125
+ var getFieldTypeName = function getFieldTypeName(model, field, parent) {
126
+ if (parent) {
127
+ return null;
128
+ }
129
+ var isTitleField = field.fieldId === (model === null || model === void 0 ? void 0 : model.titleFieldId) && !parent;
130
+ var isDescriptionField = field.fieldId === (model === null || model === void 0 ? void 0 : model.descriptionFieldId) && !parent;
131
+ var isImageField = field.fieldId === (model === null || model === void 0 ? void 0 : model.imageFieldId) && !parent;
132
+ return [isTitleField ? "entry title" : null, isDescriptionField ? "entry description" : null, isImageField ? "entry image" : null].filter(Boolean).join("") || null;
133
+ };
120
134
  var Field = function Field(props) {
135
+ var _fieldPlugin$field;
121
136
  var field = props.field,
122
- onEdit = props.onEdit,
123
- parent = props.parent;
124
-
137
+ onEdit = props.onEdit,
138
+ parent = props.parent;
125
139
  var _useSnackbar = (0, _useSnackbar2.useSnackbar)(),
126
- showSnackbar = _useSnackbar.showSnackbar;
127
-
140
+ showSnackbar = _useSnackbar.showSnackbar;
128
141
  var _useModelEditor = (0, _hooks.useModelEditor)(),
129
- setData = _useModelEditor.setData,
130
- data = _useModelEditor.data;
131
-
142
+ setModel = _useModelEditor.setData,
143
+ model = _useModelEditor.data;
132
144
  var _useModelFieldEditor = (0, _useModelFieldEditor2.useModelFieldEditor)(),
133
- getFieldPlugin = _useModelFieldEditor.getFieldPlugin,
134
- getFieldRendererPlugin = _useModelFieldEditor.getFieldRendererPlugin;
135
-
145
+ getFieldPlugin = _useModelFieldEditor.getFieldPlugin,
146
+ getFieldRendererPlugin = _useModelFieldEditor.getFieldRendererPlugin;
136
147
  var _useConfirmationDialo = (0, _appAdmin.useConfirmationDialog)({
137
- title: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Warning - You are trying to delete a locked field!"]))),
138
- message: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("p", null, t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["You are about to delete a field which is used in the data storage"])))), /*#__PURE__*/_react.default.createElement("p", null, t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["All data in that field will be lost and there is no going back!"])))), /*#__PURE__*/_react.default.createElement("p", null, "\xA0"), /*#__PURE__*/_react.default.createElement("p", null, t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Are you sure you want to continue?"])))))
139
- }),
140
- showConfirmation = _useConfirmationDialo.showConfirmation;
141
-
142
- var lockedFields = data ? data.lockedFields || [] : [];
148
+ title: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Warning - You are trying to delete a locked field!"]))),
149
+ message: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("p", null, t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["You are about to delete a field which is used in the data storage"])))), /*#__PURE__*/_react.default.createElement("p", null, t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["All data in that field will be lost and there is no going back!"])))), /*#__PURE__*/_react.default.createElement("p", null, "\xA0"), /*#__PURE__*/_react.default.createElement("p", null, t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Are you sure you want to continue?"])))))
150
+ }),
151
+ showConfirmation = _useConfirmationDialo.showConfirmation;
152
+ var lockedFields = (model === null || model === void 0 ? void 0 : model.lockedFields) || [];
143
153
  var isLocked = lockedFields.some(function (lockedField) {
144
154
  return lockedField.fieldId === field.storageId;
145
155
  });
146
- var onDelete = (0, _react.useCallback)(function () {
147
- if (!isLocked) {
148
- props.onDelete(field);
149
- return;
150
- }
151
-
152
- showConfirmation(function () {
153
- props.onDelete(field);
154
- });
155
- }, [field.fieldId, lockedFields]);
156
- var setAsTitle = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
157
- var response;
156
+ var removeFieldFromSelected = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
158
157
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
159
- while (1) {
160
- switch (_context.prev = _context.next) {
161
- case 0:
162
- _context.next = 2;
163
- return setData(function (data) {
164
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
165
- titleFieldId: field.fieldId
166
- });
158
+ while (1) switch (_context.prev = _context.next) {
159
+ case 0:
160
+ if (!(model.titleFieldId === field.fieldId)) {
161
+ _context.next = 5;
162
+ break;
163
+ }
164
+ _context.next = 3;
165
+ return setModel(function (data) {
166
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
167
+ titleFieldId: null
167
168
  });
168
-
169
- case 2:
170
- response = _context.sent;
171
-
172
- if (!(response && response.error)) {
173
- _context.next = 5;
174
- break;
175
- }
176
-
177
- return _context.abrupt("return", showSnackbar(response.error.message));
178
-
179
- case 5:
180
- showSnackbar(t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Title field set successfully."]))));
181
-
182
- case 6:
183
- case "end":
184
- return _context.stop();
185
- }
169
+ });
170
+ case 3:
171
+ _context.next = 13;
172
+ break;
173
+ case 5:
174
+ if (!(model.descriptionFieldId === field.fieldId)) {
175
+ _context.next = 10;
176
+ break;
177
+ }
178
+ _context.next = 8;
179
+ return setModel(function (data) {
180
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
181
+ descriptionFieldId: null
182
+ });
183
+ });
184
+ case 8:
185
+ _context.next = 13;
186
+ break;
187
+ case 10:
188
+ if (!(model.imageFieldId === field.fieldId)) {
189
+ _context.next = 13;
190
+ break;
191
+ }
192
+ _context.next = 13;
193
+ return setModel(function (data) {
194
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
195
+ imageFieldId: null
196
+ });
197
+ });
198
+ case 13:
199
+ case "end":
200
+ return _context.stop();
186
201
  }
187
202
  }, _callee);
188
- })), [field.fieldId, setData]);
203
+ })), [field.id, setModel, model]);
204
+ var onDelete = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee3() {
205
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee3$(_context3) {
206
+ while (1) switch (_context3.prev = _context3.next) {
207
+ case 0:
208
+ if (isLocked) {
209
+ _context3.next = 5;
210
+ break;
211
+ }
212
+ _context3.next = 3;
213
+ return removeFieldFromSelected();
214
+ case 3:
215
+ props.onDelete(field);
216
+ return _context3.abrupt("return");
217
+ case 5:
218
+ showConfirmation( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2() {
219
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
220
+ while (1) switch (_context2.prev = _context2.next) {
221
+ case 0:
222
+ _context2.next = 2;
223
+ return removeFieldFromSelected();
224
+ case 2:
225
+ props.onDelete(field);
226
+ case 3:
227
+ case "end":
228
+ return _context2.stop();
229
+ }
230
+ }, _callee2);
231
+ })));
232
+ case 6:
233
+ case "end":
234
+ return _context3.stop();
235
+ }
236
+ }, _callee3);
237
+ })), [field.fieldId, lockedFields]);
238
+ var setAsTitle = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee4() {
239
+ var response;
240
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee4$(_context4) {
241
+ while (1) switch (_context4.prev = _context4.next) {
242
+ case 0:
243
+ _context4.next = 2;
244
+ return setModel(function (data) {
245
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
246
+ titleFieldId: field.fieldId
247
+ });
248
+ });
249
+ case 2:
250
+ response = _context4.sent;
251
+ if (!(response && response.error)) {
252
+ _context4.next = 5;
253
+ break;
254
+ }
255
+ return _context4.abrupt("return", showSnackbar(response.error.message));
256
+ case 5:
257
+ showSnackbar(t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Title field set successfully."]))));
258
+ case 6:
259
+ case "end":
260
+ return _context4.stop();
261
+ }
262
+ }, _callee4);
263
+ })), [field.fieldId, setModel]);
264
+ var setAsDescription = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee5() {
265
+ var response;
266
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee5$(_context5) {
267
+ while (1) switch (_context5.prev = _context5.next) {
268
+ case 0:
269
+ _context5.next = 2;
270
+ return setModel(function (data) {
271
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
272
+ descriptionFieldId: field.fieldId
273
+ });
274
+ });
275
+ case 2:
276
+ response = _context5.sent;
277
+ if (!(response && response.error)) {
278
+ _context5.next = 5;
279
+ break;
280
+ }
281
+ return _context5.abrupt("return", showSnackbar(response.error.message));
282
+ case 5:
283
+ showSnackbar(t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["Description field set successfully."]))));
284
+ case 6:
285
+ case "end":
286
+ return _context5.stop();
287
+ }
288
+ }, _callee5);
289
+ })), [field.fieldId, setModel]);
290
+ var setAsImage = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee6() {
291
+ var response;
292
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee6$(_context6) {
293
+ while (1) switch (_context6.prev = _context6.next) {
294
+ case 0:
295
+ _context6.next = 2;
296
+ return setModel(function (data) {
297
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
298
+ imageFieldId: field.fieldId
299
+ });
300
+ });
301
+ case 2:
302
+ response = _context6.sent;
303
+ if (!(response && response.error)) {
304
+ _context6.next = 5;
305
+ break;
306
+ }
307
+ return _context6.abrupt("return", showSnackbar(response.error.message));
308
+ case 5:
309
+ showSnackbar(t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Image field set successfully."]))));
310
+ case 6:
311
+ case "end":
312
+ return _context6.stop();
313
+ }
314
+ }, _callee6);
315
+ })), [field.fieldId, setModel]);
189
316
  var fieldPlugin = getFieldPlugin(field.type);
190
-
191
317
  var editorFieldOptionPlugins = _plugins.plugins.byType("cms-editor-field-option");
192
-
193
318
  if (!fieldPlugin) {
194
319
  return null;
195
320
  }
196
-
197
321
  var rendererPlugin = getFieldRendererPlugin(field.renderer.name);
198
322
  var canEdit = fieldPlugin.field.canEditSettings !== false;
199
- var isTitleField = data && field.fieldId === data.titleFieldId && !parent;
200
- var info = [rendererPlugin === null || rendererPlugin === void 0 ? void 0 : rendererPlugin.renderer.name, field.multipleValues ? "multiple values" : null, isTitleField ? "entry title" : null].filter(Boolean).join(", ");
323
+ var defaultInformationRenderer = (0, _react.useMemo)(function () {
324
+ var fieldTypeName = getFieldTypeName(model, field, parent);
325
+ var fn = function fn() {
326
+ if (!fieldTypeName) {
327
+ return null;
328
+ }
329
+ return /*#__PURE__*/_react.default.createElement(FieldTypeName, null, fieldTypeName);
330
+ };
331
+ fn.displayName = "FieldTypeRenderer";
332
+ return fn;
333
+ }, [field.id]);
334
+ var fieldInformationRenderer = (_fieldPlugin$field = fieldPlugin.field) === null || _fieldPlugin$field === void 0 ? void 0 : _fieldPlugin$field.renderInfo;
335
+ var info = [rendererPlugin === null || rendererPlugin === void 0 ? void 0 : rendererPlugin.renderer.name, field.multipleValues ? "multiple values" : null].filter(Boolean).join(", ");
201
336
  return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(FieldContainer, null, /*#__PURE__*/_react.default.createElement(Info, null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
202
337
  use: "subtitle1"
203
338
  }, field.label), /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
204
339
  use: "caption"
205
- }, fieldPlugin.field.label, " ", field.multipleValues && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement(LowerCase, null, "(", info, ")"))), /*#__PURE__*/_react.default.createElement(Actions, null, canEdit ? /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
340
+ }, fieldPlugin.field.label, info && /*#__PURE__*/_react.default.createElement(LowerCase, null, " (", info, ")"))), fieldInformationRenderer ? fieldInformationRenderer({
341
+ model: model,
342
+ field: field
343
+ }) : defaultInformationRenderer(), /*#__PURE__*/_react.default.createElement(Actions, null, canEdit ? /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
206
344
  "data-testid": "cms.editor.edit-field",
207
345
  icon: /*#__PURE__*/_react.default.createElement(_edit.ReactComponent, null),
208
346
  onClick: function onClick() {
@@ -218,21 +356,29 @@ var Field = function Field(props) {
218
356
  key: pl.name
219
357
  });
220
358
  }), /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
221
- disabled: !isFieldAllowedToBeTitle(field, parent),
359
+ disabled: !isFieldAllowedToBeTitle(model, field, parent),
222
360
  onClick: setAsTitle
223
361
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
224
362
  icon: /*#__PURE__*/_react.default.createElement(_title24px.ReactComponent, null)
225
- })), t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["Use as title"])))), /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
363
+ })), t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["Use as title"])))), /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
364
+ disabled: !isFieldAllowedToBeDescription(model, field, parent),
365
+ onClick: setAsDescription
366
+ }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
367
+ icon: /*#__PURE__*/_react.default.createElement(_title24px.ReactComponent, null)
368
+ })), t(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["Use as description"])))), /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
369
+ disabled: !isFieldAllowedToBeImage(model, field, parent),
370
+ onClick: setAsImage
371
+ }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
372
+ icon: /*#__PURE__*/_react.default.createElement(_title24px.ReactComponent, null)
373
+ })), t(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["Use as image"])))), /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
226
374
  onClick: onDelete
227
375
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
228
376
  icon: /*#__PURE__*/_react.default.createElement(_delete.ReactComponent, null)
229
- })), t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Delete"]))))))), /*#__PURE__*/_react.default.createElement(FieldExtra, null, fieldPlugin.field.render && fieldPlugin.field.render({
377
+ })), t(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["Delete"]))))))), /*#__PURE__*/_react.default.createElement(FieldExtra, null, fieldPlugin.field.render && fieldPlugin.field.render({
230
378
  field: field,
231
- data: data,
232
- setData: setData
379
+ data: model,
380
+ setData: setModel
233
381
  })));
234
382
  };
235
-
236
383
  var _default = /*#__PURE__*/_react.default.memo(Field);
237
-
238
384
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","FieldContainer","styled","display","flexDirection","justifyContent","alignItems","LowerCase","Info","flex","lineHeight","Actions","menuStyles","css","width","right","left","opacity","pointerEvents","FieldExtra","allowedTitleFieldTypes","isFieldAllowedToBeTitle","field","parent","multipleValues","includes","type","Field","props","onEdit","useSnackbar","showSnackbar","useModelEditor","setData","data","useModelFieldEditor","getFieldPlugin","getFieldRendererPlugin","useConfirmationDialog","title","message","showConfirmation","lockedFields","isLocked","some","lockedField","fieldId","storageId","onDelete","useCallback","setAsTitle","titleFieldId","response","error","fieldPlugin","editorFieldOptionPlugins","plugins","byType","rendererPlugin","renderer","name","canEdit","canEditSettings","isTitleField","info","filter","Boolean","join","label","map","pl","React","cloneElement","render","key","memo"],"sources":["Field.tsx"],"sourcesContent":["import React, { Fragment, useCallback } from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ReactComponent as EditIcon } from \"@material-design-icons/svg/outlined/edit.svg\";\nimport { ReactComponent as DeleteIcon } from \"~/admin/icons/delete.svg\";\nimport { ReactComponent as TitleIcon } from \"~/admin/icons/title-24px.svg\";\nimport { ReactComponent as MoreVerticalIcon } from \"~/admin/icons/more_vert.svg\";\nimport { Menu, MenuItem } from \"@webiny/ui/Menu\";\nimport { plugins } from \"@webiny/plugins\";\nimport { CmsModelField, CmsEditorFieldOptionPlugin } from \"~/types\";\nimport { ListItemGraphic } from \"@webiny/ui/List\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { useModelEditor } from \"~/admin/hooks\";\nimport { useModelFieldEditor } from \"~/admin/components/FieldEditor/useModelFieldEditor\";\nimport { useConfirmationDialog } from \"@webiny/app-admin\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/components/editor/field\");\n\nconst FieldContainer = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n alignItems: \"center\"\n});\n\nconst LowerCase = styled.span`\n text-transform: lowercase;\n`;\n\nconst Info = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"column\",\n \"> *\": {\n flex: \"1 100%\",\n lineHeight: \"150%\"\n }\n});\n\nconst Actions = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"row\",\n alignItems: \"right\",\n \"> *\": {\n flex: \"1 100%\"\n }\n});\n\nconst menuStyles = css({\n width: 220,\n right: -105,\n left: \"auto !important\",\n \".disabled\": {\n opacity: 0.5,\n pointerEvents: \"none\"\n }\n});\n\nconst FieldExtra = styled.div`\n padding: 10px 0 10px;\n :empty {\n display: none;\n }\n`;\n\nconst allowedTitleFieldTypes: string[] = [\"text\", \"number\"];\n\nconst isFieldAllowedToBeTitle = (field: CmsModelField, parent?: CmsModelField) => {\n if (field.multipleValues || parent) {\n return false;\n } else if (allowedTitleFieldTypes.includes(field.type) === false) {\n return false;\n }\n return true;\n};\n\nexport interface FieldProps {\n field: CmsModelField;\n onDelete: (field: CmsModelField) => void;\n onEdit: (field: CmsModelField) => void;\n parent?: CmsModelField;\n}\nconst Field: React.FC<FieldProps> = props => {\n const { field, onEdit, parent } = props;\n const { showSnackbar } = useSnackbar();\n const { setData, data } = useModelEditor();\n const { getFieldPlugin, getFieldRendererPlugin } = useModelFieldEditor();\n\n const { showConfirmation } = useConfirmationDialog({\n title: t`Warning - You are trying to delete a locked field!`,\n message: (\n <>\n <p>{t`You are about to delete a field which is used in the data storage`}</p>\n <p>{t`All data in that field will be lost and there is no going back!`}</p>\n <p>&nbsp;</p>\n <p>{t`Are you sure you want to continue?`}</p>\n </>\n )\n });\n const lockedFields = data ? data.lockedFields || [] : [];\n const isLocked = lockedFields.some(lockedField => lockedField.fieldId === field.storageId);\n\n const onDelete = useCallback(() => {\n if (!isLocked) {\n props.onDelete(field);\n return;\n }\n showConfirmation(() => {\n props.onDelete(field);\n });\n }, [field.fieldId, lockedFields]);\n\n const setAsTitle = useCallback(async (): Promise<void> => {\n const response = await setData(data => {\n return { ...data, titleFieldId: field.fieldId };\n });\n\n if (response && response.error) {\n return showSnackbar(response.error.message);\n }\n\n showSnackbar(t`Title field set successfully.`);\n }, [field.fieldId, setData]);\n\n const fieldPlugin = getFieldPlugin(field.type);\n const editorFieldOptionPlugins =\n plugins.byType<CmsEditorFieldOptionPlugin>(\"cms-editor-field-option\");\n\n if (!fieldPlugin) {\n return null;\n }\n\n const rendererPlugin = getFieldRendererPlugin(field.renderer.name);\n const canEdit = fieldPlugin.field.canEditSettings !== false;\n const isTitleField = data && field.fieldId === data.titleFieldId && !parent;\n\n const info = [\n rendererPlugin?.renderer.name,\n field.multipleValues ? \"multiple values\" : null,\n isTitleField ? \"entry title\" : null\n ]\n .filter(Boolean)\n .join(\", \");\n\n return (\n <Fragment>\n <FieldContainer>\n <Info>\n <Typography use={\"subtitle1\"}>{field.label}</Typography>\n <Typography use={\"caption\"}>\n {fieldPlugin.field.label} {field.multipleValues && <></>}\n <LowerCase>({info})</LowerCase>\n </Typography>\n </Info>\n <Actions>\n {canEdit ? (\n <IconButton\n data-testid={\"cms.editor.edit-field\"}\n icon={<EditIcon />}\n onClick={() => onEdit(field)}\n />\n ) : null}\n <Menu\n className={menuStyles}\n handle={<IconButton icon={<MoreVerticalIcon />} />}\n >\n {editorFieldOptionPlugins.map(pl =>\n React.cloneElement(pl.render(), { key: pl.name })\n )}\n {/* We only allow this action for top-level fields. */}\n <MenuItem\n disabled={!isFieldAllowedToBeTitle(field, parent)}\n onClick={setAsTitle}\n >\n <ListItemGraphic>\n <Icon icon={<TitleIcon />} />\n </ListItemGraphic>\n {t`Use as title`}\n </MenuItem>\n <MenuItem onClick={onDelete}>\n <ListItemGraphic>\n <Icon icon={<DeleteIcon />} />\n </ListItemGraphic>\n {t`Delete`}\n </MenuItem>\n </Menu>\n </Actions>\n </FieldContainer>\n <FieldExtra>\n {fieldPlugin.field.render && fieldPlugin.field.render({ field, data, setData })}\n </FieldExtra>\n </Fragment>\n );\n};\n\nexport default React.memo(Field);\n"],"mappings":"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"}
1
+ {"version":3,"names":["t","i18n","ns","FieldContainer","styled","display","flexDirection","justifyContent","alignItems","LowerCase","Info","flex","lineHeight","Actions","position","FieldTypeName","textTransform","color","textAlign","fontSize","paddingRight","menuStyles","css","width","opacity","pointerEvents","FieldExtra","allowedTitleFieldTypes","isFieldAllowedToBeTitle","model","field","parent","multipleValues","includes","type","titleFieldId","fieldId","isFieldAllowedToBeDescription","descriptionFieldId","isFieldAllowedToBeImage","imageFieldId","settings","imagesOnly","getFieldTypeName","isTitleField","isDescriptionField","isImageField","filter","Boolean","join","Field","props","onEdit","useSnackbar","showSnackbar","useModelEditor","setModel","setData","data","useModelFieldEditor","getFieldPlugin","getFieldRendererPlugin","useConfirmationDialog","title","message","showConfirmation","lockedFields","isLocked","some","lockedField","storageId","removeFieldFromSelected","useCallback","id","onDelete","setAsTitle","response","error","setAsDescription","setAsImage","fieldPlugin","editorFieldOptionPlugins","plugins","byType","rendererPlugin","renderer","name","canEdit","canEditSettings","defaultInformationRenderer","useMemo","fieldTypeName","fn","displayName","fieldInformationRenderer","renderInfo","info","label","map","pl","React","cloneElement","render","key","memo"],"sources":["Field.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useMemo } from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ReactComponent as EditIcon } from \"@material-design-icons/svg/outlined/edit.svg\";\nimport { ReactComponent as DeleteIcon } from \"~/admin/icons/delete.svg\";\nimport { ReactComponent as TitleIcon } from \"~/admin/icons/title-24px.svg\";\nimport { ReactComponent as MoreVerticalIcon } from \"~/admin/icons/more_vert.svg\";\nimport { Menu, MenuItem } from \"@webiny/ui/Menu\";\nimport { plugins } from \"@webiny/plugins\";\nimport { CmsModelField, CmsEditorFieldOptionPlugin, CmsModel } from \"~/types\";\nimport { ListItemGraphic } from \"@webiny/ui/List\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { useModelEditor } from \"~/admin/hooks\";\nimport { useModelFieldEditor } from \"~/admin/components/FieldEditor/useModelFieldEditor\";\nimport { useConfirmationDialog } from \"@webiny/app-admin\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/components/editor/field\");\n\nconst FieldContainer = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n alignItems: \"center\"\n});\n\nconst LowerCase = styled.span`\n text-transform: lowercase;\n`;\n\nconst Info = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"column\",\n \"> *\": {\n flex: \"1 100%\",\n lineHeight: \"150%\"\n }\n});\n\nconst Actions = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"row\",\n alignItems: \"right\",\n position: \"relative\",\n \"> *\": {\n flex: \"1 100%\"\n }\n});\n\n/**\n * TODO @sven to give correct values\n */\nconst FieldTypeName = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"column\",\n textTransform: \"uppercase\",\n color: \"#938F99\",\n flex: \"1\",\n textAlign: \"right\",\n fontSize: \"14px\",\n paddingRight: \"10px\"\n});\n\nconst menuStyles = css({\n width: \"220px\",\n \".disabled\": {\n opacity: 0.5,\n pointerEvents: \"none\"\n }\n});\n\nconst FieldExtra = styled.div`\n padding: 10px 0 10px;\n\n :empty {\n display: none;\n }\n`;\n\nconst allowedTitleFieldTypes: string[] = [\"text\", \"number\"];\n\nconst isFieldAllowedToBeTitle = (model: CmsModel, field: CmsModelField, parent?: CmsModelField) => {\n if (field.multipleValues || parent) {\n return false;\n } else if (allowedTitleFieldTypes.includes(field.type) === false) {\n return false;\n } else if (model.titleFieldId === field.fieldId) {\n return false;\n }\n return true;\n};\nconst isFieldAllowedToBeDescription = (\n model: CmsModel,\n field: CmsModelField,\n parent?: CmsModelField\n) => {\n if (field.multipleValues || parent) {\n return false;\n } else if (model.descriptionFieldId === field.fieldId) {\n return false;\n }\n return field.type === \"long-text\";\n};\n\nconst isFieldAllowedToBeImage = (model: CmsModel, field: CmsModelField, parent?: CmsModelField) => {\n if (field.multipleValues || parent) {\n return false;\n } else if (model.imageFieldId === field.fieldId) {\n return false;\n }\n return field.type === \"file\" && field.settings?.imagesOnly;\n};\n\nconst getFieldTypeName = (\n model: CmsModel,\n field: CmsModelField,\n parent?: CmsModelField\n): string | null => {\n if (parent) {\n return null;\n }\n const isTitleField = field.fieldId === model?.titleFieldId && !parent;\n const isDescriptionField = field.fieldId === model?.descriptionFieldId && !parent;\n const isImageField = field.fieldId === model?.imageFieldId && !parent;\n\n return (\n [\n isTitleField ? \"entry title\" : null,\n isDescriptionField ? \"entry description\" : null,\n isImageField ? \"entry image\" : null\n ]\n .filter(Boolean)\n .join(\"\") || null\n );\n};\n\nexport interface FieldProps {\n field: CmsModelField;\n onDelete: (field: CmsModelField) => void;\n onEdit: (field: CmsModelField) => void;\n parent?: CmsModelField;\n}\n\nconst Field: React.FC<FieldProps> = props => {\n const { field, onEdit, parent } = props;\n const { showSnackbar } = useSnackbar();\n const { setData: setModel, data: model } = useModelEditor();\n const { getFieldPlugin, getFieldRendererPlugin } = useModelFieldEditor();\n\n const { showConfirmation } = useConfirmationDialog({\n title: t`Warning - You are trying to delete a locked field!`,\n message: (\n <>\n <p>{t`You are about to delete a field which is used in the data storage`}</p>\n <p>{t`All data in that field will be lost and there is no going back!`}</p>\n <p>&nbsp;</p>\n <p>{t`Are you sure you want to continue?`}</p>\n </>\n )\n });\n const lockedFields = model?.lockedFields || [];\n const isLocked = lockedFields.some(lockedField => lockedField.fieldId === field.storageId);\n\n const removeFieldFromSelected = useCallback(async () => {\n if (model.titleFieldId === field.fieldId) {\n await setModel(data => {\n return {\n ...data,\n titleFieldId: null\n };\n });\n } else if (model.descriptionFieldId === field.fieldId) {\n await setModel(data => {\n return {\n ...data,\n descriptionFieldId: null\n };\n });\n } else if (model.imageFieldId === field.fieldId) {\n await setModel(data => {\n return {\n ...data,\n imageFieldId: null\n };\n });\n }\n }, [field.id, setModel, model]);\n\n const onDelete = useCallback(async () => {\n if (!isLocked) {\n await removeFieldFromSelected();\n props.onDelete(field);\n return;\n }\n showConfirmation(async () => {\n await removeFieldFromSelected();\n props.onDelete(field);\n });\n }, [field.fieldId, lockedFields]);\n\n const setAsTitle = useCallback(async (): Promise<void> => {\n const response = await setModel(data => {\n return { ...data, titleFieldId: field.fieldId };\n });\n\n if (response && response.error) {\n return showSnackbar(response.error.message);\n }\n\n showSnackbar(t`Title field set successfully.`);\n }, [field.fieldId, setModel]);\n\n const setAsDescription = useCallback(async (): Promise<void> => {\n const response = await setModel(data => {\n return { ...data, descriptionFieldId: field.fieldId };\n });\n\n if (response && response.error) {\n return showSnackbar(response.error.message);\n }\n\n showSnackbar(t`Description field set successfully.`);\n }, [field.fieldId, setModel]);\n\n const setAsImage = useCallback(async (): Promise<void> => {\n const response = await setModel(data => {\n return { ...data, imageFieldId: field.fieldId };\n });\n\n if (response && response.error) {\n return showSnackbar(response.error.message);\n }\n\n showSnackbar(t`Image field set successfully.`);\n }, [field.fieldId, setModel]);\n\n const fieldPlugin = getFieldPlugin(field.type);\n const editorFieldOptionPlugins =\n plugins.byType<CmsEditorFieldOptionPlugin>(\"cms-editor-field-option\");\n\n if (!fieldPlugin) {\n return null;\n }\n\n const rendererPlugin = getFieldRendererPlugin(field.renderer.name);\n const canEdit = fieldPlugin.field.canEditSettings !== false;\n\n const defaultInformationRenderer = useMemo(() => {\n const fieldTypeName = getFieldTypeName(model, field, parent);\n const fn = () => {\n if (!fieldTypeName) {\n return null;\n }\n return <FieldTypeName>{fieldTypeName}</FieldTypeName>;\n };\n\n fn.displayName = \"FieldTypeRenderer\";\n\n return fn;\n }, [field.id]);\n\n const fieldInformationRenderer = fieldPlugin.field?.renderInfo;\n\n const info = [rendererPlugin?.renderer.name, field.multipleValues ? \"multiple values\" : null]\n .filter(Boolean)\n .join(\", \");\n\n return (\n <Fragment>\n <FieldContainer>\n <Info>\n <Typography use={\"subtitle1\"}>{field.label}</Typography>\n <Typography use={\"caption\"}>\n {fieldPlugin.field.label}\n {info && <LowerCase> ({info})</LowerCase>}\n </Typography>\n </Info>\n {fieldInformationRenderer\n ? fieldInformationRenderer({ model, field })\n : defaultInformationRenderer()}\n <Actions>\n {canEdit ? (\n <IconButton\n data-testid={\"cms.editor.edit-field\"}\n icon={<EditIcon />}\n onClick={() => onEdit(field)}\n />\n ) : null}\n <Menu\n className={menuStyles}\n handle={<IconButton icon={<MoreVerticalIcon />} />}\n >\n {editorFieldOptionPlugins.map(pl =>\n React.cloneElement(pl.render(), { key: pl.name })\n )}\n {/* We only allow this action for top-level fields. */}\n <MenuItem\n disabled={!isFieldAllowedToBeTitle(model, field, parent)}\n onClick={setAsTitle}\n >\n <ListItemGraphic>\n <Icon icon={<TitleIcon />} />\n </ListItemGraphic>\n {t`Use as title`}\n </MenuItem>\n <MenuItem\n disabled={!isFieldAllowedToBeDescription(model, field, parent)}\n onClick={setAsDescription}\n >\n <ListItemGraphic>\n <Icon icon={<TitleIcon />} />\n </ListItemGraphic>\n {t`Use as description`}\n </MenuItem>\n <MenuItem\n disabled={!isFieldAllowedToBeImage(model, field, parent)}\n onClick={setAsImage}\n >\n <ListItemGraphic>\n <Icon icon={<TitleIcon />} />\n </ListItemGraphic>\n {t`Use as image`}\n </MenuItem>\n\n <MenuItem onClick={onDelete}>\n <ListItemGraphic>\n <Icon icon={<DeleteIcon />} />\n </ListItemGraphic>\n {t`Delete`}\n </MenuItem>\n </Menu>\n </Actions>\n </FieldContainer>\n <FieldExtra>\n {fieldPlugin.field.render &&\n fieldPlugin.field.render({ field, data: model, setData: setModel })}\n </FieldExtra>\n </Fragment>\n );\n};\n\nexport default React.memo(Field);\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAA0D;AAE1D,IAAMA,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,gDAAgD,CAAC;AAEnE,IAAMC,cAAc,oBAAGC,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EACjCC,OAAO,EAAE,MAAM;EACfC,aAAa,EAAE,KAAK;EACpBC,cAAc,EAAE,eAAe;EAC/BC,UAAU,EAAE;AAChB,CAAC,CAAC;AAEF,IAAMC,SAAS,oBAAGL,eAAM;EAAA;EAAA;AAAA,+BAEvB;AAED,IAAMM,IAAI,oBAAGN,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EACvBC,OAAO,EAAE,MAAM;EACfC,aAAa,EAAE,QAAQ;EACvB,KAAK,EAAE;IACHK,IAAI,EAAE,QAAQ;IACdC,UAAU,EAAE;EAChB;AACJ,CAAC,CAAC;AAEF,IAAMC,OAAO,oBAAGT,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EAC1BC,OAAO,EAAE,MAAM;EACfC,aAAa,EAAE,KAAK;EACpBE,UAAU,EAAE,OAAO;EACnBM,QAAQ,EAAE,UAAU;EACpB,KAAK,EAAE;IACHH,IAAI,EAAE;EACV;AACJ,CAAC,CAAC;;AAEF;AACA;AACA;AACA,IAAMI,aAAa,oBAAGX,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EAChCC,OAAO,EAAE,MAAM;EACfC,aAAa,EAAE,QAAQ;EACvBU,aAAa,EAAE,WAAW;EAC1BC,KAAK,EAAE,SAAS;EAChBN,IAAI,EAAE,GAAG;EACTO,SAAS,EAAE,OAAO;EAClBC,QAAQ,EAAE,MAAM;EAChBC,YAAY,EAAE;AAClB,CAAC,CAAC;AAEF,IAAMC,UAAU,gBAAG,IAAAC,YAAG,EAAC;EACnBC,KAAK,EAAE,OAAO;EACd,WAAW,EAAE;IACTC,OAAO,EAAE,GAAG;IACZC,aAAa,EAAE;EACnB;AACJ,CAAC,sBAAC;AAEF,IAAMC,UAAU,oBAAGtB,eAAM;EAAA;EAAA;AAAA,+CAMxB;AAED,IAAMuB,sBAAgC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC;AAE3D,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuB,CAAIC,KAAe,EAAEC,KAAoB,EAAEC,MAAsB,EAAK;EAC/F,IAAID,KAAK,CAACE,cAAc,IAAID,MAAM,EAAE;IAChC,OAAO,KAAK;EAChB,CAAC,MAAM,IAAIJ,sBAAsB,CAACM,QAAQ,CAACH,KAAK,CAACI,IAAI,CAAC,KAAK,KAAK,EAAE;IAC9D,OAAO,KAAK;EAChB,CAAC,MAAM,IAAIL,KAAK,CAACM,YAAY,KAAKL,KAAK,CAACM,OAAO,EAAE;IAC7C,OAAO,KAAK;EAChB;EACA,OAAO,IAAI;AACf,CAAC;AACD,IAAMC,6BAA6B,GAAG,SAAhCA,6BAA6B,CAC/BR,KAAe,EACfC,KAAoB,EACpBC,MAAsB,EACrB;EACD,IAAID,KAAK,CAACE,cAAc,IAAID,MAAM,EAAE;IAChC,OAAO,KAAK;EAChB,CAAC,MAAM,IAAIF,KAAK,CAACS,kBAAkB,KAAKR,KAAK,CAACM,OAAO,EAAE;IACnD,OAAO,KAAK;EAChB;EACA,OAAON,KAAK,CAACI,IAAI,KAAK,WAAW;AACrC,CAAC;AAED,IAAMK,uBAAuB,GAAG,SAA1BA,uBAAuB,CAAIV,KAAe,EAAEC,KAAoB,EAAEC,MAAsB,EAAK;EAAA;EAC/F,IAAID,KAAK,CAACE,cAAc,IAAID,MAAM,EAAE;IAChC,OAAO,KAAK;EAChB,CAAC,MAAM,IAAIF,KAAK,CAACW,YAAY,KAAKV,KAAK,CAACM,OAAO,EAAE;IAC7C,OAAO,KAAK;EAChB;EACA,OAAON,KAAK,CAACI,IAAI,KAAK,MAAM,wBAAIJ,KAAK,CAACW,QAAQ,oDAAd,gBAAgBC,UAAU;AAC9D,CAAC;AAED,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgB,CAClBd,KAAe,EACfC,KAAoB,EACpBC,MAAsB,EACN;EAChB,IAAIA,MAAM,EAAE;IACR,OAAO,IAAI;EACf;EACA,IAAMa,YAAY,GAAGd,KAAK,CAACM,OAAO,MAAKP,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEM,YAAY,KAAI,CAACJ,MAAM;EACrE,IAAMc,kBAAkB,GAAGf,KAAK,CAACM,OAAO,MAAKP,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAES,kBAAkB,KAAI,CAACP,MAAM;EACjF,IAAMe,YAAY,GAAGhB,KAAK,CAACM,OAAO,MAAKP,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEW,YAAY,KAAI,CAACT,MAAM;EAErE,OACI,CACIa,YAAY,GAAG,aAAa,GAAG,IAAI,EACnCC,kBAAkB,GAAG,mBAAmB,GAAG,IAAI,EAC/CC,YAAY,GAAG,aAAa,GAAG,IAAI,CACtC,CACIC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI;AAE7B,CAAC;AASD,IAAMC,KAA2B,GAAG,SAA9BA,KAA2B,CAAGC,KAAK,EAAI;EAAA;EACzC,IAAQrB,KAAK,GAAqBqB,KAAK,CAA/BrB,KAAK;IAAEsB,MAAM,GAAaD,KAAK,CAAxBC,MAAM;IAAErB,MAAM,GAAKoB,KAAK,CAAhBpB,MAAM;EAC7B,mBAAyB,IAAAsB,yBAAW,GAAE;IAA9BC,YAAY,gBAAZA,YAAY;EACpB,sBAA2C,IAAAC,qBAAc,GAAE;IAA1CC,QAAQ,mBAAjBC,OAAO;IAAkB5B,KAAK,mBAAX6B,IAAI;EAC/B,2BAAmD,IAAAC,yCAAmB,GAAE;IAAhEC,cAAc,wBAAdA,cAAc;IAAEC,sBAAsB,wBAAtBA,sBAAsB;EAE9C,4BAA6B,IAAAC,+BAAqB,EAAC;MAC/CC,KAAK,EAAE/D,CAAC,qIAAoD;MAC5DgE,OAAO,eACH,yEACI,wCAAIhE,CAAC,uJAAwE,eAC7E,wCAAIA,CAAC,qJAAsE,eAC3E,wCAAG,MAAM,CAAI,eACb,wCAAIA,CAAC,wHAAyC;IAG1D,CAAC,CAAC;IAVMiE,gBAAgB,yBAAhBA,gBAAgB;EAWxB,IAAMC,YAAY,GAAG,CAAArC,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEqC,YAAY,KAAI,EAAE;EAC9C,IAAMC,QAAQ,GAAGD,YAAY,CAACE,IAAI,CAAC,UAAAC,WAAW;IAAA,OAAIA,WAAW,CAACjC,OAAO,KAAKN,KAAK,CAACwC,SAAS;EAAA,EAAC;EAE1F,IAAMC,uBAAuB,GAAG,IAAAC,kBAAW,uGAAC;IAAA;MAAA;QAAA;UAAA,MACpC3C,KAAK,CAACM,YAAY,KAAKL,KAAK,CAACM,OAAO;YAAA;YAAA;UAAA;UAAA;UAAA,OAC9BoB,QAAQ,CAAC,UAAAE,IAAI,EAAI;YACnB,mEACOA,IAAI;cACPvB,YAAY,EAAE;YAAI;UAE1B,CAAC,CAAC;QAAA;UAAA;UAAA;QAAA;UAAA,MACKN,KAAK,CAACS,kBAAkB,KAAKR,KAAK,CAACM,OAAO;YAAA;YAAA;UAAA;UAAA;UAAA,OAC3CoB,QAAQ,CAAC,UAAAE,IAAI,EAAI;YACnB,mEACOA,IAAI;cACPpB,kBAAkB,EAAE;YAAI;UAEhC,CAAC,CAAC;QAAA;UAAA;UAAA;QAAA;UAAA,MACKT,KAAK,CAACW,YAAY,KAAKV,KAAK,CAACM,OAAO;YAAA;YAAA;UAAA;UAAA;UAAA,OACrCoB,QAAQ,CAAC,UAAAE,IAAI,EAAI;YACnB,mEACOA,IAAI;cACPlB,YAAY,EAAE;YAAI;UAE1B,CAAC,CAAC;QAAA;QAAA;UAAA;MAAA;IAAA;EAAA,CAET,IAAE,CAACV,KAAK,CAAC2C,EAAE,EAAEjB,QAAQ,EAAE3B,KAAK,CAAC,CAAC;EAE/B,IAAM6C,QAAQ,GAAG,IAAAF,kBAAW,uGAAC;IAAA;MAAA;QAAA;UAAA,IACpBL,QAAQ;YAAA;YAAA;UAAA;UAAA;UAAA,OACHI,uBAAuB,EAAE;QAAA;UAC/BpB,KAAK,CAACuB,QAAQ,CAAC5C,KAAK,CAAC;UAAC;QAAA;UAG1BmC,gBAAgB,sGAAC;YAAA;cAAA;gBAAA;kBAAA;kBAAA,OACPM,uBAAuB,EAAE;gBAAA;kBAC/BpB,KAAK,CAACuB,QAAQ,CAAC5C,KAAK,CAAC;gBAAC;gBAAA;kBAAA;cAAA;YAAA;UAAA,CACzB,GAAC;QAAC;QAAA;UAAA;MAAA;IAAA;EAAA,CACN,IAAE,CAACA,KAAK,CAACM,OAAO,EAAE8B,YAAY,CAAC,CAAC;EAEjC,IAAMS,UAAU,GAAG,IAAAH,kBAAW,uGAAC;IAAA;IAAA;MAAA;QAAA;UAAA;UAAA,OACJhB,QAAQ,CAAC,UAAAE,IAAI,EAAI;YACpC,mEAAYA,IAAI;cAAEvB,YAAY,EAAEL,KAAK,CAACM;YAAO;UACjD,CAAC,CAAC;QAAA;UAFIwC,QAAQ;UAAA,MAIVA,QAAQ,IAAIA,QAAQ,CAACC,KAAK;YAAA;YAAA;UAAA;UAAA,kCACnBvB,YAAY,CAACsB,QAAQ,CAACC,KAAK,CAACb,OAAO,CAAC;QAAA;UAG/CV,YAAY,CAACtD,CAAC,mHAAgC;QAAC;QAAA;UAAA;MAAA;IAAA;EAAA,CAClD,IAAE,CAAC8B,KAAK,CAACM,OAAO,EAAEoB,QAAQ,CAAC,CAAC;EAE7B,IAAMsB,gBAAgB,GAAG,IAAAN,kBAAW,uGAAC;IAAA;IAAA;MAAA;QAAA;UAAA;UAAA,OACVhB,QAAQ,CAAC,UAAAE,IAAI,EAAI;YACpC,mEAAYA,IAAI;cAAEpB,kBAAkB,EAAER,KAAK,CAACM;YAAO;UACvD,CAAC,CAAC;QAAA;UAFIwC,QAAQ;UAAA,MAIVA,QAAQ,IAAIA,QAAQ,CAACC,KAAK;YAAA;YAAA;UAAA;UAAA,kCACnBvB,YAAY,CAACsB,QAAQ,CAACC,KAAK,CAACb,OAAO,CAAC;QAAA;UAG/CV,YAAY,CAACtD,CAAC,yHAAsC;QAAC;QAAA;UAAA;MAAA;IAAA;EAAA,CACxD,IAAE,CAAC8B,KAAK,CAACM,OAAO,EAAEoB,QAAQ,CAAC,CAAC;EAE7B,IAAMuB,UAAU,GAAG,IAAAP,kBAAW,uGAAC;IAAA;IAAA;MAAA;QAAA;UAAA;UAAA,OACJhB,QAAQ,CAAC,UAAAE,IAAI,EAAI;YACpC,mEAAYA,IAAI;cAAElB,YAAY,EAAEV,KAAK,CAACM;YAAO;UACjD,CAAC,CAAC;QAAA;UAFIwC,QAAQ;UAAA,MAIVA,QAAQ,IAAIA,QAAQ,CAACC,KAAK;YAAA;YAAA;UAAA;UAAA,kCACnBvB,YAAY,CAACsB,QAAQ,CAACC,KAAK,CAACb,OAAO,CAAC;QAAA;UAG/CV,YAAY,CAACtD,CAAC,mHAAgC;QAAC;QAAA;UAAA;MAAA;IAAA;EAAA,CAClD,IAAE,CAAC8B,KAAK,CAACM,OAAO,EAAEoB,QAAQ,CAAC,CAAC;EAE7B,IAAMwB,WAAW,GAAGpB,cAAc,CAAC9B,KAAK,CAACI,IAAI,CAAC;EAC9C,IAAM+C,wBAAwB,GAC1BC,gBAAO,CAACC,MAAM,CAA6B,yBAAyB,CAAC;EAEzE,IAAI,CAACH,WAAW,EAAE;IACd,OAAO,IAAI;EACf;EAEA,IAAMI,cAAc,GAAGvB,sBAAsB,CAAC/B,KAAK,CAACuD,QAAQ,CAACC,IAAI,CAAC;EAClE,IAAMC,OAAO,GAAGP,WAAW,CAAClD,KAAK,CAAC0D,eAAe,KAAK,KAAK;EAE3D,IAAMC,0BAA0B,GAAG,IAAAC,cAAO,EAAC,YAAM;IAC7C,IAAMC,aAAa,GAAGhD,gBAAgB,CAACd,KAAK,EAAEC,KAAK,EAAEC,MAAM,CAAC;IAC5D,IAAM6D,EAAE,GAAG,SAALA,EAAE,GAAS;MACb,IAAI,CAACD,aAAa,EAAE;QAChB,OAAO,IAAI;MACf;MACA,oBAAO,6BAAC,aAAa,QAAEA,aAAa,CAAiB;IACzD,CAAC;IAEDC,EAAE,CAACC,WAAW,GAAG,mBAAmB;IAEpC,OAAOD,EAAE;EACb,CAAC,EAAE,CAAC9D,KAAK,CAAC2C,EAAE,CAAC,CAAC;EAEd,IAAMqB,wBAAwB,yBAAGd,WAAW,CAAClD,KAAK,uDAAjB,mBAAmBiE,UAAU;EAE9D,IAAMC,IAAI,GAAG,CAACZ,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEC,QAAQ,CAACC,IAAI,EAAExD,KAAK,CAACE,cAAc,GAAG,iBAAiB,GAAG,IAAI,CAAC,CACxFe,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,IAAI,CAAC;EAEf,oBACI,6BAAC,eAAQ,qBACL,6BAAC,cAAc,qBACX,6BAAC,IAAI,qBACD,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAY,GAAEnB,KAAK,CAACmE,KAAK,CAAc,eACxD,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAU,GACtBjB,WAAW,CAAClD,KAAK,CAACmE,KAAK,EACvBD,IAAI,iBAAI,6BAAC,SAAS,QAAC,IAAE,EAACA,IAAI,EAAC,GAAC,CAAY,CAChC,CACV,EACNF,wBAAwB,GACnBA,wBAAwB,CAAC;IAAEjE,KAAK,EAALA,KAAK;IAAEC,KAAK,EAALA;EAAM,CAAC,CAAC,GAC1C2D,0BAA0B,EAAE,eAClC,6BAAC,OAAO,QACHF,OAAO,gBACJ,6BAAC,kBAAU;IACP,eAAa,uBAAwB;IACrC,IAAI,eAAE,6BAAC,oBAAQ,OAAI;IACnB,OAAO,EAAE;MAAA,OAAMnC,MAAM,CAACtB,KAAK,CAAC;IAAA;EAAC,EAC/B,GACF,IAAI,eACR,6BAAC,UAAI;IACD,SAAS,EAAET,UAAW;IACtB,MAAM,eAAE,6BAAC,kBAAU;MAAC,IAAI,eAAE,6BAAC,yBAAgB;IAAI;EAAI,GAElD4D,wBAAwB,CAACiB,GAAG,CAAC,UAAAC,EAAE;IAAA,oBAC5BC,cAAK,CAACC,YAAY,CAACF,EAAE,CAACG,MAAM,EAAE,EAAE;MAAEC,GAAG,EAAEJ,EAAE,CAACb;IAAK,CAAC,CAAC;EAAA,EACpD,eAED,6BAAC,cAAQ;IACL,QAAQ,EAAE,CAAC1D,uBAAuB,CAACC,KAAK,EAAEC,KAAK,EAAEC,MAAM,CAAE;IACzD,OAAO,EAAE4C;EAAW,gBAEpB,6BAAC,qBAAe,qBACZ,6BAAC,UAAI;IAAC,IAAI,eAAE,6BAAC,yBAAS;EAAI,EAAG,CACf,EACjB3E,CAAC,kGACK,eACX,6BAAC,cAAQ;IACL,QAAQ,EAAE,CAACqC,6BAA6B,CAACR,KAAK,EAAEC,KAAK,EAAEC,MAAM,CAAE;IAC/D,OAAO,EAAE+C;EAAiB,gBAE1B,6BAAC,qBAAe,qBACZ,6BAAC,UAAI;IAAC,IAAI,eAAE,6BAAC,yBAAS;EAAI,EAAG,CACf,EACjB9E,CAAC,wGACK,eACX,6BAAC,cAAQ;IACL,QAAQ,EAAE,CAACuC,uBAAuB,CAACV,KAAK,EAAEC,KAAK,EAAEC,MAAM,CAAE;IACzD,OAAO,EAAEgD;EAAW,gBAEpB,6BAAC,qBAAe,qBACZ,6BAAC,UAAI;IAAC,IAAI,eAAE,6BAAC,yBAAS;EAAI,EAAG,CACf,EACjB/E,CAAC,oGACK,eAEX,6BAAC,cAAQ;IAAC,OAAO,EAAE0E;EAAS,gBACxB,6BAAC,qBAAe,qBACZ,6BAAC,UAAI;IAAC,IAAI,eAAE,6BAAC,sBAAU;EAAI,EAAG,CAChB,EACjB1E,CAAC,8FACK,CACR,CACD,CACG,eACjB,6BAAC,UAAU,QACNgF,WAAW,CAAClD,KAAK,CAACwE,MAAM,IACrBtB,WAAW,CAAClD,KAAK,CAACwE,MAAM,CAAC;IAAExE,KAAK,EAALA,KAAK;IAAE4B,IAAI,EAAE7B,KAAK;IAAE4B,OAAO,EAAED;EAAS,CAAC,CAAC,CAC9D,CACN;AAEnB,CAAC;AAAC,4BAEa4C,cAAK,CAACI,IAAI,CAACtD,KAAK,CAAC;AAAA"}