@webiny/app-headless-cms 0.0.0-unstable.5e7233243f → 0.0.0-unstable.fcdad0bc61

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 (33) hide show
  1. package/admin/components/ContentEntryForm/Label.js +1 -1
  2. package/admin/components/ContentEntryForm/Label.js.map +1 -1
  3. package/admin/constants/statusLabels.js +2 -4
  4. package/admin/constants/statusLabels.js.map +1 -1
  5. package/admin/graphql/contentEntries.d.ts +0 -28
  6. package/admin/graphql/contentEntries.js +5 -29
  7. package/admin/graphql/contentEntries.js.map +1 -1
  8. package/admin/hooks/usePermission.d.ts +0 -2
  9. package/admin/hooks/usePermission.js +0 -36
  10. package/admin/hooks/usePermission.js.map +1 -1
  11. package/admin/menus/NothingToShowElement.js +4 -1
  12. package/admin/menus/NothingToShowElement.js.map +1 -1
  13. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js +1 -1
  14. package/admin/plugins/editor/defaultBar/FormSettings/FormSettings.js.map +1 -1
  15. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js +11 -17
  16. package/admin/plugins/permissionRenderer/components/ContentEntryPermission.js.map +1 -1
  17. package/admin/views/contentEntries/ContentEntriesList.js +1 -1
  18. package/admin/views/contentEntries/ContentEntriesList.js.map +1 -1
  19. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.d.ts +1 -1
  20. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js +3 -80
  21. package/admin/views/contentEntries/ContentEntry/header/requestChanges/RequestChanges.js.map +1 -1
  22. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.d.ts +1 -1
  23. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js +3 -84
  24. package/admin/views/contentEntries/ContentEntry/header/requestReview/RequestReview.js.map +1 -1
  25. package/admin/views/contentEntries/ContentEntry/useRevision.d.ts +0 -8
  26. package/admin/views/contentEntries/ContentEntry/useRevision.js +4 -105
  27. package/admin/views/contentEntries/ContentEntry/useRevision.js.map +1 -1
  28. package/admin/views/contentEntries/experiment/ContentEntriesModule.d.ts +2 -2
  29. package/admin/views/contentEntries/experiment/ContentEntriesModule.js +13 -7
  30. package/admin/views/contentEntries/experiment/ContentEntriesModule.js.map +1 -1
  31. package/package.json +28 -28
  32. package/types.d.ts +9 -1
  33. package/types.js.map +1 -1
@@ -26,7 +26,7 @@ var Label = function Label(_ref) {
26
26
  return /*#__PURE__*/_react.default.createElement("div", {
27
27
  className: (0, _classnames.default)("mdc-text-field-helper-text mdc-text-field-helper-text--persistent", style.label)
28
28
  }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
29
- use: "subtitle2"
29
+ use: "body2"
30
30
  }, children));
31
31
  };
32
32
 
@@ -1 +1 @@
1
- {"version":3,"names":["style","label","css","marginBottom","Label","children","classNames"],"sources":["Label.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport classNames from \"classnames\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst style = {\n label: css({\n marginBottom: \"5px !important\"\n })\n};\n\nconst Label: React.FC = ({ children }) => (\n <div\n className={classNames(\n \"mdc-text-field-helper-text mdc-text-field-helper-text--persistent\",\n style.label\n )}\n >\n <Typography use={\"subtitle2\"}>{children}</Typography>\n </div>\n);\n\nexport default Label;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,KAAK,GAAG;EACVC,KAAK,eAAE,IAAAC,YAAA,EAAI;IACPC,YAAY,EAAE;EADP,CAAJ;AADG,CAAd;;AAMA,IAAMC,KAAe,GAAG,SAAlBA,KAAkB;EAAA,IAAGC,QAAH,QAAGA,QAAH;EAAA,oBACpB;IACI,SAAS,EAAE,IAAAC,mBAAA,EACP,mEADO,EAEPN,KAAK,CAACC,KAFC;EADf,gBAMI,6BAAC,sBAAD;IAAY,GAAG,EAAE;EAAjB,GAA+BI,QAA/B,CANJ,CADoB;AAAA,CAAxB;;eAWeD,K"}
1
+ {"version":3,"names":["style","label","css","marginBottom","Label","children","classNames"],"sources":["Label.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport classNames from \"classnames\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst style = {\n label: css({\n marginBottom: \"5px !important\"\n })\n};\n\nconst Label: React.FC = ({ children }) => (\n <div\n className={classNames(\n \"mdc-text-field-helper-text mdc-text-field-helper-text--persistent\",\n style.label\n )}\n >\n <Typography use={\"body2\"}>{children}</Typography>\n </div>\n);\n\nexport default Label;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,KAAK,GAAG;EACVC,KAAK,eAAE,IAAAC,YAAA,EAAI;IACPC,YAAY,EAAE;EADP,CAAJ;AADG,CAAd;;AAMA,IAAMC,KAAe,GAAG,SAAlBA,KAAkB;EAAA,IAAGC,QAAH,QAAGA,QAAH;EAAA,oBACpB;IACI,SAAS,EAAE,IAAAC,mBAAA,EACP,mEADO,EAEPN,KAAK,CAACC,KAFC;EADf,gBAMI,6BAAC,sBAAD;IAAY,GAAG,EAAE;EAAjB,GAA2BI,QAA3B,CANJ,CADoB;AAAA,CAAxB;;eAWeD,K"}
@@ -11,16 +11,14 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
11
11
 
12
12
  var _i18n = require("@webiny/app/i18n");
13
13
 
14
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
14
+ var _templateObject, _templateObject2, _templateObject3;
15
15
 
16
16
  var t = _i18n.i18n.ns("app-headless-cms/admin/content-entries/status");
17
17
 
18
18
  var statuses = {
19
19
  draft: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Draft"]))),
20
20
  published: t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Published"]))),
21
- unpublished: t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Unpublished"]))),
22
- changesRequested: t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Changes Requested"]))),
23
- reviewRequested: t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Review Requested"])))
21
+ unpublished: t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Unpublished"])))
24
22
  };
25
23
  var _default = statuses;
26
24
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","statuses","draft","published","unpublished","changesRequested","reviewRequested"],"sources":["statusLabels.ts"],"sourcesContent":["import { i18n } from \"@webiny/app/i18n\";\nconst t = i18n.ns(\"app-headless-cms/admin/content-entries/status\");\n\nconst statuses: Record<string, string> = {\n draft: t`Draft`,\n published: t`Published`,\n unpublished: t`Unpublished`,\n changesRequested: t`Changes Requested`,\n reviewRequested: t`Review Requested`\n};\nexport default statuses;\n"],"mappings":";;;;;;;;;;;AAAA;;;;AACA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,+CAAR,CAAV;;AAEA,IAAMC,QAAgC,GAAG;EACrCC,KAAK,EAAEJ,CAAF,wFADgC;EAErCK,SAAS,EAAEL,CAAF,8FAF4B;EAGrCM,WAAW,EAAEN,CAAF,gGAH0B;EAIrCO,gBAAgB,EAAEP,CAAF,sGAJqB;EAKrCQ,eAAe,EAAER,CAAF;AALsB,CAAzC;eAOeG,Q"}
1
+ {"version":3,"names":["t","i18n","ns","statuses","draft","published","unpublished"],"sources":["statusLabels.ts"],"sourcesContent":["import { i18n } from \"@webiny/app/i18n\";\nconst t = i18n.ns(\"app-headless-cms/admin/content-entries/status\");\n\nconst statuses: Record<string, string> = {\n draft: t`Draft`,\n published: t`Published`,\n unpublished: t`Unpublished`\n};\nexport default statuses;\n"],"mappings":";;;;;;;;;;;AAAA;;;;AACA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,+CAAR,CAAV;;AAEA,IAAMC,QAAgC,GAAG;EACrCC,KAAK,EAAEJ,CAAF,wFADgC;EAErCK,SAAS,EAAEL,CAAF,8FAF4B;EAGrCM,WAAW,EAAEN,CAAF;AAH0B,CAAzC;eAKeG,Q"}
@@ -143,31 +143,3 @@ export interface CmsEntryUnpublishMutationVariables {
143
143
  revision: string;
144
144
  }
145
145
  export declare const createUnpublishMutation: (model: CmsEditorContentModel) => import("graphql").DocumentNode;
146
- /**
147
- * ############################################
148
- * Request Review Mutation
149
- */
150
- export interface CmsEntryRequestReviewMutationResponse {
151
- content: {
152
- data?: CmsEditorContentEntry;
153
- error?: CmsErrorResponse;
154
- };
155
- }
156
- export interface CmsEntryRequestReviewMutationVariables {
157
- revision: string;
158
- }
159
- export declare const createRequestReviewMutation: (model: CmsEditorContentModel) => import("graphql").DocumentNode;
160
- /**
161
- * ############################################
162
- * Request Changes Mutation
163
- */
164
- export interface CmsEntryRequestChangesMutationResponse {
165
- content: {
166
- data?: CmsEditorContentEntry;
167
- error?: CmsErrorResponse;
168
- };
169
- }
170
- export interface CmsEntryRequestChangesMutationVariables {
171
- revision: string;
172
- }
173
- export declare const createRequestChangesMutation: (model: CmsEditorContentModel) => import("graphql").DocumentNode;
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.createUpdateMutation = exports.createUnpublishMutation = exports.createRevisionsQuery = exports.createRequestReviewMutation = exports.createRequestChangesMutation = exports.createReadQuery = exports.createPublishMutation = exports.createListQuery = exports.createDeleteMutation = exports.createCreateMutation = exports.createCreateFromMutation = void 0;
8
+ exports.createUpdateMutation = exports.createUnpublishMutation = exports.createRevisionsQuery = exports.createReadQuery = exports.createPublishMutation = exports.createListQuery = exports.createDeleteMutation = exports.createCreateMutation = exports.createCreateFromMutation = void 0;
9
9
 
