@webiny/app-headless-cms 5.40.5 → 5.40.6-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 (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 +69 -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
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _SingletonHeader = require("./SingletonHeader");
7
+ Object.keys(_SingletonHeader).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _SingletonHeader[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _SingletonHeader[key];
14
+ }
15
+ });
16
+ });
17
+
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_SingletonHeader","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["index.tsx"],"sourcesContent":["export * from \"./SingletonHeader\";\n"],"mappings":";;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,gBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,gBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,gBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import { CmsContentEntryRevision } from "@webiny/app-headless-cms-common/types";
3
+ interface RevisionDeletedSnackbarMessageProps {
4
+ deletedRevision: CmsContentEntryRevision;
5
+ newLatestRevision?: CmsContentEntryRevision;
6
+ }
7
+ export declare const EntryRevisionDeletedSnackbarMessage: ({ deletedRevision, newLatestRevision }: RevisionDeletedSnackbarMessageProps) => React.JSX.Element;
8
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.EntryRevisionDeletedSnackbarMessage = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var EntryRevisionDeletedSnackbarMessage = exports.EntryRevisionDeletedSnackbarMessage = function EntryRevisionDeletedSnackbarMessage(_ref) {
10
+ var deletedRevision = _ref.deletedRevision,
11
+ newLatestRevision = _ref.newLatestRevision;
12
+ if (newLatestRevision) {
13
+ return /*#__PURE__*/_react.default.createElement("span", null, "Successfully deleted revision ", /*#__PURE__*/_react.default.createElement("strong", null, "#", deletedRevision.meta.version), ". Redirecting to revision ", /*#__PURE__*/_react.default.createElement("strong", null, "#", newLatestRevision.meta.version), "...");
14
+ }
15
+ return /*#__PURE__*/_react.default.createElement("span", null, "Successfully deleted last revision ", /*#__PURE__*/_react.default.createElement("strong", null, "#", deletedRevision.meta.version), ". Redirecting to list of entries...");
16
+ };
17
+
18
+ //# sourceMappingURL=EntryRevisionDeletedSnackbarMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","EntryRevisionDeletedSnackbarMessage","exports","_ref","deletedRevision","newLatestRevision","default","createElement","meta","version"],"sources":["EntryRevisionDeletedSnackbarMessage.tsx"],"sourcesContent":["import React from \"react\";\nimport { CmsContentEntryRevision } from \"@webiny/app-headless-cms-common/types\";\n\ninterface RevisionDeletedSnackbarMessageProps {\n deletedRevision: CmsContentEntryRevision;\n newLatestRevision?: CmsContentEntryRevision;\n}\n\nexport const EntryRevisionDeletedSnackbarMessage = ({\n deletedRevision,\n newLatestRevision\n}: RevisionDeletedSnackbarMessageProps) => {\n if (newLatestRevision) {\n return (\n <span>\n Successfully deleted revision <strong>#{deletedRevision.meta.version}</strong>.\n Redirecting to revision <strong>#{newLatestRevision.meta.version}</strong>...\n </span>\n );\n }\n\n return (\n <span>\n Successfully deleted last revision <strong>#{deletedRevision.meta.version}</strong>.\n Redirecting to list of entries...\n </span>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAQO,IAAMC,mCAAmC,GAAAC,OAAA,CAAAD,mCAAA,GAAG,SAAtCA,mCAAmCA,CAAAE,IAAA,EAGL;EAAA,IAFvCC,eAAe,GAAAD,IAAA,CAAfC,eAAe;IACfC,iBAAiB,GAAAF,IAAA,CAAjBE,iBAAiB;EAEjB,IAAIA,iBAAiB,EAAE;IACnB,oBACIP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,eAAM,gCAC4B,eAAAT,MAAA,CAAAQ,OAAA,CAAAC,aAAA,iBAAQ,GAAC,EAACH,eAAe,CAACI,IAAI,CAACC,OAAgB,CAAC,8BACtD,eAAAX,MAAA,CAAAQ,OAAA,CAAAC,aAAA,iBAAQ,GAAC,EAACF,iBAAiB,CAACG,IAAI,CAACC,OAAgB,CAAC,OACxE,CAAC;EAEf;EAEA,oBACIX,MAAA,CAAAQ,OAAA,CAAAC,aAAA,eAAM,qCACiC,eAAAT,MAAA,CAAAQ,OAAA,CAAAC,aAAA,iBAAQ,GAAC,EAACH,eAAe,CAACI,IAAI,CAACC,OAAgB,CAAC,uCAEjF,CAAC;AAEf,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const ShowConfirmationOnDeleteRevision: () => React.JSX.Element;
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.ShowConfirmationOnDeleteRevision = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
+ var _base = _interopRequireDefault(require("@emotion/styled/base"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _form = require("@webiny/form");
13
+ var _appAdmin = require("@webiny/app-admin");
14
+ var _hooks = require("../../views/contentEntries/hooks");
15
+ var _Progress = require("@webiny/ui/Progress");
16
+ var _EntryRevisionDeletedSnackbarMessage = require("./ShowConfirmationOnDeleteRevision/EntryRevisionDeletedSnackbarMessage");
17
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
18
+ var Title = /*#__PURE__*/(0, _base.default)("span", process.env.NODE_ENV === "production" ? {
19
+ target: "eo9to760"
20
+ } : {
21
+ target: "eo9to760",
22
+ label: "Title"
23
+ })(process.env.NODE_ENV === "production" ? {
24
+ name: "1efi8gv",
25
+ styles: "font-weight:bold"
26
+ } : {
27
+ name: "1efi8gv",
28
+ styles: "font-weight:bold",
29
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNob3dDb25maXJtYXRpb25PbkRlbGV0ZVJldmlzaW9uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjeUIiLCJmaWxlIjoiU2hvd0NvbmZpcm1hdGlvbk9uRGVsZXRlUmV2aXNpb24udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyB1c2VCaW5kIH0gZnJvbSBcIkB3ZWJpbnkvZm9ybVwiO1xuaW1wb3J0IHsgdXNlRGlhbG9ncywgdXNlU25hY2tiYXIgfSBmcm9tIFwiQHdlYmlueS9hcHAtYWRtaW5cIjtcbmltcG9ydCB7IHVzZUNvbnRlbnRFbnRyeSB9IGZyb20gXCJ+L2FkbWluL3ZpZXdzL2NvbnRlbnRFbnRyaWVzL2hvb2tzXCI7XG5pbXBvcnQgeyBDaXJjdWxhclByb2dyZXNzIH0gZnJvbSBcIkB3ZWJpbnkvdWkvUHJvZ3Jlc3NcIjtcbmltcG9ydCB7IEVudHJ5UmV2aXNpb25EZWxldGVkU25hY2tiYXJNZXNzYWdlIH0gZnJvbSBcIi4vU2hvd0NvbmZpcm1hdGlvbk9uRGVsZXRlUmV2aXNpb24vRW50cnlSZXZpc2lvbkRlbGV0ZWRTbmFja2Jhck1lc3NhZ2VcIjtcbmltcG9ydCB7XG4gICAgRGVsZXRlRW50cnlSZXZpc2lvblBhcmFtcyxcbiAgICBEZWxldGVFbnRyeVJldmlzaW9uUmVzcG9uc2Vcbn0gZnJvbSBcIn4vYWRtaW4vdmlld3MvY29udGVudEVudHJpZXMvQ29udGVudEVudHJ5L0NvbnRlbnRFbnRyeUNvbnRleHRcIjtcblxudHlwZSBHZXRFbnRyeSA9IFJldHVyblR5cGU8dHlwZW9mIHVzZUNvbnRlbnRFbnRyeT5bXCJnZXRFbnRyeVwiXTtcblxuY29uc3QgVGl0bGUgPSBzdHlsZWQuc3BhbmBcbiAgICBmb250LXdlaWdodDogYm9sZDtcbmA7XG5cbmNvbnN0IEVudHJ5TWVzc2FnZSA9ICh7IGlkLCBnZXRFbnRyeVJldmlzaW9uIH06IHsgaWQ6IHN0cmluZzsgZ2V0RW50cnlSZXZpc2lvbjogR2V0RW50cnkgfSkgPT4ge1xuICAgIGNvbnN0IGVudHJ5UmV2aXNpb25CaW5kID0gdXNlQmluZCh7XG4gICAgICAgIG5hbWU6IFwiZW50cnlSZXZpc2lvblwiXG4gICAgfSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBnZXRFbnRyeVJldmlzaW9uKHsgaWQgfSkudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICBlbnRyeVJldmlzaW9uQmluZC5vbkNoYW5nZShyZXNwb25zZS5lbnRyeSk7XG4gICAgICAgIH0pO1xuICAgIH0sIFtdKTtcblxuICAgIGlmICghZW50cnlSZXZpc2lvbkJpbmQudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIDxDaXJjdWxhclByb2dyZXNzIGxhYmVsPXtcIkNoZWNraW5nIHJldmlzaW9uLi4uXCJ9IC8+O1xuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICAgIDxwPlxuICAgICAgICAgICAgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHBlcm1hbmVudGx5IGRlbGV0ZSByZXZpc2lvbiZuYnNwO1xuICAgICAgICAgICAgPFRpdGxlPiN7ZW50cnlSZXZpc2lvbkJpbmQudmFsdWUubWV0YS52ZXJzaW9ufTwvVGl0bGU+IG9mIHRoZSZuYnNwO1xuICAgICAgICAgICAgPFRpdGxlPntlbnRyeVJldmlzaW9uQmluZC52YWx1ZS5tZXRhLnRpdGxlfTwvVGl0bGU+IGVudHJ5P1xuICAgICAgICA8L3A+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBTaG93Q29uZmlybWF0aW9uT25EZWxldGVSZXZpc2lvbiA9IHVzZUNvbnRlbnRFbnRyeS5jcmVhdGVEZWNvcmF0b3IoYmFzZUhvb2sgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGhvb2sgPSBiYXNlSG9vaygpO1xuICAgICAgICBjb25zdCBkaWFsb2dzID0gdXNlRGlhbG9ncygpO1xuICAgICAgICBjb25zdCB7IHNob3dTbmFja2JhciB9ID0gdXNlU25hY2tiYXIoKTtcblxuICAgICAgICBjb25zdCBvbkFjY2VwdCA9IGFzeW5jIChwYXJhbXM6IERlbGV0ZUVudHJ5UmV2aXNpb25QYXJhbXMpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJldmlzaW9uVG9EZWxldGUgPSBob29rLnJldmlzaW9ucy5maW5kKHJldiA9PiByZXYuaWQgPT09IHBhcmFtcy5pZCkhO1xuXG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGhvb2suZGVsZXRlRW50cnlSZXZpc2lvbihyZXZpc2lvblRvRGVsZXRlKTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVzcG9uc2UgPT09IFwib2JqZWN0XCIgJiYgcmVzcG9uc2UuZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGVycm9yIH0gPSByZXNwb25zZTtcbiAgICAgICAgICAgICAgICBzaG93U25hY2tiYXIoZXJyb3IubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzaG93U25hY2tiYXIoXG4gICAgICAgICAgICAgICAgPEVudHJ5UmV2aXNpb25EZWxldGVkU25hY2tiYXJNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZWRSZXZpc2lvbj17cmV2aXNpb25Ub0RlbGV0ZX1cbiAgICAgICAgICAgICAgICAgICAgbmV3TGF0ZXN0UmV2aXNpb249e3Jlc3BvbnNlLm5ld0xhdGVzdFJldmlzaW9ufVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHNob3dDb25maXJtYXRpb24gPSAocGFyYW1zOiBEZWxldGVFbnRyeVJldmlzaW9uUGFyYW1zKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8RGVsZXRlRW50cnlSZXZpc2lvblJlc3BvbnNlPihyZXNvbHZlID0+IHtcbiAgICAgICAgICAgICAgICBkaWFsb2dzLnNob3dEaWFsb2coe1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCJEZWxldGUgcmV2aXNpb25cIixcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogPEVudHJ5TWVzc2FnZSBpZD17cGFyYW1zLmlkfSBnZXRFbnRyeVJldmlzaW9uPXtob29rLmdldEVudHJ5fSAvPixcbiAgICAgICAgICAgICAgICAgICAgYWNjZXB0TGFiZWw6IFwiQ29uZmlybVwiLFxuICAgICAgICAgICAgICAgICAgICBjYW5jZWxMYWJlbDogXCJDYW5jZWxcIixcbiAgICAgICAgICAgICAgICAgICAgbG9hZGluZ0xhYmVsOiBcIkRlbGV0aW5nIHJldmlzaW9uLi4uXCIsXG4gICAgICAgICAgICAgICAgICAgIG9uQWNjZXB0OiBhc3luYyAoKSA9PiByZXNvbHZlKGF3YWl0IG9uQWNjZXB0KHBhcmFtcykpLFxuICAgICAgICAgICAgICAgICAgICBvbkNsb3NlOiAoKSA9PiByZXNvbHZlKHsgZXJyb3I6IHsgbWVzc2FnZTogXCJDYW5jZWxsZWRcIiB9IH0pXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uaG9vayxcbiAgICAgICAgICAgIGRlbGV0ZUVudHJ5UmV2aXNpb246IHBhcmFtcyA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNob3dDb25maXJtYXRpb24ocGFyYW1zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9O1xufSk7XG4iXX0= */",
30
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
31
+ });
32
+ var EntryMessage = function EntryMessage(_ref) {
33
+ var id = _ref.id,
34
+ getEntryRevision = _ref.getEntryRevision;
35
+ var entryRevisionBind = (0, _form.useBind)({
36
+ name: "entryRevision"
37
+ });
38
+ (0, _react.useEffect)(function () {
39
+ getEntryRevision({
40
+ id: id
41
+ }).then(function (response) {
42
+ entryRevisionBind.onChange(response.entry);
43
+ });
44
+ }, []);
45
+ if (!entryRevisionBind.value) {
46
+ return /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, {
47
+ label: "Checking revision..."
48
+ });
49
+ }
50
+ return /*#__PURE__*/_react.default.createElement("p", null, "Are you sure you want to permanently delete revision\xA0", /*#__PURE__*/_react.default.createElement(Title, null, "#", entryRevisionBind.value.meta.version), " of the\xA0", /*#__PURE__*/_react.default.createElement(Title, null, entryRevisionBind.value.meta.title), " entry?");
51
+ };
52
+ var ShowConfirmationOnDeleteRevision = exports.ShowConfirmationOnDeleteRevision = _hooks.useContentEntry.createDecorator(function (baseHook) {
53
+ return function () {
54
+ var hook = baseHook();
55
+ var dialogs = (0, _appAdmin.useDialogs)();
56
+ var _useSnackbar = (0, _appAdmin.useSnackbar)(),
57
+ showSnackbar = _useSnackbar.showSnackbar;
58
+ var _onAccept = async function onAccept(params) {
59
+ var revisionToDelete = hook.revisions.find(function (rev) {
60
+ return rev.id === params.id;
61
+ });
62
+ var response = await hook.deleteEntryRevision(revisionToDelete);
63
+ if (typeof response === "object" && response.error) {
64
+ var error = response.error;
65
+ showSnackbar(error.message);
66
+ return response;
67
+ }
68
+ showSnackbar( /*#__PURE__*/_react.default.createElement(_EntryRevisionDeletedSnackbarMessage.EntryRevisionDeletedSnackbarMessage, {
69
+ deletedRevision: revisionToDelete,
70
+ newLatestRevision: response.newLatestRevision
71
+ }));
72
+ return response;
73
+ };
74
+ var showConfirmation = function showConfirmation(params) {
75
+ return new Promise(function (resolve) {
76
+ dialogs.showDialog({
77
+ title: "Delete revision",
78
+ content: /*#__PURE__*/_react.default.createElement(EntryMessage, {
79
+ id: params.id,
80
+ getEntryRevision: hook.getEntry
81
+ }),
82
+ acceptLabel: "Confirm",
83
+ cancelLabel: "Cancel",
84
+ loadingLabel: "Deleting revision...",
85
+ onAccept: async function onAccept() {
86
+ return resolve(await _onAccept(params));
87
+ },
88
+ onClose: function onClose() {
89
+ return resolve({
90
+ error: {
91
+ message: "Cancelled"
92
+ }
93
+ });
94
+ }
95
+ });
96
+ });
97
+ };
98
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, hook), {}, {
99
+ deleteEntryRevision: function deleteEntryRevision(params) {
100
+ return showConfirmation(params);
101
+ }
102
+ });
103
+ };
104
+ });
105
+
106
+ //# sourceMappingURL=ShowConfirmationOnDeleteRevision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_form","_appAdmin","_hooks","_Progress","_EntryRevisionDeletedSnackbarMessage","_EMOTION_STRINGIFIED_CSS_ERROR__","Title","_base","default","process","env","NODE_ENV","target","label","name","styles","map","toString","EntryMessage","_ref","id","getEntryRevision","entryRevisionBind","useBind","useEffect","then","response","onChange","entry","value","createElement","CircularProgress","meta","version","title","ShowConfirmationOnDeleteRevision","exports","useContentEntry","createDecorator","baseHook","hook","dialogs","useDialogs","_useSnackbar","useSnackbar","showSnackbar","onAccept","params","revisionToDelete","revisions","find","rev","deleteEntryRevision","error","message","EntryRevisionDeletedSnackbarMessage","deletedRevision","newLatestRevision","showConfirmation","Promise","resolve","showDialog","content","getEntry","acceptLabel","cancelLabel","loadingLabel","onClose","_objectSpread2"],"sources":["ShowConfirmationOnDeleteRevision.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { useBind } from \"@webiny/form\";\nimport { useDialogs, useSnackbar } from \"@webiny/app-admin\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { EntryRevisionDeletedSnackbarMessage } from \"./ShowConfirmationOnDeleteRevision/EntryRevisionDeletedSnackbarMessage\";\nimport {\n DeleteEntryRevisionParams,\n DeleteEntryRevisionResponse\n} from \"~/admin/views/contentEntries/ContentEntry/ContentEntryContext\";\n\ntype GetEntry = ReturnType<typeof useContentEntry>[\"getEntry\"];\n\nconst Title = styled.span`\n font-weight: bold;\n`;\n\nconst EntryMessage = ({ id, getEntryRevision }: { id: string; getEntryRevision: GetEntry }) => {\n const entryRevisionBind = useBind({\n name: \"entryRevision\"\n });\n\n useEffect(() => {\n getEntryRevision({ id }).then(response => {\n entryRevisionBind.onChange(response.entry);\n });\n }, []);\n\n if (!entryRevisionBind.value) {\n return <CircularProgress label={\"Checking revision...\"} />;\n }\n\n return (\n <p>\n Are you sure you want to permanently delete revision&nbsp;\n <Title>#{entryRevisionBind.value.meta.version}</Title> of the&nbsp;\n <Title>{entryRevisionBind.value.meta.title}</Title> entry?\n </p>\n );\n};\n\nexport const ShowConfirmationOnDeleteRevision = useContentEntry.createDecorator(baseHook => {\n return () => {\n const hook = baseHook();\n const dialogs = useDialogs();\n const { showSnackbar } = useSnackbar();\n\n const onAccept = async (params: DeleteEntryRevisionParams) => {\n const revisionToDelete = hook.revisions.find(rev => rev.id === params.id)!;\n\n const response = await hook.deleteEntryRevision(revisionToDelete);\n if (typeof response === \"object\" && response.error) {\n const { error } = response;\n showSnackbar(error.message);\n return response;\n }\n\n showSnackbar(\n <EntryRevisionDeletedSnackbarMessage\n deletedRevision={revisionToDelete}\n newLatestRevision={response.newLatestRevision}\n />\n );\n\n return response;\n };\n const showConfirmation = (params: DeleteEntryRevisionParams) => {\n return new Promise<DeleteEntryRevisionResponse>(resolve => {\n dialogs.showDialog({\n title: \"Delete revision\",\n content: <EntryMessage id={params.id} getEntryRevision={hook.getEntry} />,\n acceptLabel: \"Confirm\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Deleting revision...\",\n onAccept: async () => resolve(await onAccept(params)),\n onClose: () => resolve({ error: { message: \"Cancelled\" } })\n });\n });\n };\n\n return {\n ...hook,\n deleteEntryRevision: params => {\n return showConfirmation(params);\n }\n };\n };\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,23 +1,28 @@
1
1
  import React from "react";
