@webiny/app-headless-cms 5.36.2 → 5.37.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (675) hide show
  1. package/HeadlessCMS.js +3 -2
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntries/Empty/index.d.ts +9 -0
  4. package/admin/components/ContentEntries/Empty/index.js +42 -0
  5. package/admin/components/ContentEntries/Empty/index.js.map +1 -0
  6. package/admin/components/ContentEntries/Empty/styled.d.ts +14 -0
  7. package/admin/components/ContentEntries/Empty/styled.js +19 -0
  8. package/admin/components/ContentEntries/Empty/styled.js.map +1 -0
  9. package/admin/components/ContentEntries/Filters/FilterByStatus.d.ts +2 -0
  10. package/admin/components/ContentEntries/Filters/FilterByStatus.js +54 -0
  11. package/admin/components/ContentEntries/Filters/FilterByStatus.js.map +1 -0
  12. package/admin/components/ContentEntries/Filters/Filters.d.ts +2 -0
  13. package/admin/components/ContentEntries/Filters/Filters.js +32 -0
  14. package/admin/components/ContentEntries/Filters/Filters.js.map +1 -0
  15. package/admin/components/ContentEntries/Filters/index.d.ts +2 -0
  16. package/admin/components/ContentEntries/Filters/index.js +27 -0
  17. package/admin/components/ContentEntries/Filters/index.js.map +1 -0
  18. package/admin/components/ContentEntries/Filters/styles.d.ts +15 -0
  19. package/admin/components/ContentEntries/Filters/styles.js +23 -0
  20. package/admin/components/ContentEntries/Filters/styles.js.map +1 -0
  21. package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.d.ts +2 -0
  22. package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.js +41 -0
  23. package/admin/components/ContentEntries/Header/ButtonFilters/ButtonFilters.js.map +1 -0
  24. package/admin/components/ContentEntries/Header/ButtonFilters/index.d.ts +1 -0
  25. package/admin/components/ContentEntries/Header/ButtonFilters/index.js +16 -0
  26. package/admin/components/ContentEntries/Header/ButtonFilters/index.js.map +1 -0
  27. package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.d.ts +7 -0
  28. package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.js +34 -0
  29. package/admin/components/ContentEntries/Header/ButtonsCreate/ButtonsCreate.js.map +1 -0
  30. package/admin/components/ContentEntries/Header/ButtonsCreate/index.d.ts +1 -0
  31. package/admin/components/ContentEntries/Header/ButtonsCreate/index.js +16 -0
  32. package/admin/components/ContentEntries/Header/ButtonsCreate/index.js.map +1 -0
  33. package/admin/components/ContentEntries/Header/ButtonsCreate/styled.d.ts +7 -0
  34. package/admin/components/ContentEntries/Header/ButtonsCreate/styled.js +13 -0
  35. package/admin/components/ContentEntries/Header/ButtonsCreate/styled.js.map +1 -0
  36. package/admin/components/ContentEntries/Header/Header.d.ts +11 -0
  37. package/admin/components/ContentEntries/Header/Header.js +41 -0
  38. package/admin/components/ContentEntries/Header/Header.js.map +1 -0
  39. package/admin/components/ContentEntries/Header/Title/Title.d.ts +6 -0
  40. package/admin/components/ContentEntries/Header/Title/Title.js +20 -0
  41. package/admin/components/ContentEntries/Header/Title/Title.js.map +1 -0
  42. package/admin/components/ContentEntries/Header/Title/index.d.ts +1 -0
  43. package/admin/components/ContentEntries/Header/Title/index.js +16 -0
  44. package/admin/components/ContentEntries/Header/Title/index.js.map +1 -0
  45. package/admin/components/ContentEntries/Header/Title/styled.d.ts +7 -0
  46. package/admin/components/ContentEntries/Header/Title/styled.js +14 -0
  47. package/admin/components/ContentEntries/Header/Title/styled.js.map +1 -0
  48. package/admin/components/ContentEntries/Header/index.d.ts +1 -0
  49. package/admin/components/ContentEntries/Header/index.js +16 -0
  50. package/admin/components/ContentEntries/Header/index.js.map +1 -0
  51. package/admin/components/ContentEntries/Header/styled.d.ts +11 -0
  52. package/admin/components/ContentEntries/Header/styled.js +18 -0
  53. package/admin/components/ContentEntries/Header/styled.js.map +1 -0
  54. package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.d.ts +10 -0
  55. package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.js +30 -0
  56. package/admin/components/ContentEntries/LoadMoreButton/LoadMoreButton.js.map +1 -0
  57. package/admin/components/ContentEntries/LoadMoreButton/index.d.ts +1 -0
  58. package/admin/components/ContentEntries/LoadMoreButton/index.js +16 -0
  59. package/admin/components/ContentEntries/LoadMoreButton/index.js.map +1 -0
  60. package/admin/components/ContentEntries/LoadMoreButton/styled.d.ts +7 -0
  61. package/admin/components/ContentEntries/LoadMoreButton/styled.js +13 -0
  62. package/admin/components/ContentEntries/LoadMoreButton/styled.js.map +1 -0
  63. package/admin/components/ContentEntries/LoadingMore/index.d.ts +2 -0
  64. package/admin/components/ContentEntries/LoadingMore/index.js +23 -0
  65. package/admin/components/ContentEntries/LoadingMore/index.js.map +1 -0
  66. package/admin/components/ContentEntries/LoadingMore/styled.d.ts +11 -0
  67. package/admin/components/ContentEntries/LoadingMore/styled.js +18 -0
  68. package/admin/components/ContentEntries/LoadingMore/styled.js.map +1 -0
  69. package/admin/components/ContentEntries/Table/Row/Folder/FolderActionDelete.d.ts +6 -0
  70. package/admin/components/ContentEntries/Table/Row/Folder/FolderActionDelete.js +25 -0
  71. package/admin/components/ContentEntries/Table/Row/Folder/FolderActionDelete.js.map +1 -0
  72. package/admin/components/ContentEntries/Table/Row/Folder/FolderActionEdit.d.ts +6 -0
  73. package/admin/components/ContentEntries/Table/Row/Folder/FolderActionEdit.js +25 -0
  74. package/admin/components/ContentEntries/Table/Row/Folder/FolderActionEdit.js.map +1 -0
  75. package/admin/components/ContentEntries/Table/Row/Name.d.ts +12 -0
  76. package/admin/components/ContentEntries/Table/Row/Name.js +49 -0
  77. package/admin/components/ContentEntries/Table/Row/Name.js.map +1 -0
  78. package/admin/components/ContentEntries/Table/Row/Record/RecordActionDelete.d.ts +7 -0
  79. package/admin/{views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js → components/ContentEntries/Table/Row/Record/RecordActionDelete.js} +45 -72
  80. package/admin/components/ContentEntries/Table/Row/Record/RecordActionDelete.js.map +1 -0
  81. package/admin/components/ContentEntries/Table/Row/Record/RecordActionEdit.d.ts +11 -0
  82. package/admin/components/ContentEntries/Table/Row/Record/RecordActionEdit.js +30 -0
  83. package/admin/components/ContentEntries/Table/Row/Record/RecordActionEdit.js.map +1 -0
  84. package/admin/components/ContentEntries/Table/Row/Record/RecordActionMove.d.ts +6 -0
  85. package/admin/components/ContentEntries/Table/Row/Record/RecordActionMove.js +25 -0
  86. package/admin/components/ContentEntries/Table/Row/Record/RecordActionMove.js.map +1 -0
  87. package/admin/components/ContentEntries/Table/Row/Record/RecordActionPublish.d.ts +17 -0
  88. package/admin/components/ContentEntries/Table/Row/Record/RecordActionPublish.js +94 -0
  89. package/admin/components/ContentEntries/Table/Row/Record/RecordActionPublish.js.map +1 -0
  90. package/admin/components/ContentEntries/Table/index.d.ts +13 -0
  91. package/admin/components/ContentEntries/Table/index.js +235 -0
  92. package/admin/components/ContentEntries/Table/index.js.map +1 -0
  93. package/admin/components/ContentEntries/Table/styled.d.ts +4 -0
  94. package/admin/components/ContentEntries/Table/styled.js +17 -0
  95. package/admin/components/ContentEntries/Table/styled.js.map +1 -0
  96. package/admin/components/ContentEntries/Table/types.d.ts +24 -0
  97. package/admin/components/ContentEntries/Table/types.js.map +1 -0
  98. package/admin/components/ContentEntryForm/ContentEntryForm.js +2 -2
  99. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  100. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +2 -2
  101. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
  102. package/admin/components/ContentEntryForm/Fields.js +2 -2
  103. package/admin/components/ContentEntryForm/Fields.js.map +1 -1
  104. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.d.ts +2 -0
  105. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.js +20 -0
  106. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.js.map +1 -0
  107. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.styles.d.ts +7 -0
  108. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.styles.js +13 -0
  109. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/ContentFormOptionsMenu.styles.js.map +1 -0
  110. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.d.ts +1 -0
  111. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.js +16 -0
  112. package/admin/components/ContentEntryForm/Header/ContentFormOptionsMenu/index.js.map +1 -0
  113. package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.d.ts +2 -0
  114. package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js +46 -0
  115. package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js.map +1 -0
  116. package/admin/components/ContentEntryForm/Header/DeleteEntry/index.d.ts +1 -0
  117. package/admin/components/ContentEntryForm/Header/DeleteEntry/index.js +16 -0
  118. package/admin/components/ContentEntryForm/Header/DeleteEntry/index.js.map +1 -0
  119. package/admin/components/ContentEntryForm/Header/DeleteEntry/useDeleteEntry.d.ts +9 -0
  120. package/admin/components/ContentEntryForm/Header/DeleteEntry/useDeleteEntry.js +85 -0
  121. package/admin/components/ContentEntryForm/Header/DeleteEntry/useDeleteEntry.js.map +1 -0
  122. package/admin/components/ContentEntryForm/Header/Header.d.ts +2 -0
  123. package/admin/{views/contentEntries/ContentEntry/header → components/ContentEntryForm/Header}/Header.js +13 -7
  124. package/admin/components/ContentEntryForm/Header/Header.js.map +1 -0
  125. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.d.ts +2 -0
  126. package/admin/{views/contentEntries/ContentEntry/header/revisionSelector → components/ContentEntryForm/Header/RevisionSelector}/RevisionSelector.js +14 -33
  127. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.js.map +1 -0
  128. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.styles.d.ts +36 -0
  129. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.styles.js +20 -0
  130. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.styles.js.map +1 -0
  131. package/admin/components/ContentEntryForm/Header/RevisionSelector/index.d.ts +1 -0
  132. package/admin/components/ContentEntryForm/Header/RevisionSelector/index.js +16 -0
  133. package/admin/components/ContentEntryForm/Header/RevisionSelector/index.js.map +1 -0
  134. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/SaveAndPublishContent.js +35 -0
  135. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/SaveAndPublishContent.js.map +1 -0
  136. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.d.ts +1 -0
  137. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.js +16 -0
  138. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/index.js.map +1 -0
  139. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/useSaveAndPublish.d.ts +11 -0
  140. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/useSaveAndPublish.js +68 -0
  141. package/admin/components/ContentEntryForm/Header/SaveAndPublishContent/useSaveAndPublish.js.map +1 -0
  142. package/admin/components/ContentEntryForm/Header/SaveContent/SaveContent.d.ts +2 -0
  143. package/admin/{views/contentEntries/ContentEntry/header/saveContent → components/ContentEntryForm/Header/SaveContent}/SaveContent.js +11 -13
  144. package/admin/components/ContentEntryForm/Header/SaveContent/SaveContent.js.map +1 -0
  145. package/admin/components/ContentEntryForm/Header/SaveContent/index.d.ts +1 -0
  146. package/admin/components/ContentEntryForm/Header/SaveContent/index.js +16 -0
  147. package/admin/components/ContentEntryForm/Header/SaveContent/index.js.map +1 -0
  148. package/admin/components/ContentEntryForm/Header/index.d.ts +5 -0
  149. package/admin/components/ContentEntryForm/Header/index.js +60 -0
  150. package/admin/components/ContentEntryForm/Header/index.js.map +1 -0
  151. package/admin/components/ContentEntryForm/Label.js.map +1 -1
  152. package/admin/components/ContentEntryForm/RenderFieldElement.d.ts +2 -4
  153. package/admin/components/ContentEntryForm/RenderFieldElement.js +15 -5
  154. package/admin/components/ContentEntryForm/RenderFieldElement.js.map +1 -1
  155. package/admin/components/ContentEntryForm/functions/getValue.js.map +1 -1
  156. package/admin/components/ContentEntryForm/functions/setValue.js.map +1 -1
  157. package/admin/components/ContentEntryForm/useBind.js.map +1 -1
  158. package/admin/components/ContentEntryForm/useContentEntryForm.d.ts +2 -2
  159. package/admin/components/ContentEntryForm/useContentEntryForm.js +47 -29
  160. package/admin/components/ContentEntryForm/useContentEntryForm.js.map +1 -1
  161. package/admin/components/ContentEntryForm/useRenderPlugins.js.map +1 -1
  162. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -1
  163. package/admin/components/ContentModelEditor/Editor.js.map +1 -1
  164. package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
  165. package/admin/components/ContentModelEditor/Header.js.map +1 -1
  166. package/admin/components/ContentModelEditor/PreviewTab.js.map +1 -1
  167. package/admin/components/ContentModelEditor/index.js.map +1 -1
  168. package/admin/components/ContentModelEditor/useModelEditor.js.map +1 -1
  169. package/admin/components/DelayedOnChange.js +9 -0
  170. package/admin/components/DelayedOnChange.js.map +1 -1
  171. package/admin/components/Dialog.js.map +1 -1
  172. package/admin/components/DragPreview.js.map +1 -1
  173. package/admin/components/Draggable.js.map +1 -1
  174. package/admin/components/DropZone/Center.js.map +1 -1
  175. package/admin/components/DropZone/Horizontal.d.ts +1 -1
  176. package/admin/components/DropZone/Horizontal.js.map +1 -1
  177. package/admin/components/DropZone/Vertical.d.ts +1 -1
  178. package/admin/components/DropZone/Vertical.js.map +1 -1
  179. package/admin/components/DropZone/index.js.map +1 -1
  180. package/admin/components/Droppable.d.ts +1 -1
  181. package/admin/components/Droppable.js.map +1 -1
  182. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +16 -2
  183. package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
  184. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +3 -3
  185. package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
  186. package/admin/components/FieldEditor/EditFieldDialog/PredefinedValues.js.map +1 -1
  187. package/admin/components/FieldEditor/EditFieldDialog/ValidationsSection.js.map +1 -1
  188. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js +5 -5
  189. package/admin/components/FieldEditor/EditFieldDialog/ValidatorsList.js.map +1 -1
  190. package/admin/components/FieldEditor/EditFieldDialog/functions/getValue.js.map +1 -1
  191. package/admin/components/FieldEditor/EditFieldDialog/functions/setValue.js.map +1 -1
  192. package/admin/components/FieldEditor/EditFieldDialog/getValidators.js.map +1 -1
  193. package/admin/components/FieldEditor/EditFieldDialog.js +4 -1
  194. package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
  195. package/admin/components/FieldEditor/Field.js.map +1 -1
  196. package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
  197. package/admin/components/FieldEditor/FieldEditorContext.d.ts +2 -14
  198. package/admin/components/FieldEditor/FieldEditorContext.js +4 -0
  199. package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
  200. package/admin/components/FieldEditor/Styled.js.map +1 -1
  201. package/admin/components/FieldEditor/index.js.map +1 -1
  202. package/admin/components/FieldEditor/useModelFieldEditor.js.map +1 -1
  203. package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
  204. package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
  205. package/admin/components/FieldEditor/utils/index.js.map +1 -1
  206. package/admin/components/FieldEditor/utils/moveField.js.map +1 -1
  207. package/admin/components/FieldEditor/utils/moveRow.js.map +1 -1
  208. package/admin/components/IconPicker.js.map +1 -1
  209. package/admin/components/LexicalCmsEditor/LexicalCmsEditor.d.ts +3 -0
  210. package/admin/components/LexicalCmsEditor/LexicalCmsEditor.js +45 -0
  211. package/admin/components/LexicalCmsEditor/LexicalCmsEditor.js.map +1 -0
  212. package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.d.ts +2 -0
  213. package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.js +98 -0
  214. package/admin/components/LexicalCmsEditor/LexicalEditorCmsPlugin.js.map +1 -0
  215. package/admin/components/LexicalCmsEditor/TypographyDropDown.d.ts +2 -0
  216. package/admin/components/LexicalCmsEditor/TypographyDropDown.js +105 -0
  217. package/admin/components/LexicalCmsEditor/TypographyDropDown.js.map +1 -0
  218. package/admin/components/ModelFieldProvider/ModelFieldContext.d.ts +3 -13
  219. package/admin/components/ModelFieldProvider/ModelFieldContext.js.map +1 -1
  220. package/admin/components/ModelFieldProvider/index.js.map +1 -1
  221. package/admin/components/ModelFieldProvider/useModelField.d.ts +4 -13
  222. package/admin/components/ModelFieldProvider/useModelField.js.map +1 -1
  223. package/admin/components/ModelProvider/ModelContext.js.map +1 -1
  224. package/admin/components/ModelProvider/index.js.map +1 -1
  225. package/admin/components/ModelProvider/useModel.js.map +1 -1
  226. package/admin/config/contentEntries/editor/Actions/BaseAction.d.ts +16 -0
  227. package/admin/config/contentEntries/editor/Actions/BaseAction.js +52 -0
  228. package/admin/config/contentEntries/editor/Actions/BaseAction.js.map +1 -0
  229. package/admin/config/contentEntries/editor/Actions/ButtonAction.d.ts +8 -0
  230. package/admin/config/contentEntries/editor/Actions/ButtonAction.js +20 -0
  231. package/admin/config/contentEntries/editor/Actions/ButtonAction.js.map +1 -0
  232. package/admin/config/contentEntries/editor/Actions/MenuItemAction.d.ts +8 -0
  233. package/admin/config/contentEntries/editor/Actions/MenuItemAction.js +20 -0
  234. package/admin/config/contentEntries/editor/Actions/MenuItemAction.js.map +1 -0
  235. package/admin/config/contentEntries/editor/Actions/index.d.ts +13 -0
  236. package/admin/config/contentEntries/editor/Actions/index.js +13 -0
  237. package/admin/config/contentEntries/editor/Actions/index.js.map +1 -0
  238. package/admin/config/contentEntries/editor/ContentEntryEditorConfig.d.ts +18 -0
  239. package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js +33 -0
  240. package/admin/config/contentEntries/editor/ContentEntryEditorConfig.js.map +1 -0
  241. package/admin/config/contentEntries/editor/index.d.ts +1 -0
  242. package/admin/config/contentEntries/editor/index.js +16 -0
  243. package/admin/config/contentEntries/editor/index.js.map +1 -0
  244. package/admin/config/contentEntries/index.d.ts +2 -0
  245. package/admin/config/contentEntries/index.js +27 -0
  246. package/admin/config/contentEntries/index.js.map +1 -0
  247. package/admin/config/contentEntries/list/Browser/Filter.d.ts +20 -0
  248. package/admin/config/contentEntries/list/Browser/Filter.js +66 -0
  249. package/admin/config/contentEntries/list/Browser/Filter.js.map +1 -0
  250. package/admin/config/contentEntries/list/Browser/FiltersToWhere.d.ts +9 -0
  251. package/admin/config/contentEntries/list/Browser/FiltersToWhere.js +29 -0
  252. package/admin/config/contentEntries/list/Browser/FiltersToWhere.js.map +1 -0
  253. package/admin/config/contentEntries/list/Browser/index.d.ts +13 -0
  254. package/admin/config/contentEntries/list/Browser/index.js +13 -0
  255. package/admin/config/contentEntries/list/Browser/index.js.map +1 -0
  256. package/admin/config/contentEntries/list/ContentEntryListConfig.d.ts +18 -0
  257. package/admin/config/contentEntries/list/ContentEntryListConfig.js +32 -0
  258. package/admin/config/contentEntries/list/ContentEntryListConfig.js.map +1 -0
  259. package/admin/config/contentEntries/list/index.d.ts +1 -0
  260. package/admin/config/contentEntries/list/index.js +16 -0
  261. package/admin/config/contentEntries/list/index.js.map +1 -0
  262. package/admin/constants/folders.d.ts +1 -0
  263. package/admin/constants/folders.js +8 -0
  264. package/admin/constants/folders.js.map +1 -0
  265. package/admin/constants/statusLabels.d.ts +6 -2
  266. package/admin/constants/statusLabels.js +2 -3
  267. package/admin/constants/statusLabels.js.map +1 -1
  268. package/admin/constants.d.ts +3 -0
  269. package/admin/constants.js +17 -0
  270. package/admin/constants.js.map +1 -0
  271. package/admin/contexts/Cms/NetworkError.js.map +1 -1
  272. package/admin/contexts/Cms/index.d.ts +7 -12
  273. package/admin/contexts/Cms/index.js.map +1 -1
  274. package/admin/elements/ContentGroupMenuElement.js.map +1 -1
  275. package/admin/elements/ContentModelMenuElement.js.map +1 -1
  276. package/admin/elements/NothingToShowElement.js.map +1 -1
  277. package/admin/graphql/contentModels.js.map +1 -1
  278. package/admin/graphql/createFieldsList.js +0 -2
  279. package/admin/graphql/createFieldsList.js.map +1 -1
  280. package/admin/hooks/index.js.map +1 -1
  281. package/admin/hooks/useApolloClient.js.map +1 -1
  282. package/admin/hooks/useCms.js.map +1 -1
  283. package/admin/hooks/useContentModels.d.ts +3 -0
  284. package/admin/hooks/useContentModels.js +4 -2
  285. package/admin/hooks/useContentModels.js.map +1 -1
  286. package/admin/hooks/useLazyQuery.js.map +1 -1
  287. package/admin/hooks/useMutation.js.map +1 -1
  288. package/admin/hooks/usePermission.d.ts +3 -2
  289. package/admin/hooks/usePermission.js +131 -63
  290. package/admin/hooks/usePermission.js.map +1 -1
  291. package/admin/hooks/useQuery.js.map +1 -1
  292. package/admin/hooks/useQueryLocale.js.map +1 -1
  293. package/admin/lexicalConfig/LexicalEditorConfig.d.ts +12 -0
  294. package/admin/lexicalConfig/LexicalEditorConfig.js +37 -0
  295. package/admin/lexicalConfig/LexicalEditorConfig.js.map +1 -0
  296. package/admin/menus/CmsMenuLoader.js.map +1 -1
  297. package/admin/menus/ContentGroupsMenuItems.js.map +1 -1
  298. package/admin/menus/GlobalSearchPlugins.js.map +1 -1
  299. package/admin/menus/NothingToShowElement.js.map +1 -1
  300. package/admin/plugins/apiInformation/index.js.map +1 -1
  301. package/admin/plugins/arrayUtils.js.map +1 -1
  302. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js +0 -3
  303. package/admin/plugins/definitions/CmsEditorFieldValidatorFileTypePlugin.js.map +1 -1
  304. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js +0 -2
  305. package/admin/plugins/definitions/CmsFieldValidatorFileTypePlugin.js.map +1 -1
  306. package/admin/plugins/editor/defaultBar/BackButton.js.map +1 -1
  307. package/admin/plugins/editor/defaultBar/CreateContentButton.js.map +1 -1
  308. package/admin/plugins/editor/defaultBar/Divider.js.map +1 -1
  309. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  310. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsButton.js.map +1 -1
  311. package/admin/plugins/editor/defaultBar/FormSettings/FormSettingsStyled.js.map +1 -1
  312. package/admin/plugins/editor/defaultBar/FormSettings/index.js.map +1 -1
  313. package/admin/plugins/editor/defaultBar/Name/Name.js +4 -0
  314. package/admin/plugins/editor/defaultBar/Name/Name.js.map +1 -1
  315. package/admin/plugins/editor/defaultBar/Name/NameStyled.js.map +1 -1
  316. package/admin/plugins/editor/defaultBar/Name/index.js.map +1 -1
  317. package/admin/plugins/editor/defaultBar/SaveContentModelButton.js.map +1 -1
  318. package/admin/plugins/editor/defaultBar/index.js.map +1 -1
  319. package/admin/plugins/editor/formSettings/components/GeneralSettings.js.map +1 -1
  320. package/admin/plugins/editor/formSettings/components/GroupSelect.js.map +1 -1
  321. package/admin/plugins/editor/formSettings/index.js.map +1 -1
  322. package/admin/plugins/entry/DefaultOnEntryDelete.js +15 -22
  323. package/admin/plugins/entry/DefaultOnEntryDelete.js.map +1 -1
  324. package/admin/plugins/entry/DefaultOnEntryPublish.js +2 -11
  325. package/admin/plugins/entry/DefaultOnEntryPublish.js.map +1 -1
  326. package/admin/plugins/fieldRenderers/Accordion.js.map +1 -1
  327. package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
  328. package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
  329. package/admin/plugins/fieldRenderers/boolean/index.d.ts +1 -1
  330. package/admin/plugins/fieldRenderers/boolean/index.js.map +1 -1
  331. package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
  332. package/admin/plugins/fieldRenderers/dateTime/DateOnly.js.map +1 -1
  333. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js +2 -1
  334. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithTimezone.js.map +1 -1
  335. package/admin/plugins/fieldRenderers/dateTime/DateTimeWithoutTimezone.js.map +1 -1
  336. package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
  337. package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
  338. package/admin/plugins/fieldRenderers/dateTime/Time.js.map +1 -1
  339. package/admin/plugins/fieldRenderers/dateTime/dateTimeField.js.map +1 -1
  340. package/admin/plugins/fieldRenderers/dateTime/dateTimeFields.js.map +1 -1
  341. package/admin/plugins/fieldRenderers/dateTime/index.d.ts +1 -1
  342. package/admin/plugins/fieldRenderers/dateTime/index.js.map +1 -1
  343. package/admin/plugins/fieldRenderers/dateTime/utils.d.ts +0 -4
  344. package/admin/plugins/fieldRenderers/dateTime/utils.js +1 -120
  345. package/admin/plugins/fieldRenderers/dateTime/utils.js.map +1 -1
  346. package/admin/plugins/fieldRenderers/dynamicZone/AddTemplate.js.map +1 -1
  347. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -1
  348. package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -1
  349. package/admin/plugins/fieldRenderers/dynamicZone/TemplateCard.js.map +1 -1
  350. package/admin/plugins/fieldRenderers/dynamicZone/TemplateGallery.js.map +1 -1
  351. package/admin/plugins/fieldRenderers/dynamicZone/TemplateIcon.js.map +1 -1
  352. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -1
  353. package/admin/plugins/fieldRenderers/file/File.js +7 -2
  354. package/admin/plugins/fieldRenderers/file/File.js.map +1 -1
  355. package/admin/plugins/fieldRenderers/file/fileField.js +44 -7
  356. package/admin/plugins/fieldRenderers/file/fileField.js.map +1 -1
  357. package/admin/plugins/fieldRenderers/file/fileFields.d.ts +2 -2
  358. package/admin/plugins/fieldRenderers/file/fileFields.js +27 -4
  359. package/admin/plugins/fieldRenderers/file/fileFields.js.map +1 -1
  360. package/admin/plugins/fieldRenderers/file/index.d.ts +1 -1
  361. package/admin/plugins/fieldRenderers/file/index.js.map +1 -1
  362. package/admin/plugins/fieldRenderers/file/utils.js +1 -1
  363. package/admin/plugins/fieldRenderers/file/utils.js.map +1 -1
  364. package/admin/plugins/fieldRenderers/lexicalText/index.d.ts +1 -0
  365. package/admin/plugins/fieldRenderers/lexicalText/index.js +13 -0
  366. package/admin/plugins/fieldRenderers/lexicalText/index.js.map +1 -0
  367. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.d.ts +3 -0
  368. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js +53 -0
  369. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js.map +1 -0
  370. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.d.ts +3 -0
  371. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js +74 -0
  372. package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js.map +1 -0
  373. package/admin/plugins/fieldRenderers/lexicalText/utils.d.ts +2 -0
  374. package/admin/plugins/fieldRenderers/lexicalText/utils.js +12 -0
  375. package/admin/plugins/fieldRenderers/lexicalText/utils.js.map +1 -0
  376. package/admin/plugins/fieldRenderers/longText/index.d.ts +1 -1
  377. package/admin/plugins/fieldRenderers/longText/index.js.map +1 -1
  378. package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
  379. package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
  380. package/admin/plugins/fieldRenderers/number/index.d.ts +1 -1
  381. package/admin/plugins/fieldRenderers/number/index.js.map +1 -1
  382. package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
  383. package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
  384. package/admin/plugins/fieldRenderers/object/StyledComponents.js.map +1 -1
  385. package/admin/plugins/fieldRenderers/object/index.d.ts +1 -1
  386. package/admin/plugins/fieldRenderers/object/index.js.map +1 -1
  387. package/admin/plugins/fieldRenderers/object/multipleObjects.js.map +1 -1
  388. package/admin/plugins/fieldRenderers/object/multipleObjectsAccordion.js.map +1 -1
  389. package/admin/plugins/fieldRenderers/object/singleObjectAccordion.js.map +1 -1
  390. package/admin/plugins/fieldRenderers/object/singleObjectInline.js.map +1 -1
  391. package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
  392. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js.map +1 -1
  393. package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js.map +1 -1
  394. package/admin/plugins/fieldRenderers/ref/advanced/components/Entries.js.map +1 -1
  395. package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js.map +1 -1
  396. package/admin/plugins/fieldRenderers/ref/advanced/components/Loader.js.map +1 -1
  397. package/admin/plugins/fieldRenderers/ref/advanced/components/NewReferencedEntryDialog.js.map +1 -1
  398. package/admin/plugins/fieldRenderers/ref/advanced/components/Options.js.map +1 -1
  399. package/admin/plugins/fieldRenderers/ref/advanced/components/ReferencesDialog.js.map +1 -1
  400. package/admin/plugins/fieldRenderers/ref/advanced/components/Search.js.map +1 -1
  401. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/Dialog.js.map +1 -1
  402. package/admin/plugins/fieldRenderers/ref/advanced/components/dialog/DialogHeader.js.map +1 -1
  403. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Box.js.map +1 -1
  404. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/CreatedBy.js.map +1 -1
  405. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Description.js.map +1 -1
  406. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js +6 -2
  407. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Image.js.map +1 -1
  408. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModelName.js.map +1 -1
  409. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/ModifiedBy.js.map +1 -1
  410. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveDown.js.map +1 -1
  411. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/MoveUp.js.map +1 -1
  412. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Remove.js.map +1 -1
  413. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Select.js.map +1 -1
  414. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Status.js.map +1 -1
  415. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/Title.js.map +1 -1
  416. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js +3 -1
  417. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/View.js.map +1 -1
  418. package/admin/plugins/fieldRenderers/ref/advanced/components/entry/elements/ButtonLink.js.map +1 -1
  419. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelList.js.map +1 -1
  420. package/admin/plugins/fieldRenderers/ref/advanced/components/options/OptionsModelListItem.js.map +1 -1
  421. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferenceRenderer.js.map +1 -1
  422. package/admin/plugins/fieldRenderers/ref/advanced/detailedReferencesRenderer.js.map +1 -1
  423. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.d.ts +3 -0
  424. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js +2 -2
  425. package/admin/plugins/fieldRenderers/ref/advanced/hooks/graphql.js.map +1 -1
  426. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js +5 -1
  427. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useEntries.js.map +1 -1
  428. package/admin/plugins/fieldRenderers/ref/advanced/hooks/useReferences.js.map +1 -1
  429. package/admin/plugins/fieldRenderers/ref/advanced/index.d.ts +1 -1
  430. package/admin/plugins/fieldRenderers/ref/advanced/index.js.map +1 -1
  431. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
  432. package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
  433. package/admin/plugins/fieldRenderers/ref/components/EntryStatus.js.map +1 -1
  434. package/admin/plugins/fieldRenderers/ref/components/MissingEntryHelpText.js.map +1 -1
  435. package/admin/plugins/fieldRenderers/ref/components/NewRefEntryFormDialog.js.map +1 -1
  436. package/admin/plugins/fieldRenderers/ref/components/createEntryUrl.js.map +1 -1
  437. package/admin/plugins/fieldRenderers/ref/components/graphql.js +5 -0
  438. package/admin/plugins/fieldRenderers/ref/components/graphql.js.map +1 -1
  439. package/admin/plugins/fieldRenderers/ref/components/helpers.js.map +1 -1
  440. package/admin/plugins/fieldRenderers/ref/components/renderItem.js.map +1 -1
  441. package/admin/plugins/fieldRenderers/ref/components/types.d.ts +3 -0
  442. package/admin/plugins/fieldRenderers/ref/components/types.js.map +1 -1
  443. package/admin/plugins/fieldRenderers/ref/components/useReference.js.map +1 -1
  444. package/admin/plugins/fieldRenderers/ref/components/useReferences.js.map +1 -1
  445. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntry.js.map +1 -1
  446. package/admin/plugins/fieldRenderers/ref/hooks/useNewRefEntryDialog.js.map +1 -1
  447. package/admin/plugins/fieldRenderers/ref/index.d.ts +1 -1
  448. package/admin/plugins/fieldRenderers/ref/index.js.map +1 -1
  449. package/admin/plugins/fieldRenderers/ref/refInput.js.map +1 -1
  450. package/admin/plugins/fieldRenderers/ref/refInputs.js.map +1 -1
  451. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleItems.js.map +1 -1
  452. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js +0 -2
  453. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js.map +1 -1
  454. package/admin/plugins/fieldRenderers/ref/simple/components/SimpleSingleRenderer.js.map +1 -1
  455. package/admin/plugins/fieldRenderers/ref/simple/components/useContentModels.js.map +1 -1
  456. package/admin/plugins/fieldRenderers/ref/simple/components/useReferences.js.map +1 -1
  457. package/admin/plugins/fieldRenderers/ref/simple/index.d.ts +1 -1
  458. package/admin/plugins/fieldRenderers/ref/simple/index.js.map +1 -1
  459. package/admin/plugins/fieldRenderers/ref/simple/simpleMultipleRenderer.js.map +1 -1
  460. package/admin/plugins/fieldRenderers/ref/simple/simpleSingleRenderer.js.map +1 -1
  461. package/admin/plugins/fieldRenderers/richText/index.d.ts +1 -2
  462. package/admin/plugins/fieldRenderers/richText/index.js +5 -3
  463. package/admin/plugins/fieldRenderers/richText/index.js.map +1 -1
  464. package/admin/plugins/fieldRenderers/richText/richTextInput.js +22 -4
  465. package/admin/plugins/fieldRenderers/richText/richTextInput.js.map +1 -1
  466. package/admin/plugins/fieldRenderers/richText/richTextInputs.js +22 -4
  467. package/admin/plugins/fieldRenderers/richText/richTextInputs.js.map +1 -1
  468. package/admin/plugins/fieldRenderers/richText/utils.d.ts +4 -0
  469. package/admin/plugins/fieldRenderers/richText/utils.js +18 -0
  470. package/admin/plugins/fieldRenderers/richText/utils.js.map +1 -0
  471. package/admin/plugins/fieldRenderers/select.js.map +1 -1
  472. package/admin/plugins/fieldRenderers/text/index.d.ts +1 -1
  473. package/admin/plugins/fieldRenderers/text/index.js.map +1 -1
  474. package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
  475. package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
  476. package/admin/plugins/fieldValidators/date/availableValidators.js.map +1 -1
  477. package/admin/plugins/fieldValidators/date/createDateInputField.js.map +1 -1
  478. package/admin/plugins/fieldValidators/dateGte.js.map +1 -1
  479. package/admin/plugins/fieldValidators/dateLte.js.map +1 -1
  480. package/admin/plugins/fieldValidators/dynamicZone.js.map +1 -1
  481. package/admin/plugins/fieldValidators/gte.js.map +1 -1
  482. package/admin/plugins/fieldValidators/in.js.map +1 -1
  483. package/admin/plugins/fieldValidators/lte.js.map +1 -1
  484. package/admin/plugins/fieldValidators/maxLength.js.map +1 -1
  485. package/admin/plugins/fieldValidators/minLength.js.map +1 -1
  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.map +1 -1
  494. package/admin/plugins/fieldValidators/unique.js.map +1 -1
  495. package/admin/plugins/fields/PredefinedValuesDynamicFieldset.js.map +1 -1
  496. package/admin/plugins/fields/boolean.js.map +1 -1
  497. package/admin/plugins/fields/dateTime.js +2 -2
  498. package/admin/plugins/fields/dateTime.js.map +1 -1
  499. package/admin/plugins/fields/dynamicZone/AddTemplate.js.map +1 -1
  500. package/admin/plugins/fields/dynamicZone/DynamicZone.js.map +1 -1
  501. package/admin/plugins/fields/dynamicZone/DynamicZoneTemplate.js.map +1 -1
  502. package/admin/plugins/fields/dynamicZone/TemplateDialog.js.map +1 -1
  503. package/admin/plugins/fields/dynamicZone/commonValidators.js.map +1 -1
  504. package/admin/plugins/fields/dynamicZone.js.map +1 -1
  505. package/admin/plugins/fields/file.js.map +1 -1
  506. package/admin/plugins/fields/longText.js.map +1 -1
  507. package/admin/plugins/fields/number.js.map +1 -1
  508. package/admin/plugins/fields/object/ObjectFields.js.map +1 -1
  509. package/admin/plugins/fields/object.js.map +1 -1
  510. package/admin/plugins/fields/ref/graphql.js.map +1 -1
  511. package/admin/plugins/fields/ref/renderInfo.js.map +1 -1
  512. package/admin/plugins/fields/ref.js.map +1 -1
  513. package/admin/plugins/fields/richText.js.map +1 -1
  514. package/admin/plugins/fields/text.js.map +1 -1
  515. package/admin/plugins/getObjectId.js.map +1 -1
  516. package/admin/plugins/icons.js.map +1 -1
  517. package/admin/plugins/index.d.ts +8 -18
  518. package/admin/plugins/index.js +1 -2
  519. package/admin/plugins/index.js.map +1 -1
  520. package/admin/plugins/install.js +1 -1
  521. package/admin/plugins/install.js.map +1 -1
  522. package/admin/plugins/permissionRenderer/CmsPermissions.js +21 -1
  523. package/admin/plugins/permissionRenderer/CmsPermissions.js.map +1 -1
  524. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.d.ts +1 -0
  525. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +5 -4
  526. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  527. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.d.ts +1 -0
  528. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js +6 -3
  529. package/admin/plugins/permissionRenderer/components/ContentModelGroupPermission.js.map +1 -1
  530. package/admin/plugins/permissionRenderer/components/ContentModelList.js.map +1 -1
  531. package/admin/plugins/permissionRenderer/components/ContentModelPermission.d.ts +1 -0
  532. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js +5 -3
  533. package/admin/plugins/permissionRenderer/components/ContentModelPermission.js.map +1 -1
  534. package/admin/plugins/permissionRenderer/components/PermissionRendererWrapper.js.map +1 -1
  535. package/admin/plugins/permissionRenderer/components/PermissionSelector.d.ts +2 -0
  536. package/admin/plugins/permissionRenderer/components/PermissionSelector.js +7 -3
  537. package/admin/plugins/permissionRenderer/components/PermissionSelector.js.map +1 -1
  538. package/admin/plugins/permissionRenderer/components/StyledComponents.js.map +1 -1
  539. package/admin/plugins/permissionRenderer/components/useCmsData.js +5 -0
  540. package/admin/plugins/permissionRenderer/components/useCmsData.js.map +1 -1
  541. package/admin/plugins/permissionRenderer/index.js.map +1 -1
  542. package/admin/plugins/routes.js +8 -3
  543. package/admin/plugins/routes.js.map +1 -1
  544. package/admin/plugins/transformers/dateTransformer.js.map +1 -1
  545. package/admin/plugins/transformers/dynamicZoneTransformer.js.map +1 -1
  546. package/admin/plugins/transformers/index.js.map +1 -1
  547. package/admin/plugins/transformers/numberTransformer.js.map +1 -1
  548. package/admin/plugins/welcomeScreenWidget.js.map +1 -1
  549. package/admin/views/contentEntries/ContentEntries.d.ts +1 -2
  550. package/admin/views/contentEntries/ContentEntries.js +5 -12
  551. package/admin/views/contentEntries/ContentEntries.js.map +1 -1
  552. package/admin/views/contentEntries/ContentEntriesContainer.d.ts +4 -2
  553. package/admin/views/contentEntries/ContentEntriesContainer.js +2 -2
  554. package/admin/views/contentEntries/ContentEntriesContainer.js.map +1 -1
  555. package/admin/views/contentEntries/ContentEntriesContext.d.ts +1 -15
  556. package/admin/views/contentEntries/ContentEntriesContext.js +1 -52
  557. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  558. package/admin/views/contentEntries/ContentEntriesModule.js +29 -0
  559. package/admin/views/contentEntries/ContentEntriesModule.js.map +1 -0
  560. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +4 -4
  561. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +28 -15
  562. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  563. package/admin/views/contentEntries/ContentEntry/PublishEntryRevisionListItem.js.map +1 -1
  564. package/admin/views/contentEntries/ContentEntry/RevisionListItem.d.ts +2 -2
  565. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +4 -0
  566. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
  567. package/admin/views/contentEntries/ContentEntry/RevisionsList.js.map +1 -1
  568. package/admin/views/contentEntries/ContentEntry/prepareFormData.js.map +1 -1
  569. package/admin/views/contentEntries/ContentEntry/useRevision.d.ts +4 -2
  570. package/admin/views/contentEntries/ContentEntry/useRevision.js +15 -16
  571. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
  572. package/admin/views/contentEntries/ContentEntry.js +2 -2
  573. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  574. package/admin/views/contentEntries/Table/Main.d.ts +6 -0
  575. package/admin/views/contentEntries/Table/Main.js +130 -0
  576. package/admin/views/contentEntries/Table/Main.js.map +1 -0
  577. package/admin/views/contentEntries/Table/Sidebar.d.ts +6 -0
  578. package/admin/views/contentEntries/Table/Sidebar.js +63 -0
  579. package/admin/views/contentEntries/Table/Sidebar.js.map +1 -0
  580. package/admin/views/contentEntries/Table/index.d.ts +2 -0
  581. package/admin/views/contentEntries/Table/index.js +48 -0
  582. package/admin/views/contentEntries/Table/index.js.map +1 -0
  583. package/admin/views/contentEntries/Table/styled.d.ts +15 -0
  584. package/admin/views/contentEntries/Table/styled.js +23 -0
  585. package/admin/views/contentEntries/Table/styled.js.map +1 -0
  586. package/admin/views/contentEntries/hooks/index.js.map +1 -1
  587. package/admin/views/contentEntries/hooks/useContentEntries.js.map +1 -1
  588. package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +23 -18
  589. package/admin/views/contentEntries/hooks/useContentEntriesList.js +82 -116
  590. package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
  591. package/admin/views/contentEntries/hooks/useContentEntry.js.map +1 -1
  592. package/admin/views/contentModelGroups/ContentModelGroups.js.map +1 -1
  593. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js +5 -1
  594. package/admin/views/contentModelGroups/ContentModelGroupsDataList.js.map +1 -1
  595. package/admin/views/contentModelGroups/ContentModelGroupsForm.js.map +1 -1
  596. package/admin/views/contentModelGroups/graphql.js +6 -0
  597. package/admin/views/contentModelGroups/graphql.js.map +1 -1
  598. package/admin/views/contentModels/CloneContentModelDialog.js.map +1 -1
  599. package/admin/views/contentModels/ContentModelEditor.js.map +1 -1
  600. package/admin/views/contentModels/ContentModels.js.map +1 -1
  601. package/admin/views/contentModels/ContentModelsDataList.js +13 -4
  602. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
  603. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  604. package/admin/views/contentModels/cache.js.map +1 -1
  605. package/admin/views/contentModels/helpers/apiNameValidator.js.map +1 -1
  606. package/admin/views/contentModels/helpers/nameValidator.js.map +1 -1
  607. package/admin/views/utils.js.map +1 -1
  608. package/admin/viewsGraphql.js.map +1 -1
  609. package/allPlugins.d.ts +8 -18
  610. package/allPlugins.js +3 -2
  611. package/allPlugins.js.map +1 -1
  612. package/index.d.ts +13 -9
  613. package/index.js +58 -5
  614. package/index.js.map +1 -1
  615. package/package.json +30 -26
  616. package/types.d.ts +1 -0
  617. package/types.js +16 -0
  618. package/types.js.map +1 -0
  619. package/utils/CmsModelFieldValidatorConfigAdapter.d.ts +2 -2
  620. package/utils/CmsModelFieldValidatorConfigAdapter.js +0 -4
  621. package/utils/CmsModelFieldValidatorConfigAdapter.js.map +1 -1
  622. package/utils/acoRecordTransform.d.ts +7 -0
  623. package/utils/acoRecordTransform.js +46 -0
  624. package/utils/acoRecordTransform.js.map +1 -0
  625. package/utils/allowCmsLegacyRichTextInput.d.ts +1 -0
  626. package/utils/allowCmsLegacyRichTextInput.js +10 -0
  627. package/utils/allowCmsLegacyRichTextInput.js.map +1 -0
  628. package/utils/createTypeName.js.map +1 -1
  629. package/utils/createValidators.js.map +1 -1
  630. package/utils/getFetchPolicy.js.map +1 -1
  631. package/utils/getModelTitleFieldId.js.map +1 -1
  632. package/admin/graphql/contentEntries.d.ts +0 -146
  633. package/admin/graphql/contentEntries.js +0 -112
  634. package/admin/graphql/contentEntries.js.map +0 -1
  635. package/admin/views/contentEntries/ContentEntriesList.d.ts +0 -3
  636. package/admin/views/contentEntries/ContentEntriesList.js +0 -199
  637. package/admin/views/contentEntries/ContentEntriesList.js.map +0 -1
  638. package/admin/views/contentEntries/ContentEntry/cache.d.ts +0 -9
  639. package/admin/views/contentEntries/ContentEntry/cache.js +0 -198
  640. package/admin/views/contentEntries/ContentEntry/cache.js.map +0 -1
  641. package/admin/views/contentEntries/ContentEntry/header/Header.d.ts +0 -3
  642. package/admin/views/contentEntries/ContentEntry/header/Header.js.map +0 -1
  643. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.d.ts +0 -3
  644. package/admin/views/contentEntries/ContentEntry/header/contentFormOptionsMenu/ContentFormOptionsMenu.js.map +0 -1
  645. package/admin/views/contentEntries/ContentEntry/header/index.d.ts +0 -3
  646. package/admin/views/contentEntries/ContentEntry/header/index.js +0 -40
  647. package/admin/views/contentEntries/ContentEntry/header/index.js.map +0 -1
  648. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.d.ts +0 -3
  649. package/admin/views/contentEntries/ContentEntry/header/revisionSelector/RevisionSelector.js.map +0 -1
  650. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js +0 -80
  651. package/admin/views/contentEntries/ContentEntry/header/saveAndPublishContent/SaveAndPublishContent.js.map +0 -1
  652. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.d.ts +0 -3
  653. package/admin/views/contentEntries/ContentEntry/header/saveContent/SaveContent.js.map +0 -1
  654. package/admin/views/contentEntries/experiment/ContentEntriesModule.js +0 -68
  655. package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +0 -1
  656. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.d.ts +0 -2
  657. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js +0 -24
  658. package/admin/views/contentEntries/experiment/ContentEntriesRenderer.js.map +0 -1
  659. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.d.ts +0 -37
  660. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js +0 -128
  661. package/admin/views/contentEntries/experiment/ContentEntriesViewConfig.js.map +0 -1
  662. package/types/index.d.ts +0 -490
  663. package/types/index.js +0 -38
  664. package/types/index.js.map +0 -1
  665. package/types/model.d.ts +0 -88
  666. package/types/model.js.map +0 -1
  667. package/types/shared.d.ts +0 -5
  668. package/types/shared.js +0 -5
  669. package/types/shared.js.map +0 -1
  670. package/types/validation.d.ts +0 -70
  671. package/types/validation.js +0 -5
  672. package/types/validation.js.map +0 -1
  673. /package/{types/model.js → admin/components/ContentEntries/Table/types.js} +0 -0
  674. /package/admin/{views/contentEntries/ContentEntry/header/saveAndPublishContent → components/ContentEntryForm/Header/SaveAndPublishContent}/SaveAndPublishContent.d.ts +0 -0
  675. /package/admin/views/contentEntries/{experiment/ContentEntriesModule.d.ts → ContentEntriesModule.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["InnerDivVertical","styled","position","width","height","zIndex","borderRadius","display","boxSizing","border","borderSpacing","BackgroundColorDiv","OuterDivVertical","top","backgroundColor","props","last","borderColor","isOver","isDragging","opacity","Vertical","depth","onDrop","isVisible","drop","maxWidth"],"sources":["Vertical.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Droppable, IsVisibleCallable } from \"../Droppable\";\nimport { DragSource } from \"~/admin/components/FieldEditor/FieldEditorContext\";\n\nconst InnerDivVertical = styled(\"div\")({\n position: \"absolute\",\n width: 10,\n height: \"100%\",\n zIndex: 3,\n borderRadius: 0,\n display: \"none\",\n boxSizing: \"border-box\",\n border: \"1px dashed black\",\n borderSpacing: 5\n});\n\nconst BackgroundColorDiv = styled(\"div\")({\n width: \"100%\",\n height: \"100%\"\n});\n\ninterface OuterDivVerticalProps {\n isOver: boolean;\n last?: boolean;\n isVisible?: IsVisibleCallable;\n isDragging?: boolean;\n}\n\nconst OuterDivVertical = styled(\"div\")(\n {\n position: \"absolute\",\n width: \"30%\",\n top: 0,\n height: \"100%\",\n zIndex: 10,\n backgroundColor: \"transparent\"\n },\n (props: OuterDivVerticalProps) => ({\n [props.last ? \"right\" : \"left\"]: -9,\n textAlign: props.last ? \"right\" : \"left\",\n // @ts-ignore\n [InnerDivVertical]: {\n borderColor: props.isOver ? \"var(--mdc-theme-primary)\" : \"var(--mdc-theme-secondary)\",\n [props.last ? \"right\" : \"left\"]: -2,\n display: props.isDragging ? \"block\" : \"none\",\n // @ts-ignore\n [BackgroundColorDiv]: {\n opacity: 0.5,\n backgroundColor: props.isOver\n ? \"var(--mdc-theme-primary)\"\n : \"var(--mdc-theme-secondary)\"\n }\n }\n })\n);\n\ninterface VerticalProps {\n depth?: number;\n onDrop(item: DragSource): void;\n last?: boolean;\n isVisible?: any;\n}\n\nconst Vertical: React.FC<VerticalProps> = ({ depth, last, onDrop, isVisible }) => {\n return (\n <Droppable onDrop={onDrop} isVisible={isVisible}>\n {({ isOver, isDragging, drop }) => (\n <div\n ref={drop}\n style={{\n /* For dropzone debugging: border: \"1px solid blue\",*/\n width: \"30%\",\n maxWidth: \"100px\",\n height: \"100%\",\n position: \"absolute\",\n top: 0,\n [last ? \"right\" : \"left\"]: 0,\n zIndex: isDragging ? 1000 + (depth || 0) : -1\n }}\n >\n <OuterDivVertical isOver={isOver} isDragging={isDragging} last={last}>\n <InnerDivVertical>\n <BackgroundColorDiv />\n </InnerDivVertical>\n </OuterDivVertical>\n </div>\n )}\n </Droppable>\n );\n};\n\nexport default Vertical;\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AAGA,IAAMA,gBAAgB,oBAAGC,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EACnCC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,EAAE;EACTC,MAAM,EAAE,MAAM;EACdC,MAAM,EAAE,CAAC;EACTC,YAAY,EAAE,CAAC;EACfC,OAAO,EAAE,MAAM;EACfC,SAAS,EAAE,YAAY;EACvBC,MAAM,EAAE,kBAAkB;EAC1BC,aAAa,EAAE;AACnB,CAAC,CAAC;AAEF,IAAMC,kBAAkB,oBAAGV,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EACrCE,KAAK,EAAE,MAAM;EACbC,MAAM,EAAE;AACZ,CAAC,CAAC;AASF,IAAMQ,gBAAgB,oBAAGX,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GACjC;EACIC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,KAAK;EACZU,GAAG,EAAE,CAAC;EACNT,MAAM,EAAE,MAAM;EACdC,MAAM,EAAE,EAAE;EACVS,eAAe,EAAE;AACrB,CAAC,EACD,UAACC,KAA4B;EAAA;EAAA,sDACxBA,KAAK,CAACC,IAAI,GAAG,OAAO,GAAG,MAAM,EAAG,CAAC,CAAC,oDACxBD,KAAK,CAACC,IAAI,GAAG,OAAO,GAAG,MAAM,uCAEvChB,gBAAgB;IACbiB,WAAW,EAAEF,KAAK,CAACG,MAAM,GAAG,0BAA0B,GAAG;EAA4B,oDACpFH,KAAK,CAACC,IAAI,GAAG,OAAO,GAAG,MAAM,EAAG,CAAC,CAAC,+DAC1BD,KAAK,CAACI,UAAU,GAAG,OAAO,GAAG,MAAM,oDAE3CR,kBAAkB,EAAG;IAClBS,OAAO,EAAE,GAAG;IACZN,eAAe,EAAEC,KAAK,CAACG,MAAM,GACvB,0BAA0B,GAC1B;EACV,CAAC;AAAA,CAEP,CACL;AASD,IAAMG,QAAiC,GAAG,SAApCA,QAAiC,QAA2C;EAAA,IAArCC,KAAK,SAALA,KAAK;IAAEN,IAAI,SAAJA,IAAI;IAAEO,MAAM,SAANA,MAAM;IAAEC,SAAS,SAATA,SAAS;EACvE,oBACI,6BAAC,oBAAS;IAAC,MAAM,EAAED,MAAO;IAAC,SAAS,EAAEC;EAAU,GAC3C;IAAA;IAAA,IAAGN,MAAM,SAANA,MAAM;MAAEC,UAAU,SAAVA,UAAU;MAAEM,IAAI,SAAJA,IAAI;IAAA,oBACxB;MACI,GAAG,EAAEA,IAAK;MACV,KAAK;QACD;QACAtB,KAAK,EAAE,KAAK;QACZuB,QAAQ,EAAE,OAAO;QACjBtB,MAAM,EAAE,MAAM;QACdF,QAAQ,EAAE,UAAU;QACpBW,GAAG,EAAE;MAAC,wCACLG,IAAI,GAAG,OAAO,GAAG,MAAM,EAAG,CAAC,kDACpBG,UAAU,GAAG,IAAI,IAAIG,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/C,gBAEF,6BAAC,gBAAgB;MAAC,MAAM,EAAEJ,MAAO;MAAC,UAAU,EAAEC,UAAW;MAAC,IAAI,EAAEH;IAAK,gBACjE,6BAAC,gBAAgB,qBACb,6BAAC,kBAAkB,OAAG,CACP,CACJ,CACjB;EAAA,CACT,CACO;AAEpB,CAAC;AAAC,eAEaK,QAAQ;AAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_styled","_Droppable","InnerDivVertical","styled","target","label","position","width","height","zIndex","borderRadius","display","boxSizing","border","borderSpacing","BackgroundColorDiv","OuterDivVertical","top","backgroundColor","props","_InnerDivVertical","_ref","_defineProperty2","default","last","borderColor","isOver","isDragging","opacity","Vertical","_ref2","depth","onDrop","isVisible","createElement","Droppable","_ref3","_ref4","drop","ref","style","maxWidth","_default","exports"],"sources":["Vertical.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Droppable, IsVisibleCallable } from \"../Droppable\";\nimport { DragSource } from \"~/types\";\n\nconst InnerDivVertical = styled(\"div\")({\n position: \"absolute\",\n width: 10,\n height: \"100%\",\n zIndex: 3,\n borderRadius: 0,\n display: \"none\",\n boxSizing: \"border-box\",\n border: \"1px dashed black\",\n borderSpacing: 5\n});\n\nconst BackgroundColorDiv = styled(\"div\")({\n width: \"100%\",\n height: \"100%\"\n});\n\ninterface OuterDivVerticalProps {\n isOver: boolean;\n last?: boolean;\n isVisible?: IsVisibleCallable;\n isDragging?: boolean;\n}\n\nconst OuterDivVertical = styled(\"div\")(\n {\n position: \"absolute\",\n width: \"30%\",\n top: 0,\n height: \"100%\",\n zIndex: 10,\n backgroundColor: \"transparent\"\n },\n (props: OuterDivVerticalProps) => ({\n [props.last ? \"right\" : \"left\"]: -9,\n textAlign: props.last ? \"right\" : \"left\",\n // @ts-ignore\n [InnerDivVertical]: {\n borderColor: props.isOver ? \"var(--mdc-theme-primary)\" : \"var(--mdc-theme-secondary)\",\n [props.last ? \"right\" : \"left\"]: -2,\n display: props.isDragging ? \"block\" : \"none\",\n // @ts-ignore\n [BackgroundColorDiv]: {\n opacity: 0.5,\n backgroundColor: props.isOver\n ? \"var(--mdc-theme-primary)\"\n : \"var(--mdc-theme-secondary)\"\n }\n }\n })\n);\n\ninterface VerticalProps {\n depth?: number;\n onDrop(item: DragSource): void;\n last?: boolean;\n isVisible?: any;\n}\n\nconst Vertical: React.FC<VerticalProps> = ({ depth, last, onDrop, isVisible }) => {\n return (\n <Droppable onDrop={onDrop} isVisible={isVisible}>\n {({ isOver, isDragging, drop }) => (\n <div\n ref={drop}\n style={{\n /* For dropzone debugging: border: \"1px solid blue\",*/\n width: \"30%\",\n maxWidth: \"100px\",\n height: \"100%\",\n position: \"absolute\",\n top: 0,\n [last ? \"right\" : \"left\"]: 0,\n zIndex: isDragging ? 1000 + (depth || 0) : -1\n }}\n >\n <OuterDivVertical isOver={isOver} isDragging={isDragging} last={last}>\n <InnerDivVertical>\n <BackgroundColorDiv />\n </InnerDivVertical>\n </OuterDivVertical>\n </div>\n )}\n </Droppable>\n );\n};\n\nexport default Vertical;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["import Center from \"./Center\";\nimport Horizontal from \"./Horizontal\";\nimport Vertical from \"./Vertical\";\n\nexport { Center, Horizontal, Vertical };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA"}
1
+ {"version":3,"names":["_Center","_interopRequireDefault","require","_Horizontal","_Vertical"],"sources":["index.ts"],"sourcesContent":["import Center from \"./Center\";\nimport Horizontal from \"./Horizontal\";\nimport Vertical from \"./Vertical\";\n\nexport { Center, Horizontal, Vertical };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA"}
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import { ConnectDropTarget } from "react-dnd";
3
- import { DragSource } from "./FieldEditor/FieldEditorContext";
3
+ import { DragSource } from "../../types";
4
4
  export interface DroppableChildrenFunctionParams {
5
5
  isDragging: boolean;
6
6
  isDroppable: boolean;
@@ -1 +1 @@
1
- {"version":3,"names":["DroppableComponent","props","children","onDrop","isVisible","useDrop","accept","collect","monitor","isOver","shallow","item","getItem","drop","isDroppable","isDragging","Boolean","Droppable","React","memo"],"sources":["Droppable.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ConnectDropTarget, useDrop } from \"react-dnd\";\nimport { DragSource } from \"~/admin/components/FieldEditor/FieldEditorContext\";\n\nexport interface DroppableChildrenFunctionParams {\n isDragging: boolean;\n isDroppable: boolean;\n isOver: boolean;\n item: any;\n drop: ConnectDropTarget;\n}\nexport interface DroppableChildrenFunction {\n (params: DroppableChildrenFunctionParams): React.ReactElement;\n}\n\ninterface IsVisibleParams {\n type: \"row\" | \"field\" | \"newField\";\n item: any;\n isDragging: boolean;\n}\nexport interface IsVisibleCallable {\n (params: IsVisibleParams): boolean;\n}\nexport interface OnDropCallable {\n (item: DragSource): void;\n}\nexport interface DroppableProps {\n type?: string;\n children: DroppableChildrenFunction;\n isDragging?: boolean;\n isDroppable?: (item: any) => boolean;\n isVisible?: IsVisibleCallable;\n onDrop?: OnDropCallable;\n}\n\nconst DroppableComponent: React.FC<DroppableProps> = props => {\n const { children, onDrop, isVisible = () => true } = props;\n\n const [{ item, isOver }, drop] = useDrop({\n accept: \"element\",\n collect: monitor => ({\n isOver: monitor.isOver() && monitor.isOver({ shallow: true }),\n item: monitor.getItem()\n }),\n drop(item, monitor) {\n if (typeof props.isDroppable === \"function\" && !props.isDroppable(item)) {\n return;\n }\n\n if (typeof onDrop === \"function\") {\n return onDrop(monitor.getItem());\n }\n }\n });\n\n if (item && !isVisible(item)) {\n return null;\n }\n\n let isDroppable = true;\n if (item) {\n isDroppable = props.isDroppable ? props.isDroppable(item) : isOver;\n }\n\n return children({ isDragging: Boolean(item), isOver, isDroppable, item, drop });\n};\n\nexport const Droppable: React.FC<DroppableProps> = React.memo(DroppableComponent);\n"],"mappings":";;;;;;;;;AAAA;AACA;AAkCA,IAAMA,kBAA4C,GAAG,SAA/CA,kBAA4C,CAAGC,KAAK,EAAI;EAC1D,IAAQC,QAAQ,GAAqCD,KAAK,CAAlDC,QAAQ;IAAEC,MAAM,GAA6BF,KAAK,CAAxCE,MAAM;IAAA,mBAA6BF,KAAK,CAAhCG,SAAS;IAATA,SAAS,iCAAG;MAAA,OAAM,IAAI;IAAA;EAEhD,eAAiC,IAAAC,iBAAO,EAAC;MACrCC,MAAM,EAAE,SAAS;MACjBC,OAAO,EAAE,iBAAAC,OAAO;QAAA,OAAK;UACjBC,MAAM,EAAED,OAAO,CAACC,MAAM,EAAE,IAAID,OAAO,CAACC,MAAM,CAAC;YAAEC,OAAO,EAAE;UAAK,CAAC,CAAC;UAC7DC,IAAI,EAAEH,OAAO,CAACI,OAAO;QACzB,CAAC;MAAA,CAAC;MACFC,IAAI,gBAACF,IAAI,EAAEH,OAAO,EAAE;QAChB,IAAI,OAAOP,KAAK,CAACa,WAAW,KAAK,UAAU,IAAI,CAACb,KAAK,CAACa,WAAW,CAACH,IAAI,CAAC,EAAE;UACrE;QACJ;QAEA,IAAI,OAAOR,MAAM,KAAK,UAAU,EAAE;UAC9B,OAAOA,MAAM,CAACK,OAAO,CAACI,OAAO,EAAE,CAAC;QACpC;MACJ;IACJ,CAAC,CAAC;IAAA;IAAA;IAfOD,IAAI,cAAJA,IAAI;IAAEF,MAAM,cAANA,MAAM;IAAII,IAAI;EAiB7B,IAAIF,IAAI,IAAI,CAACP,SAAS,CAACO,IAAI,CAAC,EAAE;IAC1B,OAAO,IAAI;EACf;EAEA,IAAIG,WAAW,GAAG,IAAI;EACtB,IAAIH,IAAI,EAAE;IACNG,WAAW,GAAGb,KAAK,CAACa,WAAW,GAAGb,KAAK,CAACa,WAAW,CAACH,IAAI,CAAC,GAAGF,MAAM;EACtE;EAEA,OAAOP,QAAQ,CAAC;IAAEa,UAAU,EAAEC,OAAO,CAACL,IAAI,CAAC;IAAEF,MAAM,EAANA,MAAM;IAAEK,WAAW,EAAXA,WAAW;IAAEH,IAAI,EAAJA,IAAI;IAAEE,IAAI,EAAJA;EAAK,CAAC,CAAC;AACnF,CAAC;AAEM,IAAMI,SAAmC,gBAAGC,KAAK,CAACC,IAAI,CAACnB,kBAAkB,CAAC;AAAC"}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactDnd","DroppableComponent","props","children","onDrop","_props$isVisible","isVisible","_useDrop","useDrop","accept","collect","monitor","isOver","shallow","item","getItem","drop","isDroppable","_useDrop2","_slicedToArray2","default","_useDrop2$","isDragging","Boolean","Droppable","memo","exports"],"sources":["Droppable.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ConnectDropTarget, useDrop } from \"react-dnd\";\nimport { DragSource } from \"~/types\";\n\nexport interface DroppableChildrenFunctionParams {\n isDragging: boolean;\n isDroppable: boolean;\n isOver: boolean;\n item: any;\n drop: ConnectDropTarget;\n}\nexport interface DroppableChildrenFunction {\n (params: DroppableChildrenFunctionParams): React.ReactElement;\n}\n\ninterface IsVisibleParams {\n type: \"row\" | \"field\" | \"newField\";\n item: any;\n isDragging: boolean;\n}\nexport interface IsVisibleCallable {\n (params: IsVisibleParams): boolean;\n}\nexport interface OnDropCallable {\n (item: DragSource): void;\n}\nexport interface DroppableProps {\n type?: string;\n children: DroppableChildrenFunction;\n isDragging?: boolean;\n isDroppable?: (item: any) => boolean;\n isVisible?: IsVisibleCallable;\n onDrop?: OnDropCallable;\n}\n\nconst DroppableComponent: React.FC<DroppableProps> = props => {\n const { children, onDrop, isVisible = () => true } = props;\n\n const [{ item, isOver }, drop] = useDrop({\n accept: \"element\",\n collect: monitor => ({\n isOver: monitor.isOver() && monitor.isOver({ shallow: true }),\n item: monitor.getItem()\n }),\n drop(item, monitor) {\n if (typeof props.isDroppable === \"function\" && !props.isDroppable(item)) {\n return;\n }\n\n if (typeof onDrop === \"function\") {\n return onDrop(monitor.getItem());\n }\n }\n });\n\n if (item && !isVisible(item)) {\n return null;\n }\n\n let isDroppable = true;\n if (item) {\n isDroppable = props.isDroppable ? props.isDroppable(item) : isOver;\n }\n\n return children({ isDragging: Boolean(item), isOver, isDroppable, item, drop });\n};\n\nexport const Droppable: React.FC<DroppableProps> = React.memo(DroppableComponent);\n"],"mappings":";;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAkCA,IAAME,kBAA4C,GAAG,SAA/CA,kBAA4CA,CAAGC,KAAK,EAAI;EAC1D,IAAQC,QAAQ,GAAqCD,KAAK,CAAlDC,QAAQ;IAAEC,MAAM,GAA6BF,KAAK,CAAxCE,MAAM;IAAAC,gBAAA,GAA6BH,KAAK,CAAhCI,SAAS;IAATA,SAAS,GAAAD,gBAAA,cAAG;MAAA,OAAM,IAAI;IAAA,IAAAA,gBAAA;EAEhD,IAAAE,QAAA,GAAiC,IAAAC,iBAAO,EAAC;MACrCC,MAAM,EAAE,SAAS;MACjBC,OAAO,EAAE,SAAAA,QAAAC,OAAO;QAAA,OAAK;UACjBC,MAAM,EAAED,OAAO,CAACC,MAAM,CAAC,CAAC,IAAID,OAAO,CAACC,MAAM,CAAC;YAAEC,OAAO,EAAE;UAAK,CAAC,CAAC;UAC7DC,IAAI,EAAEH,OAAO,CAACI,OAAO,CAAC;QAC1B,CAAC;MAAA,CAAC;MACFC,IAAI,WAAAA,KAACF,IAAI,EAAEH,OAAO,EAAE;QAChB,IAAI,OAAOT,KAAK,CAACe,WAAW,KAAK,UAAU,IAAI,CAACf,KAAK,CAACe,WAAW,CAACH,IAAI,CAAC,EAAE;UACrE;QACJ;QAEA,IAAI,OAAOV,MAAM,KAAK,UAAU,EAAE;UAC9B,OAAOA,MAAM,CAACO,OAAO,CAACI,OAAO,CAAC,CAAC,CAAC;QACpC;MACJ;IACJ,CAAC,CAAC;IAAAG,SAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAb,QAAA;IAAAc,UAAA,GAAAH,SAAA;IAfOJ,IAAI,GAAAO,UAAA,CAAJP,IAAI;IAAEF,MAAM,GAAAS,UAAA,CAANT,MAAM;IAAII,IAAI,GAAAE,SAAA;EAiB7B,IAAIJ,IAAI,IAAI,CAACR,SAAS,CAACQ,IAAI,CAAC,EAAE;IAC1B,OAAO,IAAI;EACf;EAEA,IAAIG,WAAW,GAAG,IAAI;EACtB,IAAIH,IAAI,EAAE;IACNG,WAAW,GAAGf,KAAK,CAACe,WAAW,GAAGf,KAAK,CAACe,WAAW,CAACH,IAAI,CAAC,GAAGF,MAAM;EACtE;EAEA,OAAOT,QAAQ,CAAC;IAAEmB,UAAU,EAAEC,OAAO,CAACT,IAAI,CAAC;IAAEF,MAAM,EAANA,MAAM;IAAEK,WAAW,EAAXA,WAAW;IAAEH,IAAI,EAAJA,IAAI;IAAEE,IAAI,EAAJA;EAAK,CAAC,CAAC;AACnF,CAAC;AAEM,IAAMQ,SAAmC,gBAAG3B,KAAK,CAAC4B,IAAI,CAACxB,kBAAkB,CAAC;AAACyB,OAAA,CAAAF,SAAA,GAAAA,SAAA"}
@@ -17,6 +17,8 @@ var _emotion = require("emotion");
17
17
  var _validation = require("@webiny/validation");
