@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":["GroupSelect","value","props","useQuery","LIST_MENU_CONTENT_GROUPS_MODELS","data","loading","groups","listContentModelGroups","options","useMemo","map","item","id","label","name","selectValue"],"sources":["GroupSelect.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { FormComponentProps } from \"@webiny/ui/types\";\nimport {\n LIST_MENU_CONTENT_GROUPS_MODELS,\n ListMenuCmsGroupsQueryResponse\n} from \"~/admin/viewsGraphql\";\nimport { useQuery } from \"~/admin/hooks\";\n\nexport default function GroupSelect({ value, ...props }: FormComponentProps) {\n const { data, loading } = useQuery<ListMenuCmsGroupsQueryResponse>(\n LIST_MENU_CONTENT_GROUPS_MODELS\n );\n\n const groups = loading || !data ? [] : data.listContentModelGroups.data;\n const options = useMemo(() => {\n return groups.map(item => ({ value: item.id, label: item.name }));\n }, [groups]);\n\n const selectValue = typeof value === \"string\" ? value : value.id;\n\n return (\n <Select\n {...props}\n value={loading ? \"\" : selectValue}\n label={\"Content model group\"}\n options={options}\n />\n );\n}\n"],"mappings":";;;;;;;;;AAAA;AACA;AAEA;AAIA;AAAyC;AAE1B,SAASA,WAAW,OAA0C;EAAA,IAAvCC,KAAK,QAALA,KAAK;IAAKC,KAAK;EACjD,gBAA0B,IAAAC,eAAQ,EAC9BC,6CAA+B,CAClC;IAFOC,IAAI,aAAJA,IAAI;IAAEC,OAAO,aAAPA,OAAO;EAIrB,IAAMC,MAAM,GAAGD,OAAO,IAAI,CAACD,IAAI,GAAG,EAAE,GAAGA,IAAI,CAACG,sBAAsB,CAACH,IAAI;EACvE,IAAMI,OAAO,GAAG,IAAAC,cAAO,EAAC,YAAM;IAC1B,OAAOH,MAAM,CAACI,GAAG,CAAC,UAAAC,IAAI;MAAA,OAAK;QAAEX,KAAK,EAAEW,IAAI,CAACC,EAAE;QAAEC,KAAK,EAAEF,IAAI,CAACG;MAAK,CAAC;IAAA,CAAC,CAAC;EACrE,CAAC,EAAE,CAACR,MAAM,CAAC,CAAC;EAEZ,IAAMS,WAAW,GAAG,OAAOf,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGA,KAAK,CAACY,EAAE;EAEhE,oBACI,6BAAC,cAAM,oBACCX,KAAK;IACT,KAAK,EAAEI,OAAO,GAAG,EAAE,GAAGU,WAAY;IAClC,KAAK,EAAE,qBAAsB;IAC7B,OAAO,EAAEP;EAAQ,GACnB;AAEV"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_Select","_viewsGraphql","_hooks","_excluded","GroupSelect","_ref","value","props","_objectWithoutProperties2","default","_useQuery","useQuery","LIST_MENU_CONTENT_GROUPS_MODELS","data","loading","groups","listContentModelGroups","options","useMemo","map","item","id","label","name","selectValue","createElement","Select","Object","assign"],"sources":["GroupSelect.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { FormComponentProps } from \"@webiny/ui/types\";\nimport {\n LIST_MENU_CONTENT_GROUPS_MODELS,\n ListMenuCmsGroupsQueryResponse\n} from \"~/admin/viewsGraphql\";\nimport { useQuery } from \"~/admin/hooks\";\n\nexport default function GroupSelect({ value, ...props }: FormComponentProps) {\n const { data, loading } = useQuery<ListMenuCmsGroupsQueryResponse>(\n LIST_MENU_CONTENT_GROUPS_MODELS\n );\n\n const groups = loading || !data ? [] : data.listContentModelGroups.data;\n const options = useMemo(() => {\n return groups.map(item => ({ value: item.id, label: item.name }));\n }, [groups]);\n\n const selectValue = typeof value === \"string\" ? value : value.id;\n\n return (\n <Select\n {...props}\n value={loading ? \"\" : selectValue}\n label={\"Content model group\"}\n options={options}\n />\n );\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AAIA,IAAAG,MAAA,GAAAH,OAAA;AAAyC,IAAAI,SAAA;AAE1B,SAASC,WAAWA,CAAAC,IAAA,EAA0C;EAAA,IAAvCC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAKC,KAAK,OAAAC,yBAAA,CAAAC,OAAA,EAAAJ,IAAA,EAAAF,SAAA;EACjD,IAAAO,SAAA,GAA0B,IAAAC,eAAQ,EAC9BC,6CACJ,CAAC;IAFOC,IAAI,GAAAH,SAAA,CAAJG,IAAI;IAAEC,OAAO,GAAAJ,SAAA,CAAPI,OAAO;EAIrB,IAAMC,MAAM,GAAGD,OAAO,IAAI,CAACD,IAAI,GAAG,EAAE,GAAGA,IAAI,CAACG,sBAAsB,CAACH,IAAI;EACvE,IAAMI,OAAO,GAAG,IAAAC,cAAO,EAAC,YAAM;IAC1B,OAAOH,MAAM,CAACI,GAAG,CAAC,UAAAC,IAAI;MAAA,OAAK;QAAEd,KAAK,EAAEc,IAAI,CAACC,EAAE;QAAEC,KAAK,EAAEF,IAAI,CAACG;MAAK,CAAC;IAAA,CAAC,CAAC;EACrE,CAAC,EAAE,CAACR,MAAM,CAAC,CAAC;EAEZ,IAAMS,WAAW,GAAG,OAAOlB,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGA,KAAK,CAACe,EAAE;EAEhE,oBACIxB,MAAA,CAAAY,OAAA,CAAAgB,aAAA,CAACzB,OAAA,CAAA0B,MAAM,EAAAC,MAAA,CAAAC,MAAA,KACCrB,KAAK;IACTD,KAAK,EAAEQ,OAAO,GAAG,EAAE,GAAGU,WAAY;IAClCF,KAAK,EAAE,qBAAsB;IAC7BL,OAAO,EAAEA;EAAQ,EACpB,CAAC;AAEV"}
@@ -1 +1 @@
1
- {"version":3,"names":["plugin","name","type","title","description","icon","render","props"],"sources":["index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { CmsEditorFormSettingsPlugin } from \"~/types\";\nimport GeneralSettings from \"./components/GeneralSettings\";\nimport { ReactComponent as SettingsIcon } from \"./icons/round-settings-24px.svg\";\n\nconst plugin: CmsEditorFormSettingsPlugin = {\n name: \"cms-editor-form-settings-general\",\n type: \"cms-editor-form-settings\",\n title: \"General settings\",\n description: \"Manage content model's name and description.\",\n icon: <SettingsIcon />,\n render(props) {\n return <GeneralSettings {...props} />;\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;AAAA;AAEA;AACA;AAEA,IAAMA,MAAmC,GAAG;EACxCC,IAAI,EAAE,kCAAkC;EACxCC,IAAI,EAAE,0BAA0B;EAChCC,KAAK,EAAE,kBAAkB;EACzBC,WAAW,EAAE,8CAA8C;EAC3DC,IAAI,eAAE,oBAAC,iCAAY,OAAG;EACtBC,MAAM,kBAACC,KAAK,EAAE;IACV,oBAAO,oBAAC,wBAAe,EAAKA,KAAK,CAAI;EACzC;AACJ,CAAC;AAAC,eAEaP,MAAM;AAAA"}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_GeneralSettings","_interopRequireDefault","_roundSettings24px","plugin","name","type","title","description","icon","createElement","ReactComponent","render","props","default","_default","exports"],"sources":["index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { CmsEditorFormSettingsPlugin } from \"~/types\";\nimport GeneralSettings from \"./components/GeneralSettings\";\nimport { ReactComponent as SettingsIcon } from \"./icons/round-settings-24px.svg\";\n\nconst plugin: CmsEditorFormSettingsPlugin = {\n name: \"cms-editor-form-settings-general\",\n type: \"cms-editor-form-settings\",\n title: \"General settings\",\n description: \"Manage content model's name and description.\",\n icon: <SettingsIcon />,\n render(props) {\n return <GeneralSettings {...props} />;\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,gBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AAEA,IAAMI,MAAmC,GAAG;EACxCC,IAAI,EAAE,kCAAkC;EACxCC,IAAI,EAAE,0BAA0B;EAChCC,KAAK,EAAE,kBAAkB;EACzBC,WAAW,EAAE,8CAA8C;EAC3DC,IAAI,eAAEX,KAAA,CAAAY,aAAA,CAACP,kBAAA,CAAAQ,cAAY,MAAE,CAAC;EACtBC,MAAM,WAAAA,OAACC,KAAK,EAAE;IACV,oBAAOf,KAAA,CAAAY,aAAA,CAACT,gBAAA,CAAAa,OAAe,EAAKD,KAAQ,CAAC;EACzC;AACJ,CAAC;AAAC,IAAAE,QAAA,GAEaX,MAAM;AAAAY,OAAA,CAAAF,OAAA,GAAAC,QAAA"}
@@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.DefaultOnEntryDelete = void 0;
9
- var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
10
9
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
11
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
  var _hooks = require("../../hooks");
14
- var _contentEntries = require("../../graphql/contentEntries");
15
- var GQLCache = _interopRequireWildcard(require("../../views/contentEntries/ContentEntry/cache"));
14
+ var _appHeadlessCmsCommon = require("@webiny/app-headless-cms-common");
16
15
  var _utils = require("@webiny/utils");
17
16
  var createMutationKey = function createMutationKey(params) {
18
17
  var model = params.model,
@@ -29,17 +28,17 @@ var OnEntryDelete = function OnEntryDelete() {
29
28
  locale: locale
30
29
  });
31
30
  if (!mutations.current[key]) {
32
- mutations.current[key] = (0, _contentEntries.createDeleteMutation)(model);
31
+ mutations.current[key] = (0, _appHeadlessCmsCommon.createDeleteMutation)(model);
33
32
  }
34
33
  return mutations.current[key];
35
34
  };