2
2
  import ApolloClient from "apollo-client";
3
- import { CmsContentEntry, CmsModel } from "../../../types";
4
- interface EntryError {
3
+ import { CmsContentEntry, CmsContentEntryRevision, CmsModel } from "../../../types";
4
+ export interface EntryError {
5
5
  message: string;
6
6
  code?: string;
7
7
  data?: Record<string, any>;
8
8
  }
9
- interface OperationSuccess {
9
+ export interface OperationSuccess {
10
10
  entry: CmsContentEntry;
11
11
  error?: never;
12
12
  }
13
- interface OperationError {
13
+ export interface OperationError {
14
14
  entry?: never;
15
15
  error: EntryError;
16
16
  }
17
+ interface ListEntryRevisionsOperationSuccess {
18
+ revisions: CmsContentEntryRevision[];
19
+ error?: never;
20
+ }
17
21
  export declare type PartialCmsContentEntryWithId = Partial<CmsContentEntry> & {
18
22
  id: string;
19
23
  };
20
24
  export declare type GetEntryResponse = OperationSuccess | OperationError;
25
+ export declare type ListEntryRevisionsResponse = ListEntryRevisionsOperationSuccess | OperationError;
21
26
  export declare type CreateEntryResponse = OperationSuccess | OperationError;
22
27
  export declare type CreateEntryRevisionFromResponse = OperationSuccess | OperationError;
23
28
  export declare type UpdateEntryRevisionResponse = OperationSuccess | OperationError;
@@ -26,7 +31,7 @@ export declare type PublishEntryRevisionResponse = OperationSuccess | OperationE
26
31
  export declare type UnpublishEntryRevisionResponse = OperationSuccess | OperationError;
27
32
  export interface CreateEntryParams {
28
33
  model: CmsModel;
29
- entry: PartialCmsContentEntryWithId;
34
+ entry: Partial<CmsContentEntry>;
30
35
  options?: {
31
36
  skipValidators?: string[];
32
37
  };
@@ -46,6 +51,13 @@ export interface UpdateEntryRevisionParams {
46
51
  skipValidators?: string[];
47
52
  };
48
53
  }
54
+ export interface UpdateSingletonEntryParams {
55
+ model: CmsModel;
56
+ entry: PartialCmsContentEntryWithId;
57
+ options?: {
58
+ skipValidators?: string[];
59
+ };
60
+ }
49
61
  export interface PublishEntryRevisionParams {
50
62
  model: CmsModel;
51
63
  id: string;
@@ -62,13 +74,23 @@ export interface GetEntryParams {
62
74
  model: CmsModel;
63
75
  id: string;
64
76
  }
77
+ export interface ListEntryRevisionParams {
78
+ model: CmsModel;
79
+ id: string;
80
+ }
81
+ export interface GetSingletonEntryParams {
82
+ model: CmsModel;
83
+ }
65
84
  export interface CmsContext {
66
85
  getApolloClient(locale: string): ApolloClient<any>;
67
86
  createApolloClient: CmsProviderProps["createApolloClient"];
68
87
  apolloClient: ApolloClient<any>;
69
88
  getEntry: (params: GetEntryParams) => Promise<GetEntryResponse>;
89
+ listEntryRevisions: (params: ListEntryRevisionParams) => Promise<ListEntryRevisionsResponse>;
90
+ getSingletonEntry: (params: GetSingletonEntryParams) => Promise<GetEntryResponse>;
70
91
  createEntry: (params: CreateEntryParams) => Promise<CreateEntryResponse>;
71
92
  createEntryRevisionFrom: (params: CreateEntryRevisionFromParams) => Promise<CreateEntryRevisionFromResponse>;
93
+ updateSingletonEntry: (params: UpdateSingletonEntryParams) => Promise<UpdateEntryRevisionResponse>;
72
94
  updateEntryRevision: (params: UpdateEntryRevisionParams) => Promise<UpdateEntryRevisionResponse>;
73
95
  publishEntryRevision: (params: PublishEntryRevisionParams) => Promise<PublishEntryRevisionResponse>;
74
96
  unpublishEntryRevision: (params: UnpublishEntryRevisionParams) => Promise<UnpublishEntryRevisionResponse>;
@@ -12,7 +12,8 @@ var _Progress = require("@webiny/ui/Progress");
12
12
  var _config = require("@webiny/app/config");
13
13
  var _appHeadlessCmsCommon = require("@webiny/app-headless-cms-common");
14
14
  var _getFetchPolicy = require("../../../utils/getFetchPolicy");
15
- var _excluded = ["id"];
15
+ var _excluded = ["id"],
16
+ _excluded2 = ["id"];
16
17
  var CmsContext = exports.CmsContext = /*#__PURE__*/_react.default.createContext(undefined);
17
18
  var apolloClientsCache = {};
18
19
  var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
@@ -57,7 +58,7 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
57
58
  if (!response.data) {
58
59
  return {
59
60
  error: {
60
- message: "Missing response data on Get Entry query.",
61
+ message: "Missing response data on getEntry query.",
61
62
  code: "MISSING_RESPONSE_DATA",
62
63
  data: {}
63
64
  }
@@ -75,10 +76,70 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
75
76
  entry: data
76
77
  };
77
78
  },
78
- createEntry: async function createEntry(_ref2) {
79
+ listEntryRevisions: async function listEntryRevisions(_ref2) {
79
80
  var model = _ref2.model,
80
- entry = _ref2.entry,
81
- options = _ref2.options;
81
+ id = _ref2.id;
82
+ var query = (0, _appHeadlessCmsCommon.createRevisionsQuery)(model);
83
+ var response = await value.apolloClient.query({
84
+ query: query,
85
+ variables: {
86
+ id: id
87
+ },
88
+ fetchPolicy: "network-only"
89
+ });
90
+ if (!response.data) {
91
+ return {
92
+ error: {
93
+ message: "Missing response data on getRevisions query.",
94
+ code: "MISSING_RESPONSE_DATA",
95
+ data: {}
96
+ }
97
+ };
98
+ }
99
+ var _response$data$revisi = response.data.revisions,
100
+ data = _response$data$revisi.data,
101
+ error = _response$data$revisi.error;
102
+ if (error) {
103
+ return {
104
+ error: error
105
+ };
106
+ }
107
+ return {
108
+ revisions: data
109
+ };
110
+ },
111
+ getSingletonEntry: async function getSingletonEntry(_ref3) {
112
+ var model = _ref3.model;
113
+ var query = (0, _appHeadlessCmsCommon.createReadSingletonQuery)(model);
114
+ var response = await value.apolloClient.query({
115
+ query: query,
116
+ fetchPolicy: (0, _getFetchPolicy.getFetchPolicy)(model)
117
+ });
118
+ if (!response.data) {
119
+ return {
120
+ error: {
121
+ message: "Missing response data on getSingletonEntry query.",
122
+ code: "MISSING_RESPONSE_DATA",
123
+ data: {}
124
+ }
125
+ };
126
+ }
127
+ var _response$data$conten2 = response.data.content,
128
+ data = _response$data$conten2.data,
129
+ error = _response$data$conten2.error;
130
+ if (error) {
131
+ return {
132
+ error: error
133
+ };
134
+ }
135
+ return {
136
+ entry: data
137
+ };
138
+ },
139
+ createEntry: async function createEntry(_ref4) {
140
+ var model = _ref4.model,
141
+ entry = _ref4.entry,
142
+ options = _ref4.options;
82
143
  var mutation = (0, _appHeadlessCmsCommon.createCreateMutation)(model);
83
144
  var response = await value.apolloClient.mutate({
84
145
  mutation: mutation,
@@ -97,9 +158,9 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
97
158
  }
98
159
  };
99
160
  }
100
- var _response$data$conten2 = response.data.content,
101
- data = _response$data$conten2.data,
102
- error = _response$data$conten2.error;
161
+ var _response$data$conten3 = response.data.content,
162
+ data = _response$data$conten3.data,
163
+ error = _response$data$conten3.error;
103
164
  if (error) {
104
165
  return {
105
166
  error: error
@@ -109,11 +170,11 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
109
170
  entry: data
110
171
  };
111
172
  },
112
- createEntryRevisionFrom: async function createEntryRevisionFrom(_ref3) {
113
- var model = _ref3.model,
114
- id = _ref3.id,
115
- input = _ref3.input,
116
- options = _ref3.options;
173
+ createEntryRevisionFrom: async function createEntryRevisionFrom(_ref5) {
174
+ var model = _ref5.model,
175
+ id = _ref5.id,
176
+ input = _ref5.input,
177
+ options = _ref5.options;
117
178
  var mutation = (0, _appHeadlessCmsCommon.createCreateFromMutation)(model);
118
179
  var response = await value.apolloClient.mutate({
119
180
  mutation: mutation,
@@ -133,9 +194,9 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
133
194
  }
134
195
  };
135
196
  }
136
- var _response$data$conten3 = response.data.content,
137
- data = _response$data$conten3.data,
138
- error = _response$data$conten3.error;
197
+ var _response$data$conten4 = response.data.content,
198
+ data = _response$data$conten4.data,
199
+ error = _response$data$conten4.error;
139
200
  if (error) {
140
201
  return {
141
202
  error: error
@@ -145,10 +206,10 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
145
206
  entry: data
146
207
  };
147
208
  },
148
- updateEntryRevision: async function updateEntryRevision(_ref4) {
149
- var model = _ref4.model,
150
- entry = _ref4.entry,
151
- options = _ref4.options;
209
+ updateEntryRevision: async function updateEntryRevision(_ref6) {
210
+ var model = _ref6.model,
211
+ entry = _ref6.entry,
212
+ options = _ref6.options;
152
213
  var mutation = (0, _appHeadlessCmsCommon.createUpdateMutation)(model);
153
214
  var id = entry.id,
154
215
  input = (0, _objectWithoutProperties2.default)(entry, _excluded);
@@ -170,9 +231,9 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
170
231
  }
171
232
  };
172
233
  }
173
- var _response$data$conten4 = response.data.content,
174
- data = _response$data$conten4.data,
175
- error = _response$data$conten4.error;
234
+ var _response$data$conten5 = response.data.content,
235
+ data = _response$data$conten5.data,
236
+ error = _response$data$conten5.error;
176
237
  if (error) {
177
238
  return {
178
239
  error: error
@@ -182,9 +243,46 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
182
243
  entry: data
183
244
  };
184
245
  },
185
- publishEntryRevision: async function publishEntryRevision(_ref5) {
186
- var model = _ref5.model,
187
- id = _ref5.id;
246
+ updateSingletonEntry: async function updateSingletonEntry(_ref7) {
247
+ var model = _ref7.model,
248
+ entry = _ref7.entry,
249
+ options = _ref7.options;
250
+ var mutation = (0, _appHeadlessCmsCommon.createUpdateSingletonMutation)(model);
251
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
252
+ var id = entry.id,
253
+ input = (0, _objectWithoutProperties2.default)(entry, _excluded2);
254
+ var response = await value.apolloClient.mutate({
255
+ mutation: mutation,
256
+ variables: {
257
+ data: input,
258
+ options: options
259
+ },
260
+ fetchPolicy: (0, _getFetchPolicy.getFetchPolicy)(model)
261
+ });
262
+ if (!response.data) {
263
+ return {
264
+ error: {
265
+ message: "Missing response data on updateSingletonEntry mutation.",
266
+ code: "MISSING_RESPONSE_DATA",
267
+ data: {}
268
+ }
269
+ };
270
+ }
271
+ var _response$data$conten6 = response.data.content,
272
+ data = _response$data$conten6.data,
273
+ error = _response$data$conten6.error;
274
+ if (error) {
275
+ return {
276
+ error: error
277
+ };
278
+ }
279
+ return {
280
+ entry: data
281
+ };
282
+ },
283
+ publishEntryRevision: async function publishEntryRevision(_ref8) {
284
+ var model = _ref8.model,
285
+ id = _ref8.id;
188
286
  var mutation = (0, _appHeadlessCmsCommon.createPublishMutation)(model);
189
287
  var response = await value.apolloClient.mutate({
190
288
  mutation: mutation,
@@ -202,9 +300,9 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
202
300
  error: _error
203
301
  };
204
302
  }
205
- var _response$data$conten5 = response.data.content,
206
- data = _response$data$conten5.data,
207
- error = _response$data$conten5.error;
303
+ var _response$data$conten7 = response.data.content,
304
+ data = _response$data$conten7.data,
305
+ error = _response$data$conten7.error;
208
306
  if (error) {
209
307
  return {
210
308
  error: error
@@ -214,9 +312,9 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
214
312
  entry: data
215
313
  };
216
314
  },
217
- unpublishEntryRevision: async function unpublishEntryRevision(_ref6) {
218
- var model = _ref6.model,
219
- id = _ref6.id;
315
+ unpublishEntryRevision: async function unpublishEntryRevision(_ref9) {
316
+ var model = _ref9.model,
317
+ id = _ref9.id;
220
318
  var mutation = (0, _appHeadlessCmsCommon.createUnpublishMutation)(model);
221
319
  var response = await value.apolloClient.mutate({
222
320
  mutation: mutation,
@@ -233,9 +331,9 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
233
331
  }
234
332
  };
235
333
  }
236
- var _response$data$conten6 = response.data.content,
237
- data = _response$data$conten6.data,
238
- error = _response$data$conten6.error;
334
+ var _response$data$conten8 = response.data.content,
335
+ data = _response$data$conten8.data,
336
+ error = _response$data$conten8.error;
239
337
  if (error) {
240
338
  return {
241
339
  error: error
@@ -245,9 +343,9 @@ var CmsProvider = exports.CmsProvider = function CmsProvider(props) {
245
343
  entry: data
246
344
  };
247
345
  },
248
- deleteEntry: async function deleteEntry(_ref7) {
249
- var model = _ref7.model,
250
- id = _ref7.id;
346
+ deleteEntry: async function deleteEntry(_ref10) {
347
+ var model = _ref10.model,
348
+ id = _ref10.id;
251
349
  var mutation = (0, _appHeadlessCmsCommon.createDeleteMutation)(model);
252
350
  var response = await value.apolloClient.mutate({
253
351
  mutation: mutation,