10
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
11
 
@@ -17,7 +17,7 @@ var _pluralize = _interopRequireDefault(require("pluralize"));
17
17
 
18
18
  var _createFieldsList = require("./createFieldsList");
19
19
 
20
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
20
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
21
21
 
22
22
  var ERROR_FIELD =
23
23
  /* GraphQL */
@@ -65,7 +65,7 @@ var getModelTitleFieldId = function getModelTitleFieldId(model) {
65
65
  var createListQuery = function createListQuery(model) {
66
66
  var ucFirstPluralizedModelId = (0, _upperFirst.default)((0, _pluralize.default)(model.modelId));
67
67
  var ucFirstModelId = (0, _upperFirst.default)(model.modelId);
68
- return (0, _graphqlTag.default)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n query CmsEntriesList", "($where: ", "ListWhereInput, $sort: [", "ListSorter], $limit: Int, $after: String) {\n content: list", "(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n savedOn\n meta {\n ", "\n }\n ", "\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n } \n error ", "\n }\n }\n "])), ucFirstPluralizedModelId, ucFirstModelId, ucFirstModelId, ucFirstPluralizedModelId, CONTENT_META_FIELDS, getModelTitleFieldId(model), ERROR_FIELD);
68
+ return (0, _graphqlTag.default)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n query CmsEntriesList", "($where: ", "ListWhereInput, $sort: [", "ListSorter], $limit: Int, $after: String) {\n content: list", "(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n savedOn\n meta {\n ", "\n }\n ", "\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error ", "\n }\n }\n "])), ucFirstPluralizedModelId, ucFirstModelId, ucFirstModelId, ucFirstPluralizedModelId, CONTENT_META_FIELDS, getModelTitleFieldId(model), ERROR_FIELD);
69
69
  };
70
70
  /**
71
71
  * ############################################
@@ -113,7 +113,7 @@ exports.createCreateFromMutation = createCreateFromMutation;
113
113
 
114
114
  var createUpdateMutation = function createUpdateMutation(model) {
115
115
  var ucFirstModelId = (0, _upperFirst.default)(model.modelId);
116
- return (0, _graphqlTag.default)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n mutation CmsUpdate", "($revision: ID!, $data: ", "Input!) {\n content: update", "(revision: $revision, data: $data) {\n data {\n id\n ", "\n savedOn\n meta { \n ", " \n }\n }\n error ", "\n }\n }\n "])), ucFirstModelId, ucFirstModelId, ucFirstModelId, (0, _createFieldsList.createFieldsList)(model.fields), CONTENT_META_FIELDS, ERROR_FIELD);
116
+ return (0, _graphqlTag.default)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n mutation CmsUpdate", "($revision: ID!, $data: ", "Input!) {\n content: update", "(revision: $revision, data: $data) {\n data {\n id\n ", "\n savedOn\n meta {\n ", "\n }\n }\n error ", "\n }\n }\n "])), ucFirstModelId, ucFirstModelId, ucFirstModelId, (0, _createFieldsList.createFieldsList)(model.fields), CONTENT_META_FIELDS, ERROR_FIELD);
117
117
  };
118
118
  /**
119
119
  * ############################################
@@ -139,29 +139,5 @@ var createUnpublishMutation = function createUnpublishMutation(model) {
139
139
  var ucFirstModelId = (0, _upperFirst.default)(model.modelId);
140
140
  return (0, _graphqlTag.default)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n mutation CmsUnpublish", "($revision: ID!) {\n content: unpublish", "(revision: $revision) {\n data {\n id\n meta {\n ", "\n }\n }\n error ", "\n }\n }"])), ucFirstModelId, ucFirstModelId, CONTENT_META_FIELDS, ERROR_FIELD);
141
141
  };
142
- /**
143
- * ############################################
144
- * Request Review Mutation
145
- */
146
-
147
-
148
- exports.createUnpublishMutation = createUnpublishMutation;
149
-
150
- var createRequestReviewMutation = function createRequestReviewMutation(model) {
151
- var ucFirstModelId = (0, _upperFirst.default)(model.modelId);
152
- return (0, _graphqlTag.default)(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["\n mutation CmsRequest", "Review($revision: ID!) {\n content: request", "Review(revision: $revision) {\n data {\n id\n meta {\n ", "\n }\n }\n error ", "\n }\n }"])), ucFirstModelId, ucFirstModelId, CONTENT_META_FIELDS, ERROR_FIELD);
153
- };
154
- /**
155
- * ############################################
156
- * Request Changes Mutation
157
- */
158
-
159
-
160
- exports.createRequestReviewMutation = createRequestReviewMutation;
161
-
162
- var createRequestChangesMutation = function createRequestChangesMutation(model) {
163
- var ucFirstModelId = (0, _upperFirst.default)(model.modelId);
164
- return (0, _graphqlTag.default)(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["\n mutation CmsRequest", "Changes($revision: ID!) {\n content: request", "Changes(revision: $revision) {\n data {\n id\n meta {\n ", "\n }\n }\n error ", "\n }\n }"])), ucFirstModelId, ucFirstModelId, CONTENT_META_FIELDS, ERROR_FIELD);
165
- };
166
142
 
