@webiny/app-headless-cms 5.40.5 → 5.40.6-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/HeadlessCMS.js +2 -1
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntryForm/ContentEntryForm.d.ts +6 -11
  4. package/admin/components/ContentEntryForm/ContentEntryForm.js +5 -6
  5. package/admin/components/ContentEntryForm/ContentEntryForm.js.map +1 -1
  6. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js +6 -1
  7. package/admin/components/ContentEntryForm/ContentEntryFormPreview.js.map +1 -1
  8. package/admin/components/ContentEntryForm/ContentEntryFormProvider.d.ts +7 -2
  9. package/admin/components/ContentEntryForm/ContentEntryFormProvider.js +8 -42
  10. package/admin/components/ContentEntryForm/ContentEntryFormProvider.js.map +1 -1
  11. package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js +1 -1
  12. package/admin/components/ContentEntryForm/Header/DeleteEntry/DeleteEntry.js.map +1 -1
  13. package/admin/components/ContentEntryForm/SingletonHeader/SaveAction.d.ts +2 -0
  14. package/admin/components/ContentEntryForm/SingletonHeader/SaveAction.js +24 -0
  15. package/admin/components/ContentEntryForm/SingletonHeader/SaveAction.js.map +1 -0
  16. package/admin/components/ContentEntryForm/SingletonHeader/SingletonHeader.d.ts +5 -0
  17. package/admin/components/ContentEntryForm/SingletonHeader/SingletonHeader.js +65 -0
  18. package/admin/components/ContentEntryForm/SingletonHeader/SingletonHeader.js.map +1 -0
  19. package/admin/components/ContentEntryForm/SingletonHeader/index.d.ts +1 -0
  20. package/admin/components/ContentEntryForm/SingletonHeader/index.js +18 -0
  21. package/admin/components/ContentEntryForm/SingletonHeader/index.js.map +1 -0
  22. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision/EntryRevisionDeletedSnackbarMessage.d.ts +8 -0
  23. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision/EntryRevisionDeletedSnackbarMessage.js +18 -0
  24. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision/EntryRevisionDeletedSnackbarMessage.js.map +1 -0
  25. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision.d.ts +2 -0
  26. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision.js +106 -0
  27. package/admin/components/Decorators/ShowConfirmationOnDeleteRevision.js.map +1 -0
  28. package/admin/contexts/Cms/index.d.ts +27 -5
  29. package/admin/contexts/Cms/index.js +136 -38
  30. package/admin/contexts/Cms/index.js.map +1 -1
  31. package/admin/hooks/usePersistEntry.d.ts +12 -0
  32. package/admin/hooks/usePersistEntry.js +48 -0
  33. package/admin/hooks/usePersistEntry.js.map +1 -0
  34. package/admin/plugins/fieldRenderers/ref/components/NewReferencedEntryDialog.js +11 -6
  35. package/admin/plugins/fieldRenderers/ref/components/NewReferencedEntryDialog.js.map +1 -1
  36. package/admin/plugins/fields/ref.js +7 -1
  37. package/admin/plugins/fields/ref.js.map +1 -1
  38. package/admin/views/contentEntries/ContentEntriesModule.js +2 -1
  39. package/admin/views/contentEntries/ContentEntriesModule.js.map +1 -1
  40. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +8 -0
  41. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +51 -22
  42. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  43. package/admin/views/contentEntries/ContentEntry/RevisionsList/PublishEntryRevisionListItem.js +1 -1
  44. package/admin/views/contentEntries/ContentEntry/RevisionsList/PublishEntryRevisionListItem.js.map +1 -1
  45. package/admin/views/contentEntries/ContentEntry/RevisionsList/RevisionListItem.js +6 -6
  46. package/admin/views/contentEntries/ContentEntry/RevisionsList/RevisionListItem.js.map +1 -1
  47. package/admin/views/contentEntries/ContentEntry/RevisionsList/useRevision.js +28 -22
  48. package/admin/views/contentEntries/ContentEntry/RevisionsList/useRevision.js.map +1 -1
  49. package/admin/views/contentEntries/ContentEntry/SingletonContentEntry.d.ts +8 -0
  50. package/admin/views/contentEntries/ContentEntry/SingletonContentEntry.js +66 -0
  51. package/admin/views/contentEntries/ContentEntry/SingletonContentEntry.js.map +1 -0
  52. package/admin/views/contentEntries/ContentEntry/SingletonContentEntryContext.d.ts +20 -0
  53. package/admin/views/contentEntries/ContentEntry/SingletonContentEntryContext.js +75 -0
  54. package/admin/views/contentEntries/ContentEntry/SingletonContentEntryContext.js.map +1 -0
  55. package/admin/views/contentEntries/ContentEntry.js +11 -4
  56. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  57. package/admin/views/contentEntries/SingletonContentEntryModule.d.ts +2 -0
  58. package/admin/views/contentEntries/SingletonContentEntryModule.js +33 -0
  59. package/admin/views/contentEntries/SingletonContentEntryModule.js.map +1 -0
  60. package/admin/views/contentEntries/hooks/useSingletonContentEntry.d.ts +8 -0
  61. package/admin/views/contentEntries/hooks/useSingletonContentEntry.js +18 -0
  62. package/admin/views/contentEntries/hooks/useSingletonContentEntry.js.map +1 -0
  63. package/admin/views/contentModels/ContentModelsDataList.js +13 -4
  64. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
  65. package/admin/views/contentModels/NewContentModelDialog.js +58 -21
  66. package/admin/views/contentModels/NewContentModelDialog.js.map +1 -1
  67. package/package.json +28 -28
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_get","_interopRequireDefault","_viewsGraphql","_validation","_Grid","_AutoComplete","_useSnackbar2","_roundLink24px","_i18n","_form","_hooks","_renderInfo","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","t","i18n","ns","RefFieldSettings","_useModel","useModel","model","_useForm","useForm","formData","data","lockedFields","fieldId","isFieldLocked","some","lockedField","_useQuery","useQuery","LIST_CONTENT_MODELS","loading","error","_useSnackbar","useSnackbar","showSnackbar","message","options","useMemo","models","get","map","id","modelId","name","atLeastOneItem","useCallback","value","validation","validate","err","ValidationError","default","createElement","Grid","Cell","span","Bind","validators","bind","formattedValueForAutoComplete","filter","option","_ref","MultiAutoComplete","Object","assign","onChange","values","label","_taggedTemplateLiteral2","description","disabled","plugin","type","field","listValidators","icon","ReactComponent","allowMultipleValues","allowPredefinedValues","multipleValuesLabel","createField","settings","renderer","renderSettings","graphql","queryField","renderInfo","_default","exports"],"sources":["ref.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { LIST_CONTENT_MODELS, ListCmsModelsQueryResponse } from \"../../viewsGraphql\";\nimport { validation, ValidationError } from \"@webiny/validation\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { MultiAutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { CmsModelFieldTypePlugin, CmsModel } from \"~/types\";\nimport { ReactComponent as RefIcon } from \"./icons/round-link-24px.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Bind, BindComponentRenderProp, useForm } from \"@webiny/form\";\nimport { useQuery, useModel } from \"~/admin/hooks\";\nimport { renderInfo } from \"./ref/renderInfo\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields\");\n\nconst RefFieldSettings = () => {\n const { model } = useModel();\n const { data: formData } = useForm();\n const lockedFields = model.lockedFields || [];\n const fieldId = (formData || {}).fieldId || null;\n const isFieldLocked = lockedFields.some(\n lockedField => fieldId && lockedField.fieldId === fieldId\n );\n\n const { data, loading, error } = useQuery<ListCmsModelsQueryResponse>(LIST_CONTENT_MODELS);\n const { showSnackbar } = useSnackbar();\n\n if (error) {\n showSnackbar(error.message);\n return null;\n }\n\n // Format options for the Autocomplete component.\n const options = useMemo(() => {\n const models = get(data, \"listContentModels.data\", []) as CmsModel[];\n return models.map(model => {\n return { id: model.modelId, name: model.name };\n });\n }, [data]);\n\n const atLeastOneItem = useCallback(async (value: Pick<CmsModel, \"modelId\">) => {\n try {\n await validation.validate(value, \"required,minLength:1\");\n } catch (err) {\n throw new ValidationError(`Please select at least 1 item`);\n }\n }, []);\n\n return (\n <Grid>\n <Cell span={12}>\n <Bind name={\"settings.models\"} validators={atLeastOneItem}>\n {(bind: BindComponentRenderProp<CmsModel[]>) => {\n // Format value prop for MultiAutoComplete component.\n const formattedValueForAutoComplete = options.filter(option =>\n bind.value.some(({ modelId }) => option.id === modelId)\n );\n\n return (\n <MultiAutoComplete\n {...bind}\n value={formattedValueForAutoComplete}\n onChange={(values: CmsModel[]) => {\n bind.onChange(values.map(value => ({ modelId: value.id })));\n }}\n label={loading ? t`Loading models...` : t`Content models`}\n description={t`Cannot be changed later`}\n options={options}\n disabled={isFieldLocked || loading}\n />\n );\n }}\n </Bind>\n </Cell>\n </Grid>\n );\n};\n\nconst plugin: CmsModelFieldTypePlugin = {\n type: \"cms-editor-field-type\",\n name: \"cms-editor-field-type-ref\",\n field: {\n type: \"ref\",\n validators: [\"required\"],\n listValidators: [\"minLength\", \"maxLength\"],\n label: t`Reference`,\n description: t`Reference existing content entries. For example, a book can reference one or more authors.`,\n icon: <RefIcon />,\n allowMultipleValues: true,\n allowPredefinedValues: false,\n multipleValuesLabel: t`Use as a list of references`,\n createField() {\n return {\n type: this.type,\n settings: {\n models: []\n },\n validation: [],\n renderer: {\n name: \"\"\n }\n };\n },\n renderSettings() {\n return <RefFieldSettings />;\n },\n graphql: {\n queryField: /* GraphQL */ `\n {\n modelId\n id\n }\n `\n },\n renderInfo\n }\n};\n\nexport default plugin;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_get","_interopRequireDefault","_viewsGraphql","_validation","_Grid","_AutoComplete","_useSnackbar2","_roundLink24px","_i18n","_form","_hooks","_renderInfo","_appHeadlessCmsCommon","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","t","i18n","ns","RefFieldSettings","_useModel","useModel","model","_useForm","useForm","formData","data","lockedFields","fieldId","isFieldLocked","some","lockedField","_useQuery","useQuery","LIST_CONTENT_MODELS","loading","error","_useSnackbar","useSnackbar","showSnackbar","message","options","useMemo","models","get","filter","tags","includes","CMS_MODEL_SINGLETON_TAG","map","id","modelId","name","atLeastOneItem","useCallback","value","validation","validate","err","ValidationError","default","createElement","Grid","Cell","span","Bind","validators","bind","formattedValueForAutoComplete","option","_ref","MultiAutoComplete","Object","assign","onChange","values","label","_taggedTemplateLiteral2","description","disabled","plugin","type","field","listValidators","icon","ReactComponent","allowMultipleValues","allowPredefinedValues","multipleValuesLabel","createField","settings","renderer","renderSettings","graphql","queryField","renderInfo","_default","exports"],"sources":["ref.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { LIST_CONTENT_MODELS, ListCmsModelsQueryResponse } from \"../../viewsGraphql\";\nimport { validation, ValidationError } from \"@webiny/validation\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { MultiAutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { CmsModel, CmsModelFieldTypePlugin } from \"~/types\";\nimport { ReactComponent as RefIcon } from \"./icons/round-link-24px.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Bind, BindComponentRenderProp, useForm } from \"@webiny/form\";\nimport { useModel, useQuery } from \"~/admin/hooks\";\nimport { renderInfo } from \"./ref/renderInfo\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"@webiny/app-headless-cms-common\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields\");\n\nconst RefFieldSettings = () => {\n const { model } = useModel();\n const { data: formData } = useForm();\n const lockedFields = model.lockedFields || [];\n const fieldId = (formData || {}).fieldId || null;\n const isFieldLocked = lockedFields.some(\n lockedField => fieldId && lockedField.fieldId === fieldId\n );\n\n const { data, loading, error } = useQuery<ListCmsModelsQueryResponse>(LIST_CONTENT_MODELS);\n const { showSnackbar } = useSnackbar();\n\n if (error) {\n showSnackbar(error.message);\n return null;\n }\n\n // Format options for the Autocomplete component.\n const options = useMemo(() => {\n const models = get(data, \"listContentModels.data\", []) as CmsModel[];\n return (\n models\n /**\n * Remove singleton models from the list of options.\n */\n .filter(model => {\n return !model.tags?.includes(CMS_MODEL_SINGLETON_TAG);\n })\n .map(model => {\n return { id: model.modelId, name: model.name };\n })\n );\n }, [data]);\n\n const atLeastOneItem = useCallback(async (value: Pick<CmsModel, \"modelId\">) => {\n try {\n await validation.validate(value, \"required,minLength:1\");\n } catch (err) {\n throw new ValidationError(`Please select at least 1 item`);\n }\n }, []);\n\n return (\n <Grid>\n <Cell span={12}>\n <Bind name={\"settings.models\"} validators={atLeastOneItem}>\n {(bind: BindComponentRenderProp<CmsModel[]>) => {\n // Format value prop for MultiAutoComplete component.\n const formattedValueForAutoComplete = options.filter(option =>\n bind.value.some(({ modelId }) => option.id === modelId)\n );\n\n return (\n <MultiAutoComplete\n {...bind}\n value={formattedValueForAutoComplete}\n onChange={(values: CmsModel[]) => {\n bind.onChange(values.map(value => ({ modelId: value.id })));\n }}\n label={loading ? t`Loading models...` : t`Content models`}\n description={t`Cannot be changed later`}\n options={options}\n disabled={isFieldLocked || loading}\n />\n );\n }}\n </Bind>\n </Cell>\n </Grid>\n );\n};\n\nconst plugin: CmsModelFieldTypePlugin = {\n type: \"cms-editor-field-type\",\n name: \"cms-editor-field-type-ref\",\n field: {\n type: \"ref\",\n validators: [\"required\"],\n listValidators: [\"minLength\", \"maxLength\"],\n label: t`Reference`,\n description: t`Reference existing content entries. For example, a book can reference one or more authors.`,\n icon: <RefIcon />,\n allowMultipleValues: true,\n allowPredefinedValues: false,\n multipleValuesLabel: t`Use as a list of references`,\n createField() {\n return {\n type: this.type,\n settings: {\n models: []\n },\n validation: [],\n renderer: {\n name: \"\"\n }\n };\n },\n renderSettings() {\n return <RefFieldSettings />;\n },\n graphql: {\n queryField: /* GraphQL */ `\n {\n modelId\n id\n }\n `\n },\n renderInfo\n }\n};\n\nexport default plugin;\n"],"mappings":"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","ignoreList":[]}
@@ -17,6 +17,7 @@ var _RefFieldRenderer = require("../../components/ContentEntries/Filters/RefFiel
17
17
  var _ShowConfirmationOnDelete = require("../../components/Decorators/ShowConfirmationOnDelete");
18
18
  var _ShowConfirmationOnPublish = require("../../components/Decorators/ShowConfirmationOnPublish");
19
19
  var _ShowConfirmationOnUnpublish = require("../../components/Decorators/ShowConfirmationOnUnpublish");
20
+ var _ShowConfirmationOnDeleteRevision = require("../../components/Decorators/ShowConfirmationOnDeleteRevision");
20
21
  var Browser = _contentEntries.ContentEntryListConfig.Browser;
21
22
  var Actions = _contentEntries.ContentEntryEditorConfig.Actions;
22
23
  var ContentEntriesModule = exports.ContentEntriesModule = function ContentEntriesModule() {
@@ -98,7 +99,7 @@ var ContentEntriesModule = exports.ContentEntriesModule = function ContentEntrie
98
99
  name: "ref",
99
100
  element: /*#__PURE__*/_react.default.createElement(_RefFieldRenderer.Ref, null),
100
101
  type: Browser.AdvancedSearch.FieldRenderer.FieldType.REF
101
- })), /*#__PURE__*/_react.default.createElement(_contentEntries.ContentEntryEditorConfig, null, /*#__PURE__*/_react.default.createElement(_ShowConfirmationOnPublish.ShowConfirmationOnPublish, null), /*#__PURE__*/_react.default.createElement(_ShowConfirmationOnUnpublish.ShowConfirmationOnUnpublish, null), /*#__PURE__*/_react.default.createElement(_ShowConfirmationOnDelete.ShowConfirmationOnDelete, null), /*#__PURE__*/_react.default.createElement(Actions.ButtonAction, {
102
+ })), /*#__PURE__*/_react.default.createElement(_contentEntries.ContentEntryEditorConfig, null, /*#__PURE__*/_react.default.createElement(_ShowConfirmationOnPublish.ShowConfirmationOnPublish, null), /*#__PURE__*/_react.default.createElement(_ShowConfirmationOnUnpublish.ShowConfirmationOnUnpublish, null), /*#__PURE__*/_react.default.createElement(_ShowConfirmationOnDelete.ShowConfirmationOnDelete, null), /*#__PURE__*/_react.default.createElement(_ShowConfirmationOnDeleteRevision.ShowConfirmationOnDeleteRevision, null), /*#__PURE__*/_react.default.createElement(Actions.ButtonAction, {
102
103
  name: "save",
103
104
  element: /*#__PURE__*/_react.default.createElement(_Header.SaveContentButton, null)
104
105
  }), /*#__PURE__*/_react.default.createElement(Actions.ButtonAction, {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_contentEntries","_BulkActions","_Filters","_Header","_appAco","_Actions","_Cells","_RefFieldRenderer","_ShowConfirmationOnDelete","_ShowConfirmationOnPublish","_ShowConfirmationOnUnpublish","Browser","ContentEntryListConfig","Actions","ContentEntryEditorConfig","ContentEntriesModule","exports","default","createElement","Fragment","Filter","name","element","FilterByStatus","BulkAction","ActionPublish","ActionUnpublish","ActionMove","ActionDelete","FolderAction","EditFolder","SetFolderPermissions","DeleteFolder","EntryAction","EditEntry","ChangeEntryStatus","MoveEntry","DeleteEntry","Table","Column","header","cell","CellName","sortable","hideable","size","className","CellAuthor","CellCreated","CellModified","CellStatus","CellActions","resizable","AdvancedSearch","FieldRenderer","Ref","type","FieldType","REF","ShowConfirmationOnPublish","ShowConfirmationOnUnpublish","ShowConfirmationOnDelete","ButtonAction","SaveContentButton","SaveAndPublishButton","MenuItemAction"],"sources":["ContentEntriesModule.tsx"],"sourcesContent":["import React from \"react\";\nimport { ContentEntryEditorConfig, ContentEntryListConfig } from \"~/admin/config/contentEntries\";\n\nimport {\n ActionDelete,\n ActionMove,\n ActionPublish,\n ActionUnpublish\n} from \"~/admin/components/ContentEntries/BulkActions\";\nimport { FilterByStatus } from \"~/admin/components/ContentEntries/Filters\";\nimport {\n DeleteEntry as DeleteEntryMenuItem,\n SaveAndPublishButton,\n SaveContentButton\n} from \"~/admin/components/ContentEntryForm/Header\";\nimport { DeleteFolder, EditFolder, SetFolderPermissions } from \"@webiny/app-aco\";\nimport {\n ChangeEntryStatus,\n DeleteEntry,\n EditEntry,\n MoveEntry\n} from \"~/admin/components/ContentEntries/Table/Actions\";\nimport {\n CellActions,\n CellAuthor,\n CellCreated,\n CellModified,\n CellName,\n CellStatus\n} from \"~/admin/components/ContentEntries/Table/Cells\";\nimport { Ref } from \"~/admin/components/ContentEntries/Filters/RefFieldRenderer\";\nimport { ShowConfirmationOnDelete } from \"~/admin/components/Decorators/ShowConfirmationOnDelete\";\nimport { ShowConfirmationOnPublish } from \"~/admin/components/Decorators/ShowConfirmationOnPublish\";\nimport { ShowConfirmationOnUnpublish } from \"~/admin/components/Decorators/ShowConfirmationOnUnpublish\";\n\nconst { Browser } = ContentEntryListConfig;\nconst { Actions } = ContentEntryEditorConfig;\n\nexport const ContentEntriesModule = () => {\n return (\n <>\n <ContentEntryListConfig>\n <Browser.Filter name={\"status\"} element={<FilterByStatus />} />\n <Browser.BulkAction name={\"publish\"} element={<ActionPublish />} />\n <Browser.BulkAction name={\"unpublish\"} element={<ActionUnpublish />} />\n <Browser.BulkAction name={\"move\"} element={<ActionMove />} />\n <Browser.BulkAction name={\"delete\"} element={<ActionDelete />} />\n <Browser.FolderAction name={\"edit\"} element={<EditFolder />} />\n <Browser.FolderAction name={\"permissions\"} element={<SetFolderPermissions />} />\n <Browser.FolderAction name={\"delete\"} element={<DeleteFolder />} />\n <Browser.EntryAction name={\"edit\"} element={<EditEntry />} />\n <Browser.EntryAction name={\"status\"} element={<ChangeEntryStatus />} />\n <Browser.EntryAction name={\"move\"} element={<MoveEntry />} />\n <Browser.EntryAction name={\"delete\"} element={<DeleteEntry />} />\n <Browser.Table.Column\n name={\"name\"}\n header={\"Name\"}\n cell={<CellName />}\n sortable={true}\n hideable={false}\n size={200}\n className={\"cms-aco-list-title\"}\n />\n <Browser.Table.Column\n name={\"createdBy\"}\n header={\"Author\"}\n cell={<CellAuthor />}\n className={\"cms-aco-list-createdBy\"}\n />\n <Browser.Table.Column\n name={\"createdOn\"}\n header={\"Created\"}\n cell={<CellCreated />}\n sortable={true}\n className={\"cms-aco-list-createdOn\"}\n />\n <Browser.Table.Column\n name={\"savedOn\"}\n header={\"Modified\"}\n cell={<CellModified />}\n sortable={true}\n className={\"cms-aco-list-savedOn\"}\n />\n <Browser.Table.Column\n name={\"status\"}\n header={\"Status\"}\n cell={<CellStatus />}\n className={\"cms-aco-list-status\"}\n />\n <Browser.Table.Column\n name={\"actions\"}\n header={\" \"}\n cell={<CellActions />}\n size={80}\n resizable={false}\n hideable={false}\n className={\"rmwc-data-table__cell--align-end cms-aco-list-actions\"}\n />\n <Browser.AdvancedSearch.FieldRenderer\n name={\"ref\"}\n element={<Ref />}\n type={Browser.AdvancedSearch.FieldRenderer.FieldType.REF}\n />\n </ContentEntryListConfig>\n <ContentEntryEditorConfig>\n <ShowConfirmationOnPublish />\n <ShowConfirmationOnUnpublish />\n <ShowConfirmationOnDelete />\n <Actions.ButtonAction name={\"save\"} element={<SaveContentButton />} />\n <Actions.ButtonAction name={\"publish\"} element={<SaveAndPublishButton />} />\n <Actions.MenuItemAction name={\"delete\"} element={<DeleteEntryMenuItem />} />\n </ContentEntryEditorConfig>\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_contentEntries","_BulkActions","_Filters","_Header","_appAco","_Actions","_Cells","_RefFieldRenderer","_ShowConfirmationOnDelete","_ShowConfirmationOnPublish","_ShowConfirmationOnUnpublish","_ShowConfirmationOnDeleteRevision","Browser","ContentEntryListConfig","Actions","ContentEntryEditorConfig","ContentEntriesModule","exports","default","createElement","Fragment","Filter","name","element","FilterByStatus","BulkAction","ActionPublish","ActionUnpublish","ActionMove","ActionDelete","FolderAction","EditFolder","SetFolderPermissions","DeleteFolder","EntryAction","EditEntry","ChangeEntryStatus","MoveEntry","DeleteEntry","Table","Column","header","cell","CellName","sortable","hideable","size","className","CellAuthor","CellCreated","CellModified","CellStatus","CellActions","resizable","AdvancedSearch","FieldRenderer","Ref","type","FieldType","REF","ShowConfirmationOnPublish","ShowConfirmationOnUnpublish","ShowConfirmationOnDelete","ShowConfirmationOnDeleteRevision","ButtonAction","SaveContentButton","SaveAndPublishButton","MenuItemAction"],"sources":["ContentEntriesModule.tsx"],"sourcesContent":["import React from \"react\";\nimport { ContentEntryEditorConfig, ContentEntryListConfig } from \"~/admin/config/contentEntries\";\n\nimport {\n ActionDelete,\n ActionMove,\n ActionPublish,\n ActionUnpublish\n} from \"~/admin/components/ContentEntries/BulkActions\";\nimport { FilterByStatus } from \"~/admin/components/ContentEntries/Filters\";\nimport {\n DeleteEntry as DeleteEntryMenuItem,\n SaveAndPublishButton,\n SaveContentButton\n} from \"~/admin/components/ContentEntryForm/Header\";\nimport { DeleteFolder, EditFolder, SetFolderPermissions } from \"@webiny/app-aco\";\nimport {\n ChangeEntryStatus,\n DeleteEntry,\n EditEntry,\n MoveEntry\n} from \"~/admin/components/ContentEntries/Table/Actions\";\nimport {\n CellActions,\n CellAuthor,\n CellCreated,\n CellModified,\n CellName,\n CellStatus\n} from \"~/admin/components/ContentEntries/Table/Cells\";\nimport { Ref } from \"~/admin/components/ContentEntries/Filters/RefFieldRenderer\";\nimport { ShowConfirmationOnDelete } from \"~/admin/components/Decorators/ShowConfirmationOnDelete\";\nimport { ShowConfirmationOnPublish } from \"~/admin/components/Decorators/ShowConfirmationOnPublish\";\nimport { ShowConfirmationOnUnpublish } from \"~/admin/components/Decorators/ShowConfirmationOnUnpublish\";\nimport { ShowConfirmationOnDeleteRevision } from \"~/admin/components/Decorators/ShowConfirmationOnDeleteRevision\";\n\nconst { Browser } = ContentEntryListConfig;\nconst { Actions } = ContentEntryEditorConfig;\n\nexport const ContentEntriesModule = () => {\n return (\n <>\n <ContentEntryListConfig>\n <Browser.Filter name={\"status\"} element={<FilterByStatus />} />\n <Browser.BulkAction name={\"publish\"} element={<ActionPublish />} />\n <Browser.BulkAction name={\"unpublish\"} element={<ActionUnpublish />} />\n <Browser.BulkAction name={\"move\"} element={<ActionMove />} />\n <Browser.BulkAction name={\"delete\"} element={<ActionDelete />} />\n <Browser.FolderAction name={\"edit\"} element={<EditFolder />} />\n <Browser.FolderAction name={\"permissions\"} element={<SetFolderPermissions />} />\n <Browser.FolderAction name={\"delete\"} element={<DeleteFolder />} />\n <Browser.EntryAction name={\"edit\"} element={<EditEntry />} />\n <Browser.EntryAction name={\"status\"} element={<ChangeEntryStatus />} />\n <Browser.EntryAction name={\"move\"} element={<MoveEntry />} />\n <Browser.EntryAction name={\"delete\"} element={<DeleteEntry />} />\n <Browser.Table.Column\n name={\"name\"}\n header={\"Name\"}\n cell={<CellName />}\n sortable={true}\n hideable={false}\n size={200}\n className={\"cms-aco-list-title\"}\n />\n <Browser.Table.Column\n name={\"createdBy\"}\n header={\"Author\"}\n cell={<CellAuthor />}\n className={\"cms-aco-list-createdBy\"}\n />\n <Browser.Table.Column\n name={\"createdOn\"}\n header={\"Created\"}\n cell={<CellCreated />}\n sortable={true}\n className={\"cms-aco-list-createdOn\"}\n />\n <Browser.Table.Column\n name={\"savedOn\"}\n header={\"Modified\"}\n cell={<CellModified />}\n sortable={true}\n className={\"cms-aco-list-savedOn\"}\n />\n <Browser.Table.Column\n name={\"status\"}\n header={\"Status\"}\n cell={<CellStatus />}\n className={\"cms-aco-list-status\"}\n />\n <Browser.Table.Column\n name={\"actions\"}\n header={\" \"}\n cell={<CellActions />}\n size={80}\n resizable={false}\n hideable={false}\n className={\"rmwc-data-table__cell--align-end cms-aco-list-actions\"}\n />\n <Browser.AdvancedSearch.FieldRenderer\n name={\"ref\"}\n element={<Ref />}\n type={Browser.AdvancedSearch.FieldRenderer.FieldType.REF}\n />\n </ContentEntryListConfig>\n <ContentEntryEditorConfig>\n <ShowConfirmationOnPublish />\n <ShowConfirmationOnUnpublish />\n <ShowConfirmationOnDelete />\n <ShowConfirmationOnDeleteRevision />\n <Actions.ButtonAction name={\"save\"} element={<SaveContentButton />} />\n <Actions.ButtonAction name={\"publish\"} element={<SaveAndPublishButton />} />\n <Actions.MenuItemAction name={\"delete\"} element={<DeleteEntryMenuItem />} />\n </ContentEntryEditorConfig>\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@ import React from "react";
2
2
  import { ContentEntriesContext } from "../ContentEntriesContext";
3
3
  import { CmsContentEntry, CmsContentEntryRevision } from "../../../../types";
4
4
  import * as Cms from "../../../contexts/Cms";
5
+ import { OperationError } from "../../../contexts/Cms";
5
6
  interface UpdateListCacheOptions {
6
7
  options?: {
7
8
  addItemToListCache?: boolean;
@@ -14,6 +15,12 @@ export declare type UpdateEntryRevisionParams = Omit<Cms.UpdateEntryRevisionPara
14
15
  export declare type PublishEntryRevisionParams = Omit<Cms.PublishEntryRevisionParams, "model">;
15
16
  export declare type UnpublishEntryRevisionParams = Omit<Cms.UnpublishEntryRevisionParams, "model">;
16
17
  export declare type DeleteEntryParams = Omit<Cms.DeleteEntryParams, "model">;
18
+ export declare type DeleteEntryRevisionParams = DeleteEntryParams;
19
+ export interface DeleteEntryRevisionOperationSuccess {
20
+ newLatestRevision: CmsContentEntryRevision;
21
+ error?: never;
22
+ }
23
+ export declare type DeleteEntryRevisionResponse = OperationError | DeleteEntryRevisionOperationSuccess;
17
24
  export interface ContentEntryCrud {
18
25
  getEntry: (params: GetEntryParams) => Promise<Cms.GetEntryResponse>;
19
26
  createEntry: (params: CreateEntryParams) => Promise<Cms.CreateEntryResponse>;
@@ -22,6 +29,7 @@ export interface ContentEntryCrud {
22
29
  publishEntryRevision: (params: PublishEntryRevisionParams) => Promise<Cms.PublishEntryRevisionResponse>;
23
30
  unpublishEntryRevision: (params: UnpublishEntryRevisionParams) => Promise<Cms.UnpublishEntryRevisionResponse>;
24
31
  deleteEntry: (params: DeleteEntryParams) => Promise<Cms.DeleteEntryResponse>;
32
+ deleteEntryRevision: (params: DeleteEntryRevisionParams) => Promise<DeleteEntryRevisionResponse>;
25
33
  }
26
34
  export interface ContentEntryContext extends ContentEntriesContext, ContentEntryCrud {
27
35
  entry: CmsContentEntry;
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.useContentEntryProviderProps = exports.ContentEntryProvider = exports.ContentEntryContext = void 0;
9
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
12
  var _react = _interopRequireWildcard(require("react"));
12
- var _get = _interopRequireDefault(require("lodash/get"));
13
13
  var _reactRouter = require("@webiny/react-router");
14
14
  var _appAdmin = require("@webiny/app-admin");
15
15
  var _hooks = require("../../../hooks");
@@ -52,6 +52,10 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
52
52
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
53
53
  entry = _useState4[0],
54
54
  setEntry = _useState4[1];
55
+ var _useState5 = (0, _react.useState)([]),
56
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
57
+ revisions = _useState6[0],
58
+ setRevisions = _useState6[1];
55
59
  var _useContentEntries = (0, _useContentEntries2.useContentEntries)(),
56
60
  model = _useContentEntries.contentModel,
57
61
  canCreate = _useContentEntries.canCreate;
@@ -64,10 +68,10 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
64
68
  addRecordToCache = _ref2.addRecordToCache,
65
69
  updateRecordInCache = _ref2.updateRecordInCache,
66
70
  removeRecordFromCache = _ref2.removeRecordFromCache;
67
- var _useState5 = (0, _react.useState)(false),
68
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
69
- isLoading = _useState6[0],
70
- setLoading = _useState6[1];
71
+ var _useState7 = (0, _react.useState)(false),
72
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
73
+ isLoading = _useState8[0],
74
+ setLoading = _useState8[1];
71
75
  var contentEntryProviderProps = useContentEntryProviderProps();
72
76
  var newEntry = typeof isNewEntry === "function" ? isNewEntry() : contentEntryProviderProps.isNewEntry();
73
77
  var contentId = typeof getContentId === "function" ? getContentId() : contentEntryProviderProps.getContentId();
@@ -91,12 +95,6 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
91
95
  };
92
96
  }, [model.modelId]),
93
97
  READ_CONTENT = _useMemo.READ_CONTENT;
94
- var _useMemo2 = (0, _react.useMemo)(function () {
95
- return {
96
- GET_REVISIONS: (0, _appHeadlessCmsCommon.createRevisionsQuery)(model)
97
- };
98
- }, [model.modelId]),
99
- GET_REVISIONS = _useMemo2.GET_REVISIONS;
100
98
  var variables;
101
99
  if (version === null && entryId) {
102
100
  variables = {
@@ -128,21 +126,21 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
128
126
  showSnackbar(error.message);
129
127
  }
130
128
  });
131
- var getRevisions = (0, _hooks.useQuery)(GET_REVISIONS, {
132
- variables: {
133
- id: entryId
134
- },
135
- skip: !entryId
136
- });
137
- var loading = isLoading || loadEntry.loading || getRevisions.loading;
129
+ var loading = isLoading || loadEntry.loading;
138
130
  (0, _react.useEffect)(function () {
139
- if (getRevisions.loading || !entryId) {
131
+ if (!entryId) {
140
132
  return;
141
133
  }
142
- getRevisions.refetch({
134
+ cms.listEntryRevisions({
135
+ model: model,
143
136
  id: entryId
137
+ }).then(function (response) {
138
+ if (response.error) {
139
+ return;
140
+ }
141
+ setRevisions(response.revisions);
144
142
  });
145
- }, [revisionId, getRevisions]);
143
+ }, [entryId]);
146
144
 
147
145
  // CRUD methods
148
146
  var getEntry = async function getEntry(_ref3) {
@@ -185,6 +183,7 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
185
183
  setLoading(false);
186
184
  if (response.entry) {
187
185
  setEntry(response.entry);
186
+ setRevisions([response.entry].concat((0, _toConsumableArray2.default)(revisions)));
188
187
  updateRecordInCache(response.entry);
189
188
  }
190
189
  return response;
@@ -198,6 +197,13 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
198
197
  if (response.entry) {
199
198
  setEntry(response.entry);
200
199
  updateRecordInCache(response.entry);
200
+ var updatedRevisionsList = revisions.map(function (rev) {
201
+ if (rev.id === response.entry.id) {
202
+ return response.entry;
203
+ }
204
+ return rev;
205
+ });
206
+ setRevisions(updatedRevisionsList);
201
207
  }
202
208
  return response;
203
209
  };
@@ -208,6 +214,28 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
208
214
  removeRecordFromCache(params.id);
209
215
  return response;
210
216
  };
217
+ var deleteEntryRevision = async function deleteEntryRevision(params) {
218
+ var response = await cms.deleteEntry((0, _objectSpread2.default)({
219
+ model: model
220
+ }, params));
221
+ if (typeof response === "object" && response.error) {
222
+ return response;
223
+ }
224
+ var updatedRevisionsList = revisions.filter(function (rev) {
225
+ return rev.id !== params.id;
226
+ });
227
+ setRevisions(updatedRevisionsList);
228
+ var _updatedRevisionsList = (0, _slicedToArray2.default)(updatedRevisionsList, 1),
229
+ newLatestRevision = _updatedRevisionsList[0];
230
+ if (newLatestRevision) {
231
+ updateRecordInCache(newLatestRevision);
232
+ } else {
233
+ removeRecordFromCache(params.id);
234
+ }
235
+ return {
236
+ newLatestRevision: newLatestRevision
237
+ };
238
+ };
211
239
  var publishEntryRevision = async function publishEntryRevision(params) {
212
240
  var response = await cms.publishEntryRevision((0, _objectSpread2.default)({
213
241
  model: model
@@ -236,11 +264,12 @@ var ContentEntryProvider = exports.ContentEntryProvider = function ContentEntryP
236
264
  createEntry: createEntry,
237
265
  createEntryRevisionFrom: createEntryRevisionFrom,
238
266
  deleteEntry: deleteEntry,
267
+ deleteEntryRevision: deleteEntryRevision,
239
268
  entry: entry || {},
240
269
  loading: loading,
241
270
  publishEntryRevision: publishEntryRevision,
242
271
  refetchContent: loadEntry.refetch,
243
- revisions: (0, _get.default)(getRevisions, "data.revisions.data") || [],
272
+ revisions: revisions,
244
273
  setActiveTab: setActiveTab,
245
274
  showEmptyView: !newEntry && !loading && !revisionId,
246
275
  unpublishEntryRevision: unpublishEntryRevision,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_get","_interopRequireDefault","_reactRouter","_appAdmin","_hooks","_useContentEntries2","_utils","_appHeadlessCmsCommon","_getFetchPolicy","_appAco","_useMockRecords","_constants","ContentEntryContext","exports","React","createContext","undefined","useContentEntryProviderProps","_useRouter","useRouter","location","query","URLSearchParams","search","isNewEntry","get","getContentId","ContentEntryProvider","_ref","children","readonly","currentFolderId","_useIsMounted","useIsMounted","isMounted","_useState","useState","_useState2","_slicedToArray2","default","activeTab","setActiveTab","_useState3","_useState4","entry","setEntry","_useContentEntries","useContentEntries","model","contentModel","canCreate","_useRouter2","history","_useSnackbar","useSnackbar","showSnackbar","cms","useCms","_ref2","useMockRecords","useRecords","addRecordToCache","updateRecordInCache","removeRecordFromCache","_useState5","_useState6","isLoading","setLoading","contentEntryProviderProps","newEntry","contentId","revisionId","decodeURIComponent","entryId","version","result","parseIdentifier","id","useEffect","_useMemo","useMemo","READ_CONTENT","createReadQuery","modelId","_useMemo2","GET_REVISIONS","createRevisionsQuery","variables","revision","loadEntry","useQuery","skip","fetchPolicy","getFetchPolicy","onCompleted","response","_response$content","content","data","error","push","concat","message","getRevisions","loading","refetch","getEntry","_ref3","createEntry","_ref4","options","_objectSpread2","wbyAco_location","folderId","ROOT_FOLDER","skipValidators","addItemToListCache","createEntryRevisionFrom","params","updateEntryRevision","deleteEntry","publishEntryRevision","unpublishEntryRevision","value","refetchContent","revisions","showEmptyView","createElement","Provider","displayName"],"sources":["ContentEntryContext.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useSnackbar, useIsMounted } from \"@webiny/app-admin\";\nimport { useCms, useQuery } from \"~/admin/hooks\";\nimport { ContentEntriesContext } from \"~/admin/views/contentEntries/ContentEntriesContext\";\nimport { useContentEntries } from \"~/admin/views/contentEntries/hooks/useContentEntries\";\nimport { CmsContentEntry, CmsContentEntryRevision } from \"~/types\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport {\n CmsEntriesListRevisionsQueryResponse,\n CmsEntriesListRevisionsQueryVariables,\n CmsEntryGetQueryResponse,\n CmsEntryGetQueryVariables,\n createReadQuery,\n createRevisionsQuery\n} from \"@webiny/app-headless-cms-common\";\nimport { getFetchPolicy } from \"~/utils/getFetchPolicy\";\nimport { useRecords } from \"@webiny/app-aco\";\nimport * as Cms from \"~/admin/contexts/Cms\";\nimport { useMockRecords } from \"./useMockRecords\";\nimport { ROOT_FOLDER } from \"~/admin/constants\";\n\ninterface UpdateListCacheOptions {\n options?: {\n addItemToListCache?: boolean;\n };\n}\n\nexport type GetEntryParams = Omit<Cms.GetEntryParams, \"model\">;\nexport type CreateEntryParams = Omit<Cms.CreateEntryParams, \"model\"> & UpdateListCacheOptions;\nexport type CreateEntryRevisionFromParams = Omit<Cms.CreateEntryRevisionFromParams, \"model\">;\nexport type UpdateEntryRevisionParams = Omit<Cms.UpdateEntryRevisionParams, \"model\">;\nexport type PublishEntryRevisionParams = Omit<Cms.PublishEntryRevisionParams, \"model\">;\nexport type UnpublishEntryRevisionParams = Omit<Cms.UnpublishEntryRevisionParams, \"model\">;\nexport type DeleteEntryParams = Omit<Cms.DeleteEntryParams, \"model\">;\n\nexport interface ContentEntryCrud {\n getEntry: (params: GetEntryParams) => Promise<Cms.GetEntryResponse>;\n createEntry: (params: CreateEntryParams) => Promise<Cms.CreateEntryResponse>;\n createEntryRevisionFrom: (\n params: CreateEntryRevisionFromParams\n ) => Promise<Cms.CreateEntryRevisionFromResponse>;\n updateEntryRevision: (\n params: UpdateEntryRevisionParams\n ) => Promise<Cms.UpdateEntryRevisionResponse>;\n publishEntryRevision: (\n params: PublishEntryRevisionParams\n ) => Promise<Cms.PublishEntryRevisionResponse>;\n unpublishEntryRevision: (\n params: UnpublishEntryRevisionParams\n ) => Promise<Cms.UnpublishEntryRevisionResponse>;\n deleteEntry: (params: DeleteEntryParams) => Promise<Cms.DeleteEntryResponse>;\n}\n\nexport interface ContentEntryContext extends ContentEntriesContext, ContentEntryCrud {\n entry: CmsContentEntry;\n loading: boolean;\n revisions: CmsContentEntryRevision[];\n refetchContent: () => void;\n setActiveTab(index: number): void;\n activeTab: number;\n showEmptyView: boolean;\n}\n\nexport const ContentEntryContext = React.createContext<ContentEntryContext | undefined>(undefined);\n\nexport interface ContentEntryContextProviderProps extends Partial<UseContentEntryProviderProps> {\n /**\n * This prop is used when you need to mount this provider outside the main content entry view, with limited features.\n * Example: Model Editor \"preview\" tab.\n */\n readonly?: boolean;\n children: React.ReactNode;\n currentFolderId?: string;\n}\n\ninterface UseContentEntryProviderProps {\n getContentId: () => string | null;\n isNewEntry: () => boolean;\n}\n\nexport const useContentEntryProviderProps = (): UseContentEntryProviderProps => {\n const { location } = useRouter();\n const query = new URLSearchParams(location.search);\n\n const isNewEntry = (): boolean => {\n return query.get(\"new\") === \"true\";\n };\n\n const getContentId = (): string | null => {\n return query.get(\"id\") || null;\n };\n\n return {\n getContentId,\n isNewEntry\n };\n};\n\nexport const ContentEntryProvider = ({\n children,\n isNewEntry,\n readonly,\n getContentId,\n currentFolderId\n}: ContentEntryContextProviderProps) => {\n const { isMounted } = useIsMounted();\n const [activeTab, setActiveTab] = useState(0);\n const [entry, setEntry] = useState<CmsContentEntry>();\n const { contentModel: model, canCreate } = useContentEntries();\n const { history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const cms = useCms();\n const { addRecordToCache, updateRecordInCache, removeRecordFromCache } = readonly\n ? useMockRecords()\n : useRecords();\n const [isLoading, setLoading] = useState<boolean>(false);\n const contentEntryProviderProps = useContentEntryProviderProps();\n\n const newEntry =\n typeof isNewEntry === \"function\" ? isNewEntry() : contentEntryProviderProps.isNewEntry();\n const contentId =\n typeof getContentId === \"function\"\n ? getContentId()\n : contentEntryProviderProps.getContentId();\n\n const revisionId = contentId ? decodeURIComponent(contentId) : null;\n let entryId: string | null = null;\n let version: number | null = null;\n if (revisionId) {\n const result = parseIdentifier(revisionId);\n entryId = result.id;\n version = result.version;\n }\n\n useEffect(() => {\n if (!revisionId && entry) {\n setEntry(undefined);\n }\n setActiveTab(0);\n }, [revisionId]);\n\n const { READ_CONTENT } = useMemo(() => {\n return {\n READ_CONTENT: createReadQuery(model)\n };\n }, [model.modelId]);\n\n const { GET_REVISIONS } = useMemo(() => {\n return {\n GET_REVISIONS: createRevisionsQuery(model)\n };\n }, [model.modelId]);\n\n let variables: CmsEntryGetQueryVariables | undefined;\n if (version === null && entryId) {\n variables = {\n entryId\n };\n } else {\n variables = {\n revision: revisionId as string\n };\n }\n\n // TODO: refactor to use `getEntry` from useCms()\n const loadEntry = useQuery<CmsEntryGetQueryResponse, CmsEntryGetQueryVariables>(READ_CONTENT, {\n variables,\n skip: !revisionId,\n fetchPolicy: getFetchPolicy(model),\n onCompleted: response => {\n if (!response || !isMounted()) {\n return;\n }\n\n const { data, error } = response.content;\n if (!error) {\n setEntry(data);\n return;\n }\n history.push(`/cms/content-entries/${model.modelId}`);\n showSnackbar(error.message);\n }\n });\n\n const getRevisions = useQuery<\n CmsEntriesListRevisionsQueryResponse,\n CmsEntriesListRevisionsQueryVariables\n >(GET_REVISIONS, {\n variables: {\n id: entryId as string\n },\n skip: !entryId\n });\n\n const loading = isLoading || loadEntry.loading || getRevisions.loading;\n\n useEffect(() => {\n if (getRevisions.loading || !entryId) {\n return;\n }\n getRevisions.refetch({\n id: entryId\n });\n }, [revisionId, getRevisions]);\n\n // CRUD methods\n const getEntry: ContentEntryCrud[\"getEntry\"] = async ({ id }) => {\n return await cms.getEntry({ model, id });\n };\n\n const createEntry: ContentEntryCrud[\"createEntry\"] = async ({ entry, options }) => {\n setLoading(true);\n const response = await cms.createEntry({\n model,\n entry: {\n ...entry,\n wbyAco_location: {\n folderId: currentFolderId || ROOT_FOLDER\n }\n },\n options: { skipValidators: options?.skipValidators }\n });\n setLoading(false);\n if (response.entry && options?.addItemToListCache) {\n addRecordToCache(response.entry);\n }\n\n // The `ContentEntryForm` component reads the `entry` from the context, and we want it to have the latest state.\n // This way, the form also knows whether it's `pristine` or not.\n setEntry(response.entry);\n\n return response;\n };\n\n const createEntryRevisionFrom: ContentEntryCrud[\"createEntryRevisionFrom\"] = async params => {\n setLoading(true);\n const response = await cms.createEntryRevisionFrom({ model, ...params });\n setLoading(false);\n if (response.entry) {\n setEntry(response.entry);\n updateRecordInCache(response.entry);\n }\n return response;\n };\n\n const updateEntryRevision: ContentEntryCrud[\"updateEntryRevision\"] = async params => {\n setLoading(true);\n const response = await cms.updateEntryRevision({ model, ...params });\n setLoading(false);\n if (response.entry) {\n setEntry(response.entry);\n updateRecordInCache(response.entry);\n }\n return response;\n };\n\n const deleteEntry: ContentEntryCrud[\"deleteEntry\"] = async params => {\n const response = await cms.deleteEntry({ model, ...params });\n removeRecordFromCache(params.id);\n return response;\n };\n\n const publishEntryRevision: ContentEntryCrud[\"publishEntryRevision\"] = async params => {\n const response = await cms.publishEntryRevision({ model, ...params });\n if (response.entry) {\n setEntry(response.entry);\n updateRecordInCache(response.entry);\n }\n return response;\n };\n\n const unpublishEntryRevision: ContentEntryCrud[\"unpublishEntryRevision\"] = async params => {\n const response = await cms.unpublishEntryRevision({ model, ...params });\n if (response.entry) {\n setEntry(response.entry);\n updateRecordInCache(response.entry);\n }\n return response;\n };\n\n const value: ContentEntryContext = {\n activeTab,\n canCreate,\n contentModel: model,\n getEntry,\n createEntry,\n createEntryRevisionFrom,\n deleteEntry,\n entry: (entry || {}) as CmsContentEntry,\n loading,\n publishEntryRevision,\n refetchContent: loadEntry.refetch,\n revisions: get(getRevisions, \"data.revisions.data\") || [],\n setActiveTab,\n showEmptyView: !newEntry && !loading && !revisionId,\n unpublishEntryRevision,\n updateEntryRevision\n };\n\n return <ContentEntryContext.Provider value={value}>{children}</ContentEntryContext.Provider>;\n};\n\nContentEntryProvider.displayName = \"ContentEntryProvider\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactRouter","_appAdmin","_hooks","_useContentEntries2","_utils","_appHeadlessCmsCommon","_getFetchPolicy","_appAco","_useMockRecords","_constants","ContentEntryContext","exports","React","createContext","undefined","useContentEntryProviderProps","_useRouter","useRouter","location","query","URLSearchParams","search","isNewEntry","get","getContentId","ContentEntryProvider","_ref","children","readonly","currentFolderId","_useIsMounted","useIsMounted","isMounted","_useState","useState","_useState2","_slicedToArray2","default","activeTab","setActiveTab","_useState3","_useState4","entry","setEntry","_useState5","_useState6","revisions","setRevisions","_useContentEntries","useContentEntries","model","contentModel","canCreate","_useRouter2","history","_useSnackbar","useSnackbar","showSnackbar","cms","useCms","_ref2","useMockRecords","useRecords","addRecordToCache","updateRecordInCache","removeRecordFromCache","_useState7","_useState8","isLoading","setLoading","contentEntryProviderProps","newEntry","contentId","revisionId","decodeURIComponent","entryId","version","result","parseIdentifier","id","useEffect","_useMemo","useMemo","READ_CONTENT","createReadQuery","modelId","variables","revision","loadEntry","useQuery","skip","fetchPolicy","getFetchPolicy","onCompleted","response","_response$content","content","data","error","push","concat","message","loading","listEntryRevisions","then","getEntry","_ref3","createEntry","_ref4","options","_objectSpread2","wbyAco_location","folderId","ROOT_FOLDER","skipValidators","addItemToListCache","createEntryRevisionFrom","params","_toConsumableArray2","updateEntryRevision","updatedRevisionsList","map","rev","deleteEntry","deleteEntryRevision","filter","_updatedRevisionsList","newLatestRevision","publishEntryRevision","unpublishEntryRevision","value","refetchContent","refetch","showEmptyView","createElement","Provider","displayName"],"sources":["ContentEntryContext.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useIsMounted, useSnackbar } from \"@webiny/app-admin\";\nimport { useCms, useQuery } from \"~/admin/hooks\";\nimport { ContentEntriesContext } from \"~/admin/views/contentEntries/ContentEntriesContext\";\nimport { useContentEntries } from \"~/admin/views/contentEntries/hooks/useContentEntries\";\nimport { CmsContentEntry, CmsContentEntryRevision } from \"~/types\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport {\n CmsEntryGetQueryResponse,\n CmsEntryGetQueryVariables,\n createReadQuery\n} from \"@webiny/app-headless-cms-common\";\nimport { getFetchPolicy } from \"~/utils/getFetchPolicy\";\nimport { useRecords } from \"@webiny/app-aco\";\nimport * as Cms from \"~/admin/contexts/Cms\";\nimport { useMockRecords } from \"./useMockRecords\";\nimport { ROOT_FOLDER } from \"~/admin/constants\";\nimport { OperationError } from \"~/admin/contexts/Cms\";\n\ninterface UpdateListCacheOptions {\n options?: {\n addItemToListCache?: boolean;\n };\n}\n\nexport type GetEntryParams = Omit<Cms.GetEntryParams, \"model\">;\nexport type CreateEntryParams = Omit<Cms.CreateEntryParams, \"model\"> & UpdateListCacheOptions;\nexport type CreateEntryRevisionFromParams = Omit<Cms.CreateEntryRevisionFromParams, \"model\">;\nexport type UpdateEntryRevisionParams = Omit<Cms.UpdateEntryRevisionParams, \"model\">;\nexport type PublishEntryRevisionParams = Omit<Cms.PublishEntryRevisionParams, \"model\">;\nexport type UnpublishEntryRevisionParams = Omit<Cms.UnpublishEntryRevisionParams, \"model\">;\nexport type DeleteEntryParams = Omit<Cms.DeleteEntryParams, \"model\">;\nexport type DeleteEntryRevisionParams = DeleteEntryParams;\n\nexport interface DeleteEntryRevisionOperationSuccess {\n newLatestRevision: CmsContentEntryRevision;\n error?: never;\n}\n\nexport type DeleteEntryRevisionResponse = OperationError | DeleteEntryRevisionOperationSuccess;\n\nexport interface ContentEntryCrud {\n getEntry: (params: GetEntryParams) => Promise<Cms.GetEntryResponse>;\n createEntry: (params: CreateEntryParams) => Promise<Cms.CreateEntryResponse>;\n createEntryRevisionFrom: (\n params: CreateEntryRevisionFromParams\n ) => Promise<Cms.CreateEntryRevisionFromResponse>;\n updateEntryRevision: (\n params: UpdateEntryRevisionParams\n ) => Promise<Cms.UpdateEntryRevisionResponse>;\n publishEntryRevision: (\n params: PublishEntryRevisionParams\n ) => Promise<Cms.PublishEntryRevisionResponse>;\n unpublishEntryRevision: (\n params: UnpublishEntryRevisionParams\n ) => Promise<Cms.UnpublishEntryRevisionResponse>;\n deleteEntry: (params: DeleteEntryParams) => Promise<Cms.DeleteEntryResponse>;\n deleteEntryRevision: (\n params: DeleteEntryRevisionParams\n ) => Promise<DeleteEntryRevisionResponse>;\n}\n\nexport interface ContentEntryContext extends ContentEntriesContext, ContentEntryCrud {\n entry: CmsContentEntry;\n loading: boolean;\n revisions: CmsContentEntryRevision[];\n refetchContent: () => void;\n\n setActiveTab(index: number): void;\n\n activeTab: number;\n showEmptyView: boolean;\n}\n\nexport const ContentEntryContext = React.createContext<ContentEntryContext | undefined>(undefined);\n\nexport interface ContentEntryContextProviderProps extends Partial<UseContentEntryProviderProps> {\n /**\n * This prop is used when you need to mount this provider outside the main content entry view, with limited features.\n * Example: Model Editor \"preview\" tab.\n */\n readonly?: boolean;\n children: React.ReactNode;\n currentFolderId?: string;\n}\n\ninterface UseContentEntryProviderProps {\n getContentId: () => string | null;\n isNewEntry: () => boolean;\n}\n\nexport const useContentEntryProviderProps = (): UseContentEntryProviderProps => {\n const { location } = useRouter();\n const query = new URLSearchParams(location.search);\n\n const isNewEntry = (): boolean => {\n return query.get(\"new\") === \"true\";\n };\n\n const getContentId = (): string | null => {\n return query.get(\"id\") || null;\n };\n\n return {\n getContentId,\n isNewEntry\n };\n};\n\nexport const ContentEntryProvider = ({\n children,\n isNewEntry,\n readonly,\n getContentId,\n currentFolderId\n}: ContentEntryContextProviderProps) => {\n const { isMounted } = useIsMounted();\n const [activeTab, setActiveTab] = useState(0);\n const [entry, setEntry] = useState<CmsContentEntry>();\n const [revisions, setRevisions] = useState<CmsContentEntryRevision[]>([]);\n const { contentModel: model, canCreate } = useContentEntries();\n const { history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const cms = useCms();\n const { addRecordToCache, updateRecordInCache, removeRecordFromCache } = readonly\n ? useMockRecords()\n : useRecords();\n const [isLoading, setLoading] = useState<boolean>(false);\n const contentEntryProviderProps = useContentEntryProviderProps();\n\n const newEntry =\n typeof isNewEntry === \"function\" ? isNewEntry() : contentEntryProviderProps.isNewEntry();\n const contentId =\n typeof getContentId === \"function\"\n ? getContentId()\n : contentEntryProviderProps.getContentId();\n\n const revisionId = contentId ? decodeURIComponent(contentId) : null;\n let entryId: string | null = null;\n let version: number | null = null;\n if (revisionId) {\n const result = parseIdentifier(revisionId);\n entryId = result.id;\n version = result.version;\n }\n\n useEffect(() => {\n if (!revisionId && entry) {\n setEntry(undefined);\n }\n setActiveTab(0);\n }, [revisionId]);\n\n const { READ_CONTENT } = useMemo(() => {\n return {\n READ_CONTENT: createReadQuery(model)\n };\n }, [model.modelId]);\n\n let variables: CmsEntryGetQueryVariables | undefined;\n if (version === null && entryId) {\n variables = {\n entryId\n };\n } else {\n variables = {\n revision: revisionId as string\n };\n }\n\n // TODO: refactor to use `getEntry` from useCms()\n const loadEntry = useQuery<CmsEntryGetQueryResponse, CmsEntryGetQueryVariables>(READ_CONTENT, {\n variables,\n skip: !revisionId,\n fetchPolicy: getFetchPolicy(model),\n onCompleted: response => {\n if (!response || !isMounted()) {\n return;\n }\n\n const { data, error } = response.content;\n if (!error) {\n setEntry(data);\n return;\n }\n history.push(`/cms/content-entries/${model.modelId}`);\n showSnackbar(error.message);\n }\n });\n\n const loading = isLoading || loadEntry.loading;\n\n useEffect(() => {\n if (!entryId) {\n return;\n }\n\n cms.listEntryRevisions({\n model,\n id: entryId\n }).then(response => {\n if (response.error) {\n return;\n }\n setRevisions(response.revisions);\n });\n }, [entryId]);\n\n // CRUD methods\n const getEntry: ContentEntryCrud[\"getEntry\"] = async ({ id }) => {\n return await cms.getEntry({ model, id });\n };\n\n const createEntry: ContentEntryCrud[\"createEntry\"] = async ({ entry, options }) => {\n setLoading(true);\n const response = await cms.createEntry({\n model,\n entry: {\n ...entry,\n wbyAco_location: {\n folderId: currentFolderId || ROOT_FOLDER\n }\n },\n options: { skipValidators: options?.skipValidators }\n });\n setLoading(false);\n if (response.entry && options?.addItemToListCache) {\n addRecordToCache(response.entry);\n }\n\n // The `ContentEntryForm` component reads the `entry` from the context, and we want it to have the latest state.\n // This way, the form also knows whether it's `pristine` or not.\n setEntry(response.entry);\n\n return response;\n };\n\n const createEntryRevisionFrom: ContentEntryCrud[\"createEntryRevisionFrom\"] = async params => {\n setLoading(true);\n const response = await cms.createEntryRevisionFrom({ model, ...params });\n setLoading(false);\n if (response.entry) {\n setEntry(response.entry);\n setRevisions([response.entry, ...revisions]);\n updateRecordInCache(response.entry);\n }\n return response;\n };\n\n const updateEntryRevision: ContentEntryCrud[\"updateEntryRevision\"] = async params => {\n setLoading(true);\n const response = await cms.updateEntryRevision({ model, ...params });\n setLoading(false);\n if (response.entry) {\n setEntry(response.entry);\n updateRecordInCache(response.entry);\n\n const updatedRevisionsList = revisions.map(rev => {\n if (rev.id === response.entry.id) {\n return response.entry;\n }\n return rev;\n });\n\n setRevisions(updatedRevisionsList);\n }\n return response;\n };\n\n const deleteEntry: ContentEntryCrud[\"deleteEntry\"] = async params => {\n const response = await cms.deleteEntry({ model, ...params });\n removeRecordFromCache(params.id);\n return response;\n };\n\n const deleteEntryRevision: ContentEntryCrud[\"deleteEntryRevision\"] = async params => {\n const response = await cms.deleteEntry({ model, ...params });\n if (typeof response === \"object\" && response.error) {\n return response;\n }\n\n const updatedRevisionsList = revisions.filter(rev => rev.id !== params.id);\n setRevisions(updatedRevisionsList);\n\n const [newLatestRevision] = updatedRevisionsList;\n\n if (newLatestRevision) {\n updateRecordInCache(newLatestRevision);\n } else {\n removeRecordFromCache(params.id);\n }\n\n return { newLatestRevision };\n };\n\n const publishEntryRevision: ContentEntryCrud[\"publishEntryRevision\"] = async params => {\n const response = await cms.publishEntryRevision({ model, ...params });\n if (response.entry) {\n setEntry(response.entry);\n updateRecordInCache(response.entry);\n }\n return response;\n };\n\n const unpublishEntryRevision: ContentEntryCrud[\"unpublishEntryRevision\"] = async params => {\n const response = await cms.unpublishEntryRevision({ model, ...params });\n if (response.entry) {\n setEntry(response.entry);\n updateRecordInCache(response.entry);\n }\n return response;\n };\n\n const value: ContentEntryContext = {\n activeTab,\n canCreate,\n contentModel: model,\n getEntry,\n createEntry,\n createEntryRevisionFrom,\n deleteEntry,\n deleteEntryRevision,\n entry: (entry || {}) as CmsContentEntry,\n loading,\n publishEntryRevision,\n refetchContent: loadEntry.refetch,\n revisions,\n setActiveTab,\n showEmptyView: !newEntry && !loading && !revisionId,\n unpublishEntryRevision,\n updateEntryRevision\n };\n\n return <ContentEntryContext.Provider value={value}>{children}</ContentEntryContext.Provider>;\n};\n\nContentEntryProvider.displayName = \"ContentEntryProvider\";\n"],"mappings":"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","ignoreList":[]}
@@ -17,7 +17,7 @@ var t = _i18n.i18n.ns("app-headless-cms/admin/plugins/content-details/content-re
17
17
  var PublishEntryRevisionListItemComponent = function PublishEntryRevisionListItemComponent() {
18
18
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
19
19
  icon: /*#__PURE__*/_react.default.createElement(_publish.ReactComponent, null)
20
- })), t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Publish"]))));
20
+ })), t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Publish revision"]))));
21
21
  };