18
18
  var _hooks = require("../../../hooks");
19
19
  var _form = require("@webiny/form");
20
+ var _Alert = require("@webiny/ui/Alert");
21
+ var _allowCmsLegacyRichTextInput = require("../../../../utils/allowCmsLegacyRichTextInput");
20
22
  var _templateObject, _templateObject2;
21
23
  var t = _i18n.i18n.ns("app-headless-cms/admin/content-model-editor/tabs/appearance-tab");
22
24
  var style = {
@@ -34,13 +36,16 @@ var style = {
34
36
  var AppearanceTab = function AppearanceTab() {
35
37
  var _field$predefinedValu;
36
38
  var form = (0, _form.useForm)();
39
+ var _useModel = (0, _hooks.useModel)(),
40
+ model = _useModel.model;
37
41
  var _useModelField = (0, _hooks.useModelField)(),
38
42
  field = _useModelField.field,
39
43
  fieldPlugin = _useModelField.fieldPlugin;
40
44
  var renderPlugins = _plugins.plugins.byType("cms-editor-field-renderer").filter(function (item) {
41
45
  return item.renderer.canUse({
42
46
  field: field,
43
- fieldPlugin: fieldPlugin
47
+ fieldPlugin: fieldPlugin,
48
+ model: model
44
49
  });
45
50
  });
46
51
  (0, _react.useEffect)(function () {
@@ -63,7 +68,16 @@ var AppearanceTab = function AppearanceTab() {
63
68
  className: style.noComponentsMessage
64
69
  }, t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["There are no components that can render this field."])))));