167
- exports.createRequestChangesMutation = createRequestChangesMutation;
143
+ exports.createUnpublishMutation = createUnpublishMutation;
@@ -1 +1 @@
1
- {"version":3,"names":["ERROR_FIELD","CONTENT_META_FIELDS","createReadQuery","model","ucFirstModelId","upperFirst","modelId","gql","createFieldsList","fields","createRevisionsQuery","getModelTitleFieldId","titleFieldId","createListQuery","ucFirstPluralizedModelId","pluralize","createDeleteMutation","createCreateMutation","createCreateFromMutation","createUpdateMutation","createPublishMutation","createUnpublishMutation","createRequestReviewMutation","createRequestChangesMutation"],"sources":["contentEntries.ts"],"sourcesContent":["import upperFirst from \"lodash/upperFirst\";\nimport gql from \"graphql-tag\";\nimport pluralize from \"pluralize\";\nimport {\n CmsContentEntryRevision,\n CmsEditorContentEntry,\n CmsEditorContentModel,\n CmsErrorResponse,\n CmsMetaResponse\n} from \"~/types\";\nimport { createFieldsList } from \"./createFieldsList\";\n\nconst ERROR_FIELD = /* GraphQL */ `\n {\n message\n code\n data\n }\n`;\n\nconst CONTENT_META_FIELDS = /* GraphQL */ `\n title\n publishedOn\n version\n locked\n status\n`;\n/**\n * ############################################\n * Get CMS Entry Query\n */\nexport interface CmsEntryGetQueryResponse {\n content: {\n data: CmsEditorContentEntry;\n error: CmsErrorResponse | null;\n };\n}\n\nexport interface CmsEntryGetQueryVariables {\n revision: string;\n}\n\nexport const createReadQuery = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesGet${ucFirstModelId}($revision: ID!) {\n content: get${ucFirstModelId}(revision: $revision) {\n data {\n id\n createdBy {\n id\n }\n ${createFieldsList(model.fields)}\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * List CMS Entry Revisions Query\n */\nexport interface CmsEntriesListRevisionsQueryResponse {\n revisions: {\n data: CmsContentEntryRevision[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\nexport interface CmsEntriesListRevisionsQueryVariables {\n id: string;\n}\nexport const createRevisionsQuery = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesGet${ucFirstModelId}Revisions($id: ID!) {\n revisions: get${ucFirstModelId}Revisions(id: $id) {\n data {\n id\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n\nconst getModelTitleFieldId = (model: CmsEditorContentModel): string => {\n if (!model.titleFieldId || model.titleFieldId === \"id\") {\n return \"\";\n }\n return model.titleFieldId;\n};\n\n/**\n * ############################################\n * List CMS Entries Query\n */\nexport interface CmsEntriesListQueryResponse {\n content: {\n data: CmsEditorContentEntry[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\nexport interface CmsEntriesListQueryVariables {\n // TODO @ts-refactor better list types\n where?: {\n [key: string]: any;\n };\n sort?: string[];\n limit?: number;\n after?: string;\n}\nexport const createListQuery = (model: CmsEditorContentModel) => {\n const ucFirstPluralizedModelId = upperFirst(pluralize(model.modelId));\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesList${ucFirstPluralizedModelId}($where: ${ucFirstModelId}ListWhereInput, $sort: [${ucFirstModelId}ListSorter], $limit: Int, $after: String) {\n content: list${ucFirstPluralizedModelId}(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n ${getModelTitleFieldId(model)}\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n } \n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Delete Mutation\n */\nexport interface CmsEntryDeleteMutationResponse {\n content: {\n data: CmsEditorContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryDeleteMutationVariables {\n revision: string;\n}\nexport const createDeleteMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsEntriesDelete${ucFirstModelId}($revision: ID!) {\n content: delete${ucFirstModelId}(revision: $revision) {\n data\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Create Mutation\n */\nexport interface CmsEntryCreateMutationResponse {\n content: {\n data: CmsEditorContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryCreateMutationVariables {\n /**\n * We have any here because we do not know which fields does entry have\n */\n data: Record<string, any>;\n}\nexport const createCreateMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsEntriesCreate${ucFirstModelId}($data: ${ucFirstModelId}Input!) {\n content: create${ucFirstModelId}(data: $data) {\n data {\n id\n savedOn\n ${createFieldsList(model.fields)}\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Create From Mutation\n */\nexport interface CmsEntryCreateFromMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryCreateFromMutationVariables {\n revision: string;\n /**\n * We have any here because we do not know which fields does entry have\n */\n data?: Record<string, any>;\n}\nexport const createCreateFromMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsCreate${ucFirstModelId}From($revision: ID!, $data: ${ucFirstModelId}Input) {\n content: create${ucFirstModelId}From(revision: $revision, data: $data) {\n data {\n id\n savedOn\n ${createFieldsList(model.fields)}\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Update Mutation\n */\nexport interface CmsEntryUpdateMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryUpdateMutationVariables {\n revision: string;\n /**\n * We have any here because we do not know which fields does entry have\n */\n data: Record<string, any>;\n}\nexport const createUpdateMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsUpdate${ucFirstModelId}($revision: ID!, $data: ${ucFirstModelId}Input!) {\n content: update${ucFirstModelId}(revision: $revision, data: $data) {\n data {\n id\n ${createFieldsList(model.fields)}\n savedOn\n meta { \n ${CONTENT_META_FIELDS} \n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Publish Mutation\n */\nexport interface CmsEntryPublishMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryPublishMutationVariables {\n revision: string;\n}\nexport const createPublishMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsPublish${ucFirstModelId}($revision: ID!) {\n content: publish${ucFirstModelId}(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Unpublish Mutation\n */\nexport interface CmsEntryUnpublishMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryUnpublishMutationVariables {\n revision: string;\n}\nexport const createUnpublishMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsUnpublish${ucFirstModelId}($revision: ID!) {\n content: unpublish${ucFirstModelId}(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Request Review Mutation\n */\nexport interface CmsEntryRequestReviewMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryRequestReviewMutationVariables {\n revision: string;\n}\nexport const createRequestReviewMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsRequest${ucFirstModelId}Review($revision: ID!) {\n content: request${ucFirstModelId}Review(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n\n/**\n * ############################################\n * Request Changes Mutation\n */\nexport interface CmsEntryRequestChangesMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryRequestChangesMutationVariables {\n revision: string;\n}\nexport const createRequestChangesMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsRequest${ucFirstModelId}Changes($revision: ID!) {\n content: request${ucFirstModelId}Changes(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["ERROR_FIELD","CONTENT_META_FIELDS","createReadQuery","model","ucFirstModelId","upperFirst","modelId","gql","createFieldsList","fields","createRevisionsQuery","getModelTitleFieldId","titleFieldId","createListQuery","ucFirstPluralizedModelId","pluralize","createDeleteMutation","createCreateMutation","createCreateFromMutation","createUpdateMutation","createPublishMutation","createUnpublishMutation"],"sources":["contentEntries.ts"],"sourcesContent":["import upperFirst from \"lodash/upperFirst\";\nimport gql from \"graphql-tag\";\nimport pluralize from \"pluralize\";\nimport {\n CmsContentEntryRevision,\n CmsEditorContentEntry,\n CmsEditorContentModel,\n CmsErrorResponse,\n CmsMetaResponse\n} from \"~/types\";\nimport { createFieldsList } from \"./createFieldsList\";\n\nconst ERROR_FIELD = /* GraphQL */ `\n {\n message\n code\n data\n }\n`;\n\nconst CONTENT_META_FIELDS = /* GraphQL */ `\n title\n publishedOn\n version\n locked\n status\n`;\n/**\n * ############################################\n * Get CMS Entry Query\n */\nexport interface CmsEntryGetQueryResponse {\n content: {\n data: CmsEditorContentEntry;\n error: CmsErrorResponse | null;\n };\n}\n\nexport interface CmsEntryGetQueryVariables {\n revision: string;\n}\n\nexport const createReadQuery = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesGet${ucFirstModelId}($revision: ID!) {\n content: get${ucFirstModelId}(revision: $revision) {\n data {\n id\n createdBy {\n id\n }\n ${createFieldsList(model.fields)}\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * List CMS Entry Revisions Query\n */\nexport interface CmsEntriesListRevisionsQueryResponse {\n revisions: {\n data: CmsContentEntryRevision[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\nexport interface CmsEntriesListRevisionsQueryVariables {\n id: string;\n}\nexport const createRevisionsQuery = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesGet${ucFirstModelId}Revisions($id: ID!) {\n revisions: get${ucFirstModelId}Revisions(id: $id) {\n data {\n id\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n\nconst getModelTitleFieldId = (model: CmsEditorContentModel): string => {\n if (!model.titleFieldId || model.titleFieldId === \"id\") {\n return \"\";\n }\n return model.titleFieldId;\n};\n\n/**\n * ############################################\n * List CMS Entries Query\n */\nexport interface CmsEntriesListQueryResponse {\n content: {\n data: CmsEditorContentEntry[];\n error: CmsErrorResponse | null;\n meta: CmsMetaResponse;\n };\n}\nexport interface CmsEntriesListQueryVariables {\n // TODO @ts-refactor better list types\n where?: {\n [key: string]: any;\n };\n sort?: string[];\n limit?: number;\n after?: string;\n}\nexport const createListQuery = (model: CmsEditorContentModel) => {\n const ucFirstPluralizedModelId = upperFirst(pluralize(model.modelId));\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n query CmsEntriesList${ucFirstPluralizedModelId}($where: ${ucFirstModelId}ListWhereInput, $sort: [${ucFirstModelId}ListSorter], $limit: Int, $after: String) {\n content: list${ucFirstPluralizedModelId}(\n where: $where\n sort: $sort\n limit: $limit\n after: $after\n ) {\n data {\n id\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n ${getModelTitleFieldId(model)}\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Delete Mutation\n */\nexport interface CmsEntryDeleteMutationResponse {\n content: {\n data: CmsEditorContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryDeleteMutationVariables {\n revision: string;\n}\nexport const createDeleteMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsEntriesDelete${ucFirstModelId}($revision: ID!) {\n content: delete${ucFirstModelId}(revision: $revision) {\n data\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Create Mutation\n */\nexport interface CmsEntryCreateMutationResponse {\n content: {\n data: CmsEditorContentEntry | null;\n error: CmsErrorResponse | null;\n };\n}\nexport interface CmsEntryCreateMutationVariables {\n /**\n * We have any here because we do not know which fields does entry have\n */\n data: Record<string, any>;\n}\nexport const createCreateMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsEntriesCreate${ucFirstModelId}($data: ${ucFirstModelId}Input!) {\n content: create${ucFirstModelId}(data: $data) {\n data {\n id\n savedOn\n ${createFieldsList(model.fields)}\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Create From Mutation\n */\nexport interface CmsEntryCreateFromMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryCreateFromMutationVariables {\n revision: string;\n /**\n * We have any here because we do not know which fields does entry have\n */\n data?: Record<string, any>;\n}\nexport const createCreateFromMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsCreate${ucFirstModelId}From($revision: ID!, $data: ${ucFirstModelId}Input) {\n content: create${ucFirstModelId}From(revision: $revision, data: $data) {\n data {\n id\n savedOn\n ${createFieldsList(model.fields)}\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Update Mutation\n */\nexport interface CmsEntryUpdateMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryUpdateMutationVariables {\n revision: string;\n /**\n * We have any here because we do not know which fields does entry have\n */\n data: Record<string, any>;\n}\nexport const createUpdateMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsUpdate${ucFirstModelId}($revision: ID!, $data: ${ucFirstModelId}Input!) {\n content: update${ucFirstModelId}(revision: $revision, data: $data) {\n data {\n id\n ${createFieldsList(model.fields)}\n savedOn\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }\n `;\n};\n/**\n * ############################################\n * Publish Mutation\n */\nexport interface CmsEntryPublishMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryPublishMutationVariables {\n revision: string;\n}\nexport const createPublishMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsPublish${ucFirstModelId}($revision: ID!) {\n content: publish${ucFirstModelId}(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n/**\n * ############################################\n * Unpublish Mutation\n */\nexport interface CmsEntryUnpublishMutationResponse {\n content: {\n data?: CmsEditorContentEntry;\n error?: CmsErrorResponse;\n };\n}\nexport interface CmsEntryUnpublishMutationVariables {\n revision: string;\n}\nexport const createUnpublishMutation = (model: CmsEditorContentModel) => {\n const ucFirstModelId = upperFirst(model.modelId);\n\n return gql`\n mutation CmsUnpublish${ucFirstModelId}($revision: ID!) {\n content: unpublish${ucFirstModelId}(revision: $revision) {\n data {\n id\n meta {\n ${CONTENT_META_FIELDS}\n }\n }\n error ${ERROR_FIELD}\n }\n }`;\n};\n"],"mappings":"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"}
@@ -13,8 +13,6 @@ export declare const usePermission: () => {
13
13
  canDelete: (item: CreatableItem, permissionName: string) => boolean;
14
14
  canPublish: (permissionName: string) => boolean;
15
15
  canUnpublish: (permissionName: string) => boolean;
16
- canRequestReview: (permissionName: string) => boolean;
17
- canRequestChange: (permissionName: string) => boolean;
18
16
  canReadContentModels: boolean;
19
17
  canReadContentModelGroups: boolean;
20
18
  canCreateContentModels: boolean;
@@ -170,40 +170,6 @@ var usePermission = function usePermission() {
170
170
 
171
171
  return false;
172
172
  }, [identity, hasFullAccess]);
173
- var canRequestReview = (0, _react.useCallback)(function (permissionName) {
174
- if (hasFullAccess) {
175
- return true;
176
- }
177
-
178
- var permission = getPermission(permissionName);
179
-
180
- if (!permission) {
181
- return false;
182
- }
183
-
184
- if (typeof permission.pw === "string") {
185
- return permission.pw.includes("r");
186
- }
187
-
188
- return false;
189
- }, [identity, hasFullAccess]);
190
- var canRequestChange = (0, _react.useCallback)(function (permissionName) {
191
- if (hasFullAccess) {
192
- return true;
193
- }
194
-
195
- var permission = getPermission(permissionName);
196
-
197
- if (!permission) {
198
- return false;
199
- }
200
-
201
- if (typeof permission.pw === "string") {
202
- return permission.pw.includes("c");
203
- }
204
-
205
- return false;
206
- }, [identity, hasFullAccess]);
207
173
  var canReadContentModels = canRead("cms.contentModel");