22
22
  var PublishEntryRevisionListItem = exports.PublishEntryRevisionListItem = (0, _reactComposition.makeDecoratable)("PublishEntryRevisionListItem", PublishEntryRevisionListItemComponent);
23
23
 
@@ -1 +1 @@
1
- {"version":3,"names":["_reactComposition","require","_List","_Icon","_publish","_react","_interopRequireDefault","_i18n","_templateObject","t","i18n","ns","PublishEntryRevisionListItemComponent","default","createElement","Fragment","ListItemGraphic","Icon","icon","ReactComponent","_taggedTemplateLiteral2","PublishEntryRevisionListItem","exports","makeDecoratable"],"sources":["PublishEntryRevisionListItem.tsx"],"sourcesContent":["import { makeDecoratable } from \"@webiny/react-composition\";\nimport { ListItemGraphic } from \"@webiny/ui/List\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { ReactComponent as PublishIcon } from \"~/admin/icons/publish.svg\";\nimport React from \"react\";\nimport { i18n } from \"@webiny/app/i18n\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/content-details/content-revisions\");\n\nconst PublishEntryRevisionListItemComponent = () => {\n return (\n <>\n <ListItemGraphic>\n <Icon icon={<PublishIcon />} />\n </ListItemGraphic>\n {t`Publish`}\n </>\n );\n};\n\nexport const PublishEntryRevisionListItem = makeDecoratable(\n \"PublishEntryRevisionListItem\",\n PublishEntryRevisionListItemComponent\n);\n"],"mappings":";;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AAAwC,IAAAO,eAAA;AAExC,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,kEAAkE,CAAC;AAErF,IAAMC,qCAAqC,GAAG,SAAxCA,qCAAqCA,CAAA,EAAS;EAChD,oBACIP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAAAT,MAAA,CAAAQ,OAAA,CAAAE,QAAA,qBACIV,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACZ,KAAA,CAAAc,eAAe,qBACZX,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACX,KAAA,CAAAc,IAAI;IAACC,IAAI,eAAEb,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACV,QAAA,CAAAe,cAAW,MAAE;EAAE,CAAE,CACjB,CAAC,EACjBV,CAAC,CAAAD,eAAA,KAAAA,eAAA,OAAAY,uBAAA,CAAAP,OAAA,gBACJ,CAAC;AAEX,CAAC;AAEM,IAAMQ,4BAA4B,GAAAC,OAAA,CAAAD,4BAAA,GAAG,IAAAE,iCAAe,EACvD,8BAA8B,EAC9BX,qCACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactComposition","require","_List","_Icon","_publish","_react","_interopRequireDefault","_i18n","_templateObject","t","i18n","ns","PublishEntryRevisionListItemComponent","default","createElement","Fragment","ListItemGraphic","Icon","icon","ReactComponent","_taggedTemplateLiteral2","PublishEntryRevisionListItem","exports","makeDecoratable"],"sources":["PublishEntryRevisionListItem.tsx"],"sourcesContent":["import { makeDecoratable } from \"@webiny/react-composition\";\nimport { ListItemGraphic } from \"@webiny/ui/List\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { ReactComponent as PublishIcon } from \"~/admin/icons/publish.svg\";\nimport React from \"react\";\nimport { i18n } from \"@webiny/app/i18n\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/content-details/content-revisions\");\n\nconst PublishEntryRevisionListItemComponent = () => {\n return (\n <>\n <ListItemGraphic>\n <Icon icon={<PublishIcon />} />\n </ListItemGraphic>\n {t`Publish revision`}\n </>\n );\n};\n\nexport const PublishEntryRevisionListItem = makeDecoratable(\n \"PublishEntryRevisionListItem\",\n PublishEntryRevisionListItemComponent\n);\n"],"mappings":";;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AAAwC,IAAAO,eAAA;AAExC,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,kEAAkE,CAAC;AAErF,IAAMC,qCAAqC,GAAG,SAAxCA,qCAAqCA,CAAA,EAAS;EAChD,oBACIP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAAAT,MAAA,CAAAQ,OAAA,CAAAE,QAAA,qBACIV,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACZ,KAAA,CAAAc,eAAe,qBACZX,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACX,KAAA,CAAAc,IAAI;IAACC,IAAI,eAAEb,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACV,QAAA,CAAAe,cAAW,MAAE;EAAE,CAAE,CACjB,CAAC,EACjBV,CAAC,CAAAD,eAAA,KAAAA,eAAA,OAAAY,uBAAA,CAAAP,OAAA,yBACJ,CAAC;AAEX,CAAC;AAEM,IAAMQ,4BAA4B,GAAAC,OAAA,CAAAD,4BAAA,GAAG,IAAAE,iCAAe,EACvD,8BAA8B,EAC9BX,qCACJ,CAAC","ignoreList":[]}
@@ -33,7 +33,7 @@ var primaryColor = (0, _emotion.css)({
33
33
  color: "var(--mdc-theme-primary)"
34
34
  });