36
35
  var handleOnDelete = /*#__PURE__*/function () {
37
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(_ref) {
38
- var entry, model, id, client, _ref$listQueryVariabl, listQueryVariables, locale, mutation, response, _error, error, _parseIdentifier, version, revisions;
36
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(params) {
37
+ var entry, model, id, client, locale, mutation, response, _error, error, _parseIdentifier, version;
39
38
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
40
39
  while (1) switch (_context.prev = _context.next) {
41
40
  case 0:
42
- entry = _ref.entry, model = _ref.model, id = _ref.id, client = _ref.client, _ref$listQueryVariabl = _ref.listQueryVariables, listQueryVariables = _ref$listQueryVariabl === void 0 ? {} : _ref$listQueryVariabl, locale = _ref.locale;
41
+ entry = params.entry, model = params.model, id = params.id, client = params.client, locale = params.locale;
43
42
  mutation = getMutation(model, locale);
44
43
  _context.next = 4;
45
44
  return client.mutate({
@@ -78,48 +77,42 @@ var OnEntryDelete = function OnEntryDelete() {
78
77
  */
79
78
  _parseIdentifier = (0, _utils.parseIdentifier)(id), version = _parseIdentifier.version;
80
79
  if (!(version === null)) {
81
- _context.next = 15;
80
+ _context.next = 14;
82
81
  break;
83
82
  }
84
- GQLCache.removeEntryFromListCache(model, client.cache, entry, listQueryVariables);
85
83
  return _context.abrupt("return", {
86
84
  data: true,
87
85
  error: null
88
86
  });
89
- case 15:
90
- // We have other revisions, update entry's cache
91
- revisions = GQLCache.removeRevisionFromEntryCache(model, client.cache, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, entry), {}, {
92
- id: id
93
- }));
87
+ case 14:
94
88
  if (!(entry.id !== id)) {
95
- _context.next = 18;
89
+ _context.next = 16;
96
90
  break;
97
91
  }
98
92
  return _context.abrupt("return", {
99
93
  data: true,
100
94
  error: null
101
95
  });
102
- case 18:
103
- GQLCache.updateLatestRevisionInListCache(model, client.cache, revisions[0], listQueryVariables);
96
+ case 16:
104
97
  return _context.abrupt("return", {
105
- entry: revisions[0] || entry,
98
+ entry: entry,
106
99
  data: true,
107
100
  error: null
108
101
  });
109
- case 20:
102
+ case 17:
110
103
  case "end":
111
104
  return _context.stop();
112
105
  }
113
106
  }, _callee);
114
107
  }));
115
108
  return function handleOnDelete(_x) {
116
- return _ref2.apply(this, arguments);
109
+ return _ref.apply(this, arguments);
117
110
  };
118
111
  }();
119
112
  (0, _react.useEffect)(function () {
120
113
  return onEntryDelete(function (next) {
121
114
  return /*#__PURE__*/function () {
122
- var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2(params) {
115
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2(params) {
123
116
  var result, response;
124
117
  return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
125
118
  while (1) switch (_context2.prev = _context2.next) {
@@ -146,7 +139,7 @@ var OnEntryDelete = function OnEntryDelete() {
146
139
  }, _callee2);
147
140
  }));
148
141
  return function (_x2) {
149
- return _ref3.apply(this, arguments);
142
+ return _ref2.apply(this, arguments);
150
143
  };
151
144
  }();
152
145
  });
@@ -1 +1 @@
1
- {"version":3,"names":["createMutationKey","params","model","locale","modelId","savedOn","OnEntryDelete","useCms","onEntryDelete","mutations","useRef","getMutation","key","current","createDeleteMutation","handleOnDelete","entry","id","client","listQueryVariables","mutation","mutate","variables","revision","response","data","error","message","code","content","parseIdentifier","version","GQLCache","removeEntryFromListCache","cache","revisions","removeRevisionFromEntryCache","updateLatestRevisionInListCache","useEffect","next","result","DefaultOnEntryDelete","React","memo"],"sources":["DefaultOnEntryDelete.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport { useCms } from \"~/admin/hooks\";\nimport { CmsErrorResponse, CmsModel } from \"~/types\";\nimport {\n CmsEntryDeleteMutationResponse,\n CmsEntryDeleteMutationVariables,\n createDeleteMutation\n} from \"~/admin/graphql/contentEntries\";\nimport { DocumentNode } from \"graphql\";\nimport { OnEntryDeleteRequest } from \"~/admin/contexts/Cms\";\nimport * as GQLCache from \"~/admin/views/contentEntries/ContentEntry/cache\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\ninterface Mutations {\n [key: string]: DocumentNode;\n}\n\ninterface CreateMutationKeyParams {\n model: CmsModel;\n locale: string;\n}\n\nconst createMutationKey = (params: CreateMutationKeyParams): string => {\n const { model, locale } = params;\n return `${model.modelId}_${locale}_${model.savedOn}`;\n};\n\nconst OnEntryDelete: React.FC = () => {\n const { onEntryDelete } = useCms();\n\n const mutations = useRef<Mutations>({});\n\n const getMutation = (model: CmsModel, locale: string) => {\n const key = createMutationKey({ model, locale });\n if (!mutations.current[key]) {\n mutations.current[key] = createDeleteMutation(model);\n }\n return mutations.current[key];\n };\n\n const handleOnDelete = async ({\n entry,\n model,\n id,\n client,\n listQueryVariables = {},\n locale\n }: OnEntryDeleteRequest) => {\n const mutation = getMutation(model, locale);\n\n const response = await client.mutate<\n CmsEntryDeleteMutationResponse,\n CmsEntryDeleteMutationVariables\n >({\n mutation,\n variables: {\n revision: id\n }\n });\n\n if (!response.data) {\n const error: CmsErrorResponse = {\n message: \"Missing response data on Delete Entry Mutation.\",\n code: \"MISSING_RESPONSE_DATA\",\n data: {}\n };\n return {\n error\n };\n }\n const { error } = response.data.content;\n if (error) {\n return {\n error\n };\n }\n /**\n * TODO figure out how to do this in a smart way.\n * If there is no version in the ID, we are deleting whole entry.\n */\n const { version } = parseIdentifier(id);\n if (version === null) {\n GQLCache.removeEntryFromListCache(model, client.cache, entry, listQueryVariables);\n return {\n data: true,\n error: null\n };\n }\n\n // We have other revisions, update entry's cache\n const revisions = GQLCache.removeRevisionFromEntryCache(model, client.cache, {\n ...entry,\n id\n });\n\n if (entry.id !== id) {\n return {\n data: true,\n error: null\n };\n }\n GQLCache.updateLatestRevisionInListCache(\n model,\n client.cache,\n revisions[0],\n listQueryVariables\n );\n\n return {\n entry: revisions[0] || entry,\n data: true,\n error: null\n };\n };\n\n useEffect(() => {\n return onEntryDelete(next => async params => {\n const result = await next(params);\n\n if (result.error) {\n return result;\n }\n\n const response = await handleOnDelete({\n ...params\n });\n return {\n ...result,\n ...response\n };\n });\n }, []);\n\n return null;\n};\n\nexport const DefaultOnEntryDelete = React.memo(OnEntryDelete);\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_hooks","_appHeadlessCmsCommon","_utils","createMutationKey","params","model","locale","concat","modelId","savedOn","OnEntryDelete","_useCms","useCms","onEntryDelete","mutations","useRef","getMutation","key","current","createDeleteMutation","handleOnDelete","_ref","_asyncToGenerator2","default","_regeneratorRuntime2","mark","_callee","entry","id","client","mutation","response","_error","error","_parseIdentifier","version","wrap","_callee$","_context","prev","next","mutate","variables","revision","sent","data","message","code","abrupt","content","parseIdentifier","stop","_x","apply","arguments","useEffect","_ref2","_callee2","result","_callee2$","_context2","_objectSpread2","_x2","DefaultOnEntryDelete","React","memo","exports"],"sources":["DefaultOnEntryDelete.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport { useCms } from \"~/admin/hooks\";\nimport { CmsErrorResponse, CmsModel } from \"~/types\";\nimport {\n CmsEntryDeleteMutationResponse,\n CmsEntryDeleteMutationVariables,\n createDeleteMutation\n} from \"@webiny/app-headless-cms-common\";\nimport { DocumentNode } from \"graphql\";\nimport { OnEntryDeleteRequest } from \"~/admin/contexts/Cms\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\ninterface Mutations {\n [key: string]: DocumentNode;\n}\n\ninterface CreateMutationKeyParams {\n model: CmsModel;\n locale: string;\n}\n\nconst createMutationKey = (params: CreateMutationKeyParams): string => {\n const { model, locale } = params;\n return `${model.modelId}_${locale}_${model.savedOn}`;\n};\n\nconst OnEntryDelete: React.FC = () => {\n const { onEntryDelete } = useCms();\n\n const mutations = useRef<Mutations>({});\n\n const getMutation = (model: CmsModel, locale: string) => {\n const key = createMutationKey({ model, locale });\n if (!mutations.current[key]) {\n mutations.current[key] = createDeleteMutation(model);\n }\n return mutations.current[key];\n };\n\n const handleOnDelete = async (params: OnEntryDeleteRequest) => {\n const { entry, model, id, client, locale } = params;\n const mutation = getMutation(model, locale);\n\n const response = await client.mutate<\n CmsEntryDeleteMutationResponse,\n CmsEntryDeleteMutationVariables\n >({\n mutation,\n variables: {\n revision: id\n }\n });\n\n if (!response.data) {\n const error: CmsErrorResponse = {\n message: \"Missing response data on Delete Entry Mutation.\",\n code: \"MISSING_RESPONSE_DATA\",\n data: {}\n };\n return {\n error\n };\n }\n const { error } = response.data.content;\n if (error) {\n return {\n error\n };\n }\n /**\n * TODO figure out how to do this in a smart way.\n * If there is no version in the ID, we are deleting whole entry.\n */\n const { version } = parseIdentifier(id);\n if (version === null) {\n return {\n data: true,\n error: null\n };\n }\n\n if (entry.id !== id) {\n return {\n data: true,\n error: null\n };\n }\n return {\n entry,\n data: true,\n error: null\n };\n };\n\n useEffect(() => {\n return onEntryDelete(next => async params => {\n const result = await next(params);\n\n if (result.error) {\n return result;\n }\n\n const response = await handleOnDelete({\n ...params\n });\n return {\n ...result,\n ...response\n };\n });\n }, []);\n\n return null;\n};\n\nexport const DefaultOnEntryDelete = React.memo(OnEntryDelete);\n"],"mappings":"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"}
@@ -10,9 +10,8 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
10
10
  var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
11
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
12
  var _react = _interopRequireWildcard(require("react"));
13
- var _contentEntries = require("../../graphql/contentEntries");
13
+ var _appHeadlessCmsCommon = require("@webiny/app-headless-cms-common");
14
14
  var _hooks = require("../../hooks");
15
- var GQLCache = _interopRequireWildcard(require("../../views/contentEntries/ContentEntry/cache"));
16
15
  var createMutationKey = function createMutationKey(params) {
17
16
  var model = params.model,
18
17
  locale = params.locale;
@@ -28,7 +27,7 @@ var OnEntryPublish = function OnEntryPublish() {
28
27
  locale: locale
29
28
  });
30
29
  if (!mutations.current[key]) {
31
- mutations.current[key] = (0, _contentEntries.createPublishMutation)(model);
30
+ mutations.current[key] = (0, _appHeadlessCmsCommon.createPublishMutation)(model);
32
31
  }
33
32
  return mutations.current[key];
34
33
  }, [mutations.current]);