208
174
  var canReadContentModelGroups = canRead("cms.contentModelGroup");
209
175
  var canCreateContentModels = canCreate("cms.contentModel");
@@ -218,8 +184,6 @@ var usePermission = function usePermission() {
218
184
  canDelete: canDelete,
219
185
  canPublish: canPublish,
220
186
  canUnpublish: canUnpublish,
221
- canRequestReview: canRequestReview,
222
- canRequestChange: canRequestChange,
223
187
  canReadContentModels: canReadContentModels,
224
188
  canReadContentModelGroups: canReadContentModelGroups,
225
189
  canCreateContentModels: canCreateContentModels,
@@ -1 +1 @@
1
- {"version":3,"names":["usePermission","useSecurity","identity","getPermission","useI18N","getCurrentLocale","currentLocale","hasFullAccess","useMemo","canRead","useCallback","permissionName","permission","rwd","includes","canReadEntries","contentModelGroup","contentModel","contentModelPermission","contentModelGroupPermission","models","get","Array","isArray","modelId","groups","id","canEdit","item","own","createdBy","login","canCreate","canDelete","canPublish","pw","canUnpublish","canRequestReview","canRequestChange","canReadContentModels","canReadContentModelGroups","canCreateContentModels","canCreateContentModelGroups","canAccessManageEndpoint","undefined"],"sources":["usePermission.ts"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport get from \"lodash/get\";\nimport { useI18N } from \"@webiny/app-i18n/hooks/useI18N\";\nimport { CmsCreatedBy, CmsGroup, CmsModel, CmsSecurityPermission } from \"~/types\";\n\ninterface CreatableItem {\n createdBy: Pick<CmsCreatedBy, \"id\">;\n}\n\ninterface CanReadEntriesCallableParams {\n contentModelGroup: CmsGroup;\n contentModel: CmsModel;\n}\n\nexport const usePermission = () => {\n const { identity, getPermission } = useSecurity();\n const { getCurrentLocale } = useI18N();\n\n const currentLocale = getCurrentLocale(\"content\");\n\n const hasFullAccess = useMemo((): CmsSecurityPermission | null => {\n return getPermission(\"cms.*\");\n }, [identity]);\n\n const canRead = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"r\");\n },\n [identity]\n );\n\n const canReadEntries = useCallback(\n ({ contentModelGroup, contentModel }: CanReadEntriesCallableParams): boolean => {\n if (hasFullAccess) {\n return true;\n }\n\n const permission = getPermission<CmsSecurityPermission>(\"cms.contentEntry\");\n const contentModelPermission = getPermission(\"cms.contentModel\");\n const contentModelGroupPermission = getPermission(\"cms.contentModelGroup\");\n\n if (!permission) {\n return false;\n }\n\n // Check \"contentModel\" list.\n const models = get(contentModelPermission, `models.${currentLocale}`);\n if (Array.isArray(models)) {\n return models.includes(contentModel.modelId);\n }\n // Check \"contentModelGroup\" list.\n const groups = get(contentModelGroupPermission, `groups.${currentLocale}`);\n if (Array.isArray(groups)) {\n return groups.includes(contentModelGroup.id);\n }\n\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"r\");\n }\n\n return true;\n },\n [identity, hasFullAccess, currentLocale]\n );\n\n const canEdit = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission || !identity) {\n return false;\n }\n if (permission.own) {\n /**\n * There will be no \"createdBy\" field for a new entry therefore we enable the access.\n */\n if (!item.createdBy) {\n return true;\n }\n return get(item, \"createdBy.id\") === identity.login;\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"w\");\n }\n return true;\n },\n [identity]\n );\n\n /**\n * @description This checks whether the user has the \"write\" access for given permission;\n * without talking the \"own\" property in account.\n * @param {string} permissionName\n * */\n const canCreate = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"w\");\n },\n [identity]\n );\n\n const canDelete = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (permission.own) {\n return get(item, \"createdBy.id\") === (identity ? identity.login : null);\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"d\");\n }\n return true;\n },\n [identity]\n );\n\n const canPublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"p\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canUnpublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"u\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canRequestReview = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"r\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canRequestChange = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"c\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canReadContentModels = canRead(\"cms.contentModel\");\n const canReadContentModelGroups = canRead(\"cms.contentModelGroup\");\n const canCreateContentModels = canCreate(\"cms.contentModel\");\n const canCreateContentModelGroups = canCreate(\"cms.contentModelGroup\");\n const canAccessManageEndpoint = useMemo(() => {\n return getPermission(\"cms.endpoint.manage\") !== undefined;\n }, [identity]);\n\n return {\n canReadEntries,\n canEdit,\n canCreate,\n canDelete,\n canPublish,\n canUnpublish,\n canRequestReview,\n canRequestChange,\n canReadContentModels,\n canReadContentModelGroups,\n canCreateContentModels,\n canCreateContentModelGroups,\n canAccessManageEndpoint\n };\n};\n/**\n * Default export is deprecated, use the named one.\n * @deprecated\n */\nexport default usePermission;\n"],"mappings":"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"}
1
+ {"version":3,"names":["usePermission","useSecurity","identity","getPermission","useI18N","getCurrentLocale","currentLocale","hasFullAccess","useMemo","canRead","useCallback","permissionName","permission","rwd","includes","canReadEntries","contentModelGroup","contentModel","contentModelPermission","contentModelGroupPermission","models","get","Array","isArray","modelId","groups","id","canEdit","item","own","createdBy","login","canCreate","canDelete","canPublish","pw","canUnpublish","canReadContentModels","canReadContentModelGroups","canCreateContentModels","canCreateContentModelGroups","canAccessManageEndpoint","undefined"],"sources":["usePermission.ts"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport get from \"lodash/get\";\nimport { useI18N } from \"@webiny/app-i18n/hooks/useI18N\";\nimport { CmsCreatedBy, CmsGroup, CmsModel, CmsSecurityPermission } from \"~/types\";\n\ninterface CreatableItem {\n createdBy: Pick<CmsCreatedBy, \"id\">;\n}\n\ninterface CanReadEntriesCallableParams {\n contentModelGroup: CmsGroup;\n contentModel: CmsModel;\n}\n\nexport const usePermission = () => {\n const { identity, getPermission } = useSecurity();\n const { getCurrentLocale } = useI18N();\n\n const currentLocale = getCurrentLocale(\"content\");\n\n const hasFullAccess = useMemo((): CmsSecurityPermission | null => {\n return getPermission(\"cms.*\");\n }, [identity]);\n\n const canRead = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"r\");\n },\n [identity]\n );\n\n const canReadEntries = useCallback(\n ({ contentModelGroup, contentModel }: CanReadEntriesCallableParams): boolean => {\n if (hasFullAccess) {\n return true;\n }\n\n const permission = getPermission<CmsSecurityPermission>(\"cms.contentEntry\");\n const contentModelPermission = getPermission(\"cms.contentModel\");\n const contentModelGroupPermission = getPermission(\"cms.contentModelGroup\");\n\n if (!permission) {\n return false;\n }\n\n // Check \"contentModel\" list.\n const models = get(contentModelPermission, `models.${currentLocale}`);\n if (Array.isArray(models)) {\n return models.includes(contentModel.modelId);\n }\n // Check \"contentModelGroup\" list.\n const groups = get(contentModelGroupPermission, `groups.${currentLocale}`);\n if (Array.isArray(groups)) {\n return groups.includes(contentModelGroup.id);\n }\n\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"r\");\n }\n\n return true;\n },\n [identity, hasFullAccess, currentLocale]\n );\n\n const canEdit = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission || !identity) {\n return false;\n }\n if (permission.own) {\n /**\n * There will be no \"createdBy\" field for a new entry therefore we enable the access.\n */\n if (!item.createdBy) {\n return true;\n }\n return get(item, \"createdBy.id\") === identity.login;\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"w\");\n }\n return true;\n },\n [identity]\n );\n\n /**\n * @description This checks whether the user has the \"write\" access for given permission;\n * without talking the \"own\" property in account.\n * @param {string} permissionName\n * */\n const canCreate = useCallback(\n (permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n if (!permission) {\n return false;\n }\n\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(\"w\");\n },\n [identity]\n );\n\n const canDelete = useCallback(\n (item: CreatableItem, permissionName: string): boolean => {\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (permission.own) {\n return get(item, \"createdBy.id\") === (identity ? identity.login : null);\n }\n if (typeof permission.rwd === \"string\") {\n return permission.rwd.includes(\"d\");\n }\n return true;\n },\n [identity]\n );\n\n const canPublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"p\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canUnpublish = useCallback(\n (permissionName: string): boolean => {\n if (hasFullAccess) {\n return true;\n }\n const permission = getPermission<CmsSecurityPermission>(permissionName);\n\n if (!permission) {\n return false;\n }\n if (typeof permission.pw === \"string\") {\n return permission.pw.includes(\"u\");\n }\n\n return false;\n },\n [identity, hasFullAccess]\n );\n\n const canReadContentModels = canRead(\"cms.contentModel\");\n const canReadContentModelGroups = canRead(\"cms.contentModelGroup\");\n const canCreateContentModels = canCreate(\"cms.contentModel\");\n const canCreateContentModelGroups = canCreate(\"cms.contentModelGroup\");\n const canAccessManageEndpoint = useMemo(() => {\n return getPermission(\"cms.endpoint.manage\") !== undefined;\n }, [identity]);\n\n return {\n canReadEntries,\n canEdit,\n canCreate,\n canDelete,\n canPublish,\n canUnpublish,\n canReadContentModels,\n canReadContentModelGroups,\n canCreateContentModels,\n canCreateContentModelGroups,\n canAccessManageEndpoint\n };\n};\n/**\n * Default export is deprecated, use the named one.\n * @deprecated\n */\nexport default usePermission;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAYO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,GAAM;EAC/B,mBAAoC,IAAAC,wBAAA,GAApC;EAAA,IAAQC,QAAR,gBAAQA,QAAR;EAAA,IAAkBC,aAAlB,gBAAkBA,aAAlB;;EACA,eAA6B,IAAAC,iBAAA,GAA7B;EAAA,IAAQC,gBAAR,YAAQA,gBAAR;;EAEA,IAAMC,aAAa,GAAGD,gBAAgB,CAAC,SAAD,CAAtC;EAEA,IAAME,aAAa,GAAG,IAAAC,cAAA,EAAQ,YAAoC;IAC9D,OAAOL,aAAa,CAAC,OAAD,CAApB;EACH,CAFqB,EAEnB,CAACD,QAAD,CAFmB,CAAtB;EAIA,IAAMO,OAAO,GAAG,IAAAC,kBAAA,EACZ,UAACC,cAAD,EAAqC;IACjC,IAAMC,UAAU,GAAGT,aAAa,CAAwBQ,cAAxB,CAAhC;;IACA,IAAI,CAACC,UAAL,EAAiB;MACb,OAAO,KAAP;IACH;;IAED,IAAI,OAAOA,UAAU,CAACC,GAAlB,KAA0B,QAA9B,EAAwC;MACpC,OAAO,IAAP;IACH;;IAED,OAAOD,UAAU,CAACC,GAAX,CAAeC,QAAf,CAAwB,GAAxB,CAAP;EACH,CAZW,EAaZ,CAACZ,QAAD,CAbY,CAAhB;EAgBA,IAAMa,cAAc,GAAG,IAAAL,kBAAA,EACnB,gBAAgF;IAAA,IAA7EM,iBAA6E,QAA7EA,iBAA6E;IAAA,IAA1DC,YAA0D,QAA1DA,YAA0D;;IAC5E,IAAIV,aAAJ,EAAmB;MACf,OAAO,IAAP;IACH;;IAED,IAAMK,UAAU,GAAGT,aAAa,CAAwB,kBAAxB,CAAhC;IACA,IAAMe,sBAAsB,GAAGf,aAAa,CAAC,kBAAD,CAA5C;IACA,IAAMgB,2BAA2B,GAAGhB,aAAa,CAAC,uBAAD,CAAjD;;IAEA,IAAI,CAACS,UAAL,EAAiB;MACb,OAAO,KAAP;IACH,CAX2E,CAa5E;;;IACA,IAAMQ,MAAM,GAAG,IAAAC,YAAA,EAAIH,sBAAJ,mBAAsCZ,aAAtC,EAAf;;IACA,IAAIgB,KAAK,CAACC,OAAN,CAAcH,MAAd,CAAJ,EAA2B;MACvB,OAAOA,MAAM,CAACN,QAAP,CAAgBG,YAAY,CAACO,OAA7B,CAAP;IACH,CAjB2E,CAkB5E;;;IACA,IAAMC,MAAM,GAAG,IAAAJ,YAAA,EAAIF,2BAAJ,mBAA2Cb,aAA3C,EAAf;;IACA,IAAIgB,KAAK,CAACC,OAAN,CAAcE,MAAd,CAAJ,EAA2B;MACvB,OAAOA,MAAM,CAACX,QAAP,CAAgBE,iBAAiB,CAACU,EAAlC,CAAP;IACH;;IAED,IAAI,OAAOd,UAAU,CAACC,GAAlB,KAA0B,QAA9B,EAAwC;MACpC,OAAOD,UAAU,CAACC,GAAX,CAAeC,QAAf,CAAwB,GAAxB,CAAP;IACH;;IAED,OAAO,IAAP;EACH,CA9BkB,EA+BnB,CAACZ,QAAD,EAAWK,aAAX,EAA0BD,aAA1B,CA/BmB,CAAvB;EAkCA,IAAMqB,OAAO,GAAG,IAAAjB,kBAAA,EACZ,UAACkB,IAAD,EAAsBjB,cAAtB,EAA0D;IACtD,IAAMC,UAAU,GAAGT,aAAa,CAAwBQ,cAAxB,CAAhC;;IAEA,IAAI,CAACC,UAAD,IAAe,CAACV,QAApB,EAA8B;MAC1B,OAAO,KAAP;IACH;;IACD,IAAIU,UAAU,CAACiB,GAAf,EAAoB;MAChB;AAChB;AACA;MACgB,IAAI,CAACD,IAAI,CAACE,SAAV,EAAqB;QACjB,OAAO,IAAP;MACH;;MACD,OAAO,IAAAT,YAAA,EAAIO,IAAJ,EAAU,cAAV,MAA8B1B,QAAQ,CAAC6B,KAA9C;IACH;;IACD,IAAI,OAAOnB,UAAU,CAACC,GAAlB,KAA0B,QAA9B,EAAwC;MACpC,OAAOD,UAAU,CAACC,GAAX,CAAeC,QAAf,CAAwB,GAAxB,CAAP;IACH;;IACD,OAAO,IAAP;EACH,CApBW,EAqBZ,CAACZ,QAAD,CArBY,CAAhB;EAwBA;AACJ;AACA;AACA;AACA;;EACI,IAAM8B,SAAS,GAAG,IAAAtB,kBAAA,EACd,UAACC,cAAD,EAAqC;IACjC,IAAMC,UAAU,GAAGT,aAAa,CAAwBQ,cAAxB,CAAhC;;IACA,IAAI,CAACC,UAAL,EAAiB;MACb,OAAO,KAAP;IACH;;IAED,IAAI,OAAOA,UAAU,CAACC,GAAlB,KAA0B,QAA9B,EAAwC;MACpC,OAAO,IAAP;IACH;;IAED,OAAOD,UAAU,CAACC,GAAX,CAAeC,QAAf,CAAwB,GAAxB,CAAP;EACH,CAZa,EAad,CAACZ,QAAD,CAbc,CAAlB;EAgBA,IAAM+B,SAAS,GAAG,IAAAvB,kBAAA,EACd,UAACkB,IAAD,EAAsBjB,cAAtB,EAA0D;IACtD,IAAMC,UAAU,GAAGT,aAAa,CAAwBQ,cAAxB,CAAhC;;IAEA,IAAI,CAACC,UAAL,EAAiB;MACb,OAAO,KAAP;IACH;;IACD,IAAIA,UAAU,CAACiB,GAAf,EAAoB;MAChB,OAAO,IAAAR,YAAA,EAAIO,IAAJ,EAAU,cAAV,OAA+B1B,QAAQ,GAAGA,QAAQ,CAAC6B,KAAZ,GAAoB,IAA3D,CAAP;IACH;;IACD,IAAI,OAAOnB,UAAU,CAACC,GAAlB,KAA0B,QAA9B,EAAwC;MACpC,OAAOD,UAAU,CAACC,GAAX,CAAeC,QAAf,CAAwB,GAAxB,CAAP;IACH;;IACD,OAAO,IAAP;EACH,CAda,EAed,CAACZ,QAAD,CAfc,CAAlB;EAkBA,IAAMgC,UAAU,GAAG,IAAAxB,kBAAA,EACf,UAACC,cAAD,EAAqC;IACjC,IAAIJ,aAAJ,EAAmB;MACf,OAAO,IAAP;IACH;;IACD,IAAMK,UAAU,GAAGT,aAAa,CAAwBQ,cAAxB,CAAhC;;IAEA,IAAI,CAACC,UAAL,EAAiB;MACb,OAAO,KAAP;IACH;;IACD,IAAI,OAAOA,UAAU,CAACuB,EAAlB,KAAyB,QAA7B,EAAuC;MACnC,OAAOvB,UAAU,CAACuB,EAAX,CAAcrB,QAAd,CAAuB,GAAvB,CAAP;IACH;;IAED,OAAO,KAAP;EACH,CAfc,EAgBf,CAACZ,QAAD,EAAWK,aAAX,CAhBe,CAAnB;EAmBA,IAAM6B,YAAY,GAAG,IAAA1B,kBAAA,EACjB,UAACC,cAAD,EAAqC;IACjC,IAAIJ,aAAJ,EAAmB;MACf,OAAO,IAAP;IACH;;IACD,IAAMK,UAAU,GAAGT,aAAa,CAAwBQ,cAAxB,CAAhC;;IAEA,IAAI,CAACC,UAAL,EAAiB;MACb,OAAO,KAAP;IACH;;IACD,IAAI,OAAOA,UAAU,CAACuB,EAAlB,KAAyB,QAA7B,EAAuC;MACnC,OAAOvB,UAAU,CAACuB,EAAX,CAAcrB,QAAd,CAAuB,GAAvB,CAAP;IACH;;IAED,OAAO,KAAP;EACH,CAfgB,EAgBjB,CAACZ,QAAD,EAAWK,aAAX,CAhBiB,CAArB;EAmBA,IAAM8B,oBAAoB,GAAG5B,OAAO,CAAC,kBAAD,CAApC;EACA,IAAM6B,yBAAyB,GAAG7B,OAAO,CAAC,uBAAD,CAAzC;EACA,IAAM8B,sBAAsB,GAAGP,SAAS,CAAC,kBAAD,CAAxC;EACA,IAAMQ,2BAA2B,GAAGR,SAAS,CAAC,uBAAD,CAA7C;EACA,IAAMS,uBAAuB,GAAG,IAAAjC,cAAA,EAAQ,YAAM;IAC1C,OAAOL,aAAa,CAAC,qBAAD,CAAb,KAAyCuC,SAAhD;EACH,CAF+B,EAE7B,CAACxC,QAAD,CAF6B,CAAhC;EAIA,OAAO;IACHa,cAAc,EAAdA,cADG;IAEHY,OAAO,EAAPA,OAFG;IAGHK,SAAS,EAATA,SAHG;IAIHC,SAAS,EAATA,SAJG;IAKHC,UAAU,EAAVA,UALG;IAMHE,YAAY,EAAZA,YANG;IAOHC,oBAAoB,EAApBA,oBAPG;IAQHC,yBAAyB,EAAzBA,yBARG;IASHC,sBAAsB,EAAtBA,sBATG;IAUHC,2BAA2B,EAA3BA,2BAVG;IAWHC,uBAAuB,EAAvBA;EAXG,CAAP;AAaH,CAtLM;AAuLP;AACA;AACA;AACA;;;;eACezC,a"}
@@ -13,6 +13,8 @@ var _emotion = require("emotion");
13
13
 
14
14
  var _List = require("@webiny/ui/List");
15
15
 
16
+ var _Typography = require("@webiny/ui/Typography");
17
+
16
18
  // TODO: implement this without relying on the `ui` package
17
19
  var linkStyle = /*#__PURE__*/(0, _emotion.css)({
18
20
  color: "var(--mdc-theme-text-primary-on-background)",
@@ -49,7 +51,8 @@ var NothingToShow = function NothingToShow() {
49
51
  className: submenuItems,
50
52
  ripple: false,
51
53
  disabled: true
52
- }, /*#__PURE__*/_react.default.createElement("span", {
54
+ }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
55
+ use: "body2",
53
56
  className: linkStyle
54
57
  }, "Nothing to show.")));
55
58
  };
@@ -1 +1 @@
1
- {"version":3,"names":["linkStyle","css","color","textDecoration","display","alignItems","width","height","outline","paddingLeft","submenuItems","margin","submenuList","padding","NothingToShow","opacity"],"sources":["NothingToShowElement.tsx"],"sourcesContent":["// TODO: implement this without relying on the `ui` package\nimport React from \"react\";\nimport { css } from \"emotion\";\nimport { List, ListItem } from \"@webiny/ui/List\";\n\nconst linkStyle = css({\n color: \"var(--mdc-theme-text-primary-on-background)\",\n textDecoration: \"none\",\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n height: \"100%\",\n outline: \"none\",\n paddingLeft: 72,\n \"&:hover\": {\n textDecoration: \"none\"\n }\n});\n\nconst submenuItems = css({\n \".mdc-drawer &.mdc-list-item\": {\n margin: 0,\n paddingLeft: 0\n }\n});\n\nconst submenuList = css({\n \"&.mdc-list\": {\n padding: 0\n }\n});\n\nexport const NothingToShow: React.FC = () => {\n return (\n <List className={submenuList} style={{ opacity: 0.4 }}>\n <ListItem className={submenuItems} ripple={false} disabled>\n <span className={linkStyle}>Nothing to show.</span>\n </ListItem>\n </List>\n );\n};\n"],"mappings":";;;;;;;;;AACA;;AACA;;AACA;;AAHA;AAKA,IAAMA,SAAS,gBAAG,IAAAC,YAAA,EAAI;EAClBC,KAAK,EAAE,6CADW;EAElBC,cAAc,EAAE,MAFE;EAGlBC,OAAO,EAAE,MAHS;EAIlBC,UAAU,EAAE,QAJM;EAKlBC,KAAK,EAAE,MALW;EAMlBC,MAAM,EAAE,MANU;EAOlBC,OAAO,EAAE,MAPS;EAQlBC,WAAW,EAAE,EARK;EASlB,WAAW;IACPN,cAAc,EAAE;EADT;AATO,CAAJ,qBAAlB;AAcA,IAAMO,YAAY,gBAAG,IAAAT,YAAA,EAAI;EACrB,+BAA+B;IAC3BU,MAAM,EAAE,CADmB;IAE3BF,WAAW,EAAE;EAFc;AADV,CAAJ,wBAArB;AAOA,IAAMG,WAAW,gBAAG,IAAAX,YAAA,EAAI;EACpB,cAAc;IACVY,OAAO,EAAE;EADC;AADM,CAAJ,uBAApB;;AAMO,IAAMC,aAAuB,GAAG,SAA1BA,aAA0B,GAAM;EACzC,oBACI,6BAAC,UAAD;IAAM,SAAS,EAAEF,WAAjB;IAA8B,KAAK,EAAE;MAAEG,OAAO,EAAE;IAAX;EAArC,gBACI,6BAAC,cAAD;IAAU,SAAS,EAAEL,YAArB;IAAmC,MAAM,EAAE,KAA3C;IAAkD,QAAQ;EAA1D,gBACI;IAAM,SAAS,EAAEV;EAAjB,sBADJ,CADJ,CADJ;AAOH,CARM"}
1
+ {"version":3,"names":["linkStyle","css","color","textDecoration","display","alignItems","width","height","outline","paddingLeft","submenuItems","margin","submenuList","padding","NothingToShow","opacity"],"sources":["NothingToShowElement.tsx"],"sourcesContent":["// TODO: implement this without relying on the `ui` package\nimport React from \"react\";\nimport { css } from \"emotion\";\nimport { List, ListItem } from \"@webiny/ui/List\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst linkStyle = css({\n color: \"var(--mdc-theme-text-primary-on-background)\",\n textDecoration: \"none\",\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n height: \"100%\",\n outline: \"none\",\n paddingLeft: 72,\n \"&:hover\": {\n textDecoration: \"none\"\n }\n});\n\nconst submenuItems = css({\n \".mdc-drawer &.mdc-list-item\": {\n margin: 0,\n paddingLeft: 0\n }\n});\n\nconst submenuList = css({\n \"&.mdc-list\": {\n padding: 0\n }\n});\n\nexport const NothingToShow: React.FC = () => {\n return (\n <List className={submenuList} style={{ opacity: 0.4 }}>\n <ListItem className={submenuItems} ripple={false} disabled>\n <Typography use={\"body2\"} className={linkStyle}>\n Nothing to show.\n </Typography>\n </ListItem>\n </List>\n );\n};\n"],"mappings":";;;;;;;;;AACA;;AACA;;AACA;;AACA;;AAJA;AAMA,IAAMA,SAAS,gBAAG,IAAAC,YAAA,EAAI;EAClBC,KAAK,EAAE,6CADW;EAElBC,cAAc,EAAE,MAFE;EAGlBC,OAAO,EAAE,MAHS;EAIlBC,UAAU,EAAE,QAJM;EAKlBC,KAAK,EAAE,MALW;EAMlBC,MAAM,EAAE,MANU;EAOlBC,OAAO,EAAE,MAPS;EAQlBC,WAAW,EAAE,EARK;EASlB,WAAW;IACPN,cAAc,EAAE;EADT;AATO,CAAJ,qBAAlB;AAcA,IAAMO,YAAY,gBAAG,IAAAT,YAAA,EAAI;EACrB,+BAA+B;IAC3BU,MAAM,EAAE,CADmB;IAE3BF,WAAW,EAAE;EAFc;AADV,CAAJ,wBAArB;AAOA,IAAMG,WAAW,gBAAG,IAAAX,YAAA,EAAI;EACpB,cAAc;IACVY,OAAO,EAAE;EADC;AADM,CAAJ,uBAApB;;AAMO,IAAMC,aAAuB,GAAG,SAA1BA,aAA0B,GAAM;EACzC,oBACI,6BAAC,UAAD;IAAM,SAAS,EAAEF,WAAjB;IAA8B,KAAK,EAAE;MAAEG,OAAO,EAAE;IAAX;EAArC,gBACI,6BAAC,cAAD;IAAU,SAAS,EAAEL,YAArB;IAAmC,MAAM,EAAE,KAA3C;IAAkD,QAAQ;EAA1D,gBACI,6BAAC,sBAAD;IAAY,GAAG,EAAE,OAAjB;IAA0B,SAAS,EAAEV;EAArC,sBADJ,CADJ,CADJ;AASH,CAVM"}
@@ -80,7 +80,7 @@ var FormSettings = function FormSettings(_ref) {
80
80
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
81
81
  icon: pl.icon
82
82
  })), /*#__PURE__*/_react.default.createElement(_FormSettingsStyled.TitleContent, null, /*#__PURE__*/_react.default.createElement(_FormSettingsStyled.ListItemTitle, null, pl.title), /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
83
- use: "subtitle2"
83
+ use: "body2"
84
84
  }, pl.description)));
