@webiny/api-headless-cms 5.36.2 → 5.37.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. package/constants.d.ts +1 -0
  2. package/constants.js +8 -0
  3. package/constants.js.map +1 -0
  4. package/context.js +37 -5
  5. package/context.js.map +1 -1
  6. package/crud/contentEntry/afterDelete.js.map +1 -1
  7. package/crud/contentEntry/beforeCreate.js.map +1 -1
  8. package/crud/contentEntry/beforeUpdate.js.map +1 -1
  9. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  10. package/crud/contentEntry/markLockedFields.js.map +1 -1
  11. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  12. package/crud/contentEntry/searchableFields.js.map +1 -1
  13. package/crud/contentEntry.crud.d.ts +4 -0
  14. package/crud/contentEntry.crud.js +206 -53
  15. package/crud/contentEntry.crud.js.map +1 -1
  16. package/crud/contentModel/afterCreate.js.map +1 -1
  17. package/crud/contentModel/afterCreateFrom.js.map +1 -1
  18. package/crud/contentModel/afterDelete.js.map +1 -1
  19. package/crud/contentModel/afterUpdate.js.map +1 -1
  20. package/crud/contentModel/beforeCreate.js.map +1 -1
  21. package/crud/contentModel/beforeDelete.js.map +1 -1
  22. package/crud/contentModel/beforeUpdate.js.map +1 -1
  23. package/crud/contentModel/compatibility/modelApiName.js.map +1 -1
  24. package/crud/contentModel/contentModelManagerFactory.js.map +1 -1
  25. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  26. package/crud/contentModel/defaultFields.js.map +1 -1
  27. package/crud/contentModel/fields/descriptionField.js.map +1 -1
  28. package/crud/contentModel/fields/imageField.js.map +1 -1
  29. package/crud/contentModel/fields/titleField.js.map +1 -1
  30. package/crud/contentModel/validate/endingAllowed.js.map +1 -1
  31. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
  32. package/crud/contentModel/validate/modelId.js.map +1 -1
  33. package/crud/contentModel/validate/pluralApiName.js.map +1 -1
  34. package/crud/contentModel/validate/singularApiName.js.map +1 -1
  35. package/crud/contentModel/validateLayout.js.map +1 -1
  36. package/crud/contentModel/validateModel.js.map +1 -1
  37. package/crud/contentModel/validateModelFields.js +1 -1
  38. package/crud/contentModel/validateModelFields.js.map +1 -1
  39. package/crud/contentModel/validation.d.ts +246 -206
  40. package/crud/contentModel/validation.js.map +1 -1
  41. package/crud/contentModel.crud.d.ts +2 -0
  42. package/crud/contentModel.crud.js +22 -12
  43. package/crud/contentModel.crud.js.map +1 -1
  44. package/crud/contentModelGroup/beforeCreate.js.map +1 -1
  45. package/crud/contentModelGroup/beforeDelete.js.map +1 -1
  46. package/crud/contentModelGroup/beforeUpdate.js.map +1 -1
  47. package/crud/contentModelGroup/validation.d.ts +4 -4
  48. package/crud/contentModelGroup/validation.js.map +1 -1
  49. package/crud/contentModelGroup.crud.d.ts +2 -0
  50. package/crud/contentModelGroup.crud.js +41 -20
  51. package/crud/contentModelGroup.crud.js.map +1 -1
  52. package/crud/settings.crud.d.ts +2 -0
  53. package/crud/settings.crud.js +2 -6
  54. package/crud/settings.crud.js.map +1 -1
  55. package/crud/system.crud.js.map +1 -1
  56. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  57. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
  58. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +1 -1
  59. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  60. package/fieldConverters/index.js.map +1 -1
  61. package/graphql/buildSchemaPlugins.js +4 -0
  62. package/graphql/buildSchemaPlugins.js.map +1 -1
  63. package/graphql/checkEndpointAccess.js.map +1 -1
  64. package/graphql/createExecutableSchema.js.map +1 -1
  65. package/graphql/createRequestBody.js.map +1 -1
  66. package/graphql/formatErrorPayload.js.map +1 -1
  67. package/graphql/generateSchema.js.map +1 -1
  68. package/graphql/getSchema.js +1 -1
  69. package/graphql/getSchema.js.map +1 -1
  70. package/graphql/graphQLHandlerFactory.js.map +1 -1
  71. package/graphql/handleRequest.js.map +1 -1
  72. package/graphql/index.d.ts +1 -1
  73. package/graphql/index.js.map +1 -1
  74. package/graphql/schema/baseContentSchema.js.map +1 -1
  75. package/graphql/schema/baseSchema.js +16 -0
  76. package/graphql/schema/baseSchema.js.map +1 -1
  77. package/graphql/schema/contentEntries.js +9 -4
  78. package/graphql/schema/contentEntries.js.map +1 -1
  79. package/graphql/schema/contentModelGroups.js.map +1 -1
  80. package/graphql/schema/contentModels.js.map +1 -1
  81. package/graphql/schema/createFieldResolvers.js +1 -1
  82. package/graphql/schema/createFieldResolvers.js.map +1 -1
  83. package/graphql/schema/createFieldTypePluginRecords.js.map +1 -1
  84. package/graphql/schema/createManageResolvers.d.ts +1 -1
  85. package/graphql/schema/createManageResolvers.js +10 -0
  86. package/graphql/schema/createManageResolvers.js.map +1 -1
  87. package/graphql/schema/createManageSDL.js +18 -3
  88. package/graphql/schema/createManageSDL.js.map +1 -1
  89. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  90. package/graphql/schema/createReadResolvers.js.map +1 -1
  91. package/graphql/schema/createReadSDL.js +1 -0
  92. package/graphql/schema/createReadSDL.js.map +1 -1
  93. package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -1
  94. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  95. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  96. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  97. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -1
  98. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  99. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  100. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  101. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -1
  102. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  103. package/graphql/schema/resolvers/manage/resolveMove.d.ts +8 -0
  104. package/graphql/schema/resolvers/manage/resolveMove.js +25 -0
  105. package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -0
  106. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  107. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  108. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  109. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  110. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  111. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  112. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  113. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  114. package/graphql/schema/schemaPlugins.js.map +1 -1
  115. package/graphql/system.d.ts +2 -5
  116. package/graphql/system.js +1 -11
  117. package/graphql/system.js.map +1 -1
  118. package/graphqlFields/boolean.js.map +1 -1
  119. package/graphqlFields/datetime.js.map +1 -1
  120. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
  121. package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -1
  122. package/graphqlFields/dynamicZone/index.js.map +1 -1
  123. package/graphqlFields/file.js.map +1 -1
  124. package/graphqlFields/helpers.js.map +1 -1
  125. package/graphqlFields/index.js.map +1 -1
  126. package/graphqlFields/longText.js.map +1 -1
  127. package/graphqlFields/number.js +1 -0
  128. package/graphqlFields/number.js.map +1 -1
  129. package/graphqlFields/object.js +3 -3
  130. package/graphqlFields/object.js.map +1 -1
  131. package/graphqlFields/ref.js.map +1 -1
  132. package/graphqlFields/richText.js.map +1 -1
  133. package/graphqlFields/text.js +2 -0
  134. package/graphqlFields/text.js.map +1 -1
  135. package/index.d.ts +1 -1
  136. package/index.js.map +1 -1
  137. package/modelManager/DefaultCmsModelManager.js.map +1 -1
  138. package/modelManager/index.js.map +1 -1
  139. package/package.json +25 -29
  140. package/parameters/context.js.map +1 -1
  141. package/parameters/header.js +3 -3
  142. package/parameters/header.js.map +1 -1
  143. package/parameters/index.js.map +1 -1
  144. package/parameters/manual.js.map +1 -1
  145. package/parameters/path.js.map +1 -1
  146. package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -1
  147. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -1
  148. package/plugins/CmsGroupPlugin.js.map +1 -1
  149. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  150. package/plugins/CmsModelPlugin.js.map +1 -1
  151. package/plugins/CmsParametersPlugin.js +4 -0
  152. package/plugins/CmsParametersPlugin.js.map +1 -1
  153. package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -1
  154. package/plugins/StorageTransformPlugin.js.map +1 -1
  155. package/plugins/index.js.map +1 -1
  156. package/storage/default.js.map +1 -1
  157. package/storage/object.js.map +1 -1
  158. package/types.d.ts +68 -5
  159. package/types.js +7 -4
  160. package/types.js.map +1 -1
  161. package/utils/converters/Converter.js.map +1 -1
  162. package/utils/converters/ConverterCollection.js.map +1 -1
  163. package/utils/converters/valueKeyStorageConverter.js +5 -0
  164. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  165. package/utils/createTypeFromFields.js +1 -1
  166. package/utils/createTypeFromFields.js.map +1 -1
  167. package/utils/createTypeName.js.map +1 -1
  168. package/utils/entryStorage.js.map +1 -1
  169. package/utils/filterAsync.js.map +1 -1
  170. package/utils/getBaseFieldType.js.map +1 -1
  171. package/utils/getEntryDescription.js.map +1 -1
  172. package/utils/getEntryImage.js.map +1 -1
  173. package/utils/getEntryTitle.js.map +1 -1
  174. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  175. package/utils/incrementEntryIdVersion.js.map +1 -1
  176. package/utils/permissions/EntriesPermissions.d.ts +4 -0
  177. package/utils/permissions/EntriesPermissions.js +9 -0
  178. package/utils/permissions/EntriesPermissions.js.map +1 -0
  179. package/utils/permissions/ModelGroupsPermissions.d.ts +11 -0
  180. package/utils/permissions/ModelGroupsPermissions.js +48 -0
  181. package/utils/permissions/ModelGroupsPermissions.js.map +1 -0
  182. package/utils/permissions/ModelsPermissions.d.ts +20 -0
  183. package/utils/permissions/ModelsPermissions.js +91 -0
  184. package/utils/permissions/ModelsPermissions.js.map +1 -0
  185. package/utils/permissions/SettingsPermissions.d.ts +4 -0
  186. package/utils/permissions/SettingsPermissions.js +9 -0
  187. package/utils/permissions/SettingsPermissions.js.map +1 -0
  188. package/utils/renderFields.js.map +1 -1
  189. package/utils/renderGetFilterFields.js.map +1 -1
  190. package/utils/renderInputFields.js.map +1 -1
  191. package/utils/renderListFilterFields.d.ts +1 -0
  192. package/utils/renderListFilterFields.js +12 -6
  193. package/utils/renderListFilterFields.js.map +1 -1
  194. package/utils/renderSortEnum.d.ts +1 -1
  195. package/utils/renderSortEnum.js +3 -0
  196. package/utils/renderSortEnum.js.map +1 -1
  197. package/utils/toSlug.js.map +1 -1
  198. package/validators/dateGte.js.map +1 -1
  199. package/validators/dateLte.js.map +1 -1
  200. package/validators/dynamicZone.js.map +1 -1
  201. package/validators/gte.js.map +1 -1
  202. package/validators/in.js.map +1 -1
  203. package/validators/index.js.map +1 -1
  204. package/validators/lte.js.map +1 -1
  205. package/validators/maxLength.js.map +1 -1
  206. package/validators/minLength.js.map +1 -1
  207. package/validators/pattern.js.map +1 -1
  208. package/validators/patternPlugins/email.js.map +1 -1
  209. package/validators/patternPlugins/index.js.map +1 -1
  210. package/validators/patternPlugins/lowerCase.js.map +1 -1
  211. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
  212. package/validators/patternPlugins/upperCase.js.map +1 -1
  213. package/validators/patternPlugins/upperCaseSpace.js.map +1 -1
  214. package/validators/patternPlugins/url.js.map +1 -1
  215. package/validators/required.js.map +1 -1
  216. package/validators/timeGte.js.map +1 -1
  217. package/validators/timeLte.js.map +1 -1
  218. package/validators/unique.js.map +1 -1
  219. package/utils/access.d.ts +0 -8
  220. package/utils/access.js +0 -76
  221. package/utils/access.js.map +0 -1
  222. package/utils/ownership.d.ts +0 -8
  223. package/utils/ownership.js +0 -33
  224. package/utils/ownership.js.map +0 -1
  225. package/utils/permissions.d.ts +0 -7
  226. package/utils/permissions.js +0 -91
  227. package/utils/permissions.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["createGteValidator","type","name","validator","validate","value","gteValue","settings","validation","then","v","catch","Promise","resolve"],"sources":["gte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createGteValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,kBAAkB,GAAG,MAAoC;EAClE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,+BAA+B;IACrCC,SAAS,EAAE;MACPD,IAAI,EAAE,KAAK;MACXE,QAAQ,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA;QAC3B,MAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAQ,wDAAlB,oBAAoBF,KAAK;QAC1C,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;UACjC,OAAOE,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,OAAMC,QAAS,EAAC,CAAC,CAClCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QACA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createGteValidator","type","name","validator","validate","value","_validator$settings","gteValue","settings","validation","then","v","catch","Promise","resolve","exports"],"sources":["gte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createGteValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,kBAAkB,GAAGA,CAAA,KAAoC;EAClE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,+BAA+B;IACrCC,SAAS,EAAE;MACPD,IAAI,EAAE,KAAK;MACXE,QAAQA,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA,IAAAG,mBAAA;QAC3B,MAAMC,QAAQ,IAAAD,mBAAA,GAAGH,SAAS,CAACK,QAAQ,cAAAF,mBAAA,uBAAlBA,mBAAA,CAAoBD,KAAK;QAC1C,IAAI,OAAOE,QAAQ,KAAK,WAAW,EAAE;UACjC,OAAOE,sBAAU,CACZL,QAAQ,CAACC,KAAK,EAAG,OAAME,QAAS,EAAC,CAAC,CAClCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QACA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAf,kBAAA,GAAAA,kBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createInValidator","type","name","validator","validate","value","values","settings","Array","isArray","validation","join","then","v","catch","Promise","resolve"],"sources":["in.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createInValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,iBAAiB,GAAG,MAAoC;EACjE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,8BAA8B;IACpCC,SAAS,EAAE;MACPD,IAAI,EAAE,IAAI;MACVE,QAAQ,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA;QAC3B,MAAMG,MAAM,0BAAGH,SAAS,CAACI,QAAQ,wDAAlB,oBAAoBD,MAAM;QACzC,IAAIE,KAAK,CAACC,OAAO,CAACH,MAAM,CAAC,EAAE;UACvB,OAAOI,sBAAU,CACZN,QAAQ,CAACC,KAAK,EAAG,MAAKC,MAAM,CAACK,IAAI,CAAC,GAAG,CAAE,EAAC,CAAC,CACzCC,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QAEA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createInValidator","type","name","validator","validate","value","_validator$settings","values","settings","Array","isArray","validation","join","then","v","catch","Promise","resolve","exports"],"sources":["in.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createInValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,iBAAiB,GAAGA,CAAA,KAAoC;EACjE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,8BAA8B;IACpCC,SAAS,EAAE;MACPD,IAAI,EAAE,IAAI;MACVE,QAAQA,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA,IAAAG,mBAAA;QAC3B,MAAMC,MAAM,IAAAD,mBAAA,GAAGH,SAAS,CAACK,QAAQ,cAAAF,mBAAA,uBAAlBA,mBAAA,CAAoBC,MAAM;QACzC,IAAIE,KAAK,CAACC,OAAO,CAACH,MAAM,CAAC,EAAE;UACvB,OAAOI,sBAAU,CACZP,QAAQ,CAACC,KAAK,EAAG,MAAKE,MAAM,CAACK,IAAI,CAAC,GAAG,CAAE,EAAC,CAAC,CACzCC,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QAEA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAlB,iBAAA,GAAAA,iBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createValidators","createGteValidator","createInValidator","createLteValidator","createMaxLengthValidator","createMinLengthValidator","createPatternValidator","createRequiredValidator","createPatternValidatorPlugins","createDateLteValidator","createDateGteValidator","createTimeLteValidator","createTimeGteValidator","createUniqueValidator","createDynamicZoneValidator"],"sources":["index.ts"],"sourcesContent":["import { createGteValidator } from \"./gte\";\nimport { createInValidator } from \"./in\";\nimport { createLteValidator } from \"./lte\";\nimport { createMaxLengthValidator } from \"./maxLength\";\nimport { createMinLengthValidator } from \"./minLength\";\nimport { createPatternValidator } from \"./pattern\";\nimport { createRequiredValidator } from \"./required\";\nimport { createPatternValidatorPlugins } from \"./patternPlugins\";\nimport { createDateLteValidator } from \"./dateLte\";\nimport { createDateGteValidator } from \"./dateGte\";\nimport { createTimeLteValidator } from \"./timeLte\";\nimport { createTimeGteValidator } from \"./timeGte\";\nimport { createUniqueValidator } from \"./unique\";\nimport { createDynamicZoneValidator } from \"./dynamicZone\";\n\nexport const createValidators = () => [\n createGteValidator(),\n createInValidator(),\n createLteValidator(),\n createMaxLengthValidator(),\n createMinLengthValidator(),\n createPatternValidator(),\n createRequiredValidator(),\n createPatternValidatorPlugins(),\n createDateLteValidator(),\n createDateGteValidator(),\n createTimeLteValidator(),\n createTimeGteValidator(),\n createUniqueValidator(),\n createDynamicZoneValidator()\n];\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEO,MAAMA,gBAAgB,GAAG,MAAM,CAClC,IAAAC,uBAAkB,GAAE,EACpB,IAAAC,qBAAiB,GAAE,EACnB,IAAAC,uBAAkB,GAAE,EACpB,IAAAC,mCAAwB,GAAE,EAC1B,IAAAC,mCAAwB,GAAE,EAC1B,IAAAC,+BAAsB,GAAE,EACxB,IAAAC,iCAAuB,GAAE,EACzB,IAAAC,6CAA6B,GAAE,EAC/B,IAAAC,+BAAsB,GAAE,EACxB,IAAAC,+BAAsB,GAAE,EACxB,IAAAC,+BAAsB,GAAE,EACxB,IAAAC,+BAAsB,GAAE,EACxB,IAAAC,6BAAqB,GAAE,EACvB,IAAAC,uCAA0B,GAAE,CAC/B;AAAC"}
