payload 1.3.0 → 1.3.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.
- package/CHANGELOG.md +41 -0
- package/components/index.js +1 -1
- package/components/styles.css +1 -1
- package/dist/admin/api.d.ts +1 -1
- package/dist/admin/components/elements/ArrayAction/types.d.ts +1 -1
- package/dist/admin/components/elements/Autosave/types.d.ts +1 -1
- package/dist/admin/components/elements/Banner/types.d.ts +3 -3
- package/dist/admin/components/elements/Button/index.js +19 -13
- package/dist/admin/components/elements/Button/index.scss +0 -16
- package/dist/admin/components/elements/Button/types.d.ts +3 -3
- package/dist/admin/components/elements/Card/types.d.ts +1 -1
- package/dist/admin/components/elements/Collapsible/index.scss +5 -1
- package/dist/admin/components/elements/Collapsible/types.d.ts +1 -1
- package/dist/admin/components/elements/ColumnSelector/types.d.ts +1 -1
- package/dist/admin/components/elements/CopyToClipboard/index.js +2 -9
- package/dist/admin/components/elements/CopyToClipboard/index.scss +0 -14
- package/dist/admin/components/elements/CopyToClipboard/types.d.ts +1 -1
- package/dist/admin/components/elements/DatePicker/types.d.ts +6 -6
- package/dist/admin/components/elements/DeleteDocument/index.js +1 -1
- package/dist/admin/components/elements/DeleteDocument/types.d.ts +1 -1
- package/dist/admin/components/elements/DocumentDrawer/index.d.ts +6 -0
- package/dist/admin/components/elements/DocumentDrawer/index.js +143 -0
- package/dist/admin/components/elements/DocumentDrawer/index.scss +36 -0
- package/dist/admin/components/elements/DocumentDrawer/types.d.ts +28 -0
- package/dist/admin/components/{forms/field-types/Relationship/AddNew/Modal → elements/DocumentDrawer}/types.js +0 -0
- package/dist/admin/components/elements/Drawer/index.d.ts +5 -0
- package/dist/admin/components/elements/Drawer/index.js +44 -0
- package/dist/admin/components/elements/Drawer/index.scss +86 -0
- package/dist/admin/components/elements/Drawer/types.d.ts +13 -0
- package/dist/admin/components/elements/Drawer/types.js +1 -0
- package/dist/admin/components/elements/DuplicateDocument/types.d.ts +1 -1
- package/dist/admin/components/elements/Eyebrow/types.d.ts +1 -1
- package/dist/admin/components/elements/FileDetails/Meta/types.d.ts +1 -1
- package/dist/admin/components/elements/FileDetails/types.d.ts +1 -1
- package/dist/admin/components/elements/GenerateConfirmation/types.d.ts +1 -1
- package/dist/admin/components/elements/Gutter/index.d.ts +1 -1
- package/dist/admin/components/elements/ListControls/types.d.ts +2 -2
- package/dist/admin/components/elements/Localizer/types.d.ts +1 -1
- package/dist/admin/components/elements/NavGroup/index.d.ts +1 -1
- package/dist/admin/components/elements/Paginator/ClickableArrow/types.d.ts +1 -1
- package/dist/admin/components/elements/Paginator/Page/types.d.ts +1 -1
- package/dist/admin/components/elements/Paginator/types.d.ts +2 -2
- package/dist/admin/components/elements/PerPage/index.d.ts +1 -1
- package/dist/admin/components/elements/Pill/types.d.ts +2 -2
- package/dist/admin/components/elements/Popup/PopupButton/types.d.ts +1 -1
- package/dist/admin/components/elements/Popup/types.d.ts +1 -1
- package/dist/admin/components/elements/PreviewButton/types.d.ts +1 -1
- package/dist/admin/components/elements/Publish/types.d.ts +1 -1
- package/dist/admin/components/elements/ReactSelect/ClearIndicator/index.d.ts +5 -0
- package/dist/admin/components/elements/ReactSelect/ClearIndicator/index.js +9 -0
- package/dist/admin/components/elements/ReactSelect/ClearIndicator/index.scss +5 -0
- package/dist/admin/components/elements/ReactSelect/Control/index.d.ts +4 -0
- package/dist/admin/components/elements/ReactSelect/Control/index.js +23 -0
- package/dist/admin/components/elements/ReactSelect/MultiValue/index.d.ts +5 -0
- package/dist/admin/components/elements/ReactSelect/MultiValue/index.js +39 -0
- package/dist/admin/components/elements/ReactSelect/MultiValue/index.scss +15 -0
- package/dist/admin/components/elements/ReactSelect/MultiValueLabel/index.d.ts +5 -0
- package/dist/admin/components/elements/ReactSelect/MultiValueLabel/index.js +12 -0
- package/dist/admin/components/elements/ReactSelect/MultiValueLabel/index.scss +15 -0
- package/dist/admin/components/elements/ReactSelect/MultiValueRemove/index.d.ts +5 -0
- package/dist/admin/components/elements/ReactSelect/MultiValueRemove/index.js +17 -0
- package/dist/admin/components/elements/ReactSelect/MultiValueRemove/index.scss +24 -0
- package/dist/admin/components/elements/ReactSelect/ValueContainer/index.d.ts +5 -0
- package/dist/admin/components/elements/ReactSelect/ValueContainer/index.js +9 -0
- package/dist/admin/components/elements/ReactSelect/ValueContainer/index.scss +33 -0
- package/dist/admin/components/elements/ReactSelect/index.js +58 -44
- package/dist/admin/components/elements/ReactSelect/index.scss +6 -62
- package/dist/admin/components/elements/ReactSelect/types.d.ts +14 -3
- package/dist/admin/components/elements/RenderTitle/types.d.ts +1 -1
- package/dist/admin/components/elements/SearchFilter/types.d.ts +1 -1
- package/dist/admin/components/elements/SortColumn/types.d.ts +1 -1
- package/dist/admin/components/elements/SortComplex/types.d.ts +1 -1
- package/dist/admin/components/elements/Status/types.d.ts +1 -1
- package/dist/admin/components/elements/StepNav/index.js +4 -1
- package/dist/admin/components/elements/StepNav/types.d.ts +2 -2
- package/dist/admin/components/elements/Table/types.d.ts +2 -2
- package/dist/admin/components/elements/Thumbnail/types.d.ts +1 -1
- package/dist/admin/components/elements/Tooltip/index.js +24 -9
- package/dist/admin/components/elements/Tooltip/index.scss +25 -11
- package/dist/admin/components/elements/Tooltip/types.d.ts +3 -1
- package/dist/admin/components/elements/UploadCard/types.d.ts +1 -1
- package/dist/admin/components/elements/UploadGallery/types.d.ts +1 -1
- package/dist/admin/components/elements/VersionsCount/types.d.ts +1 -1
- package/dist/admin/components/elements/ViewDescription/types.d.ts +4 -4
- package/dist/admin/components/elements/WhereBuilder/Condition/Date/types.d.ts +1 -1
- package/dist/admin/components/elements/WhereBuilder/Condition/Number/types.d.ts +1 -1
- package/dist/admin/components/elements/WhereBuilder/Condition/Relationship/types.d.ts +7 -7
- package/dist/admin/components/elements/WhereBuilder/Condition/Text/types.d.ts +1 -1
- package/dist/admin/components/elements/WhereBuilder/Condition/types.d.ts +1 -1
- package/dist/admin/components/elements/WhereBuilder/types.d.ts +8 -8
- package/dist/admin/components/forms/Error/index.js +1 -1
- package/dist/admin/components/forms/Error/types.d.ts +1 -1
- package/dist/admin/components/forms/FieldDescription/types.d.ts +4 -4
- package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.d.ts +1 -1
- package/dist/admin/components/forms/Form/buildStateFromSchema/index.d.ts +1 -1
- package/dist/admin/components/forms/Form/buildStateFromSchema/iterateFields.d.ts +1 -1
- package/dist/admin/components/forms/Form/rows.d.ts +1 -1
- package/dist/admin/components/forms/Form/types.d.ts +30 -30
- package/dist/admin/components/forms/Label/types.d.ts +1 -1
- package/dist/admin/components/forms/RenderFields/types.d.ts +1 -1
- package/dist/admin/components/forms/RowLabel/types.d.ts +5 -5
- package/dist/admin/components/forms/field-types/Array/index.js +1 -1
- package/dist/admin/components/forms/field-types/Array/index.scss +0 -4
- package/dist/admin/components/forms/field-types/Array/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Blocks/BlockSelector/BlockSelection/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Blocks/BlockSelector/BlocksContainer/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Blocks/BlockSelector/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Blocks/SectionTitle/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Blocks/index.scss +0 -4
- package/dist/admin/components/forms/field-types/Blocks/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Checkbox/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Code/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Collapsible/index.scss +0 -4
- package/dist/admin/components/forms/field-types/Collapsible/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/DateTime/index.js +4 -1
- package/dist/admin/components/forms/field-types/DateTime/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Email/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Group/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/HiddenInput/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Number/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Password/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Point/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RadioGroup/Input.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RadioGroup/RadioInput/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RadioGroup/types.d.ts +2 -2
- package/dist/admin/components/forms/field-types/Relationship/AddNew/index.js +55 -35
- package/dist/admin/components/forms/field-types/Relationship/AddNew/index.scss +6 -18
- package/dist/admin/components/forms/field-types/Relationship/AddNew/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Relationship/AddNew/useRelatedCollections.js +5 -2
- package/dist/admin/components/forms/field-types/Relationship/GetFilterOptions/index.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Relationship/createRelationMap.d.ts +2 -2
- package/dist/admin/components/forms/field-types/Relationship/findOptionsByValue.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Relationship/index.js +11 -1
- package/dist/admin/components/forms/field-types/Relationship/select-components/MultiValueLabel/index.d.ts +5 -0
- package/dist/admin/components/forms/field-types/Relationship/select-components/MultiValueLabel/index.js +36 -0
- package/dist/admin/components/forms/field-types/Relationship/select-components/MultiValueLabel/index.scss +40 -0
- package/dist/admin/components/forms/field-types/Relationship/select-components/SingleValue/index.d.ts +5 -0
- package/dist/admin/components/forms/field-types/Relationship/select-components/SingleValue/index.js +34 -0
- package/dist/admin/components/forms/field-types/Relationship/select-components/SingleValue/index.scss +43 -0
- package/dist/admin/components/forms/field-types/Relationship/types.d.ts +10 -10
- package/dist/admin/components/forms/field-types/RichText/RichText.d.ts +2 -2
- package/dist/admin/components/forms/field-types/RichText/elements/link/Modal/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RichText/elements/relationship/Element/index.js +3 -2
- package/dist/admin/components/forms/field-types/RichText/elements/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RichText/elements/upload/Element/EditModal/index.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RichText/elements/upload/Element/SwapUploadModal/index.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RichText/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Row/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Select/Input.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Select/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Tabs/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Text/Input.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Text/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Textarea/Input.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Textarea/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Upload/Add/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Upload/Input.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Upload/SelectExisting/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/Upload/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/index.d.ts +1 -1
- package/dist/admin/components/forms/field-types/rowReducer.d.ts +8 -8
- package/dist/admin/components/forms/useField/types.d.ts +2 -2
- package/dist/admin/components/modals/StayLoggedIn/types.d.ts +1 -1
- package/dist/admin/components/templates/Default/types.d.ts +1 -1
- package/dist/admin/components/templates/Minimal/types.d.ts +1 -1
- package/dist/admin/components/utilities/Auth/index.d.ts +1 -1
- package/dist/admin/components/utilities/Auth/types.d.ts +1 -1
- package/dist/admin/components/utilities/DocumentInfo/index.d.ts +0 -2
- package/dist/admin/components/utilities/DocumentInfo/index.js +30 -1
- package/dist/admin/components/utilities/DocumentInfo/types.d.ts +9 -4
- package/dist/admin/components/utilities/Meta/types.d.ts +2 -2
- package/dist/admin/components/utilities/OperationProvider/index.d.ts +1 -1
- package/dist/admin/components/utilities/Preferences/index.d.ts +1 -1
- package/dist/admin/components/utilities/RenderCustomComponent/types.d.ts +1 -1
- package/dist/admin/components/utilities/Theme/index.d.ts +2 -2
- package/dist/admin/components/views/Account/types.d.ts +1 -1
- package/dist/admin/components/views/CreateFirstUser/types.d.ts +1 -1
- package/dist/admin/components/views/Dashboard/types.d.ts +1 -1
- package/dist/admin/components/views/Global/index.js +8 -8
- package/dist/admin/components/views/Global/types.d.ts +2 -2
- package/dist/admin/components/views/Version/Compare/types.d.ts +5 -5
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/types.d.ts +2 -2
- package/dist/admin/components/views/Version/RenderFieldsToDiff/types.d.ts +1 -1
- package/dist/admin/components/views/Version/Restore/types.d.ts +1 -1
- package/dist/admin/components/views/Version/SelectLocales/types.d.ts +1 -1
- package/dist/admin/components/views/Version/types.d.ts +3 -3
- package/dist/admin/components/views/Versions/types.d.ts +1 -1
- package/dist/admin/components/views/collections/Edit/Auth/types.d.ts +1 -1
- package/dist/admin/components/views/collections/Edit/Upload/types.d.ts +2 -2
- package/dist/admin/components/views/collections/Edit/index.js +8 -8
- package/dist/admin/components/views/collections/Edit/index.scss +6 -3
- package/dist/admin/components/views/collections/Edit/types.d.ts +2 -2
- package/dist/admin/components/views/collections/List/Cell/cellTypes.spec.js +11 -2
- package/dist/admin/components/views/collections/List/Cell/field-types/Array/index.d.ts +1 -1
- package/dist/admin/components/views/collections/List/Cell/field-types/Blocks/index.d.ts +1 -1
- package/dist/admin/components/views/collections/List/Cell/field-types/Date/index.d.ts +2 -1
- package/dist/admin/components/views/collections/List/Cell/field-types/Date/index.js +4 -2
- package/dist/admin/components/views/collections/List/Cell/field-types/Select/index.d.ts +1 -1
- package/dist/admin/components/views/collections/List/Cell/field-types/index.d.ts +2 -1
- package/dist/admin/components/views/collections/List/Cell/types.d.ts +1 -1
- package/dist/admin/components/views/collections/List/RelationshipProvider/index.d.ts +2 -2
- package/dist/admin/components/views/collections/List/RelationshipProvider/reducer.d.ts +3 -3
- package/dist/admin/components/views/collections/List/types.d.ts +3 -3
- package/dist/admin/hooks/useIntersect.d.ts +1 -1
- package/dist/admin/hooks/usePayloadAPI.d.ts +3 -3
- package/dist/admin/hooks/useThrottledEffect.d.ts +1 -1
- package/dist/admin/scss/type.scss +1 -1
- package/dist/admin/utilities/groupNavItems.d.ts +2 -2
- package/dist/auth/operations/access.d.ts +3 -3
- package/dist/auth/operations/access.js +24 -75
- package/dist/auth/operations/forgotPassword.d.ts +2 -2
- package/dist/auth/operations/local/forgotPassword.d.ts +1 -1
- package/dist/auth/operations/local/login.d.ts +1 -1
- package/dist/auth/operations/local/resetPassword.d.ts +1 -1
- package/dist/auth/operations/local/unlock.d.ts +1 -1
- package/dist/auth/operations/local/verifyEmail.d.ts +1 -1
- package/dist/auth/operations/login.d.ts +2 -2
- package/dist/auth/operations/logout.d.ts +1 -1
- package/dist/auth/operations/me.d.ts +2 -2
- package/dist/auth/operations/refresh.d.ts +2 -2
- package/dist/auth/operations/registerFirstUser.d.ts +2 -2
- package/dist/auth/operations/resetPassword.d.ts +2 -2
- package/dist/auth/operations/unlock.d.ts +1 -1
- package/dist/auth/operations/verifyEmail.d.ts +1 -1
- package/dist/auth/sendVerificationEmail.d.ts +1 -1
- package/dist/auth/types.d.ts +20 -14
- package/dist/auth/types.js +1 -1
- package/dist/collections/buildEndpoints.js +7 -1
- package/dist/collections/config/types.d.ts +26 -26
- package/dist/collections/graphql/init.js +15 -1
- package/dist/collections/graphql/resolvers/create.d.ts +1 -1
- package/dist/collections/graphql/resolvers/delete.d.ts +1 -1
- package/dist/collections/graphql/resolvers/docAccess.d.ts +9 -0
- package/dist/collections/graphql/resolvers/docAccess.js +15 -0
- package/dist/collections/graphql/resolvers/find.d.ts +1 -1
- package/dist/collections/graphql/resolvers/findByID.d.ts +1 -1
- package/dist/collections/graphql/resolvers/findVersionByID.d.ts +1 -1
- package/dist/collections/graphql/resolvers/findVersions.d.ts +1 -1
- package/dist/collections/graphql/resolvers/restoreVersion.d.ts +1 -1
- package/dist/collections/graphql/resolvers/update.d.ts +1 -1
- package/dist/collections/graphql/types.d.ts +1 -1
- package/dist/collections/init.js +2 -1
- package/dist/collections/operations/create.d.ts +1 -1
- package/dist/collections/operations/delete.d.ts +1 -1
- package/dist/collections/operations/docAccess.d.ts +8 -0
- package/dist/collections/operations/docAccess.js +26 -0
- package/dist/collections/operations/find.d.ts +1 -1
- package/dist/collections/operations/findByID.d.ts +1 -1
- package/dist/collections/operations/findVersionByID.d.ts +1 -1
- package/dist/collections/operations/findVersions.d.ts +1 -1
- package/dist/collections/operations/local/create.d.ts +1 -1
- package/dist/collections/operations/local/delete.d.ts +1 -1
- package/dist/collections/operations/local/find.d.ts +1 -1
- package/dist/collections/operations/local/findByID.d.ts +1 -1
- package/dist/collections/operations/local/findVersionByID.d.ts +1 -1
- package/dist/collections/operations/local/findVersions.d.ts +1 -1
- package/dist/collections/operations/local/restoreVersion.d.ts +1 -1
- package/dist/collections/operations/local/update.d.ts +1 -1
- package/dist/collections/operations/restoreVersion.d.ts +1 -1
- package/dist/collections/operations/update.d.ts +1 -1
- package/dist/collections/requestHandlers/create.d.ts +1 -1
- package/dist/collections/requestHandlers/delete.d.ts +1 -1
- package/dist/collections/requestHandlers/docAccess.d.ts +4 -0
- package/dist/collections/requestHandlers/docAccess.js +21 -0
- package/dist/collections/requestHandlers/findByID.d.ts +1 -1
- package/dist/collections/requestHandlers/findVersionByID.d.ts +1 -1
- package/dist/collections/requestHandlers/restoreVersion.d.ts +1 -1
- package/dist/collections/requestHandlers/update.d.ts +1 -1
- package/dist/config/types.d.ts +18 -18
- package/dist/email/types.d.ts +3 -3
- package/dist/express/middleware/authenticate.d.ts +1 -1
- package/dist/express/middleware/errorHandler.d.ts +1 -1
- package/dist/express/responses/formatError.d.ts +1 -1
- package/dist/fields/config/types.d.ts +58 -57
- package/dist/fields/config/types.js +1 -1
- package/dist/fields/getDefaultValue.d.ts +1 -1
- package/dist/fields/hooks/afterChange/index.d.ts +1 -1
- package/dist/fields/hooks/afterChange/promise.d.ts +1 -1
- package/dist/fields/hooks/afterChange/traverseFields.d.ts +1 -1
- package/dist/fields/hooks/afterRead/index.d.ts +1 -1
- package/dist/fields/hooks/afterRead/promise.d.ts +1 -1
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +1 -1
- package/dist/fields/hooks/afterRead/traverseFields.d.ts +1 -1
- package/dist/fields/hooks/beforeChange/index.d.ts +1 -1
- package/dist/fields/hooks/beforeChange/promise.d.ts +1 -1
- package/dist/fields/hooks/beforeChange/promise.js +1 -7
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts +1 -1
- package/dist/fields/hooks/beforeValidate/index.d.ts +1 -1
- package/dist/fields/hooks/beforeValidate/promise.d.ts +1 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +1 -1
- package/dist/fields/richText/populate.d.ts +1 -1
- package/dist/fields/richText/recurseNestedFields.d.ts +1 -1
- package/dist/fields/richText/richTextRelationshipPromise.d.ts +2 -2
- package/dist/globals/buildEndpoints.js +8 -2
- package/dist/globals/config/types.d.ts +11 -11
- package/dist/globals/graphql/init.js +12 -1
- package/dist/globals/graphql/resolvers/docAccess.d.ts +8 -0
- package/dist/globals/graphql/resolvers/docAccess.js +15 -0
- package/dist/globals/graphql/resolvers/findVersionByID.d.ts +1 -1
- package/dist/globals/graphql/resolvers/findVersions.d.ts +1 -1
- package/dist/globals/graphql/resolvers/restoreVersion.d.ts +1 -1
- package/dist/globals/graphql/resolvers/update.d.ts +1 -1
- package/dist/globals/init.js +2 -1
- package/dist/globals/operations/docAccess.d.ts +9 -0
- package/dist/globals/operations/docAccess.js +21 -0
- package/dist/globals/operations/findOne.d.ts +1 -1
- package/dist/globals/operations/findVersionByID.d.ts +1 -1
- package/dist/globals/operations/findVersions.d.ts +1 -1
- package/dist/globals/operations/local/findOne.d.ts +1 -1
- package/dist/globals/operations/local/findVersionByID.d.ts +1 -1
- package/dist/globals/operations/local/findVersions.d.ts +1 -1
- package/dist/globals/operations/local/restoreVersion.d.ts +1 -1
- package/dist/globals/operations/local/update.d.ts +1 -1
- package/dist/globals/operations/restoreVersion.d.ts +1 -1
- package/dist/globals/operations/update.d.ts +1 -1
- package/dist/globals/requestHandlers/docAccess.d.ts +5 -0
- package/dist/globals/requestHandlers/docAccess.js +21 -0
- package/dist/globals/requestHandlers/findOne.d.ts +2 -2
- package/dist/globals/requestHandlers/update.d.ts +2 -2
- package/dist/graphql/schema/buildBlockType.d.ts +1 -1
- package/dist/graphql/schema/buildMutationInputType.d.ts +1 -1
- package/dist/graphql/schema/buildObjectType.d.ts +2 -2
- package/dist/graphql/schema/buildPoliciesType.d.ts +28 -0
- package/dist/graphql/schema/buildPoliciesType.js +63 -27
- package/dist/mongoose/buildSchema.d.ts +1 -1
- package/dist/mongoose/buildSchema.js +7 -1
- package/dist/mongoose/buildSortParam.d.ts +1 -1
- package/dist/mongoose/getLocalizedSortProperty.d.ts +1 -1
- package/dist/mongoose/types.d.ts +1 -1
- package/dist/preferences/requestHandlers/update.d.ts +2 -2
- package/dist/preferences/types.d.ts +8 -8
- package/dist/translations/de.json +2 -0
- package/dist/translations/en.json +2 -0
- package/dist/translations/es.json +2 -0
- package/dist/translations/fr.json +2 -0
- package/dist/translations/index.d.ts +32 -0
- package/dist/translations/it.json +2 -0
- package/dist/translations/ja.json +2 -0
- package/dist/translations/my.json +2 -0
- package/dist/translations/nb.json +2 -0
- package/dist/translations/nl.json +2 -0
- package/dist/translations/pl.json +2 -0
- package/dist/translations/pt.json +2 -0
- package/dist/translations/ru.json +2 -0
- package/dist/translations/sv.json +2 -0
- package/dist/translations/th.json +80 -78
- package/dist/translations/tr.json +2 -0
- package/dist/translations/type.d.ts +1 -1
- package/dist/translations/vi.json +2 -0
- package/dist/types/index.d.ts +8 -5
- package/dist/types/index.js +1 -1
- package/dist/uploads/generateFileData.d.ts +2 -2
- package/dist/uploads/getBaseFields.d.ts +1 -1
- package/dist/uploads/getImageSize.d.ts +1 -1
- package/dist/uploads/imageResizer.d.ts +2 -2
- package/dist/uploads/types.d.ts +10 -10
- package/dist/utilities/getEntityPolicies.d.ts +19 -0
- package/dist/utilities/getEntityPolicies.js +156 -0
- package/dist/utilities/logger.d.ts +1 -1
- package/dist/utilities/telemetry/events/adminInit.d.ts +1 -1
- package/dist/utilities/telemetry/events/serverInit.d.ts +1 -1
- package/dist/utilities/telemetry/index.d.ts +4 -4
- package/dist/versions/cleanUpFailedVersion.d.ts +1 -1
- package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts +1 -1
- package/dist/versions/drafts/saveCollectionDraft.d.ts +1 -1
- package/dist/versions/drafts/saveGlobalDraft.d.ts +1 -1
- package/dist/versions/enforceMaxVersions.d.ts +1 -1
- package/dist/versions/ensurePublishedCollectionVersion.d.ts +1 -1
- package/dist/versions/ensurePublishedGlobalVersion.d.ts +1 -1
- package/dist/versions/getLatestCollectionVersion.d.ts +1 -1
- package/dist/versions/getLatestGlobalVersion.d.ts +1 -1
- package/dist/versions/saveCollectionVersion.d.ts +1 -1
- package/dist/versions/saveGlobalVersion.d.ts +1 -1
- package/dist/versions/shouldIncrementVersionCount.d.ts +1 -1
- package/dist/versions/types.d.ts +7 -7
- package/docs/admin/hooks.mdx +19 -17
- package/docs/authentication/operations.mdx +2 -0
- package/docs/graphql/overview.mdx +1 -1
- package/package.json +4 -3
- package/dist/admin/components/forms/field-types/Relationship/AddNew/Modal/index.d.ts +0 -4
- package/dist/admin/components/forms/field-types/Relationship/AddNew/Modal/index.js +0 -69
- package/dist/admin/components/forms/field-types/Relationship/AddNew/Modal/index.scss +0 -117
- package/dist/admin/components/forms/field-types/Relationship/AddNew/Modal/types.d.ts +0 -6
- package/dist/utilities/arrayMove.d.ts +0 -1
- package/dist/utilities/arrayMove.js +0 -10
|
@@ -3,32 +3,32 @@ import { Model, Document } from 'mongoose';
|
|
|
3
3
|
import { DeepRequired } from 'ts-essentials';
|
|
4
4
|
import { GraphQLNonNull, GraphQLObjectType } from 'graphql';
|
|
5
5
|
import { PayloadRequest } from '../../express/types';
|
|
6
|
-
import { Access, Endpoint, GeneratePreviewURL } from '../../config/types';
|
|
6
|
+
import { Access, Endpoint, EntityDescription, GeneratePreviewURL } from '../../config/types';
|
|
7
7
|
import { Field } from '../../fields/config/types';
|
|
8
8
|
import { IncomingGlobalVersions, SanitizedGlobalVersions } from '../../versions/types';
|
|
9
|
-
export
|
|
9
|
+
export type TypeWithID = {
|
|
10
10
|
id: string;
|
|
11
11
|
};
|
|
12
|
-
export
|
|
12
|
+
export type BeforeValidateHook = (args: {
|
|
13
13
|
data?: any;
|
|
14
14
|
req?: PayloadRequest;
|
|
15
15
|
originalDoc?: any;
|
|
16
16
|
}) => any;
|
|
17
|
-
export
|
|
17
|
+
export type BeforeChangeHook = (args: {
|
|
18
18
|
data: any;
|
|
19
19
|
req: PayloadRequest;
|
|
20
20
|
originalDoc?: any;
|
|
21
21
|
}) => any;
|
|
22
|
-
export
|
|
22
|
+
export type AfterChangeHook = (args: {
|
|
23
23
|
doc: any;
|
|
24
24
|
previousDoc: any;
|
|
25
25
|
req: PayloadRequest;
|
|
26
26
|
}) => any;
|
|
27
|
-
export
|
|
27
|
+
export type BeforeReadHook = (args: {
|
|
28
28
|
doc: any;
|
|
29
29
|
req: PayloadRequest;
|
|
30
30
|
}) => any;
|
|
31
|
-
export
|
|
31
|
+
export type AfterReadHook = (args: {
|
|
32
32
|
doc: any;
|
|
33
33
|
req: PayloadRequest;
|
|
34
34
|
query?: {
|
|
@@ -39,7 +39,7 @@ export declare type AfterReadHook = (args: {
|
|
|
39
39
|
export interface GlobalModel extends Model<Document> {
|
|
40
40
|
buildQuery: (query: unknown, locale?: string) => Record<string, unknown>;
|
|
41
41
|
}
|
|
42
|
-
export
|
|
42
|
+
export type GlobalConfig = {
|
|
43
43
|
slug: string;
|
|
44
44
|
label?: Record<string, string> | string;
|
|
45
45
|
graphQL?: {
|
|
@@ -72,8 +72,8 @@ export declare type GlobalConfig = {
|
|
|
72
72
|
};
|
|
73
73
|
fields: Field[];
|
|
74
74
|
admin?: {
|
|
75
|
-
description?:
|
|
76
|
-
group?: string;
|
|
75
|
+
description?: EntityDescription;
|
|
76
|
+
group?: Record<string, string> | string;
|
|
77
77
|
hideAPIURL?: boolean;
|
|
78
78
|
components?: {
|
|
79
79
|
views?: {
|
|
@@ -92,7 +92,7 @@ export interface SanitizedGlobalConfig extends Omit<DeepRequired<GlobalConfig>,
|
|
|
92
92
|
versionType?: GraphQLObjectType;
|
|
93
93
|
};
|
|
94
94
|
}
|
|
95
|
-
export
|
|
95
|
+
export type Globals = {
|
|
96
96
|
Model: GlobalModel;
|
|
97
97
|
config: SanitizedGlobalConfig[];
|
|
98
98
|
};
|
|
@@ -18,6 +18,8 @@ const buildObjectType_1 = __importDefault(require("../../graphql/schema/buildObj
|
|
|
18
18
|
const buildMutationInputType_1 = __importDefault(require("../../graphql/schema/buildMutationInputType"));
|
|
19
19
|
const buildWhereInputType_1 = __importDefault(require("../../graphql/schema/buildWhereInputType"));
|
|
20
20
|
const formatLabels_1 = require("../../utilities/formatLabels");
|
|
21
|
+
const buildPoliciesType_1 = require("../../graphql/schema/buildPoliciesType");
|
|
22
|
+
const docAccess_1 = require("./resolvers/docAccess");
|
|
21
23
|
function initGlobalsGraphQL(payload) {
|
|
22
24
|
if (payload.config.globals) {
|
|
23
25
|
Object.keys(payload.globals.config).forEach((slug) => {
|
|
@@ -57,6 +59,15 @@ function initGlobalsGraphQL(payload) {
|
|
|
57
59
|
},
|
|
58
60
|
resolve: (0, update_1.default)(global),
|
|
59
61
|
};
|
|
62
|
+
payload.Query.fields[`docAccess${formattedName}`] = {
|
|
63
|
+
type: (0, buildPoliciesType_1.buildPolicyType)({
|
|
64
|
+
typeSuffix: 'DocAccess',
|
|
65
|
+
entity: global,
|
|
66
|
+
type: 'global',
|
|
67
|
+
scope: 'docAccess',
|
|
68
|
+
}),
|
|
69
|
+
resolve: (0, docAccess_1.docAccessResolver)(global),
|
|
70
|
+
};
|
|
60
71
|
if (global.versions) {
|
|
61
72
|
const versionGlobalFields = [
|
|
62
73
|
...(0, buildGlobalFields_1.buildVersionGlobalFields)(global),
|
|
@@ -121,4 +132,4 @@ function initGlobalsGraphQL(payload) {
|
|
|
121
132
|
}
|
|
122
133
|
}
|
|
123
134
|
exports.default = initGlobalsGraphQL;
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nbG9iYWxzL2dyYXBocWwvaW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHNDQUFzQztBQUN0QyxxQ0FBb0Y7QUFDcEYseUNBQXFDO0FBQ3JDLG9GQUE0RDtBQUM1RCx3RUFBNEU7QUFDNUUseUdBQWlGO0FBQ2pGLGtFQUFrRDtBQUNsRCxnRUFBZ0Q7QUFDaEQsa0ZBQWtFO0FBQ2xFLDRFQUE0RDtBQUM1RCxnRkFBZ0U7QUFFaEUsMkZBQW1FO0FBQ25FLHlHQUFpRjtBQUNqRixtR0FBMkU7QUFFM0UsK0RBQXVEO0FBRXZELDhFQUF5RTtBQUN6RSxxREFBMEQ7QUFFMUQsU0FBUyxrQkFBa0IsQ0FBQyxPQUFnQjtJQUMxQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1FBQzFCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTs7WUFDbkQsTUFBTSxNQUFNLEdBQTBCLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25FLE1BQU0sRUFDSixNQUFNLEVBQ04sUUFBUSxHQUNULEdBQUcsTUFBTSxDQUFDO1lBRVgsTUFBTSxhQUFhLEdBQUcsQ0FBQSxNQUFBLE1BQU0sQ0FBQyxPQUFPLDBDQUFFLElBQUksRUFBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUEsb0JBQVEsRUFBQyxJQUFBLHNCQUFPLEVBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBRXhHLE1BQU0sQ0FBQyxPQUFPLEdBQUcsRUFBc0MsQ0FBQztZQUV4RCxNQUFNLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyxRQUFRLGFBQVIsUUFBUSx1QkFBUixR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
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CollectionPermission, GlobalPermission } from '../../../auth';
|
|
2
|
+
import { PayloadRequest } from '../../../express/types';
|
|
3
|
+
import { SanitizedGlobalConfig } from '../../config/types';
|
|
4
|
+
export type Resolver = (_: unknown, context: {
|
|
5
|
+
req: PayloadRequest;
|
|
6
|
+
res: Response;
|
|
7
|
+
}) => Promise<CollectionPermission | GlobalPermission>;
|
|
8
|
+
export declare function docAccessResolver(global: SanitizedGlobalConfig): Resolver;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.docAccessResolver = void 0;
|
|
4
|
+
const docAccess_1 = require("../../operations/docAccess");
|
|
5
|
+
function docAccessResolver(global) {
|
|
6
|
+
async function resolver(_, context) {
|
|
7
|
+
return (0, docAccess_1.docAccess)({
|
|
8
|
+
req: context.req,
|
|
9
|
+
globalConfig: global,
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
return resolver;
|
|
13
|
+
}
|
|
14
|
+
exports.docAccessResolver = docAccessResolver;
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jQWNjZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dsb2JhbHMvZ3JhcGhxbC9yZXNvbHZlcnMvZG9jQWNjZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLDBEQUF1RDtBQVV2RCxTQUFnQixpQkFBaUIsQ0FBQyxNQUE2QjtJQUM3RCxLQUFLLFVBQVUsUUFBUSxDQUFDLENBQUMsRUFBRSxPQUFPO1FBQ2hDLE9BQU8sSUFBQSxxQkFBUyxFQUFDO1lBQ2YsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO1lBQ2hCLFlBQVksRUFBRSxNQUFNO1NBQ3JCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBVEQsOENBU0MifQ==
|
|
@@ -2,7 +2,7 @@ import { Response } from 'express';
|
|
|
2
2
|
import { SanitizedGlobalConfig } from '../../config/types';
|
|
3
3
|
import { Document } from '../../../types';
|
|
4
4
|
import { PayloadRequest } from '../../../express/types';
|
|
5
|
-
export
|
|
5
|
+
export type Resolver = (_: unknown, args: {
|
|
6
6
|
id: string | number;
|
|
7
7
|
locale?: string;
|
|
8
8
|
draft?: boolean;
|
|
@@ -2,7 +2,7 @@ import { Response } from 'express';
|
|
|
2
2
|
import { Document, Where } from '../../../types';
|
|
3
3
|
import { SanitizedGlobalConfig } from '../../config/types';
|
|
4
4
|
import { PayloadRequest } from '../../../express/types';
|
|
5
|
-
export
|
|
5
|
+
export type Resolver = (_: unknown, args: {
|
|
6
6
|
locale?: string;
|
|
7
7
|
fallbackLocale?: string;
|
|
8
8
|
where: Where;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SanitizedGlobalConfig } from '../../config/types';
|
|
2
2
|
import { Document } from '../../../types';
|
|
3
3
|
import { PayloadRequest } from '../../../express/types';
|
|
4
|
-
|
|
4
|
+
type Resolver = (_: unknown, args: {
|
|
5
5
|
id: string | number;
|
|
6
6
|
}, context: {
|
|
7
7
|
req: PayloadRequest;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PayloadRequest } from '../../../express/types';
|
|
2
2
|
import { SanitizedGlobalConfig } from '../../config/types';
|
|
3
|
-
|
|
3
|
+
type Resolver = (_: unknown, args: {
|
|
4
4
|
locale?: string;
|
|
5
5
|
fallbackLocale?: string;
|
|
6
6
|
data?: Record<string, unknown>;
|
package/dist/globals/init.js
CHANGED
|
@@ -24,6 +24,7 @@ function initGlobals(ctx) {
|
|
|
24
24
|
const versionModelName = (0, getVersionsModelName_1.getVersionsModelName)(global);
|
|
25
25
|
const versionSchema = (0, buildSchema_1.default)(ctx.config, (0, buildGlobalFields_1.buildVersionGlobalFields)(global), {
|
|
26
26
|
disableUnique: true,
|
|
27
|
+
draftsEnabled: true,
|
|
27
28
|
options: {
|
|
28
29
|
timestamps: true,
|
|
29
30
|
},
|
|
@@ -46,4 +47,4 @@ function initGlobals(ctx) {
|
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
49
|
exports.default = initGlobals;
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nbG9iYWxzL2luaXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzREFBOEI7QUFDOUIsd0RBQWdDO0FBQ2hDLGdGQUE0QztBQUM1Qyx3RUFBc0Q7QUFDdEQsOERBQXNDO0FBRXRDLDJFQUF3RTtBQUN4RSxxRUFBeUU7QUFDekUsMEVBQWtEO0FBRWxELCtFQUF1RDtBQUN2RCxzRUFBOEM7QUFHOUMsU0FBd0IsV0FBVyxDQUFDLEdBQVk7SUFDOUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtRQUN0QixHQUFHLENBQUMsT0FBTyxHQUFHO1lBQ1osS0FBSyxFQUFFLElBQUEsb0JBQVUsRUFBQyxHQUFHLENBQUMsTUFBTSxDQUFDO1lBQzdCLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU87U0FDM0IsQ0FBQztRQUVGLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3BDLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRTtnQkFDbkIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFBLDJDQUFvQixFQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUV0RCxNQUFNLGFBQWEsR0FBRyxJQUFBLHFCQUFXLEVBQy9CLEdBQUcsQ0FBQyxNQUFNLEVBQ1YsSUFBQSw0Q0FBd0IsRUFBQyxNQUFNLENBQUMsRUFDaEM7b0JBQ0UsYUFBYSxFQUFFLElBQUk7b0JBQ25CLGFBQWEsRUFBRSxJQUFJO29CQUNuQixPQUFPLEVBQUU7d0JBQ1AsVUFBVSxFQUFFLElBQUk7cUJBQ2pCO2lCQUNGLENBQ0YsQ0FBQztnQkFFRixhQUFhLENBQUMsTUFBTSxDQUFDLDhCQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FBQztxQkFDeEQsTUFBTSxDQUFDLG9CQUFnQixDQUFDLENBQUM7Z0JBRTVCLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLGtCQUFRLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLGFBQWEsQ0FBb0IsQ0FBQzthQUNoRztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsNEJBQTRCO1FBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFO1lBQ2QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBNkIsRUFBRSxFQUFFO2dCQUMzRCxNQUFNLE1BQU0sR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNoQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsTUFBTSxDQUFDO2dCQUV4QixNQUFNLFNBQVMsR0FBRyxJQUFBLHdCQUFjLEVBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3pDLElBQUEsd0JBQWMsRUFBQyxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztnQkFFL0MsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsWUFBWSxJQUFJLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM3QyxDQUFDLENBQUMsQ0FBQztTQUNKO0tBQ0Y7QUFDSCxDQUFDO0FBM0NELDhCQTJDQyJ9
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GlobalPermission } from '../../auth';
|
|
2
|
+
import type { PayloadRequest } from '../../express/types';
|
|
3
|
+
import { SanitizedGlobalConfig } from '../config/types';
|
|
4
|
+
type Arguments = {
|
|
5
|
+
req: PayloadRequest;
|
|
6
|
+
globalConfig: SanitizedGlobalConfig;
|
|
7
|
+
};
|
|
8
|
+
export declare function docAccess(args: Arguments): Promise<GlobalPermission>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.docAccess = void 0;
|
|
4
|
+
const getEntityPolicies_1 = require("../../utilities/getEntityPolicies");
|
|
5
|
+
async function docAccess(args) {
|
|
6
|
+
const { req, globalConfig, } = args;
|
|
7
|
+
const globalOperations = ['read', 'update'];
|
|
8
|
+
if (globalConfig.versions) {
|
|
9
|
+
globalOperations.push('readVersions');
|
|
10
|
+
}
|
|
11
|
+
const [policy, promises] = (0, getEntityPolicies_1.getEntityPolicies)({
|
|
12
|
+
type: 'global',
|
|
13
|
+
req,
|
|
14
|
+
entity: globalConfig,
|
|
15
|
+
operations: globalOperations,
|
|
16
|
+
});
|
|
17
|
+
await Promise.all(promises);
|
|
18
|
+
return policy;
|
|
19
|
+
}
|
|
20
|
+
exports.docAccess = docAccess;
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jQWNjZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dsb2JhbHMvb3BlcmF0aW9ucy9kb2NBY2Nlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EseUVBQXNFO0FBUS9ELEtBQUssVUFBVSxTQUFTLENBQUMsSUFBZTtJQUM3QyxNQUFNLEVBQ0osR0FBRyxFQUNILFlBQVksR0FDYixHQUFHLElBQUksQ0FBQztJQUVULE1BQU0sZ0JBQWdCLEdBQW9CLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRTdELElBQUksWUFBWSxDQUFDLFFBQVEsRUFBRTtRQUN6QixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDdkM7SUFFRCxNQUFNLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxHQUFHLElBQUEscUNBQWlCLEVBQUM7UUFDM0MsSUFBSSxFQUFFLFFBQVE7UUFDZCxHQUFHO1FBQ0gsTUFBTSxFQUFFLFlBQVk7UUFDcEIsVUFBVSxFQUFFLGdCQUFnQjtLQUM3QixDQUFDLENBQUM7SUFFSCxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFNUIsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQXRCRCw4QkFzQkMifQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PayloadRequest } from '../../express/types';
|
|
2
2
|
import { TypeWithVersion } from '../../versions/types';
|
|
3
3
|
import { SanitizedGlobalConfig } from '../config/types';
|
|
4
|
-
export
|
|
4
|
+
export type Arguments = {
|
|
5
5
|
globalConfig: SanitizedGlobalConfig;
|
|
6
6
|
id: string | number;
|
|
7
7
|
req: PayloadRequest;
|
|
@@ -3,7 +3,7 @@ import { PayloadRequest } from '../../express/types';
|
|
|
3
3
|
import { PaginatedDocs } from '../../mongoose/types';
|
|
4
4
|
import { TypeWithVersion } from '../../versions/types';
|
|
5
5
|
import { SanitizedGlobalConfig } from '../config/types';
|
|
6
|
-
export
|
|
6
|
+
export type Arguments = {
|
|
7
7
|
globalConfig: SanitizedGlobalConfig;
|
|
8
8
|
where?: Where;
|
|
9
9
|
page?: number;
|
|
@@ -2,7 +2,7 @@ import { Document, Where } from '../../../types';
|
|
|
2
2
|
import { PaginatedDocs } from '../../../mongoose/types';
|
|
3
3
|
import { TypeWithVersion } from '../../../versions/types';
|
|
4
4
|
import { Payload } from '../../..';
|
|
5
|
-
export
|
|
5
|
+
export type Options = {
|
|
6
6
|
slug: string;
|
|
7
7
|
depth?: number;
|
|
8
8
|
page?: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PayloadRequest } from '../../express/types';
|
|
2
2
|
import { TypeWithVersion } from '../../versions/types';
|
|
3
3
|
import { SanitizedGlobalConfig } from '../config/types';
|
|
4
|
-
export
|
|
4
|
+
export type Arguments = {
|
|
5
5
|
globalConfig: SanitizedGlobalConfig;
|
|
6
6
|
id: string | number;
|
|
7
7
|
depth?: number;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Response, NextFunction } from 'express';
|
|
2
|
+
import { PayloadRequest } from '../../express/types';
|
|
3
|
+
import { CollectionPermission, GlobalPermission } from '../../auth';
|
|
4
|
+
import { SanitizedGlobalConfig } from '../config/types';
|
|
5
|
+
export default function docAccessRequestHandler(req: PayloadRequest, res: Response, next: NextFunction, globalConfig: SanitizedGlobalConfig): Promise<Response<CollectionPermission | GlobalPermission> | void>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const http_status_1 = __importDefault(require("http-status"));
|
|
7
|
+
const docAccess_1 = require("../operations/docAccess");
|
|
8
|
+
async function docAccessRequestHandler(req, res, next, globalConfig) {
|
|
9
|
+
try {
|
|
10
|
+
const accessResults = await (0, docAccess_1.docAccess)({
|
|
11
|
+
req,
|
|
12
|
+
globalConfig,
|
|
13
|
+
});
|
|
14
|
+
return res.status(http_status_1.default.OK).json(accessResults);
|
|
15
|
+
}
|
|
16
|
+
catch (error) {
|
|
17
|
+
return next(error);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.default = docAccessRequestHandler;
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jQWNjZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dsb2JhbHMvcmVxdWVzdEhhbmRsZXJzL2RvY0FjY2Vzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDhEQUFxQztBQUVyQyx1REFBb0Q7QUFJckMsS0FBSyxVQUFVLHVCQUF1QixDQUFDLEdBQW1CLEVBQUUsR0FBYSxFQUFFLElBQWtCLEVBQUUsWUFBbUM7SUFDL0ksSUFBSTtRQUNGLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBQSxxQkFBUyxFQUFDO1lBQ3BDLEdBQUc7WUFDSCxZQUFZO1NBQ2IsQ0FBQyxDQUFDO1FBRUgsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLHFCQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ3REO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNwQjtBQUNILENBQUM7QUFYRCwwQ0FXQyJ9
|
|
@@ -2,6 +2,6 @@ import { Response, NextFunction } from 'express';
|
|
|
2
2
|
import { PayloadRequest } from '../../express/types';
|
|
3
3
|
import { SanitizedGlobalConfig } from '../config/types';
|
|
4
4
|
import { Document } from '../../types';
|
|
5
|
-
export
|
|
6
|
-
export
|
|
5
|
+
export type FindOneGlobalResult = Promise<Response<Document> | void>;
|
|
6
|
+
export type FindOneGlobalResponse = (req: PayloadRequest, res: Response, next: NextFunction) => FindOneGlobalResult;
|
|
7
7
|
export default function findOneHandler(globalConfig: SanitizedGlobalConfig): FindOneGlobalResponse;
|
|
@@ -2,6 +2,6 @@ import { Response, NextFunction } from 'express';
|
|
|
2
2
|
import { PayloadRequest } from '../../express/types';
|
|
3
3
|
import { SanitizedGlobalConfig } from '../config/types';
|
|
4
4
|
import { Document } from '../../types';
|
|
5
|
-
export
|
|
6
|
-
export
|
|
5
|
+
export type UpdateGlobalResult = Promise<Response<Document> | void>;
|
|
6
|
+
export type UpdateGlobalResponse = (req: PayloadRequest, res: Response, next: NextFunction) => UpdateGlobalResult;
|
|
7
7
|
export default function updateHandler(globalConfig: SanitizedGlobalConfig): UpdateGlobalResponse;
|
|
@@ -3,7 +3,7 @@ import { Field } from '../../fields/config/types';
|
|
|
3
3
|
import { Payload } from '../../index';
|
|
4
4
|
import { SanitizedCollectionConfig } from '../../collections/config/types';
|
|
5
5
|
export declare const getCollectionIDType: (config: SanitizedCollectionConfig) => GraphQLScalarType;
|
|
6
|
-
export
|
|
6
|
+
export type InputObjectTypeConfig = {
|
|
7
7
|
[path: string]: GraphQLInputFieldConfig;
|
|
8
8
|
};
|
|
9
9
|
declare function buildMutationInputType(payload: Payload, name: string, fields: Field[], parentName: string, forceNullable?: boolean): GraphQLInputObjectType;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { GraphQLFieldConfig, GraphQLObjectType } from 'graphql';
|
|
2
2
|
import { Field } from '../../fields/config/types';
|
|
3
3
|
import { Payload } from '../..';
|
|
4
|
-
export
|
|
4
|
+
export type ObjectTypeConfig = {
|
|
5
5
|
[path: string]: GraphQLFieldConfig<any, any>;
|
|
6
6
|
};
|
|
7
|
-
|
|
7
|
+
type Args = {
|
|
8
8
|
payload: Payload;
|
|
9
9
|
name: string;
|
|
10
10
|
parentName: string;
|
|
@@ -1,3 +1,31 @@
|
|
|
1
1
|
import { GraphQLObjectType } from 'graphql';
|
|
2
|
+
import { CollectionConfig } from '../../collections/config/types';
|
|
3
|
+
import { GlobalConfig } from '../../globals/config/types';
|
|
4
|
+
import { Field } from '../../fields/config/types';
|
|
2
5
|
import { Payload } from '../..';
|
|
6
|
+
type OperationType = 'create' | 'read' | 'update' | 'delete' | 'unlock' | 'readVersions';
|
|
7
|
+
type AccessScopes = 'docAccess' | undefined;
|
|
8
|
+
type BuildEntityPolicy = {
|
|
9
|
+
name: string;
|
|
10
|
+
entityFields: Field[];
|
|
11
|
+
operations: OperationType[];
|
|
12
|
+
scope: AccessScopes;
|
|
13
|
+
};
|
|
14
|
+
export declare const buildEntityPolicy: (args: BuildEntityPolicy) => {
|
|
15
|
+
fields: {
|
|
16
|
+
type: GraphQLObjectType<any, any>;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
type BuildPolicyType = {
|
|
20
|
+
typeSuffix?: string;
|
|
21
|
+
scope?: AccessScopes;
|
|
22
|
+
} & ({
|
|
23
|
+
entity: CollectionConfig;
|
|
24
|
+
type: 'collection';
|
|
25
|
+
} | {
|
|
26
|
+
entity: GlobalConfig;
|
|
27
|
+
type: 'global';
|
|
28
|
+
});
|
|
29
|
+
export declare function buildPolicyType(args: BuildPolicyType): GraphQLObjectType;
|
|
3
30
|
export default function buildPoliciesType(payload: Payload): GraphQLObjectType;
|
|
31
|
+
export {};
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.buildPolicyType = exports.buildEntityPolicy = void 0;
|
|
6
7
|
const graphql_type_json_1 = require("graphql-type-json");
|
|
7
8
|
const graphql_1 = require("graphql");
|
|
8
9
|
const formatName_1 = __importDefault(require("../utilities/formatName"));
|
|
@@ -63,21 +64,22 @@ const buildFields = (label, fieldsToBuild) => fieldsToBuild.reduce((builtFields,
|
|
|
63
64
|
}
|
|
64
65
|
return builtFields;
|
|
65
66
|
}, {});
|
|
66
|
-
const
|
|
67
|
-
const
|
|
67
|
+
const buildEntityPolicy = (args) => {
|
|
68
|
+
const { name, entityFields, operations, scope } = args;
|
|
69
|
+
const fieldsTypeName = (0, formatLabels_1.toWords)(`${name}-${scope || ''}-Fields`, true);
|
|
68
70
|
const fields = {
|
|
69
71
|
fields: {
|
|
70
72
|
type: new graphql_1.GraphQLObjectType({
|
|
71
|
-
name:
|
|
72
|
-
fields: buildFields(
|
|
73
|
+
name: fieldsTypeName,
|
|
74
|
+
fields: buildFields(fieldsTypeName, entityFields),
|
|
73
75
|
}),
|
|
74
76
|
},
|
|
75
77
|
};
|
|
76
78
|
operations.forEach((operation) => {
|
|
77
|
-
const
|
|
79
|
+
const operationTypeName = (0, formatLabels_1.toWords)(`${name}-${operation}-${scope || 'Access'}`, true);
|
|
78
80
|
fields[operation] = {
|
|
79
81
|
type: new graphql_1.GraphQLObjectType({
|
|
80
|
-
name:
|
|
82
|
+
name: operationTypeName,
|
|
81
83
|
fields: {
|
|
82
84
|
permission: { type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLBoolean) },
|
|
83
85
|
where: { type: graphql_type_json_1.GraphQLJSONObject },
|
|
@@ -87,6 +89,48 @@ const buildEntity = (name, entityFields, operations) => {
|
|
|
87
89
|
});
|
|
88
90
|
return fields;
|
|
89
91
|
};
|
|
92
|
+
exports.buildEntityPolicy = buildEntityPolicy;
|
|
93
|
+
function buildPolicyType(args) {
|
|
94
|
+
var _a, _b;
|
|
95
|
+
const { typeSuffix, entity, type, scope } = args;
|
|
96
|
+
const { slug } = entity;
|
|
97
|
+
let operations = [];
|
|
98
|
+
if (type === 'collection') {
|
|
99
|
+
operations = ['create', 'read', 'update', 'delete'];
|
|
100
|
+
if (entity.auth && (typeof entity.auth === 'object' && typeof entity.auth.maxLoginAttempts !== 'undefined' && entity.auth.maxLoginAttempts !== 0)) {
|
|
101
|
+
operations.push('unlock');
|
|
102
|
+
}
|
|
103
|
+
if (entity.versions) {
|
|
104
|
+
operations.push('readVersions');
|
|
105
|
+
}
|
|
106
|
+
const collectionTypeName = (0, formatName_1.default)(`${slug}${typeSuffix || ''}`);
|
|
107
|
+
return new graphql_1.GraphQLObjectType({
|
|
108
|
+
name: collectionTypeName,
|
|
109
|
+
fields: (0, exports.buildEntityPolicy)({
|
|
110
|
+
name: slug,
|
|
111
|
+
entityFields: entity.fields,
|
|
112
|
+
operations,
|
|
113
|
+
scope,
|
|
114
|
+
}),
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
// else create global type
|
|
118
|
+
operations = ['read', 'update'];
|
|
119
|
+
if (entity.versions) {
|
|
120
|
+
operations.push('readVersions');
|
|
121
|
+
}
|
|
122
|
+
const globalTypeName = (0, formatName_1.default)(`${((_a = global === null || global === void 0 ? void 0 : global.graphQL) === null || _a === void 0 ? void 0 : _a.name) || slug}${typeSuffix || ''}`);
|
|
123
|
+
return new graphql_1.GraphQLObjectType({
|
|
124
|
+
name: globalTypeName,
|
|
125
|
+
fields: (0, exports.buildEntityPolicy)({
|
|
126
|
+
name: ((_b = entity === null || entity === void 0 ? void 0 : entity.graphQL) === null || _b === void 0 ? void 0 : _b.name) || slug,
|
|
127
|
+
entityFields: entity.fields,
|
|
128
|
+
operations,
|
|
129
|
+
scope,
|
|
130
|
+
}),
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
exports.buildPolicyType = buildPolicyType;
|
|
90
134
|
function buildPoliciesType(payload) {
|
|
91
135
|
const fields = {
|
|
92
136
|
canAccessAdmin: {
|
|
@@ -94,31 +138,23 @@ function buildPoliciesType(payload) {
|
|
|
94
138
|
},
|
|
95
139
|
};
|
|
96
140
|
Object.values(payload.config.collections).forEach((collection) => {
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
collectionOperations.push('readVersions');
|
|
103
|
-
}
|
|
141
|
+
const collectionPolicyType = buildPolicyType({
|
|
142
|
+
typeSuffix: 'Access',
|
|
143
|
+
entity: collection,
|
|
144
|
+
type: 'collection',
|
|
145
|
+
});
|
|
104
146
|
fields[(0, formatName_1.default)(collection.slug)] = {
|
|
105
|
-
type:
|
|
106
|
-
name: (0, formatName_1.default)(`${collection.slug}Access`),
|
|
107
|
-
fields: buildEntity(collection.slug, collection.fields, collectionOperations),
|
|
108
|
-
}),
|
|
147
|
+
type: collectionPolicyType,
|
|
109
148
|
};
|
|
110
149
|
});
|
|
111
150
|
Object.values(payload.config.globals).forEach((global) => {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
}
|
|
151
|
+
const globalPolicyType = buildPolicyType({
|
|
152
|
+
typeSuffix: 'Access',
|
|
153
|
+
entity: global,
|
|
154
|
+
type: 'global',
|
|
155
|
+
});
|
|
117
156
|
fields[(0, formatName_1.default)(global.slug)] = {
|
|
118
|
-
type:
|
|
119
|
-
name: (0, formatName_1.default)(`${((_a = global === null || global === void 0 ? void 0 : global.graphQL) === null || _a === void 0 ? void 0 : _a.name) || global.slug}Access`),
|
|
120
|
-
fields: buildEntity(((_b = global === null || global === void 0 ? void 0 : global.graphQL) === null || _b === void 0 ? void 0 : _b.name) || global.slug, global.fields, globalOperations),
|
|
121
|
-
}),
|
|
157
|
+
type: globalPolicyType,
|
|
122
158
|
};
|
|
123
159
|
});
|
|
124
160
|
return new graphql_1.GraphQLObjectType({
|
|
@@ -127,4 +163,4 @@ function buildPoliciesType(payload) {
|
|
|
127
163
|
});
|
|
128
164
|
}
|
|
129
165
|
exports.default = buildPoliciesType;
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRQb2xpY2llc1R5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ3JhcGhxbC9zY2hlbWEvYnVpbGRQb2xpY2llc1R5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EseURBQXNEO0FBQ3RELHFDQUE0RTtBQUM1RSx5RUFBaUQ7QUFLakQsK0RBQXVEO0FBVXZELE1BQU0sV0FBVyxHQUFHLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsRUFBRTtJQUN4RixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtRQUNqQixJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUU7WUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFBLG9CQUFVLEVBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXpDLE1BQU0sZ0JBQWdCLEdBQXFCLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxFQUFFO2dCQUNqSCxNQUFNLG9CQUFvQixHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFFcEYsT0FBTztvQkFDTCxHQUFHLFVBQVU7b0JBQ2IsQ0FBQyxTQUFTLENBQUMsRUFBRTt3QkFDWCxJQUFJLEVBQUUsSUFBSSwyQkFBaUIsQ0FBQzs0QkFDMUIsSUFBSSxFQUFFLEdBQUcsS0FBSyxJQUFJLFNBQVMsSUFBSSxvQkFBb0IsRUFBRTs0QkFDckQsTUFBTSxFQUFFO2dDQUNOLFVBQVUsRUFBRTtvQ0FDVixJQUFJLEVBQUUsSUFBSSx3QkFBYyxDQUFDLHdCQUFjLENBQUM7aUNBQ3pDOzZCQUNGO3lCQUNGLENBQUM7cUJBQ0g7aUJBQ0YsQ0FBQztZQUNKLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUVQLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsZ0JBQWdCLENBQUMsTUFBTSxHQUFHO29CQUN4QixJQUFJLEVBQUUsSUFBSSwyQkFBaUIsQ0FBQzt3QkFDMUIsSUFBSSxFQUFFLEdBQUcsS0FBSyxJQUFJLFNBQVMsU0FBUzt3QkFDcEMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxHQUFHLEtBQUssSUFBSSxTQUFTLEVBQUUsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDO3FCQUMzRCxDQUFDO2lCQUNILENBQUM7YUFDSDtZQUVELE9BQU87Z0JBQ0wsR0FBRyxXQUFXO2dCQUNkLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNaLElBQUksRUFBRSxJQUFJLDJCQUFpQixDQUFDO3dCQUMxQixJQUFJLEVBQUUsR0FBRyxLQUFLLElBQUksU0FBUyxFQUFFO3dCQUM3QixNQUFNLEVBQUUsZ0JBQWdCO3FCQUN6QixDQUFDO2lCQUNIO2FBQ0YsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUMvQixNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUVuRCxPQUFPO2dCQUNMLEdBQUcsV0FBVztnQkFDZCxHQUFHLFNBQVM7YUFDYixDQUFDO1NBQ0g7UUFFRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFO1lBQ3pCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUUsRUFBRTtnQkFDcEQsT0FBTztvQkFDTCxHQUFHLG1CQUFtQjtvQkFDdEIsR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUM7aUJBQ2xDLENBQUM7WUFDSixDQUFDLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDLENBQUM7U0FDeEI7S0FDRjtJQUNELE9BQU8sV0FBVyxDQUFDO0FBQ3JCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQVFBLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxJQUF1QixFQUFFLEVBQUU7SUFDM0QsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQztJQUV2RCxNQUFNLGNBQWMsR0FBRyxJQUFBLHNCQUFPLEVBQUMsR0FBRyxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sTUFBTSxHQUFHO1FBQ2IsTUFBTSxFQUFFO1lBQ04sSUFBSSxFQUFFLElBQUksMkJBQWlCLENBQUM7Z0JBQzFCLElBQUksRUFBRSxjQUFjO2dCQUNwQixNQUFNLEVBQUUsV0FBVyxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUM7YUFDbEQsQ0FBQztTQUNIO0tBQ0YsQ0FBQztJQUVGLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtRQUMvQixNQUFNLGlCQUFpQixHQUFHLElBQUEsc0JBQU8sRUFBQyxHQUFHLElBQUksSUFBSSxTQUFTLElBQUksS0FBSyxJQUFJLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXJGLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRztZQUNsQixJQUFJLEVBQUUsSUFBSSwyQkFBaUIsQ0FBQztnQkFDMUIsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsTUFBTSxFQUFFO29CQUNOLFVBQVUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLHdCQUFjLENBQUMsd0JBQWMsQ0FBQyxFQUFFO29CQUN4RCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUscUNBQWlCLEVBQUU7aUJBQ25DO2FBQ0YsQ0FBQztTQUNILENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQTVCVyxRQUFBLGlCQUFpQixxQkE0QjVCO0FBWUYsU0FBZ0IsZUFBZSxDQUFDLElBQXFCOztJQUNuRCxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBQ2pELE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFeEIsSUFBSSxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBRXBCLElBQUksSUFBSSxLQUFLLFlBQVksRUFBRTtRQUN6QixVQUFVLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVwRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxXQUFXLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNqSixVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQzNCO1FBRUQsSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFO1lBQ25CLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDakM7UUFFRCxNQUFNLGtCQUFrQixHQUFHLElBQUEsb0JBQVUsRUFBQyxHQUFHLElBQUksR0FBRyxVQUFVLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVwRSxPQUFPLElBQUksMkJBQWlCLENBQUM7WUFDM0IsSUFBSSxFQUFFLGtCQUFrQjtZQUN4QixNQUFNLEVBQUUsSUFBQSx5QkFBaUIsRUFBQztnQkFDeEIsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsWUFBWSxFQUFFLE1BQU0sQ0FBQyxNQUFNO2dCQUMzQixVQUFVO2dCQUNWLEtBQUs7YUFDTixDQUFDO1NBQ0gsQ0FBQyxDQUFDO0tBQ0o7SUFFRCwwQkFBMEI7SUFDMUIsVUFBVSxHQUFHLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRWhDLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRTtRQUNuQixVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ2pDO0lBRUQsTUFBTSxjQUFjLEdBQUcsSUFBQSxvQkFBVSxFQUFDLEdBQUcsQ0FBQSxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPLDBDQUFFLElBQUksS0FBSSxJQUFJLEdBQUcsVUFBVSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFekYsT0FBTyxJQUFJLDJCQUFpQixDQUFDO1FBQzNCLElBQUksRUFBRSxjQUFjO1FBQ3BCLE1BQU0sRUFBRSxJQUFBLHlCQUFpQixFQUFDO1lBQ3hCLElBQUksRUFBRSxDQUFBLE1BQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU8sMENBQUUsSUFBSSxLQUFJLElBQUk7WUFDbkMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1lBQzNCLFVBQVU7WUFDVixLQUFLO1NBQ04sQ0FBQztLQUNILENBQUMsQ0FBQztBQUNMLENBQUM7QUFoREQsMENBZ0RDO0FBRUQsU0FBd0IsaUJBQWlCLENBQUMsT0FBZ0I7SUFDeEQsTUFBTSxNQUFNLEdBQUc7UUFDYixjQUFjLEVBQUU7WUFDZCxJQUFJLEVBQUUsSUFBSSx3QkFBYyxDQUFDLHdCQUFjLENBQUM7U0FDekM7S0FDRixDQUFDO0lBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQXFDLEVBQUUsRUFBRTtRQUMxRixNQUFNLG9CQUFvQixHQUFHLGVBQWUsQ0FBQztZQUMzQyxVQUFVLEVBQUUsUUFBUTtZQUNwQixNQUFNLEVBQUUsVUFBVTtZQUNsQixJQUFJLEVBQUUsWUFBWTtTQUNuQixDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsSUFBQSxvQkFBVSxFQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHO1lBQ3BDLElBQUksRUFBRSxvQkFBb0I7U0FDM0IsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQTZCLEVBQUUsRUFBRTtRQUM5RSxNQUFNLGdCQUFnQixHQUFHLGVBQWUsQ0FBQztZQUN2QyxVQUFVLEVBQUUsUUFBUTtZQUNwQixNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUksRUFBRSxRQUFRO1NBQ2YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLElBQUEsb0JBQVUsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRztZQUNoQyxJQUFJLEVBQUUsZ0JBQWdCO1NBQ3ZCLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSwyQkFBaUIsQ0FBQztRQUMzQixJQUFJLEVBQUUsUUFBUTtRQUNkLE1BQU07S0FDUCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBbkNELG9DQW1DQyJ9
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Schema, SchemaOptions } from 'mongoose';
|
|
2
2
|
import { SanitizedConfig } from '../config/types';
|
|
3
3
|
import { Field } from '../fields/config/types';
|
|
4
|
-
export
|
|
4
|
+
export type BuildSchemaOptions = {
|
|
5
5
|
options?: SchemaOptions;
|
|
6
6
|
allowIDField?: boolean;
|
|
7
7
|
disableUnique?: boolean;
|