65
70
  }
66
- return /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
71
+ return /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, _allowCmsLegacyRichTextInput.allowCmsLegacyRichTextInput && /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
72
+ span: 6
73
+ }, /*#__PURE__*/_react.default.createElement(_Alert.Alert, {
74
+ title: "You have legacy editor enabled",
75
+ type: "info"
76
+ }, "Your project has been upgraded from an older Webiny version, with EditorJS as the default rich text editor. We recommend switching to the new Lexical rich text editor, where possible.", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("br", null), "Read more about this in our", " ", /*#__PURE__*/_react.default.createElement("a", {
77
+ href: "https://webiny.link/hcms-legacy-rte-support",
78
+ rel: "noreferrer",
79
+ target: "_blank"
80
+ }, "upgrade guide"), ".")), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
67
81
  span: 12
68
82
  }, /*#__PURE__*/_react.default.createElement("div", {
69
83
  className: style.topLabel
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","style","topLabel","css","marginBottom","noComponentsMessage","textAlign","padding","radioContainer","AppearanceTab","form","useForm","useModelField","field","fieldPlugin","renderPlugins","plugins","byType","filter","item","renderer","canUse","useEffect","currentlySelectedRenderAvailable","find","rendererName","name","setValue","console","info","fieldId","id","multipleValues","predefinedValues","enabled","length","validation","create","onChange","getValue","map","description"],"sources":["AppearanceTab.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { CmsModelField, CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Radio, RadioGroup } from \"@webiny/ui/Radio\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { css } from \"emotion\";\nimport { validation } from \"@webiny/validation\";\nimport { useModelField } from \"~/admin/hooks\";\nimport { useForm, Bind } from \"@webiny/form\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/content-model-editor/tabs/appearance-tab\");\n\nconst style = {\n topLabel: css({\n marginBottom: 25\n }),\n noComponentsMessage: css({\n textAlign: \"center\",\n padding: 25\n }),\n radioContainer: css({\n marginBottom: 10\n })\n};\n\nconst AppearanceTab = () => {\n const form = useForm<CmsModelField>();\n const { field, fieldPlugin } = useModelField();\n\n const renderPlugins = plugins\n .byType<CmsEditorFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .filter(item => item.renderer.canUse({ field, fieldPlugin }));\n\n useEffect((): void => {\n // If the currently selected render plugin is no longer available, select the first available one.\n const currentlySelectedRenderAvailable = renderPlugins.find(\n item => item.renderer.rendererName === field.renderer.name\n );\n\n if (currentlySelectedRenderAvailable) {\n return;\n }\n\n if (renderPlugins[0]) {\n form.setValue(\"renderer.name\", renderPlugins[0].renderer.rendererName);\n return;\n }\n\n console.info(`No renderers for field ${field.fieldId} found.`, field);\n }, [field.id, field.multipleValues, field.predefinedValues?.enabled]);\n\n if (renderPlugins.length === 0) {\n return (\n <Grid>\n <Cell\n span={12}\n className={style.noComponentsMessage}\n >{t`There are no components that can render this field.`}</Cell>\n </Grid>\n );\n }\n\n return (\n <Grid>\n <Cell span={12}>\n <div\n className={style.topLabel}\n >{t`Choose a component that will render the field:`}</div>\n <Bind name={\"renderer.name\"} validate={validation.create(\"required\")}>\n <RadioGroup>\n {({ onChange, getValue }) => (\n <React.Fragment>\n {renderPlugins.map(item => (\n <div key={item.name} className={style.radioContainer}>\n <Radio\n value={getValue(item.renderer.rendererName)}\n onChange={onChange(item.renderer.rendererName)}\n label={\n <>\n <div>{item.renderer.name}</div>\n <div>\n <Typography use={\"caption\"}>\n {item.renderer.description}\n </Typography>\n </div>\n </>\n }\n />\n </div>\n ))}\n </React.Fragment>\n )}\n </RadioGroup>\n </Bind>\n </Cell>\n </Grid>\n );\n};\n\nexport default AppearanceTab;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_plugins","_Grid","_i18n","_Radio","_Typography","_emotion","_validation","_hooks","_form","_Alert","_allowCmsLegacyRichTextInput","_templateObject","_templateObject2","t","i18n","ns","style","topLabel","css","marginBottom","noComponentsMessage","textAlign","padding","radioContainer","AppearanceTab","_field$predefinedValu","form","useForm","_useModel","useModel","model","_useModelField","useModelField","field","fieldPlugin","renderPlugins","plugins","byType","filter","item","renderer","canUse","useEffect","currentlySelectedRenderAvailable","find","rendererName","name","setValue","console","info","concat","fieldId","id","multipleValues","predefinedValues","enabled","length","default","createElement","Grid","Cell","span","className","_taggedTemplateLiteral2","allowCmsLegacyRichTextInput","Alert","title","type","href","rel","target","Bind","validate","validation","create","RadioGroup","_ref","onChange","getValue","Fragment","map","key","Radio","value","label","Typography","use","description","_default","exports"],"sources":["AppearanceTab.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { CmsEditorFieldRendererPlugin, CmsModelField } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Radio, RadioGroup } from \"@webiny/ui/Radio\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { css } from \"emotion\";\nimport { validation } from \"@webiny/validation\";\nimport { useModel, useModelField } from \"~/admin/hooks\";\nimport { useForm, Bind } from \"@webiny/form\";\nimport { Alert } from \"@webiny/ui/Alert\";\nimport { allowCmsLegacyRichTextInput } from \"~/utils/allowCmsLegacyRichTextInput\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/content-model-editor/tabs/appearance-tab\");\n\nconst style = {\n topLabel: css({\n marginBottom: 25\n }),\n noComponentsMessage: css({\n textAlign: \"center\",\n padding: 25\n }),\n radioContainer: css({\n marginBottom: 10\n })\n};\n\nconst AppearanceTab = () => {\n const form = useForm<CmsModelField>();\n const { model } = useModel();\n const { field, fieldPlugin } = useModelField();\n\n const renderPlugins = plugins\n .byType<CmsEditorFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .filter(item => item.renderer.canUse({ field, fieldPlugin, model }));\n\n useEffect((): void => {\n // If the currently selected render plugin is no longer available, select the first available one.\n const currentlySelectedRenderAvailable = renderPlugins.find(\n item => item.renderer.rendererName === field.renderer.name\n );\n\n if (currentlySelectedRenderAvailable) {\n return;\n }\n\n if (renderPlugins[0]) {\n form.setValue(\"renderer.name\", renderPlugins[0].renderer.rendererName);\n return;\n }\n\n console.info(`No renderers for field ${field.fieldId} found.`, field);\n }, [field.id, field.multipleValues, field.predefinedValues?.enabled]);\n\n if (renderPlugins.length === 0) {\n return (\n <Grid>\n <Cell\n span={12}\n className={style.noComponentsMessage}\n >{t`There are no components that can render this field.`}</Cell>\n </Grid>\n );\n }\n\n return (\n <Grid>\n {allowCmsLegacyRichTextInput && (\n <Cell span={6}>\n <Alert title={\"You have legacy editor enabled\"} type={\"info\"}>\n Your project has been upgraded from an older Webiny version, with EditorJS\n as the default rich text editor. We recommend switching to the new Lexical\n rich text editor, where possible.\n <br />\n <br />\n Read more about this in our{\" \"}\n <a\n href={\"https://webiny.link/hcms-legacy-rte-support\"}\n rel=\"noreferrer\"\n target={\"_blank\"}\n >\n upgrade guide\n </a>\n .\n </Alert>\n </Cell>\n )}\n <Cell span={12}>\n <div\n className={style.topLabel}\n >{t`Choose a component that will render the field:`}</div>\n <Bind name={\"renderer.name\"} validate={validation.create(\"required\")}>\n <RadioGroup>\n {({ onChange, getValue }) => (\n <React.Fragment>\n {renderPlugins.map(item => (\n <div key={item.name} className={style.radioContainer}>\n <Radio\n value={getValue(item.renderer.rendererName)}\n onChange={onChange(item.renderer.rendererName)}\n label={\n <>\n <div>{item.renderer.name}</div>\n <div>\n <Typography use={\"caption\"}>\n {item.renderer.description}\n </Typography>\n </div>\n </>\n }\n />\n </div>\n ))}\n </React.Fragment>\n )}\n </RadioGroup>\n </Bind>\n </Cell>\n </Grid>\n );\n};\n\nexport default AppearanceTab;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAEA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,WAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,4BAAA,GAAAX,OAAA;AAAkF,IAAAY,eAAA,EAAAC,gBAAA;AAElF,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,iEAAiE,CAAC;AAEpF,IAAMC,KAAK,GAAG;EACVC,QAAQ,eAAE,IAAAC,YAAG,EAAC;IACVC,YAAY,EAAE;EAClB,CAAC,oBAAC;EACFC,mBAAmB,eAAE,IAAAF,YAAG,EAAC;IACrBG,SAAS,EAAE,QAAQ;IACnBC,OAAO,EAAE;EACb,CAAC,+BAAC;EACFC,cAAc,eAAE,IAAAL,YAAG,EAAC;IAChBC,YAAY,EAAE;EAClB,CAAC;AACL,CAAC;AAED,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;EAAA,IAAAC,qBAAA;EACxB,IAAMC,IAAI,GAAG,IAAAC,aAAO,EAAgB,CAAC;EACrC,IAAAC,SAAA,GAAkB,IAAAC,eAAQ,EAAC,CAAC;IAApBC,KAAK,GAAAF,SAAA,CAALE,KAAK;EACb,IAAAC,cAAA,GAA+B,IAAAC,oBAAa,EAAC,CAAC;IAAtCC,KAAK,GAAAF,cAAA,CAALE,KAAK;IAAEC,WAAW,GAAAH,cAAA,CAAXG,WAAW;EAE1B,IAAMC,aAAa,GAAGC,gBAAO,CACxBC,MAAM,CAA+B,2BAA2B,CAAC,CACjEC,MAAM,CAAC,UAAAC,IAAI;IAAA,OAAIA,IAAI,CAACC,QAAQ,CAACC,MAAM,CAAC;MAAER,KAAK,EAALA,KAAK;MAAEC,WAAW,EAAXA,WAAW;MAAEJ,KAAK,EAALA;IAAM,CAAC,CAAC;EAAA,EAAC;EAExE,IAAAY,gBAAS,EAAC,YAAY;IAClB;IACA,IAAMC,gCAAgC,GAAGR,aAAa,CAACS,IAAI,CACvD,UAAAL,IAAI;MAAA,OAAIA,IAAI,CAACC,QAAQ,CAACK,YAAY,KAAKZ,KAAK,CAACO,QAAQ,CAACM,IAAI;IAAA,CAC9D,CAAC;IAED,IAAIH,gCAAgC,EAAE;MAClC;IACJ;IAEA,IAAIR,aAAa,CAAC,CAAC,CAAC,EAAE;MAClBT,IAAI,CAACqB,QAAQ,CAAC,eAAe,EAAEZ,aAAa,CAAC,CAAC,CAAC,CAACK,QAAQ,CAACK,YAAY,CAAC;MACtE;IACJ;IAEAG,OAAO,CAACC,IAAI,2BAAAC,MAAA,CAA2BjB,KAAK,CAACkB,OAAO,cAAWlB,KAAK,CAAC;EACzE,CAAC,EAAE,CAACA,KAAK,CAACmB,EAAE,EAAEnB,KAAK,CAACoB,cAAc,GAAA5B,qBAAA,GAAEQ,KAAK,CAACqB,gBAAgB,cAAA7B,qBAAA,uBAAtBA,qBAAA,CAAwB8B,OAAO,CAAC,CAAC;EAErE,IAAIpB,aAAa,CAACqB,MAAM,KAAK,CAAC,EAAE;IAC5B,oBACI3D,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACzD,KAAA,CAAA0D,IAAI,qBACD9D,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACzD,KAAA,CAAA2D,IAAI;MACDC,IAAI,EAAE,EAAG;MACTC,SAAS,EAAE9C,KAAK,CAACI;IAAoB,GACvCP,CAAC,CAAAF,eAAA,KAAAA,eAAA,OAAAoD,uBAAA,CAAAN,OAAA,4DAA4D,CAC7D,CAAC;EAEf;EAEA,oBACI5D,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACzD,KAAA,CAAA0D,IAAI,QACAK,wDAA2B,iBACxBnE,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACzD,KAAA,CAAA2D,IAAI;IAACC,IAAI,EAAE;EAAE,gBACVhE,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACjD,MAAA,CAAAwD,KAAK;IAACC,KAAK,EAAE,gCAAiC;IAACC,IAAI,EAAE;EAAO,GAAC,yLAI1D,eAAAtE,MAAA,CAAA4D,OAAA,CAAAC,aAAA,WAAK,CAAC,eACN7D,MAAA,CAAA4D,OAAA,CAAAC,aAAA,WAAK,CAAC,+BACqB,EAAC,GAAG,eAC/B7D,MAAA,CAAA4D,OAAA,CAAAC,aAAA;IACIU,IAAI,EAAE,6CAA8C;IACpDC,GAAG,EAAC,YAAY;IAChBC,MAAM,EAAE;EAAS,GACpB,eAEE,CAAC,KAED,CACL,CACT,eACDzE,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACzD,KAAA,CAAA2D,IAAI;IAACC,IAAI,EAAE;EAAG,gBACXhE,MAAA,CAAA4D,OAAA,CAAAC,aAAA;IACII,SAAS,EAAE9C,KAAK,CAACC;EAAS,GAC5BJ,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAAmD,uBAAA,CAAAN,OAAA,uDAAsD,CAAC,eAC1D5D,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAAClD,KAAA,CAAA+D,IAAI;IAACzB,IAAI,EAAE,eAAgB;IAAC0B,QAAQ,EAAEC,sBAAU,CAACC,MAAM,CAAC,UAAU;EAAE,gBACjE7E,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACvD,MAAA,CAAAwE,UAAU,QACN,UAAAC,IAAA;IAAA,IAAGC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;MAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAA,oBAClBjF,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAAC7D,MAAA,CAAA4D,OAAK,CAACsB,QAAQ,QACV5C,aAAa,CAAC6C,GAAG,CAAC,UAAAzC,IAAI;MAAA,oBACnB1C,MAAA,CAAA4D,OAAA,CAAAC,aAAA;QAAKuB,GAAG,EAAE1C,IAAI,CAACO,IAAK;QAACgB,SAAS,EAAE9C,KAAK,CAACO;MAAe,gBACjD1B,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACvD,MAAA,CAAA+E,KAAK;QACFC,KAAK,EAAEL,QAAQ,CAACvC,IAAI,CAACC,QAAQ,CAACK,YAAY,CAAE;QAC5CgC,QAAQ,EAAEA,QAAQ,CAACtC,IAAI,CAACC,QAAQ,CAACK,YAAY,CAAE;QAC/CuC,KAAK,eACDvF,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAAA7D,MAAA,CAAA4D,OAAA,CAAAsB,QAAA,qBACIlF,MAAA,CAAA4D,OAAA,CAAAC,aAAA,cAAMnB,IAAI,CAACC,QAAQ,CAACM,IAAU,CAAC,eAC/BjD,MAAA,CAAA4D,OAAA,CAAAC,aAAA,2BACI7D,MAAA,CAAA4D,OAAA,CAAAC,aAAA,CAACtD,WAAA,CAAAiF,UAAU;UAACC,GAAG,EAAE;QAAU,GACtB/C,IAAI,CAACC,QAAQ,CAAC+C,WACP,CACX,CACP;MACL,CACJ,CACA,CAAC;IAAA,CACT,CACW,CAAC;EAAA,CAEb,CACV,CACJ,CACJ,CAAC;AAEf,CAAC;AAAC,IAAAC,QAAA,GAEahE,aAAa;AAAAiE,OAAA,CAAAhC,OAAA,GAAA+B,QAAA"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
- var _camelCase2 = _interopRequireDefault(require("lodash/camelCase"));
10
9
  var _react = _interopRequireWildcard(require("react"));
10
+ var _camelCase = _interopRequireDefault(require("lodash/camelCase"));
11
11
  var _Input = require("@webiny/ui/Input");
12
12
  var _Switch = require("@webiny/ui/Switch");
13
13
  var _Grid = require("@webiny/ui/Grid");
@@ -42,7 +42,7 @@ var GeneralTab = function GeneralTab() {
42
42
  }, /* The value of 400 was determined by manual testing. */400);
43
43
  }, []);
