@webiny/api-headless-cms 5.23.1 → 5.25.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/content/contextSetup.js.map +1 -0
- package/content/graphQLHandlerFactory.js +12 -2
- package/content/graphQLHandlerFactory.js.map +1 -0
- package/content/parameterPlugins.js.map +1 -0
- package/content/plugins/CmsGroupPlugin.js.map +1 -0
- package/content/plugins/CmsModelPlugin.js.map +1 -0
- package/content/plugins/CmsParametersPlugin.d.ts +1 -1
- package/content/plugins/CmsParametersPlugin.js.map +1 -0
- package/content/plugins/buildSchemaPlugins.js.map +1 -0
- package/content/plugins/crud/contentEntry/afterDelete.d.ts +3 -2
- package/content/plugins/crud/contentEntry/afterDelete.js +2 -1
- package/content/plugins/crud/contentEntry/afterDelete.js.map +1 -0
- package/content/plugins/crud/contentEntry/beforeCreate.d.ts +3 -2
- package/content/plugins/crud/contentEntry/beforeCreate.js.map +1 -0
- package/content/plugins/crud/contentEntry/beforeUpdate.d.ts +3 -2
- package/content/plugins/crud/contentEntry/beforeUpdate.js.map +1 -0
- package/content/plugins/crud/contentEntry/entryDataValidation.d.ts +2 -2
- package/content/plugins/crud/contentEntry/entryDataValidation.js +2 -3
- package/content/plugins/crud/contentEntry/entryDataValidation.js.map +1 -0
- package/content/plugins/crud/contentEntry/markLockedFields.d.ts +2 -1
- package/content/plugins/crud/contentEntry/markLockedFields.js +1 -1
- package/content/plugins/crud/contentEntry/markLockedFields.js.map +1 -0
- package/content/plugins/crud/contentEntry/referenceFieldsMapping.js +7 -3
- package/content/plugins/crud/contentEntry/referenceFieldsMapping.js.map +1 -0
- package/content/plugins/crud/contentEntry.crud.d.ts +2 -2
- package/content/plugins/crud/contentEntry.crud.js +24 -13
- package/content/plugins/crud/contentEntry.crud.js.map +1 -0
- package/content/plugins/crud/contentModel/afterCreate.d.ts +3 -2
- package/content/plugins/crud/contentModel/afterCreate.js.map +1 -0
- package/content/plugins/crud/contentModel/afterDelete.d.ts +3 -2
- package/content/plugins/crud/contentModel/afterDelete.js.map +1 -0
- package/content/plugins/crud/contentModel/afterUpdate.d.ts +3 -2
- package/content/plugins/crud/contentModel/afterUpdate.js.map +1 -0
- package/content/plugins/crud/contentModel/beforeCreate.d.ts +5 -4
- package/content/plugins/crud/contentModel/beforeCreate.js +1 -1
- package/content/plugins/crud/contentModel/beforeCreate.js.map +1 -0
- package/content/plugins/crud/contentModel/beforeDelete.d.ts +3 -2
- package/content/plugins/crud/contentModel/beforeDelete.js.map +1 -0
- package/content/plugins/crud/contentModel/beforeUpdate.d.ts +3 -2
- package/content/plugins/crud/contentModel/beforeUpdate.js +77 -0
- package/content/plugins/crud/contentModel/beforeUpdate.js.map +1 -0
- package/content/plugins/crud/contentModel/contentModelManagerFactory.d.ts +2 -2
- package/content/plugins/crud/contentModel/contentModelManagerFactory.js.map +1 -0
- package/content/plugins/crud/contentModel/createFieldModels.js.map +1 -0
- package/content/plugins/crud/contentModel/idValidation.js.map +1 -0
- package/content/plugins/crud/contentModel/models.js +9 -0
- package/content/plugins/crud/contentModel/models.js.map +1 -0
- package/content/plugins/crud/contentModel/validateLayout.js.map +1 -0
- package/content/plugins/crud/contentModel.crud.d.ts +2 -2
- package/content/plugins/crud/contentModel.crud.js +2 -2
- package/content/plugins/crud/contentModel.crud.js.map +1 -0
- package/content/plugins/crud/contentModelGroup/beforeCreate.d.ts +3 -2
- package/content/plugins/crud/contentModelGroup/beforeCreate.js.map +1 -0
- package/content/plugins/crud/contentModelGroup/beforeDelete.d.ts +3 -2
- package/content/plugins/crud/contentModelGroup/beforeDelete.js.map +1 -0
- package/content/plugins/crud/contentModelGroup/beforeUpdate.d.ts +3 -2
- package/content/plugins/crud/contentModelGroup/beforeUpdate.js.map +1 -0
- package/content/plugins/crud/contentModelGroup.crud.d.ts +2 -2
- package/content/plugins/crud/contentModelGroup.crud.js.map +1 -0
- package/content/plugins/crud/index.d.ts +2 -2
- package/content/plugins/crud/index.js.map +1 -0
- package/content/plugins/graphqlFields/boolean.js +2 -6
- package/content/plugins/graphqlFields/boolean.js.map +1 -0
- package/content/plugins/graphqlFields/datetime.js +5 -3
- package/content/plugins/graphqlFields/datetime.js.map +1 -0
- package/content/plugins/graphqlFields/file.js +2 -6
- package/content/plugins/graphqlFields/file.js.map +1 -0
- package/content/plugins/graphqlFields/helpers.d.ts +6 -0
- package/content/plugins/graphqlFields/helpers.js +49 -0
- package/content/plugins/graphqlFields/helpers.js.map +1 -0
- package/content/plugins/graphqlFields/index.js.map +1 -0
- package/content/plugins/graphqlFields/longText.js +2 -6
- package/content/plugins/graphqlFields/longText.js.map +1 -0
- package/content/plugins/graphqlFields/number.js +2 -6
- package/content/plugins/graphqlFields/number.js.map +1 -0
- package/content/plugins/graphqlFields/object.js +20 -18
- package/content/plugins/graphqlFields/object.js.map +1 -0
- package/content/plugins/graphqlFields/ref.js +51 -18
- package/content/plugins/graphqlFields/ref.js.map +1 -0
- package/content/plugins/graphqlFields/richText.js +2 -6
- package/content/plugins/graphqlFields/richText.js.map +1 -0
- package/content/plugins/graphqlFields/text.js +2 -6
- package/content/plugins/graphqlFields/text.js.map +1 -0
- package/content/plugins/internalSecurity/InternalAuthenticationPlugin.d.ts +1 -1
- package/content/plugins/internalSecurity/InternalAuthenticationPlugin.js +1 -0
- package/content/plugins/internalSecurity/InternalAuthenticationPlugin.js.map +1 -0
- package/content/plugins/internalSecurity/InternalAuthorizationPlugin.d.ts +1 -1
- package/content/plugins/internalSecurity/InternalAuthorizationPlugin.js +1 -0
- package/content/plugins/internalSecurity/InternalAuthorizationPlugin.js.map +1 -0
- package/content/plugins/modelManager/DefaultCmsModelManager.d.ts +3 -3
- package/content/plugins/modelManager/DefaultCmsModelManager.js.map +1 -0
- package/content/plugins/modelManager/index.js.map +1 -0
- package/content/plugins/schema/baseSchema.js +1 -0
- package/content/plugins/schema/baseSchema.js.map +1 -0
- package/content/plugins/schema/contentEntries.js +12 -5
- package/content/plugins/schema/contentEntries.js.map +1 -0
- package/content/plugins/schema/contentModelGroups.js +1 -2
- package/content/plugins/schema/contentModelGroups.js.map +1 -0
- package/content/plugins/schema/contentModels.js +2 -3
- package/content/plugins/schema/contentModels.js.map +1 -0
- package/content/plugins/schema/createFieldResolvers.d.ts +8 -7
- package/content/plugins/schema/createFieldResolvers.js +25 -12
- package/content/plugins/schema/createFieldResolvers.js.map +1 -0
- package/content/plugins/schema/createManageResolvers.d.ts +7 -6
- package/content/plugins/schema/createManageResolvers.js.map +1 -0
- package/content/plugins/schema/createManageSDL.d.ts +5 -4
- package/content/plugins/schema/createManageSDL.js.map +1 -0
- package/content/plugins/schema/createPreviewResolvers.d.ts +8 -6
- package/content/plugins/schema/createPreviewResolvers.js.map +1 -0
- package/content/plugins/schema/createReadResolvers.d.ts +8 -6
- package/content/plugins/schema/createReadResolvers.js.map +1 -0
- package/content/plugins/schema/createReadSDL.d.ts +7 -6
- package/content/plugins/schema/createReadSDL.js.map +1 -0
- package/content/plugins/schema/resolvers/commonFieldResolvers.d.ts +1 -1
- package/content/plugins/schema/resolvers/commonFieldResolvers.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveCreate.d.ts +5 -4
- package/content/plugins/schema/resolvers/manage/resolveCreate.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveCreate.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveCreateFrom.d.ts +5 -4
- package/content/plugins/schema/resolvers/manage/resolveCreateFrom.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveCreateFrom.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveDelete.d.ts +6 -1
- package/content/plugins/schema/resolvers/manage/resolveDelete.js +4 -8
- package/content/plugins/schema/resolvers/manage/resolveDelete.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveGet.d.ts +6 -1
- package/content/plugins/schema/resolvers/manage/resolveGet.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveGetByIds.d.ts +6 -1
- package/content/plugins/schema/resolvers/manage/resolveGetByIds.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveGetByIds.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveGetRevisions.d.ts +6 -1
- package/content/plugins/schema/resolvers/manage/resolveGetRevisions.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveGetRevisions.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveList.d.ts +4 -2
- package/content/plugins/schema/resolvers/manage/resolveList.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveList.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolvePublish.d.ts +6 -1
- package/content/plugins/schema/resolvers/manage/resolvePublish.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveRepublish.d.ts +6 -1
- package/content/plugins/schema/resolvers/manage/resolveRepublish.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveRequestChanges.d.ts +3 -2
- package/content/plugins/schema/resolvers/manage/resolveRequestChanges.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveRequestChanges.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveRequestReview.d.ts +3 -2
- package/content/plugins/schema/resolvers/manage/resolveRequestReview.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveRequestReview.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveUnpublish.d.ts +6 -1
- package/content/plugins/schema/resolvers/manage/resolveUnpublish.js.map +1 -0
- package/content/plugins/schema/resolvers/manage/resolveUpdate.d.ts +5 -4
- package/content/plugins/schema/resolvers/manage/resolveUpdate.js +2 -4
- package/content/plugins/schema/resolvers/manage/resolveUpdate.js.map +1 -0
- package/content/plugins/schema/resolvers/preview/resolveGet.d.ts +4 -2
- package/content/plugins/schema/resolvers/preview/resolveGet.js.map +1 -0
- package/content/plugins/schema/resolvers/preview/resolveList.d.ts +4 -2
- package/content/plugins/schema/resolvers/preview/resolveList.js +2 -4
- package/content/plugins/schema/resolvers/preview/resolveList.js.map +1 -0
- package/content/plugins/schema/resolvers/read/resolveGet.d.ts +4 -2
- package/content/plugins/schema/resolvers/read/resolveGet.js.map +1 -0
- package/content/plugins/schema/resolvers/read/resolveList.d.ts +4 -2
- package/content/plugins/schema/resolvers/read/resolveList.js +2 -4
- package/content/plugins/schema/resolvers/read/resolveList.js.map +1 -0
- package/content/plugins/schema/schemaPlugins.js.map +1 -0
- package/content/plugins/storage/StorageTransformPlugin.d.ts +2 -2
- package/content/plugins/storage/StorageTransformPlugin.js.map +1 -0
- package/content/plugins/storage/default.js.map +1 -0
- package/content/plugins/storage/object.js +15 -10
- package/content/plugins/storage/object.js.map +1 -0
- package/content/plugins/utils/createTypeName.d.ts +3 -3
- package/content/plugins/utils/createTypeName.js.map +1 -0
- package/content/plugins/utils/entryStorage.d.ts +2 -2
- package/content/plugins/utils/entryStorage.js +0 -4
- package/content/plugins/utils/entryStorage.js.map +1 -0
- package/content/plugins/utils/getEntryTitle.d.ts +1 -1
- package/content/plugins/utils/getEntryTitle.js +1 -1
- package/content/plugins/utils/getEntryTitle.js.map +1 -0
- package/content/plugins/utils/getSchemaFromFieldPlugins.d.ts +7 -6
- package/content/plugins/utils/getSchemaFromFieldPlugins.js +12 -7
- package/content/plugins/utils/getSchemaFromFieldPlugins.js.map +1 -0
- package/content/plugins/utils/pluralizedTypeName.d.ts +1 -1
- package/content/plugins/utils/pluralizedTypeName.js.map +1 -0
- package/content/plugins/utils/renderFields.d.ts +11 -12
- package/content/plugins/utils/renderFields.js +1 -1
- package/content/plugins/utils/renderFields.js.map +1 -0
- package/content/plugins/utils/renderGetFilterFields.d.ts +5 -4
- package/content/plugins/utils/renderGetFilterFields.js +28 -13
- package/content/plugins/utils/renderGetFilterFields.js.map +1 -0
- package/content/plugins/utils/renderInputFields.d.ts +10 -10
- package/content/plugins/utils/renderInputFields.js.map +1 -0
- package/content/plugins/utils/renderListFilterFields.d.ts +7 -6
- package/content/plugins/utils/renderListFilterFields.js +24 -12
- package/content/plugins/utils/renderListFilterFields.js.map +1 -0
- package/content/plugins/utils/renderSortEnum.js +5 -5
- package/content/plugins/utils/renderSortEnum.js.map +1 -0
- package/content/plugins/validators/dateGte.js +1 -1
- package/content/plugins/validators/dateGte.js.map +1 -0
- package/content/plugins/validators/dateLte.js +1 -1
- package/content/plugins/validators/dateLte.js.map +1 -0
- package/content/plugins/validators/gte.js +3 -1
- package/content/plugins/validators/gte.js.map +1 -0
- package/content/plugins/validators/in.js +3 -1
- package/content/plugins/validators/in.js.map +1 -0
- package/content/plugins/validators/index.js.map +1 -0
- package/content/plugins/validators/lte.js +3 -1
- package/content/plugins/validators/lte.js.map +1 -0
- package/content/plugins/validators/maxLength.js +3 -1
- package/content/plugins/validators/maxLength.js.map +1 -0
- package/content/plugins/validators/minLength.js +3 -1
- package/content/plugins/validators/minLength.js.map +1 -0
- package/content/plugins/validators/pattern.js +2 -2
- package/content/plugins/validators/pattern.js.map +1 -0
- package/content/plugins/validators/patternPlugins/email.js.map +1 -0
- package/content/plugins/validators/patternPlugins/index.js.map +1 -0
- package/content/plugins/validators/patternPlugins/lowerCase.js.map +1 -0
- package/content/plugins/validators/patternPlugins/lowerCaseSpace.js.map +1 -0
- package/content/plugins/validators/patternPlugins/upperCase.js.map +1 -0
- package/content/plugins/validators/patternPlugins/upperCaseSpace.js.map +1 -0
- package/content/plugins/validators/patternPlugins/url.js.map +1 -0
- package/content/plugins/validators/required.js.map +1 -0
- package/content/plugins/validators/timeGte.js +3 -1
- package/content/plugins/validators/timeGte.js.map +1 -0
- package/content/plugins/validators/timeLte.js +3 -1
- package/content/plugins/validators/timeLte.js.map +1 -0
- package/content/plugins/validators/unique.js +1 -0
- package/content/plugins/validators/unique.js.map +1 -0
- package/index.d.ts +3 -3
- package/index.js.map +1 -0
- package/migrateCMSPermissions.d.ts +2 -2
- package/migrateCMSPermissions.js +4 -0
- package/migrateCMSPermissions.js.map +1 -0
- package/package.json +27 -26
- package/plugins/context.js +8 -3
- package/plugins/context.js.map +1 -0
- package/plugins/crud/index.d.ts +2 -2
- package/plugins/crud/index.js.map +1 -0
- package/plugins/crud/settings.crud.d.ts +2 -2
- package/plugins/crud/settings.crud.js.map +1 -0
- package/plugins/crud/system.crud.d.ts +3 -2
- package/plugins/crud/system.crud.js +2 -2
- package/plugins/crud/system.crud.js.map +1 -0
- package/plugins/graphql/system.d.ts +5 -4
- package/plugins/graphql/system.js +5 -3
- package/plugins/graphql/system.js.map +1 -0
- package/plugins/graphql.js +7 -0
- package/plugins/graphql.js.map +1 -0
- package/plugins/upgrades/index.js.map +1 -0
- package/plugins/upgrades/v5.5.0/helpers.js.map +1 -0
- package/plugins/upgrades/v5.5.0/index.js +5 -0
- package/plugins/upgrades/v5.5.0/index.js.map +1 -0
- package/transformers.js.map +1 -0
- package/types.d.ts +70 -40
- package/types.js +6 -0
- package/types.js.map +1 -0
- package/utils.d.ts +14 -16
- package/utils.js.map +1 -0
- package/content/plugins/graphqlFields/requiredField.d.ts +0 -2
- package/content/plugins/graphqlFields/requiredField.js +0 -24
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
exports.renderSortEnum = void 0;
|
|
9
7
|
|
|
10
|
-
var _get = _interopRequireDefault(require("lodash/get"));
|
|
11
|
-
|
|
12
8
|
const renderSortEnum = ({
|
|
13
9
|
model,
|
|
14
10
|
fieldTypePlugins
|
|
@@ -16,7 +12,11 @@ const renderSortEnum = ({
|
|
|
16
12
|
const sorters = [`id_ASC`, `id_DESC`, "savedOn_ASC", "savedOn_DESC", "createdOn_ASC", "createdOn_DESC"];
|
|
17
13
|
|
|
18
14
|
for (const field of model.fields) {
|
|
19
|
-
|
|
15
|
+
if (!fieldTypePlugins[field.type]) {
|
|
16
|
+
continue;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
const isSortable = fieldTypePlugins[field.type].isSortable;
|
|
20
20
|
|
|
21
21
|
if (!isSortable) {
|
|
22
22
|
continue;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["renderSortEnum.ts"],"names":["renderSortEnum","model","fieldTypePlugins","sorters","field","fields","type","isSortable","push","fieldId","join"],"mappings":";;;;;;;AAMO,MAAMA,cAA8B,GAAG,CAAC;AAAEC,EAAAA,KAAF;AAASC,EAAAA;AAAT,CAAD,KAAyC;AACnF,QAAMC,OAAO,GAAG,CACX,QADW,EAEX,SAFW,EAGZ,aAHY,EAIZ,cAJY,EAKZ,eALY,EAMZ,gBANY,CAAhB;;AASA,OAAK,MAAMC,KAAX,IAAoBH,KAAK,CAACI,MAA1B,EAAkC;AAC9B,QAAI,CAACH,gBAAgB,CAACE,KAAK,CAACE,IAAP,CAArB,EAAmC;AAC/B;AACH;;AACD,UAAMC,UAAU,GAAGL,gBAAgB,CAACE,KAAK,CAACE,IAAP,CAAhB,CAA6BC,UAAhD;;AACA,QAAI,CAACA,UAAL,EAAiB;AACb;AACH;;AACDJ,IAAAA,OAAO,CAACK,IAAR,CAAc,GAAEJ,KAAK,CAACK,OAAQ,MAA9B;AACAN,IAAAA,OAAO,CAACK,IAAR,CAAc,GAAEJ,KAAK,CAACK,OAAQ,OAA9B;AACH;;AAED,SAAON,OAAO,CAACO,IAAR,CAAa,IAAb,CAAP;AACH,CAvBM","sourcesContent":["import { CmsFieldTypePlugins, CmsModel } from \"~/types\";\n\ninterface RenderSortEnum {\n (params: { model: CmsModel; fieldTypePlugins: CmsFieldTypePlugins }): string;\n}\n\nexport const renderSortEnum: RenderSortEnum = ({ model, fieldTypePlugins }): string => {\n const sorters = [\n `id_ASC`,\n `id_DESC`,\n \"savedOn_ASC\",\n \"savedOn_DESC\",\n \"createdOn_ASC\",\n \"createdOn_DESC\"\n ];\n\n for (const field of model.fields) {\n if (!fieldTypePlugins[field.type]) {\n continue;\n }\n const isSortable = fieldTypePlugins[field.type].isSortable;\n if (!isSortable) {\n continue;\n }\n sorters.push(`${field.fieldId}_ASC`);\n sorters.push(`${field.fieldId}_DESC`);\n }\n\n return sorters.join(\"\\n\");\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["dateGte.ts"],"names":["type","name","validator","validate","value","gteValue","settings","validation","then","v","catch"],"mappings":";;;;;;;AAAA;;eAGe,OAAqC;AAChDA,EAAAA,IAAI,EAAE,2BAD0C;AAEhDC,EAAAA,IAAI,EAAE,oCAF0C;AAGhDC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,SADC;;AAEP,UAAME,QAAN,CAAe;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAf,EAAqC;AACjC,YAAM;AAAEE,QAAAA,KAAK,EAAEC,QAAT;AAAmBL,QAAAA;AAAnB,UAA4BE,SAAS,CAACI,QAAV,IAAsB,EAAxD;;AACA,UAAI,OAAOD,QAAP,KAAoB,WAAxB,EAAqC;AACjC,eAAO,IAAP;AACH,OAFD,MAEO,IAAIL,IAAI,KAAK,MAAb,EAAqB;AACxB,eAAOO,uBACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AACD,aAAOH,uBACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAhBM;AAHqC,CAArC,C","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport default (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-date-gte\",\n validator: {\n name: \"dateGte\",\n async validate({ value, validator }) {\n const { value: gteValue, type } = validator.settings || {};\n if (typeof gteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation\n .validate(value, `timeGte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return validation\n .validate(value, `dateGte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["dateLte.ts"],"names":["type","name","validator","validate","value","lteValue","settings","validation","then","v","catch"],"mappings":";;;;;;;AAAA;;eAGe,OAAqC;AAChDA,EAAAA,IAAI,EAAE,2BAD0C;AAEhDC,EAAAA,IAAI,EAAE,oCAF0C;AAGhDC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,SADC;;AAEP,UAAME,QAAN,CAAe;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAf,EAAqC;AACjC,YAAM;AAAEE,QAAAA,KAAK,EAAEC,QAAT;AAAmBL,QAAAA;AAAnB,UAA4BE,SAAS,CAACI,QAAV,IAAsB,EAAxD;;AACA,UAAI,OAAOD,QAAP,KAAoB,WAAxB,EAAqC;AACjC,eAAO,IAAP;AACH,OAFD,MAEO,IAAIL,IAAI,KAAK,MAAb,EAAqB;AACxB,eAAOO,uBACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AACD,aAAOH,uBACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAhBM;AAHqC,CAArC,C","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport default (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-date-lte\",\n validator: {\n name: \"dateLte\",\n async validate({ value, validator }) {\n const { value: lteValue, type } = validator.settings || {};\n if (typeof lteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation\n .validate(value, `timeLte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return validation\n .validate(value, `dateLte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"]}
|
|
@@ -17,7 +17,9 @@ const plugin = {
|
|
|
17
17
|
value,
|
|
18
18
|
validator
|
|
19
19
|
}) {
|
|
20
|
-
|
|
20
|
+
var _validator$settings;
|
|
21
|
+
|
|
22
|
+
const gteValue = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.value;
|
|
21
23
|
|
|
22
24
|
if (typeof gteValue !== "undefined") {
|
|
23
25
|
return _validation.validation.validate(value, `gte:${gteValue}`).then(v => v === true).catch(() => false);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["gte.ts"],"names":["plugin","type","name","validator","validate","value","gteValue","settings","validation","then","v","catch","Promise","resolve"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,MAAoC,GAAG;AACzCC,EAAAA,IAAI,EAAE,2BADmC;AAEzCC,EAAAA,IAAI,EAAE,+BAFmC;AAGzCC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,KADC;;AAEPE,IAAAA,QAAQ,CAAC;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAD,EAAuB;AAAA;;AAC3B,YAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAb,wDAAG,oBAAoBF,KAArC;;AACA,UAAI,OAAOC,QAAP,KAAoB,WAAxB,EAAqC;AACjC,eAAOE,uBACFJ,QADE,CACOC,KADP,EACe,OAAMC,QAAS,EAD9B,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AACD,aAAOC,OAAO,CAACC,OAAR,CAAgB,IAAhB,CAAP;AACH;;AAXM;AAH8B,CAA7C;eAkBeb,M","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldValidatorPlugin = {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-gte\",\n validator: {\n name: \"gte\",\n validate({ value, validator }) {\n const gteValue = validator.settings?.value;\n if (typeof gteValue !== \"undefined\") {\n return validation\n .validate(value, `gte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return Promise.resolve(true);\n }\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -17,7 +17,9 @@ const plugin = {
|
|
|
17
17
|
value,
|
|
18
18
|
validator
|
|
19
19
|
}) {
|
|
20
|
-
|
|
20
|
+
var _validator$settings;
|
|
21
|
+
|
|
22
|
+
const values = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.values;
|
|
21
23
|
|
|
22
24
|
if (Array.isArray(values)) {
|
|
23
25
|
return _validation.validation.validate(value, `in:${values.join(":")}`).then(v => v === true).catch(() => false);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["in.ts"],"names":["plugin","type","name","validator","validate","value","values","settings","Array","isArray","validation","join","then","v","catch","Promise","resolve"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,MAAoC,GAAG;AACzCC,EAAAA,IAAI,EAAE,2BADmC;AAEzCC,EAAAA,IAAI,EAAE,8BAFmC;AAGzCC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,IADC;;AAEPE,IAAAA,QAAQ,CAAC;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAD,EAAuB;AAAA;;AAC3B,YAAMG,MAAM,0BAAGH,SAAS,CAACI,QAAb,wDAAG,oBAAoBD,MAAnC;;AACA,UAAIE,KAAK,CAACC,OAAN,CAAcH,MAAd,CAAJ,EAA2B;AACvB,eAAOI,uBACFN,QADE,CACOC,KADP,EACe,MAAKC,MAAM,CAACK,IAAP,CAAY,GAAZ,CAAiB,EADrC,EAEFC,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAED,aAAOC,OAAO,CAACC,OAAR,CAAgB,IAAhB,CAAP;AACH;;AAZM;AAH8B,CAA7C;eAmBehB,M","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldValidatorPlugin = {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-in\",\n validator: {\n name: \"in\",\n validate({ value, validator }) {\n const values = validator.settings?.values;\n if (Array.isArray(values)) {\n return validation\n .validate(value, `in:${values.join(\":\")}`)\n .then(v => v === true)\n .catch(() => false);\n }\n\n return Promise.resolve(true);\n }\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["gte","inValidator","lte","pattern","required","minLength","maxLength","patternPlugins"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;eAEe,MAAM,CACjBA,YADiB,EAEjBC,WAFiB,EAGjBC,YAHiB,EAIjBC,gBAJiB,EAKjBC,iBALiB,EAMjBC,kBANiB,EAOjBC,kBAPiB,EAQjBC,uBARiB,EASjB,uBATiB,EAUjB,uBAViB,EAWjB,uBAXiB,EAYjB,uBAZiB,EAajB,sBAbiB,C","sourcesContent":["import gte from \"./gte\";\nimport inValidator from \"./in\";\nimport lte from \"./lte\";\nimport maxLength from \"./maxLength\";\nimport minLength from \"./minLength\";\nimport pattern from \"./pattern\";\nimport required from \"./required\";\nimport patternPlugins from \"./patternPlugins\";\nimport dateLte from \"./dateLte\";\nimport dateGte from \"./dateGte\";\nimport timeLte from \"./timeLte\";\nimport timeGte from \"./timeGte\";\nimport unique from \"./unique\";\n\nexport default () => [\n gte,\n inValidator,\n lte,\n pattern,\n required,\n minLength,\n maxLength,\n patternPlugins,\n dateLte(),\n dateGte(),\n timeLte(),\n timeGte(),\n unique()\n];\n"]}
|
|
@@ -17,7 +17,9 @@ const plugin = {
|
|
|
17
17
|
value,
|
|
18
18
|
validator
|
|
19
19
|
}) {
|
|
20
|
-
|
|
20
|
+
var _validator$settings;
|
|
21
|
+
|
|
22
|
+
const lteValue = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.value;
|
|
21
23
|
|
|
22
24
|
if (typeof lteValue !== "undefined") {
|
|
23
25
|
return _validation.validation.validate(value, `lte:${lteValue}`).then(v => v === true).catch(() => false);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["lte.ts"],"names":["plugin","type","name","validator","validate","value","lteValue","settings","validation","then","v","catch","Promise","resolve"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,MAAoC,GAAG;AACzCC,EAAAA,IAAI,EAAE,2BADmC;AAEzCC,EAAAA,IAAI,EAAE,+BAFmC;AAGzCC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,KADC;;AAEPE,IAAAA,QAAQ,CAAC;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAD,EAAuB;AAAA;;AAC3B,YAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAb,wDAAG,oBAAoBF,KAArC;;AACA,UAAI,OAAOC,QAAP,KAAoB,WAAxB,EAAqC;AACjC,eAAOE,uBACFJ,QADE,CACOC,KADP,EACe,OAAMC,QAAS,EAD9B,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AACD,aAAOC,OAAO,CAACC,OAAR,CAAgB,IAAhB,CAAP;AACH;;AAXM;AAH8B,CAA7C;eAkBeb,M","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldValidatorPlugin = {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-lte\",\n validator: {\n name: \"lte\",\n validate({ value, validator }) {\n const lteValue = validator.settings?.value;\n if (typeof lteValue !== \"undefined\") {\n return validation\n .validate(value, `lte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return Promise.resolve(true);\n }\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -17,7 +17,9 @@ const plugin = {
|
|
|
17
17
|
value,
|
|
18
18
|
validator
|
|
19
19
|
}) {
|
|
20
|
-
|
|
20
|
+
var _validator$settings;
|
|
21
|
+
|
|
22
|
+
const maxLengthValue = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.value;
|
|
21
23
|
|
|
22
24
|
if (typeof maxLengthValue !== "undefined") {
|
|
23
25
|
return _validation.validation.validate(value, `maxLength:${maxLengthValue}`).then(v => v === true).catch(() => false);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["maxLength.ts"],"names":["plugin","type","name","validator","validate","value","maxLengthValue","settings","validation","then","v","catch","Promise","resolve"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,MAAoC,GAAG;AACzCC,EAAAA,IAAI,EAAE,2BADmC;AAEzCC,EAAAA,IAAI,EAAE,sCAFmC;AAGzCC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,WADC;;AAEPE,IAAAA,QAAQ,CAAC;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAD,EAAuB;AAAA;;AAC3B,YAAMG,cAAc,0BAAGH,SAAS,CAACI,QAAb,wDAAG,oBAAoBF,KAA3C;;AACA,UAAI,OAAOC,cAAP,KAA0B,WAA9B,EAA2C;AACvC,eAAOE,uBACFJ,QADE,CACOC,KADP,EACe,aAAYC,cAAe,EAD1C,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAED,aAAOC,OAAO,CAACC,OAAR,CAAgB,IAAhB,CAAP;AACH;;AAZM;AAH8B,CAA7C;eAmBeb,M","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldValidatorPlugin = {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-max-length\",\n validator: {\n name: \"maxLength\",\n validate({ value, validator }) {\n const maxLengthValue = validator.settings?.value;\n if (typeof maxLengthValue !== \"undefined\") {\n return validation\n .validate(value, `maxLength:${maxLengthValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n\n return Promise.resolve(true);\n }\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -17,7 +17,9 @@ const plugin = {
|
|
|
17
17
|
value,
|
|
18
18
|
validator
|
|
19
19
|
}) {
|
|
20
|
-
|
|
20
|
+
var _validator$settings;
|
|
21
|
+
|
|
22
|
+
const minLengthValue = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.value;
|
|
21
23
|
|
|
22
24
|
if (typeof minLengthValue !== "undefined") {
|
|
23
25
|
return _validation.validation.validate(value, `minLength:${minLengthValue}`).then(v => v === true).catch(() => false);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["minLength.ts"],"names":["plugin","type","name","validator","validate","value","minLengthValue","settings","validation","then","v","catch","Promise","resolve"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,MAAoC,GAAG;AACzCC,EAAAA,IAAI,EAAE,2BADmC;AAEzCC,EAAAA,IAAI,EAAE,sCAFmC;AAGzCC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,WADC;;AAEPE,IAAAA,QAAQ,CAAC;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAD,EAAuB;AAAA;;AAC3B,YAAMG,cAAc,0BAAGH,SAAS,CAACI,QAAb,wDAAG,oBAAoBF,KAA3C;;AACA,UAAI,OAAOC,cAAP,KAA0B,WAA9B,EAA2C;AACvC,eAAOE,uBACFJ,QADE,CACOC,KADP,EACe,aAAYC,cAAe,EAD1C,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAED,aAAOC,OAAO,CAACC,OAAR,CAAgB,IAAhB,CAAP;AACH;;AAZM;AAH8B,CAA7C;eAmBeb,M","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldValidatorPlugin = {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-min-length\",\n validator: {\n name: \"minLength\",\n validate({ value, validator }) {\n const minLengthValue = validator.settings?.value;\n if (typeof minLengthValue !== \"undefined\") {\n return validation\n .validate(value, `minLength:${minLengthValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n\n return Promise.resolve(true);\n }\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -24,10 +24,10 @@ const plugin = {
|
|
|
24
24
|
} = validator;
|
|
25
25
|
let pattern;
|
|
26
26
|
|
|
27
|
-
if (settings.preset === "custom") {
|
|
27
|
+
if ((settings === null || settings === void 0 ? void 0 : settings.preset) === "custom") {
|
|
28
28
|
pattern = settings;
|
|
29
29
|
} else {
|
|
30
|
-
const patternPlugin = context.plugins.byType("cms-model-field-validator-pattern").find(item => item.pattern.name === settings.preset);
|
|
30
|
+
const patternPlugin = context.plugins.byType("cms-model-field-validator-pattern").find(item => item.pattern.name === (settings === null || settings === void 0 ? void 0 : settings.preset));
|
|
31
31
|
|
|
32
32
|
if (patternPlugin) {
|
|
33
33
|
pattern = patternPlugin.pattern;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["pattern.ts"],"names":["plugin","type","name","validator","validate","value","context","settings","pattern","preset","patternPlugin","plugins","byType","find","item","RegExp","regex","flags","test"],"mappings":";;;;;;AAEA,MAAMA,MAAoC,GAAG;AACzCC,EAAAA,IAAI,EAAE,2BADmC;AAEzCC,EAAAA,IAAI,EAAE,mCAFmC;AAGzCC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,SADC;;AAEP,UAAME,QAAN,CAAe;AAAEC,MAAAA,KAAF;AAASF,MAAAA,SAAT;AAAoBG,MAAAA;AAApB,KAAf,EAA8C;AAC1C,UAAI,CAACD,KAAL,EAAY;AACR,eAAO,IAAP;AACH;;AAED,YAAM;AAAEE,QAAAA;AAAF,UAAeJ,SAArB;AAEA,UAAIK,OAAJ;;AACA,UAAI,CAAAD,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAEE,MAAV,MAAqB,QAAzB,EAAmC;AAC/BD,QAAAA,OAAO,GAAGD,QAAV;AACH,OAFD,MAEO;AACH,cAAMG,aAAa,GAAGJ,OAAO,CAACK,OAAR,CACjBC,MADiB,CAEd,mCAFc,EAIjBC,IAJiB,CAIZC,IAAI,IAAIA,IAAI,CAACN,OAAL,CAAaN,IAAb,MAAsBK,QAAtB,aAAsBA,QAAtB,uBAAsBA,QAAQ,CAAEE,MAAhC,CAJI,CAAtB;;AAMA,YAAIC,aAAJ,EAAmB;AACfF,UAAAA,OAAO,GAAGE,aAAa,CAACF,OAAxB;AACH;AACJ;;AAED,UAAI,CAACA,OAAL,EAAc;AACV,eAAO,IAAP;AACH;;AAED,aAAO,IAAIO,MAAJ,CAAWP,OAAO,CAACQ,KAAnB,EAA0BR,OAAO,CAACS,KAAlC,EAAyCC,IAAzC,CAA8Cb,KAA9C,CAAP;AACH;;AA7BM;AAH8B,CAA7C;eAoCeL,M","sourcesContent":["import { CmsModelFieldPatternValidatorPlugin, CmsModelFieldValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldValidatorPlugin = {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-pattern\",\n validator: {\n name: \"pattern\",\n async validate({ value, validator, context }) {\n if (!value) {\n return true;\n }\n\n const { settings } = validator;\n\n let pattern;\n if (settings?.preset === \"custom\") {\n pattern = settings;\n } else {\n const patternPlugin = context.plugins\n .byType<CmsModelFieldPatternValidatorPlugin>(\n \"cms-model-field-validator-pattern\"\n )\n .find(item => item.pattern.name === settings?.preset);\n\n if (patternPlugin) {\n pattern = patternPlugin.pattern;\n }\n }\n\n if (!pattern) {\n return true;\n }\n\n return new RegExp(pattern.regex, pattern.flags).test(value);\n }\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["email.ts"],"names":["plugin","type","name","pattern","regex","flags"],"mappings":";;;;;;AAEA,MAAMA,MAA2C,GAAG;AAChDC,EAAAA,IAAI,EAAE,mCAD0C;AAEhDC,EAAAA,IAAI,EAAE,yCAF0C;AAGhDC,EAAAA,OAAO,EAAE;AACLD,IAAAA,IAAI,EAAE,OADD;AAELE,IAAAA,KAAK,EAAG,oCAFH;AAGLC,IAAAA,KAAK,EAAE;AAHF;AAHuC,CAApD;eAUeL,M","sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldPatternValidatorPlugin = {\n type: \"cms-model-field-validator-pattern\",\n name: \"cms-model-field-validator-pattern-email\",\n pattern: {\n name: \"email\",\n regex: `^\\\\w[\\\\w.-]*@([\\\\w-]+\\\\.)+[\\\\w-]+$`,\n flags: \"i\"\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["email","url","lowerCase","upperCase","lowerCaseSpace","upperCaseSpace"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;eAEe,CAACA,cAAD,EAAQC,YAAR,EAAaC,kBAAb,EAAwBC,kBAAxB,EAAmCC,uBAAnC,EAAmDC,uBAAnD,C","sourcesContent":["import email from \"./email\";\nimport url from \"./url\";\nimport lowerCase from \"./lowerCase\";\nimport upperCase from \"./upperCase\";\nimport lowerCaseSpace from \"./lowerCaseSpace\";\nimport upperCaseSpace from \"./upperCaseSpace\";\n\nexport default [email, url, lowerCase, upperCase, lowerCaseSpace, upperCaseSpace];\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["lowerCase.ts"],"names":["plugin","type","name","pattern","regex","flags"],"mappings":";;;;;;AAEA,MAAMA,MAA2C,GAAG;AAChDC,EAAAA,IAAI,EAAE,mCAD0C;AAEhDC,EAAAA,IAAI,EAAE,8CAF0C;AAGhDC,EAAAA,OAAO,EAAE;AACLD,IAAAA,IAAI,EAAE,WADD;AAELE,IAAAA,KAAK,EAAG,YAFH;AAGLC,IAAAA,KAAK,EAAE;AAHF;AAHuC,CAApD;eAUeL,M","sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldPatternValidatorPlugin = {\n type: \"cms-model-field-validator-pattern\",\n name: \"cms-model-field-validator-pattern-lower-case\",\n pattern: {\n name: \"lowerCase\",\n regex: `^([a-z]*)$`,\n flags: \"\"\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["lowerCaseSpace.ts"],"names":["plugin","type","name","pattern","regex","flags"],"mappings":";;;;;;AAEA,MAAMA,MAA2C,GAAG;AAChDC,EAAAA,IAAI,EAAE,mCAD0C;AAEhDC,EAAAA,IAAI,EAAE,oDAF0C;AAGhDC,EAAAA,OAAO,EAAE;AACLD,IAAAA,IAAI,EAAE,gBADD;AAELE,IAAAA,KAAK,EAAG,eAFH;AAGLC,IAAAA,KAAK,EAAE;AAHF;AAHuC,CAApD;eAUeL,M","sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldPatternValidatorPlugin = {\n type: \"cms-model-field-validator-pattern\",\n name: \"cms-model-field-validator-pattern-lower-case-space\",\n pattern: {\n name: \"lowerCaseSpace\",\n regex: `^([a-z\\\\s]+)$`,\n flags: \"\"\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["upperCase.ts"],"names":["plugin","type","name","pattern","regex","flags"],"mappings":";;;;;;AAEA,MAAMA,MAA2C,GAAG;AAChDC,EAAAA,IAAI,EAAE,mCAD0C;AAEhDC,EAAAA,IAAI,EAAE,8CAF0C;AAGhDC,EAAAA,OAAO,EAAE;AACLD,IAAAA,IAAI,EAAE,WADD;AAELE,IAAAA,KAAK,EAAG,YAFH;AAGLC,IAAAA,KAAK,EAAE;AAHF;AAHuC,CAApD;eAUeL,M","sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldPatternValidatorPlugin = {\n type: \"cms-model-field-validator-pattern\",\n name: \"cms-model-field-validator-pattern-upper-case\",\n pattern: {\n name: \"upperCase\",\n regex: `^([A-Z]*)$`,\n flags: \"\"\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["upperCaseSpace.ts"],"names":["plugin","type","name","pattern","regex","flags"],"mappings":";;;;;;AAEA,MAAMA,MAA2C,GAAG;AAChDC,EAAAA,IAAI,EAAE,mCAD0C;AAEhDC,EAAAA,IAAI,EAAE,oDAF0C;AAGhDC,EAAAA,OAAO,EAAE;AACLD,IAAAA,IAAI,EAAE,gBADD;AAELE,IAAAA,KAAK,EAAG,eAFH;AAGLC,IAAAA,KAAK,EAAE;AAHF;AAHuC,CAApD;eAUeL,M","sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldPatternValidatorPlugin = {\n type: \"cms-model-field-validator-pattern\",\n name: \"cms-model-field-validator-pattern-upper-case-space\",\n pattern: {\n name: \"upperCaseSpace\",\n regex: `^([A-Z\\\\s]+)$`,\n flags: \"\"\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["url.ts"],"names":["plugin","type","name","pattern","regex","flags"],"mappings":";;;;;;AAEA,MAAMA,MAA2C,GAAG;AAChDC,EAAAA,IAAI,EAAE,mCAD0C;AAEhDC,EAAAA,IAAI,EAAE,uCAF0C;AAGhDC,EAAAA,OAAO,EAAE;AACLD,IAAAA,IAAI,EAAE,KADD;AAELE,IAAAA,KAAK,EAAE,+FAFF;AAGLC,IAAAA,KAAK,EAAE;AAHF;AAHuC,CAApD;eAUeL,M","sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldPatternValidatorPlugin = {\n type: \"cms-model-field-validator-pattern\",\n name: \"cms-model-field-validator-pattern-url\",\n pattern: {\n name: \"url\",\n regex: \"^(ftp|http|https):\\\\/\\\\/(\\\\w+:{0,1}\\\\w*@)?(\\\\S+)(:[0-9]+)?(\\\\/|\\\\/([\\\\w#!:.?+=&%@!\\\\-\\\\/]))?$\",\n flags: \"i\"\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["required.ts"],"names":["plugin","type","name","validator","validate","value","validation","then","v","catch"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,MAAoC,GAAG;AACzCC,EAAAA,IAAI,EAAE,2BADmC;AAEzCC,EAAAA,IAAI,EAAE,oCAFmC;AAGzCC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,UADC;;AAEPE,IAAAA,QAAQ,CAAC;AAAEC,MAAAA;AAAF,KAAD,EAAY;AAChB,aAAOC,uBACFF,QADE,CACOC,KADP,EACc,UADd,EAEFE,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAPM;AAH8B,CAA7C;eAceT,M","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nconst plugin: CmsModelFieldValidatorPlugin = {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-required\",\n validator: {\n name: \"required\",\n validate({ value }) {\n return validation\n .validate(value, \"required\")\n .then(v => v === true)\n .catch(() => false);\n }\n }\n};\n\nexport default plugin;\n"]}
|
|
@@ -17,7 +17,9 @@ var _default = () => ({
|
|
|
17
17
|
value,
|
|
18
18
|
validator
|
|
19
19
|
}) {
|
|
20
|
-
|
|
20
|
+
var _validator$settings;
|
|
21
|
+
|
|
22
|
+
const gteValue = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.value;
|
|
21
23
|
|
|
22
24
|
if (typeof gteValue === "undefined") {
|
|
23
25
|
return true;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["timeGte.ts"],"names":["type","name","validator","validate","value","gteValue","settings","validation","then","v","catch"],"mappings":";;;;;;;AAAA;;eAGe,OAAqC;AAChDA,EAAAA,IAAI,EAAE,2BAD0C;AAEhDC,EAAAA,IAAI,EAAE,oCAF0C;AAGhDC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,SADC;;AAEP,UAAME,QAAN,CAAe;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAf,EAAqC;AAAA;;AACjC,YAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAb,wDAAG,oBAAoBF,KAArC;;AACA,UAAI,OAAOC,QAAP,KAAoB,WAAxB,EAAqC;AACjC,eAAO,IAAP;AACH;;AACD,aAAOE,uBACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAXM;AAHqC,CAArC,C","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport default (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-time-gte\",\n validator: {\n name: \"timeGte\",\n async validate({ value, validator }) {\n const gteValue = validator.settings?.value;\n if (typeof gteValue === \"undefined\") {\n return true;\n }\n return validation\n .validate(value, `timeGte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"]}
|
|
@@ -17,7 +17,9 @@ var _default = () => ({
|
|
|
17
17
|
value,
|
|
18
18
|
validator
|
|
19
19
|
}) {
|
|
20
|
-
|
|
20
|
+
var _validator$settings;
|
|
21
|
+
|
|
22
|
+
const lteValue = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.value;
|
|
21
23
|
|
|
22
24
|
if (typeof lteValue === "undefined") {
|
|
23
25
|
return true;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["timeLte.ts"],"names":["type","name","validator","validate","value","lteValue","settings","validation","then","v","catch"],"mappings":";;;;;;;AAAA;;eAGe,OAAqC;AAChDA,EAAAA,IAAI,EAAE,2BAD0C;AAEhDC,EAAAA,IAAI,EAAE,oCAF0C;AAGhDC,EAAAA,SAAS,EAAE;AACPD,IAAAA,IAAI,EAAE,SADC;;AAEP,UAAME,QAAN,CAAe;AAAEC,MAAAA,KAAF;AAASF,MAAAA;AAAT,KAAf,EAAqC;AAAA;;AACjC,YAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAb,wDAAG,oBAAoBF,KAArC;;AACA,UAAI,OAAOC,QAAP,KAAoB,WAAxB,EAAqC;AACjC,eAAO,IAAP;AACH;;AACD,aAAOE,uBACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;AAIH;;AAXM;AAHqC,CAArC,C","sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport default (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-time-lte\",\n validator: {\n name: \"timeLte\",\n async validate({ value, validator }) {\n const lteValue = validator.settings?.value;\n if (typeof lteValue === \"undefined\") {\n return true;\n }\n return validation\n .validate(value, `timeLte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["unique.ts"],"names":["type","name","validator","validate","field","value","initialValue","context","model","entry","manager","cms","getModelManager","trim","items","listLatest","where","entryId_not","entryId","undefined","tenant","fieldId","limit","length","ex","WebinyError"],"mappings":";;;;;;;;;AAAA;;AAGA;AACA;AACA;AACA;eACe,MAAoC;AAC/C,SAAO;AACHA,IAAAA,IAAI,EAAE,2BADH;AAEHC,IAAAA,IAAI,EAAE,kCAFH;AAGHC,IAAAA,SAAS,EAAE;AACPD,MAAAA,IAAI,EAAE,QADC;AAEPE,MAAAA,QAAQ,EAAE,OAAO;AAAEC,QAAAA,KAAF;AAASC,QAAAA,KAAK,EAAEC,YAAhB;AAA8BC,QAAAA,OAA9B;AAAuCC,QAAAA,KAAvC;AAA8CC,QAAAA;AAA9C,OAAP,KAAiE;AACvE,cAAMC,OAAO,GAAG,MAAMH,OAAO,CAACI,GAAR,CAAYC,eAAZ,CAA4BJ,KAA5B,CAAtB;AACA;AAChB;AACA;AACA;;AACgB,cAAMH,KAAK,GAAG,CAACC,YAAY,IAAI,EAAjB,EAAqBO,IAArB,EAAd;;AACA,YAAI,CAACR,KAAL,EAAY;AACR,iBAAO,IAAP;AACH;;AACD,YAAI;AACA,gBAAM,CAACS,KAAD,IAAU,MAAMJ,OAAO,CAACK,UAAR,CAAmB;AACrCC,YAAAA,KAAK,EAAE;AACHC,cAAAA,WAAW,EAAER,KAAK,GAAGA,KAAK,CAACS,OAAT,GAAmBC,SADlC;AAEHC,cAAAA,MAAM,EAAEZ,KAAK,CAACY,MAFX;AAGH,eAAChB,KAAK,CAACiB,OAAP,GAAiBhB;AAHd,aAD8B;AAMrCiB,YAAAA,KAAK,EAAE;AAN8B,WAAnB,CAAtB;AAQA,iBAAOR,KAAK,CAACS,MAAN,KAAiB,CAAxB;AACH,SAVD,CAUE,OAAOC,EAAP,EAAW;AACT,gBAAM,IAAIC,cAAJ,CACF,oDADE,EAEF,oBAFE,EAGF;AACIrB,YAAAA,KADJ;AAEIC,YAAAA,KAFJ;AAGIG,YAAAA;AAHJ,WAHE,CAAN;AASH;AACJ;AAjCM;AAHR,GAAP;AAuCH,C","sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\n/**\n * Validation if the field value is unique.\n * Be aware of using this in DynamoDB only environment as all records will be loaded to check for the unique value.\n */\nexport default (): CmsModelFieldValidatorPlugin => {\n return {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-unique\",\n validator: {\n name: \"unique\",\n validate: async ({ field, value: initialValue, context, model, entry }) => {\n const manager = await context.cms.getModelManager(model);\n /**\n * If there is no value passed, we are assuming that user does not want any value to be validated.\n * If user needs something to passed into a unique field, they must add \"required\" validator.\n */\n const value = (initialValue || \"\").trim();\n if (!value) {\n return true;\n }\n try {\n const [items] = await manager.listLatest({\n where: {\n entryId_not: entry ? entry.entryId : undefined,\n tenant: model.tenant,\n [field.fieldId]: value\n },\n limit: 1\n });\n return items.length === 0;\n } catch (ex) {\n throw new WebinyError(\n \"Error while checking if the field value is unique.\",\n \"UNIQUE_CHECK_ERROR\",\n {\n field,\n value,\n model\n }\n );\n }\n }\n }\n };\n};\n"]}
|
package/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { CreateAdminCrudsParams } from "./plugins/crud";
|
|
2
|
+
import { CreateContentCrudsParams } from "./content/plugins/crud";
|
|
3
3
|
import { CreateGraphQLHandlerOptions } from "./content/graphQLHandlerFactory";
|
|
4
4
|
import { StorageTransformPlugin } from "./content/plugins/storage/StorageTransformPlugin";
|
|
5
5
|
import { CreateParametersPluginsParams } from "./content/parameterPlugins";
|
|
@@ -13,5 +13,5 @@ export interface ContentContextParams extends CreateContentCrudsParams, CreatePa
|
|
|
13
13
|
}
|
|
14
14
|
export declare const createContentHeadlessCmsContext: (params: ContentContextParams) => (import("./types").ModelManagerPlugin | import("./types").CmsModelFieldToGraphQLPlugin[] | StorageTransformPlugin<any, any> | import("@webiny/handler").ContextPlugin<import("./types").CmsContext> | CmsParametersPlugin[] | (import("./types").CmsModelFieldValidatorPlugin | import("./types").CmsModelFieldPatternValidatorPlugin[])[])[];
|
|
15
15
|
export declare type ContentGraphQLParams = CreateGraphQLHandlerOptions;
|
|
16
|
-
export declare const createContentHeadlessCmsGraphQL: (params?:
|
|
16
|
+
export declare const createContentHeadlessCmsGraphQL: (params?: CreateGraphQLHandlerOptions | undefined) => import("@webiny/plugins/types").PluginCollection;
|
|
17
17
|
export { StorageTransformPlugin, CmsParametersPlugin, CmsGroupPlugin, CmsModelPlugin };
|
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["createAdminHeadlessCmsContext","params","createAdminHeadlessCmsGraphQL","createContentHeadlessCmsContext","createContentHeadlessCmsGraphQL"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AAIO,MAAMA,6BAA6B,GAAIC,MAAD,IAAgC;AACzE,SAAO,CAAC,uBAAD,EAAY,4BAAiBA,MAAjB,CAAZ,EAAsC,wBAAtC,CAAP;AACH,CAFM;;;;AAIA,MAAMC,6BAA6B,GAAG,MAAM;AAC/C,SAAO,mCAAP;AACH,CAFM;;;;AAOA,MAAMC,+BAA+B,GAAIF,MAAD,IAAkC;AAC7E,SAAO,CACH,+CAAwBA,MAAxB,CADG,EAEH,4BAFG,EAGH,4BAHG,EAIH,+BAAmBA,MAAnB,CAJG,EAKH,6BALG,EAMH,0BANG,EAOH,uBAPG,EAQH,sBARG,CASH;AACA;AAVG,GAAP;AAYH,CAbM;;;;AAeA,MAAMG,+BAA+B,GAAIH,MAAD,IAAmC;AAC9E,SAAO,kDAAsBA,MAAtB,CAAP;AACH,CAFM","sourcesContent":["import { createGraphQLPlugin } from \"~/plugins/graphql\";\nimport { createAdminCruds, CreateAdminCrudsParams } from \"~/plugins/crud\";\nimport context from \"~/plugins/context\";\nimport upgrades from \"~/plugins/upgrades\";\nimport contextSetup from \"~/content/contextSetup\";\nimport modelManager from \"~/content/plugins/modelManager\";\nimport { createContentCruds, CreateContentCrudsParams } from \"~/content/plugins/crud\";\nimport fieldTypePlugins from \"~/content/plugins/graphqlFields\";\nimport validatorsPlugins from \"~/content/plugins/validators\";\nimport defaultStoragePlugin from \"~/content/plugins/storage/default\";\nimport objectStoragePlugin from \"~/content/plugins/storage/object\";\nimport {\n CreateGraphQLHandlerOptions,\n graphQLHandlerFactory\n} from \"~/content/graphQLHandlerFactory\";\nimport { StorageTransformPlugin } from \"~/content/plugins/storage/StorageTransformPlugin\";\nimport { createParametersPlugins, CreateParametersPluginsParams } from \"~/content/parameterPlugins\";\nimport { CmsParametersPlugin } from \"~/content/plugins/CmsParametersPlugin\";\nimport { CmsGroupPlugin } from \"~/content/plugins/CmsGroupPlugin\";\nimport { CmsModelPlugin } from \"~/content/plugins/CmsModelPlugin\";\n\nexport type AdminContextParams = CreateAdminCrudsParams;\n\nexport const createAdminHeadlessCmsContext = (params: AdminContextParams) => {\n return [context(), createAdminCruds(params), upgrades()];\n};\n\nexport const createAdminHeadlessCmsGraphQL = () => {\n return createGraphQLPlugin();\n};\n\nexport interface ContentContextParams\n extends CreateContentCrudsParams,\n CreateParametersPluginsParams {}\nexport const createContentHeadlessCmsContext = (params: ContentContextParams) => {\n return [\n createParametersPlugins(params),\n contextSetup(),\n modelManager(),\n createContentCruds(params),\n fieldTypePlugins(),\n validatorsPlugins(),\n defaultStoragePlugin(),\n objectStoragePlugin()\n // new InternalAuthenticationPlugin(\"read-api-key\"),\n // new InternalAuthorizationPlugin(\"read-api-key\")\n ];\n};\nexport type ContentGraphQLParams = CreateGraphQLHandlerOptions;\nexport const createContentHeadlessCmsGraphQL = (params?: ContentGraphQLParams) => {\n return graphQLHandlerFactory(params);\n};\n\nexport { StorageTransformPlugin, CmsParametersPlugin, CmsGroupPlugin, CmsModelPlugin };\n"]}
|
|
@@ -5,13 +5,13 @@ declare type Group = {
|
|
|
5
5
|
declare type Model = {
|
|
6
6
|
[code: string]: string[];
|
|
7
7
|
};
|
|
8
|
-
|
|
8
|
+
interface CMSPermission {
|
|
9
9
|
name: string;
|
|
10
10
|
rwd?: string;
|
|
11
11
|
pw?: string;
|
|
12
12
|
own?: boolean;
|
|
13
13
|
groups?: Group;
|
|
14
14
|
models?: Model;
|
|
15
|
-
}
|
|
15
|
+
}
|
|
16
16
|
export declare const migrateCMSPermissions: (permissions: CMSPermission[], getModel: (modelId: string) => Promise<CmsModel>) => Promise<CMSPermission[]>;
|
|
17
17
|
export {};
|
package/migrateCMSPermissions.js
CHANGED
|
@@ -11,6 +11,10 @@ var _mergeWith = _interopRequireDefault(require("lodash/mergeWith"));
|
|
|
11
11
|
|
|
12
12
|
var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
|
|
13
13
|
|
|
14
|
+
/**
|
|
15
|
+
* Not used anymore so ignore.
|
|
16
|
+
*/
|
|
17
|
+
// @ts-nocheck
|
|
14
18
|
var AccessTypes;
|
|
15
19
|
|
|
16
20
|
(function (AccessTypes) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["migrateCMSPermissions.ts"],"names":["AccessTypes","migrateCMSPermissions","permissions","getModel","fullAccess","find","permission","name","FULL","newPermissions","DEFAULT_PERMISSIONS","CONTENT_MODEL_GROUP","rwd","own","CONTENT_MODEL","CONTENT_ENTRY","forEach","entity","existingPermission","setAccessScopeToOwn","groups","moveGroups","models","moveModels","contentModels","contentModelGroups","locales","Object","keys","i","length","code","j","modelId","group","includes","id","push","values","mergeCustomizer","objValue","srcValue","Array","isArray","concat","filter","removeDuplicate","item","index","arr","findIndex","el"],"mappings":"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","sourcesContent":["/**\n * Not used anymore so ignore.\n */\n// @ts-nocheck\nimport mergeWith from \"lodash/mergeWith\";\nimport isEmpty from \"lodash/isEmpty\";\nimport { CmsModel } from \"./types\";\n\ntype Group = {\n [code: string]: string[];\n};\ntype Model = {\n [code: string]: string[];\n};\ninterface CMSPermission {\n name: string;\n rwd?: string;\n pw?: string;\n own?: boolean;\n groups?: Group;\n models?: Model;\n}\n\nenum AccessTypes {\n FULL = \"cms.*\",\n CONTENT_MODEL_GROUP = \"cms.contentModelGroup\",\n CONTENT_MODEL = \"cms.contentModel\",\n CONTENT_ENTRY = \"cms.contentEntry\"\n}\n\nexport const migrateCMSPermissions = async (\n permissions: CMSPermission[],\n getModel: (modelId: string) => Promise<CmsModel>\n): Promise<CMSPermission[]> => {\n // First we've to know whether is a \"full\" access or \"custom\" access.\n const fullAccess = permissions.find(permission => permission.name === AccessTypes.FULL);\n\n if (fullAccess) {\n return permissions;\n }\n\n // We'll construct the new newPermissions one by one.\n const newPermissions = {};\n\n const DEFAULT_PERMISSIONS = {\n [AccessTypes.CONTENT_MODEL_GROUP]: {\n name: AccessTypes.CONTENT_MODEL_GROUP,\n rwd: \"r\",\n own: false\n },\n [AccessTypes.CONTENT_MODEL]: {\n name: AccessTypes.CONTENT_MODEL,\n rwd: \"r\",\n own: false\n },\n [AccessTypes.CONTENT_ENTRY]: {\n name: AccessTypes.CONTENT_ENTRY,\n rwd: \"r\",\n own: false\n }\n };\n\n // Create new permissions.\n [AccessTypes.CONTENT_MODEL_GROUP, AccessTypes.CONTENT_MODEL, AccessTypes.CONTENT_ENTRY].forEach(\n entity => {\n // Check for \"entity\" permission existence.\n const existingPermission = permissions.find(permission => permission.name === entity);\n if (existingPermission) {\n newPermissions[entity] = existingPermission;\n } else {\n newPermissions[entity] = DEFAULT_PERMISSIONS[entity];\n }\n\n // Handle specific cases.\n if (entity === AccessTypes.CONTENT_MODEL_GROUP) {\n // Just to be on the safer side.\n if (newPermissions[entity].own) {\n setAccessScopeToOwn(newPermissions, entity);\n }\n }\n // Handle specific cases.\n if (entity === AccessTypes.CONTENT_MODEL) {\n // Just to be on the safer side.\n if (newPermissions[entity].own) {\n setAccessScopeToOwn(newPermissions, entity);\n }\n // If parent has the \"own\" access scope.\n if (newPermissions[AccessTypes.CONTENT_MODEL_GROUP].own) {\n setAccessScopeToOwn(newPermissions, entity);\n }\n // Transfer groups data to content model groups permission\n if (newPermissions[entity].groups) {\n moveGroups(newPermissions, entity);\n }\n }\n // Handle specific cases.\n if (entity === AccessTypes.CONTENT_ENTRY) {\n // Just to be on the safer side.\n if (newPermissions[entity].own) {\n setAccessScopeToOwn(newPermissions, entity);\n }\n // If parent has the \"own\" access scope.\n if (newPermissions[AccessTypes.CONTENT_MODEL].own) {\n setAccessScopeToOwn(newPermissions, entity);\n }\n // Transfer groups data to content model groups permission\n if (newPermissions[entity].groups) {\n moveGroups(newPermissions, entity);\n }\n // Transfer models data to content model groups permission\n if (newPermissions[entity].models) {\n moveModels(newPermissions, entity);\n }\n }\n }\n );\n\n /*\n * Sync \"models\" and \"groups\".\n * If there is a model from \"cms.contentModel\" permission's models property;\n * whose content group is missing from \"cms.contentModelGroup\" permission's groups property;\n * we add that into \"cms.contentModelGroup\" permission.\n *\n * Why?\n * Because, now the user must need to have at least READ permission on \"cms.contentModelGroup\" to access a model defined by \"cms.contentModel\".\n * */\n const contentModels = newPermissions[AccessTypes.CONTENT_MODEL].models;\n\n if (!isEmpty(contentModels)) {\n const contentModelGroups = newPermissions[AccessTypes.CONTENT_MODEL_GROUP].groups || {};\n\n const locales = Object.keys(contentModels);\n for (let i = 0; i < locales.length; i++) {\n const code = locales[i];\n for (let j = 0; j < contentModels[code].length; j++) {\n const modelId = contentModels[code][j];\n // Check if we've access to it's contentModelGroup.\n const { group } = await getModel(modelId);\n\n if (isEmpty(contentModelGroups[code])) {\n contentModelGroups[code] = [];\n }\n if (!contentModelGroups[code].includes(group.id)) {\n contentModelGroups[code].push(group.id);\n }\n }\n }\n\n // Update \"groups\" value in permission.\n newPermissions[AccessTypes.CONTENT_MODEL_GROUP].groups = contentModelGroups;\n }\n\n return Object.values(newPermissions);\n};\n\nconst mergeCustomizer = (objValue, srcValue) => {\n if (Array.isArray(objValue) === false) {\n return [];\n }\n return objValue.concat(srcValue).filter(removeDuplicate);\n};\n\nconst removeDuplicate = (item, index, arr) => arr.findIndex(el => el === item) === index;\n\nconst moveGroups = (permissions, entity) => {\n if (!isEmpty(permissions[AccessTypes.CONTENT_MODEL_GROUP][\"groups\"])) {\n permissions[AccessTypes.CONTENT_MODEL_GROUP][\"groups\"] = mergeWith(\n permissions[AccessTypes.CONTENT_MODEL_GROUP][\"groups\"],\n permissions[entity].groups,\n mergeCustomizer\n );\n } else {\n permissions[AccessTypes.CONTENT_MODEL_GROUP][\"groups\"] = permissions[entity].groups;\n }\n // Remove \"groups\" from content model permission\n delete permissions[entity].groups;\n};\n\nconst moveModels = (permissions, entity) => {\n if (!isEmpty(permissions[AccessTypes.CONTENT_MODEL][\"models\"])) {\n permissions[AccessTypes.CONTENT_MODEL][\"models\"] = mergeWith(\n permissions[AccessTypes.CONTENT_MODEL][\"models\"],\n permissions[entity].models,\n mergeCustomizer\n );\n } else {\n permissions[AccessTypes.CONTENT_MODEL][\"models\"] = permissions[entity].models;\n }\n // Remove \"models\" from content model permission\n delete permissions[entity].models;\n};\n\nconst setAccessScopeToOwn = (permissions, entity) => {\n permissions[entity].own = true;\n // Set primary action.\n permissions[entity].rwd = \"rwd\";\n\n // Remove \"groups\" from content model permission\n delete permissions[entity].groups;\n\n // Remove \"models\" from content model permission\n delete permissions[entity].models;\n};\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-headless-cms",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.25.0-beta.0",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cms:base"
|
|
@@ -18,30 +18,31 @@
|
|
|
18
18
|
],
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@babel/runtime": "7.
|
|
21
|
+
"@babel/runtime": "7.17.2",
|
|
22
22
|
"@commodo/fields": "1.1.2-beta.20",
|
|
23
23
|
"@graphql-tools/schema": "7.1.5",
|
|
24
|
-
"@webiny/api-file-manager": "5.
|
|
25
|
-
"@webiny/api-i18n": "5.
|
|
26
|
-
"@webiny/api-i18n-content": "5.
|
|
27
|
-
"@webiny/api-i18n-ddb": "5.
|
|
28
|
-
"@webiny/api-security": "5.
|
|
29
|
-
"@webiny/api-tenancy": "5.
|
|
30
|
-
"@webiny/api-upgrade": "5.
|
|
31
|
-
"@webiny/error": "5.
|
|
32
|
-
"@webiny/handler": "5.
|
|
33
|
-
"@webiny/handler-aws": "5.
|
|
34
|
-
"@webiny/handler-db": "5.
|
|
35
|
-
"@webiny/handler-graphql": "5.
|
|
36
|
-
"@webiny/handler-http": "5.
|
|
37
|
-
"@webiny/plugins": "5.
|
|
38
|
-
"@webiny/pubsub": "5.
|
|
39
|
-
"@webiny/utils": "5.
|
|
40
|
-
"@webiny/validation": "5.
|
|
41
|
-
"boolean": "3.
|
|
24
|
+
"@webiny/api-file-manager": "5.25.0-beta.0",
|
|
25
|
+
"@webiny/api-i18n": "5.25.0-beta.0",
|
|
26
|
+
"@webiny/api-i18n-content": "5.25.0-beta.0",
|
|
27
|
+
"@webiny/api-i18n-ddb": "5.25.0-beta.0",
|
|
28
|
+
"@webiny/api-security": "5.25.0-beta.0",
|
|
29
|
+
"@webiny/api-tenancy": "5.25.0-beta.0",
|
|
30
|
+
"@webiny/api-upgrade": "5.25.0-beta.0",
|
|
31
|
+
"@webiny/error": "5.25.0-beta.0",
|
|
32
|
+
"@webiny/handler": "5.25.0-beta.0",
|
|
33
|
+
"@webiny/handler-aws": "5.25.0-beta.0",
|
|
34
|
+
"@webiny/handler-db": "5.25.0-beta.0",
|
|
35
|
+
"@webiny/handler-graphql": "5.25.0-beta.0",
|
|
36
|
+
"@webiny/handler-http": "5.25.0-beta.0",
|
|
37
|
+
"@webiny/plugins": "5.25.0-beta.0",
|
|
38
|
+
"@webiny/pubsub": "5.25.0-beta.0",
|
|
39
|
+
"@webiny/utils": "5.25.0-beta.0",
|
|
40
|
+
"@webiny/validation": "5.25.0-beta.0",
|
|
41
|
+
"boolean": "3.2.0",
|
|
42
42
|
"commodo-fields-object": "1.0.6",
|
|
43
43
|
"dataloader": "2.0.0",
|
|
44
44
|
"dot-prop": "6.0.1",
|
|
45
|
+
"graphql-tag": "2.12.6",
|
|
45
46
|
"lodash": "4.17.21",
|
|
46
47
|
"p-map": "4.0.0",
|
|
47
48
|
"p-reduce": "2.1.0",
|
|
@@ -54,10 +55,10 @@
|
|
|
54
55
|
"@babel/core": "^7.16.0",
|
|
55
56
|
"@babel/preset-env": "^7.16.4",
|
|
56
57
|
"@babel/preset-flow": "^7.16.0",
|
|
57
|
-
"@webiny/api-security-so-ddb": "^5.
|
|
58
|
-
"@webiny/api-tenancy-so-ddb": "^5.
|
|
59
|
-
"@webiny/cli": "^5.
|
|
60
|
-
"@webiny/project-utils": "^5.
|
|
58
|
+
"@webiny/api-security-so-ddb": "^5.25.0-beta.0",
|
|
59
|
+
"@webiny/api-tenancy-so-ddb": "^5.25.0-beta.0",
|
|
60
|
+
"@webiny/cli": "^5.25.0-beta.0",
|
|
61
|
+
"@webiny/project-utils": "^5.25.0-beta.0",
|
|
61
62
|
"apollo-graphql": "^0.9.5",
|
|
62
63
|
"get-yarn-workspaces": "^1.0.2",
|
|
63
64
|
"graphql": "^15.7.2",
|
|
@@ -67,7 +68,7 @@
|
|
|
67
68
|
"rimraf": "^3.0.2",
|
|
68
69
|
"sinon": "^9.0.2",
|
|
69
70
|
"ttypescript": "^1.5.12",
|
|
70
|
-
"typescript": "
|
|
71
|
+
"typescript": "4.5.5"
|
|
71
72
|
},
|
|
72
73
|
"publishConfig": {
|
|
73
74
|
"access": "public",
|
|
@@ -77,5 +78,5 @@
|
|
|
77
78
|
"build": "yarn webiny run build",
|
|
78
79
|
"watch": "yarn webiny run watch"
|
|
79
80
|
},
|
|
80
|
-
"gitHead": "
|
|
81
|
+
"gitHead": "2d3e7833575e88fde77d84e5490e746933a5ec28"
|
|
81
82
|
}
|
package/plugins/context.js
CHANGED
|
@@ -22,9 +22,14 @@ var _default = () => {
|
|
|
22
22
|
locale: locale ? locale.code : "en-US",
|
|
23
23
|
|
|
24
24
|
getLocale() {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
if (!locale) {
|
|
26
|
+
return {
|
|
27
|
+
code: "en-US",
|
|
28
|
+
default: true
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return locale;
|
|
28
33
|
}
|
|
29
34
|
|
|
30
35
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["context.ts"],"names":["ContextPlugin","context","locale","i18nContent","getCurrentLocale","cms","code","getLocale","default"],"mappings":";;;;;;;;;;;AAAA;;;;;;eAGe,MAAM;AACjB,SAAO,IAAIA,sBAAJ,CAA8BC,OAAO,IAAI;AAC5C,UAAMC,MAAM,GAAGD,OAAO,CAACE,WAAR,CAAoBC,gBAApB,EAAf;AAEAH,IAAAA,OAAO,CAACI,GAAR,mCACQJ,OAAO,CAACI,GAAR,IAAgB,EADxB;AAEIH,MAAAA,MAAM,EAAEA,MAAM,GAAGA,MAAM,CAACI,IAAV,GAAiB,OAFnC;;AAGIC,MAAAA,SAAS,GAAG;AACR,YAAI,CAACL,MAAL,EAAa;AACT,iBAAO;AACHI,YAAAA,IAAI,EAAE,OADH;AAEHE,YAAAA,OAAO,EAAE;AAFN,WAAP;AAIH;;AACD,eAAON,MAAP;AACH;;AAXL;AAaH,GAhBM,CAAP;AAiBH,C","sourcesContent":["import { ContextPlugin } from \"@webiny/handler\";\nimport { CmsContext } from \"~/types\";\n\nexport default () => {\n return new ContextPlugin<CmsContext>(context => {\n const locale = context.i18nContent.getCurrentLocale();\n\n context.cms = {\n ...(context.cms || ({} as any)),\n locale: locale ? locale.code : \"en-US\",\n getLocale() {\n if (!locale) {\n return {\n code: \"en-US\",\n default: true\n };\n }\n return locale;\n }\n };\n });\n};\n"]}
|
package/plugins/crud/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CmsContext, HeadlessCmsStorageOperations } from "../../types";
|
|
2
2
|
import { ContextPlugin } from "@webiny/handler";
|
|
3
|
-
export interface
|
|
3
|
+
export interface CreateAdminCrudsParams {
|
|
4
4
|
storageOperations: HeadlessCmsStorageOperations;
|
|
5
5
|
}
|
|
6
|
-
export declare const createAdminCruds: (params:
|
|
6
|
+
export declare const createAdminCruds: (params: CreateAdminCrudsParams) => ContextPlugin<CmsContext>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["debug","process","env","DEBUG","createAdminCruds","params","storageOperations","ContextPlugin","context","cms","console","log","getLocale","getIdentity","security","getTenant","tenancy","getCurrentTenant","plugins","length","register","init"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;;;;;AAEA,MAAMA,KAAK,GAAGC,OAAO,CAACC,GAAR,CAAYC,KAAZ,KAAsB,MAApC;;AAMO,MAAMC,gBAAgB,GAAIC,MAAD,IAAoC;AAChE,QAAM;AAAEC,IAAAA;AAAF,MAAwBD,MAA9B;AACA,SAAO,IAAIE,sBAAJ,CAA8B,MAAMC,OAAN,IAAiB;AAClD;AACR;AACA;AACA;AACQ,QAAI,CAACA,OAAO,CAACC,GAAb,EAAkB;AACdT,MAAAA,KAAK,IACDU,OAAO,CAACC,GAAR,CACK,iGADL,CADJ;AAIA;AACH;;AACD,UAAMC,SAAS,GAAG,MAAM;AACpB,aAAOJ,OAAO,CAACC,GAAR,CAAYG,SAAZ,EAAP;AACH,KAFD;;AAIA,UAAMC,WAAW,GAAG,MAAM;AACtB,aAAOL,OAAO,CAACM,QAAR,CAAiBD,WAAjB,EAAP;AACH,KAFD;;AAIA,UAAME,SAAS,GAAG,MAAM;AACpB,aAAOP,OAAO,CAACQ,OAAR,CAAgBC,gBAAhB,EAAP;AACH,KAFD;;AAIA,QAAIX,iBAAiB,CAACY,OAAlB,IAA6BZ,iBAAiB,CAACY,OAAlB,CAA0BC,MAA1B,GAAmC,CAApE,EAAuE;AACnEX,MAAAA,OAAO,CAACU,OAAR,CAAgBE,QAAhB,CAAyBd,iBAAiB,CAACY,OAA3C;AACH;;AAEDV,IAAAA,OAAO,CAACC,GAAR,2FACOD,OAAO,CAACC,GADf;AAEIH,MAAAA;AAFJ,OAGO,8BAAiB;AAChBE,MAAAA,OADgB;AAEhBO,MAAAA,SAFgB;AAGhBF,MAAAA,WAHgB;AAIhBP,MAAAA;AAJgB,KAAjB,CAHP,GASO,kCAAmB;AAClBE,MAAAA,OADkB;AAElBO,MAAAA,SAFkB;AAGlBH,MAAAA,SAHkB;AAIlBN,MAAAA;AAJkB,KAAnB,CATP,GAeO,8CAAsB;AACrBE,MAAAA,OADqB;AAErBO,MAAAA,SAFqB;AAGrBH,MAAAA,SAHqB;AAIrBC,MAAAA,WAJqB;AAKrBP,MAAAA;AALqB,KAAtB,CAfP,GAsBO,oCAAiB;AAChBE,MAAAA,OADgB;AAEhBO,MAAAA,SAFgB;AAGhBH,MAAAA,SAHgB;AAIhBC,MAAAA,WAJgB;AAKhBP,MAAAA;AALgB,KAAjB,CAtBP,GA6BO,0CAAuB;AACtBE,MAAAA,OADsB;AAEtBK,MAAAA,WAFsB;AAGtBP,MAAAA;AAHsB,KAAvB,CA7BP;;AAoCA,QAAI,CAACA,iBAAiB,CAACe,IAAvB,EAA6B;AACzB;AACH;;AACD,UAAMf,iBAAiB,CAACe,IAAlB,CAAuBb,OAAO,CAACC,GAA/B,CAAN;AACH,GApEM,CAAP;AAqEH,CAvEM","sourcesContent":["import { createSettingsCrud } from \"./settings.crud\";\nimport { createSystemCrud } from \"./system.crud\";\nimport { CmsContext, HeadlessCmsStorageOperations } from \"~/types\";\nimport { ContextPlugin } from \"@webiny/handler\";\nimport { createModelGroupsCrud } from \"~/content/plugins/crud/contentModelGroup.crud\";\nimport { createModelsCrud } from \"~/content/plugins/crud/contentModel.crud\";\nimport { createContentEntryCrud } from \"~/content/plugins/crud/contentEntry.crud\";\n\nconst debug = process.env.DEBUG === \"true\";\n\nexport interface CreateAdminCrudsParams {\n storageOperations: HeadlessCmsStorageOperations;\n}\n\nexport const createAdminCruds = (params: CreateAdminCrudsParams) => {\n const { storageOperations } = params;\n return new ContextPlugin<CmsContext>(async context => {\n /**\n * This should never happen in the actual project.\n * It is to make sure that we load setup context before the CRUD init in our internal code.\n */\n if (!context.cms) {\n debug &&\n console.log(\n `Missing initial \"cms\" on the context. Make sure that you set it up before creating Admin CRUDs.`\n );\n return;\n }\n const getLocale = () => {\n return context.cms.getLocale();\n };\n\n const getIdentity = () => {\n return context.security.getIdentity();\n };\n\n const getTenant = () => {\n return context.tenancy.getCurrentTenant();\n };\n\n if (storageOperations.plugins && storageOperations.plugins.length > 0) {\n context.plugins.register(storageOperations.plugins);\n }\n\n context.cms = {\n ...context.cms,\n storageOperations,\n ...createSystemCrud({\n context,\n getTenant,\n getIdentity,\n storageOperations\n }),\n ...createSettingsCrud({\n context,\n getTenant,\n getLocale,\n storageOperations\n }),\n ...createModelGroupsCrud({\n context,\n getTenant,\n getLocale,\n getIdentity,\n storageOperations\n }),\n ...createModelsCrud({\n context,\n getTenant,\n getLocale,\n getIdentity,\n storageOperations\n }),\n ...createContentEntryCrud({\n context,\n getIdentity,\n storageOperations\n })\n };\n\n if (!storageOperations.init) {\n return;\n }\n await storageOperations.init(context.cms);\n });\n};\n"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { CmsContext, HeadlessCmsStorageOperations, CmsSettingsContext } from "../../types";
|
|
2
2
|
import { Tenant } from "@webiny/api-tenancy/types";
|
|
3
3
|
import { I18NLocale } from "@webiny/api-i18n/types";
|
|
4
|
-
export interface
|
|
4
|
+
export interface CreateSettingsCrudParams {
|
|
5
5
|
getTenant: () => Tenant;
|
|
6
6
|
getLocale: () => I18NLocale;
|
|
7
7
|
storageOperations: HeadlessCmsStorageOperations;
|
|
8
8
|
context: CmsContext;
|
|
9
9
|
}
|
|
10
|
-
export declare const createSettingsCrud: (params:
|
|
10
|
+
export declare const createSettingsCrud: (params: CreateSettingsCrudParams) => CmsSettingsContext;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["settings.crud.ts"],"names":["createSettingsCrud","params","storageOperations","context","getTenant","getLocale","checkPermissions","utils","getSettings","settings","get","tenant","id","locale","code","updateModelLastChange","original","contentModelLastChange","Date","create","update","getModelLastChange","ex","console","log","error","message","data"],"mappings":";;;;;;;;;;;AAAA;;;;;;;;;;AAiBO,MAAMA,kBAAkB,GAAIC,MAAD,IAA0D;AACxF,QAAM;AAAEC,IAAAA,iBAAF;AAAqBC,IAAAA,OAArB;AAA8BC,IAAAA,SAA9B;AAAyCC,IAAAA;AAAzC,MAAuDJ,MAA7D;;AAEA,QAAMK,gBAAgB,GAAG,MAAsC;AAC3D,WAAOC,KAAK,CAACD,gBAAN,CAAuBH,OAAvB,EAAgC,cAAhC,CAAP;AACH,GAFD;;AAIA,SAAO;AACHK,IAAAA,WAAW,EAAE,YAAyC;AAClD,YAAMF,gBAAgB,EAAtB;AACA,aAAO,MAAMJ,iBAAiB,CAACO,QAAlB,CAA2BC,GAA3B,CAA+B;AACxCC,QAAAA,MAAM,EAAEP,SAAS,GAAGQ,EADoB;AAExCC,QAAAA,MAAM,EAAER,SAAS,GAAGS;AAFoB,OAA/B,CAAb;AAIH,KAPE;AAQHC,IAAAA,qBAAqB,EAAE,YAA2B;AAC9C,YAAMC,QAAQ,GAAG,MAAMd,iBAAiB,CAACO,QAAlB,CAA2BC,GAA3B,CAA+B;AAClDC,QAAAA,MAAM,EAAEP,SAAS,GAAGQ,EAD8B;AAElDC,QAAAA,MAAM,EAAER,SAAS,GAAGS;AAF8B,OAA/B,CAAvB;;AAKA,YAAML,QAAqB,mCACnBO,QAAQ,IAAI,EADO;AAEvBC,QAAAA,sBAAsB,EAAE,IAAIC,IAAJ,EAFD;AAGvBP,QAAAA,MAAM,EAAEP,SAAS,GAAGQ,EAHG;AAIvBC,QAAAA,MAAM,EAAER,SAAS,GAAGS;AAJG,QAA3B;;AAOA,UAAI,CAACE,QAAL,EAAe;AACX,cAAMd,iBAAiB,CAACO,QAAlB,CAA2BU,MAA3B,CAAkC;AAAEV,UAAAA;AAAF,SAAlC,CAAN;AACA;AACH;;AAED,YAAMP,iBAAiB,CAACO,QAAlB,CAA2BW,MAA3B,CAAkC;AACpCJ,QAAAA,QADoC;AAEpCP,QAAAA;AAFoC,OAAlC,CAAN;AAIH,KA9BE;AA+BHY,IAAAA,kBAAkB,EAAE,YAA2B;AAC3C,UAAI;AACA,cAAMZ,QAAQ,GAAG,MAAMP,iBAAiB,CAACO,QAAlB,CAA2BC,GAA3B,CAA+B;AAClDC,UAAAA,MAAM,EAAEP,SAAS,GAAGQ,EAD8B;AAElDC,UAAAA,MAAM,EAAER,SAAS,GAAGS;AAF8B,SAA/B,CAAvB;;AAIA,YAAI,CAACL,QAAD,IAAa,CAACA,QAAQ,CAACQ,sBAA3B,EAAmD;AAC/C,iBAAO,IAAIC,IAAJ,EAAP;AACH;;AACD,eAAOT,QAAQ,CAACQ,sBAAhB;AACH,OATD,CASE,OAAOK,EAAP,EAAW;AACTC,QAAAA,OAAO,CAACC,GAAR,CAAY;AACRC,UAAAA,KAAK,EAAE;AACHC,YAAAA,OAAO,EAAEJ,EAAE,CAACI,OADT;AAEHZ,YAAAA,IAAI,EAAEQ,EAAE,CAACR,IAAH,IAAW,2CAFd;AAGHa,YAAAA,IAAI,EAAEL;AAHH;AADC,SAAZ;AAOH;;AACD,aAAO,IAAIJ,IAAJ,EAAP;AACH;AAnDE,GAAP;AAqDH,CA5DM","sourcesContent":["import * as utils from \"~/utils\";\nimport {\n CmsContext,\n CmsSettingsPermission,\n CmsSettings,\n HeadlessCmsStorageOperations,\n CmsSettingsContext\n} from \"~/types\";\nimport { Tenant } from \"@webiny/api-tenancy/types\";\nimport { I18NLocale } from \"@webiny/api-i18n/types\";\n\nexport interface CreateSettingsCrudParams {\n getTenant: () => Tenant;\n getLocale: () => I18NLocale;\n storageOperations: HeadlessCmsStorageOperations;\n context: CmsContext;\n}\nexport const createSettingsCrud = (params: CreateSettingsCrudParams): CmsSettingsContext => {\n const { storageOperations, context, getTenant, getLocale } = params;\n\n const checkPermissions = (): Promise<CmsSettingsPermission> => {\n return utils.checkPermissions(context, \"cms.settings\");\n };\n\n return {\n getSettings: async (): Promise<CmsSettings | null> => {\n await checkPermissions();\n return await storageOperations.settings.get({\n tenant: getTenant().id,\n locale: getLocale().code\n });\n },\n updateModelLastChange: async (): Promise<void> => {\n const original = await storageOperations.settings.get({\n tenant: getTenant().id,\n locale: getLocale().code\n });\n\n const settings: CmsSettings = {\n ...(original || {}),\n contentModelLastChange: new Date(),\n tenant: getTenant().id,\n locale: getLocale().code\n };\n\n if (!original) {\n await storageOperations.settings.create({ settings });\n return;\n }\n\n await storageOperations.settings.update({\n original,\n settings\n });\n },\n getModelLastChange: async (): Promise<Date> => {\n try {\n const settings = await storageOperations.settings.get({\n tenant: getTenant().id,\n locale: getLocale().code\n });\n if (!settings || !settings.contentModelLastChange) {\n return new Date();\n }\n return settings.contentModelLastChange;\n } catch (ex) {\n console.log({\n error: {\n message: ex.message,\n code: ex.code || \"COULD_NOT_FETCH_CONTENT_MODEL_LAST_CHANGE\",\n data: ex\n }\n });\n }\n return new Date();\n }\n };\n};\n"]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { CmsContext, CmsSystemContext, HeadlessCmsStorageOperations } from "../../types";
|
|
2
2
|
import { Tenant } from "@webiny/api-tenancy/types";
|
|
3
3
|
import { SecurityIdentity } from "@webiny/api-security/types";
|
|
4
|
-
|
|
4
|
+
interface CreateSystemCrudParams {
|
|
5
5
|
getTenant: () => Tenant;
|
|
6
6
|
storageOperations: HeadlessCmsStorageOperations;
|
|
7
7
|
context: CmsContext;
|
|
8
8
|
getIdentity: () => SecurityIdentity;
|
|
9
9
|
}
|
|
10
|
-
export declare const createSystemCrud: (params:
|
|
10
|
+
export declare const createSystemCrud: (params: CreateSystemCrudParams) => CmsSystemContext;
|
|
11
|
+
export {};
|
|
@@ -52,7 +52,7 @@ const createSystemCrud = params => {
|
|
|
52
52
|
const system = await storageOperations.system.get({
|
|
53
53
|
tenant: getTenant().id
|
|
54
54
|
});
|
|
55
|
-
return system ? system.version : null;
|
|
55
|
+
return system ? system.version || null : null;
|
|
56
56
|
};
|
|
57
57
|
|
|
58
58
|
const setVersion = async version => {
|
|
@@ -170,7 +170,7 @@ const createSystemCrud = params => {
|
|
|
170
170
|
|
|
171
171
|
const upgradePlugins = context.plugins.byType("api-upgrade").filter(pl => pl.app === "headless-cms");
|
|
172
172
|
const installedAppVersion = await this.getSystemVersion();
|
|
173
|
-
let plugin;
|
|
173
|
+
let plugin = undefined;
|
|
174
174
|
|
|
175
175
|
try {
|
|
176
176
|
plugin = (0, _apiUpgrade.getApplicablePlugin)({
|