85
85
  }))), /*#__PURE__*/_react.default.createElement(_SplitView.RightPanel, {
86
86
  span: 7
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","namespace","FormSettings","onExited","cmsEditorFormSettingsPlugins","plugins","byType","useContentModelEditor","data","setData","useSnackbar","showSnackbar","useState","activePlugin","setActivePlugin","Title","listStyle","map","pl","name","listItem","icon","title","description","Bind","submit","form","formData","renderHeaderActions","render","ev"],"sources":["FormSettings.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { OverlayLayout } from \"@webiny/app-admin/components/OverlayLayout\";\nimport { SplitView, LeftPanel, RightPanel } from \"@webiny/app-admin/components/SplitView\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Form } from \"@webiny/form\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport { List, ListItem, ListItemGraphic } from \"@webiny/ui/List\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport * as SF from \"@webiny/app-admin/components/SimpleForm\";\nimport { CmsEditorFormSettingsPlugin } from \"~/types\";\nimport { Title, listItem, ListItemTitle, listStyle, TitleContent } from \"./FormSettingsStyled\";\nimport { useContentModelEditor } from \"~/admin/components/ContentModelEditor/useContentModelEditor\";\n\nconst t = i18n.namespace(\"FormsApp.Editor.FormSettings\");\n\ninterface FormSettingsProps {\n onExited: () => void;\n}\n\nconst FormSettings: React.FC<FormSettingsProps> = ({ onExited }) => {\n const cmsEditorFormSettingsPlugins = plugins.byType<CmsEditorFormSettingsPlugin>(\n \"cms-editor-form-settings\"\n );\n const { data, setData } = useContentModelEditor();\n const { showSnackbar } = useSnackbar();\n\n const [activePlugin, setActivePlugin] = useState(cmsEditorFormSettingsPlugins[0]);\n\n return (\n <OverlayLayout barMiddle={Title} onExited={onExited}>\n <SplitView>\n <LeftPanel span={5}>\n <List twoLine className={listStyle}>\n {cmsEditorFormSettingsPlugins.map(pl => (\n <ListItem\n key={pl.name}\n className={listItem}\n onClick={() => setActivePlugin(pl)}\n >\n <ListItemGraphic>\n <Icon icon={pl.icon} />\n </ListItemGraphic>\n <TitleContent>\n <ListItemTitle>{pl.title}</ListItemTitle>\n <Typography use={\"subtitle2\"}>{pl.description}</Typography>\n </TitleContent>\n </ListItem>\n ))}\n </List>\n </LeftPanel>\n <RightPanel span={7}>\n <Form\n data={data}\n onSubmit={data => {\n setData(() => data);\n onExited();\n showSnackbar(t`Content model settings updated successfully.`);\n }}\n >\n {({ Bind, submit, form, data: formData }) => (\n <SF.SimpleForm>\n <SF.SimpleFormHeader title={activePlugin.title}>\n {typeof activePlugin.renderHeaderActions === \"function\" &&\n activePlugin.renderHeaderActions({\n /**\n * TODO @ts-refactor\n * Figure out type for Bind\n */\n Bind: Bind as any,\n form,\n formData\n })}\n </SF.SimpleFormHeader>\n <SF.SimpleFormContent>\n {activePlugin\n ? activePlugin.render({\n /**\n * TODO @ts-refactor\n * Figure out type for Bind\n */\n Bind: Bind as any,\n form,\n formData\n })\n : null}\n </SF.SimpleFormContent>\n <SF.SimpleFormFooter>\n <ButtonPrimary\n onClick={ev => {\n submit(ev);\n }}\n >{t`Save settings`}</ButtonPrimary>\n </SF.SimpleFormFooter>\n </SF.SimpleForm>\n )}\n </Form>\n </RightPanel>\n </SplitView>\n </OverlayLayout>\n );\n};\n\nexport default FormSettings;\n"],"mappings":"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"}
1
+ {"version":3,"names":["t","i18n","namespace","FormSettings","onExited","cmsEditorFormSettingsPlugins","plugins","byType","useContentModelEditor","data","setData","useSnackbar","showSnackbar","useState","activePlugin","setActivePlugin","Title","listStyle","map","pl","name","listItem","icon","title","description","Bind","submit","form","formData","renderHeaderActions","render","ev"],"sources":["FormSettings.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { plugins } from \"@webiny/plugins\";\nimport { OverlayLayout } from \"@webiny/app-admin/components/OverlayLayout\";\nimport { SplitView, LeftPanel, RightPanel } from \"@webiny/app-admin/components/SplitView\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Form } from \"@webiny/form\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport { List, ListItem, ListItemGraphic } from \"@webiny/ui/List\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport * as SF from \"@webiny/app-admin/components/SimpleForm\";\nimport { CmsEditorFormSettingsPlugin } from \"~/types\";\nimport { Title, listItem, ListItemTitle, listStyle, TitleContent } from \"./FormSettingsStyled\";\nimport { useContentModelEditor } from \"~/admin/components/ContentModelEditor/useContentModelEditor\";\n\nconst t = i18n.namespace(\"FormsApp.Editor.FormSettings\");\n\ninterface FormSettingsProps {\n onExited: () => void;\n}\n\nconst FormSettings: React.FC<FormSettingsProps> = ({ onExited }) => {\n const cmsEditorFormSettingsPlugins = plugins.byType<CmsEditorFormSettingsPlugin>(\n \"cms-editor-form-settings\"\n );\n const { data, setData } = useContentModelEditor();\n const { showSnackbar } = useSnackbar();\n\n const [activePlugin, setActivePlugin] = useState(cmsEditorFormSettingsPlugins[0]);\n\n return (\n <OverlayLayout barMiddle={Title} onExited={onExited}>\n <SplitView>\n <LeftPanel span={5}>\n <List twoLine className={listStyle}>\n {cmsEditorFormSettingsPlugins.map(pl => (\n <ListItem\n key={pl.name}\n className={listItem}\n onClick={() => setActivePlugin(pl)}\n >\n <ListItemGraphic>\n <Icon icon={pl.icon} />\n </ListItemGraphic>\n <TitleContent>\n <ListItemTitle>{pl.title}</ListItemTitle>\n <Typography use={\"body2\"}>{pl.description}</Typography>\n </TitleContent>\n </ListItem>\n ))}\n </List>\n </LeftPanel>\n <RightPanel span={7}>\n <Form\n data={data}\n onSubmit={data => {\n setData(() => data);\n onExited();\n showSnackbar(t`Content model settings updated successfully.`);\n }}\n >\n {({ Bind, submit, form, data: formData }) => (\n <SF.SimpleForm>\n <SF.SimpleFormHeader title={activePlugin.title}>\n {typeof activePlugin.renderHeaderActions === \"function\" &&\n activePlugin.renderHeaderActions({\n /**\n * TODO @ts-refactor\n * Figure out type for Bind\n */\n Bind: Bind as any,\n form,\n formData\n })}\n </SF.SimpleFormHeader>\n <SF.SimpleFormContent>\n {activePlugin\n ? activePlugin.render({\n /**\n * TODO @ts-refactor\n * Figure out type for Bind\n */\n Bind: Bind as any,\n form,\n formData\n })\n : null}\n </SF.SimpleFormContent>\n <SF.SimpleFormFooter>\n <ButtonPrimary\n onClick={ev => {\n submit(ev);\n }}\n >{t`Save settings`}</ButtonPrimary>\n </SF.SimpleFormFooter>\n </SF.SimpleForm>\n )}\n </Form>\n </RightPanel>\n </SplitView>\n </OverlayLayout>\n );\n};\n\nexport default FormSettings;\n"],"mappings":"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"}
@@ -29,7 +29,7 @@ var _Checkbox = require("@webiny/ui/Checkbox");
29
29
 