44
44
  var afterChangeLabel = (0, _react.useCallback)(function (value) {
45
- form.setValue("fieldId", (0, _camelCase2.default)(value));
45
+ form.setValue("fieldId", (0, _camelCase.default)(value));
46
46
  }, []);
47
47
  var beforeChangeFieldId = (0, _react.useCallback)(function (value, baseOnChange) {
48
48
  baseOnChange(value.trim());
@@ -1 +1 @@
1
- {"version":3,"names":["GeneralTab","form","useForm","useModelField","field","fieldPlugin","inputRef","useRef","useModelEditor","contentModel","data","useModelFieldEditor","getField","useEffect","setTimeout","current","focus","afterChangeLabel","useCallback","value","setValue","beforeChangeFieldId","baseOnChange","trim","fieldIdValidator","fieldId","toLowerCase","Error","uniqueFieldIdValidator","existingField","id","additionalSettings","renderSettings","predefinedValuesEnabled","useMemo","allowPredefinedValues","renderPredefinedValues","validation","create","multipleValuesLabel","allowMultipleValues","tags"],"sources":["GeneralTab.tsx"],"sourcesContent":["import React, { useEffect, useCallback, useRef, useMemo } from \"react\";\nimport { camelCase } from \"lodash\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { validation } from \"@webiny/validation\";\nimport { Tags } from \"@webiny/ui/Tags\";\nimport { useForm, Bind } from \"@webiny/form\";\nimport { useModelFieldEditor } from \"~/admin/components/FieldEditor\";\nimport { useModelEditor } from \"~/admin/hooks\";\nimport { useModelField } from \"~/admin/hooks\";\n\nconst GeneralTab = () => {\n const form = useForm();\n const { field, fieldPlugin } = useModelField();\n const inputRef = useRef<HTMLInputElement | null>(null);\n const { data: contentModel } = useModelEditor();\n const { getField } = useModelFieldEditor();\n\n // Had problems with auto-focusing the \"label\" field. A couple of comments on this.\n // 1. It's probably caused by the Tabs component which wraps this component.\n // 2. It seems that the \"autoFocus\" prop on the Input doesn't work. I can't see it attached in the actual DOM.\n // 3. This works, but it's not 100%. Visually, the cursor is frozen, and that's probably caused by a bug / design\n // in the RMWC / Material library. If you were to click somewhere on screen, and then apply focus, then\n // it seems it's behaving correctly. ¯\\_(ツ)_/¯\n useEffect(() => {\n setTimeout(() => {\n if (!inputRef.current) {\n return;\n }\n inputRef.current.focus();\n }, /* The value of 400 was determined by manual testing. */ 400);\n }, []);\n\n const afterChangeLabel = useCallback((value: string) => {\n form.setValue(\"fieldId\", camelCase(value));\n }, []);\n\n const beforeChangeFieldId = useCallback(\n (value: string, baseOnChange: (value: string) => void) => {\n baseOnChange(value.trim());\n },\n []\n );\n\n const fieldIdValidator = useCallback(fieldId => {\n if (fieldId.trim().toLowerCase() !== \"id\") {\n return true;\n }\n\n throw new Error(`Cannot use \"id\" as Field ID.`);\n }, []);\n\n const uniqueFieldIdValidator = useCallback((fieldId: string) => {\n const existingField = getField({ fieldId });\n if (!existingField) {\n return false;\n }\n\n if (existingField.id === field.id) {\n return true;\n }\n throw new Error(\"Please enter a unique Field ID.\");\n }, []);\n\n let additionalSettings: React.ReactNode | null = null;\n if (typeof fieldPlugin.field.renderSettings === \"function\") {\n additionalSettings = fieldPlugin.field.renderSettings({\n afterChangeLabel,\n uniqueFieldIdValidator,\n contentModel\n });\n }\n\n const predefinedValuesEnabled = useMemo(\n (): boolean =>\n (fieldPlugin.field.allowPredefinedValues || false) &&\n typeof fieldPlugin.field.renderPredefinedValues === \"function\",\n [field.fieldId]\n );\n\n return (\n <>\n <Grid>\n <Cell span={6}>\n <Bind\n name={\"label\"}\n validators={validation.create(\"required\")}\n afterChange={(value: string) => {\n if (field.id) {\n return;\n }\n afterChangeLabel(value);\n }}\n >\n <Input\n label={\"Label\"}\n inputRef={inputRef}\n data-testid=\"cms.editor.field.settings.general.label\"\n />\n </Bind>\n </Cell>\n <Cell span={6}>\n <Bind\n name={\"fieldId\"}\n validators={[\n validation.create(\"required\"),\n uniqueFieldIdValidator,\n fieldIdValidator\n ]}\n beforeChange={beforeChangeFieldId}\n >\n <Input\n label={\"Field ID\"}\n data-testid={`cms.editor.field.settings.general.label-${field.id}`}\n />\n </Bind>\n </Cell>\n\n <Cell span={6}>\n <Bind name={\"multipleValues\"}>\n <Switch\n label={fieldPlugin.field.multipleValuesLabel}\n disabled={!fieldPlugin.field.allowMultipleValues}\n data-testid={`cms.editor.field.settings.general.switch-multiplevalues`}\n />\n </Bind>\n </Cell>\n <Cell span={6}>\n <Bind name={\"predefinedValues.enabled\"}>\n <Switch\n label={\"Use predefined values\"}\n disabled={!predefinedValuesEnabled}\n data-testid={`cms.editor.field.settings.general.switch-predefinedvalues`}\n />\n </Bind>\n </Cell>\n\n <Cell span={12}>\n <Bind name={\"helpText\"}>\n <Input\n label={\"Help text\"}\n description={\"Help text (optional)\"}\n data-testid={`cms.editor.field.settings.general.helptext`}\n />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind name={\"tags\"}>\n <Tags\n label={\"Tags\"}\n protectedTags={fieldPlugin.field.tags}\n description={\"Field tags (optional)\"}\n data-testid={`cms.editor.field.settings.general.tags`}\n />\n </Bind>\n </Cell>\n </Grid>\n {additionalSettings}\n </>\n );\n};\n\nexport default GeneralTab;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_camelCase","_interopRequireDefault","_Input","_Switch","_Grid","_validation","_Tags","_form","_","_hooks","GeneralTab","form","useForm","_useModelField","useModelField","field","fieldPlugin","inputRef","useRef","_useModelEditor","useModelEditor","contentModel","data","_useModelFieldEditor","useModelFieldEditor","getField","useEffect","setTimeout","current","focus","afterChangeLabel","useCallback","value","setValue","camelCase","beforeChangeFieldId","baseOnChange","trim","fieldIdValidator","fieldId","toLowerCase","Error","uniqueFieldIdValidator","existingField","id","additionalSettings","renderSettings","predefinedValuesEnabled","useMemo","allowPredefinedValues","renderPredefinedValues","default","createElement","Fragment","Grid","Cell","span","Bind","name","validators","validation","create","afterChange","Input","label","beforeChange","concat","Switch","multipleValuesLabel","disabled","allowMultipleValues","description","Tags","protectedTags","tags","_default","exports"],"sources":["GeneralTab.tsx"],"sourcesContent":["import React, { useEffect, useCallback, useRef, useMemo } from \"react\";\nimport camelCase from \"lodash/camelCase\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { validation } from \"@webiny/validation\";\nimport { Tags } from \"@webiny/ui/Tags\";\nimport { useForm, Bind } from \"@webiny/form\";\nimport { useModelFieldEditor } from \"~/admin/components/FieldEditor\";\nimport { useModelEditor } from \"~/admin/hooks\";\nimport { useModelField } from \"~/admin/hooks\";\n\nconst GeneralTab = () => {\n const form = useForm();\n const { field, fieldPlugin } = useModelField();\n const inputRef = useRef<HTMLInputElement | null>(null);\n const { data: contentModel } = useModelEditor();\n const { getField } = useModelFieldEditor();\n\n // Had problems with auto-focusing the \"label\" field. A couple of comments on this.\n // 1. It's probably caused by the Tabs component which wraps this component.\n // 2. It seems that the \"autoFocus\" prop on the Input doesn't work. I can't see it attached in the actual DOM.\n // 3. This works, but it's not 100%. Visually, the cursor is frozen, and that's probably caused by a bug / design\n // in the RMWC / Material library. If you were to click somewhere on screen, and then apply focus, then\n // it seems it's behaving correctly. ¯\\_(ツ)_/¯\n useEffect(() => {\n setTimeout(() => {\n if (!inputRef.current) {\n return;\n }\n inputRef.current.focus();\n }, /* The value of 400 was determined by manual testing. */ 400);\n }, []);\n\n const afterChangeLabel = useCallback((value: string) => {\n form.setValue(\"fieldId\", camelCase(value));\n }, []);\n\n const beforeChangeFieldId = useCallback(\n (value: string, baseOnChange: (value: string) => void) => {\n baseOnChange(value.trim());\n },\n []\n );\n\n const fieldIdValidator = useCallback(fieldId => {\n if (fieldId.trim().toLowerCase() !== \"id\") {\n return true;\n }\n\n throw new Error(`Cannot use \"id\" as Field ID.`);\n }, []);\n\n const uniqueFieldIdValidator = useCallback((fieldId: string) => {\n const existingField = getField({ fieldId });\n if (!existingField) {\n return false;\n }\n\n if (existingField.id === field.id) {\n return true;\n }\n throw new Error(\"Please enter a unique Field ID.\");\n }, []);\n\n let additionalSettings: React.ReactNode | null = null;\n if (typeof fieldPlugin.field.renderSettings === \"function\") {\n additionalSettings = fieldPlugin.field.renderSettings({\n afterChangeLabel,\n uniqueFieldIdValidator,\n contentModel\n });\n }\n\n const predefinedValuesEnabled = useMemo(\n (): boolean =>\n (fieldPlugin.field.allowPredefinedValues || false) &&\n typeof fieldPlugin.field.renderPredefinedValues === \"function\",\n [field.fieldId]\n );\n\n return (\n <>\n <Grid>\n <Cell span={6}>\n <Bind\n name={\"label\"}\n validators={validation.create(\"required\")}\n afterChange={(value: string) => {\n if (field.id) {\n return;\n }\n afterChangeLabel(value);\n }}\n >\n <Input\n label={\"Label\"}\n inputRef={inputRef}\n data-testid=\"cms.editor.field.settings.general.label\"\n />\n </Bind>\n </Cell>\n <Cell span={6}>\n <Bind\n name={\"fieldId\"}\n validators={[\n validation.create(\"required\"),\n uniqueFieldIdValidator,\n fieldIdValidator\n ]}\n beforeChange={beforeChangeFieldId}\n >\n <Input\n label={\"Field ID\"}\n data-testid={`cms.editor.field.settings.general.label-${field.id}`}\n />\n </Bind>\n </Cell>\n\n <Cell span={6}>\n <Bind name={\"multipleValues\"}>\n <Switch\n label={fieldPlugin.field.multipleValuesLabel}\n disabled={!fieldPlugin.field.allowMultipleValues}\n data-testid={`cms.editor.field.settings.general.switch-multiplevalues`}\n />\n </Bind>\n </Cell>\n <Cell span={6}>\n <Bind name={\"predefinedValues.enabled\"}>\n <Switch\n label={\"Use predefined values\"}\n disabled={!predefinedValuesEnabled}\n data-testid={`cms.editor.field.settings.general.switch-predefinedvalues`}\n />\n </Bind>\n </Cell>\n\n <Cell span={12}>\n <Bind name={\"helpText\"}>\n <Input\n label={\"Help text\"}\n description={\"Help text (optional)\"}\n data-testid={`cms.editor.field.settings.general.helptext`}\n />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind name={\"tags\"}>\n <Tags\n label={\"Tags\"}\n protectedTags={fieldPlugin.field.tags}\n description={\"Field tags (optional)\"}\n data-testid={`cms.editor.field.settings.general.tags`}\n />\n </Bind>\n </Cell>\n </Grid>\n {additionalSettings}\n </>\n );\n};\n\nexport default GeneralTab;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["PredefinedValues","useModelField","field","fieldPlugin","memoizedBindComponents","useRef","getBind","useCallback","index","memoKey","current","Bind","children","name","bind","props","value","getValue","onChange","setValue","cloneElement","renderPredefinedValues","type"],"sources":["PredefinedValues.tsx"],"sourcesContent":["import React, { useCallback, useRef, cloneElement } from \"react\";\nimport getValue from \"./functions/getValue\";\nimport setValue from \"./functions/setValue\";\nimport { BindComponent, Bind as BaseFormBind } from \"@webiny/form\";\nimport { useModelField } from \"~/admin/hooks\";\n\ninterface MemoizedBindComponents {\n [key: string]: BindComponent;\n}\n\nconst PredefinedValues = () => {\n const { field, fieldPlugin } = useModelField();\n const memoizedBindComponents = useRef<MemoizedBindComponents>({});\n\n const getBind = useCallback((index = -1) => {\n const memoKey = index;\n if (memoizedBindComponents.current[memoKey]) {\n return memoizedBindComponents.current[memoKey];\n }\n\n const Bind: BindComponent = ({ children, name }) => {\n return (\n <BaseFormBind name={\"predefinedValues.values\"}>\n {bind => {\n const props = {\n ...bind,\n value: getValue({ bind, index, name }),\n onChange: async (value: string[]) => {\n await setValue({ value, bind, index, name });\n }\n };\n\n if (typeof children === \"function\") {\n return children(props);\n }\n\n return cloneElement(children as unknown as React.ReactElement, props);\n }}\n </BaseFormBind>\n );\n };\n\n memoizedBindComponents.current[memoKey] = Bind;\n\n return memoizedBindComponents.current[memoKey];\n }, []);\n if (!fieldPlugin.field.renderPredefinedValues) {\n return (\n <>{`Missing \"field.renderPredefinedValues\" method in field type plugin: \"${field.type}\".`}</>\n );\n }\n\n return <>{fieldPlugin.field.renderPredefinedValues({ getBind })}</>;\n};\n\nexport default PredefinedValues;\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAMA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAgB,GAAS;EAC3B,qBAA+B,IAAAC,oBAAa,GAAE;IAAtCC,KAAK,kBAALA,KAAK;IAAEC,WAAW,kBAAXA,WAAW;EAC1B,IAAMC,sBAAsB,GAAG,IAAAC,aAAM,EAAyB,CAAC,CAAC,CAAC;EAEjE,IAAMC,OAAO,GAAG,IAAAC,kBAAW,EAAC,YAAgB;IAAA,IAAfC,KAAK,uEAAG,CAAC,CAAC;IACnC,IAAMC,OAAO,GAAGD,KAAK;IACrB,IAAIJ,sBAAsB,CAACM,OAAO,CAACD,OAAO,CAAC,EAAE;MACzC,OAAOL,sBAAsB,CAACM,OAAO,CAACD,OAAO,CAAC;IAClD;IAEA,IAAME,IAAmB,GAAG,SAAtBA,IAAmB,OAA2B;MAAA,IAArBC,QAAQ,QAARA,QAAQ;QAAEC,IAAI,QAAJA,IAAI;MACzC,oBACI,6BAAC,UAAY;QAAC,IAAI,EAAE;MAA0B,GACzC,UAAAC,IAAI,EAAI;QACL,IAAMC,KAAK,+DACJD,IAAI;UACPE,KAAK,EAAE,IAAAC,iBAAQ,EAAC;YAAEH,IAAI,EAAJA,IAAI;YAAEN,KAAK,EAALA,KAAK;YAAEK,IAAI,EAAJA;UAAK,CAAC,CAAC;UACtCK,QAAQ;YAAA,uGAAE,iBAAOF,KAAe;cAAA;gBAAA;kBAAA;oBAAA;oBAAA,OACtB,IAAAG,iBAAQ,EAAC;sBAAEH,KAAK,EAALA,KAAK;sBAAEF,IAAI,EAAJA,IAAI;sBAAEN,KAAK,EAALA,KAAK;sBAAEK,IAAI,EAAJA;oBAAK,CAAC,CAAC;kBAAA;kBAAA;oBAAA;gBAAA;cAAA;YAAA,CAC/C;YAAA;cAAA;YAAA;YAAA;UAAA;QAAA,EACJ;QAED,IAAI,OAAOD,QAAQ,KAAK,UAAU,EAAE;UAChC,OAAOA,QAAQ,CAACG,KAAK,CAAC;QAC1B;QAEA,oBAAO,IAAAK,mBAAY,EAACR,QAAQ,EAAmCG,KAAK,CAAC;MACzE,CAAC,CACU;IAEvB,CAAC;IAEDX,sBAAsB,CAACM,OAAO,CAACD,OAAO,CAAC,GAAGE,IAAI;IAE9C,OAAOP,sBAAsB,CAACM,OAAO,CAACD,OAAO,CAAC;EAClD,CAAC,EAAE,EAAE,CAAC;EACN,IAAI,CAACN,WAAW,CAACD,KAAK,CAACmB,sBAAsB,EAAE;IAC3C,oBACI,8IAA2EnB,KAAK,CAACoB,IAAI,SAAQ;EAErG;EAEA,oBAAO,4DAAGnB,WAAW,CAACD,KAAK,CAACmB,sBAAsB,CAAC;IAAEf,OAAO,EAAPA;EAAQ,CAAC,CAAC,CAAI;AACvE,CAAC;AAAC,eAEaN,gBAAgB;AAAA"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_getValue","_interopRequireDefault","_setValue","_form","_hooks","PredefinedValues","_useModelField","useModelField","field","fieldPlugin","memoizedBindComponents","useRef","getBind","useCallback","index","arguments","length","undefined","memoKey","current","Bind","_ref","children","name","default","createElement","bind","props","_objectSpread2","value","getValue","onChange","_onChange","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","wrap","_callee$","_context","prev","next","setValue","stop","_x","apply","cloneElement","renderPredefinedValues","Fragment","concat","type","_default","exports"],"sources":["PredefinedValues.tsx"],"sourcesContent":["import React, { useCallback, useRef, cloneElement } from \"react\";\nimport getValue from \"./functions/getValue\";\nimport setValue from \"./functions/setValue\";\nimport { BindComponent, Bind as BaseFormBind } from \"@webiny/form\";\nimport { useModelField } from \"~/admin/hooks\";\n\ninterface MemoizedBindComponents {\n [key: string]: BindComponent;\n}\n\nconst PredefinedValues = () => {\n const { field, fieldPlugin } = useModelField();\n const memoizedBindComponents = useRef<MemoizedBindComponents>({});\n\n const getBind = useCallback((index = -1) => {\n const memoKey = index;\n if (memoizedBindComponents.current[memoKey]) {\n return memoizedBindComponents.current[memoKey];\n }\n\n const Bind: BindComponent = ({ children, name }) => {\n return (\n <BaseFormBind name={\"predefinedValues.values\"}>\n {bind => {\n const props = {\n ...bind,\n value: getValue({ bind, index, name }),\n onChange: async (value: string[]) => {\n await setValue({ value, bind, index, name });\n }\n };\n\n if (typeof children === \"function\") {\n return children(props);\n }\n\n return cloneElement(children as unknown as React.ReactElement, props);\n }}\n </BaseFormBind>\n );\n };\n\n memoizedBindComponents.current[memoKey] = Bind;\n\n return memoizedBindComponents.current[memoKey];\n }, []);\n if (!fieldPlugin.field.renderPredefinedValues) {\n return (\n <>{`Missing \"field.renderPredefinedValues\" method in field type plugin: \"${field.type}\".`}</>\n );\n }\n\n return <>{fieldPlugin.field.renderPredefinedValues({ getBind })}</>;\n};\n\nexport default PredefinedValues;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["bindTo","validators","listValidators","ValidationsSection","title","description","fieldKey"],"sources":["ValidationsSection.tsx"],"sourcesContent":["import React from \"react\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ValidatorsList } from \"./ValidatorsList\";\nimport { CmsModelFieldValidatorConfigAdapter } from \"~/utils/CmsModelFieldValidatorConfigAdapter\";\n\ninterface ValidatorsSectionProps {\n title: string;\n fieldKey: \"validators\" | \"listValidators\";\n description: string;\n validators: CmsModelFieldValidatorConfigAdapter[];\n}\n\nconst bindTo = {\n validators: \"validation\",\n listValidators: \"listValidation\"\n};\n\nexport const ValidationsSection = ({\n title,\n description,\n fieldKey,\n validators\n}: ValidatorsSectionProps) => {\n return (\n <Grid>\n <Cell span={12}>\n <Typography use={\"headline5\"}>{title}</Typography>\n <br />\n <Typography use={\"body2\"}>{description}</Typography>\n </Cell>\n <Cell span={12}>\n <ValidatorsList name={bindTo[fieldKey]} validators={validators} />\n </Cell>\n </Grid>\n );\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AAUA,IAAMA,MAAM,GAAG;EACXC,UAAU,EAAE,YAAY;EACxBC,cAAc,EAAE;AACpB,CAAC;AAEM,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkB,OAKD;EAAA,IAJ1BC,KAAK,QAALA,KAAK;IACLC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRL,UAAU,QAAVA,UAAU;EAEV,oBACI,6BAAC,UAAI,qBACD,6BAAC,UAAI;IAAC,IAAI,EAAE;EAAG,gBACX,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAY,GAAEG,KAAK,CAAc,eAClD,wCAAM,eACN,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAQ,GAAEC,WAAW,CAAc,CACjD,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE;EAAG,gBACX,6BAAC,8BAAc;IAAC,IAAI,EAAEL,MAAM,CAACM,QAAQ,CAAE;IAAC,UAAU,EAAEL;EAAW,EAAG,CAC/D,CACJ;AAEf,CAAC;AAAC"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_Grid","_Typography","_ValidatorsList","bindTo","validators","listValidators","ValidationsSection","_ref","title","description","fieldKey","default","createElement","Grid","Cell","span","Typography","use","ValidatorsList","name","exports"],"sources":["ValidationsSection.tsx"],"sourcesContent":["import React from \"react\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ValidatorsList } from \"./ValidatorsList\";\nimport { CmsModelFieldValidatorConfigAdapter } from \"~/utils/CmsModelFieldValidatorConfigAdapter\";\n\ninterface ValidatorsSectionProps {\n title: string;\n fieldKey: \"validators\" | \"listValidators\";\n description: string;\n validators: CmsModelFieldValidatorConfigAdapter[];\n}\n\nconst bindTo = {\n validators: \"validation\",\n listValidators: \"listValidation\"\n};\n\nexport const ValidationsSection = ({\n title,\n description,\n fieldKey,\n validators\n}: ValidatorsSectionProps) => {\n return (\n <Grid>\n <Cell span={12}>\n <Typography use={\"headline5\"}>{title}</Typography>\n <br />\n <Typography use={\"body2\"}>{description}</Typography>\n </Cell>\n <Cell span={12}>\n <ValidatorsList name={bindTo[fieldKey]} validators={validators} />\n </Cell>\n </Grid>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AAUA,IAAMI,MAAM,GAAG;EACXC,UAAU,EAAE,YAAY;EACxBC,cAAc,EAAE;AACpB,CAAC;AAEM,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA,EAKD;EAAA,IAJ1BC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRN,UAAU,GAAAG,IAAA,CAAVH,UAAU;EAEV,oBACIP,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACZ,KAAA,CAAAa,IAAI,qBACDhB,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACZ,KAAA,CAAAc,IAAI;IAACC,IAAI,EAAE;EAAG,gBACXlB,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACX,WAAA,CAAAe,UAAU;IAACC,GAAG,EAAE;EAAY,GAAET,KAAkB,CAAC,eAClDX,MAAA,CAAAc,OAAA,CAAAC,aAAA,WAAK,CAAC,eACNf,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACX,WAAA,CAAAe,UAAU;IAACC,GAAG,EAAE;EAAQ,GAAER,WAAwB,CACjD,CAAC,eACPZ,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACZ,KAAA,CAAAc,IAAI;IAACC,IAAI,EAAE;EAAG,gBACXlB,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACV,eAAA,CAAAgB,cAAc;IAACC,IAAI,EAAEhB,MAAM,CAACO,QAAQ,CAAE;IAACN,UAAU,EAAEA;EAAW,CAAE,CAC/D,CACJ,CAAC;AAEf,CAAC;AAACgB,OAAA,CAAAd,kBAAA,GAAAA,kBAAA"}
@@ -8,10 +8,10 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.ValidatorsList = void 0;
9
9
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
- var _debounce2 = _interopRequireDefault(require("lodash/debounce"));
12
- var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
13
11
  var _react = _interopRequireWildcard(require("react"));
14
12
  var _emotion = require("emotion");
13
+ var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
14
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
15
15
  var _plugins = require("@webiny/plugins");
16
16
  var _Switch = require("@webiny/ui/Switch");
17
17
  var _form = require("@webiny/form");
@@ -49,13 +49,13 @@ var onEnabledChange = function onEnabledChange(params) {
49
49
  message: validator.getDefaultMessage()
50
50
  }]));