35
35
  var revisionsMenu = (0, _emotion.css)({
36
- width: 250,
36
+ width: 300,
37
37
  right: -105,
38
38
  left: "auto !important"
39
39
  });
@@ -94,7 +94,7 @@ var RevisionListItem = function RevisionListItem(_ref) {
94
94
  // Added this because revisionCreatedBy can be returned as null from GraphQL.
95
95
  author: revision.revisionCreatedBy?.displayName,
96
96
  time: /*#__PURE__*/_react.default.createElement(_DateTime.Date, {
97
- date: revision.revisionCreatedOn
97
+ date: revision.revisionSavedOn
98
98
  }),
99
99
  version: revision.meta.version
100
100
  }))), /*#__PURE__*/_react.default.createElement(_List.ListItemMeta, null, /*#__PURE__*/_react.default.createElement(_Menu.Menu, {
@@ -110,14 +110,14 @@ var RevisionListItem = function RevisionListItem(_ref) {
110
110
  "data-testid": "cms.revision.create-revision"
111
111
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
112
112
  icon: /*#__PURE__*/_react.default.createElement(_add.ReactComponent, null)
113
- })), t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["New from current"])))), !revision.meta.locked && canEdit(entry, "cms.contentEntry") && /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
113
+ })), t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["New revision from current"])))), !revision.meta.locked && canEdit(entry, "cms.contentEntry") && /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
114
114
  onClick: function onClick() {
115
115
  editRevision();
116
116
  setActiveTab(0);
117
117
  }