1
+ {"version":3,"names":["_gte","require","_in","_lte","_maxLength","_minLength","_pattern","_required","_patternPlugins","_dateLte","_dateGte","_timeLte","_timeGte","_unique","_dynamicZone","createValidators","createGteValidator","createInValidator","createLteValidator","createMaxLengthValidator","createMinLengthValidator","createPatternValidator","createRequiredValidator","createPatternValidatorPlugins","createDateLteValidator","createDateGteValidator","createTimeLteValidator","createTimeGteValidator","createUniqueValidator","createDynamicZoneValidator","exports"],"sources":["index.ts"],"sourcesContent":["import { createGteValidator } from \"./gte\";\nimport { createInValidator } from \"./in\";\nimport { createLteValidator } from \"./lte\";\nimport { createMaxLengthValidator } from \"./maxLength\";\nimport { createMinLengthValidator } from \"./minLength\";\nimport { createPatternValidator } from \"./pattern\";\nimport { createRequiredValidator } from \"./required\";\nimport { createPatternValidatorPlugins } from \"./patternPlugins\";\nimport { createDateLteValidator } from \"./dateLte\";\nimport { createDateGteValidator } from \"./dateGte\";\nimport { createTimeLteValidator } from \"./timeLte\";\nimport { createTimeGteValidator } from \"./timeGte\";\nimport { createUniqueValidator } from \"./unique\";\nimport { createDynamicZoneValidator } from \"./dynamicZone\";\n\nexport const createValidators = () => [\n createGteValidator(),\n createInValidator(),\n createLteValidator(),\n createMaxLengthValidator(),\n createMinLengthValidator(),\n createPatternValidator(),\n createRequiredValidator(),\n createPatternValidatorPlugins(),\n createDateLteValidator(),\n createDateGteValidator(),\n createTimeLteValidator(),\n createTimeGteValidator(),\n createUniqueValidator(),\n createDynamicZoneValidator()\n];\n"],"mappings":";;;;;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,eAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AACA,IAAAW,QAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,YAAA,GAAAb,OAAA;AAEO,MAAMc,gBAAgB,GAAGA,CAAA,KAAM,CAClC,IAAAC,uBAAkB,EAAC,CAAC,EACpB,IAAAC,qBAAiB,EAAC,CAAC,EACnB,IAAAC,uBAAkB,EAAC,CAAC,EACpB,IAAAC,mCAAwB,EAAC,CAAC,EAC1B,IAAAC,mCAAwB,EAAC,CAAC,EAC1B,IAAAC,+BAAsB,EAAC,CAAC,EACxB,IAAAC,iCAAuB,EAAC,CAAC,EACzB,IAAAC,6CAA6B,EAAC,CAAC,EAC/B,IAAAC,+BAAsB,EAAC,CAAC,EACxB,IAAAC,+BAAsB,EAAC,CAAC,EACxB,IAAAC,+BAAsB,EAAC,CAAC,EACxB,IAAAC,+BAAsB,EAAC,CAAC,EACxB,IAAAC,6BAAqB,EAAC,CAAC,EACvB,IAAAC,uCAA0B,EAAC,CAAC,CAC/B;AAACC,OAAA,CAAAf,gBAAA,GAAAA,gBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createLteValidator","type","name","validator","validate","value","lteValue","settings","validation","then","v","catch","Promise","resolve"],"sources":["lte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createLteValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,kBAAkB,GAAG,MAAoC;EAClE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,+BAA+B;IACrCC,SAAS,EAAE;MACPD,IAAI,EAAE,KAAK;MACXE,QAAQ,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA;QAC3B,MAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAQ,wDAAlB,oBAAoBF,KAAK;QAC1C,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;UACjC,OAAOE,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,OAAMC,QAAS,EAAC,CAAC,CAClCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QACA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createLteValidator","type","name","validator","validate","value","_validator$settings","lteValue","settings","validation","then","v","catch","Promise","resolve","exports"],"sources":["lte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createLteValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,kBAAkB,GAAGA,CAAA,KAAoC;EAClE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,+BAA+B;IACrCC,SAAS,EAAE;MACPD,IAAI,EAAE,KAAK;MACXE,QAAQA,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA,IAAAG,mBAAA;QAC3B,MAAMC,QAAQ,IAAAD,mBAAA,GAAGH,SAAS,CAACK,QAAQ,cAAAF,mBAAA,uBAAlBA,mBAAA,CAAoBD,KAAK;QAC1C,IAAI,OAAOE,QAAQ,KAAK,WAAW,EAAE;UACjC,OAAOE,sBAAU,CACZL,QAAQ,CAACC,KAAK,EAAG,OAAME,QAAS,EAAC,CAAC,CAClCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QACA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAf,kBAAA,GAAAA,kBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createMaxLengthValidator","type","name","validator","validate","value","maxLengthValue","settings","validation","then","v","catch","Promise","resolve"],"sources":["maxLength.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createMaxLengthValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,wBAAwB,GAAG,MAAoC;EACxE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,sCAAsC;IAC5CC,SAAS,EAAE;MACPD,IAAI,EAAE,WAAW;MACjBE,QAAQ,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA;QAC3B,MAAMG,cAAc,0BAAGH,SAAS,CAACI,QAAQ,wDAAlB,oBAAoBF,KAAK;QAChD,IAAI,OAAOC,cAAc,KAAK,WAAW,EAAE;UACvC,OAAOE,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,aAAYC,cAAe,EAAC,CAAC,CAC9CG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QAEA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createMaxLengthValidator","type","name","validator","validate","value","_validator$settings","maxLengthValue","settings","validation","then","v","catch","Promise","resolve","exports"],"sources":["maxLength.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createMaxLengthValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,wBAAwB,GAAGA,CAAA,KAAoC;EACxE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,sCAAsC;IAC5CC,SAAS,EAAE;MACPD,IAAI,EAAE,WAAW;MACjBE,QAAQA,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA,IAAAG,mBAAA;QAC3B,MAAMC,cAAc,IAAAD,mBAAA,GAAGH,SAAS,CAACK,QAAQ,cAAAF,mBAAA,uBAAlBA,mBAAA,CAAoBD,KAAK;QAChD,IAAI,OAAOE,cAAc,KAAK,WAAW,EAAE;UACvC,OAAOE,sBAAU,CACZL,QAAQ,CAACC,KAAK,EAAG,aAAYE,cAAe,EAAC,CAAC,CAC9CG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QAEA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAf,wBAAA,GAAAA,wBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createMinLengthValidator","type","name","validator","validate","value","minLengthValue","settings","validation","then","v","catch","Promise","resolve"],"sources":["minLength.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createMinLengthValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,wBAAwB,GAAG,MAAoC;EACxE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,sCAAsC;IAC5CC,SAAS,EAAE;MACPD,IAAI,EAAE,WAAW;MACjBE,QAAQ,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA;QAC3B,MAAMG,cAAc,0BAAGH,SAAS,CAACI,QAAQ,wDAAlB,oBAAoBF,KAAK;QAChD,IAAI,OAAOC,cAAc,KAAK,WAAW,EAAE;UACvC,OAAOE,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,aAAYC,cAAe,EAAC,CAAC,CAC9CG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QAEA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createMinLengthValidator","type","name","validator","validate","value","_validator$settings","minLengthValue","settings","validation","then","v","catch","Promise","resolve","exports"],"sources":["minLength.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createMinLengthValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,wBAAwB,GAAGA,CAAA,KAAoC;EACxE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,sCAAsC;IAC5CC,SAAS,EAAE;MACPD,IAAI,EAAE,WAAW;MACjBE,QAAQA,CAAC;QAAEC,KAAK;QAAEF;MAAU,CAAC,EAAE;QAAA,IAAAG,mBAAA;QAC3B,MAAMC,cAAc,IAAAD,mBAAA,GAAGH,SAAS,CAACK,QAAQ,cAAAF,mBAAA,uBAAlBA,mBAAA,CAAoBD,KAAK;QAChD,IAAI,OAAOE,cAAc,KAAK,WAAW,EAAE;UACvC,OAAOE,sBAAU,CACZL,QAAQ,CAACC,KAAK,EAAG,aAAYE,cAAe,EAAC,CAAC,CAC9CG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;QAC3B;QAEA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAf,wBAAA,GAAAA,wBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createPatternValidator","type","name","validator","validate","value","context","settings","pattern","preset","patternPlugin","plugins","byType","find","item","RegExp","regex","flags","test"],"sources":["pattern.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin, CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createPatternValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,sBAAsB,GAAG,MAAoC;EACtE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,mCAAmC;IACzCC,SAAS,EAAE;MACPD,IAAI,EAAE,SAAS;MACf,MAAME,QAAQ,CAAC;QAAEC,KAAK;QAAEF,SAAS;QAAEG;MAAQ,CAAC,EAAE;QAC1C,IAAI,CAACD,KAAK,EAAE;UACR,OAAO,IAAI;QACf;QAEA,MAAM;UAAEE;QAAS,CAAC,GAAGJ,SAAS;QAE9B,IAAIK,OAAO;QACX,IAAI,CAAAD,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEE,MAAM,MAAK,QAAQ,EAAE;UAC/BD,OAAO,GAAGD,QAAQ;QACtB,CAAC,MAAM;UACH,MAAMG,aAAa,GAAGJ,OAAO,CAACK,OAAO,CAChCC,MAAM,CACH,mCAAmC,CACtC,CACAC,IAAI,CAACC,IAAI,IAAIA,IAAI,CAACN,OAAO,CAACN,IAAI,MAAKK,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEE,MAAM,EAAC;UAEzD,IAAIC,aAAa,EAAE;YACfF,OAAO,GAAGE,aAAa,CAACF,OAAO;UACnC;QACJ;QAEA,IAAI,CAACA,OAAO,EAAE;UACV,OAAO,IAAI;QACf;QAEA,OAAO,IAAIO,MAAM,CAACP,OAAO,CAACQ,KAAK,EAAER,OAAO,CAACS,KAAK,CAAC,CAACC,IAAI,CAACb,KAAK,CAAC;MAC/D;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createPatternValidator","type","name","validator","validate","value","context","settings","pattern","preset","patternPlugin","plugins","byType","find","item","RegExp","regex","flags","test","exports"],"sources":["pattern.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin, CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createPatternValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,sBAAsB,GAAGA,CAAA,KAAoC;EACtE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,mCAAmC;IACzCC,SAAS,EAAE;MACPD,IAAI,EAAE,SAAS;MACf,MAAME,QAAQA,CAAC;QAAEC,KAAK;QAAEF,SAAS;QAAEG;MAAQ,CAAC,EAAE;QAC1C,IAAI,CAACD,KAAK,EAAE;UACR,OAAO,IAAI;QACf;QAEA,MAAM;UAAEE;QAAS,CAAC,GAAGJ,SAAS;QAE9B,IAAIK,OAAO;QACX,IAAI,CAAAD,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEE,MAAM,MAAK,QAAQ,EAAE;UAC/BD,OAAO,GAAGD,QAAQ;QACtB,CAAC,MAAM;UACH,MAAMG,aAAa,GAAGJ,OAAO,CAACK,OAAO,CAChCC,MAAM,CACH,mCACJ,CAAC,CACAC,IAAI,CAACC,IAAI,IAAIA,IAAI,CAACN,OAAO,CAACN,IAAI,MAAKK,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEE,MAAM,EAAC;UAEzD,IAAIC,aAAa,EAAE;YACfF,OAAO,GAAGE,aAAa,CAACF,OAAO;UACnC;QACJ;QAEA,IAAI,CAACA,OAAO,EAAE;UACV,OAAO,IAAI;QACf;QAEA,OAAO,IAAIO,MAAM,CAACP,OAAO,CAACQ,KAAK,EAAER,OAAO,CAACS,KAAK,CAAC,CAACC,IAAI,CAACb,KAAK,CAAC;MAC/D;IACJ;EACJ,CAAC;AACL,CAAC;AAACc,OAAA,CAAAnB,sBAAA,GAAAA,sBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createEmailPatternValidator","type","name","pattern","regex","flags"],"sources":["email.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createEmailPatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,2BAA2B,GAAG,MAA2C;EAClF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,yCAAyC;IAC/CC,OAAO,EAAE;MACLD,IAAI,EAAE,OAAO;MACbE,KAAK,EAAG,oCAAmC;MAC3CC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createEmailPatternValidator","type","name","pattern","regex","flags","exports"],"sources":["email.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createEmailPatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,2BAA2B,GAAGA,CAAA,KAA2C;EAClF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,yCAAyC;IAC/CC,OAAO,EAAE;MACLD,IAAI,EAAE,OAAO;MACbE,KAAK,EAAG,oCAAmC;MAC3CC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAN,2BAAA,GAAAA,2BAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createPatternValidatorPlugins","createEmailPatternValidator","createUrlPatternValidator","createLowerCasePatternValidator","createUpperCasePatternValidator","createLowerCaseSpacePatternValidator","createUpperCaseSpacePatternValidator"],"sources":["index.ts"],"sourcesContent":["import { createEmailPatternValidator } from \"./email\";\nimport { createUrlPatternValidator } from \"./url\";\nimport { createLowerCasePatternValidator } from \"./lowerCase\";\nimport { createUpperCasePatternValidator } from \"./upperCase\";\nimport { createLowerCaseSpacePatternValidator } from \"./lowerCaseSpace\";\nimport { createUpperCaseSpacePatternValidator } from \"./upperCaseSpace\";\nimport { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createPatternValidatorPlugins = (): CmsModelFieldPatternValidatorPlugin[] => {\n return [\n createEmailPatternValidator(),\n createUrlPatternValidator(),\n createLowerCasePatternValidator(),\n createUpperCasePatternValidator(),\n createLowerCaseSpacePatternValidator(),\n createUpperCaseSpacePatternValidator()\n ];\n};\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAGO,MAAMA,6BAA6B,GAAG,MAA6C;EACtF,OAAO,CACH,IAAAC,kCAA2B,GAAE,EAC7B,IAAAC,8BAAyB,GAAE,EAC3B,IAAAC,0CAA+B,GAAE,EACjC,IAAAC,0CAA+B,GAAE,EACjC,IAAAC,oDAAoC,GAAE,EACtC,IAAAC,oDAAoC,GAAE,CACzC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_email","require","_url","_lowerCase","_upperCase","_lowerCaseSpace","_upperCaseSpace","createPatternValidatorPlugins","createEmailPatternValidator","createUrlPatternValidator","createLowerCasePatternValidator","createUpperCasePatternValidator","createLowerCaseSpacePatternValidator","createUpperCaseSpacePatternValidator","exports"],"sources":["index.ts"],"sourcesContent":["import { createEmailPatternValidator } from \"./email\";\nimport { createUrlPatternValidator } from \"./url\";\nimport { createLowerCasePatternValidator } from \"./lowerCase\";\nimport { createUpperCasePatternValidator } from \"./upperCase\";\nimport { createLowerCaseSpacePatternValidator } from \"./lowerCaseSpace\";\nimport { createUpperCaseSpacePatternValidator } from \"./upperCaseSpace\";\nimport { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createPatternValidatorPlugins = (): CmsModelFieldPatternValidatorPlugin[] => {\n return [\n createEmailPatternValidator(),\n createUrlPatternValidator(),\n createLowerCasePatternValidator(),\n createUpperCasePatternValidator(),\n createLowerCaseSpacePatternValidator(),\n createUpperCaseSpacePatternValidator()\n ];\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AAGO,MAAMM,6BAA6B,GAAGA,CAAA,KAA6C;EACtF,OAAO,CACH,IAAAC,kCAA2B,EAAC,CAAC,EAC7B,IAAAC,8BAAyB,EAAC,CAAC,EAC3B,IAAAC,0CAA+B,EAAC,CAAC,EACjC,IAAAC,0CAA+B,EAAC,CAAC,EACjC,IAAAC,oDAAoC,EAAC,CAAC,EACtC,IAAAC,oDAAoC,EAAC,CAAC,CACzC;AACL,CAAC;AAACC,OAAA,CAAAP,6BAAA,GAAAA,6BAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createLowerCasePatternValidator","type","name","pattern","regex","flags"],"sources":["lowerCase.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createLowerCasePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,+BAA+B,GAAG,MAA2C;EACtF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,8CAA8C;IACpDC,OAAO,EAAE;MACLD,IAAI,EAAE,WAAW;MACjBE,KAAK,EAAG,YAAW;MACnBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createLowerCasePatternValidator","type","name","pattern","regex","flags","exports"],"sources":["lowerCase.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createLowerCasePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,+BAA+B,GAAGA,CAAA,KAA2C;EACtF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,8CAA8C;IACpDC,OAAO,EAAE;MACLD,IAAI,EAAE,WAAW;MACjBE,KAAK,EAAG,YAAW;MACnBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAN,+BAAA,GAAAA,+BAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createLowerCaseSpacePatternValidator","type","name","pattern","regex","flags"],"sources":["lowerCaseSpace.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createLowerCaseSpacePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,oCAAoC,GAAG,MAA2C;EAC3F,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,oDAAoD;IAC1DC,OAAO,EAAE;MACLD,IAAI,EAAE,gBAAgB;MACtBE,KAAK,EAAG,eAAc;MACtBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createLowerCaseSpacePatternValidator","type","name","pattern","regex","flags","exports"],"sources":["lowerCaseSpace.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createLowerCaseSpacePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,oCAAoC,GAAGA,CAAA,KAA2C;EAC3F,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,oDAAoD;IAC1DC,OAAO,EAAE;MACLD,IAAI,EAAE,gBAAgB;MACtBE,KAAK,EAAG,eAAc;MACtBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAN,oCAAA,GAAAA,oCAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createUpperCasePatternValidator","type","name","pattern","regex","flags"],"sources":["upperCase.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createUpperCasePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,+BAA+B,GAAG,MAA2C;EACtF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,8CAA8C;IACpDC,OAAO,EAAE;MACLD,IAAI,EAAE,WAAW;MACjBE,KAAK,EAAG,YAAW;MACnBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createUpperCasePatternValidator","type","name","pattern","regex","flags","exports"],"sources":["upperCase.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createUpperCasePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,+BAA+B,GAAGA,CAAA,KAA2C;EACtF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,8CAA8C;IACpDC,OAAO,EAAE;MACLD,IAAI,EAAE,WAAW;MACjBE,KAAK,EAAG,YAAW;MACnBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAN,+BAAA,GAAAA,+BAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createUpperCaseSpacePatternValidator","type","name","pattern","regex","flags"],"sources":["upperCaseSpace.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createUpperCaseSpacePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,oCAAoC,GAAG,MAA2C;EAC3F,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,oDAAoD;IAC1DC,OAAO,EAAE;MACLD,IAAI,EAAE,gBAAgB;MACtBE,KAAK,EAAG,eAAc;MACtBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createUpperCaseSpacePatternValidator","type","name","pattern","regex","flags","exports"],"sources":["upperCaseSpace.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createUpperCaseSpacePatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,oCAAoC,GAAGA,CAAA,KAA2C;EAC3F,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,oDAAoD;IAC1DC,OAAO,EAAE;MACLD,IAAI,EAAE,gBAAgB;MACtBE,KAAK,EAAG,eAAc;MACtBC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAN,oCAAA,GAAAA,oCAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createUrlPatternValidator","type","name","pattern","regex","flags"],"sources":["url.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createUrlPatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,yBAAyB,GAAG,MAA2C;EAChF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,uCAAuC;IAC7CC,OAAO,EAAE;MACLD,IAAI,EAAE,KAAK;MACXE,KAAK,EAAE,+FAA+F;MACtGC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createUrlPatternValidator","type","name","pattern","regex","flags","exports"],"sources":["url.ts"],"sourcesContent":["import { CmsModelFieldPatternValidatorPlugin } from \"~/types\";\n\nexport const createUrlPatternValidator = (): CmsModelFieldPatternValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAEO,MAAMA,yBAAyB,GAAGA,CAAA,KAA2C;EAChF,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCC,IAAI,EAAE,uCAAuC;IAC7CC,OAAO,EAAE;MACLD,IAAI,EAAE,KAAK;MACXE,KAAK,EAAE,+FAA+F;MACtGC,KAAK,EAAE;IACX;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAN,yBAAA,GAAAA,yBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createRequiredValidator","type","name","validator","validate","value","validation","then","v","catch"],"sources":["required.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createRequiredValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,uBAAuB,GAAG,MAAoC;EACvE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,oCAAoC;IAC1CC,SAAS,EAAE;MACPD,IAAI,EAAE,UAAU;MAChBE,QAAQ,CAAC;QAAEC;MAAM,CAAC,EAAE;QAChB,OAAOC,sBAAU,CACZF,QAAQ,CAACC,KAAK,EAAE,UAAU,CAAC,CAC3BE,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;MAC3B;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createRequiredValidator","type","name","validator","validate","value","validation","then","v","catch","exports"],"sources":["required.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createRequiredValidator = (): CmsModelFieldValidatorPlugin => {\n return {\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};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,uBAAuB,GAAGA,CAAA,KAAoC;EACvE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,oCAAoC;IAC1CC,SAAS,EAAE;MACPD,IAAI,EAAE,UAAU;MAChBE,QAAQA,CAAC;QAAEC;MAAM,CAAC,EAAE;QAChB,OAAOC,sBAAU,CACZF,QAAQ,CAACC,KAAK,EAAE,UAAU,CAAC,CAC3BE,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;MAC3B;IACJ;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAV,uBAAA,GAAAA,uBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createTimeGteValidator","type","name","validator","validate","value","gteValue","settings","validation","then","v","catch"],"sources":["timeGte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createTimeGteValidator = (): 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"],"mappings":";;;;;;AAAA;AAGO,MAAMA,sBAAsB,GAAG,OAAqC;EACvEC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,oCAAoC;EAC1CC,SAAS,EAAE;IACPD,IAAI,EAAE,SAAS;IACf,MAAME,QAAQ,CAAC;MAAEC,KAAK;MAAEF;IAAU,CAAC,EAAE;MAAA;MACjC,MAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAQ,wDAAlB,oBAAoBF,KAAK;MAC1C,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;QACjC,OAAO,IAAI;MACf;MACA,OAAOE,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,WAAUC,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;IAC3B;EACJ;AACJ,CAAC,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createTimeGteValidator","type","name","validator","validate","value","_validator$settings","gteValue","settings","validation","then","v","catch","exports"],"sources":["timeGte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createTimeGteValidator = (): 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"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,sBAAsB,GAAGA,CAAA,MAAqC;EACvEC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,oCAAoC;EAC1CC,SAAS,EAAE;IACPD,IAAI,EAAE,SAAS;IACf,MAAME,QAAQA,CAAC;MAAEC,KAAK;MAAEF;IAAU,CAAC,EAAE;MAAA,IAAAG,mBAAA;MACjC,MAAMC,QAAQ,IAAAD,mBAAA,GAAGH,SAAS,CAACK,QAAQ,cAAAF,mBAAA,uBAAlBA,mBAAA,CAAoBD,KAAK;MAC1C,IAAI,OAAOE,QAAQ,KAAK,WAAW,EAAE;QACjC,OAAO,IAAI;MACf;MACA,OAAOE,sBAAU,CACZL,QAAQ,CAACC,KAAK,EAAG,WAAUE,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;IAC3B;EACJ;AACJ,CAAC,CAAC;AAACC,OAAA,CAAAb,sBAAA,GAAAA,sBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createTimeLteValidator","type","name","validator","validate","value","lteValue","settings","validation","then","v","catch"],"sources":["timeLte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createTimeLteValidator = (): 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"],"mappings":";;;;;;AAAA;AAGO,MAAMA,sBAAsB,GAAG,OAAqC;EACvEC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,oCAAoC;EAC1CC,SAAS,EAAE;IACPD,IAAI,EAAE,SAAS;IACf,MAAME,QAAQ,CAAC;MAAEC,KAAK;MAAEF;IAAU,CAAC,EAAE;MAAA;MACjC,MAAMG,QAAQ,0BAAGH,SAAS,CAACI,QAAQ,wDAAlB,oBAAoBF,KAAK;MAC1C,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;QACjC,OAAO,IAAI;MACf;MACA,OAAOE,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,WAAUC,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;IAC3B;EACJ;AACJ,CAAC,CAAC;AAAC"}
1
+ {"version":3,"names":["_validation","require","createTimeLteValidator","type","name","validator","validate","value","_validator$settings","lteValue","settings","validation","then","v","catch","exports"],"sources":["timeLte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createTimeLteValidator = (): 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"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,sBAAsB,GAAGA,CAAA,MAAqC;EACvEC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,oCAAoC;EAC1CC,SAAS,EAAE;IACPD,IAAI,EAAE,SAAS;IACf,MAAME,QAAQA,CAAC;MAAEC,KAAK;MAAEF;IAAU,CAAC,EAAE;MAAA,IAAAG,mBAAA;MACjC,MAAMC,QAAQ,IAAAD,mBAAA,GAAGH,SAAS,CAACK,QAAQ,cAAAF,mBAAA,uBAAlBA,mBAAA,CAAoBD,KAAK;MAC1C,IAAI,OAAOE,QAAQ,KAAK,WAAW,EAAE;QACjC,OAAO,IAAI;MACf;MACA,OAAOE,sBAAU,CACZL,QAAQ,CAACC,KAAK,EAAG,WAAUE,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;IAC3B;EACJ;AACJ,CAAC,CAAC;AAACC,OAAA,CAAAb,sBAAA,GAAAA,sBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["createUniqueValidator","type","name","validator","validate","field","value","initialValue","context","model","entry","manager","cms","getModelManager","trim","items","listLatest","where","entryId_not","entryId","undefined","fieldId","limit","length","ex","WebinyError","error"],"sources":["unique.ts"],"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 const createUniqueValidator = (): 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 [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 error: ex,\n field,\n value,\n model\n }\n );\n }\n }\n }\n };\n};\n"],"mappings":";;;;;;;AAAA;AAGA;AACA;AACA;AACA;AACO,MAAMA,qBAAqB,GAAG,MAAoC;EACrE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,kCAAkC;IACxCC,SAAS,EAAE;MACPD,IAAI,EAAE,QAAQ;MACdE,QAAQ,EAAE,OAAO;QAAEC,KAAK;QAAEC,KAAK,EAAEC,YAAY;QAAEC,OAAO;QAAEC,KAAK;QAAEC;MAAM,CAAC,KAAK;QACvE,MAAMC,OAAO,GAAG,MAAMH,OAAO,CAACI,GAAG,CAACC,eAAe,CAACJ,KAAK,CAAC;QACxD;AAChB;AACA;AACA;QACgB,MAAMH,KAAK,GAAG,CAACC,YAAY,IAAI,EAAE,EAAEO,IAAI,EAAE;QACzC,IAAI,CAACR,KAAK,EAAE;UACR,OAAO,IAAI;QACf;QACA,IAAI;UACA,MAAM,CAACS,KAAK,CAAC,GAAG,MAAMJ,OAAO,CAACK,UAAU,CAAC;YACrCC,KAAK,EAAE;cACHC,WAAW,EAAER,KAAK,GAAGA,KAAK,CAACS,OAAO,GAAGC,SAAS;cAC9C,CAACf,KAAK,CAACgB,OAAO,GAAGf;YACrB,CAAC;YACDgB,KAAK,EAAE;UACX,CAAC,CAAC;UACF,OAAOP,KAAK,CAACQ,MAAM,KAAK,CAAC;QAC7B,CAAC,CAAC,OAAOC,EAAE,EAAE;UACT,MAAM,IAAIC,cAAW,CACjB,oDAAoD,EACpD,oBAAoB,EACpB;YACIC,KAAK,EAAEF,EAAE;YACTnB,KAAK;YACLC,KAAK;YACLG;UACJ,CAAC,CACJ;QACL;MACJ;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","createUniqueValidator","type","name","validator","validate","field","value","initialValue","context","model","entry","manager","cms","getModelManager","trim","items","listLatest","where","entryId_not","entryId","undefined","fieldId","limit","length","ex","WebinyError","error","exports"],"sources":["unique.ts"],"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 const createUniqueValidator = (): 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 [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 error: ex,\n field,\n value,\n model\n }\n );\n }\n }\n }\n };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA;AACA;AACA;AACA;AACO,MAAMC,qBAAqB,GAAGA,CAAA,KAAoC;EACrE,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,kCAAkC;IACxCC,SAAS,EAAE;MACPD,IAAI,EAAE,QAAQ;MACdE,QAAQ,EAAE,MAAAA,CAAO;QAAEC,KAAK;QAAEC,KAAK,EAAEC,YAAY;QAAEC,OAAO;QAAEC,KAAK;QAAEC;MAAM,CAAC,KAAK;QACvE,MAAMC,OAAO,GAAG,MAAMH,OAAO,CAACI,GAAG,CAACC,eAAe,CAACJ,KAAK,CAAC;QACxD;AAChB;AACA;AACA;QACgB,MAAMH,KAAK,GAAG,CAACC,YAAY,IAAI,EAAE,EAAEO,IAAI,CAAC,CAAC;QACzC,IAAI,CAACR,KAAK,EAAE;UACR,OAAO,IAAI;QACf;QACA,IAAI;UACA,MAAM,CAACS,KAAK,CAAC,GAAG,MAAMJ,OAAO,CAACK,UAAU,CAAC;YACrCC,KAAK,EAAE;cACHC,WAAW,EAAER,KAAK,GAAGA,KAAK,CAACS,OAAO,GAAGC,SAAS;cAC9C,CAACf,KAAK,CAACgB,OAAO,GAAGf;YACrB,CAAC;YACDgB,KAAK,EAAE;UACX,CAAC,CAAC;UACF,OAAOP,KAAK,CAACQ,MAAM,KAAK,CAAC;QAC7B,CAAC,CAAC,OAAOC,EAAE,EAAE;UACT,MAAM,IAAIC,cAAW,CACjB,oDAAoD,EACpD,oBAAoB,EACpB;YACIC,KAAK,EAAEF,EAAE;YACTnB,KAAK;YACLC,KAAK;YACLG;UACJ,CACJ,CAAC;QACL;MACJ;IACJ;EACJ,CAAC;AACL,CAAC;AAACkB,OAAA,CAAA3B,qBAAA,GAAAA,qBAAA"}
package/utils/access.d.ts DELETED
@@ -1,8 +0,0 @@
1
- import { CmsContext, CmsGroup, CmsGroupPermission, CmsModel } from "../types";
2
- export declare const validateGroupAccess: (context: CmsContext, permission: CmsGroupPermission, group: CmsGroup) => boolean;
3
- export declare const validateModelAccess: (context: CmsContext, model: CmsModel) => Promise<boolean>;
4
- /**
5
- * model access is checking for both specific model or group access
6
- * if permission has specific models set as access pattern then groups will not matter (although both can be set)
7
- */
8
- export declare const checkModelAccess: (context: CmsContext, model: CmsModel) => Promise<void>;
package/utils/access.js DELETED
@@ -1,76 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.validateModelAccess = exports.validateGroupAccess = exports.checkModelAccess = void 0;
7
- var _apiSecurity = require("@webiny/api-security");
8
- var _permissions = require("./permissions");
9
- const validateGroupAccess = (context, permission, group) => {
10
- const {
11
- groups
12
- } = permission;
13
- // when no groups defined on permission
14
- // it means user has access to everything
15
- if (!groups) {
16
- return true;
17
- }
18
- const locale = context.cms.getLocale().code;
19
- // when there is no locale in groups, it means that no access was given
20
- // this happens when access control was set but no models or groups were added
21
- if (Array.isArray(groups[locale]) === false || groups[locale].includes(group.id) === false) {
22
- return false;
23
- }
24
- return true;
25
- };
26
- exports.validateGroupAccess = validateGroupAccess;
27
- const validateModelAccess = async (context, model) => {
28
- const modelGroupPermission = await (0, _permissions.checkPermissions)(context, "cms.contentModelGroup", {
29
- rwd: "r"
30
- });
31
- const {
32
- groups
33
- } = modelGroupPermission;
34
- const modelPermission = await (0, _permissions.checkPermissions)(context, "cms.contentModel", {
35
- rwd: "r"
36
- });
37
- const {
38
- models
39
- } = modelPermission;
40
- // when no models or groups defined on permission
41
- // it means user has access to everything
42
- if (!models && !groups) {
43
- return true;
44
- }
45
- const locale = context.cms.getLocale().code;
46
- // Check whether the model is question belongs to "content model groups" for which user has permission.
47
- if (groups) {
48
- if (Array.isArray(groups[locale]) === false || groups[locale].includes(model.group.id) === false) {
49
- return false;
50
- }
51
- }
52
- // Check whether the model is question belongs to "content models" for which user has permission.
53
- if (models) {
54
- if (Array.isArray(models[locale]) === false || models[locale].includes(model.modelId) === false) {
55
- return false;
56
- }
57
- }
58
- return true;
59
- };
60
-
61
- /**
62
- * model access is checking for both specific model or group access
63
- * if permission has specific models set as access pattern then groups will not matter (although both can be set)
64
- */
65
- exports.validateModelAccess = validateModelAccess;
66
- const checkModelAccess = async (context, model) => {
67
- if (await validateModelAccess(context, model)) {
68
- return;
69
- }
70
- throw new _apiSecurity.NotAuthorizedError({
71
- data: {
72
- reason: `Not allowed to access model "${model.modelId}".`
73
- }
74
- });
75
- };
76
- exports.checkModelAccess = checkModelAccess;
@@ -1 +0,0 @@
1
- {"version":3,"names":["validateGroupAccess","context","permission","group","groups","locale","cms","getLocale","code","Array","isArray","includes","id","validateModelAccess","model","modelGroupPermission","checkPermissions","rwd","modelPermission","models","modelId","checkModelAccess","NotAuthorizedError","data","reason"],"sources":["access.ts"],"sourcesContent":["import { NotAuthorizedError } from \"@webiny/api-security\";\nimport { CmsContext, CmsGroup, CmsGroupPermission, CmsModel, CmsModelPermission } from \"~/types\";\nimport { checkPermissions } from \"./permissions\";\n\nexport const validateGroupAccess = (\n context: CmsContext,\n permission: CmsGroupPermission,\n group: CmsGroup\n): boolean => {\n const { groups } = permission;\n // when no groups defined on permission\n // it means user has access to everything\n if (!groups) {\n return true;\n }\n const locale = context.cms.getLocale().code;\n // when there is no locale in groups, it means that no access was given\n // this happens when access control was set but no models or groups were added\n if (Array.isArray(groups[locale]) === false || groups[locale].includes(group.id) === false) {\n return false;\n }\n return true;\n};\n\nexport const validateModelAccess = async (\n context: CmsContext,\n model: CmsModel\n): Promise<boolean> => {\n const modelGroupPermission: CmsGroupPermission = await checkPermissions(\n context,\n \"cms.contentModelGroup\",\n { rwd: \"r\" }\n );\n const { groups } = modelGroupPermission;\n\n const modelPermission: CmsModelPermission = await checkPermissions(\n context,\n \"cms.contentModel\",\n {\n rwd: \"r\"\n }\n );\n const { models } = modelPermission;\n // when no models or groups defined on permission\n // it means user has access to everything\n if (!models && !groups) {\n return true;\n }\n const locale = context.cms.getLocale().code;\n // Check whether the model is question belongs to \"content model groups\" for which user has permission.\n if (groups) {\n if (\n Array.isArray(groups[locale]) === false ||\n groups[locale].includes(model.group.id) === false\n ) {\n return false;\n }\n }\n // Check whether the model is question belongs to \"content models\" for which user has permission.\n if (models) {\n if (\n Array.isArray(models[locale]) === false ||\n models[locale].includes(model.modelId) === false\n ) {\n return false;\n }\n }\n\n return true;\n};\n\n/**\n * model access is checking for both specific model or group access\n * if permission has specific models set as access pattern then groups will not matter (although both can be set)\n */\nexport const checkModelAccess = async (context: CmsContext, model: CmsModel): Promise<void> => {\n if (await validateModelAccess(context, model)) {\n return;\n }\n throw new NotAuthorizedError({\n data: {\n reason: `Not allowed to access model \"${model.modelId}\".`\n }\n });\n};\n"],"mappings":";;;;;;AAAA;AAEA;AAEO,MAAMA,mBAAmB,GAAG,CAC/BC,OAAmB,EACnBC,UAA8B,EAC9BC,KAAe,KACL;EACV,MAAM;IAAEC;EAAO,CAAC,GAAGF,UAAU;EAC7B;EACA;EACA,IAAI,CAACE,MAAM,EAAE;IACT,OAAO,IAAI;EACf;EACA,MAAMC,MAAM,GAAGJ,OAAO,CAACK,GAAG,CAACC,SAAS,EAAE,CAACC,IAAI;EAC3C;EACA;EACA,IAAIC,KAAK,CAACC,OAAO,CAACN,MAAM,CAACC,MAAM,CAAC,CAAC,KAAK,KAAK,IAAID,MAAM,CAACC,MAAM,CAAC,CAACM,QAAQ,CAACR,KAAK,CAACS,EAAE,CAAC,KAAK,KAAK,EAAE;IACxF,OAAO,KAAK;EAChB;EACA,OAAO,IAAI;AACf,CAAC;AAAC;AAEK,MAAMC,mBAAmB,GAAG,OAC/BZ,OAAmB,EACnBa,KAAe,KACI;EACnB,MAAMC,oBAAwC,GAAG,MAAM,IAAAC,6BAAgB,EACnEf,OAAO,EACP,uBAAuB,EACvB;IAAEgB,GAAG,EAAE;EAAI,CAAC,CACf;EACD,MAAM;IAAEb;EAAO,CAAC,GAAGW,oBAAoB;EAEvC,MAAMG,eAAmC,GAAG,MAAM,IAAAF,6BAAgB,EAC9Df,OAAO,EACP,kBAAkB,EAClB;IACIgB,GAAG,EAAE;EACT,CAAC,CACJ;EACD,MAAM;IAAEE;EAAO,CAAC,GAAGD,eAAe;EAClC;EACA;EACA,IAAI,CAACC,MAAM,IAAI,CAACf,MAAM,EAAE;IACpB,OAAO,IAAI;EACf;EACA,MAAMC,MAAM,GAAGJ,OAAO,CAACK,GAAG,CAACC,SAAS,EAAE,CAACC,IAAI;EAC3C;EACA,IAAIJ,MAAM,EAAE;IACR,IACIK,KAAK,CAACC,OAAO,CAACN,MAAM,CAACC,MAAM,CAAC,CAAC,KAAK,KAAK,IACvCD,MAAM,CAACC,MAAM,CAAC,CAACM,QAAQ,CAACG,KAAK,CAACX,KAAK,CAACS,EAAE,CAAC,KAAK,KAAK,EACnD;MACE,OAAO,KAAK;IAChB;EACJ;EACA;EACA,IAAIO,MAAM,EAAE;IACR,IACIV,KAAK,CAACC,OAAO,CAACS,MAAM,CAACd,MAAM,CAAC,CAAC,KAAK,KAAK,IACvCc,MAAM,CAACd,MAAM,CAAC,CAACM,QAAQ,CAACG,KAAK,CAACM,OAAO,CAAC,KAAK,KAAK,EAClD;MACE,OAAO,KAAK;IAChB;EACJ;EAEA,OAAO,IAAI;AACf,CAAC;;AAED;AACA;AACA;AACA;AAHA;AAIO,MAAMC,gBAAgB,GAAG,OAAOpB,OAAmB,EAAEa,KAAe,KAAoB;EAC3F,IAAI,MAAMD,mBAAmB,CAACZ,OAAO,EAAEa,KAAK,CAAC,EAAE;IAC3C;EACJ;EACA,MAAM,IAAIQ,+BAAkB,CAAC;IACzBC,IAAI,EAAE;MACFC,MAAM,EAAG,gCAA+BV,KAAK,CAACM,OAAQ;IAC1D;EACJ,CAAC,CAAC;AACN,CAAC;AAAC"}
@@ -1,8 +0,0 @@
1
- import { BaseCmsSecurityPermission, CmsContext, CmsIdentity } from "../types";
2
- interface OwnableRecord {
3
- createdBy?: CmsIdentity;
4
- ownedBy?: CmsIdentity;
5
- }
6
- export declare const checkOwnership: (context: CmsContext, permission: BaseCmsSecurityPermission, record: OwnableRecord) => void;
7
- export declare const validateOwnership: (context: CmsContext, permission: BaseCmsSecurityPermission, record: OwnableRecord) => boolean;
8
- export {};
@@ -1,33 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.validateOwnership = exports.checkOwnership = void 0;
7
- var _apiSecurity = require("@webiny/api-security");
8
- const checkOwnership = (context, permission, record) => {
9
- var _record$ownedBy, _record$createdBy;
10
- if (!permission.own) {
11
- return;
12
- }
13
- const identity = context.security.getIdentity();
14
- const owner = identity && ((_record$ownedBy = record.ownedBy) === null || _record$ownedBy === void 0 ? void 0 : _record$ownedBy.id) === identity.id;
15
- const creator = identity && ((_record$createdBy = record.createdBy) === null || _record$createdBy === void 0 ? void 0 : _record$createdBy.id) === identity.id;
16
- if (!owner && !creator) {
17
- throw new _apiSecurity.NotAuthorizedError({
18
- data: {
19
- reason: `You are not the owner of the record.`
20
- }
21
- });
22
- }
23
- };
24
- exports.checkOwnership = checkOwnership;
25
- const validateOwnership = (context, permission, record) => {
26
- try {
27
- checkOwnership(context, permission, record);
28
- return true;
29
- } catch {
30
- return false;
31
- }
32
- };
33
- exports.validateOwnership = validateOwnership;
@@ -1 +0,0 @@
1
- {"version":3,"names":["checkOwnership","context","permission","record","own","identity","security","getIdentity","owner","ownedBy","id","creator","createdBy","NotAuthorizedError","data","reason","validateOwnership"],"sources":["ownership.ts"],"sourcesContent":["import { BaseCmsSecurityPermission, CmsContext, CmsIdentity } from \"~/types\";\nimport { NotAuthorizedError } from \"@webiny/api-security\";\n\ninterface OwnableRecord {\n createdBy?: CmsIdentity;\n ownedBy?: CmsIdentity;\n}\n\nexport const checkOwnership = (\n context: CmsContext,\n permission: BaseCmsSecurityPermission,\n record: OwnableRecord\n): void => {\n if (!permission.own) {\n return;\n }\n\n const identity = context.security.getIdentity();\n const owner = identity && record.ownedBy?.id === identity.id;\n const creator = identity && record.createdBy?.id === identity.id;\n\n if (!owner && !creator) {\n throw new NotAuthorizedError({\n data: {\n reason: `You are not the owner of the record.`\n }\n });\n }\n};\n\nexport const validateOwnership = (\n context: CmsContext,\n permission: BaseCmsSecurityPermission,\n record: OwnableRecord\n): boolean => {\n try {\n checkOwnership(context, permission, record);\n return true;\n } catch {\n return false;\n }\n};\n"],"mappings":";;;;;;AACA;AAOO,MAAMA,cAAc,GAAG,CAC1BC,OAAmB,EACnBC,UAAqC,EACrCC,MAAqB,KACd;EAAA;EACP,IAAI,CAACD,UAAU,CAACE,GAAG,EAAE;IACjB;EACJ;EAEA,MAAMC,QAAQ,GAAGJ,OAAO,CAACK,QAAQ,CAACC,WAAW,EAAE;EAC/C,MAAMC,KAAK,GAAGH,QAAQ,IAAI,oBAAAF,MAAM,CAACM,OAAO,oDAAd,gBAAgBC,EAAE,MAAKL,QAAQ,CAACK,EAAE;EAC5D,MAAMC,OAAO,GAAGN,QAAQ,IAAI,sBAAAF,MAAM,CAACS,SAAS,sDAAhB,kBAAkBF,EAAE,MAAKL,QAAQ,CAACK,EAAE;EAEhE,IAAI,CAACF,KAAK,IAAI,CAACG,OAAO,EAAE;IACpB,MAAM,IAAIE,+BAAkB,CAAC;MACzBC,IAAI,EAAE;QACFC,MAAM,EAAG;MACb;IACJ,CAAC,CAAC;EACN;AACJ,CAAC;AAAC;AAEK,MAAMC,iBAAiB,GAAG,CAC7Bf,OAAmB,EACnBC,UAAqC,EACrCC,MAAqB,KACX;EACV,IAAI;IACAH,cAAc,CAACC,OAAO,EAAEC,UAAU,EAAEC,MAAM,CAAC;IAC3C,OAAO,IAAI;EACf,CAAC,CAAC,MAAM;IACJ,OAAO,KAAK;EAChB;AACJ,CAAC;AAAC"}
@@ -1,7 +0,0 @@
1
- import { BaseCmsSecurityPermission, CmsContext, CmsEntryPermission } from "../types";
2
- export declare const hasRwd: (permission: BaseCmsSecurityPermission, rwd: string) => boolean;
3
- export declare const hasPw: (permission: CmsEntryPermission, pw: string) => boolean;
4
- export declare const checkPermissions: <TPermission extends BaseCmsSecurityPermission = BaseCmsSecurityPermission>(context: CmsContext, name: string, check?: {
5
- rwd?: string;
6
- pw?: string;
7
- }) => Promise<TPermission>;
@@ -1,91 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.hasRwd = exports.hasPw = exports.checkPermissions = void 0;
7
- var _apiSecurity = require("@webiny/api-security");
8
- const hasRwd = (permission, rwd) => {
9
- if (typeof permission.rwd !== "string") {
10
- return true;
11
- }
12
- return permission.rwd.includes(rwd);
13
- };
14
- exports.hasRwd = hasRwd;
15
- const hasPw = (permission, pw) => {
16
- const isCustom = Object.keys(permission).length > 1; // "name" key is always present
17
-
18
- if (!isCustom) {
19
- // Means it's a "full-access" permission.
20
- return true;
21
- }
22
- if (typeof permission.pw !== "string") {
23
- return false;
24
- }
25
- return permission.pw.includes(pw);
26
- };
27
- exports.hasPw = hasPw;
28
- const PW = {
29
- p: "publish",
30
- u: "unpublish"
31
- };
32
- const RWD = {
33
- r: "read",
34
- w: "write",
35
- d: "delete"
36
- };
37
- const checkPermissions = async (context, name, check) => {
38
- // Check if user is allowed to edit content in current language
39
- const contentPermission = await context.security.getPermission("content.i18n");
40
- if (!contentPermission) {
41
- throw new _apiSecurity.NotAuthorizedError({
42
- data: {
43
- reason: "Missing access to content in any locale."
44
- }
45
- });
46
- }
47
-
48
- // We need to check this manually as CMS locale comes from the URL and not the default i18n app.
49
- const code = context.cms.getLocale().code;
50
- const locales = contentPermission.locales;
51
-
52
- // IMPORTANT: If we have a `contentPermission`, and `locales` key is NOT SET - it means the user has access to all locales.
53
- // However, if the the `locales` IS SET - check that it contains the required locale.
54
- if (Array.isArray(locales) && !locales.includes(code)) {
55
- throw new _apiSecurity.NotAuthorizedError({
56
- data: {
57
- reason: `Not allowed to access content in "${code}."`
58
- }
59
- });
60
- }
61
- const permission = await context.security.getPermission(name);
62
- if (!permission) {
63
- throw new _apiSecurity.NotAuthorizedError({
64
- data: {
65
- reason: `Missing permission "${name}".`
66
- }
67
- });
68
- }
69
- if (!check) {
70
- return permission;
71
- }
72
- if (check.rwd && !hasRwd(permission, check.rwd)) {
73
- throw new _apiSecurity.NotAuthorizedError({
74
- data: {
75
- reason: `Not allowed to perform "${RWD[check.rwd]}" on "${name}".`
76
- }
77
- });
78
- }
79
-
80
- // p = publish
81
- // u = unpublish
82
- if (check.pw && !hasPw(permission, check.pw)) {
83
- throw new _apiSecurity.NotAuthorizedError({
84
- data: {
85
- reason: `Not allowed to perform "${PW[check.pw]}" on "${name}".`
86
- }
87
- });
88
- }
89
- return permission;
90
- };
91
- exports.checkPermissions = checkPermissions;
@@ -1 +0,0 @@
1
- {"version":3,"names":["hasRwd","permission","rwd","includes","hasPw","pw","isCustom","Object","keys","length","PW","p","u","RWD","r","w","d","checkPermissions","context","name","check","contentPermission","security","getPermission","NotAuthorizedError","data","reason","code","cms","getLocale","locales","Array","isArray"],"sources":["permissions.ts"],"sourcesContent":["import { BaseCmsSecurityPermission, CmsContext, CmsEntryPermission } from \"~/types\";\nimport { NotAuthorizedError } from \"@webiny/api-security\";\n\nexport const hasRwd = (permission: BaseCmsSecurityPermission, rwd: string): boolean => {\n if (typeof permission.rwd !== \"string\") {\n return true;\n }\n\n return permission.rwd.includes(rwd);\n};\n\nexport const hasPw = (permission: CmsEntryPermission, pw: string): boolean => {\n const isCustom = Object.keys(permission).length > 1; // \"name\" key is always present\n\n if (!isCustom) {\n // Means it's a \"full-access\" permission.\n return true;\n }\n\n if (typeof permission.pw !== \"string\") {\n return false;\n }\n\n return permission.pw.includes(pw);\n};\n\nconst PW: Record<string, string> = {\n p: \"publish\",\n u: \"unpublish\"\n};\n\nconst RWD: Record<string, string> = {\n r: \"read\",\n w: \"write\",\n d: \"delete\"\n};\n\nexport const checkPermissions = async <\n TPermission extends BaseCmsSecurityPermission = BaseCmsSecurityPermission\n>(\n context: CmsContext,\n name: string,\n check?: { rwd?: string; pw?: string }\n): Promise<TPermission> => {\n // Check if user is allowed to edit content in current language\n const contentPermission = await context.security.getPermission(\"content.i18n\");\n\n if (!contentPermission) {\n throw new NotAuthorizedError({\n data: {\n reason: \"Missing access to content in any locale.\"\n }\n });\n }\n\n // We need to check this manually as CMS locale comes from the URL and not the default i18n app.\n const code = context.cms.getLocale().code;\n\n const locales: string[] = contentPermission.locales;\n\n // IMPORTANT: If we have a `contentPermission`, and `locales` key is NOT SET - it means the user has access to all locales.\n // However, if the the `locales` IS SET - check that it contains the required locale.\n if (Array.isArray(locales) && !locales.includes(code)) {\n throw new NotAuthorizedError({\n data: {\n reason: `Not allowed to access content in \"${code}.\"`\n }\n });\n }\n\n const permission = await context.security.getPermission<TPermission>(name);\n\n if (!permission) {\n throw new NotAuthorizedError({\n data: {\n reason: `Missing permission \"${name}\".`\n }\n });\n }\n\n if (!check) {\n return permission;\n }\n\n if (check.rwd && !hasRwd(permission, check.rwd)) {\n throw new NotAuthorizedError({\n data: {\n reason: `Not allowed to perform \"${RWD[check.rwd]}\" on \"${name}\".`\n }\n });\n }\n\n // p = publish\n // u = unpublish\n if (check.pw && !hasPw(permission, check.pw)) {\n throw new NotAuthorizedError({\n data: {\n reason: `Not allowed to perform \"${PW[check.pw]}\" on \"${name}\".`\n }\n });\n }\n\n return permission;\n};\n"],"mappings":";;;;;;AACA;AAEO,MAAMA,MAAM,GAAG,CAACC,UAAqC,EAAEC,GAAW,KAAc;EACnF,IAAI,OAAOD,UAAU,CAACC,GAAG,KAAK,QAAQ,EAAE;IACpC,OAAO,IAAI;EACf;EAEA,OAAOD,UAAU,CAACC,GAAG,CAACC,QAAQ,CAACD,GAAG,CAAC;AACvC,CAAC;AAAC;AAEK,MAAME,KAAK,GAAG,CAACH,UAA8B,EAAEI,EAAU,KAAc;EAC1E,MAAMC,QAAQ,GAAGC,MAAM,CAACC,IAAI,CAACP,UAAU,CAAC,CAACQ,MAAM,GAAG,CAAC,CAAC,CAAC;;EAErD,IAAI,CAACH,QAAQ,EAAE;IACX;IACA,OAAO,IAAI;EACf;EAEA,IAAI,OAAOL,UAAU,CAACI,EAAE,KAAK,QAAQ,EAAE;IACnC,OAAO,KAAK;EAChB;EAEA,OAAOJ,UAAU,CAACI,EAAE,CAACF,QAAQ,CAACE,EAAE,CAAC;AACrC,CAAC;AAAC;AAEF,MAAMK,EAA0B,GAAG;EAC/BC,CAAC,EAAE,SAAS;EACZC,CAAC,EAAE;AACP,CAAC;AAED,MAAMC,GAA2B,GAAG;EAChCC,CAAC,EAAE,MAAM;EACTC,CAAC,EAAE,OAAO;EACVC,CAAC,EAAE;AACP,CAAC;AAEM,MAAMC,gBAAgB,GAAG,OAG5BC,OAAmB,EACnBC,IAAY,EACZC,KAAqC,KACd;EACvB;EACA,MAAMC,iBAAiB,GAAG,MAAMH,OAAO,CAACI,QAAQ,CAACC,aAAa,CAAC,cAAc,CAAC;EAE9E,IAAI,CAACF,iBAAiB,EAAE;IACpB,MAAM,IAAIG,+BAAkB,CAAC;MACzBC,IAAI,EAAE;QACFC,MAAM,EAAE;MACZ;IACJ,CAAC,CAAC;EACN;;EAEA;EACA,MAAMC,IAAI,GAAGT,OAAO,CAACU,GAAG,CAACC,SAAS,EAAE,CAACF,IAAI;EAEzC,MAAMG,OAAiB,GAAGT,iBAAiB,CAACS,OAAO;;EAEnD;EACA;EACA,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,IAAI,CAACA,OAAO,CAAC3B,QAAQ,CAACwB,IAAI,CAAC,EAAE;IACnD,MAAM,IAAIH,+BAAkB,CAAC;MACzBC,IAAI,EAAE;QACFC,MAAM,EAAG,qCAAoCC,IAAK;MACtD;IACJ,CAAC,CAAC;EACN;EAEA,MAAM1B,UAAU,GAAG,MAAMiB,OAAO,CAACI,QAAQ,CAACC,aAAa,CAAcJ,IAAI,CAAC;EAE1E,IAAI,CAAClB,UAAU,EAAE;IACb,MAAM,IAAIuB,+BAAkB,CAAC;MACzBC,IAAI,EAAE;QACFC,MAAM,EAAG,uBAAsBP,IAAK;MACxC;IACJ,CAAC,CAAC;EACN;EAEA,IAAI,CAACC,KAAK,EAAE;IACR,OAAOnB,UAAU;EACrB;EAEA,IAAImB,KAAK,CAAClB,GAAG,IAAI,CAACF,MAAM,CAACC,UAAU,EAAEmB,KAAK,CAAClB,GAAG,CAAC,EAAE;IAC7C,MAAM,IAAIsB,+BAAkB,CAAC;MACzBC,IAAI,EAAE;QACFC,MAAM,EAAG,2BAA0Bb,GAAG,CAACO,KAAK,CAAClB,GAAG,CAAE,SAAQiB,IAAK;MACnE;IACJ,CAAC,CAAC;EACN;;EAEA;EACA;EACA,IAAIC,KAAK,CAACf,EAAE,IAAI,CAACD,KAAK,CAACH,UAAU,EAAEmB,KAAK,CAACf,EAAE,CAAC,EAAE;IAC1C,MAAM,IAAImB,+BAAkB,CAAC;MACzBC,IAAI,EAAE;QACFC,MAAM,EAAG,2BAA0BhB,EAAE,CAACU,KAAK,CAACf,EAAE,CAAE,SAAQc,IAAK;MACjE;IACJ,CAAC,CAAC;EACN;EAEA,OAAOlB,UAAU;AACrB,CAAC;AAAC"}