30
30
  var _StyledComponents = require("./StyledComponents");
31
31
 
32
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14;
32
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
33
33
 
34
34
  var t = _i18n.i18n.ns("app-headless-cms/admin/plugins/permissionRenderer");
35
35
 
@@ -39,12 +39,6 @@ var pwOptions = [{
39
39
  }, {
40
40
  id: "u",
41
41
  name: t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Unpublish"])))
42
- }, {
43
- id: "r",
44
- name: t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Request review"])))
45
- }, {
46
- id: "c",
47
- name: t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Request changes"])))
48
42
  }];
49
43
 
50
44
  var ContentEntryPermission = function ContentEntryPermission(_ref) {
@@ -90,38 +84,38 @@ var ContentEntryPermission = function ContentEntryPermission(_ref) {
90
84
  cb(value);
91
85
  }
92
86
  }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
93
- label: t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Access Scope"]))),
87
+ label: t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Access Scope"]))),
94
88
  disabled: data["contentModelAccessScope"] === "own"
95
89
  }, /*#__PURE__*/_react.default.createElement("option", {
96
90
  value: "full"
97
- }, t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["All entries"])))), endpoints.includes("manage") && /*#__PURE__*/_react.default.createElement("option", {
91
+ }, t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["All entries"])))), endpoints.includes("manage") && /*#__PURE__*/_react.default.createElement("option", {
98
92
  value: "own"
99
- }, t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Only entries created by the user"])))) || /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null))), data["contentModelAccessScope"] === "own" && /*#__PURE__*/_react.default.createElement(_StyledComponents.Note, null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
93
+ }, t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Only entries created by the user"])))) || /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null))), data["contentModelAccessScope"] === "own" && /*#__PURE__*/_react.default.createElement(_StyledComponents.Note, null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
100
94
  use: "caption"