51
51
  };
52
- var onFormChange = (0, _debounce2.default)(function (_ref) {
52
+ var onFormChange = (0, _debounce.default)(function (_ref) {
53
53
  var data = _ref.data,
54
54
  validationValue = _ref.validationValue,
55
55
  onChangeValidation = _ref.onChangeValidation,
56
56
  validatorIndex = _ref.validatorIndex;
57
- var newValidationValue = (0, _cloneDeep2.default)(validationValue);
58
- newValidationValue[validatorIndex] = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, newValidationValue[validatorIndex]), (0, _cloneDeep2.default)(data));
57
+ var newValidationValue = (0, _cloneDeep.default)(validationValue);
58
+ newValidationValue[validatorIndex] = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, newValidationValue[validatorIndex]), (0, _cloneDeep.default)(data));
59
59
  onChangeValidation(newValidationValue);
60
60
  }, 200);
61
61
  var renderEmpty = function renderEmpty() {
@@ -1 +1 @@
1
- {"version":3,"names":["Variable","styled","Comma","noPadding","css","gridBottomPadding","onEnabledChange","params","data","validationValue","onChangeValidation","validator","index","findIndex","item","name","getName","slice","settings","getDefaultSettings","message","getDefaultMessage","onFormChange","validatorIndex","newValidationValue","renderEmpty","getValidatorPlugin","plugin","plugins","byType","find","ValidatorItem","value","onChange","validatorName","renderCustomUi","renderSettings","actions","isRequired","description","variables","getVariables","length","push","i","variable","__html","getLabel","getDescription","Bind","validation","create","bind","ValidatorsList","props","validators","map"],"sources":["ValidatorsList.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { css } from \"emotion\";\nimport { cloneDeep, debounce } from \"lodash\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { Form, Bind } from \"@webiny/form\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { validation } from \"@webiny/validation\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CmsModelFieldValidator, CmsModelFieldValidatorPlugin } from \"~/types\";\nimport { Validator } from \"@webiny/validation/types\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport { CmsModelFieldValidatorConfigAdapter } from \"~/utils/CmsModelFieldValidatorConfigAdapter\";\nimport styled from \"@emotion/styled\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\n\nconst Variable = styled.span`\n font-weight: bold;\n cursor: pointer;\n`;\n\nconst Comma = styled.span`\n padding-right: 5px;\n`;\n\nconst noPadding = css`\n .webiny-ui-accordion-item__content {\n padding: 0 !important;\n }\n`;\n\nconst gridBottomPadding = css`\n :not(:last-child) {\n padding-bottom: 0;\n }\n`;\n\ninterface OnChangeValidationCallable {\n (validators: CmsModelFieldValidator[]): void;\n}\n\ninterface OnEnabledChangeParams {\n data: CmsModelFieldValidator;\n validationValue: CmsModelFieldValidator[];\n onChangeValidation: OnChangeValidationCallable;\n validator: CmsModelFieldValidatorConfigAdapter;\n}\n\nconst onEnabledChange = (params: OnEnabledChangeParams): void => {\n const { data, validationValue, onChangeValidation, validator } = params;\n if (data) {\n const index = validationValue.findIndex(item => item.name === validator.getName());\n onChangeValidation([\n ...validationValue.slice(0, index),\n ...validationValue.slice(index + 1)\n ]);\n return;\n }\n onChangeValidation([\n ...validationValue,\n {\n name: validator.getName(),\n settings: validator.getDefaultSettings(),\n message: validator.getDefaultMessage()\n }\n ]);\n};\n\nconst onFormChange = debounce(({ data, validationValue, onChangeValidation, validatorIndex }) => {\n const newValidationValue = cloneDeep(validationValue);\n newValidationValue[validatorIndex] = {\n ...newValidationValue[validatorIndex],\n ...cloneDeep(data)\n };\n onChangeValidation(newValidationValue);\n}, 200);\n\ninterface ValidatorsTabProps {\n name: string;\n validators: CmsModelFieldValidatorConfigAdapter[];\n}\n\nconst renderEmpty = () => null;\n\nconst getValidatorPlugin = (name: string): CmsModelFieldValidatorPlugin[\"validator\"] | null => {\n const plugin = plugins\n .byType<CmsModelFieldValidatorPlugin>(\"cms-model-field-validator\")\n .find(plugin => plugin.validator.name === name);\n\n if (!plugin) {\n return null;\n }\n\n return plugin.validator;\n};\n\ninterface ValidatorItemProps {\n validator: CmsModelFieldValidatorConfigAdapter;\n value: any;\n onChange: OnChangeValidationCallable;\n}\n\nconst ValidatorItem = ({ validator, value, onChange }: ValidatorItemProps) => {\n const validatorName = validator.getName();\n\n const plugin = getValidatorPlugin(validatorName);\n if (!plugin) {\n return <></>;\n }\n\n const validatorIndex = ((value || []) as Validator[]).findIndex(\n item => item.name === validatorName\n );\n\n const data = (value || [])[validatorIndex];\n\n if (typeof plugin.renderCustomUi === \"function\") {\n return <Fragment key={validatorName}>{plugin.renderCustomUi()}</Fragment>;\n }\n\n const renderSettings = plugin.renderSettings || renderEmpty;\n\n const actions = !validator.isRequired() ? (\n <AccordionItem.Actions>\n <Switch\n label=\"Enabled\"\n value={validatorIndex >= 0}\n onChange={() =>\n onEnabledChange({\n data,\n validationValue: value,\n onChangeValidation: onChange,\n validator: validator\n })\n }\n />\n </AccordionItem.Actions>\n ) : null;\n\n const description = [<span key={\"msg\"}>This message will be displayed to the user.</span>];\n const variables = validator.getVariables();\n\n if (variables.length) {\n description.push(<span key={\"vars\"}>&nbsp;Available variables:&nbsp;</span>);\n for (let i = 0; i < variables.length; i++) {\n const variable = variables[i];\n\n description.push(\n <Tooltip key={variable.name} content={variable.description} placement={\"bottom\"}>\n <Variable dangerouslySetInnerHTML={{ __html: `{${variable.name}}` }} />\n </Tooltip>\n );\n\n if (i < variables.length - 1) {\n description.push(<Comma key={`comma-${i}`}>,</Comma>);\n }\n }\n description.push(<Comma key={\"dot\"}>.</Comma>);\n }\n\n return (\n <AccordionItem\n key={validator.getName()}\n data-testid={`cms.editor.field-validator.${validator.getName()}`}\n interactive={false}\n open={!!data}\n title={validator.getLabel()}\n description={validator.getDescription()}\n actions={actions}\n className={noPadding}\n >\n {data && (\n <Form\n data={data}\n onChange={data =>\n onFormChange({\n data,\n validationValue: value,\n onChangeValidation: onChange,\n validatorIndex\n })\n }\n >\n {({ Bind }) => (\n <>\n <Grid className={gridBottomPadding}>\n <Cell span={12}>\n <Bind\n name={\"message\"}\n validators={validation.create(\"required\")}\n >\n {bind => {\n return (\n <Input\n {...bind}\n label={\"Message\"}\n data-testid=\"cms.editfield.validators.required\"\n description={<>{description}</>}\n />\n );\n }}\n </Bind>\n </Cell>\n </Grid>\n\n {renderSettings(validator)}\n </>\n )}\n </Form>\n )}\n </AccordionItem>\n );\n};\n\nexport const ValidatorsList: React.FC<ValidatorsTabProps> = props => {\n const { name, validators } = props;\n\n return (\n <Bind name={name} defaultValue={[]}>\n {bind => {\n const { value, onChange } = bind;\n return (\n <Accordion>\n {validators.map(validator => {\n return (\n <ValidatorItem\n key={validator.getName()}\n value={value}\n onChange={onChange}\n validator={validator}\n />\n );\n })}\n </Accordion>\n );\n }}\n </Bind>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_emotion","_cloneDeep","_interopRequireDefault","_debounce","_plugins","_Switch","_form","_Grid","_validation","_Input","_Accordion","_styled","_Tooltip","Variable","styled","label","target","Comma","noPadding","css","gridBottomPadding","onEnabledChange","params","data","validationValue","onChangeValidation","validator","index","findIndex","item","name","getName","concat","_toConsumableArray2","default","slice","settings","getDefaultSettings","message","getDefaultMessage","onFormChange","debounce","_ref","validatorIndex","newValidationValue","cloneDeep","_objectSpread2","renderEmpty","getValidatorPlugin","plugin","plugins","byType","find","ValidatorItem","_ref2","value","onChange","validatorName","createElement","Fragment","renderCustomUi","key","renderSettings","actions","isRequired","AccordionItem","Actions","Switch","description","variables","getVariables","length","push","i","variable","Tooltip","content","placement","dangerouslySetInnerHTML","__html","interactive","open","title","getLabel","getDescription","className","Form","_ref3","Bind","Grid","Cell","span","validators","validation","create","bind","Input","Object","assign","ValidatorsList","props","defaultValue","Accordion","map","exports"],"sources":["ValidatorsList.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { css } from \"emotion\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport debounce from \"lodash/debounce\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { Form, Bind } from \"@webiny/form\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { validation } from \"@webiny/validation\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CmsModelFieldValidator, CmsModelFieldValidatorPlugin } from \"~/types\";\nimport { Validator } from \"@webiny/validation/types\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport { CmsModelFieldValidatorConfigAdapter } from \"~/utils/CmsModelFieldValidatorConfigAdapter\";\nimport styled from \"@emotion/styled\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\n\nconst Variable = styled.span`\n font-weight: bold;\n cursor: pointer;\n`;\n\nconst Comma = styled.span`\n padding-right: 5px;\n`;\n\nconst noPadding = css`\n .webiny-ui-accordion-item__content {\n padding: 0 !important;\n }\n`;\n\nconst gridBottomPadding = css`\n :not(:last-child) {\n padding-bottom: 0;\n }\n`;\n\ninterface OnChangeValidationCallable {\n (validators: CmsModelFieldValidator[]): void;\n}\n\ninterface OnEnabledChangeParams {\n data: CmsModelFieldValidator;\n validationValue: CmsModelFieldValidator[];\n onChangeValidation: OnChangeValidationCallable;\n validator: CmsModelFieldValidatorConfigAdapter;\n}\n\nconst onEnabledChange = (params: OnEnabledChangeParams): void => {\n const { data, validationValue, onChangeValidation, validator } = params;\n if (data) {\n const index = validationValue.findIndex(item => item.name === validator.getName());\n onChangeValidation([\n ...validationValue.slice(0, index),\n ...validationValue.slice(index + 1)\n ]);\n return;\n }\n onChangeValidation([\n ...validationValue,\n {\n name: validator.getName(),\n settings: validator.getDefaultSettings(),\n message: validator.getDefaultMessage()\n }\n ]);\n};\n\nconst onFormChange = debounce(({ data, validationValue, onChangeValidation, validatorIndex }) => {\n const newValidationValue = cloneDeep(validationValue);\n newValidationValue[validatorIndex] = {\n ...newValidationValue[validatorIndex],\n ...cloneDeep(data)\n };\n onChangeValidation(newValidationValue);\n}, 200);\n\ninterface ValidatorsTabProps {\n name: string;\n validators: CmsModelFieldValidatorConfigAdapter[];\n}\n\nconst renderEmpty = () => null;\n\nconst getValidatorPlugin = (name: string): CmsModelFieldValidatorPlugin[\"validator\"] | null => {\n const plugin = plugins\n .byType<CmsModelFieldValidatorPlugin>(\"cms-model-field-validator\")\n .find(plugin => plugin.validator.name === name);\n\n if (!plugin) {\n return null;\n }\n\n return plugin.validator;\n};\n\ninterface ValidatorItemProps {\n validator: CmsModelFieldValidatorConfigAdapter;\n value: any;\n onChange: OnChangeValidationCallable;\n}\n\nconst ValidatorItem = ({ validator, value, onChange }: ValidatorItemProps) => {\n const validatorName = validator.getName();\n\n const plugin = getValidatorPlugin(validatorName);\n if (!plugin) {\n return <></>;\n }\n\n const validatorIndex = ((value || []) as Validator[]).findIndex(\n item => item.name === validatorName\n );\n\n const data = (value || [])[validatorIndex];\n\n if (typeof plugin.renderCustomUi === \"function\") {\n return <Fragment key={validatorName}>{plugin.renderCustomUi()}</Fragment>;\n }\n\n const renderSettings = plugin.renderSettings || renderEmpty;\n\n const actions = !validator.isRequired() ? (\n <AccordionItem.Actions>\n <Switch\n label=\"Enabled\"\n value={validatorIndex >= 0}\n onChange={() =>\n onEnabledChange({\n data,\n validationValue: value,\n onChangeValidation: onChange,\n validator: validator\n })\n }\n />\n </AccordionItem.Actions>\n ) : null;\n\n const description = [<span key={\"msg\"}>This message will be displayed to the user.</span>];\n const variables = validator.getVariables();\n\n if (variables.length) {\n description.push(<span key={\"vars\"}>&nbsp;Available variables:&nbsp;</span>);\n for (let i = 0; i < variables.length; i++) {\n const variable = variables[i];\n\n description.push(\n <Tooltip key={variable.name} content={variable.description} placement={\"bottom\"}>\n <Variable dangerouslySetInnerHTML={{ __html: `{${variable.name}}` }} />\n </Tooltip>\n );\n\n if (i < variables.length - 1) {\n description.push(<Comma key={`comma-${i}`}>,</Comma>);\n }\n }\n description.push(<Comma key={\"dot\"}>.</Comma>);\n }\n\n return (\n <AccordionItem\n key={validator.getName()}\n data-testid={`cms.editor.field-validator.${validator.getName()}`}\n interactive={false}\n open={!!data}\n title={validator.getLabel()}\n description={validator.getDescription()}\n actions={actions}\n className={noPadding}\n >\n {data && (\n <Form\n data={data}\n onChange={data =>\n onFormChange({\n data,\n validationValue: value,\n onChangeValidation: onChange,\n validatorIndex\n })\n }\n >\n {({ Bind }) => (\n <>\n <Grid className={gridBottomPadding}>\n <Cell span={12}>\n <Bind\n name={\"message\"}\n validators={validation.create(\"required\")}\n >\n {bind => {\n return (\n <Input\n {...bind}\n label={\"Message\"}\n data-testid=\"cms.editfield.validators.required\"\n description={<>{description}</>}\n />\n );\n }}\n </Bind>\n </Cell>\n </Grid>\n\n {renderSettings(validator)}\n </>\n )}\n </Form>\n )}\n </AccordionItem>\n );\n};\n\nexport const ValidatorsList: React.FC<ValidatorsTabProps> = props => {\n const { name, validators } = props;\n\n return (\n <Bind name={name} defaultValue={[]}>\n {bind => {\n const { value, onChange } = bind;\n return (\n <Accordion>\n {validators.map(validator => {\n return (\n <ValidatorItem\n key={validator.getName()}\n value={value}\n onChange={onChange}\n validator={validator}\n />\n );\n })}\n </Accordion>\n );\n }}\n </Bind>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["getValue","params","bind","index","name","value","get"],"sources":["getValue.ts"],"sourcesContent":["import get from \"lodash/get\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface Params {\n bind: BindComponentRenderProp;\n index: number;\n name: string;\n}\nconst getValue = (params: Params): string[] | undefined => {\n const { bind, index, name } = params;\n const value = bind.value || [];\n\n if (index >= 0) {\n return get(value, `${index}.${name}`);\n }\n\n return value;\n};\n\nexport default getValue;\n"],"mappings":";;;;;;;AAAA;AAQA,IAAMA,QAAQ,GAAG,SAAXA,QAAQ,CAAIC,MAAc,EAA2B;EACvD,IAAQC,IAAI,GAAkBD,MAAM,CAA5BC,IAAI;IAAEC,KAAK,GAAWF,MAAM,CAAtBE,KAAK;IAAEC,IAAI,GAAKH,MAAM,CAAfG,IAAI;EACzB,IAAMC,KAAK,GAAGH,IAAI,CAACG,KAAK,IAAI,EAAE;EAE9B,IAAIF,KAAK,IAAI,CAAC,EAAE;IACZ,OAAO,IAAAG,YAAG,EAACD,KAAK,YAAKF,KAAK,cAAIC,IAAI,EAAG;EACzC;EAEA,OAAOC,KAAK;AAChB,CAAC;AAAC,eAEaL,QAAQ;AAAA"}
1
+ {"version":3,"names":["_get","_interopRequireDefault","require","getValue","params","bind","index","name","value","get","concat","_default","exports","default"],"sources":["getValue.ts"],"sourcesContent":["import get from \"lodash/get\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface Params {\n bind: BindComponentRenderProp;\n index: number;\n name: string;\n}\nconst getValue = (params: Params): string[] | undefined => {\n const { bind, index, name } = params;\n const value = bind.value || [];\n\n if (index >= 0) {\n return get(value, `${index}.${name}`);\n }\n\n return value;\n};\n\nexport default getValue;\n"],"mappings":";;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AAQA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,MAAc,EAA2B;EACvD,IAAQC,IAAI,GAAkBD,MAAM,CAA5BC,IAAI;IAAEC,KAAK,GAAWF,MAAM,CAAtBE,KAAK;IAAEC,IAAI,GAAKH,MAAM,CAAfG,IAAI;EACzB,IAAMC,KAAK,GAAGH,IAAI,CAACG,KAAK,IAAI,EAAE;EAE9B,IAAIF,KAAK,IAAI,CAAC,EAAE;IACZ,OAAO,IAAAG,YAAG,EAACD,KAAK,KAAAE,MAAA,CAAKJ,KAAK,OAAAI,MAAA,CAAIH,IAAI,CAAE,CAAC;EACzC;EAEA,OAAOC,KAAK;AAChB,CAAC;AAAC,IAAAG,QAAA,GAEaR,QAAQ;AAAAS,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["setValue","params","value","bind","index","name","newValue","set","onChange"],"sources":["setValue.ts"],"sourcesContent":["import set from \"lodash/set\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface Params {\n value: string[];\n bind: BindComponentRenderProp;\n index: number;\n name: string;\n}\nconst setValue = (params: Params): void => {\n const { value, bind, index, name } = params;\n let newValue = [...(bind.value || [])];\n if (index >= 0) {\n set(newValue, `${index}.${name}`, value);\n } else {\n newValue = value;\n }\n\n bind.onChange(newValue);\n};\n\nexport default setValue;\n"],"mappings":";;;;;;;;AAAA;AASA,IAAMA,QAAQ,GAAG,SAAXA,QAAQ,CAAIC,MAAc,EAAW;EACvC,IAAQC,KAAK,GAAwBD,MAAM,CAAnCC,KAAK;IAAEC,IAAI,GAAkBF,MAAM,CAA5BE,IAAI;IAAEC,KAAK,GAAWH,MAAM,CAAtBG,KAAK;IAAEC,IAAI,GAAKJ,MAAM,CAAfI,IAAI;EAChC,IAAIC,QAAQ,oCAAQH,IAAI,CAACD,KAAK,IAAI,EAAE,CAAE;EACtC,IAAIE,KAAK,IAAI,CAAC,EAAE;IACZ,IAAAG,YAAG,EAACD,QAAQ,YAAKF,KAAK,cAAIC,IAAI,GAAIH,KAAK,CAAC;EAC5C,CAAC,MAAM;IACHI,QAAQ,GAAGJ,KAAK;EACpB;EAEAC,IAAI,CAACK,QAAQ,CAACF,QAAQ,CAAC;AAC3B,CAAC;AAAC,eAEaN,QAAQ;AAAA"}
1
+ {"version":3,"names":["_set","_interopRequireDefault","require","setValue","params","value","bind","index","name","newValue","_toConsumableArray2","default","set","concat","onChange","_default","exports"],"sources":["setValue.ts"],"sourcesContent":["import set from \"lodash/set\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface Params {\n value: string[];\n bind: BindComponentRenderProp;\n index: number;\n name: string;\n}\nconst setValue = (params: Params): void => {\n const { value, bind, index, name } = params;\n let newValue = [...(bind.value || [])];\n if (index >= 0) {\n set(newValue, `${index}.${name}`, value);\n } else {\n newValue = value;\n }\n\n bind.onChange(newValue);\n};\n\nexport default setValue;\n"],"mappings":";;;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AASA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,MAAc,EAAW;EACvC,IAAQC,KAAK,GAAwBD,MAAM,CAAnCC,KAAK;IAAEC,IAAI,GAAkBF,MAAM,CAA5BE,IAAI;IAAEC,KAAK,GAAWH,MAAM,CAAtBG,KAAK;IAAEC,IAAI,GAAKJ,MAAM,CAAfI,IAAI;EAChC,IAAIC,QAAQ,OAAAC,mBAAA,CAAAC,OAAA,EAAQL,IAAI,CAACD,KAAK,IAAI,EAAE,CAAE;EACtC,IAAIE,KAAK,IAAI,CAAC,EAAE;IACZ,IAAAK,YAAG,EAACH,QAAQ,KAAAI,MAAA,CAAKN,KAAK,OAAAM,MAAA,CAAIL,IAAI,GAAIH,KAAK,CAAC;EAC5C,CAAC,MAAM;IACHI,QAAQ,GAAGJ,KAAK;EACpB;EAEAC,IAAI,CAACQ,QAAQ,CAACL,QAAQ,CAAC;AAC3B,CAAC;AAAC,IAAAM,QAAA,GAEaZ,QAAQ;AAAAa,OAAA,CAAAL,OAAA,GAAAI,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["isValidatorDefinition","obj","Array","isArray","isValidatorDefinitionFactory","getValidatorPlugin","name","plugin","plugins","byType","find","validator","Error","getValidatorConfigs","field","validators","configs","resolvedValidator","push","CmsModelFieldValidatorConfigAdapter","getValidators","fieldPlugin","key","defaultValidators","title","description","fieldValidators","resolvedValidators","getListValidators","getFieldValidators"],"sources":["getValidators.ts"],"sourcesContent":["import { plugins } from \"@webiny/plugins\";\nimport {\n CmsModelField,\n CmsEditorFieldTypePlugin,\n CmsModelFieldValidatorPlugin,\n CmsModelFieldValidatorsGroup,\n CmsModelFieldValidatorConfig,\n CmsModelFieldValidatorsFactory\n} from \"~/types\";\nimport { CmsModelFieldValidatorConfigAdapter } from \"~/utils/CmsModelFieldValidatorConfigAdapter\";\n\nexport interface Validator {\n optional: boolean;\n validator: CmsModelFieldValidatorPlugin[\"validator\"];\n}\n\nconst isValidatorDefinition = (obj: unknown): obj is CmsModelFieldValidatorsGroup => {\n return obj ? !Array.isArray(obj) : false;\n};\n\nconst isValidatorDefinitionFactory = (obj: unknown): obj is CmsModelFieldValidatorsFactory => {\n return typeof obj === \"function\";\n};\n\ninterface GetValidatorsParams {\n field: CmsModelField;\n fieldPlugin: CmsEditorFieldTypePlugin;\n key: \"validators\" | \"listValidators\";\n defaultValidators: string[];\n}\n\nexport interface ValidationSection {\n title?: string;\n description?: string;\n validators: CmsModelFieldValidatorConfigAdapter[];\n}\n\nconst getValidatorPlugin = (name: string) => {\n const plugin = plugins\n .byType<CmsModelFieldValidatorPlugin>(\"cms-model-field-validator\")\n .find(plugin => plugin.validator.name === name);\n\n if (!plugin) {\n throw new Error(`Missing CMS field validator plugin \"${name}\"!`);\n }\n\n return plugin.validator as CmsModelFieldValidatorConfig;\n};\n\nconst getValidatorConfigs = (\n field: CmsModelField,\n validators: Array<CmsModelFieldValidatorConfig | string>\n) => {\n const configs: CmsModelFieldValidatorConfigAdapter[] = [];\n\n for (const validator of validators) {\n let resolvedValidator;\n if (typeof validator === \"string\") {\n resolvedValidator = getValidatorPlugin(validator);\n } else {\n resolvedValidator = validator;\n }\n\n configs.push(new CmsModelFieldValidatorConfigAdapter(field, resolvedValidator));\n }\n\n return configs;\n};\n\nconst getValidators = ({\n field,\n fieldPlugin,\n key,\n defaultValidators\n}: GetValidatorsParams): ValidationSection => {\n let title = \"\";\n let description = \"\";\n let fieldValidators = fieldPlugin.field[key];\n\n if (isValidatorDefinitionFactory(fieldValidators)) {\n fieldValidators = fieldValidators(field);\n }\n\n let resolvedValidators: (string | CmsModelFieldValidatorConfig)[] | undefined;\n if (isValidatorDefinition(fieldValidators)) {\n title = fieldValidators.title || \"\";\n description = fieldValidators.description || \"\";\n resolvedValidators = fieldValidators.validators;\n } else {\n resolvedValidators = fieldValidators;\n }\n\n const validators = getValidatorConfigs(field, resolvedValidators || defaultValidators);\n\n return {\n title,\n description,\n validators\n };\n};\n\nexport const getListValidators = (field: CmsModelField, fieldPlugin: CmsEditorFieldTypePlugin) => {\n return getValidators({\n field,\n fieldPlugin,\n key: \"listValidators\",\n defaultValidators: [\"minLength\", \"maxLength\"]\n });\n};\n\nexport const getFieldValidators = (field: CmsModelField, fieldPlugin: CmsEditorFieldTypePlugin) => {\n return getValidators({\n field,\n fieldPlugin,\n key: \"validators\",\n defaultValidators: []\n });\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_plugins","require","_CmsModelFieldValidatorConfigAdapter","isValidatorDefinition","obj","Array","isArray","isValidatorDefinitionFactory","getValidatorPlugin","name","plugin","plugins","byType","find","validator","Error","concat","getValidatorConfigs","field","validators","configs","_iterator","_createForOfIteratorHelper2","default","_step","s","n","done","value","resolvedValidator","push","CmsModelFieldValidatorConfigAdapter","err","e","f","getValidators","_ref","fieldPlugin","key","defaultValidators","title","description","fieldValidators","resolvedValidators","getListValidators","exports","getFieldValidators"],"sources":["getValidators.ts"],"sourcesContent":["import { plugins } from \"@webiny/plugins\";\nimport {\n CmsModelField,\n CmsEditorFieldTypePlugin,\n CmsModelFieldValidatorPlugin,\n CmsModelFieldValidatorsGroup,\n CmsModelFieldValidatorConfig,\n CmsModelFieldValidatorsFactory\n} from \"~/types\";\nimport { CmsModelFieldValidatorConfigAdapter } from \"~/utils/CmsModelFieldValidatorConfigAdapter\";\n\nexport interface Validator {\n optional: boolean;\n validator: CmsModelFieldValidatorPlugin[\"validator\"];\n}\n\nconst isValidatorDefinition = (obj: unknown): obj is CmsModelFieldValidatorsGroup => {\n return obj ? !Array.isArray(obj) : false;\n};\n\nconst isValidatorDefinitionFactory = (obj: unknown): obj is CmsModelFieldValidatorsFactory => {\n return typeof obj === \"function\";\n};\n\ninterface GetValidatorsParams {\n field: CmsModelField;\n fieldPlugin: CmsEditorFieldTypePlugin;\n key: \"validators\" | \"listValidators\";\n defaultValidators: string[];\n}\n\nexport interface ValidationSection {\n title?: string;\n description?: string;\n validators: CmsModelFieldValidatorConfigAdapter[];\n}\n\nconst getValidatorPlugin = (name: string) => {\n const plugin = plugins\n .byType<CmsModelFieldValidatorPlugin>(\"cms-model-field-validator\")\n .find(plugin => plugin.validator.name === name);\n\n if (!plugin) {\n throw new Error(`Missing CMS field validator plugin \"${name}\"!`);\n }\n\n return plugin.validator as CmsModelFieldValidatorConfig;\n};\n\nconst getValidatorConfigs = (\n field: CmsModelField,\n validators: Array<CmsModelFieldValidatorConfig | string>\n) => {\n const configs: CmsModelFieldValidatorConfigAdapter[] = [];\n\n for (const validator of validators) {\n let resolvedValidator;\n if (typeof validator === \"string\") {\n resolvedValidator = getValidatorPlugin(validator);\n } else {\n resolvedValidator = validator;\n }\n\n configs.push(new CmsModelFieldValidatorConfigAdapter(field, resolvedValidator));\n }\n\n return configs;\n};\n\nconst getValidators = ({\n field,\n fieldPlugin,\n key,\n defaultValidators\n}: GetValidatorsParams): ValidationSection => {\n let title = \"\";\n let description = \"\";\n let fieldValidators = fieldPlugin.field[key];\n\n if (isValidatorDefinitionFactory(fieldValidators)) {\n fieldValidators = fieldValidators(field);\n }\n\n let resolvedValidators: (string | CmsModelFieldValidatorConfig)[] | undefined;\n if (isValidatorDefinition(fieldValidators)) {\n title = fieldValidators.title || \"\";\n description = fieldValidators.description || \"\";\n resolvedValidators = fieldValidators.validators;\n } else {\n resolvedValidators = fieldValidators;\n }\n\n const validators = getValidatorConfigs(field, resolvedValidators || defaultValidators);\n\n return {\n title,\n description,\n validators\n };\n};\n\nexport const getListValidators = (field: CmsModelField, fieldPlugin: CmsEditorFieldTypePlugin) => {\n return getValidators({\n field,\n fieldPlugin,\n key: \"listValidators\",\n defaultValidators: [\"minLength\", \"maxLength\"]\n });\n};\n\nexport const getFieldValidators = (field: CmsModelField, fieldPlugin: CmsEditorFieldTypePlugin) => {\n return getValidators({\n field,\n fieldPlugin,\n key: \"validators\",\n defaultValidators: []\n });\n};\n"],"mappings":"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"}
@@ -34,11 +34,14 @@ var FullScreenDialog = /*#__PURE__*/(0, _styled.default)(_Dialog.Dialog, {
34
34
  })("width:100vw;height:100vh;.mdc-dialog__surface{width:100%;max-width:100% !important;max-height:100% !important;.webiny-ui-dialog__content{max-width:100% !important;max-height:100% !important;width:100vw;height:calc(100vh - 155px);overflow:scroll !important;}}");