@@ -45,14 +44,6 @@ var OnEntryPublish = function OnEntryPublish() {
45
44
  mutation: mutation,
46
45
  variables: {
47
46
  revision: id
48
- },
49
- update: function update(cache, result) {
50
- var _result$data;
51
- var content = (_result$data = result.data) === null || _result$data === void 0 ? void 0 : _result$data.content;
52
- if (!content || !content.data || content.error) {
53
- return;
54
- }
55
- GQLCache.unpublishPreviouslyPublishedRevision(model, cache, id);
56
47
  }
57
48
  });
58
49
  case 4:
@@ -1 +1 @@
1
- {"version":3,"names":["createMutationKey","params","model","locale","modelId","savedOn","OnEntryPublish","useCms","onEntryRevisionPublish","mutations","useRef","getMutation","useCallback","key","current","createPublishMutation","handleOnPublish","id","client","mutation","mutate","variables","revision","update","cache","result","content","data","error","GQLCache","unpublishPreviouslyPublishedRevision","response","message","code","entry","useEffect","next","DefaultOnEntryPublish","React","memo"],"sources":["DefaultOnEntryPublish.ts"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from \"react\";\nimport { DocumentNode } from \"graphql\";\nimport {\n CmsEntryPublishMutationResponse,\n CmsEntryPublishMutationVariables,\n createPublishMutation\n} from \"~/admin/graphql/contentEntries\";\nimport { CmsErrorResponse, CmsModel } from \"~/types\";\nimport { useCms } from \"~/admin/hooks\";\nimport { OnEntryPublishResponse } from \"~/admin/contexts/Cms\";\nimport * as GQLCache from \"~/admin/views/contentEntries/ContentEntry/cache\";\n\ninterface Mutations {\n [key: string]: DocumentNode;\n}\n\ninterface CreateMutationKeyParams {\n model: CmsModel;\n locale: string;\n}\n\nconst createMutationKey = (params: CreateMutationKeyParams): string => {\n const { model, locale } = params;\n return `${model.modelId}_${locale}_${model.savedOn}`;\n};\n\nconst OnEntryPublish: React.FC = () => {\n const { onEntryRevisionPublish } = useCms();\n\n const mutations = useRef<Mutations>({});\n\n const getMutation = useCallback(\n (model: CmsModel, locale: string): DocumentNode => {\n const key = createMutationKey({ model, locale });\n if (!mutations.current[key]) {\n mutations.current[key] = createPublishMutation(model);\n }\n return mutations.current[key];\n },\n [mutations.current]\n );\n\n const handleOnPublish = async ({ model, id, client, locale }: OnEntryPublishResponse) => {\n const mutation = getMutation(model, locale);\n\n const response = await client.mutate<\n CmsEntryPublishMutationResponse,\n CmsEntryPublishMutationVariables\n >({\n mutation,\n variables: {\n revision: id\n },\n update: (cache, result) => {\n const content = result.data?.content;\n if (!content || !content.data || content.error) {\n return;\n }\n GQLCache.unpublishPreviouslyPublishedRevision(model, cache, id);\n }\n });\n\n if (!response.data) {\n const error: CmsErrorResponse = {\n message: \"Missing response data on Publish Entry Mutation.\",\n code: \"MISSING_RESPONSE_DATA\",\n data: {}\n };\n return {\n error\n };\n }\n const { data, error } = response.data.content;\n if (error) {\n return {\n error\n };\n }\n\n return {\n entry: data,\n error: null\n };\n };\n\n useEffect(() => {\n return onEntryRevisionPublish(next => async params => {\n const result = await next(params);\n\n if (result.error) {\n return result;\n }\n\n const response = await handleOnPublish(params);\n\n return {\n ...result,\n ...response\n };\n });\n }, []);\n\n return null;\n};\n\nexport const DefaultOnEntryPublish = React.memo(OnEntryPublish);\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_appHeadlessCmsCommon","_hooks","createMutationKey","params","model","locale","concat","modelId","savedOn","OnEntryPublish","_useCms","useCms","onEntryRevisionPublish","mutations","useRef","getMutation","useCallback","key","current","createPublishMutation","handleOnPublish","_ref2","_asyncToGenerator2","default","_regeneratorRuntime2","mark","_callee","_ref","id","client","mutation","response","_error","_response$data$conten","data","error","wrap","_callee$","_context","prev","next","mutate","variables","revision","sent","message","code","abrupt","content","entry","stop","_x","apply","arguments","useEffect","_ref3","_callee2","result","_callee2$","_context2","_objectSpread2","_x2","DefaultOnEntryPublish","React","memo","exports"],"sources":["DefaultOnEntryPublish.ts"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from \"react\";\nimport { DocumentNode } from \"graphql\";\nimport {\n CmsEntryPublishMutationResponse,\n CmsEntryPublishMutationVariables,\n createPublishMutation\n} from \"@webiny/app-headless-cms-common\";\nimport { CmsErrorResponse, CmsModel } from \"~/types\";\nimport { useCms } from \"~/admin/hooks\";\nimport { OnEntryPublishResponse } from \"~/admin/contexts/Cms\";\n\ninterface Mutations {\n [key: string]: DocumentNode;\n}\n\ninterface CreateMutationKeyParams {\n model: CmsModel;\n locale: string;\n}\n\nconst createMutationKey = (params: CreateMutationKeyParams): string => {\n const { model, locale } = params;\n return `${model.modelId}_${locale}_${model.savedOn}`;\n};\n\nconst OnEntryPublish: React.FC = () => {\n const { onEntryRevisionPublish } = useCms();\n\n const mutations = useRef<Mutations>({});\n\n const getMutation = useCallback(\n (model: CmsModel, locale: string): DocumentNode => {\n const key = createMutationKey({ model, locale });\n if (!mutations.current[key]) {\n mutations.current[key] = createPublishMutation(model);\n }\n return mutations.current[key];\n },\n [mutations.current]\n );\n\n const handleOnPublish = async ({ model, id, client, locale }: OnEntryPublishResponse) => {\n const mutation = getMutation(model, locale);\n\n const response = await client.mutate<\n CmsEntryPublishMutationResponse,\n CmsEntryPublishMutationVariables\n >({\n mutation,\n variables: {\n revision: id\n }\n });\n\n if (!response.data) {\n const error: CmsErrorResponse = {\n message: \"Missing response data on Publish Entry Mutation.\",\n code: \"MISSING_RESPONSE_DATA\",\n data: {}\n };\n return {\n error\n };\n }\n const { data, error } = response.data.content;\n if (error) {\n return {\n error\n };\n }\n\n return {\n entry: data,\n error: null\n };\n };\n\n useEffect(() => {\n return onEntryRevisionPublish(next => async params => {\n const result = await next(params);\n\n if (result.error) {\n return result;\n }\n\n const response = await handleOnPublish(params);\n\n return {\n ...result,\n ...response\n };\n });\n }, []);\n\n return null;\n};\n\nexport const DefaultOnEntryPublish = React.memo(OnEntryPublish);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["classes","accordionWrapper","css","position","width","borderBottom","accordionHeader","color","cursor","padding","minHeight","display","alignItems","justifyContent","span","marginLeft","fill","height","top","left","content","borderTop","borderLeft","transform","accordionItem","overflow","transition","maxHeight","paddingBottom","Accordion","title","children","action","icon","defaultValue","useState","isOpen","setOpen","toggleOpen","useCallback","classNames","open","collapsed","MemoizedAccordion","React","memo"],"sources":["Accordion.tsx"],"sourcesContent":["import React, { ReactElement, useCallback, useState } from \"react\";\nimport { css } from \"emotion\";\nimport classNames from \"classnames\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst classes = {\n accordionWrapper: css({\n /**\n * We're using position: \"relative\" here for \"Popping Out of Hidden Overflow\" https://css-tricks.com/popping-hidden-overflow/\n * so that, we can use absolute positioned element inside without \"overflow: hidden\" being a problem\n */\n position: \"relative\",\n width: \"100%\",\n borderBottom: `1px solid var(--mdc-theme-on-secondary)`\n }),\n accordionHeader: css({\n position: \"relative\",\n color: \"var(--mdc-theme-text-secondary-on-background)\",\n cursor: \"pointer\",\n padding: \"0px\",\n minHeight: 48, // To have same height as the remove value action button.\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n\n \"& .accordion-header--left\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n \"& .accordion-title\": {\n span: {\n marginLeft: 16\n }\n }\n },\n \"& .accordion-header--right\": {\n display: \"flex\",\n \"& .icon-container\": {\n display: \"flex\",\n alignItems: \"center\",\n\n \"& span\": {\n display: \"flex\"\n },\n \"& svg\": {\n fill: \"currentColor\",\n width: 14,\n height: 14\n }\n }\n },\n\n \"&::before\": {\n position: \"absolute\",\n top: \"calc(50% - 5px)\",\n left: 0,\n content: '\"\"',\n width: 0,\n height: 0,\n\n // Arrow right.\n borderTop: \"5px solid transparent\",\n borderBottom: \"5px solid transparent\",\n borderLeft: \"5px solid currentColor\"\n },\n\n \"&.open\": {\n \"&::before\": {\n transform: \"translateY(3px) rotate(90deg)\"\n }\n }\n }),\n accordionItem: css({\n overflow: \"hidden\",\n transition: \"max-height 0.3s cubic-bezier(1, 0, 1, 0)\",\n height: \"auto\",\n maxHeight: \"9999px\",\n\n \"&.collapsed\": {\n maxHeight: 0,\n transition: \"max-height 0.35s cubic-bezier(0, 1, 0, 1)\"\n },\n \".accordion-content\": {\n paddingBottom: 10\n }\n })\n};\n\ninterface AccordionProps {\n title: string;\n action?: ReactElement | null;\n icon?: ReactElement;\n defaultValue?: boolean;\n}\n\nconst Accordion: React.FC<AccordionProps> = ({\n title,\n children,\n action,\n icon,\n defaultValue = false\n}) => {\n const [isOpen, setOpen] = useState(defaultValue);\n const toggleOpen = useCallback(() => setOpen(!isOpen), [isOpen]);\n\n return (\n <div className={classes.accordionWrapper}>\n <div\n className={classNames(classes.accordionHeader, { open: isOpen })}\n onClick={toggleOpen}\n >\n <div className=\"accordion-header--left\">\n <div className={\"accordion-title\"}>\n <Typography use={\"subtitle1\"}>{title}</Typography>\n </div>\n </div>\n <div className=\"accordion-header--right\">\n {action && <div className={\"action-container\"}>{action}</div>}\n <div className={\"icon-container\"}>{icon}</div>\n </div>\n </div>\n <div className={classNames(classes.accordionItem, { collapsed: !isOpen })}>\n <div className=\"accordion-content\">{children}</div>\n </div>\n </div>\n );\n};\nconst MemoizedAccordion: React.FC<AccordionProps> = React.memo(Accordion);\nexport default MemoizedAccordion;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_emotion","_classnames","_interopRequireDefault","_Typography","classes","accordionWrapper","css","position","width","borderBottom","accordionHeader","color","cursor","padding","minHeight","display","alignItems","justifyContent","span","marginLeft","fill","height","top","left","content","borderTop","borderLeft","transform","accordionItem","overflow","transition","maxHeight","paddingBottom","Accordion","_ref","title","children","action","icon","_ref$defaultValue","defaultValue","_useState","useState","_useState2","_slicedToArray2","default","isOpen","setOpen","toggleOpen","useCallback","createElement","className","classNames","open","onClick","Typography","use","collapsed","MemoizedAccordion","React","memo","_default","exports"],"sources":["Accordion.tsx"],"sourcesContent":["import React, { ReactElement, useCallback, useState } from \"react\";\nimport { css } from \"emotion\";\nimport classNames from \"classnames\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst classes = {\n accordionWrapper: css({\n /**\n * We're using position: \"relative\" here for \"Popping Out of Hidden Overflow\" https://css-tricks.com/popping-hidden-overflow/\n * so that, we can use absolute positioned element inside without \"overflow: hidden\" being a problem\n */\n position: \"relative\",\n width: \"100%\",\n borderBottom: `1px solid var(--mdc-theme-on-secondary)`\n }),\n accordionHeader: css({\n position: \"relative\",\n color: \"var(--mdc-theme-text-secondary-on-background)\",\n cursor: \"pointer\",\n padding: \"0px\",\n minHeight: 48, // To have same height as the remove value action button.\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n\n \"& .accordion-header--left\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n \"& .accordion-title\": {\n span: {\n marginLeft: 16\n }\n }\n },\n \"& .accordion-header--right\": {\n display: \"flex\",\n \"& .icon-container\": {\n display: \"flex\",\n alignItems: \"center\",\n\n \"& span\": {\n display: \"flex\"\n },\n \"& svg\": {\n fill: \"currentColor\",\n width: 14,\n height: 14\n }\n }\n },\n\n \"&::before\": {\n position: \"absolute\",\n top: \"calc(50% - 5px)\",\n left: 0,\n content: '\"\"',\n width: 0,\n height: 0,\n\n // Arrow right.\n borderTop: \"5px solid transparent\",\n borderBottom: \"5px solid transparent\",\n borderLeft: \"5px solid currentColor\"\n },\n\n \"&.open\": {\n \"&::before\": {\n transform: \"translateY(3px) rotate(90deg)\"\n }\n }\n }),\n accordionItem: css({\n overflow: \"hidden\",\n transition: \"max-height 0.3s cubic-bezier(1, 0, 1, 0)\",\n height: \"auto\",\n maxHeight: \"9999px\",\n\n \"&.collapsed\": {\n maxHeight: 0,\n transition: \"max-height 0.35s cubic-bezier(0, 1, 0, 1)\"\n },\n \".accordion-content\": {\n paddingBottom: 10\n }\n })\n};\n\ninterface AccordionProps {\n title: string;\n action?: ReactElement | null;\n icon?: ReactElement;\n defaultValue?: boolean;\n}\n\nconst Accordion: React.FC<AccordionProps> = ({\n title,\n children,\n action,\n icon,\n defaultValue = false\n}) => {\n const [isOpen, setOpen] = useState(defaultValue);\n const toggleOpen = useCallback(() => setOpen(!isOpen), [isOpen]);\n\n return (\n <div className={classes.accordionWrapper}>\n <div\n className={classNames(classes.accordionHeader, { open: isOpen })}\n onClick={toggleOpen}\n >\n <div className=\"accordion-header--left\">\n <div className={\"accordion-title\"}>\n <Typography use={\"subtitle1\"}>{title}</Typography>\n </div>\n </div>\n <div className=\"accordion-header--right\">\n {action && <div className={\"action-container\"}>{action}</div>}\n <div className={\"icon-container\"}>{icon}</div>\n </div>\n </div>\n <div className={classNames(classes.accordionItem, { collapsed: !isOpen })}>\n <div className=\"accordion-content\">{children}</div>\n </div>\n </div>\n );\n};\nconst MemoizedAccordion: React.FC<AccordionProps> = React.memo(Accordion);\nexport default MemoizedAccordion;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","style","addButton","css","width","borderTop","paddingTop","DynamicSection","field","getBind","Label","children","showLabel","emptyValue","renderTitle","gridClassName","Bind","FirstFieldBind","bindField","value","appendValue","bindFieldValue","label","bindProps","bind","index","slice","map","_","realIndex","BindField","validation","isValid","message","undefined"],"sources":["DynamicSection.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { ButtonDefault, ButtonIcon } from \"@webiny/ui/Button\";\nimport { BindComponent, BindComponentRenderProp, CmsModelField } from \"~/types\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { GetBindCallable } from \"~/admin/components/ContentEntryForm/useBind\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/text\");\n\nconst style = {\n addButton: css({\n width: \"100%\",\n borderTop: \"1px solid var(--mdc-theme-background)\",\n paddingTop: 8\n })\n};\n\nexport interface DynamicSectionPropsChildrenParams {\n Bind: BindComponent;\n field: CmsModelField;\n bind: {\n index: BindComponentRenderProp;\n field: BindComponentRenderProp;\n };\n index: number;\n}\n\nexport interface DynamicSectionProps {\n field: CmsModelField;\n getBind: GetBindCallable;\n showLabel?: boolean;\n Label: React.ComponentType<any>;\n children: (params: DynamicSectionPropsChildrenParams) => JSX.Element;\n emptyValue?: any;\n renderTitle?: (value: any[]) => React.ReactElement;\n gridClassName?: string;\n}\n\nconst DynamicSection: React.FC<DynamicSectionProps> = ({\n field,\n getBind,\n Label,\n children,\n showLabel = true,\n emptyValue = \"\",\n renderTitle,\n gridClassName\n}) => {\n const Bind = getBind();\n const FirstFieldBind = getBind(0);\n\n return (\n /* First we mount the top level field, for example: \"items\" */\n <Bind>\n {bindField => {\n /**\n * \"value\" -> an array of items\n * \"appendValue\" -> a callback to add a new value to the top level \"items\" array\n */\n const { value, appendValue } = bindField;\n\n const bindFieldValue: string[] = value || [];\n return (\n <Grid className={gridClassName}>\n {typeof renderTitle === \"function\" && renderTitle(bindFieldValue)}\n <Cell span={12}>\n {/* We always render the first item, for better UX */}\n {showLabel && field.label && <Label>{field.label}</Label>}\n <FirstFieldBind>\n {bindProps =>\n /* We bind it to index \"0\", so when you start typing, that index in parent array will be populated */\n children({\n Bind: FirstFieldBind,\n field,\n // \"index\" contains Bind props for this particular item in the array\n // \"field\" contains Bind props for the main (parent) field.\n bind: {\n index: bindProps,\n field: bindField\n },\n index: 0 // Binds to \"items.0\" in the <Form>.\n })\n }\n </FirstFieldBind>\n </Cell>\n\n {/* Now we skip the first item, because we already rendered it above, and proceed with all other items. */}\n {bindFieldValue.slice(1).map((_, index) => {\n /* We simply increase index, and as you type, the appropriate indexes in the parent array will be updated. */\n const realIndex = index + 1;\n const BindField = getBind(realIndex);\n return (\n <Cell span={12} key={realIndex}>\n <BindField>\n {bindProps =>\n children({\n Bind: BindField,\n field,\n bind: {\n index: bindProps,\n field: bindField\n },\n index: realIndex\n })\n }\n </BindField>\n </Cell>\n );\n })}\n\n {bindField.validation.isValid === false && (\n <Cell span={12}>\n <FormElementMessage error>\n {bindField.validation.message}\n </FormElementMessage>\n </Cell>\n )}\n <Cell span={12} className={style.addButton}>\n <ButtonDefault\n disabled={bindFieldValue[0] === undefined}\n onClick={() => appendValue(emptyValue)}\n >\n <ButtonIcon icon={<AddIcon />} />\n {t`Add value`}\n </ButtonDefault>\n </Cell>\n </Grid>\n );\n }}\n </Bind>\n );\n};\n\nexport default DynamicSection;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_i18n","_Grid","_Button","_FormElementMessage","_add18px","_templateObject","t","i18n","ns","style","addButton","css","width","borderTop","paddingTop","DynamicSection","_ref","field","getBind","Label","children","_ref$showLabel","showLabel","_ref$emptyValue","emptyValue","renderTitle","gridClassName","Bind","FirstFieldBind","default","createElement","bindField","value","appendValue","bindFieldValue","Grid","className","Cell","span","label","bindProps","bind","index","slice","map","_","realIndex","BindField","key","validation","isValid","FormElementMessage","error","message","ButtonDefault","disabled","undefined","onClick","ButtonIcon","icon","ReactComponent","_taggedTemplateLiteral2","_default","exports"],"sources":["DynamicSection.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { ButtonDefault, ButtonIcon } from \"@webiny/ui/Button\";\nimport { BindComponent, BindComponentRenderProp, CmsModelField } from \"~/types\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { GetBindCallable } from \"~/admin/components/ContentEntryForm/useBind\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/text\");\n\nconst style = {\n addButton: css({\n width: \"100%\",\n borderTop: \"1px solid var(--mdc-theme-background)\",\n paddingTop: 8\n })\n};\n\nexport interface DynamicSectionPropsChildrenParams {\n Bind: BindComponent;\n field: CmsModelField;\n bind: {\n index: BindComponentRenderProp;\n field: BindComponentRenderProp;\n };\n index: number;\n}\n\nexport interface DynamicSectionProps {\n field: CmsModelField;\n getBind: GetBindCallable;\n showLabel?: boolean;\n Label: React.ComponentType<any>;\n children: (params: DynamicSectionPropsChildrenParams) => JSX.Element;\n emptyValue?: any;\n renderTitle?: (value: any[]) => React.ReactElement;\n gridClassName?: string;\n}\n\nconst DynamicSection: React.FC<DynamicSectionProps> = ({\n field,\n getBind,\n Label,\n children,\n showLabel = true,\n emptyValue = \"\",\n renderTitle,\n gridClassName\n}) => {\n const Bind = getBind();\n const FirstFieldBind = getBind(0);\n\n return (\n /* First we mount the top level field, for example: \"items\" */\n <Bind>\n {bindField => {\n /**\n * \"value\" -> an array of items\n * \"appendValue\" -> a callback to add a new value to the top level \"items\" array\n */\n const { value, appendValue } = bindField;\n\n const bindFieldValue: string[] = value || [];\n return (\n <Grid className={gridClassName}>\n {typeof renderTitle === \"function\" && renderTitle(bindFieldValue)}\n <Cell span={12}>\n {/* We always render the first item, for better UX */}\n {showLabel && field.label && <Label>{field.label}</Label>}\n <FirstFieldBind>\n {bindProps =>\n /* We bind it to index \"0\", so when you start typing, that index in parent array will be populated */\n children({\n Bind: FirstFieldBind,\n field,\n // \"index\" contains Bind props for this particular item in the array\n // \"field\" contains Bind props for the main (parent) field.\n bind: {\n index: bindProps,\n field: bindField\n },\n index: 0 // Binds to \"items.0\" in the <Form>.\n })\n }\n </FirstFieldBind>\n </Cell>\n\n {/* Now we skip the first item, because we already rendered it above, and proceed with all other items. */}\n {bindFieldValue.slice(1).map((_, index) => {\n /* We simply increase index, and as you type, the appropriate indexes in the parent array will be updated. */\n const realIndex = index + 1;\n const BindField = getBind(realIndex);\n return (\n <Cell span={12} key={realIndex}>\n <BindField>\n {bindProps =>\n children({\n Bind: BindField,\n field,\n bind: {\n index: bindProps,\n field: bindField\n },\n index: realIndex\n })\n }\n </BindField>\n </Cell>\n );\n })}\n\n {bindField.validation.isValid === false && (\n <Cell span={12}>\n <FormElementMessage error>\n {bindField.validation.message}\n </FormElementMessage>\n </Cell>\n )}\n <Cell span={12} className={style.addButton}>\n <ButtonDefault\n disabled={bindFieldValue[0] === undefined}\n onClick={() => appendValue(emptyValue)}\n >\n <ButtonIcon icon={<AddIcon />} />\n {t`Add value`}\n </ButtonDefault>\n </Cell>\n </Grid>\n );\n }}\n </Bind>\n );\n};\n\nexport default DynamicSection;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","plugin","type","name","renderer","rendererName","description","canUse","field","multipleValues","get","render","getBind","Bind","bindProps","label","helpText"],"sources":["booleanSwitch.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { i18n } from \"@webiny/app/i18n\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/boolean\");\n\nconst plugin: CmsEditorFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-boolean\",\n renderer: {\n rendererName: \"boolean-input\",\n name: t`Boolean Input`,\n description: t`Renders a simple switch button.`,\n canUse({ field }) {\n return (\n field.type === \"boolean\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n return (\n <Bind>\n {bindProps => (\n <Switch\n {...bindProps}\n label={field.label}\n description={field.helpText}\n data-testid={`fr.input.boolean.${field.label}`}\n />\n )}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;AAAA;AACA;AAEA;AACA;AAAwC;AAExC,IAAMA,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,uCAAuC,CAAC;AAE1D,IAAMC,MAAoC,GAAG;EACzCC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,mCAAmC;EACzCC,QAAQ,EAAE;IACNC,YAAY,EAAE,eAAe;IAC7BF,IAAI,EAAEL,CAAC,gGAAe;IACtBQ,WAAW,EAAER,CAAC,oHAAiC;IAC/CS,MAAM,wBAAY;MAAA,IAATC,KAAK,QAALA,KAAK;MACV,OACIA,KAAK,CAACN,IAAI,KAAK,SAAS,IACxB,CAACM,KAAK,CAACC,cAAc,IACrB,CAAC,IAAAC,YAAG,EAACF,KAAK,EAAE,0BAA0B,CAAC;IAE/C,CAAC;IACDG,MAAM,yBAAqB;MAAA,IAAlBH,KAAK,SAALA,KAAK;QAAEI,OAAO,SAAPA,OAAO;MACnB,IAAMC,IAAI,GAAGD,OAAO,EAAE;MAEtB,oBACI,6BAAC,IAAI,QACA,UAAAE,SAAS;QAAA,oBACN,6BAAC,cAAM,oBACCA,SAAS;UACb,KAAK,EAAEN,KAAK,CAACO,KAAM;UACnB,WAAW,EAAEP,KAAK,CAACQ,QAAS;UAC5B,0CAAiCR,KAAK,CAACO,KAAK;QAAG,GACjD;MAAA,CACL,CACE;IAEf;EACJ;AACJ,CAAC;AAAC,eAEad,MAAM;AAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_get","_Switch","_i18n","_templateObject","_templateObject2","t","i18n","ns","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","get","render","_ref2","getBind","Bind","createElement","bindProps","Switch","Object","assign","label","helpText","concat","_default","exports"],"sources":["booleanSwitch.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { i18n } from \"@webiny/app/i18n\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/boolean\");\n\nconst plugin: CmsEditorFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-boolean\",\n renderer: {\n rendererName: \"boolean-input\",\n name: t`Boolean Input`,\n description: t`Renders a simple switch button.`,\n canUse({ field }) {\n return (\n field.type === \"boolean\" &&\n !field.multipleValues &&\n !get(field, \"predefinedValues.enabled\")\n );\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n return (\n <Bind>\n {bindProps => (\n <Switch\n {...bindProps}\n label={field.label}\n description={field.helpText}\n data-testid={`fr.input.boolean.${field.label}`}\n />\n )}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAAwC,IAAAI,eAAA,EAAAC,gBAAA;AAExC,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,uCAAuC,CAAC;AAE1D,IAAMC,MAAoC,GAAG;EACzCC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,mCAAmC;EACzCC,QAAQ,EAAE;IACNC,YAAY,EAAE,eAAe;IAC7BF,IAAI,EAAEL,CAAC,CAAAF,eAAA,KAAAA,eAAA,OAAAU,uBAAA,CAAAC,OAAA,sBAAe;IACtBC,WAAW,EAAEV,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAAS,uBAAA,CAAAC,OAAA,wCAAiC;IAC/CE,MAAM,WAAAA,OAAAC,IAAA,EAAY;MAAA,IAATC,KAAK,GAAAD,IAAA,CAALC,KAAK;MACV,OACIA,KAAK,CAACT,IAAI,KAAK,SAAS,IACxB,CAACS,KAAK,CAACC,cAAc,IACrB,CAAC,IAAAC,YAAG,EAACF,KAAK,EAAE,0BAA0B,CAAC;IAE/C,CAAC;IACDG,MAAM,WAAAA,OAAAC,KAAA,EAAqB;MAAA,IAAlBJ,KAAK,GAAAI,KAAA,CAALJ,KAAK;QAAEK,OAAO,GAAAD,KAAA,CAAPC,OAAO;MACnB,IAAMC,IAAI,GAAGD,OAAO,CAAC,CAAC;MAEtB,oBACI1B,MAAA,CAAAiB,OAAA,CAAAW,aAAA,CAACD,IAAI,QACA,UAAAE,SAAS;QAAA,oBACN7B,MAAA,CAAAiB,OAAA,CAAAW,aAAA,CAACxB,OAAA,CAAA0B,MAAM,EAAAC,MAAA,CAAAC,MAAA,KACCH,SAAS;UACbI,KAAK,EAAEZ,KAAK,CAACY,KAAM;UACnBf,WAAW,EAAEG,KAAK,CAACa,QAAS;UAC5B,mCAAAC,MAAA,CAAiCd,KAAK,CAACY,KAAK;QAAG,EAClD,CAAC;MAAA,CAEJ,CAAC;IAEf;EACJ;AACJ,CAAC;AAAC,IAAAG,QAAA,GAEazB,MAAM;AAAA0B,OAAA,CAAApB,OAAA,GAAAmB,QAAA"}
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").CmsModelFieldRendererPlugin[];
1
+ declare const _default: import("@webiny/app-headless-cms-common/types").CmsModelFieldRendererPlugin[];
2
2
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"names":["booleanSwitch"],"sources":["index.ts"],"sourcesContent":["import booleanSwitch from \"./booleanSwitch\";\n\nexport default [booleanSwitch];\n"],"mappings":";;;;;;;AAAA;AAA4C,eAE7B,CAACA,sBAAa,CAAC;AAAA"}
1
+ {"version":3,"names":["_booleanSwitch","_interopRequireDefault","require","_default","booleanSwitch","exports","default"],"sources":["index.ts"],"sourcesContent":["import booleanSwitch from \"./booleanSwitch\";\n\nexport default [booleanSwitch];\n"],"mappings":";;;;;;;AAAA,IAAAA,cAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA4C,IAAAC,QAAA,GAE7B,CAACC,sBAAa,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAH,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","plugin","type","name","renderer","rendererName","description","canUse","field","multipleValues","get","render","getBind","Bind","predefinedValues","values","options","bind","label","helpText","onChange","getValue","map","option","index","value","Number","String"],"sources":["checkboxes.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/text\");\n\nconst plugin: CmsEditorFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-checkboxes-buttons\",\n renderer: {\n rendererName: \"checkboxes\",\n name: t`Checkboxes`,\n description: t`Renders checkboxes, allowing selection of multiple values.`,\n canUse({ field }) {\n return !!field.multipleValues && !!get(field, \"predefinedValues.enabled\");\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n const { values: options = [] } = field.predefinedValues || {\n values: []\n };\n\n return (\n <Bind>\n {bind => {\n return (\n <CheckboxGroup\n {...bind}\n label={field.label}\n description={field.helpText}\n >\n {({ onChange, getValue }) => (\n <React.Fragment>\n {options.map((option, index) => {\n const value =\n field.type === \"number\"\n ? Number(option.value)\n : option.value;\n return (\n <div key={String(option.value) + index}>\n <Checkbox\n label={option.label}\n value={getValue(value)}\n onChange={onChange(value)}\n data-testid={`fr.input.${field.label}`}\n />\n </div>\n );\n })}\n </React.Fragment>\n )}\n </CheckboxGroup>\n );\n }}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;AAAA;AACA;AAEA;AACA;AAA8D;AAE9D,IAAMA,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,oCAAoC,CAAC;AAEvD,IAAMC,MAAoC,GAAG;EACzCC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,8CAA8C;EACpDC,QAAQ,EAAE;IACNC,YAAY,EAAE,YAAY;IAC1BF,IAAI,EAAEL,CAAC,6FAAY;IACnBQ,WAAW,EAAER,CAAC,+IAA4D;IAC1ES,MAAM,wBAAY;MAAA,IAATC,KAAK,QAALA,KAAK;MACV,OAAO,CAAC,CAACA,KAAK,CAACC,cAAc,IAAI,CAAC,CAAC,IAAAC,YAAG,EAACF,KAAK,EAAE,0BAA0B,CAAC;IAC7E,CAAC;IACDG,MAAM,yBAAqB;MAAA,IAAlBH,KAAK,SAALA,KAAK;QAAEI,OAAO,SAAPA,OAAO;MACnB,IAAMC,IAAI,GAAGD,OAAO,EAAE;MAEtB,YAAiCJ,KAAK,CAACM,gBAAgB,IAAI;UACvDC,MAAM,EAAE;QACZ,CAAC;QAAA,qBAFOA,MAAM;QAAEC,OAAO,6BAAG,EAAE;MAI5B,oBACI,6BAAC,IAAI,QACA,UAAAC,IAAI,EAAI;QACL,oBACI,6BAAC,uBAAa,oBACNA,IAAI;UACR,KAAK,EAAET,KAAK,CAACU,KAAM;UACnB,WAAW,EAAEV,KAAK,CAACW;QAAS,IAE3B;UAAA,IAAGC,QAAQ,SAARA,QAAQ;YAAEC,QAAQ,SAARA,QAAQ;UAAA,oBAClB,6BAAC,cAAK,CAAC,QAAQ,QACVL,OAAO,CAACM,GAAG,CAAC,UAACC,MAAM,EAAEC,KAAK,EAAK;YAC5B,IAAMC,KAAK,GACPjB,KAAK,CAACN,IAAI,KAAK,QAAQ,GACjBwB,MAAM,CAACH,MAAM,CAACE,KAAK,CAAC,GACpBF,MAAM,CAACE,KAAK;YACtB,oBACI;cAAK,GAAG,EAAEE,MAAM,CAACJ,MAAM,CAACE,KAAK,CAAC,GAAGD;YAAM,gBACnC,6BAAC,kBAAQ;cACL,KAAK,EAAED,MAAM,CAACL,KAAM;cACpB,KAAK,EAAEG,QAAQ,CAACI,KAAK,CAAE;cACvB,QAAQ,EAAEL,QAAQ,CAACK,KAAK,CAAE;cAC1B,kCAAyBjB,KAAK,CAACU,KAAK;YAAG,EACzC,CACA;UAEd,CAAC,CAAC,CACW;QAAA,CACpB,CACW;MAExB,CAAC,CACE;IAEf;EACJ;AACJ,CAAC;AAAC,eAEajB,MAAM;AAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_get","_i18n","_Checkbox","_templateObject","_templateObject2","t","i18n","ns","plugin","type","name","renderer","rendererName","_taggedTemplateLiteral2","default","description","canUse","_ref","field","multipleValues","get","render","_ref2","getBind","Bind","_ref3","predefinedValues","values","_ref3$values","options","createElement","bind","CheckboxGroup","Object","assign","label","helpText","_ref4","onChange","getValue","Fragment","map","option","index","value","Number","key","String","Checkbox","concat","_default","exports"],"sources":["checkboxes.tsx"],"sourcesContent":["import React from \"react\";\nimport get from \"lodash/get\";\nimport { CmsEditorFieldRendererPlugin } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/text\");\n\nconst plugin: CmsEditorFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-checkboxes-buttons\",\n renderer: {\n rendererName: \"checkboxes\",\n name: t`Checkboxes`,\n description: t`Renders checkboxes, allowing selection of multiple values.`,\n canUse({ field }) {\n return !!field.multipleValues && !!get(field, \"predefinedValues.enabled\");\n },\n render({ field, getBind }) {\n const Bind = getBind();\n\n const { values: options = [] } = field.predefinedValues || {\n values: []\n };\n\n return (\n <Bind>\n {bind => {\n return (\n <CheckboxGroup\n {...bind}\n label={field.label}\n description={field.helpText}\n >\n {({ onChange, getValue }) => (\n <React.Fragment>\n {options.map((option, index) => {\n const value =\n field.type === \"number\"\n ? Number(option.value)\n : option.value;\n return (\n <div key={String(option.value) + index}>\n <Checkbox\n label={option.label}\n value={getValue(value)}\n onChange={onChange(value)}\n data-testid={`fr.input.${field.label}`}\n />\n </div>\n );\n })}\n </React.Fragment>\n )}\n </CheckboxGroup>\n );\n }}\n </Bind>\n );\n }\n }\n};\n\nexport default plugin;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["DateOnly","props","field","bind","trailingIcon","date","getDefaultFieldValue","getCurrentDate","Date","bindValue","value","useEffect","onChange","settings","type"],"sources":["DateOnly.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { Input, TrailingIcon } from \"./Input\";\nimport { CmsModelField } from \"~/types\";\nimport {\n getCurrentDate,\n getDefaultFieldValue\n} from \"~/admin/plugins/fieldRenderers/dateTime/utils\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\nexport interface Props {\n field: CmsModelField;\n bind: BindComponentRenderProp;\n trailingIcon?: TrailingIcon;\n}\n\nexport const DateOnly: React.FC<Props> = props => {\n const { field, bind, trailingIcon } = props;\n const date = getDefaultFieldValue(field, bind, () => {\n return getCurrentDate(new Date());\n });\n\n const bindValue = bind.value || \"\";\n\n useEffect(() => {\n if (!date || bindValue === date) {\n return;\n }\n bind.onChange(date);\n }, [bindValue]);\n\n return (\n <Input\n bind={{\n ...bind,\n value: date,\n onChange: async (value: string) => {\n if (!value) {\n if (!bindValue) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(value);\n }\n }}\n field={field}\n type={field.settings?.type}\n trailingIcon={trailingIcon}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AAEA;AAYO,IAAMA,QAAyB,GAAG,SAA5BA,QAAyB,CAAGC,KAAK,EAAI;EAAA;EAC9C,IAAQC,KAAK,GAAyBD,KAAK,CAAnCC,KAAK;IAAEC,IAAI,GAAmBF,KAAK,CAA5BE,IAAI;IAAEC,YAAY,GAAKH,KAAK,CAAtBG,YAAY;EACjC,IAAMC,IAAI,GAAG,IAAAC,2BAAoB,EAACJ,KAAK,EAAEC,IAAI,EAAE,YAAM;IACjD,OAAO,IAAAI,qBAAc,EAAC,IAAIC,IAAI,EAAE,CAAC;EACrC,CAAC,CAAC;EAEF,IAAMC,SAAS,GAAGN,IAAI,CAACO,KAAK,IAAI,EAAE;EAElC,IAAAC,gBAAS,EAAC,YAAM;IACZ,IAAI,CAACN,IAAI,IAAII,SAAS,KAAKJ,IAAI,EAAE;MAC7B;IACJ;IACAF,IAAI,CAACS,QAAQ,CAACP,IAAI,CAAC;EACvB,CAAC,EAAE,CAACI,SAAS,CAAC,CAAC;EAEf,oBACI,6BAAC,YAAK;IACF,IAAI,8DACGN,IAAI;MACPO,KAAK,EAAEL,IAAI;MACXO,QAAQ;QAAA,uGAAE,iBAAOF,KAAa;UAAA;YAAA;cAAA;gBAAA,IACrBA,KAAK;kBAAA;kBAAA;gBAAA;gBAAA,IACDD,SAAS;kBAAA;kBAAA;gBAAA;gBAAA;cAAA;gBAAA,iCAGPN,IAAI,CAACS,QAAQ,CAAC,EAAE,CAAC;cAAA;gBAAA,iCAErBT,IAAI,CAACS,QAAQ,CAACF,KAAK,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA,CAC9B;QAAA;UAAA;QAAA;QAAA;MAAA;IAAA,EACH;IACF,KAAK,EAAER,KAAM;IACb,IAAI,qBAAEA,KAAK,CAACW,QAAQ,oDAAd,gBAAgBC,IAAK;IAC3B,YAAY,EAAEV;EAAa,EAC7B;AAEV,CAAC;AAAC"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_Input","_utils","DateOnly","props","_field$settings","field","bind","trailingIcon","date","getDefaultFieldValue","getCurrentDate","Date","bindValue","value","useEffect","onChange","default","createElement","Input","_objectSpread2","_onChange","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","wrap","_callee$","_context","prev","next","abrupt","stop","_x","apply","arguments","type","settings","exports"],"sources":["DateOnly.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { Input, TrailingIcon } from \"./Input\";\nimport { CmsModelField } from \"~/types\";\nimport {\n getCurrentDate,\n getDefaultFieldValue\n} from \"~/admin/plugins/fieldRenderers/dateTime/utils\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\nexport interface Props {\n field: CmsModelField;\n bind: BindComponentRenderProp;\n trailingIcon?: TrailingIcon;\n}\n\nexport const DateOnly: React.FC<Props> = props => {\n const { field, bind, trailingIcon } = props;\n const date = getDefaultFieldValue(field, bind, () => {\n return getCurrentDate(new Date());\n });\n\n const bindValue = bind.value || \"\";\n\n useEffect(() => {\n if (!date || bindValue === date) {\n return;\n }\n bind.onChange(date);\n }, [bindValue]);\n\n return (\n <Input\n bind={{\n ...bind,\n value: date,\n onChange: async (value: string) => {\n if (!value) {\n if (!bindValue) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(value);\n }\n }}\n field={field}\n type={field.settings?.type}\n trailingIcon={trailingIcon}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AAYO,IAAMG,QAAyB,GAAG,SAA5BA,QAAyBA,CAAGC,KAAK,EAAI;EAAA,IAAAC,eAAA;EAC9C,IAAQC,KAAK,GAAyBF,KAAK,CAAnCE,KAAK;IAAEC,IAAI,GAAmBH,KAAK,CAA5BG,IAAI;IAAEC,YAAY,GAAKJ,KAAK,CAAtBI,YAAY;EACjC,IAAMC,IAAI,GAAG,IAAAC,2BAAoB,EAACJ,KAAK,EAAEC,IAAI,EAAE,YAAM;IACjD,OAAO,IAAAI,qBAAc,EAAC,IAAIC,IAAI,CAAC,CAAC,CAAC;EACrC,CAAC,CAAC;EAEF,IAAMC,SAAS,GAAGN,IAAI,CAACO,KAAK,IAAI,EAAE;EAElC,IAAAC,gBAAS,EAAC,YAAM;IACZ,IAAI,CAACN,IAAI,IAAII,SAAS,KAAKJ,IAAI,EAAE;MAC7B;IACJ;IACAF,IAAI,CAACS,QAAQ,CAACP,IAAI,CAAC;EACvB,CAAC,EAAE,CAACI,SAAS,CAAC,CAAC;EAEf,oBACIf,MAAA,CAAAmB,OAAA,CAAAC,aAAA,CAACjB,MAAA,CAAAkB,KAAK;IACFZ,IAAI,MAAAa,cAAA,CAAAH,OAAA,MAAAG,cAAA,CAAAH,OAAA,MACGV,IAAI;MACPO,KAAK,EAAEL,IAAI;MACXO,QAAQ;QAAA,IAAAK,SAAA,OAAAC,kBAAA,CAAAL,OAAA,oBAAAM,oBAAA,CAAAN,OAAA,IAAAO,IAAA,CAAE,SAAAC,QAAOX,KAAa;UAAA,WAAAS,oBAAA,CAAAN,OAAA,IAAAS,IAAA,UAAAC,SAAAC,QAAA;YAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;cAAA;gBAAA,IACrBhB,KAAK;kBAAAc,QAAA,CAAAE,IAAA;kBAAA;gBAAA;gBAAA,IACDjB,SAAS;kBAAAe,QAAA,CAAAE,IAAA;kBAAA;gBAAA;gBAAA,OAAAF,QAAA,CAAAG,MAAA;cAAA;gBAAA,OAAAH,QAAA,CAAAG,MAAA,WAGPxB,IAAI,CAACS,QAAQ,CAAC,EAAE,CAAC;cAAA;gBAAA,OAAAY,QAAA,CAAAG,MAAA,WAErBxB,IAAI,CAACS,QAAQ,CAACF,KAAK,CAAC;cAAA;cAAA;gBAAA,OAAAc,QAAA,CAAAI,IAAA;YAAA;UAAA,GAAAP,OAAA;QAAA,CAC9B;QAAA,SAAAT,SAAAiB,EAAA;UAAA,OAAAZ,SAAA,CAAAa,KAAA,OAAAC,SAAA;QAAA;QAAA,OAAAnB,QAAA;MAAA;IAAA,EACH;IACFV,KAAK,EAAEA,KAAM;IACb8B,IAAI,GAAA/B,eAAA,GAAEC,KAAK,CAAC+B,QAAQ,cAAAhC,eAAA,uBAAdA,eAAA,CAAgB+B,IAAK;IAC3B5B,YAAY,EAAEA;EAAa,CAC9B,CAAC;AAEV,CAAC;AAAC8B,OAAA,CAAAnC,QAAA,GAAAA,QAAA"}
@@ -15,6 +15,7 @@ var _Input = require("./Input");
15
15
  var _Select = require("./Select");