101
95
  }, /*#__PURE__*/_react.default.createElement("span", {
102
96
  className: "highlight"
103
- }, "Content Entry"), "\xA0", t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["access depends upon"]))), "\xA0", /*#__PURE__*/_react.default.createElement("span", {
97
+ }, "Content Entry"), "\xA0", t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["access depends upon"]))), "\xA0", /*#__PURE__*/_react.default.createElement("span", {
104
98
  className: "highlight"
105
99
  }, "Content Model")))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
106
100
  span: 12
107
101
  }, /*#__PURE__*/_react.default.createElement(Bind, {
108
102
  name: "".concat(entity, "RWD")
109
103
  }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
110
- label: t(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["Primary Actions"]))),
104
+ label: t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Primary Actions"]))),
111
105
  disabled: disabledPrimaryActions
112
106
  }, /*#__PURE__*/_react.default.createElement("option", {
113
107
  value: "r"
114
- }, t(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["Read"])))), endpoints.includes("manage") ? /*#__PURE__*/_react.default.createElement("option", {
108
+ }, t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["Read"])))), endpoints.includes("manage") ? /*#__PURE__*/_react.default.createElement("option", {
115
109
  value: "rw"
116
- }, t(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["Read, write"])))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), endpoints.includes("manage") ? /*#__PURE__*/_react.default.createElement("option", {
110
+ }, t(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["Read, write"])))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), endpoints.includes("manage") ? /*#__PURE__*/_react.default.createElement("option", {
117
111
  value: "rwd"
118
- }, t(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2.default)(["Read, write, delete"])))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)))), endpoints.includes("manage") ? /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
112
+ }, t(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["Read, write, delete"])))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)))), endpoints.includes("manage") ? /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
119
113
  span: 12