118
118
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
119
119
  icon: /*#__PURE__*/_react.default.createElement(_edit.ReactComponent, null)
120
- })), t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Edit"])))), revision.meta.status !== "published" && canPublish("cms.contentEntry") && /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
120
+ })), t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Edit revision"])))), revision.meta.status !== "published" && canPublish("cms.contentEntry") && /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
121
121
  onClick: function onClick() {
122
122
  return publishRevision();
123
123
  }
@@ -128,13 +128,13 @@ var RevisionListItem = function RevisionListItem(_ref) {
128
128
  "data-testid": "cms.revision.unpublish"
129
129
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
130
130
  icon: /*#__PURE__*/_react.default.createElement(_unpublish.ReactComponent, null)
131
- })), t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Unpublish"])))), !revision.meta.locked && canDelete(entry, "cms.contentEntry") && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Menu.MenuDivider, null), /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
131
+ })), t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Unpublish revision"])))), !revision.meta.locked && canDelete(entry, "cms.contentEntry") && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Menu.MenuDivider, null), /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
132
132
  onClick: function onClick() {
133
133
  return deleteRevision();
134
134
  }
135
135
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
136
136
  icon: /*#__PURE__*/_react.default.createElement(_delete.ReactComponent, null)
137
- })), t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)([" Delete"]))))))));
137
+ })), t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)([" Delete revision"]))))))));
138
138
  };