16
16
  var _Grid = require("@webiny/ui/Grid");
17
17
  var _utils = require("./utils");
18
+ var _utils2 = require("@webiny/utils");
18
19
  var parseDateTime = function parseDateTime(value) {
19
20
  if (!value || typeof value !== "string") {
20
21
  return {
@@ -170,7 +171,7 @@ var DateTimeWithTimezone = function DateTimeWithTimezone(_ref) {
170
171
  }
171
172
  return bind.onChange("".concat(date || (0, _utils.getCurrentDate)(), "T").concat(time || (0, _utils.getCurrentLocalTime)()).concat(value));
172
173
  },
173
- options: _utils.UTC_TIMEZONES.map(function (t) {
174
+ options: _utils2.UTC_TIMEZONES.map(function (t) {
174
175
  return {
175
176
  value: t.value,
176
177
  label: t.label
@@ -1 +1 @@
1
- {"version":3,"names":["parseDateTime","value","date","rest","split","formattedDate","Error","parseTime","time","timezone","sign","includes","fullTime","zone","DateTimeWithTimezone","bind","trailingIcon","field","defaultTimeZone","getCurrentTimeZone","DEFAULT_TIMEZONE","initialValue","getDefaultFieldValue","Date","getCurrentDate","getCurrentLocalTime","bindValue","useEffect","onChange","cellSize","label","UTC_TIMEZONES","map","t"],"sources":["DateTimeWithTimezone.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { Input } from \"./Input\";\nimport { Select } from \"./Select\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport {\n UTC_TIMEZONES,\n RemoveFieldButton,\n getDefaultFieldValue,\n DEFAULT_TIMEZONE,\n getCurrentDate,\n getCurrentLocalTime,\n getCurrentTimeZone\n} from \"./utils\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface State {\n date: string;\n time: string;\n timezone: string;\n}\n\nconst parseDateTime = (value?: string): Pick<State, \"date\"> & { rest: string } => {\n if (!value || typeof value !== \"string\") {\n return {\n date: \"\",\n rest: \"\"\n };\n }\n const [formattedDate, rest] = value.split(\"T\");\n if (!formattedDate || !rest) {\n throw new Error(`Could not extract date and time from \"${value}\".`);\n }\n return {\n date: formattedDate,\n rest\n };\n};\n\nconst parseTime = (value?: string): Pick<State, \"time\" | \"timezone\"> => {\n if (!value) {\n return {\n time: \"\",\n timezone: \"\"\n };\n }\n const sign = value.includes(\"+\") ? \"+\" : \"-\";\n const [fullTime, zone] = value.split(sign);\n\n return {\n time: fullTime,\n timezone: sign + zone\n };\n};\n\nexport interface DateTimeWithTimezoneProps {\n bind: BindComponentRenderProp;\n // TODO @ts-refactor figure out correct trailing icon type\n // @ts-ignore\n trailingIcon?: any;\n field: CmsModelField;\n}\nexport const DateTimeWithTimezone: React.FC<DateTimeWithTimezoneProps> = ({\n bind,\n trailingIcon,\n field\n}) => {\n const defaultTimeZone = getCurrentTimeZone() || DEFAULT_TIMEZONE;\n\n // \"2020-05-18T09:00+10:00\"\n const initialValue = getDefaultFieldValue(field, bind, () => {\n const date = new Date();\n return `${getCurrentDate(date)}T${getCurrentLocalTime(date)}${defaultTimeZone}`;\n });\n const { date, rest } = parseDateTime(initialValue);\n const { time, timezone = defaultTimeZone } = parseTime(rest);\n\n const bindValue = bind.value || \"\";\n useEffect(() => {\n if (!date || !time || !timezone || bindValue === initialValue) {\n return;\n }\n bind.onChange(initialValue);\n }, [bindValue]);\n\n const cellSize = trailingIcon ? 3 : 4;\n\n return (\n <Grid>\n <Cell span={4}>\n <Input\n bind={{\n ...bind,\n value: date,\n onChange: async (value: string) => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(\n `${value}T${time || getCurrentLocalTime()}${\n timezone || defaultTimeZone\n }`\n );\n }\n }}\n field={{\n ...field,\n label: `${field.label} date`\n }}\n type={\"date\"}\n />\n </Cell>\n <Cell span={4}>\n <Input\n bind={{\n ...bind,\n value: time,\n onChange: async value => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(\n `${date || getCurrentDate()}T${value}${timezone || defaultTimeZone}`\n );\n }\n }}\n field={{\n ...field,\n label: `${field.label} time`\n }}\n type={\"time\"}\n step={5}\n />\n </Cell>\n <Cell span={cellSize}>\n <Select\n label=\"Timezone\"\n value={timezone || defaultTimeZone}\n onChange={value => {\n if (!value) {\n if (!bind.value) {\n return null;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(\n `${date || getCurrentDate()}T${time || getCurrentLocalTime()}${value}`\n );\n }}\n options={UTC_TIMEZONES.map(t => ({ value: t.value, label: t.label }))}\n />\n </Cell>\n <RemoveFieldButton trailingIcon={trailingIcon} />\n </Grid>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_Input","_Select","_Grid","_utils","_utils2","parseDateTime","value","date","rest","_value$split","split","_value$split2","_slicedToArray2","default","formattedDate","Error","concat","parseTime","time","timezone","sign","includes","_value$split3","_value$split4","fullTime","zone","DateTimeWithTimezone","_ref","bind","trailingIcon","field","defaultTimeZone","getCurrentTimeZone","DEFAULT_TIMEZONE","initialValue","getDefaultFieldValue","Date","getCurrentDate","getCurrentLocalTime","_parseDateTime","_parseTime","_parseTime$timezone","bindValue","useEffect","onChange","cellSize","createElement","Grid","Cell","span","Input","_objectSpread2","_onChange","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","wrap","_callee$","_context","prev","next","abrupt","stop","_x","apply","arguments","label","type","_onChange2","_callee2","_callee2$","_context2","_x2","step","Select","options","UTC_TIMEZONES","map","t","RemoveFieldButton","exports"],"sources":["DateTimeWithTimezone.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { Input } from \"./Input\";\nimport { Select } from \"./Select\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport {\n RemoveFieldButton,\n getDefaultFieldValue,\n DEFAULT_TIMEZONE,\n getCurrentDate,\n getCurrentLocalTime,\n getCurrentTimeZone\n} from \"./utils\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\nimport { UTC_TIMEZONES } from \"@webiny/utils\";\n\ninterface State {\n date: string;\n time: string;\n timezone: string;\n}\n\nconst parseDateTime = (value?: string): Pick<State, \"date\"> & { rest: string } => {\n if (!value || typeof value !== \"string\") {\n return {\n date: \"\",\n rest: \"\"\n };\n }\n const [formattedDate, rest] = value.split(\"T\");\n if (!formattedDate || !rest) {\n throw new Error(`Could not extract date and time from \"${value}\".`);\n }\n return {\n date: formattedDate,\n rest\n };\n};\n\nconst parseTime = (value?: string): Pick<State, \"time\" | \"timezone\"> => {\n if (!value) {\n return {\n time: \"\",\n timezone: \"\"\n };\n }\n const sign = value.includes(\"+\") ? \"+\" : \"-\";\n const [fullTime, zone] = value.split(sign);\n\n return {\n time: fullTime,\n timezone: sign + zone\n };\n};\n\nexport interface DateTimeWithTimezoneProps {\n bind: BindComponentRenderProp;\n // TODO @ts-refactor figure out correct trailing icon type\n // @ts-ignore\n trailingIcon?: any;\n field: CmsModelField;\n}\nexport const DateTimeWithTimezone: React.FC<DateTimeWithTimezoneProps> = ({\n bind,\n trailingIcon,\n field\n}) => {\n const defaultTimeZone = getCurrentTimeZone() || DEFAULT_TIMEZONE;\n\n // \"2020-05-18T09:00+10:00\"\n const initialValue = getDefaultFieldValue(field, bind, () => {\n const date = new Date();\n return `${getCurrentDate(date)}T${getCurrentLocalTime(date)}${defaultTimeZone}`;\n });\n const { date, rest } = parseDateTime(initialValue);\n const { time, timezone = defaultTimeZone } = parseTime(rest);\n\n const bindValue = bind.value || \"\";\n useEffect(() => {\n if (!date || !time || !timezone || bindValue === initialValue) {\n return;\n }\n bind.onChange(initialValue);\n }, [bindValue]);\n\n const cellSize = trailingIcon ? 3 : 4;\n\n return (\n <Grid>\n <Cell span={4}>\n <Input\n bind={{\n ...bind,\n value: date,\n onChange: async (value: string) => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(\n `${value}T${time || getCurrentLocalTime()}${\n timezone || defaultTimeZone\n }`\n );\n }\n }}\n field={{\n ...field,\n label: `${field.label} date`\n }}\n type={\"date\"}\n />\n </Cell>\n <Cell span={4}>\n <Input\n bind={{\n ...bind,\n value: time,\n onChange: async value => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(\n `${date || getCurrentDate()}T${value}${timezone || defaultTimeZone}`\n );\n }\n }}\n field={{\n ...field,\n label: `${field.label} time`\n }}\n type={\"time\"}\n step={5}\n />\n </Cell>\n <Cell span={cellSize}>\n <Select\n label=\"Timezone\"\n value={timezone || defaultTimeZone}\n onChange={value => {\n if (!value) {\n if (!bind.value) {\n return null;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(\n `${date || getCurrentDate()}T${time || getCurrentLocalTime()}${value}`\n );\n }}\n options={UTC_TIMEZONES.map(t => ({ value: t.value, label: t.label }))}\n />\n </Cell>\n <RemoveFieldButton trailingIcon={trailingIcon} />\n </Grid>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["parseDateTime","value","date","time","includes","split","console","error","DateTimeWithoutTimezone","field","bind","trailingIcon","initialValue","getDefaultFieldValue","Date","getCurrentDate","getCurrentLocalTime","bindValue","useEffect","onChange","cellSize","label"],"sources":["DateTimeWithoutTimezone.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport {\n getCurrentDate,\n getCurrentLocalTime,\n getDefaultFieldValue,\n RemoveFieldButton\n} from \"./utils\";\nimport { Input } from \"./Input\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface State {\n date: string;\n time: string;\n}\n\nconst parseDateTime = (value?: string): State => {\n if (!value) {\n return {\n date: \"\",\n time: \"\"\n };\n }\n if (value.includes(\"T\")) {\n const [date, time] = value.split(\".\")[0].split(\"T\");\n return {\n date,\n time\n };\n }\n const [date, time] = value.split(\" \");\n if (!date || !time) {\n console.error(`Could not extract date and time from \"${value}\".`);\n\n return {\n date: \"\",\n time: \"\"\n };\n }\n return {\n date,\n time\n };\n};\n\nexport interface DateTimeWithoutTimezoneProps {\n bind: BindComponentRenderProp;\n trailingIcon?: any;\n field: CmsModelField;\n}\nexport const DateTimeWithoutTimezone: React.FC<DateTimeWithoutTimezoneProps> = ({\n field,\n bind,\n trailingIcon\n}) => {\n // \"2020-05-18 09:00:00\"\n const initialValue = getDefaultFieldValue(field, bind, () => {\n const date = new Date();\n return `${getCurrentDate(date)} ${getCurrentLocalTime(date)}`;\n });\n\n const { date, time } = parseDateTime(initialValue);\n\n const bindValue = bind.value || \"\";\n\n useEffect(() => {\n if (!date || !time || bindValue === initialValue) {\n return;\n }\n bind.onChange(initialValue);\n }, [bindValue]);\n\n const cellSize = trailingIcon ? 5 : 6;\n\n return (\n <Grid>\n <Cell span={6}>\n <Input\n bind={{\n ...bind,\n value: date,\n onChange: async value => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(`${value} ${time || getCurrentLocalTime()}`);\n }\n }}\n field={{\n ...field,\n label: `${field.label} date`\n }}\n type={\"date\"}\n />\n </Cell>\n <Cell span={cellSize}>\n <Input\n bind={{\n ...bind,\n value: time,\n onChange: async value => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(`${date || getCurrentDate()} ${value}`);\n }\n }}\n field={{\n ...field,\n label: `${field.label} time`\n }}\n type={\"time\"}\n step={5}\n />\n </Cell>\n <RemoveFieldButton trailingIcon={trailingIcon} />\n </Grid>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_Grid","_utils","_Input","parseDateTime","value","date","time","includes","_value$split$0$split","split","_value$split$0$split2","_slicedToArray2","default","_value$split","_value$split2","console","error","concat","DateTimeWithoutTimezone","_ref","field","bind","trailingIcon","initialValue","getDefaultFieldValue","Date","getCurrentDate","getCurrentLocalTime","_parseDateTime","bindValue","useEffect","onChange","cellSize","createElement","Grid","Cell","span","Input","_objectSpread2","_onChange","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","wrap","_callee$","_context","prev","next","abrupt","stop","_x","apply","arguments","label","type","_onChange2","_callee2","_callee2$","_context2","_x2","step","RemoveFieldButton","exports"],"sources":["DateTimeWithoutTimezone.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport {\n getCurrentDate,\n getCurrentLocalTime,\n getDefaultFieldValue,\n RemoveFieldButton\n} from \"./utils\";\nimport { Input } from \"./Input\";\nimport { CmsModelField } from \"~/types\";\nimport { BindComponentRenderProp } from \"@webiny/form\";\n\ninterface State {\n date: string;\n time: string;\n}\n\nconst parseDateTime = (value?: string): State => {\n if (!value) {\n return {\n date: \"\",\n time: \"\"\n };\n }\n if (value.includes(\"T\")) {\n const [date, time] = value.split(\".\")[0].split(\"T\");\n return {\n date,\n time\n };\n }\n const [date, time] = value.split(\" \");\n if (!date || !time) {\n console.error(`Could not extract date and time from \"${value}\".`);\n\n return {\n date: \"\",\n time: \"\"\n };\n }\n return {\n date,\n time\n };\n};\n\nexport interface DateTimeWithoutTimezoneProps {\n bind: BindComponentRenderProp;\n trailingIcon?: any;\n field: CmsModelField;\n}\nexport const DateTimeWithoutTimezone: React.FC<DateTimeWithoutTimezoneProps> = ({\n field,\n bind,\n trailingIcon\n}) => {\n // \"2020-05-18 09:00:00\"\n const initialValue = getDefaultFieldValue(field, bind, () => {\n const date = new Date();\n return `${getCurrentDate(date)} ${getCurrentLocalTime(date)}`;\n });\n\n const { date, time } = parseDateTime(initialValue);\n\n const bindValue = bind.value || \"\";\n\n useEffect(() => {\n if (!date || !time || bindValue === initialValue) {\n return;\n }\n bind.onChange(initialValue);\n }, [bindValue]);\n\n const cellSize = trailingIcon ? 5 : 6;\n\n return (\n <Grid>\n <Cell span={6}>\n <Input\n bind={{\n ...bind,\n value: date,\n onChange: async value => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(`${value} ${time || getCurrentLocalTime()}`);\n }\n }}\n field={{\n ...field,\n label: `${field.label} date`\n }}\n type={\"date\"}\n />\n </Cell>\n <Cell span={cellSize}>\n <Input\n bind={{\n ...bind,\n value: time,\n onChange: async value => {\n if (!value) {\n if (!bind.value) {\n return;\n }\n return bind.onChange(\"\");\n }\n return bind.onChange(`${date || getCurrentDate()} ${value}`);\n }\n }}\n field={{\n ...field,\n label: `${field.label} time`\n }}\n type={\"time\"}\n step={5}\n />\n </Cell>\n <RemoveFieldButton trailingIcon={trailingIcon} />\n </Grid>\n );\n};\n"],"mappings":"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"}