35
35
  function setupState(field, fieldPlugin, contentModel) {
36
36
  var clonedField = (0, _cloneDeep.default)(field);
37
+ var _useModel = (0, _hooks.useModel)(),
38
+ model = _useModel.model;
37
39
  if (!clonedField.renderer || !clonedField.renderer.name) {
38
40
  var _plugins$byType$filte = _plugins.plugins.byType("cms-editor-field-renderer").filter(function (item) {
39
41
  return item.renderer.canUse({
40
42
  field: field,
41
- fieldPlugin: fieldPlugin
43
+ fieldPlugin: fieldPlugin,
44
+ model: model
42
45
  });
43
46
  }),
44
47
  _plugins$byType$filte2 = (0, _slicedToArray2.default)(_plugins$byType$filte, 1),
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","namespace","FullScreenDialog","styled","Dialog","setupState","field","fieldPlugin","contentModel","clonedField","cloneDeep","renderer","name","plugins","byType","filter","item","canUse","renderPlugin","rendererName","shadowField","isTitleField","titleFieldId","fieldId","EditFieldDialog","props","useModelField","useModelEditor","data","setContentModelData","setData","useState","headerTitle","fieldTypeLabel","label","onSubmit","form","prev","onClose","submit","individualValidation","getFieldValidators","hasValidators","validators","length","showValidatorsTab","multipleValues","predefinedValuesTabEnabled","allowPredefinedValues","predefinedValues","enabled","listValidation","getListValidators","title","description"],"sources":["EditFieldDialog.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport styled from \"@emotion/styled\";\nimport { Dialog, DialogContent, DialogTitle, DialogActions } from \"~/admin/components/Dialog\";\nimport { Form, FormOnSubmit } from \"@webiny/form\";\nimport { Tabs, Tab } from \"@webiny/ui/Tabs\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport {\n CmsEditorContentModel,\n CmsModelField,\n CmsEditorFieldRendererPlugin,\n CmsEditorFieldTypePlugin\n} from \"~/types\";\nimport { plugins } from \"@webiny/plugins\";\nimport GeneralTab from \"./EditFieldDialog/GeneralTab\";\nimport AppearanceTab from \"./EditFieldDialog/AppearanceTab\";\nimport PredefinedValues from \"./EditFieldDialog/PredefinedValues\";\nimport { ValidatorsList } from \"./EditFieldDialog/ValidatorsList\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { useModelField, useModelEditor } from \"~/admin/hooks\";\nimport { ModelFieldProvider } from \"~/admin/components/ModelFieldProvider\";\nimport { ValidationsSection } from \"~/admin/components/FieldEditor/EditFieldDialog/ValidationsSection\";\nimport { getFieldValidators, getListValidators } from \"./EditFieldDialog/getValidators\";\n\nconst t = i18n.namespace(\"app-headless-cms/admin/components/editor\");\n\nconst FullScreenDialog = styled(Dialog)`\n width: 100vw;\n height: 100vh;\n .mdc-dialog__surface {\n width: 100%;\n max-width: 100% !important;\n max-height: 100% !important;\n .webiny-ui-dialog__content {\n max-width: 100% !important;\n max-height: 100% !important;\n width: 100vw;\n height: calc(100vh - 155px);\n overflow: scroll !important;\n }\n }\n`;\n\nfunction setupState(\n field: CmsModelField,\n fieldPlugin: CmsEditorFieldTypePlugin,\n contentModel: CmsEditorContentModel\n): EditFieldState {\n const clonedField = cloneDeep(field);\n\n if (!clonedField.renderer || !clonedField.renderer.name) {\n const [renderPlugin] = plugins\n .byType<CmsEditorFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .filter(item => item.renderer.canUse({ field, fieldPlugin }));\n\n if (renderPlugin) {\n clonedField.renderer = { name: renderPlugin.renderer.rendererName };\n }\n }\n\n return {\n shadowField: clonedField,\n isTitleField: contentModel.titleFieldId === field.fieldId\n };\n}\n\ninterface EditFieldState {\n shadowField: CmsModelField;\n isTitleField: boolean;\n}\n\ninterface EditFieldDialogProps {\n onClose: () => void;\n onSubmit: FormOnSubmit<CmsModelField>;\n}\n\nconst EditFieldDialog: React.FC<EditFieldDialogProps> = props => {\n const { field, fieldPlugin } = useModelField();\n const { data: contentModel, setData: setContentModelData } = useModelEditor();\n const [{ shadowField, isTitleField }] = useState<EditFieldState>(\n setupState(field, fieldPlugin, contentModel)\n );\n\n const headerTitle = t`Field Settings - {fieldTypeLabel}`({\n fieldTypeLabel: fieldPlugin.field.label\n });\n\n const onSubmit: FormOnSubmit<CmsModelField> = (data, form) => {\n /**\n * In case title field `fieldId` changed, we need to update the title field on the model itself.\n */\n if (isTitleField && contentModel.titleFieldId !== data.fieldId) {\n setContentModelData(prev => {\n return {\n ...prev,\n titleFieldId: data.fieldId\n };\n });\n }\n\n props.onSubmit(data, form);\n };\n\n return (\n <FullScreenDialog\n preventOutsideDismiss\n open={true}\n onClose={props.onClose}\n data-testid={\"cms-editor-edit-fields-dialog\"}\n >\n <DialogTitle>{headerTitle}</DialogTitle>\n <Form<CmsModelField> data={shadowField} onSubmit={onSubmit}>\n {({ data: shadowField, submit }) => {\n const individualValidation = getFieldValidators(shadowField, fieldPlugin);\n\n const hasValidators = individualValidation.validators.length > 0;\n\n const showValidatorsTab =\n shadowField.multipleValues || individualValidation.validators.length > 0;\n\n const predefinedValuesTabEnabled =\n fieldPlugin.field.allowPredefinedValues &&\n shadowField.predefinedValues &&\n shadowField.predefinedValues.enabled;\n\n const listValidation = getListValidators(shadowField, fieldPlugin);\n\n return (\n /**\n * We're using the `shadowField` as the new context, because we want all changes by form inputs\n * to immediately be propagated to all dialog components.\n */\n <ModelFieldProvider field={shadowField}>\n <DialogContent>\n <Tabs>\n <Tab label={t`General`}>\n <GeneralTab />\n </Tab>\n <Tab\n label={t`Predefined Values`}\n disabled={!predefinedValuesTabEnabled}\n >\n {predefinedValuesTabEnabled && <PredefinedValues />}\n </Tab>\n\n <Tab\n visible={showValidatorsTab}\n label={\"Validators\"}\n data-testid={\"cms.editor.field.tabs.validators\"}\n >\n {shadowField.multipleValues ? (\n <>\n <ValidationsSection\n validators={listValidation.validators}\n fieldKey={\"listValidators\"}\n title={\n listValidation.title || \"List validators\"\n }\n description={\n listValidation.description ||\n \"These validators are applied to the entire list of values.\"\n }\n />\n\n {hasValidators ? (\n <ValidationsSection\n fieldKey={\"validators\"}\n validators={individualValidation.validators}\n title={\n individualValidation.title ||\n \"Individual value validators\"\n }\n description={\n individualValidation.description ||\n \"These validators are applied to each value in the list.\"\n }\n />\n ) : null}\n </>\n ) : null}\n\n {!shadowField.multipleValues && hasValidators ? (\n <ValidatorsList\n name={\"validation\"}\n validators={individualValidation.validators}\n />\n ) : null}\n </Tab>\n <Tab label={t`Appearance`}>\n <AppearanceTab />\n </Tab>\n </Tabs>\n </DialogContent>\n <DialogActions>\n <ButtonDefault\n data-testid=\"cms.editor.field.settings.cancel\"\n onClick={props.onClose}\n >{t`Cancel`}</ButtonDefault>\n <ButtonPrimary\n data-testid=\"cms.editor.field.settings.save\"\n onClick={submit}\n >{t`Save Field`}</ButtonPrimary>\n </DialogActions>\n </ModelFieldProvider>\n );\n }}\n </Form>\n </FullScreenDialog>\n );\n};\n\nexport default EditFieldDialog;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_cloneDeep","_interopRequireDefault","_styled","_Dialog","_form","_Tabs","_i18n","_plugins","_GeneralTab","_AppearanceTab","_PredefinedValues","_ValidatorsList","_Button","_hooks","_ModelFieldProvider","_ValidationsSection","_getValidators","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","t","i18n","namespace","FullScreenDialog","styled","Dialog","label","target","setupState","field","fieldPlugin","contentModel","clonedField","cloneDeep","_useModel","useModel","model","renderer","name","_plugins$byType$filte","plugins","byType","filter","item","canUse","_plugins$byType$filte2","_slicedToArray2","default","renderPlugin","rendererName","shadowField","isTitleField","titleFieldId","fieldId","EditFieldDialog","props","_useModelField","useModelField","_useModelEditor","useModelEditor","data","setContentModelData","setData","_useState","useState","_useState2","_useState2$","headerTitle","_taggedTemplateLiteral2","fieldTypeLabel","onSubmit","form","prev","_objectSpread2","createElement","preventOutsideDismiss","open","onClose","DialogTitle","Form","_ref","submit","individualValidation","getFieldValidators","hasValidators","validators","length","showValidatorsTab","multipleValues","predefinedValuesTabEnabled","allowPredefinedValues","predefinedValues","enabled","listValidation","getListValidators","ModelFieldProvider","DialogContent","Tabs","Tab","disabled","visible","Fragment","ValidationsSection","fieldKey","title","description","ValidatorsList","DialogActions","ButtonDefault","onClick","ButtonPrimary","_default","exports"],"sources":["EditFieldDialog.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport styled from \"@emotion/styled\";\nimport { Dialog, DialogContent, DialogTitle, DialogActions } from \"~/admin/components/Dialog\";\nimport { Form, FormOnSubmit } from \"@webiny/form\";\nimport { Tabs, Tab } from \"@webiny/ui/Tabs\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport {\n CmsEditorContentModel,\n CmsModelField,\n CmsEditorFieldRendererPlugin,\n CmsEditorFieldTypePlugin\n} from \"~/types\";\nimport { plugins } from \"@webiny/plugins\";\nimport GeneralTab from \"./EditFieldDialog/GeneralTab\";\nimport AppearanceTab from \"./EditFieldDialog/AppearanceTab\";\nimport PredefinedValues from \"./EditFieldDialog/PredefinedValues\";\nimport { ValidatorsList } from \"./EditFieldDialog/ValidatorsList\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { useModelField, useModelEditor, useModel } from \"~/admin/hooks\";\nimport { ModelFieldProvider } from \"~/admin/components/ModelFieldProvider\";\nimport { ValidationsSection } from \"~/admin/components/FieldEditor/EditFieldDialog/ValidationsSection\";\nimport { getFieldValidators, getListValidators } from \"./EditFieldDialog/getValidators\";\n\nconst t = i18n.namespace(\"app-headless-cms/admin/components/editor\");\n\nconst FullScreenDialog = styled(Dialog)`\n width: 100vw;\n height: 100vh;\n .mdc-dialog__surface {\n width: 100%;\n max-width: 100% !important;\n max-height: 100% !important;\n .webiny-ui-dialog__content {\n max-width: 100% !important;\n max-height: 100% !important;\n width: 100vw;\n height: calc(100vh - 155px);\n overflow: scroll !important;\n }\n }\n`;\n\nfunction setupState(\n field: CmsModelField,\n fieldPlugin: CmsEditorFieldTypePlugin,\n contentModel: CmsEditorContentModel\n): EditFieldState {\n const clonedField = cloneDeep(field);\n const { model } = useModel();\n\n if (!clonedField.renderer || !clonedField.renderer.name) {\n const [renderPlugin] = plugins\n .byType<CmsEditorFieldRendererPlugin>(\"cms-editor-field-renderer\")\n .filter(item => item.renderer.canUse({ field, fieldPlugin, model }));\n\n if (renderPlugin) {\n clonedField.renderer = { name: renderPlugin.renderer.rendererName };\n }\n }\n\n return {\n shadowField: clonedField,\n isTitleField: contentModel.titleFieldId === field.fieldId\n };\n}\n\ninterface EditFieldState {\n shadowField: CmsModelField;\n isTitleField: boolean;\n}\n\ninterface EditFieldDialogProps {\n onClose: () => void;\n onSubmit: FormOnSubmit<CmsModelField>;\n}\n\nconst EditFieldDialog: React.FC<EditFieldDialogProps> = props => {\n const { field, fieldPlugin } = useModelField();\n const { data: contentModel, setData: setContentModelData } = useModelEditor();\n const [{ shadowField, isTitleField }] = useState<EditFieldState>(\n setupState(field, fieldPlugin, contentModel)\n );\n\n const headerTitle = t`Field Settings - {fieldTypeLabel}`({\n fieldTypeLabel: fieldPlugin.field.label\n });\n\n const onSubmit: FormOnSubmit<CmsModelField> = (data, form) => {\n /**\n * In case title field `fieldId` changed, we need to update the title field on the model itself.\n */\n if (isTitleField && contentModel.titleFieldId !== data.fieldId) {\n setContentModelData(prev => {\n return {\n ...prev,\n titleFieldId: data.fieldId\n };\n });\n }\n\n props.onSubmit(data, form);\n };\n\n return (\n <FullScreenDialog\n preventOutsideDismiss\n open={true}\n onClose={props.onClose}\n data-testid={\"cms-editor-edit-fields-dialog\"}\n >\n <DialogTitle>{headerTitle}</DialogTitle>\n <Form<CmsModelField> data={shadowField} onSubmit={onSubmit}>\n {({ data: shadowField, submit }) => {\n const individualValidation = getFieldValidators(shadowField, fieldPlugin);\n\n const hasValidators = individualValidation.validators.length > 0;\n\n const showValidatorsTab =\n shadowField.multipleValues || individualValidation.validators.length > 0;\n\n const predefinedValuesTabEnabled =\n fieldPlugin.field.allowPredefinedValues &&\n shadowField.predefinedValues &&\n shadowField.predefinedValues.enabled;\n\n const listValidation = getListValidators(shadowField, fieldPlugin);\n\n return (\n /**\n * We're using the `shadowField` as the new context, because we want all changes by form inputs\n * to immediately be propagated to all dialog components.\n */\n <ModelFieldProvider field={shadowField}>\n <DialogContent>\n <Tabs>\n <Tab label={t`General`}>\n <GeneralTab />\n </Tab>\n <Tab\n label={t`Predefined Values`}\n disabled={!predefinedValuesTabEnabled}\n >\n {predefinedValuesTabEnabled && <PredefinedValues />}\n </Tab>\n\n <Tab\n visible={showValidatorsTab}\n label={\"Validators\"}\n data-testid={\"cms.editor.field.tabs.validators\"}\n >\n {shadowField.multipleValues ? (\n <>\n <ValidationsSection\n validators={listValidation.validators}\n fieldKey={\"listValidators\"}\n title={\n listValidation.title || \"List validators\"\n }\n description={\n listValidation.description ||\n \"These validators are applied to the entire list of values.\"\n }\n />\n\n {hasValidators ? (\n <ValidationsSection\n fieldKey={\"validators\"}\n validators={individualValidation.validators}\n title={\n individualValidation.title ||\n \"Individual value validators\"\n }\n description={\n individualValidation.description ||\n \"These validators are applied to each value in the list.\"\n }\n />\n ) : null}\n </>\n ) : null}\n\n {!shadowField.multipleValues && hasValidators ? (\n <ValidatorsList\n name={\"validation\"}\n validators={individualValidation.validators}\n />\n ) : null}\n </Tab>\n <Tab label={t`Appearance`}>\n <AppearanceTab />\n </Tab>\n </Tabs>\n </DialogContent>\n <DialogActions>\n <ButtonDefault\n data-testid=\"cms.editor.field.settings.cancel\"\n onClick={props.onClose}\n >{t`Cancel`}</ButtonDefault>\n <ButtonPrimary\n data-testid=\"cms.editor.field.settings.save\"\n onClick={submit}\n >{t`Save Field`}</ButtonPrimary>\n </DialogActions>\n </ModelFieldProvider>\n );\n }}\n </Form>\n </FullScreenDialog>\n );\n};\n\nexport default EditFieldDialog;\n"],"mappings":"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"}