139
139
  var _default = exports.default = RevisionListItem;
140
140
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_DateTime","_List","_Button","_Icon","_Menu","_Tooltip","_more_vert","_lock","_beenhere","_gesture","_add","_edit","_unpublish","_delete","_i18n","_useRevision2","_usePermission2","_useContentEntry2","_PublishEntryRevisionListItem","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","t","i18n","ns","primaryColor","css","color","revisionsMenu","width","right","left","getIcon","rev","meta","locked","status","icon","default","createElement","Icon","ReactComponent","text","className","RevisionListItem","_ref","revision","_useRevision","useRevision","createRevision","deleteRevision","publishRevision","unpublishRevision","editRevision","_useContentEntry","useContentEntry","entry","setActiveTab","_usePermission","usePermission","canEdit","canDelete","canPublish","canUnpublish","_getIcon","tooltipText","ListItem","ListItemGraphic","Tooltip","content","placement","ListItemText","ListItemTextPrimary","title","_taggedTemplateLiteral2","ListItemTextSecondary","author","revisionCreatedBy","displayName","time","Date","date","revisionCreatedOn","version","ListItemMeta","Menu","handle","IconButton","MenuItem","onClick","PublishEntryRevisionListItem","MenuDivider","_default","exports"],"sources":["RevisionListItem.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Date } from \"@webiny/ui/DateTime\";\nimport {\n ListItem,\n ListItemText,\n ListItemTextPrimary,\n ListItemTextSecondary,\n ListItemGraphic,\n ListItemMeta\n} from \"@webiny/ui/List\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { MenuItem, Menu, MenuDivider } from \"@webiny/ui/Menu\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as MoreVerticalIcon } from \"~/admin/icons/more_vert.svg\";\nimport { ReactComponent as LockIcon } from \"~/admin/icons/lock.svg\";\nimport { ReactComponent as BeenHereIcon } from \"~/admin/icons/beenhere.svg\";\nimport { ReactComponent as GestureIcon } from \"~/admin/icons/gesture.svg\";\nimport { ReactComponent as AddIcon } from \"~/admin/icons/add.svg\";\nimport { ReactComponent as EditIcon } from \"~/admin/icons/edit.svg\";\nimport { ReactComponent as UnpublishIcon } from \"~/admin/icons/unpublish.svg\";\nimport { ReactComponent as DeleteIcon } from \"~/admin/icons/delete.svg\";\nimport { CmsContentEntryRevision } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useRevision } from \"./useRevision\";\nimport { usePermission } from \"~/admin/hooks/usePermission\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { PublishEntryRevisionListItem } from \"./PublishEntryRevisionListItem\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/content-details/content-revisions\");\n\nconst primaryColor = css({ color: \"var(--mdc-theme-primary)\" });\n\nconst revisionsMenu = css({\n width: 250,\n right: -105,\n left: \"auto !important\"\n});\n\nconst getIcon = (rev: CmsContentEntryRevision) => {\n switch (true) {\n case rev.meta.locked && rev.meta.status !== \"published\":\n return {\n icon: <Icon icon={<LockIcon />} data-testid={\"cms.revision.status.locked\"} />,\n text: \"This revision is locked (it has already been published)\"\n };\n case rev.meta.status === \"published\":\n return {\n icon: (\n <Icon\n icon={<BeenHereIcon />}\n className={primaryColor}\n data-testid={\"cms.revision.status.published\"}\n />\n ),\n text: \"This revision is currently published!\"\n };\n default:\n return {\n icon: <Icon icon={<GestureIcon />} data-testid={\"cms.revision.status.draft\"} />,\n text: \"This is a draft\"\n };\n }\n};\n\ninterface RevisionListItemProps {\n revision: CmsContentEntryRevision;\n}\n\nconst RevisionListItem = ({ revision }: RevisionListItemProps) => {\n const { createRevision, deleteRevision, publishRevision, unpublishRevision, editRevision } =\n useRevision({\n revision\n });\n\n const { entry, setActiveTab } = useContentEntry();\n const { canEdit, canDelete, canPublish, canUnpublish } = usePermission();\n const { icon, text: tooltipText } = getIcon(revision);\n\n return (\n <ListItem>\n <ListItemGraphic>\n <Tooltip content={tooltipText} placement={\"bottom\"}>\n {icon}\n </Tooltip>\n </ListItemGraphic>\n <ListItemText>\n <ListItemTextPrimary>{revision.meta.title || t`N/A`}</ListItemTextPrimary>\n <ListItemTextSecondary>\n {t`Last modified by {author} on {time} (#{version})`({\n // Added this because revisionCreatedBy can be returned as null from GraphQL.\n author: revision.revisionCreatedBy?.displayName,\n time: <Date date={revision.revisionCreatedOn} />,\n version: revision.meta.version\n })}\n </ListItemTextSecondary>\n </ListItemText>\n <ListItemMeta>\n <Menu\n handle={<IconButton icon={<MoreVerticalIcon />} />}\n className={revisionsMenu}\n data-testid={\"cms.content-form.revisions.more-options\"}\n >\n {canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => createRevision()}\n data-testid={\"cms.revision.create-revision\"}\n >\n <ListItemGraphic>\n <Icon icon={<AddIcon />} />\n </ListItemGraphic>\n {t`New from current`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => {\n editRevision();\n setActiveTab(0);\n }}\n >\n <ListItemGraphic>\n <Icon icon={<EditIcon />} />\n </ListItemGraphic>\n {t`Edit`}\n </MenuItem>\n )}\n\n {revision.meta.status !== \"published\" && canPublish(\"cms.contentEntry\") && (\n <MenuItem onClick={() => publishRevision()}>\n <PublishEntryRevisionListItem />\n </MenuItem>\n )}\n\n {revision.meta.status === \"published\" && canUnpublish(\"cms.contentEntry\") && (\n <MenuItem\n onClick={() => unpublishRevision()}\n data-testid={\"cms.revision.unpublish\"}\n >\n <ListItemGraphic>\n <Icon icon={<UnpublishIcon />} />\n </ListItemGraphic>\n {t`Unpublish`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canDelete(entry, \"cms.contentEntry\") && (\n <div>\n <MenuDivider />\n <MenuItem onClick={() => deleteRevision()}>\n <ListItemGraphic>\n <Icon icon={<DeleteIcon />} />\n </ListItemGraphic>\n {t` Delete`}\n </MenuItem>\n </div>\n )}\n </Menu>\n </ListItemMeta>\n </ListItem>\n );\n};\n\nexport default RevisionListItem;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_DateTime","_List","_Button","_Icon","_Menu","_Tooltip","_more_vert","_lock","_beenhere","_gesture","_add","_edit","_unpublish","_delete","_i18n","_useRevision2","_usePermission2","_useContentEntry2","_PublishEntryRevisionListItem","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","t","i18n","ns","primaryColor","css","color","revisionsMenu","width","right","left","getIcon","rev","meta","locked","status","icon","default","createElement","Icon","ReactComponent","text","className","RevisionListItem","_ref","revision","_useRevision","useRevision","createRevision","deleteRevision","publishRevision","unpublishRevision","editRevision","_useContentEntry","useContentEntry","entry","setActiveTab","_usePermission","usePermission","canEdit","canDelete","canPublish","canUnpublish","_getIcon","tooltipText","ListItem","ListItemGraphic","Tooltip","content","placement","ListItemText","ListItemTextPrimary","title","_taggedTemplateLiteral2","ListItemTextSecondary","author","revisionCreatedBy","displayName","time","Date","date","revisionSavedOn","version","ListItemMeta","Menu","handle","IconButton","MenuItem","onClick","PublishEntryRevisionListItem","MenuDivider","_default","exports"],"sources":["RevisionListItem.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Date } from \"@webiny/ui/DateTime\";\nimport {\n ListItem,\n ListItemText,\n ListItemTextPrimary,\n ListItemTextSecondary,\n ListItemGraphic,\n ListItemMeta\n} from \"@webiny/ui/List\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { MenuItem, Menu, MenuDivider } from \"@webiny/ui/Menu\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as MoreVerticalIcon } from \"~/admin/icons/more_vert.svg\";\nimport { ReactComponent as LockIcon } from \"~/admin/icons/lock.svg\";\nimport { ReactComponent as BeenHereIcon } from \"~/admin/icons/beenhere.svg\";\nimport { ReactComponent as GestureIcon } from \"~/admin/icons/gesture.svg\";\nimport { ReactComponent as AddIcon } from \"~/admin/icons/add.svg\";\nimport { ReactComponent as EditIcon } from \"~/admin/icons/edit.svg\";\nimport { ReactComponent as UnpublishIcon } from \"~/admin/icons/unpublish.svg\";\nimport { ReactComponent as DeleteIcon } from \"~/admin/icons/delete.svg\";\nimport { CmsContentEntryRevision } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useRevision } from \"./useRevision\";\nimport { usePermission } from \"~/admin/hooks/usePermission\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { PublishEntryRevisionListItem } from \"./PublishEntryRevisionListItem\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/content-details/content-revisions\");\n\nconst primaryColor = css({ color: \"var(--mdc-theme-primary)\" });\n\nconst revisionsMenu = css({\n width: 300,\n right: -105,\n left: \"auto !important\"\n});\n\nconst getIcon = (rev: CmsContentEntryRevision) => {\n switch (true) {\n case rev.meta.locked && rev.meta.status !== \"published\":\n return {\n icon: <Icon icon={<LockIcon />} data-testid={\"cms.revision.status.locked\"} />,\n text: \"This revision is locked (it has already been published)\"\n };\n case rev.meta.status === \"published\":\n return {\n icon: (\n <Icon\n icon={<BeenHereIcon />}\n className={primaryColor}\n data-testid={\"cms.revision.status.published\"}\n />\n ),\n text: \"This revision is currently published!\"\n };\n default:\n return {\n icon: <Icon icon={<GestureIcon />} data-testid={\"cms.revision.status.draft\"} />,\n text: \"This is a draft\"\n };\n }\n};\n\ninterface RevisionListItemProps {\n revision: CmsContentEntryRevision;\n}\n\nconst RevisionListItem = ({ revision }: RevisionListItemProps) => {\n const { createRevision, deleteRevision, publishRevision, unpublishRevision, editRevision } =\n useRevision({\n revision\n });\n\n const { entry, setActiveTab } = useContentEntry();\n const { canEdit, canDelete, canPublish, canUnpublish } = usePermission();\n const { icon, text: tooltipText } = getIcon(revision);\n\n return (\n <ListItem>\n <ListItemGraphic>\n <Tooltip content={tooltipText} placement={\"bottom\"}>\n {icon}\n </Tooltip>\n </ListItemGraphic>\n <ListItemText>\n <ListItemTextPrimary>{revision.meta.title || t`N/A`}</ListItemTextPrimary>\n <ListItemTextSecondary>\n {t`Last modified by {author} on {time} (#{version})`({\n // Added this because revisionCreatedBy can be returned as null from GraphQL.\n author: revision.revisionCreatedBy?.displayName,\n time: <Date date={revision.revisionSavedOn} />,\n version: revision.meta.version\n })}\n </ListItemTextSecondary>\n </ListItemText>\n <ListItemMeta>\n <Menu\n handle={<IconButton icon={<MoreVerticalIcon />} />}\n className={revisionsMenu}\n data-testid={\"cms.content-form.revisions.more-options\"}\n >\n {canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => createRevision()}\n data-testid={\"cms.revision.create-revision\"}\n >\n <ListItemGraphic>\n <Icon icon={<AddIcon />} />\n </ListItemGraphic>\n {t`New revision from current`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => {\n editRevision();\n setActiveTab(0);\n }}\n >\n <ListItemGraphic>\n <Icon icon={<EditIcon />} />\n </ListItemGraphic>\n {t`Edit revision`}\n </MenuItem>\n )}\n\n {revision.meta.status !== \"published\" && canPublish(\"cms.contentEntry\") && (\n <MenuItem onClick={() => publishRevision()}>\n <PublishEntryRevisionListItem />\n </MenuItem>\n )}\n\n {revision.meta.status === \"published\" && canUnpublish(\"cms.contentEntry\") && (\n <MenuItem\n onClick={() => unpublishRevision()}\n data-testid={\"cms.revision.unpublish\"}\n >\n <ListItemGraphic>\n <Icon icon={<UnpublishIcon />} />\n </ListItemGraphic>\n {t`Unpublish revision`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canDelete(entry, \"cms.contentEntry\") && (\n <div>\n <MenuDivider />\n <MenuItem onClick={() => deleteRevision()}>\n <ListItemGraphic>\n <Icon icon={<DeleteIcon />} />\n </ListItemGraphic>\n {t` Delete revision`}\n </MenuItem>\n </div>\n )}\n </Menu>\n </ListItemMeta>\n </ListItem>\n );\n};\n\nexport default RevisionListItem;\n"],"mappings":"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","ignoreList":[]}