120
114
  }, /*#__PURE__*/_react.default.createElement(Bind, {
121
115
  name: "".concat(entity, "PW")
122
116
  }, /*#__PURE__*/_react.default.createElement(_Checkbox.CheckboxGroup, {
123
- label: t(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2.default)(["Publishing actions"]))),
124
- description: t(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2.default)(["Publishing-related actions that can be performed on content entries."])))
117
+ label: t(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["Publishing actions"]))),
118
+ description: t(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2.default)(["Publishing-related actions that can be performed on content entries."])))
125
119
  }, function (_ref2) {
126
120
  var getValue = _ref2.getValue,
127
121
  onChange = _ref2.onChange;
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","pwOptions","id","name","ContentEntryPermission","Bind","data","entity","setValue","title","useEffect","get","endpoints","disabledPrimaryActions","undefined","includes","marginTop","padding","paddingBottom","value","cb","getValue","onChange","map"],"sources":["ContentEntryPermission.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport get from \"lodash/get\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\nimport { Note } from \"./StyledComponents\";\nimport { BindComponent } from \"@webiny/form/types\";\nimport { CmsSecurityPermission } from \"~/types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\ninterface PermissionOption {\n id: string;\n name: string;\n}\nconst pwOptions: PermissionOption[] = [\n { id: \"p\", name: t`Publish` },\n { id: \"u\", name: t`Unpublish` },\n { id: \"r\", name: t`Request review` },\n { id: \"c\", name: t`Request changes` }\n];\n\ninterface ContentEntryPermissionProps {\n Bind: BindComponent;\n data: CmsSecurityPermission;\n entity: string;\n setValue: (name: string, value: string) => void;\n title: string;\n}\nexport const ContentEntryPermission: React.FC<ContentEntryPermissionProps> = ({\n Bind,\n data,\n entity,\n setValue,\n title\n}) => {\n // Set \"cms.contentEntry\" access scope to \"own\" if \"cms.contentModel\" === \"own\".\n useEffect(() => {\n if (\n get(data, `contentModelAccessScope`) === \"own\" &&\n get(data, `${entity}AccessScope`) !== \"own\"\n ) {\n setValue(`${entity}AccessScope`, \"own\");\n }\n }, [data]);\n\n const endpoints = data.endpoints || [];\n\n const disabledPrimaryActions =\n [undefined, \"own\", \"no\"].includes(data[`${entity}AccessScope`]) ||\n !endpoints.includes(\"manage\");\n\n return (\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{title}</Typography>\n </Cell>\n <Cell span={12}>\n <Grid style={{ padding: 0, paddingBottom: 24 }}>\n <Cell span={12}>\n <Bind\n defaultValue={\"full\"}\n name={`${entity}AccessScope`}\n beforeChange={(value, cb) => {\n if (value === \"own\") {\n setValue(`${entity}RWD`, \"rwd\");\n }\n cb(value);\n }}\n >\n <Select\n label={t`Access Scope`}\n disabled={data[`contentModelAccessScope`] === \"own\"}\n >\n <option value={\"full\"}>{t`All entries`}</option>\n {(endpoints.includes(\"manage\") && (\n <option\n value={\"own\"}\n >{t`Only entries created by the user`}</option>\n )) || <></>}\n </Select>\n </Bind>\n {data[`contentModelAccessScope`] === \"own\" && (\n <Note>\n <Typography use={\"caption\"}>\n <span className={\"highlight\"}>Content Entry</span>\n &nbsp;{t`access depends upon`}&nbsp;\n <span className={\"highlight\"}>Content Model</span>\n </Typography>\n </Note>\n )}\n </Cell>\n\n <Cell span={12}>\n <Bind name={`${entity}RWD`}>\n <Select\n label={t`Primary Actions`}\n disabled={disabledPrimaryActions}\n >\n <option value={\"r\"}>{t`Read`}</option>\n {endpoints.includes(\"manage\") ? (\n <option value={\"rw\"}>{t`Read, write`}</option>\n ) : (\n <></>\n )}\n {endpoints.includes(\"manage\") ? (\n <option value={\"rwd\"}>{t`Read, write, delete`}</option>\n ) : (\n <></>\n )}\n </Select>\n </Bind>\n </Cell>\n {endpoints.includes(\"manage\") ? (\n <Cell span={12}>\n <Bind name={`${entity}PW`}>\n <CheckboxGroup\n label={t`Publishing actions`}\n description={t`Publishing-related actions that can be performed on content entries.`}\n >\n {({ getValue, onChange }) =>\n pwOptions.map(({ id, name }) => (\n <Checkbox\n disabled={[undefined, \"no\"].includes(\n data[`${entity}AccessScope`]\n )}\n key={id}\n label={name}\n value={getValue(id)}\n onChange={onChange(id)}\n />\n ))\n }\n </CheckboxGroup>\n </Bind>\n </Cell>\n ) : null}\n </Grid>\n </Cell>\n </Grid>\n </Elevation>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["t","i18n","ns","pwOptions","id","name","ContentEntryPermission","Bind","data","entity","setValue","title","useEffect","get","endpoints","disabledPrimaryActions","undefined","includes","marginTop","padding","paddingBottom","value","cb","getValue","onChange","map"],"sources":["ContentEntryPermission.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport get from \"lodash/get\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { Checkbox, CheckboxGroup } from \"@webiny/ui/Checkbox\";\nimport { Note } from \"./StyledComponents\";\nimport { BindComponent } from \"@webiny/form/types\";\nimport { CmsSecurityPermission } from \"~/types\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/permissionRenderer\");\n\ninterface PermissionOption {\n id: string;\n name: string;\n}\nconst pwOptions: PermissionOption[] = [\n { id: \"p\", name: t`Publish` },\n { id: \"u\", name: t`Unpublish` }\n];\n\ninterface ContentEntryPermissionProps {\n Bind: BindComponent;\n data: CmsSecurityPermission;\n entity: string;\n setValue: (name: string, value: string) => void;\n title: string;\n}\nexport const ContentEntryPermission: React.FC<ContentEntryPermissionProps> = ({\n Bind,\n data,\n entity,\n setValue,\n title\n}) => {\n // Set \"cms.contentEntry\" access scope to \"own\" if \"cms.contentModel\" === \"own\".\n useEffect(() => {\n if (\n get(data, `contentModelAccessScope`) === \"own\" &&\n get(data, `${entity}AccessScope`) !== \"own\"\n ) {\n setValue(`${entity}AccessScope`, \"own\");\n }\n }, [data]);\n\n const endpoints = data.endpoints || [];\n\n const disabledPrimaryActions =\n [undefined, \"own\", \"no\"].includes(data[`${entity}AccessScope`]) ||\n !endpoints.includes(\"manage\");\n\n return (\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{title}</Typography>\n </Cell>\n <Cell span={12}>\n <Grid style={{ padding: 0, paddingBottom: 24 }}>\n <Cell span={12}>\n <Bind\n defaultValue={\"full\"}\n name={`${entity}AccessScope`}\n beforeChange={(value, cb) => {\n if (value === \"own\") {\n setValue(`${entity}RWD`, \"rwd\");\n }\n cb(value);\n }}\n >\n <Select\n label={t`Access Scope`}\n disabled={data[`contentModelAccessScope`] === \"own\"}\n >\n <option value={\"full\"}>{t`All entries`}</option>\n {(endpoints.includes(\"manage\") && (\n <option\n value={\"own\"}\n >{t`Only entries created by the user`}</option>\n )) || <></>}\n </Select>\n </Bind>\n {data[`contentModelAccessScope`] === \"own\" && (\n <Note>\n <Typography use={\"caption\"}>\n <span className={\"highlight\"}>Content Entry</span>\n &nbsp;{t`access depends upon`}&nbsp;\n <span className={\"highlight\"}>Content Model</span>\n </Typography>\n </Note>\n )}\n </Cell>\n\n <Cell span={12}>\n <Bind name={`${entity}RWD`}>\n <Select\n label={t`Primary Actions`}\n disabled={disabledPrimaryActions}\n >\n <option value={\"r\"}>{t`Read`}</option>\n {endpoints.includes(\"manage\") ? (\n <option value={\"rw\"}>{t`Read, write`}</option>\n ) : (\n <></>\n )}\n {endpoints.includes(\"manage\") ? (\n <option value={\"rwd\"}>{t`Read, write, delete`}</option>\n ) : (\n <></>\n )}\n </Select>\n </Bind>\n </Cell>\n {endpoints.includes(\"manage\") ? (\n <Cell span={12}>\n <Bind name={`${entity}PW`}>\n <CheckboxGroup\n label={t`Publishing actions`}\n description={t`Publishing-related actions that can be performed on content entries.`}\n >\n {({ getValue, onChange }) =>\n pwOptions.map(({ id, name }) => (\n <Checkbox\n disabled={[undefined, \"no\"].includes(\n data[`${entity}AccessScope`]\n )}\n key={id}\n label={name}\n value={getValue(id)}\n onChange={onChange(id)}\n />\n ))\n }\n </CheckboxGroup>\n </Bind>\n </Cell>\n ) : null}\n </Grid>\n </Cell>\n </Grid>\n </Elevation>\n );\n};\n"],"mappings":"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"}
@@ -206,7 +206,7 @@ var ContentEntriesList = function ContentEntriesList() {
206
206
  }))), /*#__PURE__*/_react.default.createElement(UIList.ListItemMeta, {
207
207
  className: rightAlign
208
208
  }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
209
- use: "subtitle2",
209
+ use: "body2",
210
210
  "data-testid": "ul.list.subtitle"
211
211
  }, _statusLabels.default[item.meta.status], " (v", item.meta.version, ")")));
212
212
  })), loadMoreLoading && /*#__PURE__*/_react.default.createElement(InlineLoaderWrapper, null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {